Optimisation Discrete



Documents pareils
La NP-complétude. Johanne Cohen. PRISM/CNRS, Versailles, France.

Objectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2)

Machines virtuelles Cours 1 : Introduction

"Calcul et hyper-calcul"

Année 2014/ er septembre Version de Anca Muscholl, issue du poly de Marc Zeitoun. 1/143

Cours de Master Recherche

Algorithmes : conception et réalisation MQT 63834

Intelligence Artificielle et Systèmes Multi-Agents. Badr Benmammar

Algorithmique et Programmation Fonctionnelle

Cours 1 : La compilation

Cours Optimisation Partie Optimisation Combinatoire. Année scolaire Gérard Verfaillie ONERA/DCSD/CD, Toulouse

Peut-on tout programmer?

Déroulement. Evaluation. Préambule. Définition. Définition. Algorithmes et structures de données 28/09/2009

Évaluation et implémentation des langages

La cryptographie du futur

Introduction aux systèmes temps réel. Iulian Ober IRIT

Exercices Alternatifs. Une fonction continue mais dérivable nulle part

Cours des Méthodes de Résolution Exactes Heuristiques et Métaheuristiques

Exercices Alternatifs. Une fonction continue mais dérivable nulle part

Ordonnancement en temps réel d un jobshop par métaheuristique hybride : étude comparative

Intelligence Artificielle et Robotique

Exemples de problèmes et d applications. INF6953 Exemples de problèmes 1

Les apports de l informatique. Aux autres disciplines

Table des matières. Introduction

Masses de données. 1. Introduction 2. Problématiques 3. Socle de formation (non présenté) 4. Liens avec Formation INSA

Fondements de l informatique Logique, modèles, et calculs

Nombres premiers. Comment reconnaître un nombre premier? Mais...

FIMA, 7 juillet 2005

IN Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C

Optimisation et programmation mathématique. Professeur Michel de Mathelin. Cours intégré : 20 h

Calculabilité Cours 3 : Problèmes non-calculables.

Informatique Machines à calculer en théorie et en pratique

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT

Modèles à Événements Discrets. Réseaux de Petri Stochastiques

PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES

Plan du cours : Zippers. Des fonctions sur les listes avec position. Des fonctions sur les listes avec position

Développer, factoriser pour résoudre

Annexe 6. Notions d ordonnancement.

Ordonnancement. N: nains de jardin. X: peinture extérieure. E: électricité T: toit. M: murs. F: fondations CHAPTER 1

Problèmes d ordonnancement dans les systèmes de production. Journée Automatique et Optimisation Université de Paris Mars 2003

Logiciel Libre Cours 3 Fondements: Génie Logiciel

Etudier à l'etranger. Informations. Enseignement ETATS UNIS

Méthodes de résolution de problèmes. difficiles académiques

Rapport de stage de première année de Master Optimisation de cache d instructions

COURS SYRRES RÉSEAUX SOCIAUX INTRODUCTION. Jean-Loup Guillaume

Algorithmes de recherche d itinéraires en transport multimodal

Minimisation de la somme des retards dans un jobshop flexible

Communications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes

CH.6 Propriétés des langages non contextuels

Cours 1 : Qu est-ce que la programmation?

L ordinateur quantique (suite)

Suivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs)

Présentation du Master Ingénierie Informatique et du Master Science Informatique , Année 2 Université Paris-Est Marne-la-Vallée

LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN

Limites finies en un point

APPLICATION DE LA GESTION DES FILES D ATTENTE PAR RÈGLES DE PRIORITÉ DANS UN JOB SHOP EN TEMPS RÈEL

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test

Regards croisés sur l auto-entrepreunariat

Le partage de clés cryptographiques : Théorie et Pratique

UFR d Informatique. FORMATION MASTER Domaine SCIENCES, TECHNOLOGIE, SANTE Mention INFORMATIQUE

GPA770 Microélectronique appliquée Exercices série A

Baccalauréat universitaire (bachelor) en mathématiques et sciences informatiques

Corrigé des TD 1 à 5

Algorithmique I. Algorithmique I p.1/??

Plus courts chemins, programmation dynamique

Probabilités. Rappel : trois exemples. Exemple 2 : On dispose d un dé truqué. On sait que : p(1) = p(2) =1/6 ; p(3) = 1/3 p(4) = p(5) =1/12

RenPar'14 Hammamet, Tunisie avril 2002

Modèles formels du calcul quantique : ressources, machines abstraites et calcul par mesure

Conditions : stage indemnisé, aide au logement possible, transport CEA en Ile-de-France gratuit.

Efficacité énergétique des réseaux de cœur et d accès

