Sie sind auf Seite 1von 40

Algorithme de colonie de fourmis

Universit Sidi Mohamed Ben Abdellah


Facult des Sciences et Techniques de Fs

1 Btissam DKHISSI
INTRODUCTION
2 Btissam DKHISSI
Loptimisation
Dfinition
Loptimisation est une branche des mathmatique
cherchant analyser et rsoudre analytiquement
et/ou numriquement les problmes qui consistent
dterminer le meilleur lment d'un ensemble, au
sens d'un critre quantitatif donn.
3 Btissam DKHISSI

La maitrise et ladmiration de la science de
loptimisation Peuvent conduire un carrire
baser sur les techniques de loptimisation donnant
par exemple :
1- Ingnieur en logistique et transport .
2- Ingnieur dveloppeur de Web .
3- responsable de la gestion des ressources .

Il y a plusieurs Mtiers ou loptimisation est la base
fondamental sur laquelle consiste la maitrise de ces
diffrents Mtiers .




Voici quelques domaines dans lesquels la prise de
dcision
fait couramment appel la rsolution de problmes
d'optimisation :

1- CONCEPTION DE NOUVEAUX SYSTEMES:
dimensionnement, localisation

2- ORGANISATION D' ACTIVITES :
Gestion de ressources
Gammes et procdures
Rentabilisation des investissements



3- COMMANDE DE SYSTEMES :
Stabilisation, Suivi de trajectoires
4- SURVEILLANCE, SUPERVISION :
Dtection de dysfonctionnements,
diagnostics, rparation, maintenance,
remplacement prventif.


L'optimisation est essentiellement un outil d'aide
la dcision au sein de l'entreprise dans diffrents
niveaux de production, de stockage, de livraison,



Le terme solution optimal nest pas un jugement de
valeur absolu. C'est plutt une information sur
l'approche mthodologique utilise.

Les Domaines Dapplication
Loptimisation Dans notre vie professionnelle
4 Btissam DKHISSI
Loptimisation du mode demploi pour bien prparer
les examens
et optimiser le temps de rvision vu le classements
des matires du difficiles au faciles ou bien le
contraire !
Au niveau personnel
5 Btissam DKHISSI
Mise en forme Mathmatique
Dfinir les variables de dcision
Ensemble des variables qui rgissent la situation modliser
Variables relles, entires, binaires

Prciser la fonction objectif (fonction conomique/Contrainte faible/contrainte souple)
Fonction mathmatique compose des variables de dcision qui
reprsente le modle physique modlis

Prciser les contraintes du problme (Contrainte forte/ Contrainte rigide)
ensemble des paramtres qui limitent le modle ralisable
quations ou inquations composes des variables de dcision

Prciser les paramtres du modle
constantes associes aux contraintes et la fonction objectif
6 Btissam DKHISSI
Terminologie
Solution ralisable
Solution o toutes les contraintes du modle sont satisfaites

Domaine de recherche (Zone de solution)
Ensemble de toutes les solutions ralisables

Solution optimale
Solution ralisable o la fonction objectif atteint la meilleure
valeur, maximum ou minimum
Plusieurs solutions optimales possibles
7 Btissam DKHISSI
1- contraintes de capacit: Les vhicules ont une capacit d'emport limite
(quantit, taille, poids, etc.).

2- contraintes lies aux ressources et aux clients: disponibilit, localisation,
comptences requises, etc.
3- tournes de vhicules avec fentre de temps: Pour chaque client on impose
une fentre de temps dans laquelle la livraison doit tre effectue.
tournes de vhicules avec collecte et livraison: Un certain nombre de
marchandises doivent tre dplaces de sites de collecte vers des sites de
livraisons.

