Вы находитесь на странице: 1из 41

Universit Mohammed V, Facult des Sciences de

Rabat
Laboratoire de Recherche Mathmatiques,
Informatique et Applications
Cours des Mthodes de
Rsolution Exactes
Heuristiques et
Mtaheuristiques
MASTER CODES, CRYPTOGRAPHIE ET SCURIT DE
LINFORMATION
Sidi Mohamed Douiri, Souad Elbernoussi, Halima Lakhbab
Table des matires
Table des matires iii
Liste des figures iii
1 1
1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Notions sur la complexit . . . . . . . . . . . . . . . . . . 2
1.3 Les mthodes de rsolution exactes . . . . . . . . . . . . 3
1.3.1 La mthode sparation et valuation (Branch and Bound) 3
1.3.2 La mthode de coupes planes (Cutting-Plane) . . . . . . 6
1.3.3 La mthode (Branch and Cut) . . . . . . . . . . . . . . . 7
1.3.4 La mthode de la gnration de colonnes . . . . . . . . . 7
1.4 Heuristiques . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.5 Mthodes de trajectoire . . . . . . . . . . . . . . . . . . . 9
1.5.1 La mthode de descente . . . . . . . . . . . . . . . . . . 9
1.6 Mtaheuristiques . . . . . . . . . . . . . . . . . . . . . . . . 10
1.6.1 Le recuit simul (simulated annealing) . . . . . . . . . . 11
1.6.2 La recherche Tabou (Tabu Search) . . . . . . . . . . . . . 14
1.6.3 Les algorithmes gntiques . . . . . . . . . . . . . . . . 15
1.6.4 Les algorithmes de colonies de fourmis . . . . . . . . . . 21
1.6.5 Loptimisation par essaim de particules . . . . . . . . . . 25
1.6.6 La recherche disperse . . . . . . . . . . . . . . . . . . . 30
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Bibliographie 33
Liste des figures
1.1 Solutions possibles de lexemple de sac dos. . . . . . . . . 5
1.2 Rsolution de lexemple de sac dos par Branch & Bound. . 6
1.3 Evolution dune solution dans la mthode de descente . . . 10
1.4 Fonctionnement de lalgorithme de recuit simul. . . . . . . 12
1.5 Fonctionnement dun algorithme gntique. . . . . . . . . . 16
1.6 Croisement en un point. . . . . . . . . . . . . . . . . . . . . . 18
1.7 Croisement en deux points. . . . . . . . . . . . . . . . . . . . 18
iii
1.8 Reprsentation schmatique dune mutation dans le cas
dun codage binaire. . . . . . . . . . . . . . . . . . . . . . . . 19
1.9 Application de la roulette sur la population. . . . . . . . . . 20
1.10 Lexprience du pont double branche. . . . . . . . . . . . . 22
1.11 Analysis of Particle Trajectories . . . . . . . . . . . . . . . . . 26
1.12 Graphe dinuence dun essaim de particules. ( gauche)
Graphe compltement connect, ( droite) Graphe dinfor-
mation circulaire. . . . . . . . . . . . . . . . . . . . . . . . . . 29
iv
1
1.1 Introduction
S
i les mthodes de rsolution exactes permettent dobtenir une solutions
dont loptimalit est garantie, dans certaines situations, on peut cepen-
dant chercher des solutions de bonne qualit, sans garantie doptimalit,
mais au prot dun temps de calcul plus rduit. Pour cela, On applique des
mthodes appeles mtaheuristiques, adaptes chaque problme trait,
avec cependant linconvnient de ne disposer en retour daucune informa-
tion sur la qualit des solutions obtenues.
Les heuristiques ou les mta-heuristiques exploitent gnralement des
processus alatoires dans lexploration de lespace de recherche pour faire
face lexplosion combinatoire engendr par lutilisation des mthodes
exactes. En plus de cette base stochastique, les mta-heuristiques sont le
plus souvent itratives, ainsi le mme processus de recherche est rpt
lors de la rsolution. Leur principal intrt provient justement de leur
capacit viter les minima locaux en admettant une dgradation de la
fonction objectif au cours de leur progression.
Loptimisation combinatoire (OC) occupe une place trs importante en
recherche oprationnelle et en informatique. De nombreuses applications
pouvant tre modlises sous la forme dun problme doptimisation com-
binatoire (POC) telles que le problme du voyageur de commerce, lordon-
nancement de tches, le problme de la coloration de graphes, etc. (POC)
comprend un ensemble ni de solutions, o chaque solution doit satisfaire
un ensemble de contraintes relatives la nature du problme, et une fonc-
tion objectif pour valuer chaque solution trouve. La solution optimale
est celle dont la valeur de lobjectif est la plus petite (resp. grande) dans le
cas de minimisation (resp. maximisation) parmi lensemble de solutions.
Un problme doptimisation combinatoire peut tre dni par :
Vecteur de variables x = (x
1
, x
2
, ..., x
n
),
Domaine des variables D = (D
1
, D
2
, ..., D
n
), o les (D
i
)
i=1,...,n
sont
des ensembles nis,
Ensemble de contraintes,
Une fonction objectif f minimiser ou maximiser,
Ensemble de toutes les solutions ralisable possibles est S = {x =
(x
1
, x
2
, , x
n
) D / x satisfait toutes les contraintes}, lensemble S est
aussi appel un espace de recherche.
1
2 Chapitre 1.
La rsolution de (POC) consiste trouver la meilleure solution, dnie
comme la solution globalement optimale ou un optimum global.
La rsolution des problmes combinatoires est assez dlicate puisque le
nombre ni de solutions ralisables crot gnralement avec la taille du
problme, ainsi que sa complexit. Cela a pouss les chercheurs dve-
lopper de nombreuses mthodes de rsolution en recherche opration-
nelle (RO) et en intelligence articielle (IA). Ces approches de rsolution
peuvent tre classes en deux catgories : les mthodes exactes et les m-
thodes approches.
Les mthodes exactes ont permis de trouver des solutions optimales pour
des problmes de taille raisonnable et rencontrent gnralement des dif-
cults face aux applications de taille importante. En revanche les mthodes
approches ne garantissent pas de trouver une solution exacte, mais seule-
ment une approximation.
Ces deux classes dalgorithmes de rsolution de (POC) sont dcrites dans
les sections suivantes.
1.2 Notions sur la complexit
Avant daborder les diffrentes mthodes de rsolution des problmes
doptimisation combinatoire nous introduisons quelques dnitions et no-
tions sur la complexit des (POC).
Gnralement, le temps dexcution est le facteur majeur qui dtermine
lefcacit dun algorithme, alors la complexit en temps dun algorithme
est le nombre dinstructions ncessaires (affectation, comparaison, opra-
tions algbriques, lecture et criture, etc.) que comprend cet algorithme
pour une rsolution dun problme quelconque.
Dnition 1.1 Une fonction f (n) est O(g(n)) ( f (n) est de complexit g(n)), sil existe un rel
c > 0 et un entier positif n
0
tel que pour tout n n
0
on a | f (n)| c.g(n).
Dnition 1.2 Un algorithme en temps polynomial est un algorithme dont le temps de la com-
plexit est en O(p(n)), o p est une fonction polynomiale et n est la taille de
linstance (ou sa longueur dentre).
Si k est le plus grand exposant de ce polynme en n, le problme correspondant
est dit tre rsoluble en O(n
k
) et appartient la classe P, un exemple de problme
polynomial est celui de la connexit dans un graphe.
Dnition 1.3 La classe NP contient les problmes de dcision qui peuvent tre dcids sur une
machine non dterministe en temps polynomial. Cest la classe des problmes qui
admettent un algorithme polynomial capable de tester la validit dune solution
du problme. Intuitivement, les problmes de cette classe sont les problmes qui
peuvent tre rsolus en numrant lensemble de solutions possibles et en les tes-
tant laide dun algorithme polynomial.
Dnition 1.4 On dit quun problme de recherche P
1
se rduit polynomialement un problme
de recherche P
2
par la rduction de Turing sil existe un algorithme A
1
pour
rsoudre P
1
utilisant comme sous programme un algorithme A
2
rsolvant P
2
, de
telle sorte que la complexit de A
1
est polynomiale, quand on value chaque appel
de A
2
par une constante.
1.3. Les mthodes de rsolution exactes 3
Dnition 1.5 La classe NP-complet : parmi lensemble des problmes appartenant NP, il
en existe un sous ensemble qui contient les problmes les plus difciles : on les
appelle les problmes NP-complets. Un problme NP-complet possde la proprit
que tout problme dans NP peut tre transform (rduit) en celui-ci en temps
polynomial. Cest dire quun problme est NP-complet quand tous les problmes
appartenant NP lui sont rductibles. Si on trouve un algorithme polynomial
pour un problme NP-complet, on trouve alors automatiquement une rsolution
polynomiale de tous les problmes de la classe NP.
Dnition 1.6 La classe NP-difcile : un problme est NP-difcile sil est plus difcile quun
problme NP-complet, cest dire sil existe un problme NP-complet se rduisant
ce problme par une rduction de Turing.
1.3 Les mthodes de rsolution exactes
Nous prsentons dabord quelques mthodes de la classe des algo-
rithmes complets ou exacts, ces mthodes donnent une garantie de trou-
ver la solution optimale pour une instance de taille nie dans un temps
limit et de prouver son optimalit (Puchinger et Raidl 2005).
1.3.1 La mthode sparation et valuation (Branch and Bound)
Lalgorithme de sparation et valuation, plus connu sous son appel-
lation anglaise Branch and Bound (B&B) (Land et Doig 1960), repose sur
une mthode arborescente de recherche dune solution optimale par s-
parations et valuations, en reprsentant les tats solutions par un arbre
dtats, avec des noeuds, et des feuilles.
Le branch-and-bound est bas sur trois axes principaux :
Lvaluation,
La sparation,
La stratgie de parcours.
- Lvaluation
Lvaluation permet de rduire lespace de recherche en liminant
quelques sous ensembles qui ne contiennent pas la solution opti-
male. Lobjectif est dessayer dvaluer lintrt de lexploration dun
sous-ensemble de larborescence. Le branch-and-bound utilise une
limination de branches dans larborescence de recherche de la ma-
nire suivante : la recherche dune solution de cot minimal, consiste
mmoriser la solution de plus bas cot rencontr pendant lexplo-
ration, et comparer le cot de chaque noeud parcouru celui de
la meilleure solution. Si le cot du noeud considr est suprieur
au meilleur cot, on arrte lexploration de la branche et toutes les
solutions de cette branche seront ncessairement de cot plus lev
que la meilleure solution dj trouve.
- La sparation
La sparation consiste diviser le problme en sous-problmes.
Ainsi, en rsolvant tous les sous-problmes et en gardant la
meilleure solution trouve, on est assur davoir rsolu le problme
initial. Cela revient construire un arbre permettant dnumrer
4 Chapitre 1.
toutes les solutions. Lensemble de neouds de larbre quil reste en-
core parcourir comme tant susceptibles de contenir une solu-
tion optimale, cest--dire encore diviser, est appel ensemble des
neouds actifs.
- La stratgie de parcours
La largeur dabord : Cette stratgie favorise les sommets les plus
proches de la racine en faisant moins de sparations du pro-
blme initial. Elle est moins efcace que les deux autres strat-
gies prsentes,
La profondeur dabord : Cette stratgie avantage les sommets les
plus loigns de la racine (de profondeur la plus leve) en
appliquant plus de sparations au problme initial. Cette voie
mne rapidement une solution optimale en conomisant la
mmoire,
Le meilleur dabord : Cette stratgie consiste explorer des sous-
problmes possdant la meilleure borne. Elle permet aussi
dviter lexploration de tous les sous-problmes qui possdent
une mauvaise valuation par rapport la valeur optimale.
Exemple du problme du sac dos
Le problme de sac dos consiste remplir un sac dos de capacit b
avec des produits x
1
, x
2
,..., x
n
, qui ont un poids b
1
, b
2
,..., b
n
et rapportent
un cout c
1
, c
2
,..., c
n
par unit, de faon maximiser le prot.
On considre lexemple suivant :

