Complexité
Cours 3
Résolution de problèmes difficiles
2
Résolution de problèmes difficiles
I. Introduction
II. Algorithmes d’approximation
III. Problèmes de satisfaction de contraintes
(CSP)
I. Introduction
Rappel cours 2 :
les problèmes que l’on considère se
répartissent principalement en deux classes :
P (pbs «faciles») et NPC (pbs «difficiles).
les pbs NP-complets, sont les plus difficiles de
la classe NP.
on ne connaît pas d’algorithme polynomial
pour ces algorithmes
Face à un pb NP-complet, on peut :
Proposer un algorithme polynomial donnant
une solution approchée (ex: alg. gloutons)
Proposer un algorithme exact, exponentiel
dans le pire des cas mais efficace dans 99% des
cas.
I. Introduction
5
Résolution de problèmes difficiles
I. Introduction
II. Algorithmes d’approximation
1.Définition
2. Exemple de Vertex Cover
III. Problèmes de satisfaction de contraintes (CSP)
II. Algorithmes d’approximation
Idée :
face à un pb d’optimisation combinatoire difficile,
proposer un algorithme
qui donne une solution faisable
en temps polynomial
mais dont la valeur peut-être sous-optimale
pour certaines instances (en contrepartie)
II.1 Définitions
un algorithme d’approximation pour un pb est un alg. de
compx polyn. qui étant donné une instance I renvoie une
solution faisable pour I, mais pas nécessairement une
solution optimale
Un algorithme d’approx° A a un facteur d’approximation
!(n), si pour toute instance de taille n, le résultat R donné
par A à une valeur qui est à un facteur !(n) d’une solution
optimales R*, c-a-d :
1 ! Max (R/R*, R*/R) ! "(n)
Minimization
problem
Maximization
problem
II. Algorithmes d’approximation
Rmq :
pour de nombreux pbs NP-complets, un
algorithme glouton simple constitue un algorithme
d’approximation à facteur constant
Exemples : vertex cover, 3-hitting set, clique, ...
Approche peut valable en pratique pour un pb
pour lequel on ne trouve que des alg. d’approx° à
facteur n
Enoncé du pb (VC) :
étant donné un graphe G=(V,E), trouver le
plus petit V’ ! V t.q. si (u,v) " E, alors u " V#
et/ou v " V#
Le pb de décision est NP-Complet
(3SAT !p VC ou bien Clique !p VC)
Le pb d’optimisation est au moins aussi
difficile (cf cours 2)
II.2 Exemple de Vertex Cover
II.2 Exemple de Vertex Cover
1 / 34 100%