Eléments de NP-Complétude

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)

Jean-Philippe Préaux

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

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

Resolution limit in community detection

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

Programmation Linéaire - Cours 1

Introduction à la théorie des graphes. Solutions des exercices

Théorie des Graphes Cours 3: Forêts et Arbres II / Modélisation

Annexe 6. Notions d ordonnancement.

Limites finies en un point

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://

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

Info0804. Cours 6. Optimisation combinatoire : Applications et compléments

Quelques algorithmes simples dont l analyse n est pas si simple

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

Baccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé

Complexité. Licence Informatique - Semestre 2 - Algorithmique et Programmation

Cours de Recherche Opérationnelle IUT d Orsay. Nicolas M. THIÉRY. address: Nicolas.Thiery@u-psud.fr URL:

Optimisation Combinatoire (Méthodes approchées) II. Recherche Locale simple (Les bases)

U.F.R. Sciences Fondamentales et Appliquées. pour obtenir. le grade de Docteur en Sciences. Spécialité : informatique

Mlle Yasmin A. RÍOS SOLÍS

Cours de Master Recherche

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

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

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes.

Architecture des Systèmes d Information Architecture des Systèmes d Information

Nouvelles propositions pour la résolution exacte du sac à dos multi-objectif unidimensionnel en variables binaires

ALGORITHMIQUE II NOTION DE COMPLEXITE. SMI AlgoII

Les colonies de fourmis : apprentissage coopératif pour le problème du voyageur de commerce

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

I. Polynômes de Tchebychev

OPTIMISATION À UNE VARIABLE

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

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme?

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme?

Programmation linéaire

Colorations identiantes de graphes

Big Data et Graphes : Quelques pistes de recherche

Capacité d un canal Second Théorème de Shannon. Théorie de l information 1/34

Big Data et Graphes : Quelques pistes de recherche

Optimisation Discrète

Intégration de la dimension sémantique dans les réseaux sociaux

Cours de Probabilités et de Statistique

Programmation linéaire

Eléments de Théorie des Graphes et Programmation Linéaire

Problème d ordonnancement de véhicules en variables booléennes

ALOHA LOAD BALANCER MISE EN ŒUVRE DU SSL FRONTEND

PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES

Cryptographie et fonctions à sens unique

Exo7. Calculs de déterminants. Fiche corrigée par Arnaud Bodin. Exercice 1 Calculer les déterminants des matrices suivantes : Exercice 2.

Chapitre 6. Fonction réelle d une variable réelle

Théorie des graphes et optimisation dans les graphes

Microsoft Excel : tables de données

Nouvelles propositions pour la résolution exacte du problème de sac à dos bi-objectif unidimensionnel en variables binaires

Dossier d'étude technique

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

6. Les différents types de démonstrations

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

Continuité d une fonction de plusieurs variables

Plus courts chemins, programmation dynamique

Chapitre 3. Quelques fonctions usuelles. 1 Fonctions logarithme et exponentielle. 1.1 La fonction logarithme

Stratégie de recherche adaptative en programmation par contrainte

Modélisation multi-agents - Agents réactifs

Optimisation for Cloud Computing and Big Data

Continuité et dérivabilité d une fonction

Séparation et Evaluation pour le problème d ordonnancement avec blocage.

Chapitre 5 : Flot maximal dans un graphe

Algorithmes de Transmission et de Recherche de l Information dans les Réseaux de Communication. Philippe Robert INRIA Paris-Rocquencourt

Eteindre. les. lumières MATH EN JEAN Mme BACHOC. Elèves de seconde, première et terminale scientifiques :

Logique. Plan du chapitre

Résolution de systèmes linéaires par des méthodes directes

Introduction à la Programmation par Contraintes (PPC) Ruslan Sadykov LIX, École Polytechnique

MABioVis. Bio-informatique et la

Algorithmes de recherche

Distribution Uniforme Probabilité de Laplace Dénombrements Les Paris. Chapitre 2 Le calcul des probabilités

Faculté des sciences Département de mathématiques. Théorie des graphes