Le problme du voyageur de commerce consiste,
tant donn un ensemble de villes spares par
des distances donnes, trouver le plus court
chemin qui relie toutes les villes. Il s'agit d'un
problme d'optimisation pour lequel on ne
connait pas d'algorithme permettant de trouver
une solution exacte en un temps polynomial. De
plus, la version dcisionnelle de l'nonc (pour
une distance D, existe-t-il un chemin plus court que
D passant par toutes les villes ?) est connu comme
tant un problme NP-complet
Le problme de tournes de vhicules est une classe
de problmes de recherche oprationnelle et
d'optimisation combinatoire. Il s'agit de dterminer
les tournes d'une flotte de vhicules afin de livrer
une liste de clients, ou de raliser des tournes
d'interventions
Ce problme est une extension classique
du problme du voyageur de commerce, et fait partie
de la classe des problmes NP-complet.
Le problme du sac a dos est un problme
doptimisation combinatoire Il modlise une
situation analogue au remplissage d'un sac dos,
ne pouvant supporter plus d'un certain poids, avec
tout ou partie d'un ensemble donn d'objets ayant
chacun un poids et une valeur Les objets mis dans
le sac dos doivent maximiser la valeur totale,
sans dpasser le poids maximum.
8 Btissam DKHISSI
Btissam DKHISSI 9
Algorithmes
exactes
Mthodes
approches
Programmation
linaire
Sparation et
valuation
Programmation
dynamique
Colonie de
fourmis
Recherche
locale
Algorithmes
gloutons
Recherche
Tabou
Recuit
simul
Algorithme
gntique
Mthodes
doptimisation
Relaxation
Btissam DKHISSI 10
Les mtaheuristiques progressent de faon itrative, en alternant
des phases dintensification, de diversification et dapprentissage,
ou en mlant ces notions de faon plus troites. Ltat de dpart
est souvent choisi alatoirement, lalgorithme se droulant
ensuite jusqu ce quun critre darrt soit atteint.
Mtaheuristique
Btissam DKHISSI 11
Mtaheuristiques
L'intensification se fonde sur l'ide d'apprentissage de proprits favorables:
les proprits communes souvent rencontres dans les meilleures solutions
visites sont mmorises au cours de la recherche, puis favorises pendant la
priode d'intensification. Une autre manire d'appliquer l'intensification consiste
mmoriser une liste de solutions de bonne qualit et retourner vers une de
ces solutions. Il sagit alors dintensifier leffort de recherche vers les zones les
plus prometteuses de lespace des solutions.



La diversification cherche diriger la recherche vers des zones inexplores.
Sa mise en uvre consiste souvent modifier temporairement la fonction de
cot pour favoriser des mouvements n'ayant pas t effectus ou pnaliser
les mouvements ayant t souvent rpts. Il sagit alors de diversifier leffort
de recherche de faon tre capable de dcouvrir de nouvelles zones
contenant (potentiellement) de meilleures solutions.
12 Btissam DKHISSI
Naissance des algorithmes de colonies de
fourmis
Les algorithmes de colonies de fourmis sont ns la suite dune
constatation faite par des biologistes (Pierre-Paul Grass, entre les
annes 40 et 50) :

les insectes sociaux en gnral, et les fourmis en particulier, sont
capables de rsoudre collectivement des problmes complexes,
comme trouver le chemin le plus court entre une source de
nourriture et leur nid, bien que celles-ci ont individuellement des
capacits cognitives limites.

13 Btissam DKHISSI
La stigmergie
La stigmergie est une forme indirecte et non symbolique de
communication, passant par le biais de modification de
lenvironnement.

On peut utiliser le terme interaction sociale indirecte pour
dcrire le mme phnomne.


14 Btissam DKHISSI
Exprience
Btissam DKHISSI 15
Btissam DKHISSI 16
Algorithme de colonie de fourmis
i
Initialisation
dplacement
Mise jour
Introduction
Btissam DKHISSI 17
Algorithme de colonie de fourmis (AS)
Initialisation
dplacement
Mise jour
Introduction
i
0 t
0 t
0 t
0 t
Btissam DKHISSI 18
Algorithme de colonie de fourmis (AS)