Max z = 4x
1
+5x
2
+6x
3
+2x
4
33x
1
+49x
2
+60x
3
+32x
4
130
x
i
N
Pour ne pas violer la contrainte du problme chaque variable peut
prendre les valeurs suivantes x
1
{0, 1, 2, 3}, x
2
{0, 1, 2}, x
3
{0, 1, 2}
et x
4
{0, 1, 2, 3, 4}, voir la gure 1.1.
1. Le neoud x
1
= 3 avec (x
2
= 0, x
3
= 0, x
4
= 0), dans ce cas, on
a mis un seul article dans le sac et prendre comme valuation du
noeud 3 4 = 12 : cest une valuation exacte qui correspond une
solution. Cela permet dinitialiser la valeur de la meilleure solution
courante 12.
2. Le noeud x
1
= 2, On xe larticle qui donne le meilleur rapport
cout/poids, cela est vri pour larticle 2. Lvaluation du noeud est
donc calcule par : 8 + (5 64/49) = 14, 53. Puisque 14, 53 > 12, on
divise ce noeud.
3. Le noeud x
1
= 2, x
2
= 1, pour le noeud x
1
= 3, on obtient une
valuation exacte gale 13. La solution correspondante devient la
nouvelle meilleure solution courante et la meilleure valeur est gale
13.
1.3. Les mthodes de rsolution exactes 5
Figure 1.1 Solutions possibles de lexemple de sac dos.
4. Le noeud x
1
= 2, x
2
= 0 a comme valuation 8 + (6 64/60) = 14, 4
(x
3
= 64/60, x
4
= 0). Puisque 14, 4 > 13, on divise ce noeud.
5. Le noeud x
1
= 2, x
2
= 0, x
3
= 1, a comme valuation est exacte
gale 14. La solution correspondante devient la nouvelle meilleure
solution courante et la meilleure valeur est gale 14.
6. Le noeud x
1
= 1, a comme valuation gale 4 + (5 97/49) =
13, 89. On passe au dernier noeud x
1
= 0, a comme valuation gale
5 130/49 = 13, 26 (x
2
= 130/49).
La valeur de la solution optimale gale 14 et elle consiste prendre
2 units du produit 1 et une du produit 3 (x
1
= 2, x
2
= 0, x
3
= 1, x
4
= 0),
voir la gure 1.2.
6 Chapitre 1.
Figure 1.2 Rsolution de lexemple de sac dos par Branch & Bound.
1.3.2 La mthode de coupes planes (Cutting-Plane)
La mthode de coupes planes a t dveloppe par (Schrijver 1986),
elle est destine rsoudre des problmes doptimisation combinatoire
(POC) qui se formulent sous la forme dun programme linaire (PL) :
min{c
T
x : Ax b, x R
n
} (1.1)
Dans le cas, o (POC) est de grande taille pour le reprsenter explicite-
ment en mmoire ou pour quil tient dans un solveur de programmation
linaire, on utilise une technique qui consiste enlever une partie de ces
contraintes et de rsoudre le problme relax (POCR). La solution op-
timale de (PL) est contenue dans lensemble de solutions ralisables de
cette relaxation. Pour un problme de minimisation la solution optimale
du problme (POCR) est infrieure ou gale la solution optimale donne
par (POC).
Cette mthode consiste rsoudre un problme relax, et ajouter it-
rativement des contraintes du problme initial. On dnit une contrainte
pour le problme de minimisation (1.1) par le couple (s, s
0
) o s R
n
et
s
0
R, cette contrainte est dite viole par la solution courante x si pour
tout y {x : Ax b} on a s
T
x < s
0
et s
T
y s
0
, on appelle alors ces
contraintes des coupes planes. On arrte lalgorithme lorsquil ny a plus
de contraintes violes par la solution courante, on obtient ainsi une solu-
tion optimale pour le problme initial.
La mthode des coupes planes est peu performante mais sa perfor-
mance est amliore lorsquelle est combine avec la mthode "Branch
and Bound".
1.3. Les mthodes de rsolution exactes 7
1.3.3 La mthode (Branch and Cut)
La mthode des coupes planes nest pas toujours efcace face aux pro-
blmes difciles. De mme, bien que lalgorithme du "Branch and Bound"
puisse tre trs performant pour une certaine classe de problmes, pour
cela on utilise la mthode "Branch and Cut" qui combine entre lalgorithme
du "Branch and Bound" et de la mthode des coupes planes. Pour une r-
solution dun programme linaire en nombres entiers, la mthode "Branch
and Cut" commence dabord par relaxer le problme puis appliquer la m-
thode des coupes planes sur la solution trouve. Si on nobtient pas une
solution entire alors le problme sera divis en plusieurs sous-problmes
qui seront rsolus de la mme manire.
On veut rsoudre le problme doptimisation (minc
t
x : Ax b; x R
n
)
avec A R
mxn
et b R
m
.
Algorithm 1 Branch and Cut
Liste des problmes = ;
Initialiser le programme linaire par le sous problme de contraintes
(A
1
, b
1
) avec A
1
R
m
1
xn
et b
1
R
m
1
) avec m
1
<< m;
Etapes dvaluation dun sous problme
Calculer la solution optimale x du programme linaire c
t
x = min(c
t
x :
A
1
x b
1
, x R
n
) ;
Solution courante= Appliquer la mthode des coupes polydrales() ;
Fin tapes dvaluation
Si Solution courante est ralisable alors
x