Leçon 01 Exercices d'entraînement

Aspects théoriques et algorithmiques du calcul réparti L agglomération

Mesures gaussiennes et espaces de Fock

Tâche complexe produite par l académie de Clermont-Ferrand. Mai 2012 LE TIR A L ARC. (d après une idée du collège des Portes du Midi de Maurs)

Structures algébriques

Fonctions de plusieurs variables : dérivés partielles, diérentielle. Fonctions composées. Fonctions de classe C 1. Exemples

UNIVERSITÉ DU QUÉBEC À CHICOUTIMI UNIVERSITÉ DU QUÉBEC À MONTRÉAL

Introduction à la théorie des graphes

Le théorème de Perron-Frobenius, les chaines de Markov et un célèbre moteur de recherche

Une nouvelle approche de détection de communautés dans les réseaux sociaux

Analyse de la variance Comparaison de plusieurs moyennes

UNIVERSITÉ DU QUÉBEC MÉMOIRE PRÉSENTÉ À L'UNIVERSITÉ DU QUÉBEC À CHICOUTIMI COMME EXIGENCE PARTIELLE DE LA MAÎTRISE EN INFORMATIQUE

Chapitre VI - Méthodes de factorisation

Triangle de Pascal dans Z/pZ avec p premier

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

Groupe symétrique. Chapitre II. 1 Définitions et généralités

Développements limités. Notion de développement limité

CCP PSI Mathématiques 1 : un corrigé

Electricité : caractéristiques et point de fonctionnement d un circuit

TRACER LE GRAPHE D'UNE FONCTION

Algorithmes d'apprentissage

Transcription:

Module d Algorithmique Avancée Année 2005-2006 Eléments de NP-Complétude Safia Kedad-Sidhoum Safia.Kedad-Sidhoum@lip6.fr Module d Algorithmique AvancéeAnnée 2005-2006 p. 1/15

Introduction Algorithmes efficaces : nombre d étapes qui croît de façon polynomiale par rapport à la taille de l entrée Module d Algorithmique AvancéeAnnée 2005-2006 p. 2/15

Introduction Algorithmes efficaces : nombre d étapes qui croît de façon polynomiale par rapport à la taille de l entrée Problèmes NP-complets : Voyageur de commerce (Traveling Salesman Problem) Aucun problème NP-complet ne peut être résolu par un algorithme polynomial, Sil existe un algorithme polynomial pour un problème NP-complet alors il existe un algorithme polynomial pour tout problème NP-complet. Module d Algorithmique AvancéeAnnée 2005-2006 p. 2/15

Introduction Conjecture P NP Module d Algorithmique AvancéeAnnée 2005-2006 p. 3/15

Introduction Conjecture P NP Problèmes polynomiaux : algorithmes exacts Problèmes NP-complets : approches alternatives (algorithmes d approximation, heuristiques...) Module d Algorithmique AvancéeAnnée 2005-2006 p. 3/15

Problème d optimisation Prolème d optimisation : ensemble d instances I Module d Algorithmique AvancéeAnnée 2005-2006 p. 4/15

Problème d optimisation Prolème d optimisation : ensemble d instances I Instance : (F,c) F - ensemble des solutions réalisables, c - fonction coût de F dans R. Module d Algorithmique AvancéeAnnée 2005-2006 p. 4/15

Problème d optimisation hypothèses : F et c sont donnés implicitement par deux algorithmes A F et A c A F - permet de répondre à f F, F étant caractérisé par un ensemble de paramètres S, A c - retourne la valeur de c(f) en fonction d un ensemble de paramètres Q. Module d Algorithmique AvancéeAnnée 2005-2006 p. 5/15

Problème d optimisation hypothèses : F et c sont donnés implicitement par deux algorithmes A F et A c A F - permet de répondre à f F, F étant caractérisé par un ensemble de paramètres S, A c - retourne la valeur de c(f) en fonction d un ensemble de paramètres Q. Instance : représentation des ensembles de paramètres (S,Q) (cf. modèles de calcul) Module d Algorithmique AvancéeAnnée 2005-2006 p. 5/15

