Algorithmes d’approximation
Module IAD/M2/RP/RO
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)
(éventuellement vide) de solutions.
Un algorithme qui résout Π doit , pour tout énoncé I :
- écrire une solution de S*(I) si S*(I) n’est pas vide,
- sinon écrire «pas de solution».
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}
Cas d'une minimisation.
Si Inf{fI(s)|s S(I)} existe, il est noté fI*.
Si fI* est atteint, alors S*(I) = {s S(I)| fI(s)= fI*}.
S*(I) est l'ensemble des solutions optimales de l'énoncé I ;
fI* est la valeur d'une solution optimale de l'énoncé I , ou
encore la valeur optimale d'une solution de S(I).
Pour une maximisation, on remplace Inf par Sup.
Le plus souvent S(I) est fini mais de taille exponentielle
en la longueur de I. Dans ce cas :
- Inf{fI(s)|s S(I)} existe ;
- S*(I) est non vide.
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.
1 / 25 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 !