Ce diaporama a bien été signalé.
Le téléchargement de votre SlideShare est en cours. ×

Décidabilité et complexité 4_4 _ Problèmes NP-Complets.pdf

Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Chargement dans…3
×

Consultez-les par la suite

1 sur 16 Publicité

Plus De Contenu Connexe

Similaire à Décidabilité et complexité 4_4 _ Problèmes NP-Complets.pdf (20)

Plus récents (20)

Publicité

Décidabilité et complexité 4_4 _ Problèmes NP-Complets.pdf

  1. 1. Décidabilité et Complexité 4/4 Problèmes NP-complets.
  2. 2. Table des matières - Réduction de problèmes - Problème k-SAT - Problème COLORING - 3-SAT se réduit à COLORING - Problèmes NP-complets - Théorème de Cook - Exemples de problèmes NP-complets - Plus de classes de complexité !
  3. 3. Rappels EXPTIME P NP Co-NP
  4. 4. Soient D et E deux problèmes de décision. Une réduction polynomiale de D vers E est une application f , calculable en temps polynomial, qui à toute instance de d de D associe une instance f (d ) de E telle que : d est une instance positive de D ⇔ f (d ) est une instance positive de E. Lorsque une telle application existe on dit que D se réduit à E. Réduction de problème Si D se réduit à E, tout algorithme qui permet de résoudre E, permet de résoudre D en restant dans la même classe de complexité ! E ∈ P ⇒ D ∈ P ; E ∈ NP ⇒ D ∈ NP
  5. 5. k-SAT Pour tout entier k ≥ 1, le problème k-SAT est celui de savoir étant donnée une proposition en forme normale conjonctive à n variables dont chaque clause possède au maximum k variables si elle est satisfaisable ou pas. 1-SAT : v1 ∧ v2 ∧ v3 v1 ∧ v2 ∧ v3 ∧ ᆨv2 : Oui : Non Complexité linéaire. 2-SAT : (v1 ∨ v2 ) ∧ (v2 ∨ ᆨv3 ) ∧ (ᆨv1 ∨ v3 ) : Oui Complexité polynomiale.
  6. 6. SAT se réduit à 3-SAT Il suffit de montrer qu'à toute proposition de SAT, on peut associer une proposition de 3-SAT qui soit satisfaisable ssi la première l'est. On remplace chaque clause a1 ∨ a2 ∨ … ∨ ap avec p > 3 par : (a1 ∨ a2 ∨ u1 ) ∧ (a3 ∨ ᆨu1 ∨ u2 ) ∧ (a4 ∨ ᆨu2 ∨ u3 ) ∧ … … (ap − 2 ∨ ᆨup − 4 ∨ up − 3 ) ∧ (ap − 1 ∨ ap ∨ ᆨup − 3 ). Le nombre de variables fait moins que doubler donc c'est bien une réduction polynomiale. Donc 3-SAT est aussi dur que SAT !!!
  7. 7. Problème de coloration de graphe Problème COLORING : Étant donné un graphe G, peut-on colorier les sommets à l'aide de 3 couleurs de sorte que deux sommets reliés ne soit jamais de la même couleur ? ok
  8. 8. 3-SAT se réduit à COLORING Pour toute proposition de 3-SAT, on va construire un graphe, tel que si le graphe est coloriable alors la proposition est satisfaisable ! VRAI FAUX NEUTRE u ᆨu v ᆨv u ∨ v ∨ ᆨt t ᆨt u v ᆨt
  9. 9. 3-SAT se réduit à COLORING (u ∨ ᆨv ∨ w) ∧ (x ∨ x ∨ ᆨy)
  10. 10. Problèmes NP-complets Un problème P est dit NP-difficile si tous les problèmes de NP peuvent se réduire à lui. Si de plus, P est dans NP, on dit qu'il est NP-complet. P NP NPC Si un problème NP-complet est dans P alors P = NP. Pour montrer qu'un problème P donné est NP-complet, on montre qu'il existe un problème NP-complet qui se réduit à P. Mais là, on tourne en rond !
  11. 11. Théorème de Cook (1971) SAT est NP-complet. On considère que c'est ce résultat qui a lancé la recherche sur le problème « P = NP ? » Stephen Cook (1939 - ... )
  12. 12. Idée de la preuve Soit T une machine de Turing de complexité p(n). Il faut trouver une proposition logique qui permette de décrire l'exécution de T. On va introduire les variables suivantes : Notons R l'alphabet du ruban et E l'ensemble des états. tirk : Vrai si la case i de la bande contient le symbole r à l'étape k. hik : Vrai si la tête de lecture est sur la case i à l'étape k. sek : Vrai si la tête de lecture est dans l'état e à l'étape k. Le nombre de variable est un multiple de p(n)2 .
  13. 13. Idée de la preuve tirk : Vrai si la case i de la bande contient le symbole r à l'étape k. hik : Vrai si la tête de lecture est sur la case i à l'étape k. sek : Vrai si la tête de lecture est dans l'état e à l'étape k. Une transition (étape k) : la tête de lecture lit r et est dans l'état e donne 1) écrire r' 2) déplacement à droite 3) état e' ou ... ∨ (tirk ∧ hik ∧ sek ) ⇒ (tir'(k +1) ∧ h(i+1)(k+1) ∧ se'(k+1) ) ∨ ... ∨ (hik ∧ ( ∧ ᆨhjk )) j ≠ i 1 ≤ i ≤ p(n) : la tête de lecture est sur une seule case. 1 ≤ i ≤ p(n) En recollant toutes les conditions avec des ∧ on obtient une formule qui est satisfaisable ssi il existe un calcul de T qui accepte la donnée initiale...
  14. 14. Exemples de problèmes NP-complets - 3-SAT - COLORING - Problème du cycle hamiltonien - Problème du sac à dos - Sudoku - Démineur - Tetris plus de 3000 problèmes recensés en 2019 ! Remarque (que je ne sais pas où caser) : Pour montrer que CHESS n'est pas dans P, on a montré que c'est un problème EXPTIME-complet !
  15. 15. Plus de classes de complexité L = problème décidables en O((log n)k ) EXPTIME PSPACE NP Co-NP P NL L NL = problème décidables enO((log n)k ) par une machine de Turing non déterministe. PSPACE = problème décidables avec une mémoire de taille polynomiale. Questions à résoudre : 1) L = NL ? 2) NL = P ? 3) P = NP ? 4) NP = PSPACE ? 5) PSPACE = EXPTIME ?
  16. 16. Fin

×