= x est la solution optimale de min(c


t
x : Ax b, x R
n
) ;
Sinon
Ajouter le problme dans Liste des sous problmes ;
Fin Si
Tant que Liste des sous problmes = faire
Slectionner un sous problme ;
Brancher le problme ;Appliquer les tapes dvaluation;
Fin Tant que
1.3.4 La mthode de la gnration de colonnes
Le principe de la gnration de colonnes repose sur le fait que toutes
les variables dun programme linaire ne seront pas forcment utilises
pour atteindre la solution optimale. Lobjectif de cette mthode est de r-
soudre un problme rduit avec un ensemble limit de variables. Le pro-
blme initial est appel problme matre, et le problme rduit est appel
problme restreint. Le problme restreint est plus simple rsoudre, mais
si lensemble de ses variables ne contient pas celles qui donne la solution
optimale pour le problme matre, pour atteindre la solution optimale du
problme matre, il faut rajouter au problme restreint des variables pou-
vant tre utilises pour amliorer la solution.
Le problme consistant chercher la meilleure variable rajouter dans
le problme restreint est appel sous-problme associ au problme matre
(ou oracle). Il a comme objectif de trouver la variable (ou colonne) de cot
rduit minimum (c--d. la plus prometteuse pour amliorer la solution).
8 Chapitre 1.
Le cot rduit des variables est calcul laide des variables duales ob-
tenues aprs la rsolution du problme restreint. Le point du dual ainsi
utilis dans le sous problme est appel point de sparation. Souvent, il
sagit dune solution optimale du dual du problme restreint.
On considre le programme linaire continu (LP) suivant :
(LP)

Min
iT
c
i
x
i

iT
a
ij
x
i
, b
j
j = 1, ..., n
x
i
0, i T
Nous supposons que le nombre de variables de T est trop grand pour
que le problme (LP) puisse tre rsolu en temps raisonnable, et que nous
voulions le rsoudre par gnration de colonnes. Nous cherchons donc
rsoudre le problme restreint associ au problme matre avec un en-
semble restreint de variables not R
l
. Il faut que le problme restreint soit
ralisable. Il est possible dutiliser des colonnes simples par exemple des
colonnes alatoires, ou encore celles issues dune solution faisable obtenue
partir dune heuristique.
Le problme restreint (RLP) est donn sous la forme suivante :
(RLP)

Min
iR
l
c
i
x
i

iR
l
a
ij
x
j
, b
j
j = 1, ..., n
x
i
0, i R
l
Le problme (RLP) est maintenant de taille rduite et sera plus facile
rsoudre par un solveur. Cette rsolution nous fournira les valeurs opti-
males des variables duales v
j
associes aux contraintes. Ces valeurs sont
passes au sous problme qui nous permet dobtenir la ou les colonnes
rajouter dans lensemble R
l
.
Le calcul du cot rduit nous permet de savoir si une colonne a fait dimi-
nuer la valeur de lobjectif (et donc de lamliorer). Prenons par exemple
la colonne xi du problme matre (LP), son cot rduit vaut :
c
i
= c
i

j=1
a
ij
v
j
Puisque (LP) est un problme de minimisation, le sous problme cherche
aussi minimiser ce cot rduit. Si le cot rduit minimum est positif,
alors aucune colonne ne peut tre ajoute au problme restreint (RLP)
pour amliorer lobjectif. La solution optimale du problme restreint est
donc une solution optimale du problme matre (LP). Sinon, on rajoute
une ou des colonnes parmi celles ayant un cot rduit ngatif en faisant
une mise jour de lensemble R
l
et on rsout aprs le nouveau problme
restreint (RLP).
Remarque
La mthode de la gnration de colonnes peut tre combine avec
un processus de Branch&Bound pour rsoudre un programme linaire en
nombres entiers, cette mthode est appele Branch&Price.
1.4. Heuristiques 9
1.4 Heuristiques
En optimisation combinatoire, une heuristique est un algorithme ap-
proch qui permet didentier en temps polynomial au moins une solution
ralisable rapide, pas obligatoirement optimale. Lusage dune heuristique
est efcace pour calculer une solution approche dun problme et ainsi
acclrer le processus de rsolution exacte. Gnralement une heuristique
est conue pour un problme particulier, en sappuyant sur sa structure
propre sans offrir aucune garantit quant la qualit de la solution calcu-
le. Les heuristiques peuvent tre classes en deux catgories :
Mthodes constructives qui gnrent des solutions partir dune so-
lution initiale en essayant den ajouter petit petit des lments jusqu
ce quune solution complte soit obtenue,
Mthodes de fouilles locales qui dmarrent avec une solution ini-
tialement complte (probablement moins intressante), et de manire
rptitive essaie damliorer cette solution en explorant son voisinage.
1.5 Mthodes de trajectoire
Les mthodes de recherche locale passent dune solution une autre
dans lespace des solutions candidates (lespace de recherche) quon note
S, jusqu ce quune solution considre comme optimale soit trouve ou
que le temps imparti soit dpass. La mthode de recherche locale la plus
lmentaire est la mthode de descente.
1.5.1 La mthode de descente
Pour un problme de minimisation dune fonction f , la mthode des-
cente peut tre dcrite comme suit :
Algorithm 2 La mthode de descente
1. Solution initiale s ;
2. Repeter :
3. Choisir s

dans un voisinage N(s) de s ;


4. Si f (s

) < f (s) alors s := s

;
5. jusqu ce que f (s

) f (s), s

N(s).
La gure ?? prsente lvolution dune solution dans la mthode de
descente.
Linconvnient majeur de la mthode de descente est son arrt au
premier minimum local rencontr. Pour amliorer les rsultats, on peut
lancer plusieurs fois lalgorithme en partant dun jeu de solutions initiales
diffrentes, mais la performance de cette technique dcrot rapidement.
Pour viter dtre bloqu au premier minimum local rencontr, on peut
dcider daccepter, sous certaines conditions, de se dplacer dune solution
s vers une solution s

N(s) telle que f (s

) > f (s).
10 Chapitre 1.
Figure 1.3 Evolution dune solution dans la mthode de descente
1.6 Mtaheuristiques
Face aux difcults rencontres par les heuristiques pour avoir une
solution ralisable de bonne qualit pour des problmes doptimisation
difciles, les mtaheuristiques ont fait leur apparition. Ces algorithmes
sont plus complets et complexes quune simple heuristique, et permettent
gnralement dobtenir une solution de trs bonne qualit pour des pro-
blmes issus des domaines de la recherche oprationnelle ou de lingnie-
rie dont on ne connait pas de mthodes efcaces pour les traiter ou bien
quand la rsolution du problme ncessite un temps lev ou une grande
mmoire de stockage.
Le rapport entre le temps dexcution et la qualit de la solution trouve
dune mtaheuristique reste alors dans la majorit des cas trs intressant
par rapport aux diffrents types dapproches de rsolution.
La plupart des mtaheuristiques utilisent des processus alatoires et it-
ratifs comme moyens de rassembler de linformation, dexplorer lespace
de recherche et de faire face des problmes comme lexplosion combi-
natoire. Une mtaheuristique peut tre adapte pour diffrents types de
problmes, tandis quune heuristique est utilise un problme donn.
Plusieurs dentre elles sont souvent inspires par des systmes naturels
dans de nombreux domaines tels que : la biologie (algorithmes volu-
tionnaires et gntiques) la physique (recuit simul), et aussi lthologie
(algorithmes de colonies de fourmis).
Un des enjeux de la conception des mtaheuristiques est donc de faciliter
le choix dune mthode et le rglage des paramtres pour les adapter un
problme donn.
Les mtaheuristiques peuvent tre classes de nombreuses faons. On
peut distinguer celles qui travaillent avec une population de solutions de
celles qui ne manipulent quune seule solution la fois. Les mthodes qui
tentent itrativement damliorer une solution sont appeles mthodes de
recherche locale ou mthodes de trajectoire. Ces mthodes construisent
une trajectoire dans lespace des solutions en tentant de se diriger vers
des solutions optimales. Les exemples les plus connus de ces mthodes
sont : La recherche Tabou et le Recuit Simul. Les algorithmes gntiques,
loptimisation par essaim de particules et Les algorithmes de colonies de
fourmis prsentent les exemples les plus connus des mthodes qui tra-
vaillent avec une population.
1.6. Mtaheuristiques 11
1.6.1 Le recuit simul (simulated annealing)
Le recuit simul (SA) a t introduit par (Kirkpatrik et al. 1983) et
(Cern 1985) comme une mthode de recherche locale normale, utilisant
une stratgie pour viter les minima locaux. Cette mtaheuristique est ba-
se sur une technique utilise depuis longtemps par les mtallurgistes qui,
pour obtenir un alliage sans dfaut, faisant alterner les cycles de rchauf-
fage (ou de recuit) et de refroidissement lent des mtaux. Le recuit simul
sappuie sur des travaux faites par (Metropolis et al. 1953), qui ont pu d-
crire lvolution dun systme en thermodynamique.
Le principe du recuit simul est de parcourir de manire itrative lespace
des solutions. On part avec une solution note s
0
initialement gnre de
manire alatoire dont correspond une nergie initiale E
0
, et une tempra-
ture initiale T
0
gnralement leve. A chaque itration de lalgorithme, un
changement lmentaire est effectu sur la solution, cette modication fait
varier lnergie du systme E. Si cette variation est ngative (la nouvelle
solution amliore la fonction objective, et permet de diminuer lnergie du
systme), elle est accepte. Si la solution trouve est moins bonne que la
prcdente alors elle sera accepte avec une probabilit P calcule suivant
la distribution de Boltzmann suivante :
P(E, T) = exp

E
T
(1.2)
En fonction du critre de Metropolis, un nombre [0, 1] est compar
la probabilit p = exp

