ima – institut de mathématiques appliquées lisa- laboratoire d’ingénierie des systèmes...

Post on 12-Jan-2016

79 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

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 Presentation

TRANSCRIPT

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*Kamel.belkhelladi@uco.fr

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

top related