Problème d optimisation : Exemples Problème du voyageur de commerce : visiter un ensemble de n villes exactement une fois S - entier n, Q - matrice de distances d ij de taille (n n). Module d Algorithmique AvancéeAnnée 2005-2006 p. 6/15

Problème d optimisation : Exemples Problème du voyageur de commerce : visiter un ensemble de n villes exactement une fois S - entier n, Q - matrice de distances d ij de taille (n n). Instance : A F - vérifie si le tour f est une permutation de l ensemble {1, 2,,n}, A c - calcule le coût c(f) en sommant toutes les distances des arêtes qui constituent le tour f. Module d Algorithmique AvancéeAnnée 2005-2006 p. 6/15

Problème d optimisation : Exemples Problème de la clique maximale : Etant donné un graphe G = (S,A), déterminer le plus grand ensemble C S tel que pour tout élément a,b C, {a,b} A. S - graphe G, Q - vide Module d Algorithmique AvancéeAnnée 2005-2006 p. 7/15

Problème d optimisation : Exemples Problème de la clique maximale : Etant donné un graphe G = (S,A), déterminer le plus grand ensemble C S tel que pour tout élément a,b C, {a,b} A. S - graphe G, Q - vide Instance : A F - vérifie si f est une clique de G (sous-graphe complet), A c - calcule le cardinal de f. Module d Algorithmique AvancéeAnnée 2005-2006 p. 7/15

Problème d optimisation combinatoire Problème d optimisation combinatoire : Etant donnée une représentation des ensembles de paramètres S et Q pour les algorithmes A F et A c, il s agit de trouver la solution réalisable optimale. Module d Algorithmique AvancéeAnnée 2005-2006 p. 8/15

Problème d optimisation combinatoire Problème d optimisation combinatoire : Etant donnée une représentation des ensembles de paramètres S et Q pour les algorithmes A F et A c, il s agit de trouver la solution réalisable optimale. Formes relaxées : Problème d évaluation - Etant donnés S et Q, trouver le coût de la solution optimale, (si A c est polynomial alors le problème d évaluation n est pas plus difficile que le problème d optimisation) Problème de reconnaissance - Etant donnés une instance (représentation de S et Q) et un entier L, existe-t-il une solution réalisable f F tel que c(f) L? (problème de minimisation) Module d Algorithmique AvancéeAnnée 2005-2006 p. 8/15

Evaluation vs. Optimisation : Exemple Problème de la clique maximale : on dispose de la procédure cliquesize qui permet d évaluer le cardinal de la clique maximale d un graphe G. On s intéresse à la résolution du problème d optimisation. Module d Algorithmique AvancéeAnnée 2005-2006 p. 9/15

Evaluation vs. Optimisation : Exemple Problème de la clique maximale : on dispose de la procédure cliquesize qui permet d évaluer le cardinal de la clique maximale d un graphe G. On s intéresse à la résolution du problème d optimisation. (Procédure récursive maxclique) procédure maxclique(g : graphe) Si G ne possède plus de sommets alors retourner Sinon Soit s un sommet tel que cliquesize(g(s)) = cliquesize(g) G(s) est le sous-graphe de G constitué de s et de tous ses vois retourner {s} maxclique(g(s)\s) Fin Si Module d Algorithmique AvancéeAnnée 2005-2006 p. 9/15

Evaluation vs. Optimisation : Complexité Soit C(n) la complexité de cliquesize Soit T(n) la complexité de maxclique Module d Algorithmique AvancéeAnnée 2005-2006 p. 10/15

Evaluation vs. Optimisation : Complexité On a : Soit C(n) la complexité de cliquesize Soit T(n) la complexité de maxclique T(0) = O(1) T(n) (n + 1)C(n) + T(n 1) + O(n) Ainsi, T(n) = O(n 2 C(n)) Si la complexité de cliquesize est bornée par une fonction polynomiale alors maxclique le sera également (ce n est pas le cas!). Module d Algorithmique AvancéeAnnée 2005-2006 p. 10/15