E
T
. Si p la nouvelle solution est accepte.
Le fonctionnement du critre de Metropolis est interprt par
Si E = f (s

) f (s) < 0 alors e

E
T
> 1, donc est toujours infrieur
cette valeur, et on accepte la solution s

Si > 0
et T est trs grande, alors e

E
T

= 1, tout voisin est systmatiquement
accept.
et T est trs petite, alors e

E
T

= 0, une dgradation a peu de chances
dtre accepte.
12 Chapitre 1.
Figure 1.4 Fonctionnement de lalgorithme de recuit simul.
1.6. Mtaheuristiques 13
Algorithm 3 Recuit simul
1. Engendrer une conguration initiale S
0
de S : S S
0
2. Initialiser la temprature T en fonction du schma de refroidisse-
ment
3. Rpter
4. Engendrer un voisin alatoire S

de S
5. Calculer E = f (S

) f (S)
6. Si E 0 alors S S

7. Sinon accepter S

comme la nouvelle solution avec la probabilit


P(E, T) = exp

E
T
8. Fin si
9. Mettre T jour en fonction du schma de refroidissement (rduire
la temprature)
10. Jusqu la condition darrt
11. Retourner la meilleure conguration trouve
Le choix de la temprature est primordial pour garantir lquilibre
entre lintensication et la diversication des solutions dans lespace de
recherche. Premirement, le choix de la temprature initiale dpend de la
qualit de la solution de dpart. Si cette solution est choisie alatoirement,
il faut prendre une temprature relativement leve.
On utilise souvent la rgle suivante :
T
k+1
T
k
.
o [0, 1], un paramtre qui exprime la diminution de la temprature
de litration k k +1.
La dcroissance de la temprature peut galement tre ralise par paliers
(en dautres termes, elle ne change quaprs un certain nombre ditra-
tions). Certains prconisent lutilisation de stratgies non monotones. On
peut ainsi rehausser la temprature lorsque la recherche semble bloque
dans une rgion de lespace de recherche. On peut alors considrer une
grande augmentation de la temprature comme un processus de diver-
sication alors que la dcroissance de la temprature correspond un
processus dintensication.
Avantages
La mthode du recuit simul a lavantage dtre souple vis--vis des
volutions du problme et facile implmenter,
Contrairement aux mthodes de descente, SA vite le pige des op-
tima locaux,
Excellents rsultats pour un nombre de problmes complexes.
Inconvnients
Nombreux tests ncessaires pour trouver les bons paramtres,
14 Chapitre 1.
Dnir les voisinages permettant un calcul efcace de E.
1.6.2 La recherche Tabou (Tabu Search)
La recherche tabou (TS) est une mthode de recherche locale combi-
ne avec un ensemble de techniques permettant dviter dtre pig dans
un minimum local ou la rptition dun cycle. La recherche tabou est in-
troduite principalement par Glover (Glover 1986), Hansen (Hansen 1986),
Glover et Laguna dans (Glover et Laguna 1997). Cette mthode a mon-
tr une grande efcacit pour la rsolution des problmes doptimisation
difciles. En effet, partir dune solution initiale s dans un ensemble de
solutions local S, des sous-ensembles de solution N(s) appartenant au voi-
sinage S sont gnrs. Par lintermdiaire de la fonction dvaluation nous
retenons la solution qui amliore la valeur de f , choisie parmi lensemble
de solutions voisines N(s).
Lalgorithme accepte parfois des solutions qui namliorent pas toujours la
solution courante. Nous mettons en oeuvre une liste tabou (tabu list) T de
longueur k contenant les k dernires solutions visites, ce qui ne donne pas
la possibilit a une solution dj trouve dtre accepte et stocke dans
la liste tabou. Alors le choix de la prochaine solution est effectu sur un
ensemble des solutions voisines en dehors des lments de cette liste ta-
bou. Quand le nombre k est atteint, chaque nouvelle solution slectionne
remplace la plus ancienne dans la liste. La construction de la liste tabou
est base sur le principe FIFO, cest--dire le premier entr est le premier
sorti. Comme critre darrt on peut par exemple xer un nombre maxi-
Algorithm 4 La recherche tabou
1: Initialisation :
s
0
une solution initiale
s s
0
, s

s
0
, c

f (s
0
)
T =
2: Gnrer un sous-ensemble de solution au voisinage de s
s

N(s) tel que x N(s), f (x) f (s

) et s

/ T
Si f (s

) < c

alors s

et c

