Algorithmes d ’approximation
Module IAD/M2/RO/RP
Philippe Chrétienne
Plan du chapitre
Problème de recherche
Algorithme d ’approximation
Garanties
Exemples (bin-packing, TSP)
Approximation et complexité
Problème de recherche
Un problème est dit « de recherche » si:
à tout énoncé I de est associé un ensemble S*(I) de solutions.
Un algorithme qui résout doit:
pour tout énoncé I écrire une solution de S*(I) si S*(I)≠,
sinon écrire « pas de solution pour cet énoncé ».
Un problème d ’optimisation (minimisation ou maximisation)
est un problème de recherche pour lequel S*(I) est défini à partir:
- d ’un ensemble de solutions candidates S(I),
- d ’une fonction objectif fI: S(I)  .
S*(I) = {s S(I)fI(s) est optimal}
Exemples de problèmes d ’optimisation :
TSP (voyageur de commerce)
I défini à partir d ’une matrice D des distances entre n villes.
Une solution candidate est un tour.
Une solution est un tour de longueur totale minimale.
SAC à DOS
I défini à partir - d ’un ensemble d ’articles A,
- d ’une fonction poids p: A  ,
- d ’une fonction valeur v : A  ,
- d ’un poids maximum P.
Une solution candidate est un sous-ensemble d ’articles de poids ≤ P
Une solution est une solution candidate de valeur maximale.
Algorithme d ’approximation
Soit un problème d ’optimisation.
On suppose que la fonction objectif fIest à minimiser.
On suppose que pour tout énoncé I: S(I) est non vide et fini.
On note alors fI* = Min{fI(s)s S(I) } la valeur (optimale)
d’une solution.
On a alors S*(I)= {s S(I) fI(s) = fI*}
Un algorithme d ’approximation  pour doit fournir,
pour tout énoncé I de et en temps polynomial en la
longueur l(I) de l ’énoncé I :
une solution candidate (notée Â(I))
de valeur fI(Â(I)) « assez proche » de fI*.
1 / 23 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 !