algorithmes fourmis.

publicité
Ant Colony Optimisation
[email protected]
1/77
Plan
●
Fourragement fourmis
●
Algorithmes fourmis
●
Ant Colony Optimisation appliqué au TSP
●
Généralisation ACO
●
Analyse de l'algorithme
[email protected]
2/77
Fourragement ches les fourmis
●
Mecanisme de recherche de nourriture chez fourmis
[email protected]
3/77
Fourragement ches les fourmis
[email protected]
4/77
Fourragement ches les fourmis
[email protected]
5/77
Fourragement ches les fourmis
●
Mecanisme de recherche de nourriture chez fourmis
●
Quand on observe des fourmis
●
●
Lignes de fourmis
●
Suivent un chemin
Comment ce chemin est il construit ?
●
Question philosophe
●
Touche à la notion d'emergence / holisme
–
Organe / corps
[email protected]
6/77
Fourragement ches les fourmis
●
Mecanisme de recherche de nourriture chez fourmis
●
Quand on observe des fourmis
●
Lignes de fourmis
●
Suivent un chemin
●
Comment ce chemin est il construit ?
●
Experiences éthologie
[email protected]
7/77
Double bridge experiment
●
Deneubourg (1990)
[email protected]
8/77
Résultats observés (Deneubourg)
●
Une colonie de fourmis
●
●
Chemins de taille identique
Interpretation ?
[email protected]
9/77
Résultats observés (Deneubourg)
●
Une colonie de fourmis
●
●
Chemins de taille identique
Interpretation ?
●
Brisure de symétrie
●
Toutes les fourmis empruntent le meme chemin
[email protected]
10/77
Résultats observés (Deneubourg)
●
Une colonie de fourmis
●
●
Chemins de tailles différentes
Interpretation ?
[email protected]
11/77
Résultats observés (Deneubourg)
●
Une colonie de fourmis
●
●
Chemins de tailles différentes
Interpretation ?
●
La colonie suit le chemin le plus court
[email protected]
12/77
Avec une fourmi
●
Quand on dispose une seule fourmi
●
Elle suit de manière indifférenciée un chemin
●
Que les chemins ont la meme taille ou non
●
Ou se trouve l'intelligence ?
●
Quell est la source de l'intelligence ?
[email protected]
13/77
Avec une fourmi
●
Quand on dispose une seule fourmi
●
Elle suit de manière indifférenciée un chemin
●
Que les chemins ont la meme taille ou non
●
Ou se trouve l'intelligence ?
●
Quell est la source de l'intelligence ?
Une réponse
Plutot que faire un système complexe
Faire des individus simples en interaction
[email protected]
14/77
Stigmergie
●
Principe fondamental de coordination
●
Origine Grasse[59] et termites
●
Adaptent leur comportement
●
Localement
Theraulaz, construction de nids
[email protected]
15/77
Stigmergie
●
Principe fondamental de coordination
●
Origine Grasse[59] et termites
●
●
●
Adaptent leur comportement
●
Localement
Principe
●
Environnement stocke mémoire du groupe
●
Communication indirecte
"le travail guide l'ouvrier" ==> solution complexité collective
[email protected]
16/77
Stigmergie
●
Communication indirecte
environnement
[email protected]
17/77
Stigmergie
●
Communication indirecte
environnement
[email protected]
18/77
Stigmergie
●
Communication indirecte
environnement
[email protected]
19/77
Stigmergie
●
Communication indirecte
environnement
[email protected]
20/77
Stigmergie
●
Communication indirecte
environnement
[email protected]
21/77
Stigmergie
●
Communication indirecte
environnement
[email protected]
22/77
Stigmergie
●
Communication indirecte
environnement
[email protected]
23/77
Fourragement fourmis
●
Principe
●
Fourmis déposent des phéromones
–
●
+ mécanisme evaporation
–
●
Quand elles ramènent la nourriture
Les phéromones se dissipent
Boucle amplificatrice
●
Certains chemins deviennent marqués
●
Évaporation
–
Les chemins les plus courts deviennent les plus marqués
●
Ils attirent le plus de fourmis
●
Ces chemins deviennent plus marqués
[email protected]
24/77
Fourragement fourmis
●
Principe
●
Fourmis déposent des phéromones
–
●
+ mécanisme evaporation
–
●
Quand elles ramènent la nourriture
Les phéromones se dissipent
Boucle amplificatrice
●
●
Certains chemins deviennent marqués
Brisure de symétrie
Évaporation
–
Les chemins les plus courts deviennent les plus marqués
●
de petites différences
Ils attirent leAmplification
plus de fourmis
●
Ces chemins deviennent plus marqués
[email protected]
25/77
Plan
●
Fourragement fourmis
●
Algorithmes fourmis
●
Ant Colony Optimisation appliqué au TSP
●
Généralisation ACO
●
Analyse de l'algorithme
[email protected]
26/77
Algorithme fourmi
●
Ant colony Optimisation Dorigo 1995
●
Principe
●
●
Deplacer des fourmis virtuelles
●
Créer des chemins
Algorithme global
●
Faire évoluer fourmis
–
●
Decisions en fonction des phéromones vues
Retour des fourmis
–
Depot de phéromones
[email protected]
27/77
Algorithme fourmi - décision
●
Prise de décision
●
●
A partir des phéromones
Les chemins
●
plus ou moins marqués τij
[email protected]
28/77
Algorithme fourmi - décision
●
Prise de décision
●
●
Les chemins
●
●
A partir des phéromones
plus ou moins marqués τij
Décision stochastique de la fourmi
●
Suivre globalement plus marqué
α
p ij =
β
τij . ηij
∑ τ αil . ηβil
l
[email protected]
29/77
Algorithme fourmi - décision
●
Prise de décision
●
●
Les chemins
●
●
A partir des phéromones
plus ou moins marqués τij
Décision stochastique de la fourmi
●
Suivre globalement plus marqué
τij . ηij
+ eventuellement
Liste taboue
∑ τ αil . ηβil
Pour éviter revenir
α
p ij =
β
l
[email protected]
30/77
Algorithme fourmi - décision
●
●
●
Pij Probabilité de suivre chemin ij
Tauij Quantité de pheromone en ij
Etaij Heuristique à ajouter
●
●
p ij =
α
ij
β
ij
τ .η
∑τ
l
α
il
β
il
.η
Interet a priori de suivre chemin
Beta et alpha Rapport heuristique / passé
●
Exploration vs exploitation
–
–
Alpha == 0 --> dépend que des heuristiques
Beta == 0 --> dépend que des pheromones
[email protected]
31/77
Algorithme fourmi – MaJ Phéromones
●
●
●
Mise à jour phéromones
●
A partir de la fonction objectif
●
Évaporation
τ ij =(1−ρ) τ ij +g (s)
A partir de l'objectif
●
Une fois le chemin terminé
●
Ajout aux chemins parcouru d'une quantité g(s)
●
Mises à jour prend différentes formes
Evaporation
●
Rho désigne taux évaporation
[email protected]
32/77
Algorithme fourmi général
Initialisation des pistes de phéromone ;
Tant que critère d'arrêt non atteint :
Déplacer les fourmis
mise à jour des pistes de phéromone ;
Fin de la boucle.
[email protected]
33/77
Dilemne exploration/exploitation
●
Principe
●
Fourmis explorent continuellement
–
●
Elles exploitent avec phéromones
–
●
Decouverte de nouveaux chemins
Raffinement des chemins
Comment ?
●
Collectivité permet exploration constante
–
●
Tout en exploitant
Système dynamique capable de s'adapter
[email protected]
34/77
Simulations algorithmes fourmis
●
Regarder
●
Plateforme madkit
–
●
Plateforme netlogo
–
–
●
http://www.madkit.org/
http://ccl.northwestern.edu/netlogo/
http://ccl.northwestern.edu/netlogo/models/Ants
Demonstration
–
http://ccl.northwestern.edu/netlogo/models/run.cgi?Ants.790.569
[email protected]
35/77
Plan
●
Fourragement fourmis
●
Algorithmes fourmis
●
Ant Colony Optimisation appliqué au TSP
●
Généralisation ACO
●
Analyse de l'algorithme
[email protected]
36/77
Algorithme fourmi et résolution de probleme
●
●
Algorithme précédent
●
Cherche plus court chemin
●
Reproduit experiences biologiques
Comment en faire un principe de résolution ?
●
Exemple TSP
[email protected]
37/77
Ant Colony Optimization
●
ACO
●
●
ACO webpage
●
●
Ant Colony Optimisation (dorigo 1995)
http://iridia.ulb.ac.be/~mdorigo/ACO/
Quasiment devenu un champ disciplinaire
●
Conférence sur les algorithmes Fourmis,
●
....
[email protected]
38/77
ACO et voyageur de commerce
●
Principe global
●
Faire évoluer des fourmis sur le graphe
–
–
●
Quand une fourmi finit cycle
–
–
●
prise de décision
Liste taboue villes visitées
Renforcer chemins parcourus
Avec g(s)=1 / distance
Résultats
●
Parmi les meilleurs observés 1995
[email protected]
39/77
ACO et voyageur de commerce
●
Question
●
Quel est l'espace de recherche ?
●
Quel est l'espace de déplacement des fourmis ?
●
Comment généraliser le principe ?
[email protected]
40/77
ACO et voyageur de commerce
●
Question
●
Quel est l'espace de recherche ?
–
On cherche une permutation
●
Quel est l'espace de déplacement des fourmis ?
●
Comment généraliser le principe ?
[email protected]
41/77
ACO et voyageur de commerce
●
Question
●
Quel est l'espace de recherche ?
–
●
Quel est l'espace de déplacement des fourmis ?
–
–
●
On cherche une permutation
Pas dans l'espace des permutations
Dans l'espace du graphe
Comment généraliser le principe ?
[email protected]
42/77
ACO et voyageur de commerce
●
Question
●
Quel est l'espace de recherche ?
–
●
Quel est l'espace de déplacement des fourmis ?
–
–
●
On cherche une permutation
Pas dans l'espace des permutations
Dans l'espace du graphe
Comment généraliser le principe ?
–
–
Transforme un probleme statique en dynamique
Construire un comportement qui génére une solution
[email protected]
43/77
ACO – principe général
●
fourmis construisent une solution de manière incrémentale
●
A chaque instant, décision
–
choisissent variable definissant pb
●
●
Ex: ville suivante
Une fois une solution construite
–
Évaluent et mise à jour
●
Ex : longueur du cycle
[email protected]
44/77
ACO – construction dynamique
●
●
●
Solution incrémentale
●
Part de X0
●
Itération : Xi (u0,…,uj-1) --> Xi+1 (u0,…,uj-1,uj)
●
Xi solution partielle de longueur i satisfiable
Plusieurs choix possibles à chaque étape
●
Pour chaque xi on définit U(xi) les actions possibles
●
Vu comme un problème de décisions multiples
Identique à problème de contrôle
●
Trouver la commande a faire à chaque étape pour obtenir la
solution optimale
[email protected]
45/77
ACO – construction dynamique
Part X0
vide
[email protected]
46/77
ACO – construction dynamique
Commandes
possibles
[email protected]
47/77
ACO – construction dynamique
Choix d’une
commande
[email protected]
48/77
ACO – construction dynamique
Solution
Partielle X1
[email protected]
49/77
ACO – construction dynamique
Commandes
Possibles
restantes
[email protected]
50/77
ACO – construction dynamique
[email protected]
51/77
ACO – controle dynamique
●
En theorie un controleur dans chaque état
●
●
État == historique des villes parcourues
Explosion combinatoire
●
Cela revient à tout tester
[email protected]
52/77
ACO – controle dynamique, factorisation
Gr
G
[email protected]
53/77
ACO – controle dynamique, factorisation
Birattari2002
Factorisation → fourmi markovienne
Probabilité ne dépend que
de la ville où on se trouve
Gr
G
[email protected]
54/77
Plan
●
Fourragement fourmis
●
Algorithmes fourmis
●
Ant Colony Optimisation appliqué au TSP
●
Analyse de l'algorithme
[email protected]
55/77
Pourquoi ca marche ?
●
Algorithmes fourmis
●
Deux types de preuve
●
●
graph based ant system and convergence (Gutjahr 2002)
Ant colony optimization and stochastic gradient descent
(Meuleau, Dorigo 2002)
[email protected]
56/77
Gutjahr 2002 – Graph ant system
●
●
En deux mots
●
Mémorisation du meilleur chemin global visité
●
Mise àjour uniquement sur le meilleur chemin
Preuve
●
Probabilité de prendre ce chemin augmente avec le temps
●
Ce chemin sera donc pris à un instant
●
Et le système se stabilise
[email protected]
57/77
Meuleau, Dorigo 2002
●
Principe ACO
●
●
Transforme un probleme statique en probleme dynamique
Idée
●
Comprendre comment controleur est construit
[email protected]
58/77
Meuleau, Dorigo 2002
Phéromones
Fourmis
[email protected]
59/77
Meuleau, Dorigo 2002
Phéromones
probabilités
Politique
Individuelle
Fourmis
[email protected]
60/77
Meuleau, Dorigo 2002
Phéromones
probabilités
Fourmis
Politique
Individuelle
évoluer
[email protected]
61/77
Meuleau, Dorigo 2002
Phéromones
probabilités
Fourmis
Politique
Individuelle
évoluer
[email protected]
Chemin
62/77
Meuleau, Dorigo 2002
Phéromones
probabilités
Fourmis
Politique
Individuelle
évoluer
Chemin
Distance
[email protected]
63/77
Meuleau, Dorigo 2002
Phéromones
probabilités
Fourmis
Politique
Individuelle
évoluer
Delta
Phéromones
Chemin
Distance
[email protected]
64/77
Meuleau, Dorigo 2002
Phéromones
probabilités
Fourmis
Politique
Individuelle
évoluer
Delta
Phéromones
Chemin
Distance
[email protected]
65/77
Meuleau, Dorigo 2002
Phéromones
probabilités
Fourmis
Valeur
Moyenne
Politique
Individuelle
évoluer
Plusieurs
fourmis
[email protected]
Chemin
Distance
66/77
Meuleau, Dorigo 2002
Phéromones
probabilités
Fourmis
Cherche à
optimiser
Valeur
Moyenne
Politique
Individuelle
évoluer
Plusieurs
fourmis
[email protected]
Chemin
Distance
67/77
Phéromones
probabilités
Fourmis
Politique
Individuelle
évoluer
Chemin
Descente de
gradient
Valeur
Moyenne
Plusieurs
fourmis
[email protected]
Distance
68/77
Meuleau, Dorigo 2002
Phéromones
probabilités
Fourmis
Estimer
Gradient M
Selon T
Valeur
Moyenne
Politique
Individuelle
évoluer
Plusieurs
fourmis
[email protected]
Chemin
Distance
69/77
Meuleau, Dorigo 2002
Phéromones
T
probabilités
De déplacer
Selon ∇M
Fourmis
Estimer
Gradient M
Selon T
Valeur
Moyenne
Politique
Individuelle
évoluer
Plusieurs
fourmis
[email protected]
Chemin
Distance
70/77
Meuleau, Dorigo 2002
Phéromones
T
probabilités
De déplacer
Selon ∇M
Fourmis
Estimer
Gradient M
Selon T
Valeur
Moyenne
Politique
Individuelle
évoluer
Plusieurs
fourmis
[email protected]
Chemin
Distance
71/77
Meuleau, Dorigo 2002
●
Démarche
●
Dans l’espace des phéromones
–
Optimiser la valeur moyenne
●
Modifier phéromones
●
Descente de gradient :
–
–
Évaluer la variation de v en fonction de T(x,y)
Bouger dans cette direction
[email protected]
72/77
Meuleau, Dorigo 2002
●
Ce qu’on cherche à optimiser
●
●
●
Erreur: = moyenne de 1/distnace
Gradient
●
De/dT(x,y)=E(Tx,y/distance ) sur chemin sachant T
●
Tx,y = eligibility
Evaluer ce gradient
●
Monte carlo : forward : je lance fourmi
●
Sur chemin, somme Tx,y/distance (estimation du gradient)
●
Je modifie pheromones en fonction de cela
[email protected]
73/77
Plan
●
Fourragement fourmis
●
Algorithmes fourmis
●
Ant Colony Optimisation appliqué au TSP
●
Analyse de l'algorithme
●
Exemple applications
[email protected]
74/77
Utilité des algorithmes fourmis
●
Mise à jour dynamique
●
●
Plein de questions sur l'adaptabilité
Exemple
●
Fourragement
–
–
disparition de sources
Recherche de nouvelles sources
●
Routage dans les réseaux (antnet – Di Caro, Dorigo)
●
Reconnaissance d'images (ramos – Digital image habitats)
●
Etc ...
[email protected]
75/77
Autres exemples
[email protected]
76/77
Autres exemples inspiration biologique
●
PSO
●
●
Particule swarm optimization
Brood sorting
●
Tri (lumer et faieta)
●
Systèmes immunitaires artificiels
●
Etc ...
[email protected]
77/77
Téléchargement