f (s

)
Mise--jour de T
3: Si la condition darrt nest pas satisfaite retour ltape 2
mum ditrations sans amlioration de s*, ou bien xer un temps limite
aprs lequel la recherche doit sarrter.
Avantages et inconvnients
La recherche tabou est une mthode de recherche locale, et la struc-
ture de son algorithme de base est proche de celle du recuit simul, avec
lavantage davoir un paramtrage simpli : le paramtrage consistera
dabord trouver une valeur indicative t ditrations pendant lesquelles
les mouvements sont interdits. Il faudra galement choisir une stratgie
de mmorisation. En revanche, la mthode tabou exige une gestion de
la mmoire de plus en plus lourde en mettant des stratgies de mmo-
risation complexe. Lefcacit de la mthode tabou offre son utilisation
1.6. Mtaheuristiques 15
dans plusieurs problmes doptimisation combinatoire classiques tels que
le problme de voyageur de commerce, le problme dordonnancement, le
problme de tournees de vhicules, etc.
1.6.3 Les algorithmes gntiques
Les algorithmes gntiques (AG) sont des algorithmes doptimisation
stochastique fonds sur les mcanismes de la slection naturelle et de la
gntique. Ils ont t adapts loptimisation par John Holland (Holland
1975), galement les travaux de David Goldberg ont largement contribu
les enrichir (Goldberg 1989a), (Goldberg 1989b).
Le vocabulaire utilis est le mme que celui de la thorie de lvolution et
de la gntique, on emploie le terme individu (solution potentielle), po-
pulation (ensemble de solutions), gnotype (une reprsentation de la so-
lution), gne (une partie du gnotype), parent, enfant, reproduction, croi-
sement, mutation, gnration, etc.
Leur fonctionnement est extrmement simple, on part dune population
de solutions potentielles (chromosomes) initiales, arbitrairement choisies.
On value leur performance (Fitness) relative. Sur la base de ces perfor-
mances on cre une nouvelle population de solutions potentielles en uti-
lisant des oprateurs volutionnaires simples : la slection, le croisement
et la mutation. Quelques individus se reproduisent, dautres disparaissent
et seuls les individus les mieux adapts sont supposs survivre. On re-
commence ce cycle jusqu ce quon trouve une solution satisfaisante. En
effet, lhritage gntique travers les gnrations permet la population
dtre adapte et donc rpondre au critre doptimisation, la gure 1.5
illustre les principales tapes dun algorithme gntique. Un algorithme
gntique recherche le ou les extrema dune fonction dnie sur un es-
pace de donnes. Son mise en oeuvre ncessite :
- Le codage des donnes
La premire tape est de dnir et coder convenablement le pro-
blme. Cette tape associe chaque point de lespace de recherche
une structure de donnes spcique, appele gnotype ou ensemble
de chromosomes, qui caractrisera chaque individu de la population.
Le codage de chaque individu en squence est essentielle dans lla-
boration dun algorithme gntique dont dpend notamment lim-
plmentation des oprateurs de transformations. Ainsi, cette phase
dtermine la structure de donnes qui sera utilise pour coder le
gnotype des individus de la population. Le codage doit donc tre
adapt au problme trait.
Plusieurs types de codages sont utiliss dans la littrature, les pre-
miers rsultats thoriques sur les algorithmes gntiques ont opt
pour un codage par une squence binaire de longueur xe travers
la notion de schma (Goldberg 1989a). Lefcacit de lalgorithme
gntique dpend donc du choix convenable du type de codage.
- Gnration de la population initiale
La gnration de la population initiale, cest--dire le choix des dis-
16 Chapitre 1.
Figure 1.5 Fonctionnement dun algorithme gntique.
positifs de dpart que nous allons faire voluer, ce choix de la popu-
lation initiale dindividus conditionne fortement la rapidit de lal-
gorithme. Nanmoins, une initialisation alatoire est plus simple
raliser : les valeurs des gnes sont tires au hasard selon une distri-
bution uniforme. Toutefois, il peut tre utile de guider la gnration
initiale vers des sous domaines intressants de lespace de recherche.
Par exemple lors dune recherche doptima dans un problme dopti-
misation sous contraintes, il est prfrable de produire des lments
satisfaisant les contraintes. La population initiale doit tre sufsam-
ment diversie et de taille assez importante pour que la recherche
puisse parcourir lespace dtat dans un temps limit.
- Fonction dadaptation (Fitness)
Lvaluation de la Fitness est gnralement ltape dans laquelle on
mesure la performance de chaque individu. Pour pouvoir juger la
qualit dun individu et ainsi le comparer aux autres, il faut ta-
blir une mesure commune dvaluation. Aucune rgle nexiste pour
dnir cette fonction, son calcul peut ainsi tre quelconque, que ce
soit une simple quation ou une fonction afne. La manire la plus
simple est de poser la fonction dadaptation comme la formalisation
du critre doptimisation.
- Slection
La slection permet didentier statistiquement les meilleurs indivi-
dus dune population et dliminer les mauvais, pendant le passage
dune gnration une autre, ce processus est bas sur la perfor-
mance de lindividu. Loprateur de slection doit tre conu pour
donner galement une chance aux mauvais lments, car ces l-
ments peuvent, par croisement ou mutation, engendrer une descen-
1.6. Mtaheuristiques 17
dance pertinente par rapport au critre doptimisation. Il existe dif-
frentes techniques de slection, on propose quelques unes.
Slection uniforme : On ne sinteresse pas la valeur dadaptation
tness et la slection seffectue dune manire alatoire et uniforme
telle que chaque individu i a la mme probabilit Prob(i) = 1/T
pop
comme tous les autres individus (T
pop
est la taille de la population).
Slection par tournoi : Deux individus sont choisis au hasard, on
compare leurs fonctions dadaptation et le mieux adapt est slec-
tionn.
litisme : Cette mthode de slection permet de favoriser les
meilleurs individus de la population. Ce sont donc les individus les
plus prometteurs qui vont participer lamlioration de notre po-
pulation. On peut constater que cette mthode induisait une conver-
gence prmature de lalgorithme.
Slection par roulette : La slection des individus par la mthode
de la roulette sinspire de la roue de loterie sur laquelle chaque in-
dividu est reprsent par un secteur proportionnel sa tness. On
fait tourner la roue et on slectionne un individu. Les individus les
mieux valus ont statistiquement plus de chance dtre slection-
ns, mais donne aussi une possibilit aux individus mal adapts
dtre choisis. chaque individu i une probabilit est associe, dtre
choisi proportionnelle son adaptation f
i
:
Prob(i) = f
i
/ f
j
, o f
j
dsigne la somme des adaptations de la
population.
Reste stochastique sans remplacement : Cette slection associe la
slection par roulette et la slection dterministe. Un nombre mini-
mal de reprsentants de chaque individu parmi les futurs parents
est dtermin par avance en fonction de son adaptation, puis la po-
pulation sera complte par un tirages alatoires. Pour un individu
i, le nombre de reprsentation dans la future gnration est donn
par E( f
i
), o E dsigne la partie entire et f
i
dsigne ladaptation de
i rapporte la moyenne des adaptations de tous les individus. La
gnration suivante est alors complte par la mthode de slection
par roulette telle que lvaluation dun individu est donne par le
reste stochastique r
i
= f
i
E( f
i
).
- Croisement
Loprateur de croisement favorise lexploration de lespace de re-
cherche et enrichit la diversit de la population en manipulant la
structure des chromosomes, le croisement fait avec deux parents et
gnre deux enfants, en esprant quun des deux enfants au moins
hritera de bons gnes des deux parents et sera mieux adapt queux.
Il existe plusieurs mthodes de croisement par exemple le croise-
ment en un point, ou en multiples points voir les gures 1.6 et 1.7.
18 Chapitre 1.
Figure 1.6 Croisement en un point.
Figure 1.7 Croisement en deux points.
Croisement uniforme : Il constitue la gnralisation du principe
dchange introduit par le croisement en un point. Il procde en effet
lchange de chaque lment selon une probabilit xe. Le jeu de
paramtres se rduit donc la donne de cette probabilit.
Croisement MPX : Le croisement MPX (Maximal Preservative X), a t
propos par (Mlhenbein 1993) pour rsoudre le problme du voyageur de
commerce. Lide de cet oprateur est dinsrer une partie du chromosome
dun parent dans le chromosome de lautre parent de telle faon que le
chromosome rsultant soit le plus proche possible de ses parents tout en
vitant les doublons.
Exemple
Nous considrons par exemple les deux parents :
P
1
= (34|165|27) et P
2
= (12|356|47)
Aprs le croisement les deux parents vont produire deux enfants en chan-
geant tout dabord les deux parties linterieure de chaque parent comme
suit :
E
1
= (xx|356|xx) et E
2
= (xx|165|xx)
Lchange dnit ainsi une srie de permutations : 1 3, 6 5, 5 6.
Certaines valeurs de gnes sont donc inchanges ( car elles sont diffrentes
aux valeurs du bolc intrieur) :
E
1
= (x4|356|27) et E
2
= (x2|165|47)
Finalement, le premier x de lenfant E
1
est remplac par 1 en raison de
la permutation 1 3. De la mme manire, on ralise les permutations
pour les autres x. Les individus enfants naux sont donc de la forme :
E
1
= (14|356|27) et E
2
= (32|165|47)
- Mutation
Loprateur de mutation est un processus o un changement mineur
du code gntique appliqu un individu pour introduire de la di-
versit et ainsi dviter de tomber dans des optimums locaux. Cet
oprateur est appliqu avec une probabilit P
m
gnralement inf-
rieure celle du croisement P
c
, voir la gure 1.8.
1.6. Mtaheuristiques 19
Figure 1.8 Reprsentation schmatique dune mutation dans le cas dun codage binaire.
Lefcacit des algorithmes gntiques dpend fortement du rglage
des diffrents paramtres caractrisant ces algorithmes, et qui sont parfois
difciles dterminer. Des paramtres comme la taille de la population,
le nombre maximal des gnrations, la probabilit de mutation p
m
, et la
probabilit de croisement p
c
.
Les deux premiers paramtres dpendent directement de la nature du pro-
blme et de sa complexit, et leurs choix doit reprsenter un compromis
entre la qualit des solutions et le temps dexcution.
La probabilit de croisement p
c
est lie la forme de la fonction dvalua-
tion. Son choix est en gnral heuristique. Plus sa valeur est leve, plus
la population subit des changements importants.
La probabilit de mutation p
m
est gnralement faible puisquun taux
lev risque de conduire vers un optimum local. En revanche, une pro-
babilit faible permet dassurer une bonne exploration de lespace de re-
cherche sans perturber la convergence.
Le succs des algorithmes gntiques dpend aussi de la manire du co-
dage des individus. Dans les problmes combinatoires, ce codage est sou-
vent suggr par la nature mme du problme, ce qui peut induire de
meilleurs rsultats.
Exemple de la mise en oeuvre des algorithmes gntiques
Cet exemple est d Goldberg (1989). Il consiste trouver le maxi-
mum de la fonction f(x)=x sur lintervalle [0,31], o x est un entier naturel.
On a 32 valeurs possibles pour x, on choisit donc un codage discret sur
5 bits : on obtient par exemple la squence 0,1,1,0,1 pour 13, la squence
1,1,0,0,1 pour 25, etc.
Initialisation de la population se fait dune manire alatoire et en
xant sa taille 4 individus. On dnit simplement la tness comme tant
la valeur de x, vu quon en cherche la valeur maximum sur lintervalle
[0,31].
Soit la population initiale suivante :
Nous utilisons aprs une slection par roulette :
Nous faisons tourner la roue 4 fois de suite, nous obtenons une nouvelle
population :
20 Chapitre 1.
Individu Squence Adaptation % du total
1 01011 11 18.6
2 10011 19 32.2
3 00101 5 8.5
4 11000 24 40.7
Total 59 100
Figure 1.9 Application de la roulette sur la population.
Individu Squence
1 11000
2 00101
3 11000
4 01011
Nous appliquons loprateur de croisement en un seul point. Les point
de crossover sont choisis alatoirement :
Couple 1 : lindividu 2 avec lindividu 3
Couple 2 : lindividu 1 avec lindividu 4
Nous obtenons alors les anfants suivants :
Nous appliquons ensuite loprateur de mutation qui choisit de manire
Parents Enfants
001|01 00100
110|00 11001
110|00 01000
010|11 11011
alatoire lindividu et le gne o on doit faire une mutation :
1.6. Mtaheuristiques 21
Parents Enfants
00100 00100
11001 11101
01000 01100
11011 11011
Nous remplaons entirement lancienne population P par une nou-
velle P

de mme taille : En une seule gnration le maximum est pass


P