Classes P et NP Problèmes de reconnaisance «archétypes» Arrêt : Etant donné un algorithme et son entrée, est-ce qu il s arrête? Satisfiabilité : Etant donnée une formule booléenne, est-elle satisfiable? Circuit Hamiltonien : Etant donné un graphe, existe-t-il un circuit passant exactement une fois par tous les sommets du graphe? Module d Algorithmique AvancéeAnnée 2005-2006 p. 11/15

Classes P et NP Problèmes de reconnaisance «archétypes» Arrêt : Etant donné un algorithme et son entrée, est-ce qu il s arrête? Satisfiabilité : Etant donnée une formule booléenne, est-elle satisfiable? Circuit Hamiltonien : Etant donné un graphe, existe-t-il un circuit passant exactement une fois par tous les sommets du graphe? Remarque : Tout résultat négatif concernant la complexité des problèmes de reconnaissance pourra être appliqué au problème d optimisation associé. Module d Algorithmique AvancéeAnnée 2005-2006 p. 11/15

Classes P et NP On s intéresse à la classification des problèmes de reconnaissance en fonction de leur complexité. P : problèmes résolus par des algorithmes polynomiaux, NP : Si x est une instance «vrai», il existe un certificat «concis» de x pouvant être validé en temps polynomial. Module d Algorithmique AvancéeAnnée 2005-2006 p. 12/15

Classes P et NP On s intéresse à la classification des problèmes de reconnaissance en fonction de leur complexité. P : problèmes résolus par des algorithmes polynomiaux, NP : Si x est une instance «vrai», il existe un certificat «concis» de x pouvant être validé en temps polynomial. Exemples : P : connexité d un graphe, couplage maximal, arbre couvrant de coût minimum... NP : clique maximale, PVC, Satisfiabilié... Module d Algorithmique AvancéeAnnée 2005-2006 p. 12/15

Réduction polynomiale Soient A 1 et A 2 deux problèmes de reconaissance. A 1 est réductible à A 2 en temps polynomial si et seulement si il existe un algorithme polynomial 1 pour A 1 qui utilise comme sous-programme (coût unitaire) un algorithme 2 pour A 2. Module d Algorithmique AvancéeAnnée 2005-2006 p. 13/15

Réduction polynomiale Soient A 1 et A 2 deux problèmes de reconaissance. A 1 est réductible à A 2 en temps polynomial si et seulement si il existe un algorithme polynomial 1 pour A 1 qui utilise comme sous-programme (coût unitaire) un algorithme 2 pour A 2. Propriété : Si A 1 est réductible à A 2 en temps polynomial et qu il existe un algorithme polynomial pour A 2 alors il existe un algorithme polynomial pour A 1. Module d Algorithmique AvancéeAnnée 2005-2006 p. 13/15

Problème NP-complet Définition : Un problème de reconnaissance A 1 peut être polynomialement transformé en un problème de reconnaissance A 2 si étant donnée une chaîne x on peut construire en temps polynomial une chaîne y tel que x est une instance «vrai» de A 1 si et seulement si y est une instance «vrai» de A 2. Module d Algorithmique AvancéeAnnée 2005-2006 p. 14/15

Problème NP-complet Définition : Un problème de reconnaissance A 1 peut être polynomialement transformé en un problème de reconnaissance A 2 si étant donnée une chaîne x on peut construire en temps polynomial une chaîne y tel que x est une instance «vrai» de A 1 si et seulement si y est une instance «vrai» de A 2. Un problème de reconnaisance est dit NP-complet si tous les problèmes de la classe NP lui sont polynomialement réductibles. Module d Algorithmique AvancéeAnnée 2005-2006 p. 14/15

Théorème de Cook Problèmes NP-complets : Satisfiabilité, 3-Satisfiabilité Clique Couverture de sommets Cycle hamiltonien, Voyageur de commerce Module d Algorithmique AvancéeAnnée 2005-2006 p. 15/15