Chapitre 2. Eléments pour comprendre un énoncé

Initiation à l algorithmique

Curriculum Vitae - Emmanuel Hebrard. Emmanuel Hebrard

Équipe Académique Mathématiques

QUI VEUT JOUER AVEC MOI?

Parallélisme et Répartition

Contribution aux rapports entre la logique combinatoire et les T[Σ]-algèbres.

Modèles de Calcul. Yassine Lakhnech. 2007/08 Université Joseph Fourier Lab.: VERIMAG. Modèles de Calcul Start p.

introduction Chapitre 5 Récursivité Exemples mathématiques Fonction factorielle ø est un arbre (vide) Images récursives

Efficient Object Versioning for Object- Oriented Languages From Model to Language Integration

Génération de code binaire pour application multimedia : une approche au vol

Resolution limit in community detection

Réalisabilité et extraction de programmes

La Certification de la Sécurité des Automatismes de METEOR

Conclusions de la session 1. L informatique, une discipline à part entière! Culture, fondamentaux et usages

TSTI 2D CH X : Exemples de lois à densité 1

Intelligence Articielle (1) Introduction

Master IMA - UMPC Paris 6 RDMM - Année Fiche de TP

GPC Computer Science

Cookies de session ils vous permettent de sauvegarder vos préférences d utilisation et optimiser l expérience de navigation de l Utilisateur ;

TP N 57. Déploiement et renouvellement d une constellation de satellites

Conception des systèmes répartis

S E C T I O N 06 S C I E N C E S D E L I N F O R M A T I O N

Le programme d examens du Bureau canadien des conditions d admission en génie d Ingénieurs Canada englobe 19 domaines du génie.

Corps des nombres complexes, J Paul Tsasa

titre.dsf - Page : 1 Ordinateur quantique: rêves et réalité J.M. Raimond Laboratoire Kastler Brossel

Utilisation des tableaux sémantiques dans les logiques de description

Master of Science en mathématiques

Bac Blanc Terminale ES - Février 2011 Épreuve de Mathématiques (durée 3 heures)

Circuits RL et RC. Chapitre Inductance

Transcription:

Optimisation Discrete Notions sur la Théorie de la Complexité Sonia Cafieri ENAC sonia.cafieri@enac.fr S. Cafieri (ENAC) Notions sur la Théorie de la Complexité 2013-2014 1 / 1 Outline S. Cafieri (ENAC) Notions sur la Théorie de la Complexité 2013-2014 2 / 1

Introduction Peut-on connaitre la difficulté (ou la complexité) d une réponse par un algorithme à un problème formulé de manière mathématique? Est-il possible énoncer formellement et rigoureusement ce qu est la complexité d un algorithme? (avec une approche indépendante des facteurs matériels, comme le temps d accès à la mémoire, le langage de programmation et le compilateur utilisé) S. Cafieri (ENAC) Notions sur la Théorie de la Complexité 2013-2014 4 / 1 Théorie de la Complexité Théorie de la Complexité : Le but : donner une évaluation du temps de calcul ou de l espace de calcul nécessaire en fonction de la taille du probleme, qui sera notée n. La théorie de la complexité établit des hiérarchies de difficultés entre les problèmes algorithmiques, dont les niveaux sont appelés des classes de complexité. S. Cafieri (ENAC) Notions sur la Théorie de la Complexité 2013-2014 5 / 1

Modèles de calcul L analyse de la complexité est étroitement associée à un modèle de calcul. L un des modèles de calcul les plus utilisés : Machines de Turing. Des autres modèles de calcul : les fonctions récursives le lambda-calcul les automates cellulaires. S. Cafieri (ENAC) Notions sur la Théorie de la Complexité 2013-2014 6 / 1 Machines de Turing La machine de Turing : un modèle de calcul qui a été proposé en 1936 par Alan Turing. La thèse Church-Turing postule que : tout problème de calcul fondé sur une procédure algorithmique peut être résolu par une machine de Turing. Cette machine peut être adaptée pour simuler la logique de tout algorithme, et est particulièrement utile pour expliquer les fonctions d une CPU dans un ordinateur. Un calcul est constitué d étapes élémentaires : à chacune de ces étapes, pour un état donné de la mémoire de la machine, une action élémentaire est choisie dans un ensemble d actions possibles. Exemple d une règle d une machine de Turing : Si vous êtes dans l état 2 et que vous voyez un A, le changer pour un B et aller à gauche. S. Cafieri (ENAC) Notions sur la Théorie de la Complexité 2013-2014 7 / 1