j

) t (
ij
t
Initialisation
dplacement
Mise jour
Introduction

e
q t
q t
=
u
e
| u o
| u o
u

u
sinon
J j si
P
i
ij
0
)) t ( ( )) t ( (
)) t ( ( )) t ( (
) t (
i
ij
J l
il il
ij
Btissam DKHISSI 19
Algorithme de colonie de fourmis (AS)

j

) 1 t (
ij
+ t
Initialisation
dplacement
Mise jour
Introduction
) t ( ) t ( ) 1 t (
ij ij ij
t A + t = + t
Adaptation de lAlgorithme de colonie de
fourmis
Considrons le graphe G=(X,U,V)
X est lensemble de n sommets
U est lensemble des arcs
V est lensemble des poids associs aux composants de X ou aux ceux de U ou tous les deux












Le plus court chemin entre le paire de sommets (Source, Destination) en respectant les
contraintes fortes du problme?

Btissam DKHISSI 20
Les comportements dun algorithme de Colonie de fourmis sont :

1. Construction de la solution probabiliste biais par les traces de
phromone

2. Mise jour de la quantit de phromone

3. valuation de la qualit des solutions gnres





Btissam DKHISSI 21
Adaptation de lAlgorithme de colonie de
fourmis
Diffrences par rapport aux fourmis relles :

mmorisation des sommets traverss
les phromones sont dposes aprs la construction de la solution
le renforcement est proportionnel la qualit de la solution construite
Btissam DKHISSI 22
Adaptation de lAlgorithme de colonie de
fourmis
Initialiser les phromones pour chaque arc la valeur
0

Placer alatoirement les m fourmis sur les sommets du graphe
for t = 1 t
max
do
for k = 1 m do
Construire le chemin S
k
(t) en tenant compte des phromones (
ij
) et de la
dsirabilit (
ij
) de chaque arc
Calculer le cot de la solution S
k
(t)
end for
if une meilleure solution a t trouve then
Mettre jour la meilleure solution trouv : S
+
end if
for all arc (i, j) do
Mettre jour la quantit de phromone
ij
end for
end for
Btissam DKHISSI 23
Algorithme de colonie de fourmis

La colonie comporte un nombre fixe de fourmis artificielles et a pour but de
rechercher collectivement de bonnes solutions pour le problme rsoudre.
Le rle d'une fourmi est de construire une solution, en partant d'une position
initiale lie la nature du problme considr (Mthode constructive).
L'objectif est d'obtenir une solution de cot minimum et qui respecte les
contraintes dfinies.


Btissam DKHISSI 24
Ant Colony Optimization (ACO)
L'optimisation colonie de fourmis (OCF)
Les fourmis construisent leur solution de faon incrmentale.
Etant une tape courante sur un nud i, chaque fourmi dtermine une
liste de nuds candidats (ralisables).





La fourmis choisit parmi les lments de la liste des candidats un nud
pour sy dplacer et a sera la direction marque par la plus grande quantit
de phromone (la plus forte probabilit d'tre choisie)
Remarque :
La probabilit de choisir un nud hors lensemble des candidats est 0.
Btissam DKHISSI 25
Ant Colony Optimization (ACO)
L'optimisation par colonie de fourmis (OCF)
u
Le choix du nud suivant par la fourmis est guid par les informations
laisses par les autres fourmis suivant une probabilit de transition:


Btissam DKHISSI 26
Ant Colony Optimization (ACO)
L'optimisation par colonie de fourmis (OCF)

e
q t
q t
=
u
e
| u o
| u o
u

u
sinon
J j si
P
i
ij
0
)) t ( ( )) t ( (
)) t ( ( )) t ( (
) t (
i
J l
il il
ij ij
: La trace de phromone reprsente lexprience de la colonie
concernant lintrt de visiter le nud j juste aprs le nud i une
itration t, et elle est utilise pour guider les fourmis dans leur
phase de construction de chemins.

: Linformation heuristique est calcule par la fourmi en se
dplaant de ltat i j litration t.
Cette information reprsente lintrt qua la fourmi pour prendre
la dcision du dplacement de ltat i ltat j. Plus cette valeur est
grande, plus il semble intressant de faire le choix courant.
En gnral, cette valeur est directement proportionnelle la qualit
de la solution partielle obtenue en prenant la dcision de
dplacement de ltat i j.



Btissam DKHISSI 27
Ant Colony Optimization (ACO)
L'optimisation par colonie de fourmis (OCF)
) t (
ij
t
) t (
ij
u
q
et sont deux paramtres qui dterminent linfluence
relative de linformation phromone et de linformation
heuristique.



Btissam DKHISSI 28
Ant Colony Optimization (ACO)
L'optimisation par colonie de fourmis (OCF)
o
|



Btissam DKHISSI 29
Ant Colony Optimization (ACO)
L'optimisation par colonie de fourmis (OCF)
La mise jour :

Une fois que toutes les fourmis ont construit leurs solutions (cest dire
la fin de chaque itration) la colonie de fourmis effectue des mises jour
de la quantit de la phromone. La mise jour de la phromone
commence par une phase d'vaporation, qui rduit toutes les valeurs des
arcs. Ensuite pour chaque solution, les valeurs de la phromone
associes aux lments la constituant sont renforces par un facteur
dfinir.
Btissam DKHISSI 30
Ant Colony Optimization (ACO)
L'optimisation par colonie de fourmis (OCF)
La mise jour :
La mise jour de la phromone peut tre globale o chaque arc appartenant
une des solutions construites est modifi par lajout dune quantit de
phromone. la fin de cette phase la phromone du systme entier s'vapore et
le processus de la construction et de la mise jour est ritr suivant la formule
suivante :


: le coefficient dvaporation choisi dans lintervalle+ 0,1*.

: la quantit de phromone dpose sur larc reliant les nuds i et j.
) t ( ) t ( ) 1 t (
ij ij ij
t A + t = + t

) t (
ij
t A
Btissam DKHISSI 31
Ant Colony Optimization (ACO)
L'optimisation par colonie de fourmis (OCF)
La mise jour :
La mise jour de phromone peut tre aussi locale o seule la meilleure
solution construite depuis le commencement de la procdure de construction
des solutions, est employe pour mettre jour globalement la phromone.
Ainsi, chaque fois quune fourmi se dplace de ltat courant au prochain, la
phromone associe au bord est modifie de la faon suivante:



O :
le coefficient dvaporation choisi dans lintervalle+0,1*.

la valeur initiale de la phromone.

0 ij ij
) 1 ( ) t ( ) 1 t ( t + t = + t

0
t


Variantes de lalgorithme de colonie de fourmis
Btissam DKHISSI 32
Le systme de fourmi (Ant System AS)
Dvelopp par Dorigo et al. en 1991
Vise surtout rsoudre le problme de voyageur de commerce, o l'objectif est de
trouver le plus court chemin servant relier un ensemble de villes.


Principe :

Un ensemble de fourmis, chacune parcourant un trajet parmi ceux envisageables.
chaque tape, la fourmi choisit de passer d'une ville une autre selon quelques
rgles :

elle ne peut visiter qu'une fois chaque ville
plus une ville est loin, moins elle a de chance d'tre choisie (c'est la visibilit /
linformation heuristique)
plus l'intensit de la piste de phromone dispose sur l'arte entre deux villes est
grande, plus le trajet aura de chance d'tre choisi
une mise jour globale de phromone est applique afin daugmenter lattraction
de la solution prometteuse
Btissam DKHISSI 33
Max-Min Ant System (MMAS)
Une variante efficace du AS
Dveloppe par Sttzle et Hoos

Principe :
Seules les meilleures fourmis tracent des pistes et le dpt de phromone est
limit par une limite suprieure (empchant une piste d'tre trop renforce)
et une limite infrieure (laissant la possibilit d'tre explore n'importe
quelle solution)
Btissam DKHISSI 34
Ant Colony System (ACS)
La variante la plus connue du (AS)
Introduit par Dorigo et Gambardella en 1997

Principe :
Une nouvelle rgle de dplacement (appele rgle pseudo-alatoire
proportionnelle), s'ajoute au processus de mise jour locale des lments
des pistes de phromone.
La nouvelle rgle de dplacement Dpend dun paramtre q
0
(0q
0
1), qui
dfinit une balance diversification/intensification.
Btissam DKHISSI 35
Ant Colony System (ACS)
Rgle de transition : la fourmi place i choisit la ville j telle que:






O : q est une variable alatoire uniformment distribue sur [0,1]
q
0
est un paramtre (0q
0
1)

ij
: la visibilit (linformation heuristique)
J
k
(i) = { sommets candidats}
J : variable alatoire slctionne par la parobabilit ci-dessous


Btissam DKHISSI 36
| || | { }

s q t
=
|
e
sinon
q q si
0
J
. ) t ( max arg
j
il il ) i ( J l
k
k
iJ
P
J est choisie suivant la probabilit de dplacement :
Btissam DKHISSI 37

e
| o
| o
q t
q t
=
) i ( J l
k
il il
k
iJ
k
k
iJ
)) t ( ( )) t ( (
)) t ( ( )) t ( (
) t (
iJ
P
Ant Colony System (ACS)


Ayant l'objectif d'augmenter la diversification de la recherche, le mcanisme
de mise jour locale de la phromone de lACS est plus efficace relativement
celui de lAS puisquil vite la convergence lente en concentrant directement
la recherche dans un voisinage de la meilleure solution trouve jusqu
litration courante de lalgorithme.
Btissam DKHISSI 38
Ant Colony System (ACS)
Optimisation
chaque pas la fourmi dpose des phromones :


la mise jour des phromones nest faite qu partir du meilleur
chemin gnr (C
+
) :



des listes de villes candidates sont utilises pour acclrer le
processus de construction dun chemin ;

une heuristique locale est utilise pour amliorer les solutions
gnres par les fourmis (2-opt ou 3-opt) ;
Btissam DKHISSI 39


Application : Problme de voyageur de
commerce (TSP)
Btissam DKHISSI 40

Das könnte Ihnen auch gefallen