Squence Adaptation
1 00100 4
2 11101 29
3 01100 12
4 11011 27
Total 72
de 24 29, et la tness globale de la population a relativement augmente
pour passer de 59 72. Nous continuons engendrer des gnrations
successives jusqu obtenir le maximum global qui vaut 31.
1.6.4 Les algorithmes de colonies de fourmis
Les algorithmes de colonies de fourmis ont t proposs par Co-
lorni, Dorigo et Maniezzo en 1992 (Colorni et al. 1992b) et appliques
la premire fois au problme du voyageur de commerce. Ce sont des
algorithmes itratifs population o tous les individus partagent un
savoir commun qui leur permet dorienter leurs futurs choix et dindiquer
aux autres individus des choix suivre ou viter. Le principe de cette
mtaheuristique repose sur le comportement particulier des fourmis, elles
utilisent pour communiquer une substance chimique volatile particulire
appele phromone grce une glande situe dans leur abdomen. En
quittant leur nid pour explorer leur environnement la recherche de
la nourriture, les fourmis arrivent laborer des chemins qui savrent
frquemment tre les plus courts pour aller du nid vers une source de
nourriture. Chaque fourmi dpose alors une quantit de phromones
sur ces pistes qui deviendront un moyen de communication avec leurs
congnres, les fourmis choisissent ainsi avec une probabilit leve les
chemins contenant les plus fortes concentrations de phromones laide
des rcepteurs situs dans leurs antennes.
La gure 1.10 illustre et conrme ce constat, une exprience a t faite
par gauss et deneubourg en 1989 appele exprience du pont double
branche, les fourmis qui retournent au nid rapidement, aprs avoir vi-
sit la source de nourriture, sont celles qui ont choisi la branche courte
22 Chapitre 1.
et les fourmis empruntant cette branche faisant plus daller retour, et
par consquent la quantit de phromones dpose sur la plus courte
branche est relativement suprieure que celle prsente sur la plus longue
branche. Puisque les fourmis sont attires plus vers les pistes de plus
grande concentration en phromones, alors la branche courte sera la plus
emprunte par la majorit des fourmis. Cette mtaheuristique a permis
Figure 1.10 Lexprience du pont double branche.
de rsoudre diffrents problmes doptimisation combinatoire forte
complexit, comme le problme du voyageur de commerce (Dorigo et al.
1996), le problme de coloration de graphe (Costa et Hertz 1997), le pro-
blme daffectation quadratique (Gambardella et al. 1999) ou le problme
de routage de vhicules (Mazzeo et Loiseau 2004), etc.
Principe de lalgorithme
Dans ce paragraphe on dcrit limplmentation dun algorithme de
colonie de fourmis original dit Ant System (AS) (Colorni et al. 1992a),
orient pour rsoudre le problme de voyageur de commerce (TSP), ce
problme consiste trouver le plus court cycle hamiltonien dans un
graphe, o chaque sommet du graphe reprsente une ville. La distance
entre les villes i et j est reprsente par d
ij
, et le couple (i, j) reprsente
larte entre ces deux villes. Nous initialisons dabord la quantit de ph-
romone sur les artes
init
> 0, chaque fourmi parcourt le graphe est
construit un trajet complet (une solution). A chaque tape de la construc-
tion des solutions, la fourmi doit dcider quel sommet elle va se dplacer,
cette dcision est prise dune manire probabiliste fonde sur les valeurs
de phromone et dune information statistique qui permet notamment de
trouver une bonne solution.
La probabilit pour quune fourmi k se dplace du sommet i au sommet
j, qui appartient un ensemble de sommets qui ne sont pas encore visits
1.6. Mtaheuristiques 23
par la fourmi k not S
k
i
, est :
p
k
ij
(t) =
(
ij
(t))

.(
ij
)

lS
k
i
(
i
(l))

.(
il
)

(1.3)
et sont deux paramtres qui inuencent sur limportance de linten-
sit de phromone
ij
, et linformation statistique dite visibilit
ij
. Cette
valeur guide le choix des fourmis vers des villes proches, et viter le plus
possible celles trop lointaines (
ij
=
1
d
ij
). Pour = 0, on prend en compte
juste la visibilit cest--dire que le choix sera tomb chaque fois sur la
ville la plus proche. Si = 0, seules les pistes de phromones jouent sur le
choix. Pour viter une slection trop rapide dun chemin, un compromis
convenable entre ces deux paramtres est obligatoire.
Mise jour de phromones
Lorsque toutes les fourmis ont construit une solution, une quantit de
phromones
k
ij
est dpose par chaque fourmi k sur son trajet.
Pour toute itration t, si le chemin (i, j) est dans la tourne de la fourmi k
la quantit de phromones dpose sur ce trajet est :

k
ij
(t) =
Q
L
k
(t)
O L
k
(t) est la longueur totale de la tourne de la fourmi k, et Q est une
constant.
Donc lajout de la quantit de phromones dpend certainement de la
qualit de la solution obtenue cest--dire plus la tourne parcourue est
petite plus lajout de la quantit de phromones est important.
Dans le but de ne pas ngliger toutes les mauvaises solutions obtenues, et
ainsi viter la convergence vers des optima locaux de mauvaise qualit, le
concept dvaporation des pistes de phromones est simul travers un
paramtre appel le taux dvaporation (0 < < 1) comme suit :

ij
(t +1) (1 ).
ij
(t) +
ij
(t) (1.4)
O
ij
(t) =
m
k=1

k
ij
(t), t reprsente une itration donne et m le
nombre de fourmis.
Diffrentes variantes
- Ant System et litisme
Cette variante a t introduite en 1996 par Dorigo et al. dans (Dorigo
et al. 1996) dont seules les fourmis qui ont effectu le plus court
chemin dposent une grande quantit de phromones, ce qui permet
daugmenter la quantit de phromones sur les meilleures solutions
et favoriser ainsi lexploration des solutions prometteuses par toutes
les autres fourmis.
24 Chapitre 1.
- Ant-Q System
Pour cette variante propose par (Dorigo et Gambardella 1997), (Do-
rigo et al. 1999), la rgle de mise jour locale est inspire du "Q-
learning". Aucune amlioration na t dmontr pour cette variante
par rapport lalgorithme AS.
- Max-Min Ant System (MMAS)
Cette variante base sur lalgorithme (AS), a t propose par Sttzle
et Hoos (Sttzle et Hoos 1997), (Sttzle et Hoos Holger 2000), et
prsente quelques diffrences :
1. Dterminer des valeurs des pistes bornes par
min
et
max
,
2. Initialiser les valeurs de phromones sur les pistes par la valeur
maximale
max
,
3. Seule la meilleure fourmi met jour une piste de phromone,
4. La mise jour dune piste de phromones est faite dune ma-
nire inversement proportionnelle cest--dire que les pistes les
plus fortes sont moins renforces que les plus faibles,
5. Possibilit de rinitialiser les pistes des phromones.
Ant Colony System ACS
LAnt Colony System ACS (Systme de Colonies de Fourmis) est une
gnralisation de la mthode AS, a t propose par Dorigo en 1997, et
fonde sur plusieurs modications de AS au niveau du rgle de tran-
sition et la gestion de pistes de phromones. Le but est damliorer les
performances de lAS pour rsoudre les problmes de grandes tailles. Les
principaux changements sont les suivants :
Pour assurer lquilibre entre la diversication et lintensication, la
mthode ACS introduit un paramtre q
0
dans la rgle de transition pour
quelle aura la forme suivante : Le choix dune ville j aprs une ville i
dans le chemin par chaque fourmi k est donn par la rgle :
() j =

argmax
zS
k
i
[(
iz
)

(
iz
)

] si q q
0
u si q > q
0
o q est une variable alatoire uniformment distribue sur [0,1], et u
est une ville dans S
k
i
(lensemble de villes qui ne sont pas encore visits
par la fourmi k), choisie si q > q
0
par lalgorithme AS. Ainsi le systme
tend effectuer une diversication. Dans lautre cas, cest--dire si q
q
0
, le systme tend effectuer une intensication, en exploitant plus
linformation recolte par le systme.
Cette modication est base essentiellement sur la mise jour lo-
cale de pistes de phromones. Ainsi chaque fourmi effectue une mise
jour locale chaque passage dune ville une autre, en dposant une
quantit de phromones donne par la formule suivante :

ij
(t +1) (1 )
ij
(t) +
init
o
init
est la valeur initiale de la piste. chaque passage, les artes
visites voient leur quantit de phromone diminuer, ce qui favorise la
1.6. Mtaheuristiques 25
diversication par la prise en compte des trajets non explors. chaque
itration, la mise jour globale seffectue comme suit :

ij
(t +1) (1 )
ij
(t) +
ij
(t)
o les artes (i,j) appartiennent au meilleur tour de longueur L et o

