ima – institut de mathématiques appliquées lisa- laboratoire d’ingénierie des systèmes...
DESCRIPTION
IMA – Institut de Mathématiques Appliquées LISA- Laboratoire d’Ingénierie des Systèmes Automatisés. Une approche Multi-agents pour la modélisation des métaheuristiques parallèles. Application aux problèmes de tournées de ramassage des conteneurs enterrés. K. Belkhelladi *. - PowerPoint PPT PresentationTRANSCRIPT
1
IMA – Institut de Mathématiques AppliquéesLISA- Laboratoire d’Ingénierie des Systèmes Automatisés
Une approche Multi-agents pour la modélisation des
métaheuristiques parallèles
K. Belkhelladi*
Application aux problèmes de tournées de ramassage
des conteneurs enterrés
P. Chauvet & A. Schaal*[email protected]
2
Plan
Introduction Motivations & objectifs MAF-DISTA
ArchitectureFonctionnementStratégie d’échange d’informations
UWCOPFormulationContraintes
SimulationsRésultatsBilans
Conclusion & Perspectives
3
Introduction
Parallélisme
Multi-agents
RO
MAF-DISTA
4
Motivations & Objectifs(1)
Les algorithmes à population sont devenus populaires• Convergence prématurée et temps de calcul à améliorer
Les machines parallèles peuvent accélérer les calculs de façon spectaculaire
• Elles ne sont pas toujours disponibles dans tous les organismes• Il est très coûteux de mettre à jour leur puissance de calcul et
leur capacité mémoire
Le pourcentage moyen d’inutilisation des ressources de calcul dans une entreprise est d’environ* 47%
Serveurs fortement sollicités
* Omni Consulting Group
H1: L’activité concurrente de plusieurs algorithmes peut accélérer des traitements par le biais d’une coopération entre ces algorithmes
H2: Agents mobiles = exploitation optimale des ressources de calcul
5
Motivations & Objectifs(2)
Proposer un outil générique d’analyse, de conception et d'implantation des métaheuristiques parallèles pour l'optimisation combinatoire; en s’appuyant ainsi sur approche orientée agent.
Déterminer un ensemble de stratégies d’échange d’informations entre les agents.
6
MAF-DISTA(1)
Réseau de PCs
OS/HW
JADE Middleware
…Agent mobile
Plate-forme parallèle
Application
JADE
Agent de statut
Agent de synchronisatio
n
Agents mobiles
Agent de statut
• Maintenir la liste des machines
• Rapporter le statut de chaque machine du réseau
• Synchroniser les communications
• Surveiller l’évolution des sous-populations
Agent de synchronisatio
n
• Exécuter un algorithme à population
• Migrer d’une machine à l’autre
Agents mobiles
7
Réseau de PCs
Modèle n-cube
individus
Sous-pop1(t)
individus
Sous-pop1(t+1)
individus
Sous-pop1(t+k)
individus
Sous-pop2(t)
individus
Sous-pop2(t+1)
individus
Sous-pop2(t+k)
individus
Sous-popn(t)
individus
Sous-popn(t+1)
individus
Sous-popn(t+k)
…
…
…
… ……Phase de
communication
MAF-DISTA
7
8
UWCOP*
Dépôt: 34, boulevard d’ArbrisselVéhicules
2 camionsCapacité = 9.5 tonnesGrue
Conteneur Enterré (CE)Référence Volume = 4 – 5 m3
Temps de collecte = 6 minutes 1 conteneur par type de déchets Points noirs = conteneurs situés à côté des infrastructures sensibles
* Underground Waste Collection Optimization Problem
9
UWCOP
But :Collecter les conteneurs sur les rues
Objectif :Au moindre coût
Contraintes :Capacité limitée des camions
dépôt
10
5 9
93
3
1.5
1.5
3
5
6
10
10
12
3
33
3
11
12
4
3 3.5
10
12
3
610.5
3
3
1.5 5
dépôt
10
5 9
93
3
1.5
1.5
3
5
6
10
10
12
3
33
3
11
12
4
3 3.5
10
12
3
610.5
3
3
1.5 5
10
UWCOP-Contraintes
Interdiction de tourner
Conteneur enterré
Sens de la circulation
Interdiction de zig-zag
10
11
UWCOP- Formulation
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
12
MAF-DISTA(AGD)
Chaque agent mobile encapsule:Un algorithme génétique
Une sous-population
Un jeu de paramètres
L’agent de synchronisation coordonne les échanges d’individus selon une stratégie.
L’agent de statut surveille le statut de chaque machine (ex. charge CPU).
13
MAF-DISTA(AGD)
Codage des individusLe réseau est codé par un graphe non orienté
Un chromosome est une liste ordonnée de τ tâches (tournée géante)Chaque tâche peut apparaître comme l’une des deux directionsSplit partitionne de manière optimale la tournée géante en tournées faisables
Initialisation de la populationP= ens. des solutions de 3 heuristiques pour le CARP
– (PS, AM, UH)
Permutations aléatoires
14
MAF-DISTA(AGD)
Sélection et croisement Roue de la fortune biaisée
LOX : croisement linéaire ordonné
OX : croisement ordonné
X1 : croisement en un point
Mutation Move : mutation par déplacement
Swap : mutation par échange réciproqueOpérateurs
15
MAF-DISTA
Contrôle du nombre de migrants et la fréquence de migration
Fenêtre dynamique aléatoire de migration: • Le nombre de migrants (taille de la fenêtre) est dynamique et
varie aléatoirement de 1 à 20% de la taille de la sous-population à chaque migration [Kim, 2002].
Sélection et intégration des migrantsAttribution d’un visa à un émigrant s’il remplit les conditions Attribution d’une résidence à un immigrant reçu Règle d’attribution commune :
• fitness ind. * fitness moyen de la sous-pop. d’origine/destination
[kim, 2002] Kim, J. S.: Distributed genetic algorithm with multiple populations …, In ISHPC’02, Japon.
[Eldos, 2006] Eldos, T.: A new migration model for distributed genetic algorithms, In CSC’06, USA.
* Minimisation
16
MAF-DISTA(animations)
Agent
A1A2A3
Fitness moyen
Liste d’agents
Ressources insuffisantes
A1A2
A3
Agent Maître
355320418
A3
Après 200 générations
Migration de l’agent A3
Attribution de visa
Attribution de résidence
17
Simulations
Comparer les performances et les temps de résolution Série 1: algo. génétique parallèle sans échange d’individusSérie 2: algo. génétique distribué avec échange d’individus
Tests effectués sur :23 instances de DeArmon34 instances de Belenguer et Benavent.1 instance (Angers)
Comparaison avec:Recherche tabou de Hertz et al. (Carpet)Algorithme génétique hybride de Lacomme et al. (GA)
Utilisation d’un réseau de 11 PCs 1 agent maître sur une machine (plate-forme JADE)10 agents mobiles chacun sur une machine
18
Simulations
23 problèmes de DeArmon
34 problèmes de Belenguer et Benavent
Écart en % par rapport à la borne inférieure
Nombre de solutions optimales trouvées
Nombre de fois où la meilleure solution est atteinte
CARPET GA PGA PGAGACARPET
0.48 0.82 8.50.32 1.90 1.84
1319 19 15 22 10
1319 21 17 30 20
Expérience 1: Algorithme génétique parallèle sans échange d’individus(PGA)
19
Simulations
23 problèmes de DeArmon
34 problèmes de Belenguer et Benavent
Écart en % par rapport à la borne inférieure
Nombre de solutions optimales trouvées
Nombre de fois où la meilleure solution est atteinte
CARPET GA MAS-DGA GACARPET
0.48 0.19 0.460.32 1.90 1.84
2019 19 15 22 27
2219 21 17 30 32
Expérience 2: Algorithme génétique distribué avec échange individus (MAS-DGA)
MAS-DGA
20
Simulations(UWCOP-Angers)
1 dépôt
2 camions
140 conteneurs (ordures ménagères)
3h282082653004
5h153154587303
3h302102861102
5h193194175301
Parcours + collecte (heures)
Parcours + collecte (minutes)Nombre de CEsTonnage(kg)N° tournée
17h32min1052mns14027670Total
21
Synthèse des tournées
22
Bilan
Nombre de sous-populations Différentes périodes dans la même journée
Impact du Nb de sous-pop / Fitness
Influence de la charge CPU/temps d’exécution
Tem
ps d
’exe
c (m
n)
23
Conclusion
MAF-DISTAUne plate-forme évolutive et efficace
Combine les 2 avantages du parallélisme• Puissance de calcul• Coopération
Hérite de nombreux avantages de JADE• Capacité à simplifier le développement des algorithmes distribués• Interopérabilité - FIPA• Portabilité – JAVA• Réutilisation du code – séparation entre la méthode de résolution
et le problème à résoudre
24
Perspectives
Implémentation d’autres métaheuristiquesColonie de fourmis
Essaims particulaires
Tests sur d’autres problèmes combinatoires :planification et ordonnancement multi-produits, multi-modes avec approvisionnements
Merci de votre attention !
25
Split
Paramètre
d’entrée
Paramètre
de sortie
(Algorithme de Dijkstra)Retour
26
Croisement
Croisement à un point de coupure
Order CrossoverLinear Order Crossover
Retour
27
Mutation
Move Swap
Retour