d’autres problèmes np-completsdi.ulb.ac.be/ssd/jfr/clique-ind-partition.pdf · npc sens...
TRANSCRIPT
D’autres problèmes NP-complets
• Clique et ensemble indépendant
• Circuit hamiltonien
• Partition
Tuesday 10 November 2009
Clique et ensemble indépendant
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Circuit hamiltonien☝A préparer par l’étudiant (voir Garey et Johnson)
Tuesday 10 November 2009
Partition et algorithmes pseudo-polynomiaux
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Un algorithme basé sur la programmation dynamique pour
Partition
Tuesday 10 November 2009
Tuesday 10 November 2009
Vrai
Tuesday 10 November 2009
Tuesday 10 November 2009
Vrai
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Problèmes NP complets au sens fort et au sens faible
Tuesday 10 November 2009
Mesure des instances • Pour les problèmes qui contiennent des valeurs numériques (comme dans
Partition), nous allons définir une nouvelle façon de mesurer les instances d’un problème;
• Rappel de la mesure classique. Nous avons décidé de mesurer la taille d’une instance à l’aide de la taille de son encodage : si w ∈ Σ* est l’encodage d’une instance alors la taille de cette instance est mesurée par |w|.
• Mesure alternative pour les problèmes avec valeurs numériques. En plus de mesurer une instance par la taille de son encodage, nous allons mesurer une instance par la valeur maximale qui apparaît dans l’instance. Nous noterons cette valeur Max(w).
• Exemple : dans le problème Partition, pour une instance (A,S) encodée dans le mot w, Max(w) renvoit la plus grande valeur dans { S(a) | a ∈ A }.
Tuesday 10 November 2009
Algorithmes pseudo-polynomiaux
• Un problème avec des valeurs numériques (paramètres naturels) a une solution pseudo-polynomiale si il existe un algorithme déterministe pour le résoudre et dont le temps d’exécution pour une instance encodée par w est borné par O(p(|w| + Max(w))), où p est une fonction polynomiale.
• Notons qu’avec un encodage binaire des nombres naturels, on aura que Max(w) est exponentiel par rapport à |w|. On n’a donc pas un algorithme polynomial par rapport à la mesure traditionnelle !
Tuesday 10 November 2009
NPC sens faible-sens fort
• Un problème est NP complet au sens faible si :
• il est NP complet;
• il a une solution pseudo-polynomiale.
• Un problème est NP complet au sens fort si :
• il est NP complet;
• il n’existe pas de solution pseudo-polynomiale sous hypothèse que P est différent de NP.
Tuesday 10 November 2009
TSP : NP complet au sens fort
• Dans la réduction du circuit Hamiltonien vers le TSP, les deux longueurs utilisées entre villes sont 1(présence d’un arc entre les deux sommets représentés par les villes), et 2 (absence d’un tel arc).
• Max(w) est donc toujours borné par une constante;
• Il n’existe donc pas d’algorithme pseudo-polynomial à moins que P=NP.
Tuesday 10 November 2009
Equivalence entre expressions régulières
sans étoile
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Autres classes de complexité
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
est bornée par un polynôme p(n).
Tuesday 10 November 2009
Techniques pour établir la NP complétude
Tuesday 10 November 2009
Technique de la restriction
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
En effet, si on s’intéresse aux instances où
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Un restriction de ce problème correspond au problème de la clique. En effet :
Est-ce que G=(V1,E1) contient une clique à K sommets ?
Pour résoudre ce problème, il suffit de considérer le problème d’isomorphisme de sous-graphe avec G et un graphe H qui est un graphe complet à K sommets (une clique de K sommets).
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
➸ Souvent, les problèmes “réels” sont des complications de problèmes NP-complets répertoriés.
➸ Beaucoup de résultats de “NP difficulté” sont obtenus par cette technique simple.
Tuesday 10 November 2009
Technique du remplacement local
Tuesday 10 November 2009
Tuesday 10 November 2009
Autre exemple:Séquençage dans des intervalles (SWI)
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Tuesday 10 November 2009
Technique du design de composants
• Technique la plus compliquée
• Construction de composants qui remplissent des “missions” spécifiques pour “résoudre” le problème connu comme étant NP difficile.
Tuesday 10 November 2009
Ex 1 : 3SAT vers VC
• des arcs sont utilisés pour choisir une valeur de vérité pour les variables propositionnelles;
• des arcs sont utilisés pour vérifier qu’au moins 1 littéral par clause évalue à vrai.
Tuesday 10 November 2009
Ex 2 : 3SAT vers 3DM
• des éléments de l’ensemble de triplets M sont utilisés pour choisir une valeur de vérité pour les variables propositionnelles;
• des éléments de l’ensemble de triplets M sont utilisés pour vérifier que chaque clause contient au moins un littéral qui évalue à vrai;
• des éléments de l’ensemble des triplets M jouent un rôle plus technique dit de “garbage collection”.
Tuesday 10 November 2009
Ex 3 : Théorème de Cook
• Chaque contrainte qui participe à la définition de la notion d’exécution d’une machine de Turing non-déterministe est codée à l’aide d’une formule propositionnelle (un ensemble de clauses).
Tuesday 10 November 2009