ij
(t) = 1/L . Ici, seule la meilleure piste est donc mise jour, ce qui
participe une intensication par slection de la meilleure solution.
La troisime modication apporte par la mthode ACS sur le sys-
tme est lutilisation dune liste des candidats. Dans cette liste, nous
stockons un certain nombre de villes les plus proches (en terme de dis-
tance) pour chaque ville. Donc chaque fourmi choisit la ville la plus
proche la ville dj visite sil y a encore des villes non encore visite
dans cette liste. Dans lautre cas la fourmi choisit une ville par la rgle
de tansition spciale lACS, donne par (*). Donc une fourmi ne choi-
sira pas une ville en dehors de liste de candidats que dans le cas quand
celle ci est dj explore (visite).
Lobjectif principal de ces modications sur la mthode AS est dassurer
la balance (lquilibre) entre lintensication et la diversication.
1.6.5 Loptimisation par essaim de particules
Principe gnral
LOptimisation par Essaim Particulaire (OEP, ou PSO en anglais) a t
propose par (Kennedy et Eberhart 1995). Cette mthode est inspire du
comportement social des animaux voluant en essaim.
Au dpart, ils cherchaient simuler la capacit des oiseaux voler de
faon synchrone et leur aptitude changer brusquement de direction tout
en restant en une formation optimale.
Les particules sont les individus et elles se dplacent dans lhyperes-
pace de recherche en se basant sur des informations limites :
1. Chaque particule est dote dune mmoire qui lui permet de mmo-
riser le meilleur point par lequel elle est dj passe et elle a tendance
retourner vers ce point.
2. Chaque particule est informe du meilleur point connu au sein de
son voisinage et elle va tendre aller vers ce point.
Chaque individu utilise donc, non seulement, sa propre mmoire, mais
aussi linformation locale sur ses plus proches voisins pour dcider de
son propre dplacement. Des rgles simples, telles que " aller la mme
vitesse que les autres ", " se dplacer dans la mme direction " ou encore
" rester proche de ses voisins " sont des exemples de comportements qui
sufsent maintenir la cohsion de lessaim.
Le dplacement dune particule est inuenc par les trois types de
comportement :
1. Une composante physique : la particule tend suivre sa suivre sa
propre voie ;
2. Une composante cognitive : la particule tend revenir vers le
meilleur site par lequel elle est dj passe ;
3. Une composante sociale : la particule tend se diriger vers le
meilleur site dj atteint par ses voisins.
26 Chapitre 1.
Algorithme de base
Un essaim de particules survole lespace de recherche, en qute de
loptimum global.
Dans R
n
, la particule i (solution potentielle) de lessaim est modlise
par son vecteur position x
i
= (x
i1
, x
i2
, ..., x
in
) et par son vecteur vitesse
v
i
= (v
i1
, v
i2
, ..., v
in
).
Cette particule garde en mmoire la meilleure position par laquelle elle
est dj passe, que lon note p
i
= (p
i1
, p
i2
, ..., p
in
). La meilleure position at-
teinte par toutes les particules de lessaim est note p
g
= (p
g1
, p
g2
, ..., p
gn
).
Au temps t +1, le vecteur vitesse est calcul partir de 1.5
v
ij
(t +1) = v
ij
(t) + c
1
r
1
(p
ij
(t) x
ij
(t)) + c
2
r
2
(p
gj
(t) x
ij
(t)) (1.5)
c
1
et c
2
sont deux constantes, appeles coefcients dacclration; r
1
et r
2
sont deux nombres alatoires tirs uniformment dans [0, 1].
v
ij
(t) correspond la composante physique du dplacement.
c
1
r
1
(p
i
(t) x
i
(t) correspond la composante cognitive du dpla-
cement. c
1
pondre les tendances de la particule vouloir suivre son
instinct de conservation et aller vers sa meilleure position connue.
c
2
r
2
(p
g
(t) x
i
(t)) correspond la composante sociale du dplace-
ment. c
2
contrle laptitude sociale de la particule en se rapprochant
plus de la meilleure position de ses informatrices.
La position de la particule i est alors dnie par
x
i
(t +1) = x
i
(t) + v
i
(t +1) (1.6)
Il est noter que le terme "vitesse" est ici abusif car les vecteurs v
i
ne
sont pas homognes une vitesse. Il serait plus appropri de parler de
"direction de dplacement".
La stratgie de dplacement dune particule est illustre dans la gure
1.11.
Figure 1.11 Analysis of Particle Trajectories
Le pseudo code pour la version la plus gnrale de lagorithme - la
version continue - est prsent par "Algorithme 5"
1.6. Mtaheuristiques 27
Algorithm 5 Optimisation par Essaim Particulaire (OEP)
1: Initialiser alatoirement P
s
particules : position et vitesse ;
2: Evaluer les positions des particules ;
3: Tant que le critre darrt nest pas atteint faire
4: Pour i = 1, ..., P
s
faire
5: Dplacer les particules selon (1.5) et (1.6) ;
6: Si f (x
i
) < f (p
i
)
7: p
i
= x
i
;
8: Si f (x
i
) < f (p
g
)
9: p
g
= x
i
;
10: Fin Si
11: Fin Si
12: Fin Pour
13: Fin Tant que
Le critre darrt peut tre diffrent suivant le problme pos et les
exigences de lutilisateur. Si loptimum global est connu a priori, on peut
dnir une "erreur acceptable" comme critre darrt. Sinon, on peut xer
nombre maximum ditrations ou un nombre maximum dvaluations de
la fonction objectif.
Modications de lalgorithme de base
Des amliorations peuvent tre apportes lalgorithme de base "Al-
gorithme 5", notamment du point de vue du contrle de la divergence.
Vitesse maximale
Pour viter lexplosion du systme, i.e. que les particules se dplacent trop
rapidement dune rgion une autre dans lespace de recherche, un mca-
nisme de connement dintervalle est souvent mis en place. La pratique la
plus courante est de dnir une vitesse maximale V
max
ne pas dpasser.
Ainsi, on pose
v
ij
[V
max
, V
max
] (1.7)
Coefcient dinertie
Pour contrler linuence de la direction de la particule sur le dplacement
futur, un coefcient dinertie a t introduit par (Shi et Eberhart 1998).
Le but de lintroduction de ce paramtre est de raliser un quilibre entre
la recherche locale (exploitation) et la recherche globale (exploration).
Le calcul de la vitesse est alors dni par :
v
ij
(t +1) = v
ij
(t) + c
1
r
1
(p
ij
(t) x
ij
(t)) + c
2
r
2
(p
gj
(t) x
ij
(t)) (1.8)
Une grande valeur de est synonyme dune grande amplitude de mou-
vement et donc dexploration globale de lespace de recherche. Les tudes
menes par Shi et Eberhart indiquent une meilleure convergence pour
entre 0.8 et 1.2. La dtermination de la meilleure valeur de ce paramtre
pour chaque algorithme se fait travers des exprimentations numriques.
28 Chapitre 1.
Dans (Shi et Eberhart 1998), les auteurs ont propos un coefcient
dinertie dynamique qui varie au cours du temps, la manire de la tem-
prature dans un algorithme de recuit simul. Il commence par une valeur
proche de 0.9 et descend linairement pour arriver 0.4.
Facteur de constriction
Dans la mme ide, une version met en place un facteur de constriction
qui permet damliorer la convergence de lalgorithme sans avoir besoin
de conner la vitesse des particules. Dans (Clerc et Kennedy 2002), il a t
dmontr quune bonne convergence peut tre assure en rendant dpen-
dants les paramtres , c
1
et c
2
. En utilisant le coefcient de constriction,
lquation 1.5 devient :
v
ij
(t +1) = (v
ij
(t) +
1
r
1
(p
ij
(t) x
ij
(t)) +
2
r
2
(p
gj
(t) x
ij
(t))) (1.9)
o
=
2
| 2 +

2
4|
, =
1
+
2
> 4. (1.10)
Les valeurs optimales de
1
et
2
ont t dtermines dans (Clerc et
Kennedy 2002), en effectuant de nombreux tests. En gnral, on utilise
= 4.1 et
1
=
2
, ce qui donne un coefcient = 0.7298844.
On remarque que lOEP avec coefcient de constriction est quivalente
lOEP avec coefcient dinertie :
, c
1

1
et c
2

2
Topologie de voisinage
La topologie du voisinage dni avec qui chacune des particules va
pouvoir communiquer. Si lon se rfre la version basique de lOEP r-
sume par lAlgorithme 5, la meilleure particule p
g
est choisie partir
de la population entire, cest une topologie entirement connecte. Cette
version de PSO est appele version "globale" (Gbest).
De mme, on trouve aussi une version dite "locale" de lOEP. Cette ver-
sion utilise un graphe dinformation circulaire. Les particules de lessaim
sont virtuellement disposes en cercle et numrotes squentiellement
partir de 1 en parcourant le cercle. La particule nest donc plus informe
par toutes les particules. Dans les versions locales, le terme Gbest est rem-
plac par les termes Lbest
i
, o, pour chaque particule i, on dnit un
voisinage (i.e. linformation qui doit tre partage est la meilleure solu-
tion trouve dans le voisinage de chaque particule (Lbest
i
)). Bien quelle
converge moins rapidement que la version "globale", la version "locale" de
lOEP donne de meilleurs rsultats, car elle est moins sujette lattraction
par des minima locaux (Kennedy 1999).
Remarque :
Contrairement la plupart des mtaheuristiques, lOEP a t conue ini-
tialement pour rsoudre des problmes doptimisation variables conti-
nues. Plusieurs auteurs ont rcemment adapt cette mtaheuristique pour
rsoudre des problmes variables discrtes. Les approches proposes
diffrent de lapproche continue par la manire dont une particule est
associe une solution discrte, de mme que par le modle de vitesse
1.6. Mtaheuristiques 29
utilis. (Anghinol et Paolucci 2009) proposent une classication des di-
verses approches de la littrature concernant lOEP pour loptimisation
discrte.
Figure 1.12 Graphe dinuence dun essaim de particules. ( gauche) Graphe compl-
tement connect, ( droite) Graphe dinformation circulaire.
30 Chapitre 1.
1.6.6 La recherche disperse
La recherche disperse (SS) est une mthode dvolution qui a t pro-
pose par (Glover et Laguna 1997). Elle a t propose dans le cadre de la
rsolution des problmes combinatoire.
Cette mtaheuristique se distingue des algorithmes volutionnistes
classiques par lutilisation dune procdure de recherche locale et par la
gnralisation de loprateur de croisement. Tout comme les algorithmes
gntiques, elle est base sur une population de solutions qui volue dans
le temps laide la fois dun oprateur de slection, de la combinaison
linaire de solutions de la population pour crer une nouvelle solution
provisoire (non forcment entire ou admissible), dun oprateur de pro-
jection permettant de rendre la solution provisoire admissible et dopra-
teurs dlimination.
Description gnrale de la recherche disperse
Le concept gnral de la recherche disperse qui a t donn par (Glo-
ver et al. 1998) se base sur les trois fondations suivantes :
1. Linformation utile sur la solution optimale est typiquement conte-
nue dans une collection diverse de solutions lites.
2. Les stratgies de combinaison des solutions contiennent des mca-
nismes qui incorporent la diversication et lintensication dans la
gnration des nouvelles solutions.
3. Lutilisation de plusieurs combinaisons de solutions de rfrence
augmente lopportunit dexploiter linformation contenue dans
lunion des solutions lites.
Le modle de lalgorithme de la recherche disperse repose sur la d-
nition des cinq composants majeurs (dits mthodes) suivants :
1. Mthode de gnration de diversication : Consiste gnrer une
collection de diverses solutions de dpart.
2. Mthode damlioration : Les points sont optimiss laide dune
recherche locale.
3. Mthode de mise jour de lensemble de rfrence R
i
: construit et
maintient un ensemble de rfrence obtenu en slectionnant les b
meilleures solutions trouves.
4. Mthode de gnration des sous ensembles : gnre des sous en-
sembles D
i
partir de lensemble de rfrence.
5. Mthode de combinaison de solutions : gnre des solutions en com-
binant les solutions de chaque sous ensemble D
i
pour produire len-
semble C
i
1.6. Mtaheuristiques 31
Algorithm 6 la recherche disperse
1: Initialisation :
2: Gnrer une population initiale R
0
.
3: Poser i 0
4: la recherche disperse :
5: Tant que le critre darrt nest pas atteint faire
6: C
i
Combinaisons linaires des points de R
i
.
7: A
i
procdure de rparation(C
i
) (admissibles).
8: D
i
recherche locale (A
i
) (amlioration).
9: R
i+1
points dans R
i
D
i
(Mise--jour de lensemble de rf-
rence)
10: i i +1
11: Fin Tant que
Conclusion du chapitre
Nous pouvons conclure que les mtaheuristiques prsentent une classe
de mthodes approches adaptables une grande varit de problmes
doptimisation combinatoire et mnent des rsultats pertinents. Mais
il existe assez peu de contributions permettant de comprendre la raison
de cette efcacit, et aucune preuve ne peut montrer quune mtaheuris-
tique sera plus efcace quune autre sur un problme donn. Certaines
mtaheuristiques prsentent lavantage dtre simples mettre en oeuvre,
comme le cas du recuit simul, dautres sont bien adaptes la rsolu-
tion de certaines classes de problme, trs contraints, comme le systme
de colonies de fourmis. La qualit des solutions trouves par les mtaheu-
ristiques dpend de leur paramtrage, et de lquilibre entre un balayage
de tout lespace des solutions (diversication) et une exploration locale
(lintensication).
Bibliographie
D. Anghinol et M. Paolucci. A new discrete particle swarm optimiza-
tion approach for the single-machine total weighted tardiness schedu-
ling problem with sequence-dependent setup times. European Journal of
Operational Research, 193(1) :7385, 2009. (Cit page 29.)
V. Cern. A thermodynamical approach to the traveling salesman pro-
blem : an efcient simulation algorithm. Journal of Optimization Theory
and Applications, 45(1) :4151, 1985. (Cit page 11.)
M. Clerc et J. Kennedy. The particle swarm - explosion, stability, and
convergence in a multidimensional complex space. IEEE Transactions on
Evolutionary Computation, 6(1) :5873, 2002. (Cit page 28.)
A. Colorni, M. Dorigo, et V. Maniezzo. Distributed optimization by ant
colonies. in varela, f. and bourgine, p., editors, proceedings of ECAL91.
First European Conference on Articial Life, Paris, France, pages 134142,
1992a. (Cit page 22.)
A. Colorni, M. Dorigo, et V. Maniezzo. An investigation of some pro-
prieties of an "ant algorithm". In Manner and Manderick, pages 509520,
1992b. (Cit page 21.)
D. Costa et A. Hertz. Ants can color graphs. Journal of the Operational
Research Society, 48 :295305, 1997. (Cit page 22.)
M. Dorigo, G. Caro, et L. M. Gambardella. Ant algorithms for discrete
optimization. Articial Life, 5(2) :137172, 1999. (Cit page 24.)
M. Dorigo, A. Colorni, et V. Maniezzo. The ant system : Optimization by
a colony of cooperating agents. IEEE Transactions on Systems, Man, and
Cybernetics-Part B, 26, No.1 :2941, 1996. (Cit pages 22 et 23.)
M. Dorigo et L. M. Gambardella. Ant colony system : A cooperative lear-
ning approach to the travelling salesman problem. IEEE Transactions on
Evolutionary Computation, 1(1) :5366, 1997. (Cit page 24.)
L. M. Gambardella, E. D. Taillard, et M. Dorigo. Ant colonies for the
quadratic assignment problem. Journal of the Operational Research Society,
50(2) :167176, 1999. (Cit page 22.)
F. Glover. Future paths for integer programming and links to articial
intelligence. Computers and Operations Research, 13 :533549, 1986. (Cit
page 14.)
33
34 Bibliographie
F. Glover, G.A. Kochenberger, et B. Alidaee. Adaptive memory tabu search
for binary quadratic programs. Management Science, 44 :336345, 1998.
(Cit page 30.)
F. Glover et M. Laguna. Tabu search. Kluwer Academic Publishers, Norwell,
MA, second edition, 1997. (Cit pages 14 et 30.)
D. Goldberg. Genetic algorithms. addison wesley. Addison Wesley, ISBN :
0-201-15767-5, 1989a. (Cit page 15.)
D. Goldberg. Genetic algorithms in search, optimization and machine
learning. Addison Wesley, 1989b. (Cit page 15.)
P. Hansen. The steepest ascent mildest descent heuristic for combinatorial
programming. prsent au Congress on Numerical Methods in Combinatorial
Optimization, Capri, Italie, 1986. (Cit page 14.)
J. H. Holland. Adaptation in natural and articial systems. University of
Michigan press, 1975. (Cit page 15.)
J. Kennedy. Small worlds and mega-minds : effects of neighborhood to-
pology on particle swarm performance. Proceedings of the 1999 IEEE
Congress on Evolutionary Computation, pages 19311938, 1999. (Cit
page 28.)
J. Kennedy et R. Eberhart. Particle swarm optimization, pro-
ceedings of ieee international conference on neural networks.
doi :10.1109/ICNN.1995.488968 :19421948, 1995. (Cit page 25.)
S. Kirkpatrik, C. D. Gelatt, et K. P. Vecchi. Optimization by simulated
annealing. science. 220 :671680, 1983. (Cit page 11.)
A. H. Land et A. G. Doig. An automatic method for solving discrete
programming problems. Econometrica, 28 :497520, 1960. (Cit page 3.)
S. Mazzeo et I. Loiseau. An ant colony algorithm for the capacitated ve-
hicle routing problem. Electronic Notes in Discrete Mathematics, 18 :181
186, 2004. (Cit page 22.)
N. Metropolis, M. N. Rosenbluth, et H. A. Teller. Equation of state calcu-
lation by fast computing machines. Journal of Chemical Physics, 21(6) :
10871092, 1953. (Cit page 11.)
H. Mlhenbein. Evolutionary Algorithms : Theory and Applications. Wiley,
1993. (Cit page 18.)
J. Puchinger et G. R. Raidl. Combining metaheuristics and exact algo-
rithms in combinatorial optimization : A survey and classication, in
proceedings of the rst international work-coriference on the interplay
between natural and articial computation. Springer (Ed), Las Palmas,
Spain, LNCS :4153, 2005. (Cit page 3.)
A. Schrijver. Theory of linear and integer programming. Wiley and Sons,
1986. (Cit page 6.)
Bibliographie 35
Y. Shi et R. C. Eberhart. A modied particle swarm optimizer. In Procee-
dings of the IEEE international conference on evolutionary computation, pages
6973, 1998. (Cit pages 27 et 28.)
T. Sttzle et H. Hoos. The max-min ant system and local search for the
traveling salesman problem. In Proceedings of ICEC97. IEEE fourth in-
ternational conference on evolutionary computation. New York : IEEE Press,
pages 308313, 1997. (Cit page 24.)
T. Sttzle et H. Hoos Holger. Max min ant system. Future Generation
Computer Systems, 16(8) :889914, 2000. (Cit page 24.)
Ce document a t prpar laide de lditeur de texte GNU Emacs et du
logiciel de composition typographique L
A
T
E
X2

.
Bibliographie 37

Вам также может понравиться