Machines de Turing Definition (Machines Déterministes) Les Machines Déterministes sont telles que chaque action possible est unique; l action à effectuer est dictée de manière unique par l état courant de celle-ci. Ces machines correspondent tout à fait aux ordinateurs (avec un programme écrit dans un langage impératif quelconque). Definition (Machines non-déterministes) Les Machines non-déterministes sont telles qu il va exister des choix possibles pour effectuer une action; l action à effectuer est à considérer parmi un choix possibles d actions et l algorithme fera toujours le bon choix. De telles machines n existent pas et son purement abstraite; elles servent pour la définition de la théorie de la complexité. S. Cafieri (ENAC) Notions sur la Théorie de la Complexité 2013-2014 8 / 1 Algorithmes polynomiaux Definition Une fonction f (n) est O(g(n)) s il existe une constante c tel que f (n) c g(n) n 0. Un algorithme polynomial en temps est un algorithme dont la complexité est O(p(n)) pour une fonction polynomiale p(n) de la taille des données. Un algorithme pour lequel la fonction de complexité ne peut pas etre bornée de cette manière est dit algorithme exponential. S. Cafieri (ENAC) Notions sur la Théorie de la Complexité 2013-2014 10 / 1

Classe P et NP Definition (Classe P) Un problème est dit de classe P s il existe un algorithme de complexité polynomiale en temps (par rapport à la taille de ses données) pour le résoudre. Exemple : - le classement des éléments d un ensemble par ordre croissant ou décroissant S. Cafieri (ENAC) Notions sur la Théorie de la Complexité 2013-2014 11 / 1 Classe P et NP Definition (Classe NP) Un problème est dit de classe NP si il est vérifiable (i.e. on peut prouver qu une réponse est bien la solution du problème) par un algorithme de complexité polynomiale en temps (par rapport à la taille de ses données) Equivalentement : NP est l ensemble des problèmes de décision qui peuvent être résolus par un algorithme non-déterministe de complexité polynomiale en temps. L équivalence des deux définitions : un algorithme sur une machine non déterministe consiste en deux phases - la première consiste en une conjecture sur la solution qui est généré de manière non-déterministe, - la seconde consiste en un algorithme déterministe qui vérifie la solution. S. Cafieri (ENAC) Notions sur la Théorie de la Complexité 2013-2014 12 / 1

Classe P et NP Exemple de problème NP : - le problème général SAT de satisfaction de formule logique - le problème du voyageur de commerce - les problèmes de coloration de graphes S. Cafieri (ENAC) Notions sur la Théorie de la Complexité 2013-2014 13 / 1 Classe P et NP Proposition P NP Une question ouverte : P = NP ou P NP? S. Cafieri (ENAC) Notions sur la Théorie de la Complexité 2013-2014 14 / 1

Classe NP-complet Definition (NP-Complet) Un problème est NP-Complet si il est dans NP est si il existe un transformation polynomiale qui transforme ce problème en un problème de la classe NP-Complet. Pour montrer qu un problème est NP-Complet, il suffit donc de montrer que par une réduction polynomiale il se ramène à un problème connu de la classe des problèmes NP-Complet. Définition incrémentale : il a fallu donner un premier problème de la classe Théorème (de Stephen Cook) : le problème SAT est NP-Complet. S. Cafieri (ENAC) Notions sur la Théorie de la Complexité 2013-2014 15 / 1 Classe NP-complet La classe NP-Complet est la classe la plus étudiée car elle constitue la classe des problèmes les plus difficiles de NP (c est-à-dire ceux qui n ont pas d algorithmes polynomiaux connus pour les résoudre). De plus, ils sont tous reliés par des transformations (ou réductions) polynomiales. Pour montrer que P = NP, il suffit de trouver un algorithme polynomial pour résoudre un problème classé NP-Complet. Les théoriciens de cette discipline pensent en général que P NP. S. Cafieri (ENAC) Notions sur la Théorie de la Complexité 2013-2014 16 / 1

Classe NP-complet On qualifie de NP-complets les problèmes de décision, on qualifie de NP-difficiles (NP-hard) les problèmes d optimisation. S. Cafieri (ENAC) Notions sur la Théorie de la Complexité 2013-2014 17 / 1 Bibliography I Michael R. Garey and David S. Johnson. Computers and Intractability: A Guide to the Theory of NP-Completeness. W. H. Freeman, 1979. Frederic Messine. Notions sur la Theorie de la Complexité des algorithmes. 2010. L.R. Foulds. Combinatorial Optimization for Undergraduates Springer-Verlag, 1984. S. Cafieri (ENAC) Notions sur la Théorie de la Complexité 2013-2014 18 / 1