Module d’Algorithmique Avancée
Année 2006-2007
Eléments de NP-Complétude
Safia Kedad-Sidhoum
Module d’Algorithmique Avanc´
eeAnn´
ee 2006-2007 – 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´
eeAnn´
ee 2006-2007 – 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´
eeAnn´
ee 2006-2007 – p. 2/15
Introduction
Conjecture P!=NP
Module d’Algorithmique Avanc´
eeAnn´
ee 2006-2007 – 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´
eeAnn´
ee 2006-2007 – p. 3/15
Problème d’optimisation
Prolème d’optimisation : ensemble d’instances I
Module d’Algorithmique Avanc´
eeAnn´
ee 2006-2007 – 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 Fdans R.
Module d’Algorithmique Avanc´
eeAnn´
ee 2006-2007 – p. 4/15
Problème d’optimisation
hypothèses :Fet csont donnés implicitement par deux
algorithmes AFet Ac
AF- permet de répondre à fF,Fétant caractérisé
par un ensemble de paramètres S,
Ac- retourne la valeur de c(f)en fonction d’un
ensemble de paramètres Q.
Module d’Algorithmique Avanc´
eeAnn´
ee 2006-2007 – p. 5/15
Problème d’optimisation
hypothèses :Fet csont donnés implicitement par deux
algorithmes AFet Ac
AF- permet de répondre à fF,Fétant caractérisé
par un ensemble de paramètres S,
Ac- 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´
eeAnn´
ee 2006-2007 – p. 5/15
Problème d’optimisation : Exemples
Problème du voyageur de commerce : visiter un ensemble
de nvilles exactement une fois
S- entier n,
Q- matrice de distances dij de taille (n×n).
Module d’Algorithmique Avanc´
eeAnn´
ee 2006-2007 – p. 6/15
Problème d’optimisation : Exemples
Problème du voyageur de commerce : visiter un ensemble
de nvilles exactement une fois
S- entier n,
Q- matrice de distances dij de taille (n×n).
Instance :
AF- vérifie si le tour fest une permutation de
l’ensemble {1,2,· · · , n},
Ac- calcule le coût c(f)en sommant toutes les
distances des arêtes qui constituent le tour f.
Module d’Algorithmique Avanc´
eeAnn´
ee 2006-2007 – 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 CStel
que pour tout élément a, b C,{a, b}A.
S- graphe G,
Q- vide
Module d’Algorithmique Avanc´
eeAnn´
ee 2006-2007 – 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 CStel
que pour tout élément a, b C,{a, b}A.
S- graphe G,
Q- vide
Instance :
AF- vérifie si fest une clique de G(sous-graphe
complet),
Ac- calcule le cardinal de f.
Module d’Algorithmique Avanc´
eeAnn´
ee 2006-2007 – p. 7/15
Problème d’optimisation
combinatoire
Problème d’optimisation combinatoire : Etant donnée une
représentation des ensembles de paramètres Set Qpour
les algorithmes AFet Ac, il s’agit de trouver la solution
réalisable optimale.
Module d’Algorithmique Avanc´
eeAnn´
ee 2006-2007 – p. 8/15
Problème d’optimisation
combinatoire
Problème d’optimisation combinatoire : Etant donnée une
représentation des ensembles de paramètres Set Qpour
les algorithmes AFet Ac, il s’agit de trouver la solution
réalisable optimale.
Formes relaxées :
Problème d’évaluation - Etant donnés Set Q, trouver
le coût de la solution optimale,
(si Acest 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 Set Q) et un entier L,
existe-t-il une solution réalisable fFtel que
c(f)L? (problème de minimisation)
Module d’Algorithmique Avanc´
eeAnn´
ee 2006-2007 – 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´
eeAnn´
ee 2006-2007 – 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 Gne possède plus de sommets alors
retourner
Sinon
Soit sun sommet tel que cliquesize(G(s)) = cliquesize(G)
G(s)est le sous-graphe de Gconstitué de set de tous ses voisins
retourner {s}maxclique(G(s)\s)
Fin Si
Module d’Algorithmique Avanc´
eeAnn´
ee 2006-2007 – 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´
eeAnn´
ee 2006-2007 – p. 10/15
Evaluation vs. Optimisation :
Complexité
Soit C(n)la complexité de cliquesize
Soit T(n)la complexité de maxclique
On a :
T(0) = O(1)
T(n)(n+ 1)C(n) + T(n1) + O(n)
Ainsi, T(n) = O(n2×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´
eeAnn´
ee 2006-2007 – p. 10/15
Classes Pet 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´
eeAnn´
ee 2006-2007 – p. 11/15
1 / 7 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !