OPTIMISATION PAR COLONIES DE
FOURMIS
1
REPUBLIQUE ALGERIENNE DEMOCRATIQUE ET POPULAIRE.
MINISTÈRE DE L’ENSEIGNEMENT SUPÉRIEUR ET DE LA RECHERCHE
SCIENTIFIQUE.
UNIVERSITE DES SCIENCES ET DE LA TECHNOLOGIE D’ORAN
FACULTE DES SCIENCES -- DEPARTEMENT D’INFORMATIQUE
Module : Optimisation Avancée
ACO
Historique
Introduction
Fourmis:
artificielles & réelles
ANT SYSTEM
Amélioration de
L’algorithme
Problème de
Routage
Conclusion
2
Plan de l’exposé
Historique
Introduction
Fourmis artificielles & fourmis réelles
Algorithme de Base « Ant System »
Amélioration de l’algorithme
Problème de routage
Conclusion
ACO
Historique
Introduction
Fourmis: artificielles & réelles
ANT
SYSTEM
Amélioration de
L’algorithme
Problème de
Routage
Conclusion 3
Les sociétés d’insectes ont une capacité à résoudre des problèmes
d’une manière : flexible et robuste.
Les études réalisées par les éthologistes ( 1983 Deneubourg ) .
Comportements collectifs= Auto-organisation
Problèmes quotidiens résolus par une colonie :
recherche de nourriture, construction du nid, division du travail et
allocation des tâches entre les individus, etc.
sciences de l’ingénieur, en informatique et en robotique
Les informaticiens et les ingénieurs ont pu transformer des modèles du
comportement collectif des insectes sociaux en méthodes utiles pour
l’optimisation et le contrôle.
un nouveau domaine de recherche = Intelligence en essaim
Historique
Introduction 1 ACO
Historique
Introduction
Fourmis: artificielles & réelles
ANT
SYSTEM
Amélioration de
L’algorithme
Problème de
Routage
Conclusion
4
domaines d’application
Introduction 2 ACO
Historique
Introduction
Fourmis: artificielles & réelles
ANT
SYSTEM
Amélioration de
L’algorithme
Problème de
Routage
Conclusion
5
Comportement naturelle:
communication indirecte : marquage par phéromones
( stigmérgie )
Expériences des 2 ponts de Deneubourg et Aron sur des
fourmis d’Argentine Linepithaema humile
A la sortie du nid : 2 chemins possible
Introduction 3 ACO
Historique
Introduction
Fourmis: artificielles & réelles
ANT
SYSTEM
Amélioration de
L’algorithme
Problème de
Routage
Conclusion
6
Comportement naturelle:
Au point de choix : les fourmis n’ont aucune vision globale.
Introduction 4 ACO
Historique
Introduction
Fourmis: artificielles & réelles
ANT
SYSTEM
Amélioration de
L’algorithme
Problème de
Routage
Conclusion
7
Comportement naturelle:
Le chemin le plus court reçoit plus de phéromones pour une durée
donnée.
Introduction 5 ACO
Historique
Introduction
Fourmis: artificielles & réelles
ANT
SYSTEM
Amélioration de
L’algorithme
Problème de
Routage
Conclusion
8
Comportement naturelle:
Le choix des fourmis est orienté par les phéromones
.
ACO
Historique
Introduction
Fourmis: artificielles & réelles
ANT SYSTEM
Amélioration de
L’algorithme
Problème de
Routage
Conclusion
9
Comparaison
Points communs:
Colonie d’individus coopérants.
Pistes de phéromones.
Évaporation des phéromones.
Recherche du plus petit chemin.
Déplacement locaux.
Choix aléatoire lors des transitions.
Différences:
Elle vivent dans un monde non continu.
Mémoire (état interne) de la fourmi. Qualité de la solution.
Nature des phéromones déposées.
Retard dans le dépôt de phéromone……..etc.
ACO
Historique
Introduction
Fourmis: artificielles & réelles
ANT
SYSTEM
Amélioration de
L’algorithme
Problème de
Routage
Conclusion
10
La Meta heuristique ACO
Recherche du plus court chemin hamiltonien dans un graphe
Problème du voyageur de commerce.
ACO
Historique
Introduction
Fourmis: artificielles & réelles
ANT
SYSTEM
Amélioration de
L’algorithme
Problème de
Routage
Conclusion
11
Modélisation du problème
Dans Ant System, des agents (fourmis virtuelles) construisent
les solutions en parallèle, en visitant les villes du graphe.
Environnement invariant:
G = (V,E) graphe complet ;
V ensemble des sommets = villes ;
E ensemble des arcs valués = distance entre 2 villes ;
ci,cj € V et dij = d(ci,cj) € E.
Environnement modifiable
Nombre d’agents sur chaque sommet;
: quantité de phéromones artificielles déposées par les
agents fourmis sur chaque arête (i, j).
Perceptions d’un agent
Mémorisation par l’agent k des sommets-villes déjà visités
dans un tableau liste.
Voisinage du sommet i dans le graphe, ainsi que les valeurs
de correspondantes
ACO
Historique
Introduction
Fourmis: artificielles & réelles
ANT
SYSTEM
Amélioration de
L’algorithme
Problème de
Routage
Conclusion
12
Modélisation du problème
Action d’une fourmi:
Avancer du sommet i vers le sommet j. On utilise des lois
de transition aléatoires :
: proba que la fourmi k, située à la ville i, à l’instant t,
se déplace vers la ville j.
: ensemble des villes qu’il reste à visiter par la fourmi
k, située à la ville i.
: souhait d’ajouter l’arc (i, j) à la solution trouvée. Pour le
problème du voyageur de commerce, on peut prendre
ACO
Historique
Introduction
Fourmis: artificielles & réelles
ANT
SYSTEM
Amélioration de
L’algorithme
Problème de
Routage
Conclusion
13
La Règle de déplacement
appelée" règle aléatoire de transition proportionnelle" par les
auteurs [Bonabeau et al., 1999]
α,β : deux paramètres de contrôle de l’intensité du phéromone et de la
visibilité des ville.
ACO
Historique
Introduction
Fourmis: artificielles & réelles
ANT
SYSTEM
Amélioration de
L’algorithme
Problème de
Routage
Conclusion
14
La Règle de dépôt de phéromone
Après un tours complet chaque fourmi dépose une quantité de phéromone
sur la piste parcouru selon la règle suivante :
Q: paramètre fixe
ACO
Historique
Introduction
Fourmis: artificielles & réelles
ANT
SYSTEM
Amélioration de
L’algorithme
Problème de Routage
Conclusion
15
La Règle d’évaporation des phéromones
Après chaque itération soustraire une quantité de phéromone constante de
toute les arêtes selon la règle suivante :
ρ : le taux d’évaporation de phéromone après l’itération t.
On note :La quantité initiale de phéromone sur les arêtes est une
distribution uniforme d'une petite quantité .
ACO
Historique
Introduction
Fourmis: artificielles & réelles
ANT
SYSTEM
Amélioration de
L’algorithme
Problème de
Routage
Conclusion
16
Le pseudo code de l’algorithme Ant System
Pour t = 1; ..... ; tmax
Pour chaque fourmi k = 1; …. ;m
Choisir une ville au hasard
Pour chaque ville non visitée i
Choisir une ville j, dans la liste des villes restantes,
selon la formule (1)
Fin Pour
Déposer une piste sur le trajet conformément a
l'équation (2)
Fin Pour
Évaporer les pistes selon la formule (3)
Fin Pour
ACO
Historique
Introduction
Fourmis: artificielles & réelles
ANT
SYSTEM
Amélioration de
L’algorithme
Problème de
Routage
Conclusion
17
Fonctionnement de l’algorithme
Initialisation de l’algorithme:
1- Les m fourmis sont réparties aléatoirement sur les n villes
2- Pour chaque fourmi, la liste qui modélise sa mémoire contient sa ville
de départ
3- Les pistes de phéromones sont initialisées comme suit :
où (c>=0).
Fin d’un cycle:
1- Chaque fourmi calcule sa valeur .
2- Les variables sont calculées conformément à la formule (2).
3- la fourmi refait son tour en sens inverse tout en déposant des
phéromones.
4- on recherche la fourmi k telle que .Si ce tour est
meilleur que le meilleur tour jusqu’ici, on le mémorise.
5- Les mémoires des fourmis sont effacées.
6- Les fourmis recommencent un nouveau tour,
Fin de l’algorithme:
On arrête l’algorithme après:
- un nombre de cycles égal à une constante NCmax
- une situation de stagnation
ACO
Historique
Introduction
Fourmis: artificielles & réelles
ANT
SYSTEM
Amélioration
de
L’algorithme
Problème de
Routage
Conclusion
18
Les fourmis élitistes
Les paramètres permettant de caractériser complètement une
instance de AS sont repris dans les tuplet :
où (0 <= p <= 1) , α<=0 , β<=0 et c > 0.
Expérimentations pour 30 villes < m = 30, NC max = 5000, α = 1,
β = 5, p = 0.5 , Q = 100 >
utiliser des fourmis élitistes
cette méthode consiste à faire parcourir le meilleur tour par
certaines fourmis artificielles, dites fourmis élitistes. cela pour
anticiper la meilleur solution.
pour 30 villes:
< m = 30, NC max = 250, α = 1, β = 5, p = 0.5 , Q = 100 >
Ant-Q 1995 ACO
Historique
Introduction
Fourmis: artificielles & réelles
ANT
SYSTEM
Amélioration
de
L’algorithme
Problème de
Routage
Conclusion
19
Même fonctionnement que le AS
différence = les fourmis modifient pas-à-pas les phéromones sur
l’arc quelle choisissent.
Formule du mise a jour :
constante paramétrable (typiquement 0.5) :ץ
Résultats: Cet algorithme présente des bons résultats, mais donne des
performances semblables à ACS alors que ACS allège le calcul.
Ant Colony System 1996/1997 ACO
Historique
Introduction
Fourmis: artificielles & réelles
ANT
SYSTEM
Amélioration
de
L’algorithme
Problème de
Routage
Conclusion
20
Ant Colony System 1996/1997 ACO
Historique
Introduction
Fourmis: artificielles & réelles
ANT
SYSTEM
Amélioration
de
L’algorithme
Problème de
Routage
Conclusion
21
MaxMin Ant System 1997 ACO
Historique
Introduction
Fourmis: artificielles & réelles
ANT
SYSTEM
Amélioration
de
L’algorithme
Problème de
Routage
Conclusion
22
Les valeurs des pistes sont bornées par ;
Les pistes sont initialisées à la valeur maximum ;
La mise à jour des pistes se fait de façon proportionnelle, les pistes
les plus fortes sont moins renforcées que les plus faibles ;
Seule la meilleur fourmi met à jour une piste de phéromone
Une réinitialisation des pistes peut-être effectuée
Intérêt : - éviter la monopolisation
- gérer l’évaporation
Les meilleurs résultats sont obtenus en mettant à jour la
meilleure solution avec une fréquence de plus en plus forte au
cours de l’exécution.
ACO
Historique
Introduction
Fourmis: artificielles & réelles
ANT
SYSTEM
Amélioration de
L’algorithme
Problème de Routage
Conclusion
23
Dicaro,dorigo 1998
Tables de routage
ACO
Historique
Introduction
Fourmis: artificielles & réelles
ANT
SYSTEM
Amélioration de
L’algorithme
Problème de
Routage
Conclusion
24
Tables de routage
ACO
Historique
Introduction
Fourmis: artificielles & réelles
ANT
SYSTEM
Amélioration de
L’algorithme
Problème de Routage
Conclusion
25
Tables de routage
ACO
Historique
Introduction
Fourmis: artificielles & réelles
ANT
SYSTEM
Amélioration de
L’algorithme
Problème de
Routage
Conclusion
26
Tables de routage
ACO
Historique
Introduction
Fourmis: artificielles & réelles
ANT
SYSTEM
Amélioration de
L’algorithme
Problème de
Routage
Conclusion
27
Tables de routage
ACO
Historique
Introduction
Fourmis:
artificielles &
réelles
ANT
SYSTEM
Amélioration de
L’algorithme
Problème de Routage
Conclusion
28
Conclusion
L’algorithme des colonies des fourmis est une métaheuristique,
avec un processus stochastique construisant une solution, en
ajoutant des composants aux solutions partielles.
caractère général utilisée pour résoudre différentes problèmes
d’analyse combinatoire:
Versatile – s’applique a plusieurs types de problèmes.
Robuste – des changements mineures sont nécessaires
pour l’adapter aux autres problèmes.
- Bien décrite et formalisée
- L’ensemble des propriétés la décrivant est connu
• Principal inconvénient :
-coût relativement élevé de la génération des solutions.