• Aucun résultat trouvé

La mémoire dans les algorithmes à colonie de fourmis : applications à l'optimisation combinatoire et à la programmation automatique

N/A
N/A
Protected

Academic year: 2021

Partager "La mémoire dans les algorithmes à colonie de fourmis : applications à l'optimisation combinatoire et à la programmation automatique"

Copied!
165
0
0

Texte intégral

(1)

HAL Id: tel-00008597

https://tel.archives-ouvertes.fr/tel-00008597

Submitted on 28 Feb 2005

HAL is a multi-disciplinary open access

archive for the deposit and dissemination of

sci-entific research documents, whether they are

pub-lished or not. The documents may come from

teaching and research institutions in France or

abroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, est

destinée au dépôt et à la diffusion de documents

scientifiques de niveau recherche, publiés ou non,

émanant des établissements d’enseignement et de

recherche français ou étrangers, des laboratoires

publics ou privés.

La mémoire dans les algorithmes à colonie de fourmis :

applications à l’optimisation combinatoire et à la

programmation automatique

Olivier Roux

To cite this version:

Olivier Roux. La mémoire dans les algorithmes à colonie de fourmis : applications à l’optimisation

combinatoire et à la programmation automatique. Autre [cs.OH]. Université du Littoral Côte d’Opale,

2001. Français. �tel-00008597�

(2)

Universit 

e du Littoral C ^

ote d'Opale

TH  ESE

pour obtenirle grade de Docteur de l'Universit



e du Littoral C ^

ote d'Opale discipline: informatique

presentee etsoutenue publiquement par

Olivier Roux

le 13decembre 2001

La memoire dans les algorithmes a colonie de fourmis : applications a l'optimisation et a la programmation

automatique

Jury :

M. Henri BASSON President MM. Jin-Kao HAO Rapporteurs

El-ghazaliTALBI

MM. Pierre COLLET Examinateurs Jean LOUCHET

M. PhilippePREUX Directeur MM. Cyril FONLUPT Co-directeurs

(3)
(4)
(5)
(6)
(7)
(8)

MERCI!

C'est un petit mot tout simple Mais qui pese lourd

Si mes levres l'expriment avec douceur C'est qu'il prend naissance aufond de mon cur

Ungrand Merci, un petit Merci Peu importe sa taille Il n'a pas de dimension :::

Que ce soitdans lajoie oudans la tristesse! C'est un signe de reconnaissance Qui ne conna^tpas l'indi erence!

Merci!

Unpetit mot qui faitdu bien quand onle prononce Un petit mot gracieux qui calmeet rejouit

Merci! Merci!

Merci de m'avoir permis de te dire, De vous dire :

Merci!

[ Auteur anonyme ]

Voici quelques mercis. Malheureusement je crains d'oublierde citer certaines per-sonnes; j'esperequelles ne m'entiendrontpas grief,etje peuxleurassurer qu'ellesont une place particuliere dans mon cur.

Merci tout particulierement : {



A mes proches pour leur soutien. {



A Christian Alv 

es sans lequel je n'auraisjamaispu envisager cette these. {



APhilippePreuxd'avoiraccepted'^etre mondirecteur de these etpour m'avoir accueilliau sein de son laboratoire.

{ 

A mes encadrants pour cette these :Cyril Fonlupt etDenis Robilliardpour leursmarquesd'amities,leurs conseilsavisesetleuraide toutaulong deces trois annees.

{ Auxrapporteursd'avoirprissurleurtempspourlirecememoire,etauxmembres dujurydel'inter^etdontilsfontpreuveamonegardenassistantamasoutenance. {



A Pierre P

erucaud et a mamaman sans qui ce rapportaurait ressemble a un ecrit du XIVeme siecle (oula phonetique etait de mise).

{ 

A Nicolas

Monmarch

e pour lesconnaissances en dontil m'a fait pro ter. { AuxmembresduLIL pourleurs temoignagesd'amitiesetleurs encouragements:

(9)

{ A tous ceux dont j'ai fait la connaissance dans le cadre des mes enseignements pour leurs conseils etleur aide :Karine Silini, DavidDuvivier, Patrick Mar-tin, :::

{ 

A DominiqueVerhaghe sans qui mapetite linuxette n'aurait pas survecu aux mauvaistraitementsque je luiai faitsubir tout au long de ces annees.

{ 

A tous les enseignants qui au long de mon cursus ont su eveiller et conforter mon inter^et pour linformatique, en particulier a M. Durannel pour m'avoir fait decouvrir le TRS-80 et a Cina Motamed pour avoir su me convaincre de reprendre mon parcours universitaire, :::

{ En n merci aux personnes qui liront ces quelques pages, re et de trois annees de recherche, ou les fourmis y sont dotees de capacites hors du commun et se meuvent dans un univers cybernetique remplide valeurs.

(10)

Table des matieres

1 Introduction 13

I Les fourmis, l'informatique et la memoire 17

2 Les fourmis, insectes de communication 19

2.1 Introduction . . . 19 2.2 Unpeu d'anatomie . . . 20 2.3 Lacommunication . . . 20 2.3.1 La communication sonore . . . 21 2.3.2 La communication tactile. . . 21 2.3.3 La communication visuelle . . . 21 2.3.4 La communication chimique . . . 22 2.4 Entomologiede la fourmi. . . 22

2.4.1 L'habitatdes fourmis . . . 23

2.4.2 La viesociale des fourmis . . . 23

2.5 Lafourmiinsecte eusocial. . . 23

2.5.1 De nitionde l'eusociabilite. . . 24

2.5.2 Qu'est ce que laparentele? . . . 24

2.5.3 Autres societeseusociales . . . 25

2.5.4 L'eusociabilite,une classi cationamendee. . . 25

2.6 Quelquesexemples de resolutionde problemes complexes . . . 25

2.6.1 La formationd'un nid vegetal . . . 25

2.6.2 La recherche de nourriture oufourragement . . . 26

2.6.3 Stigmergie :de nition . . . 27

2.7 Conclusion . . . 28

3 Les fourmis arti cielles 29 3.1 Lafourminumerique . . . 29

3.2 Lafourmivirtuelle vue commeun agent . . . 29

3.3 Lemodelede cooperation . . . 32

3.4 Lesdi erentsdomaines d'application . . . 33

3.5 Lesfourmis arti cielles pour larecherche operationnelle . . . 33

3.5.1 Levoyageur de commerce . . . 34

3.5.2 Probleme d'ordonnancement sequentiel . . . 42

(11)

2 TABLE DES MATIERES

3.5.5 Le probleme de routage dans un reseau non commute . . . 45

3.5.6 Le probleme d'optimisationnumerique . . . 47

3.5.7 Un apercu des di erentsdomaines d'application des OCF . . . . 50

3.6 Lafourmi arti cielleet laprogrammationautomatique . . . 50

3.7 Conclusion . . . 50

4 Les fourmis face aux autres methodes 53 4.1 Introduction . . . 53

4.2 Lesautres methodes \naturelles"disponibles . . . 53

4.2.1 Lesalgorithmes genetiques . . . 54

4.2.2 Lesautres methodes guidees . . . 59

4.3 Commentles fourmis utilisent-elles leur memoire? . . . 65

4.3.1 Emergence d'un modelefederateur: AMP . . . 65

4.3.2 Approfondissement du modeleet adjonctionde nouveaux criteres 66 4.3.3 Quelques heuristiques decritessous laformeetendue des AMP . 67 4.3.4 Lesdi erents types d'utilisation de la memoire . . . 69

4.3.5 La diÆculte d'une comparaison . . . 71

4.3.6 La diÆculte d'une classi cation . . . 71

4.4 Conclusion . . . 71

II Les fourmis pour le PAQ 73 5 Le probleme d'a ectation quadratique 75 5.1 Principe . . . 75

5.2 Laversion simpli ee . . . 76

5.2.1 L'exemple de l'implantation d'usines . . . 77

5.2.2 Un exemplepedagogique . . . 77

5.2.3 Instances du PAQ. . . 78

5.3 Methode de resolutionpour lePAQ . . . 79

5.3.1 Lesheuristiques pour le PAQ . . . 79

5.3.2 LesOCF pour lePAQ . . . 79

5.3.3 Ant-System pour lePAQ . . . 81

5.3.4 L'algorithme ANTSpour lePAQ . . . 83

5.3.5 MMAS pour le PAQ . . . 83

5.3.6 L'algorithme FANT . . . 84

5.3.7 HAS-QAP . . . 85

5.4 Notre methode hybride : ANTabu . . . 85

5.4.1 Leselementscles de ANTabu . . . 86

5.4.2 Exemple de deroulementpour ANTabu . . . 89

5.4.3 Implantationparallele . . . 90

5.5 Conclusion . . . 93

6 Etude experimentale d'ANTabu 95 6.1 Introduction . . . 95

(12)

6.2.2 Validation du parametragedu systeme de fourmis . . . 96

6.3 Cooperation contre forcebrute . . . 101

6.4 Comparaisonsavec ANTabu . . . 102

6.4.1 Comparaisonavec HAS-QAP . . . 102

6.4.2 ANTabu faceaux autres methodes . . . 102

6.5 Conclusion . . . 103

III Les fourmis et la programmation automatique 107 7 La programmation automatique 109 7.1 Introduction . . . 109

7.2 Laprogrammationautomatique . . . 110

7.3 Laprogrammationgenetique . . . 111

7.4 Ameliorationsactuelles de la PG . . . 114

7.5 L'algorithmede programmationpar fourmis (AP) . . . 115

7.5.1 Ledetail de notrealgorithme . . . 116

7.5.2 Exemple de deroulement pour AP . . . 119

7.6 Conclusion . . . 122

8 Resultats d'Ant Programming 125 8.1 Lesproblemes . . . 125

8.2 Parametrage . . . 128

8.3 Comparaisonavec la PG . . . 128

8.4 Extensions . . . 130

8.4.1 Lagenerationpartielle des individus . . . 130

8.4.2 Lagestion des constantes . . . 132

8.5 Conclusion . . . 133

IV Les fourmis et apres? 135

(13)
(14)

Liste des tableaux

3.1 Equationsrelativesaux mouvementsdes fourmis pourles di erentsalgorithmes 36 3.2 Equationsrelativesa lamise ajour delapheromonepourles di erentsalgorithmes 37 3.3 Comparaisondel'AS(Ant-cycle)avecd'autresalgorithmessurl'instancedePVC

Oliver30. . . 38

3.4 Comparaisonde Ant-Qavecd'autre methodes classiquespour cinqinstance de 50villes. Les valeurs presentees sontles erreursenpourcentage . . . 39

3.5 comparaison de AntQ avec des methode exactes pour des instance de PVC asymetrique . . . 40

3.6 Comparaison entre AS,ACSet MMAS pourry48p . . . 40

3.7 Comparaison d'AS rank avec AS et une autre variante proposee dans le m^eme article, on trouveegalement les resultatsobtenus avec des methodes classiques. Les resultatssont presentespour desinstances detaillesdi erentes. . . 41

3.8 Comparaisonsurdesinstancessymetriquesetasymetriquesdel'ACS-3optavecun algorithme genetique (ATSP), lesresultatsetant obtenus pourdix executions [64 ]. 42 3.9 AlgorithmesutilisantlemodeledesOCFpourdi erentsproblemesd'optimisation combinatoire . . . 51

4.1 Utilisationqui est faitedela memoire pour di erentesheuristiques . . . 70

5.1 Methodede recherche locale utilisee parles OCF . . . 81

5.2 Caracteristiques desdi erentsOCF quiont ete appliques auPAQ. . . 82

6.1 Resultatsde l'ANTabu sur de petitesinstances etde courtes executions (10 iterations) . . . 97

6.2 Comparaisonentre une diversi cation aleatoireet notrediversi cation . 98 6.3 Performance de ANTabu sur des instances irregulieres . . . 99

6.4 Comparaisondesdeuxversionsdel'applicationcomportantchacuneunedesdeux modi cations avec une version qui en est depourvue. Seules sont presentees les statistiquestrouveeslorsde lacomparaison . . . 99

6.5 Comparaison desresultatsdu PATS etdel'ANTabu.Les meilleursresultatssont engras.. . . 101

6.6 Comparaison desresultatsdu HAS-QAPet del'ANTabu. Les meilleursresultats sontengras. . . 103 6.7 Comparaisondes resultats pour des instances regulieres avec une duree

(15)

6.8 Comparaisondesresultatspourdesinstancesirregulieresavecunedureedecalcul identique.Lesmeilleursresultatssontencaracteresgras.Lesvaleursrepresentent lesecarts moyensavec lameilleure solution connue, obtenuspour 10 executions

etsont exprimesenpourcentage. . . 105

7.1 Tableau donnant pour quelques problemes classiques [126] la fonction de calcul delaqualited'un programme . . . 111

7.2 Dureed'une revolutionP (en annees terrestres) enfonction deladistance Ade laplanete au soleil(la distanceest exprimee enfonction dela distanceterre/soleil)112 7.3 Valeurs d'apprentissage del'exemple . . . 119

8.1 Ensemble desfonctionset desterminaux . . . 126

8.2 Parametrage del'algorithme delaPG . . . 129

8.3 Resultats :comparaison deAP aveclaPG . . . 129

(16)

Table des gures

2.1 Schema anatomique d'une fourmi . . . 20 2.2 Dep^otdelapheromoneparunefourmi :lapheromone estdeposee sur lesol par

lafourmiau moyendeson aiguillon . . . 22 2.3 Laparentele:Lesvaleurssurles echesindiquentlefacteurdesimilitudegenetique

entre les di erents membres d'une coloniede fourmis.Rdesigne la reine,O une travailleuse,F unefuturereine,Munm^ale lsdelareineet Role m^alequis'est accouple aveclareine . . . 24 2.4 Cooperationdefourmistisserandespourlaconstructiondeleursnidsenfeuilles:

pourlaconstruction,ilestnecessairederapprocherlesfeuilles;sileurecartement est plus faible que la taille d'une fourmi, elles attrapent les deux extremites et les rapprochent (premiere image de a et c); si elles sont plus eloignees elles construisent des ponts (b). Les extremites sont ensuite collees avec la soie des larves(seconde image deaet d) . . . 26 2.5 L'experience dudoublepont:a) l'environnement del'experience, b)les graphes

donnentladistributiondespourcentages deselectiondelabranchelapluscourte pourunjeud'experiences.Labrancheduhautestrfoispluslonguequel'autre.Le graphedegauche(14experiences) donnelarepartitionlorsquelesdeuxbranches sont presentees simultanement. Pour le graphe de droite (14 experiences), la branchela plus courte n'est presentee que 30 minutes apres l'autre: labranche lapluslongue est toujours exploitee a causedudep^ot depheromone initial. . . 27 3.1 Comportement d'unefourmi naturellelorsdela recherchedenourriture (dans le

casdes fourmis arti cielles,iln'y apasobligatoirementdephase derecrutement.) 30 3.2 Exempled'une instance creee de92 villes, accompagnee desa solution . . . 34 3.3 Lamethode d'optimisation locale 3-opt consiste en l'echange de trois arcs : on

choisitd'abord unpremier arc, puis unseconddetelle faconquesi l'onechange les extremites de ces arcs la longueur du tour soit diminuee : dans ce cas on reitere cette operation enchoisissant untroisieme arc delam^eme maniere . . . 43 3.4 Resultatsobtenus pourde petitesinstancesavec HAS-SOPfacea ceux d'autres

algorithmes. Les graphiques representent le pourcentage d'erreur par rapport a lameilleure solutionconnueenfonctiondutempsd'execution. Lesresultatssont lesmoyennes obtenuessur 5 executions de120 secondes . . . 43 3.5 ResultatsobtenuspourdegrandesinstancesavecHAS-SOPfaceaceuxd'autres

algorithmes. Les graphiques representent le pourcentage d'erreur par rapport a lameilleure solutionconnueenfonctiondutempsd'execution. Lesresultatssont lesmoyennes obtenuessur 5 executions de600 secondes. . . 44

(17)

3.7 Exemple d'un probleme de routage : Quand une fourmi arrive sur un nud du graphe, elle va choisirle nud suivanten se basantsur les valeursplaceesdans latable deroutage.Icielle vientdunud 5et ellesedirige vesle nud2,c'est donc les valeursde la colonne 2 quiseront utilisees et c'est le nud 3 quiaura leplus dechance d'^etre choisicarilala plusfortevaleur. . . 47 3.8 ResultatsobtenusavecAntNet:Pourlacomparaison,onsimulelasaturationd'un

reseau pendant120 secondes,400 secondes apresledebutdutest.Le graphique duhaut donnele debit(le pluslarge est le meilleur)tandis que le graphiquedu basdonnele retardmoyendepassant les 5 secondes(le plus basest lemeilleur). AntNet est competitif avec les meilleurs algorithmes pour le debit et obtient les meilleuresperformancespour le retard moyen (seul deamon est meilleur, maisil s'agitd'unmodele theorique) . . . 48 3.9 Ledeplacementd'une fourmipeut^etre missous laformed'un vecteur.. . . 48 3.10 Les departs du nid : Le nombre de vecteurs (deplacement des fourmis) partant

duniddoit ^etre xe . . . 49 4.1 Schema generaldefonctionnement d'unAG . . . 56 4.2 Larecombinaison un point :Les deux chromosomes vont ^etre coupesau m^eme

endroit,les elements ainsiformesvont^etreechangespour produiredenouveaux individus . . . 57 4.3 La recombinaison deux points : Les deux chromosomes sont coupes en trois

segments, le segment du milieu est alors echange pour obtenir les nouveaux individus. . . 57 4.4 Lamutation :un gene duchromosome est selectionne, il est alorsremplace par

unnouveau choisialeatoirement . . . 58 4.5 L'in uencedelatemperaturepourlerecuit:danslepremierschemalatemperature

est elevee (large domaine de recherche), ce qui permeta l'algorithme de facile-ment sortir d'une vallee contenant un optimum local pour se diriger vers de meilleurs sites. Dans le second cas, la temperature est plus faible (espace de rechercheplusrestreint) ce quibloquelamethodeau niveaudecet optimumlocal. 61 4.6 Larecherche tabou: lors dupassage de voisin envoisin les retours en arriere et

les bouclessont interditsparl'utilisationde lalistetabou. . . 62 5.1 Schema representant l'implantation d'usines . . . 77 5.2 Schema representant un exempledePAQ . . . 78 5.3 Lechoixdelaprochainea ectationdelafourmi:arriveeenposition1,ellechoisit

l'objet a a ecter, puis suivantles valeursde pheromone () et heuristiques (), elle faitsonchoix entre les troispositions disponibles (2;3;4) . . . 80 5.4 Exemple d'evolutionde la qualite avec une methode pour le PAQ adoptant une

strategie demodi cationdessolutions. k

indiquelasolution delafourmik, k m est lasolution modi ee et 

k o

celleobtenue apreslarecherche locale. . . 87 5.5 Echanged'informations pour l'ANTabu. . . 92 5.6 Modele parallele deANTabu. . . 93 6.1 Illustrationdelanotion destructured'une instance parforme desonpaysage . 96 6.2 Correlationsentre les performancesde ANTabuet lataille, le otdedominance

(18)

7.1 Schema d'evolutiondela programmationgenetique . . . 110

7.2 Arbregenere parPG al'initialisationcorrespondant aA p A p A . . . 112

7.3 Recombinaison de deux programmes parents et generation de deux nouveaux programmes ls. Ici la recombinaison se realise par l'echange d'un sous-arbre entre lesparents, le pointdecoupure est indique paruneclairnoir . . . 113

7.4 Mutation d'un programme, il s'agit de remplacer un sous-arbre par un nouvel arbre, genere aleatoirement . . . 113

7.5 Representation de trois solutions obtenues avec PG et des valeurs du jeu d'ap-prentissage . . . 114

7.6 E etde larecombinaison. . . 115

7.7 Representation de laprogrammationgenetique fortement typee . . . . 116

7.8 Arbre de pheromone : Dans chaque nud est placee la quantite de pheromone associee achaquefonction outerminal possible. . . 116

7.9 Selectiond'un nudlorsdela generation d'un programme parAP.Cetelement est choisi gr^ace a une methode de roulette, c'est-a-dire que la selection se fait avecuneprobabiliteproportionnelle autauxdepheromoneassocie auxdi erents composantspossiblescorrespondant alapositionde ce nud. . . 117

7.10 L'arbrede pheromone apresinitialisation . . . 120

7.11 L'arbrede pheromone apresinitialisation . . . 120

7.12 L'arbrede pheromone apreslapremiere iteration . . . 121

7.13 L'arbredepheromoneapresniterations:laformuleduvolumeyappara^t(cercle), onpeutegalementtrouver une autrerepresentation decette formule (souligne). 122 8.1 Multiplexeur11 bitsaveccomme entree 11001000000 et comme sortie1 . . . . 125

8.2 Probleme deregression :f(x)=x 4 +x 3 +x 2 +x . . . 126

8.3 Probleme deregression :f(x)=x 3 e x cos(x)sin(x)(sin 2 (x)cos(x) 1) 127 8.4 Representation duprobleme des deuxspiralesentrelacees. . . 127

8.5 Representation du\SantaFe TrailProblem" . . . 128

8.6 f(x) = x 3 e x cos(x)sin(x)(sin 2 (x)cos(x) 1) ainsi que la meilleure solutiontrouvee parAP . . . 130

8.7 Generation d'unsous-arbreparutilisationdela pheromone . . . 131

8.8 Choix des constantes. On peut choisir de generer une nouvelle constante (la case?)ouselectionneravecunecertaineprobabilite(proportionnelleasaqualite) unedes quatredeja utilisee . . . 132

(19)
(20)

Liste des algorithmes

3.1 L'algorithmegeneral des OCF.. . . 34

3.2 L'algorithmeAS-TSP. . . 38

3.3 L'algorithmeVAW. . . 44

3.4 L'algorithmed'optimisationnumerique. . . 49

4.1 Algorithmesimpli ed'un Algorithmegenetique. . . 58

4.2 Algorithmesimpli edu recuit simule. . . 60

4.3 Algorithmetabou. . . 63

4.4 L'apprentissage progressifbasesur lapopulation. . . 64

4.5 Forme generale d'un AMP. . . 66

5.1 Algorithmesimpli ede l'ANTabu.. . . 86

5.2 Laformela plus simple de la recherche tabou. . . 87

(21)
(22)

Chapitre 1

Introduction

Le travail des chercheurs a souvent ete compare celui d'une fourmi, laborieuse, minutieuse,quiuvre pour lebien dugroupe.Lerapportentre cet insecteetmathese nes'arr^etepas la.Durantces quelquesannees dethese,j'aitravaillesurleurs consurs virtuelles, travailleuses acharnees, ayant des capacites surprenantes pour la resolution de problemes,comme nous leverrons dans ce memoire.

M.Dorigo aeteparmilespremiersautiliserlesfourmisen informatique.Comme le laisse entendre la petite histoire, l'idee lui en serait venue apres avoir assiste a un seminaire:::C'est de l'emerveillementfacea ces insectesdotes de capacitescollectives impressionnantes qu'il decida de simuler leurs homologues cybernetiques a n de les tester dans un environnement numerique ou leur cooperationpermettrait de resoudre des problemes complexes.

Ces insectes reussissenten e etae ectuernaturellementdes t^aches trescomplexes 

a travers une cooperation inconsciente. Ce mecanisme decrit par

Grass

e [105] est connu sous le terme de stigmergie. Elle permet aux fourmis, gr^ace a une communi-cation indirecte utilisant un marqueur chimique appele pheromone, de collaborer a la resolutionde problemes tels que laconstructionde nids, l'elevage des larvesouencore larecolte de nourriture.

Un nouveau domaine d'etude est apparu, issu de la collaboration des laboratoires d'ethologieetdesinformaticiensdansleurtentatived'appliquerlemodeledecooperation des fourmis a la resolutionde problemes complexes. Ce nouveau domaineetudie l'in-telligence enessaim etlesalgorithmesaessaim.Lesagentsde ces systemes,en general incapablesdetoutapprentissageindividuel,reussissentaresoudredes problemesardus par l'intermediaire d'un systeme memorielcollectif.

Pour certains, dont Arkin [2], ces etudes s'integrent dans ce que l'on appelle la biomimetique, c'est-a-dire dans les sciences qui s'inspirent du vivant. Elles reposent sur la constatation que les animaux et les insectes n'utilisent pas de connaissances complexes, de materiaux exotiques oud'enormes quantites d'energie auniveau indivi-duel pour resoudre les problemes auxquels ilssont confrontes. Par des comportements simples et des interactions limitees, on assiste a l'emergence de comportements et de modeles d'auto-organisation.

Que l'on parle d'intelligence a essaim oude mecanismes biomimetiques, le modele des fourmis est riche en applications potentielles. Les modes de cooperation inspires de ces comportements en essaim ont ete appliques avec succes a de nombreux

(23)

do-graphe, ::: ou encore des problemes dynamiques comme ceux du routage dans des reseauxde communication.Laprincipaleapplicationest donccelle desmethodes d'op-timisation a base de colonie de fourmis que l'on nommera OCF par la suite dans ce memoire.Comme le prometla biomimetique, les principes misen uvre sont simples et lessolutionsemergent de la collaborationde l'essaim de fourmis.

Dans lapremiere partie,nous observerons latransitionentre la fourminaturelleet sa consur arti cielle, cette derniereetantparticulierement decrite pour les OCF. Ce modelesera place parmi lesheuristiques existantes.

Lechapitre2dumemoireaborderalapresentationdelafourminaturelle.Ilpresentera son caractere eusocial (presence de pouponnieres, c^otoiement entre les generations et specialisation des individus). Cette approche nous permettra de voir quelles sont les speci cites de lafourminaturelleet introduira son double numerique presente dans le chapitre suivant.

Lechapitre3seral'occasiondepresentersuccinctementlesdi erentsdomaines d'ap-plicationdesOCFetlesdi erentesvariantesquionteteproposees.Enparticulier,nous nous interesserons auxproblemes classiques du voyageur de commerce, d'ordonnance-ment,d'optimisationnumerique, de routagede reseaux, d'a ectation quadratique, ::: Les OCF sont-ilssi di erents des autres methodes d'optimisation combinatoireou ne sont-ils qu'uneevolution vers un type de methode plus robuste? Nousavons choisi commeapprochedecomparaisonleconceptd'utilisationdelamemoire.Cetteapproche nous donnel'occasionde proposerune taxinomiequipermetde classerlesOCFparmi lesmethodes existantes. Cette taxinomiesera etudiee et discutee auchapitre4.

Il arrive frequemment que conjointement aux OCF soit introduite une methode de recherche locale pour ameliorer les performances du modele. On peut s'interroger sur l'in uence de la recherche locale par rapport a la cooperation des fourmis. C'est dans ce cadre quenous avons proposeANTabu, une hybridation entre un OCFet une methodederecherche localerobuste(larecherchetabou)pourleproblemed'a ectation quadratique, ce probleme etant connu comme tres complexe a resoudre. Cette etude fera l'objet de la seconde partie de ce memoire. Dans le chapitre 5, nous decrirons la formalisation du PAQ et les OCF qui lui ontete appliquees. Nous examinerons de maniere nelesin uencesrespectivesdumecanismede collaborationdes fourmisetde la recherche locale dans le chapitre 6, ounous compareronsegalementles resultats de ANTabu avec d'autres heuristiques.

La troisieme partie de cette these presente une nouvelle application du modele de cooperation des fourmis a la programmationautomatique. Il s'agit ici de voir si la cooperationentre lesfourmispeutfaireemerger de bonnessolutionspour lageneration automatiquede programmes.Ennous basantsur lamemoirecollectiverepresentee par la pheromone, nous proposons une methode de programmationautomatique nommee Ant Programming (AP). La fourmi n'est guidee, au cours de la construction de sa solution,quepar l'informationlaissee par ses consurssous laformede \pheromone", la stigmergie faisant emerger la forme des bonnes solutions par les apports successifs des fourmis. Notre algorithme est presente et detaille, apres une rapide description de laprogrammationautomatiqueet plus precisementde laprogrammationgenetique dans le chapitre7.

(24)



a l'heureactuelle.Ces comparaisonssont presentees dans le chapitre 8.

C'est tout naturellement que ce memoire se terminera par le bilan des resultats obtenus etpar lesperspectives qui decoulent de ce travail de these.

(25)
(26)

Premiere partie

Les fourmis, l'informatique et la

(27)
(28)

Chapitre 2

Les fourmis, insectes de

communication

Dans ce chapitre, nous allons aborder succinctement quelques aspects du comportement propre aux fourmis biologiques. Un bref survol de leur anatomie et de leur mode de vie nous conduira a nous attarder sur leurs moyens de communication, leur sociabilite qui est des plus 

evoluee ainsiquesurleurscapacitescollectives.L'etudedecesinsectesa permisuneadaptationdeleurcomportement al'informatiqueenvuede la creationd'unmodelede fourmi arti ciellepermettantson utilisation pour l'optimisation combinatoire. C'est ce modele que nous traiterons dans lechapitre suivant.

2.1 Introduction

Leterme"fourmi"est lapierreangulairedecettethese.Derrierecemotsepro lent plusieurs domaines : celui de la biologie ou plus precisement de la myrmecologie qui est l'etude du comportementnaturel des fourmis, celui de la robotique qui utilise leur comportement pour concevoir des nouvelles machines, et celui de l'informatique ou ces creatures sont modelisees pour la simulation ou la creation d'algorithmes. C'est cette derniere application qui nous interesse dans ce memoire. Maiscomment aborder ce sujet sans nous attarder sur le modele naturel, donc sur ces fourmis? Dans ce chapitre, nous allonsetudier quelques-unes des caracteristiquesdes fourmis, celles qui nous semblent les plus pertinentes pour la comprehension du reste de ce document (a aucun moment les descriptions ne se veulent exhaustives). Les informations qui sont donnees proviennent principalement de deux ouvrages qui sont Voyage chez les fourmis de

H

olldobler et Swarm intelligence from natural to arti cial systems de Bonabeau,Dorigo etTheraulaz.Nousallons de nirrapidementl'anatomiede la

(29)

Fig. 2.1 { Schemaanatomique d'une fourmi

2.2 Un peu d'anatomie

Latailledes fourmis(1mm a3cm)varie selon l'espece. Onestime que9500especes sont connues a l'heure actuelle, et que le nombre total est le double. Leur anatomie (Fig.2.1) sedecompose en trois segments (t^ete, thorax etabdomen), bien di erencies, quisontunis entre euxpard'etroitspedoncules.Leurt^eteportedeuxantennesformees de plusieurs segments articules. Leurs pattes, au nombre de six, sont attachees a leur thorax. La possession des ailes est liee a la division en castes; seuls les m^ales et les femelles fecondes, ou reines, en sont munis. Il s'agit d'un reliquat herite d'un anc^etre commun avec les abeilles. De nombreuses especes sont dotees d'un aiguillon plus ou moinsdeveloppe al'extremitede leur abdomen.Onpeutobserverquecet aiguillonest alimente par deux glandes :

{ une glande acide, venimeuse, dorsale qui debouche dans un reservoir situe a la base de l'aiguillon;

{ uneglandealcalineappeleeglandedeDufour,plusdiscrete,ventrale,quidebouche 

ala base de l'appareilvulnerant.

Le composechimiquevolatilsecretepar cette glande,lorsqu'il est depose sur lesol par un individu, forme une trace odorante qui a pour but d'inciter ses congeneres a emprunterlem^emechemin.Lorsqu'unefourmisetrouvefaceaunesourcedenourriture importante,elleen decoupeune partiequ'elle emporte, puissecreteune traceodorante qu'elle depose sur le chemin menant a la fourmiliere. Le compose depose sur le sol a pour but d'inciter les autres individus a se diriger vers la source de nourriture. Cette substance, quiest unoutil de communication chez lesfourmis,est appeleepheromone. Ce mecanisme leur permet de resoudre des t^aches complexes comme nous le verrons par la suite.

2.3 La communication

(30)

so-oumoins developpes. Ainsi,sidans certaines especes lavue est faible etm^eme parfois nulle, le toucher, l'odorat et le go^ut sont tres developpes. Ils permettent, entre autres proprietes, auxindividus d'une m^eme fourmiliere de se reconna^tre mutuellement.

2.3.1 La communication sonore

Elle est obtenue par les frottements d'un mince grattoir transversal situe sous la taille, contre un plateau de nes cr^etes paralleles, place sur l'abdomen.

Elle est utilisee selon lescirconstances eten fonction de l'espece :

{ commesignal de detresse: emis par l'ouvriereen danger,ilse propage par lesol etil est recu par lespattes de l'insecte, veritablesdetecteurs ultra-sensibles aux vibrationsdu sol;

{ commesignaldequalitedel'alimentation:lesfourmisrecolteuses,diÆcilesquant auxchoix des vegetaux qu'ellesselectionnent,emettentune vibrationd'intensite variable,selon lavaleur nutritive de la nourriture reperee;

{ comme signal de renforcement : l'aphenogaster ou fourmidu desert crisse pour obtenirl'aidedesautresindividuslorsqu'elleatrouveunalimentdegrandetaille; { comme signal de danger pour la fourmiliere : certaines especes se frappent la t^etesurune matieredure,permettantainsilapropagationd'unmessaged'alerte. D'autres especes se servent de leur abdomende lam^eme facon.

2.3.2 La communication tactile.

Chezlesfourmis,certainsmessagessimplessonttransmispardescontactsphysiques tels quelesattouchements, lestapotementsouleseeurements.Ce typede communi-cationsest realiseengrandemajoritepar l'intermediairedesantennes. Parexemple,la fourmitisserande, quiutilisedes larvesproductrices desoie pour assembler des feuilles entre elles, fait vibrer l'extremitede ses antennes une dizaine de fois autour de la t^ete de la larve a n qu'elle declenche cette secretion. Neanmoins, la communication par l'intermediairedes pattes est aussi tresfrequente.

2.3.3 La communication visuelle

Tresutiliseeaustadeprimaire,ellen'estpratiqueequeparcertainesespecesetpour des situations bien particulieres. Lesexperiences menees sur l'espece mediterraneenne Cataglyphis cursor par les chercheurs du laboratoire d'ethologie et de psychologie animale (CNRS-Universite Paul-Sabatier, Toulouse) et publiees dans la revue Nature (24/06/99)[189]ont donnedesresultatsstupe ants.Leur objectif: entra^ner des four-misaretourneraunidparlecheminlepluscourt,entraversantun labyrintheconstitue de quatre bo^tes successives. Sur chacune des bo^tes, deux issues, chacune surmontee d'un dessin noir ne di erant de l'autre que par sa forme geometrique (rond/croix, etoile/carre, rectangle/triangle,losange/ovale). De ces deux issues, une seule, conduit 

a la boite suivante. Orles fourmis, apres quelques seances d'entra^nement, choisissent sanssetromper,sansm^emehesiter,etdanslebonordre,lasequencedesreperesvisuels

(31)

Fig. 2.2{ Dep^ot de lapheromone parune fourmi :la pheromone est deposee sur le sol parla fourmi aumoyendeson aiguillon

2.3.4 La communication chimique

Les moyens de communication utilisespar lesfourmis sontdonc nombreux. T oute-foisleureÆcaciteest insigni antecompareeacelledelacommunicationchimique.Elle se fait gr^ace a des pheromones (Fig. 2.2), que seules les fourmis peuvent sentir. C'est gr^aceauxantennesquelesodeurssontdistinguees.Cespheromonessontdes subtances olfactives et volatiles : il s'agit en fait de composes aromatiques. Les fourmis ont un odorattresdeveloppecomparativemental'homme,cequileurpermetdel'utiliserpour communiquer.

Lapheromonedeposeeparlafourmiestuneveritable"carted'identite",ellecontient 

a la fois les informations sur l'espece, sur la societe, sur la caste et sur le stade de developpement des individus.

C'estunsystemedecommunicationtresperfectionnequipermetalafourmi d'aver-tirses congeneres d'un dangerou de la localisationde la nourriture.

La pheromone entre en jeu egalement pour d'autres types de messages. La reine, par secretion de ces substances, peut inhiber la ponte chez ses lles. De m^eme chez lesm^ales,la castedes soldats pourra al'aidedu m^eme procedecontr^oler lenombre de larves destinees a ^etre soldats. Ces substances permettentdonc d'obtenir un veritable equilibre social au sein de la fourmiliere. Toutefois d'autres formes de communica-tions chimiques peuvent intervenir, comme les dechets fecaux, porteurs d'une odeur particuliere, caracteristique a chaque colonie. Ellespermettent la delimitationde leur territoirechez lestisserandes.

Les fourmis utilisent doncdes messages chimiques dontchacunest porteur de plu-sieurs signi cations,parmi lesquelles onpeut distinguer :

{ l'attraction; { lerecrutement; { l'alerte;

{ l'identi cationdes autres castes;

{ lareconnaissance des di erentsstades de developpement; { ladiscrimination entre fourmisetrangeres etcongeneres.

2.4 Entomologie de la fourmi

La fourmiest un insecte social de la superfamille des Formicodes et appartient a l'ordredes hymenopterescommelesabeillesetlesgu^epes. Ellevitencoloniesdans des

(32)

2.4.1 L'habitat des fourmis

Chez beaucoup d'especes, les fourmilieres sont constituees de chambres et de ga-leries creusees sous des souches, des pierres ou a m^eme le sol. Ces structures peuvent s'etendresur plusieursmetresenprofondeur. Pour d'autresespeces, commelesfourmis tisserandes, le nid est fait a base de feuilles. Chezles fourmis rousses des bois,ce sera un amas d'aiguilles de pin et autres debris vegetaux places a lasurface du sol etdont lahauteur varie en fonction du climat. Plus leclimat est rude, plus led^ome est eleve, jusqu'aatteindre1mde haut.Al'interieur,setrouveuneveritablecitetresorganisee : les ouvrieres d'entretien nettoient les galeries sans rel^ache et les issues sont ouvertes regulierement pour assurer l'aeration.

2.4.2 La vie sociale des fourmis

Les fourmis sont apparues sur terre il y a 100 millions d'annees, contre 90000 ans pour l'homo sapiens. Le nombre d'individus par colonie est tres variable. Chez les magnansonpeutcompter jusqu'a 20millionsd'individus, contre guereplus de 20chez d'autres especes. Chaque colonie est divisee en castes, constituees d'individus qui ont des r^oles et des aspects di erents. C'est aussi le cas pour d'autres insectes sociaux commeles termites,les abeilles etles gu^epes. On y trouve :

{ lacaste des reproducteurs qui comprend des femelles (reines) etdes m^ales; { la caste des ouvrieres specialisees, constituee de nombreuses petites femelles

steriles, qui ont comme r^ole, soit la recherche de la nourriture, soitla construc-tion et la reparation du nid, soit le nettoyage, soit les soins des larves, soit en-core comme chez les fourmis charpentieres, n'importe quelle activite en cas de necessite;

{ la caste des soldats, specialisee dans l'attaque et la defense de la communaute, presente chez diverses fourmis commeles magnansd'Afrique.

Les fourmis sont les insectes les plus repandus sur la surface de la terre : elles sontpresentes des steppesde l'Ouralen passant parla for^etamazoniennejusque dans des deserts. On ne trouve pas un kilometre carre depourvu de ces insectes. Elles ne pesent qu'un millionieme de notre poids, mais si nous considerons leur masse totale, elles peuvent nous disputer le titre d'organisme social predominant a la surface du sol.L'entomologiste britannique C.B.Williams a tentede donner quelques chi res : il estime le nombre d'insectes a 10

18

, dont les fourmis representent environ 1%, ce qui donne un poids de fourmis du m^eme ordre de grandeur que celui de l'humanite. Lesespeces hautement socialesd'insectes sont aunombre de 13500 sur 750000especes d'insectes repertoriees, et parmices especes sociales 9500 sont des fourmis.

2.5 La fourmi insecte eusocial.

Le caractere le plus connudes fourmisest leur eusociabilite(mode de viesocialele plus evolue). Il est a noter que \vie sociale" n'est pas synonyme de \vie de groupe". En e et, de nombreux stades separent l'animal solitaire de l'animal eusocial : il y a l'animal gregaire (par l'interattraction entre congeneres), subsocial (par l'apparition

(33)

Ro

O

F/O

M

R

1/2

3/4

1/2

1/2

1

1/2

1/4

1/2

1

Fig. 2.3 { Laparentele :Les valeurssur les eches indiquent lefacteur desimilitude genetique entre les di erents membres d'une colonie de fourmis. R designe la reine, O une travailleuse, F une futurereine,M unm^ale lsde lareine etRole m^ale quis'est accouple aveclareine

des jeunes, mais ou chaque femelle/m^ale travaille pour soi-m^eme), communal (ou les femelles/m^ales cooperent auxsoins des jeunes).

2.5.1 De nition de l'eusociabilite

L'eusociabilite, beaucoup etudiee par le sociobiologiste E. O. Wilson[238, 117, 118], sede nit par certains criteres stricts :

{ une cooperationdans le soin aux jeunes;

{ lechevauchement des generations (les descendants aident leurs parents);

{ des individusspecialisesdanslareproduction,tandisqued'autres, plusoumoins steriles (de facon de nitive ou temporaire), se chargent des t^aches communau-taires en se lesrepartissant (polyethisme).

Lesecretde l'altruismede certainsmembres delasocietequisacri entleursexualitea unpetitnombred'individus,chargesdelesrepresenter,residedansleurapparentement, et est d^ua laselection de la parentele.

2.5.2 Qu'est ce que la parentele?

Une de nitionsuccincte de ce principeaet eintroduite par Darwin dans De l'ori-ginedesespeces[46],ouvrageo rantlesbasesdu modeledelaparentele( g.2.3).Pour Darwin, la selection ne se fait pas pour les fourmis au niveau des individus mais au niveau delafamille,cequiexpliqueavec l'evolution,l'apparitiondemembresaltruistes qui renoncent aleur reproduction. La theorie de laselectionde parenteleest donc une versionmodi ee de laselectionnaturelle. Elleexplique pourquoicertains individus fa-vorisent ou defavorisent la reproduction d'autres individus qui leurs sont apparentes, en accord avec leurs degresde similitudegenetique.

En 1964, l'entomologisteet geneticien britannique Hamilton [110] de nit ainsi la parentele: pour quele traitaltruiste d'unindividu serepande aucours de l'evolution, le bene ce obtenu par les individus qui lui sont apparentes doit depasser l'inverse du taux de parente. Dans le cas d'un frere ou d'une sur, qui partagent en moyenne la moitiedeleursgenes,l'inversed'undemietantdeux,lecomportementd'altruismepeut

(34)

2.5.3 Autres societes eusociales

Les insectes eusociaux se trouvent dans l'ordre des isopteres (termites) et dans celui des hymenopteres (fourmis, abeilles et gu^epes) et il existe quelques exemples de vertebres eusociauxcomme lesrats-taupes. Hamilton en deduit que l'altruismes'est particulierementdeveloppechezleshymenopteresacausedeleurmodedereproduction qui est haplodiplode : les ufs fecondes, donc diplodes (c'est-a-dire, munis de deux jeux de chromosomes) donnent des femelles, les ufs non fecondes, donc haplodes (munis d'un seul jeu) donnent des m^ales. Deux surs ont en commun les trois quarts de leurs genes en moyenne. Ce taux exceptionnel de parente est d^u au fait que leur pere, issu d'un uf non feconde, transmet donc a ses lles des genes tous identiques. Par consequent, les surs chez les hymenopteres sont genetiquement plus proches les unesdes autresquechezlesautresanimaux.Cet atoutpeut devenir unprobleme dans les nids comprenant plusieurs reines (polygynie), ou leur surnombre peut conduire a des con its, voire ala disparition de la colonie.

2.5.4 L'eusociabilite, une classi cation amendee.

Comme dans toute tentative de classi cation, certains cas posent probleme. Ainsi les fourmis Prismyrmex pungens n'ont pas de reine et se reproduisent toutes par parthenogenese thelytoque (ne donnant que des femelles). Malgreleurs particularites, il semblerait ridiculed'ecarter ces fourmis japonaises des insectes eusociaux. Une dis-tinctionest doncfaiteentre lesespecesprimitivementeusociales (cellesdonttoutesles femellessereproduiraient)etlesespeceshautementeusociales(avec specialisationdans lareproduction).M^emesilaviesocialepara^thautementinteressante,sesinconvenients sontindeniables.Lesbene cessontunmeilleurreperagedespredateurs,unedefense col-lective,larecherche de nourritureetl'elevagedesjeunesen commun.Lesinconvenients sontlaconcurrence alimentaireoureproductive,lesrisques d'epidemies,leparasitisme social(certains pro tant des autres sans restituer de contrepartieequivalente). Autre-ment dit, les societes animales,pas plus que les societes humaines, ne sont ideales, et dans lesdeux cas des con its sont possibles.

2.6 Quelques exemples de resolution de problemes complexes

Les fourmispeuvent resoudre de facon collectivedes problemes complexes, c'est ce que nous allonsillustrer a l'aidede deux exemples.

2.6.1 La formation d'un nid vegetal

La canopee n'o re que peu de cavites pour heberger les fourmis tisserandes (oe-cophylla). Pour pallier ce probleme, elles construisent leurs nids en tissant ensemble des brindilles et des feuilles, ce qui forme de grandes chambres avec murs, sol et toit ( g. 2.4). Le premier a decrire ces nids fut Joseph Banks qui accompagna le capi-taineCook lorsde son voyage en Australieen 1768. Ilecrivit :"Elleconstruit un nid,

(35)

a)

b) c) d)

Fig. 2.4 { Cooperation de fourmis tisserandes pour la construction de leurs nids en feuilles : pour laconstruction,il estnecessaire derapprocher les feuilles;sileurecartement est plus faible que latailled'une fourmi,ellesattrapentles deuxextremites etles rapprochent (premiere image deaetc);siellessontpluseloigneesellesconstruisentdesponts(b).Lesextremitessontensuite collees aveclasoiedes larves(seconde image deaet d)

les feuillesles unes vers les autres et en lescollant solidement ensemble a l'aide d'une substance blanch^atre cartonneuse. Leur conduite etait fort curieuse : elles recourbent quatre feuillesplus larges quela main, et lesdeposent dans ladirectionde leur choix, uvre qui requiert une force bien plus grande que celle dont ces animaux semblent capables. De fait, elles sont bien des milliers a unir leurs e orts; je les ai vues qui pliaientune tellefeuille,en nombreaussi grandquepossiblelesunes ac^otedes autres, chacune tirant de toutes ses forces, tandis qued'autres s'activaient a xer laglu."

Comme l'a decrit J. Banks, les fourmis peuvent s'aligner avec une tres grande precisionparcentainesetrapprocherlesbordsd'unefeuille.Sil'ecartementestsuperieur 

a la taille d'une fourmi, une autre strategie est utilisee. Elles s'alignent les unes a la suite des autresde maniere a former un pontvivant. Unepremiere fourmis'agrippea la feuille, une seconde descend le long de la premiere et l'attrape a la taille, d'autres fourmis fontde m^eme jusqu'aatteindre l'autreextremitequi est saisie parla derniere, et le processus de rapprochement peut commencer. Si une seule cha^ne ne suÆt pas, d'autres structures identiques seront formees sur les c^otes. Pendant cette t^ache, cer-tainesd'entreellesvontrecruterdesrenfortsgr^aceadessubstancesodorantes.Celles-ci sont posees non seulement sur les feuilleset lesbranches mais egalement sur les corps desfourmisformantlacha^ne. Tresrapidementseconstitueune nappevivantede four-mis qui uvrent ensemble. La substance qui est deposee est la pheromone dont nous avons parle plus haut.Dans lecas des fourmis tisserandes,ellea pour but de conduire de nouvelles recrues vers lafeuillea plieretensuite de lesguidersur lacha^nepour en atteindre l'extremite.

2.6.2 La recherche de nourriture ou fourragement

(36)

Lors-Fig. 2.5 { L'experience du pont double : a) l'environnement de l'experience, b) les graphes donnent la distribution des pourcentages de selection de la branche la plus courte pour un jeu d'experiences. La branche du haut est r fois plus longue que l'autre. Le graphe de gauche (14 experiences) donnelarepartition lorsque les deuxbranches sont presentees simultanement. Pour le graphe de droite (14 experiences), la branche la plus courte n'est presentee que 30 minutes apres l'autre : la branche la plus longue est toujours exploitee a cause du dep^ot de pheromone initial.

sonchemin,al'aided'unaiguillonplacesurson abdomen,une ne tracedepheromone d'orientation. Lorsqu'elle retournera au nid apres avoir trouve une source d'approvi-sionnement,elledeposeraanouveaudespheromones,unpeudi erentespuisqueiciune information sur la qualite du site trouve sera incluse dans ce message. Dans tous les cas, la pheromone est placee lapour les autres fourmis de la coloniea n de lesinciter 

a choisir cette piste.

Ce marquage dans l'experience du pont double (Fig. 2.5) leur permet egalement de trouver leplus courtchemin entre lenid et un site alimentaire. Ene et, audepart chaque fourmichoisiral'une des pistes disponibleset totalement auhasard.Tres rapi-dement le chemin leplus court sera marquepar plus de pheromone, car leva-et-vient des fourmis y est plus rapide,etpour une m^eme periode, plus de fourmis ont letemps de leparcourir, doncde deposer leurmessage. Lesnouvelles fourmisquiquittentlenid ont une tendance naturelle a favoriser la piste qui comporte la trace olfactive la plus importante. Le caractere volatile de la pheromone accelere encore cette valorisation de la meilleure piste. C'est donc gr^ace a un echange d'informations que ces fourmis parviennenta trouver lechemin le plus court.

2.6.3 Stigmergie : de nition

Danslesdeuxexemplesquenousvenonsdeciter,lapheromoneest levecteurd'une communication quiest appelee stigmergie, de nie par

Grass

e en 1959 [105]. Il s'agit d'une forme indirecte de communication, qui se traduit par une modi cation locale de l'environnement : pour les fourmis c'est le dep^ot de la pheromone. Ces echanges d'informations ont rendu possible l'emergence d'une auto-organisation. Par ce terme estde niel'apparitiondecomportementscomplexesapartirde comportements indivi-duels simples. Un comportement general complexe n'implique donc pas des strategies

(37)

2.7 Conclusion

Lesfourmisoccupentdesnichesecologiquestresvarieespourlesquellesellessesont specialisees.Lesatoutsquileur ontpermisdeconquerir lessites denidi cationlesplus attirantsetlesplusstables,faceauxautres insectessont leurcaractere eusocialetleur capacite d'auto-organisation, cette derniere etant rendue possible par la stigmergie. La capacite a resoudre des problemes complexes et a s'auto-organiser a pousse les informaticiensafairelelienentre lemondereeletcelui del'informatiqueencreantdes agentsfourmis virtuels. Ces avatars sont utilisespour concevoir di erents algorithmes d'optimisations'inspirantdu mecanismede cooperationdes fourmis.C'estce quenous verrons dans leschapitres suivants.

(38)

Chapitre 3

Les fourmis arti cielles

Ce second chapitre nous fera decouvrir le modele de la fourmi infor-matique, cree en s'inspirant du comportement naturel de ces insectes. Nous y trouverons les applications realisees a l'aide de ces agents vir-tuels et nous pourrons constater que celles-ci ont ete utilisees pour la resolution de problemes complexes. Nous nous interesserons egalement 

a la maniere de simuler la stigmergie pour les fourmis arti cielles.

3.1 La fourmi numerique

La fourmi arti cielle se presente sous la forme d'un ensemble de procedures qui de nissent son comportement.Celui-ciest tressemblableaceluide lafourminaturelle quand ellerecherche de lanourriture (Fig. 3.1).

Danscecas,unefourmin'a qu'unr^oleassezsimplequiconsisteasedeplacerdunid jusqu'a la source de nourriture et a y revenir. Le code qui de nit leur comportement permetauxfourmisarti ciellesde sedeplacerdans l'espacecombinatoireformeparles di erents elements qui peuvent^etre utilisespour le probleme aresoudre. Pour utiliser un vocabulaire informatique, nous dirons qu'elle construit une solution.

La memorisation de ces deplacements donne la forme d'une solution ou chaque etapeest designeepar l'indicede l'elementetoul'ordredeparcours designelaposition des elements dans la solution.

3.2 La fourmi virtuelle vue comme un agent

L'utilisationdesfourmispeut^etrevuecommecelled'agentscommuniquantsgr^acea lastigmergie[105,60]. Enregardant deplus preslesde nitionsonpeut constaterqu'il est possible d'utiliseregalement la notion d'agent dans le cadre d'algorithmescomme ceux utilisantle modeledes colonies de fourmis.

Pour commencer il est necessaire de se poser la question : Qu'est ce qu'un agent? Cette appellation peut sembler assez imprecise, c'est pourquoi nous prendrons les de nitions de Ferber [74].

(39)

Fig. 3.1 { Comportement d'unefourmi naturellelorsdela recherchede nourriture(dans le cas des fourmisarti cielles,iln'yapasobligatoirement dephase derecrutement.)

1. qui est capabled'agir dans un environnement;

2. qui peut communiquer directement avec d'autres agents;

3. qui est mue par un ensemble de tendances (sous la forme d'objectifs individuels ou d'unefonction de satisfaction, voire de survie, qu'elle cherche a optimiser); 4. qui possede des ressources propres;

5. qui est capablede percevoir (mais de maniere limitee) son environnement, 6. qui ne dispose que d'une representation partielle et eventuellement nulle de cet

environnement;

7. qui possede des competences et o re des services; 8. qui peut eventuellementse reproduire;

9. dont le comportement tend a satisfaire ses objectifs, en tenant compte des res-sources et des competences dont elle dispose, et en fonction de sa perception, de ses representations et des communications qu'elle recoit.

De nition 2 Parcomparaisonaveclade nitiongeneraled'unagentdonneprecedemment, onappelleagentpurementcommunicant(ouagentlogiciel)uneentiteinformatiquequi:

1. setrouvedansunsystemeinformatiqueouvert(ensembled'applications,dereseaux et de systemes heterogenes);

2. peut communiquer avec d'autres agents; 3. est mue par un ensemble d'objectifs propres; 4. possede des ressources propres;

5. ne dispose que d'une representation partielle des autres agents;

6. possede des competences (services) qu'ellepeut o rir aux autres agents;

7. a un comportement tendant a satisfaire ses objectifs, en tenant compte des res-sources etdes competencesdontelledispose eten fonctionde sesrepresentations

(40)

En se basant sur ces de nitions, il est possible de decrire le comportement des fourmis virtuelles en tant qu'agents :

{ les entites informatiques que nous venons de de nir sont dites virtuelles car elle n'ont pas d'existence materielle au contraire des entites physiques qui in-teragissent danslemondeconcret(Des exemplesdeces agentsphysiquessontun robot,un avion,une voiture);

{ lesagents sont capablesd'agir :dans lecas desfourmis virtuelles,elles modi ent lesvaleurs de pheromone associees auxdi erentselements.Par cetteaction elles changent leur environnement, ce qui in uera sur le choix des autres fourmis a l'iterationsuivante;

{ lesagentssont capables de communiquer: lesfourmis utilisent commeon l'avu precedemment la pheromone commemediumde communication indirecte; { lesagents sont doues d'autonomie: chaque fourmia pour but de construire une

solution pour un probleme donne, secontentant pour cela d'appliquer les regles de selection qui de nissent son comportement, la fourmiutilise lapheromone et parfois des valeursheuristiques;

{ lesagentsn'ontqu'unerepresentationpartiellede leurenvironnement:lorsdela constructiond'unesolution,lafourmineconna^tachaqueetapequeleselements qu'elle a deja choisis et les valeurs de pheromone correspondant aux elements quipourrontl'^etre. Cesinformationsdonnent alafourmiunerepresentation tres partiellede son environnement.

Les fourmis numeriques dont nous parlerons dans ce memoire peuvent donc ^etre decrites sous la forme d'agents. Il est toutefois a noter que ces fourmis peuvent ^etre classees danslesagentsreactifscarcontrairementauxagentscognitifs,ellesne peuvent pas acquerir de nouvellesconnaissances etsecontentent d'agir/reagirsuivantles infor-mationsqu'elles trouvent dans leur environnement.

Pour nir cecourtsurvoldelanotiond'agent,ilsemblenecessaire dede nirce que l'on appelleun systeme multi-agents.

De nition 3 On appelle systeme multi-agents (ou SMA), un systeme compose des elements suivants :

1. UnenvironnementE,c'estadireunespacedisposantgeneralementd'unemetrique. 2. Un ensemble d'objets O. Ces objets sont situes, c'est a dire que, a tout objet, il

estpossible, aun momentdonne,d'associerune position dansE. Cesobjetssont passifs, c'est-a-dire qu'ils peuvent ^etre percus, crees, detruits et modi es par les agents.

3. UnensembleAd'agents,quisontdesobjetsparticuliers(AO),lesquelsrepresentent les entites actives du systeme.

4. Un ensemble de relations R qui unissent des objets(donc des agents) entre eux. 5. Un ensemble d'operationsOp permettant aux agents de A de percevoir, produire,

consommer, transformer et manipuler des objets de O.

6. Desoperateurschargesderepresenterl'applicationdecesoperationsetlareaction dumonde acettetentativedemodi cation,quel'onappelleralesloisdel'univers. Le modele multi-agents est d'abord utilise pour la simulation du comportement

(41)

C'est cette formalisation qui est egalement utilisee en robotique pour decrire le comportementdes robotsfourmis. Lesrobots fourmis reussissent arealiserdes actions complexes avec des modes de perception reduits. On distingue deux types de robots inspires des fourmis :

{ les autonomes, qui souvent s'inpirent des capacites individuelles de cet insecte commelavision[132,81],ladetectiondetraceschimiques[184],ledeplacement[174]; { les cooperatifs, qui peuvent ramasser des objets disperses [50] ou explorer des

zones inconnues comme lasurface de Marsdans un des projets de laNASA.

3.3 Le modele de cooperation

Comme nous avons pu le voir dans le chapitre precedent, les fourmis peuvent resoudre collectivementdes problemes complexes. Undes exemplesmarquantest celui de la decouverte du chemin le plus court dans l'experience du choix entre les deux arcs d'un pont. Chacune des fourmis, isolement, ne peut trouver la meilleure solu-tion. C'est gr^ace au mecanisme d'auto-organisation qui emerge de la communication indirecte (stigmergie [105]) quele plus court chemin peut ^etre decouvert.

Le modele de la stigmergie peut ^etre facilement etendu au agents arti ciels en associant aux elements d'un probleme des variables d'etat speci que, qui serviront de support a la communication indirecte entre fourmis. Dans le cas de la recherche de nourriture, nous avons vu que les fourmis utilisent la stigmergie en deposant la pheromonesurlapistequ'ellesempruntent.Lafourmiarti ciellepoursapartmodi era lesvaleursdes variablesassociees (pheromone) aux elements du probleme qu'elle aura choisis lors de la constructionde sa solution.

Dans la nature,les fourmis vont parcourir plus vite le chemin leplus court, ce qui impliquequelaquantitede pheromonequiy est deposee augmenteraplus rapidement. Pour simuler ce mecanisme, ilfautintegrerun processusde renforcementpositif.Dans lecas des fourmis,plus lecheminest court, pluslesfourmis leparcourront viteetplus laquantitede pheromone associee seraelevee. Dansle cas d'un probleme, celarevient 

a dire que lesvaleurs des variables associees auxelements appartenant aux meilleures solutions doivent ^etre davantage renforcees que les autres. A n de pouvoir comparer les solutions, il est necessaire d'introduire une mesure qui donne l'adequation de la solution auprobleme : c'est la fonction qualite(en anglais tness).La valeur de cette qualite est utilisee dans le calcul de la mise a jour des valeurs associees aux elements du problemelorsde laphasede renforcement.Pour larecherche du plus courtchemin, onpeutprendre toutsimplementladistancecommemesuredequalite:pluslechemin est court, plus il sera renforce.

Unedesproprietesdelapheromoneestsoncaracterevolatil.Danslemodelevirtuel, un mecanisme similairesera utilise a n d'eviter une convergence prematuree (stagna-tion) due a ladecouverte d'un optimum local.

Entre ces deux modeles, nous passons d'un univers continu a un univers discret. Ainsi, les fourmis virtuelles sautent d'un element a un autre, tandis que les fourmis naturelles progressent de facon continue sur le chemin. Cette discretisation impose que l'evaporation oula modi cation des valeurs de pheromone ne puissent se faire en continu.Cet ajustement de valeursn'est souventrealisablequ'apreslaconstruction de

(42)

les etapes (elements) et leur voisinage pour permettre le parcours de la fourmi. Ces de nitions sont liees ala naturedu probleme considere.

3.4 Les di erents domaines d'application

Lapremiereapplicationdumodeledesfourmisvirtuellesaetefaitesurunprobleme de recherche du plus courtchemin [104,51]. Lesbonnesperformances obtenues ont in-citeleschercheursal'utiliserpourlaresolutiond'autresproblemesquenouspresenterons ensuite.

3.5 Les fourmis arti cielles pour la recherche operationnelle

Les algorithmes de cette section peuvent ^etre regroupes sous le terme de m eta-heuristiques d'optimisation a colonie de fourmis (OCF) ou Ant Colony Optimization meta-heuristics (ACO) [62].

DanslesOCF,lacoloniecomporteun nombrede fourmis arti cielles xeetapour but de rechercher collectivement de bonnes solutionspour le probleme a resoudre. Le r^oled'une fourmiest de construire une solution, en partant d'unepositioninitiale liee 

alanaturedu problemeconsidere.L'objectif est d'obtenirlasolutionquipasse parles elements (etapes) du probleme tout en entra^nant un co^ut minimum et en respectant lescontraintes de nies.

Lorsdecetteconstruction,lafourmiaccumuledesinformationssurl'environnement parcouru. Ces renseignements sont utilises pour modi er la perception que les autres fourmis ont du probleme. Chaque fourmipeut travailler de facon independante ouen concurrence maisellecoopere toujours.Ces foumiscollaborentdonc encommuniquant defacon indirecte;lesinformationsqu'ellesechangentsontstockees sousformedetaux de pheromone. On peut dire qu'ils'agit de variablesstigmergetiques.

Les fourmis construisent leur solution de facon incrementale. Elles vont choisir 

a chaque etape un element dans leur voisinage (parmi les elements possibles) et ce choixest guidepar lesinformationslaissees parles autresfourmis.Ce sera ladirection (l'element) marquee par la plus grande quantite de pheromone qui aura la plus forte probabilite d'^etre choisie.

Les fourmis conservent une memoire du parcours qu'elles ont deja e ectue. Cette connaissanceestalafoisutiliseepourde nirlevoisinageachaqueetape,pourcontr^oler lerespect descontraintes liees auprobleme,pour evaluer lasolutionetpour quanti er lerenforcement en pheromone.

La forme generale des OCF est donnee dans l'Agorithme 3.1. Les di erentes va-riantes peuvent^etrecaracteriseesen decrivantlecomportementindividueldes fourmis

(43)

Fig. 3.2{ Exempled'une instance creee de92 villes, accompagnee desa solution

Algorithme 3.1: L'algorithme general des OCF.

L'action du demon est optionnelle, et fait reference a des actions centralisees. OCF()

(1) tant que (lecritere de n n'est pas satifait) (2) generation etactivitedes fourmis

(3) mise a jourde lapheromone

(4) actions du demon (ex: une deuxieme mise a jour)[optionnel] (5) n tant que

Des strategies peuvent ^etre ajoutees pour ameliorerles performances des systemes de fourmis. Il s'agit de donner aux fourmis des comportements qui n'ont ici rien a voiravec lemodelenaturel.Il est possible d'integrer un facteursupplementairelieala natureduproblemepourguiderlechoixlorsde laselectiondel'etapesuivante. Dansle cas de la recherche du plus court chemin,la longueur des chemins peut ^etre combinee avec les valeurs de pheromone. Ces deux informationspermettent d'obtenir une table de decision qui a pour but de dirigerla recherche des fourmis dans les bonnes regions de l'espace de recherche. Pour le probleme de chemin le plus court, les elements les plusattirantserontdonclesarcsquiaurontlesplusfortstauxdepheromoneetlaplus coute longueur.

Un mecanisme de recherche locale peut egalement ^etre hybride avec les fourmis, pour ameliorerlasolutiongeneree etainsiaugmenter lesperformancesde l'heuristique. Cetteetapes'integre a chaque iterationavant lamise a jourde lapheromone.

3.5.1 Le voyageur de commerce

M. Dorigo [66, 58] a ete le premier a de nir un algorithme a base de colonie de fourmis, il s'agit de Ant-System qui resout des instances du probleme du voyageur de commerce (PVC) ouTraveling Salesman Problem (TSP) ( g. 3.2).

(44)

de transport. Le but est donc de trouverleparcours qui passerapar touteslesn villes ousont situees les clients avisiter, une etune seule fois, en terminant leparcours par lepointdedeparteten parcourantleminimumde distance.Ce problemeNP-dur [91] peut ^etre formalisecommeun grapheG=(N;A) oules villessontles N nuds etles connexions entre villeslesarcsA:leproblemerevientatrouveruncircuithamiltonien de longueur minimale.

Ce probleme est proche de celui de la recherche du chemin le plus court dans le cas du probleme des deux ponts pour les fourmis naturelles. Ene et, il s'agit bien de trouverlepluscourtcheminmaisavec lescontraintede villesetapesetavec lefaitque la ville de depart est la m^eme que celle de destination. Le probleme ne peut pas ^etre reduit a rechercher le plus court chemin entre la position actuelle et l'une des villes restant a visiter, car cette methode ne fournit pas de bonne solutionau PVC.

Notons que legraphe n'est pas obligatoiremententierementinterconnecte. Pour ce qui est des distances entre les villes,deux cas sedistinguent :

{ siladistance aparcourir entre deux villesest identiquequelle quesoitlavillede depart, on parlerade PVC symetrique;

{ silesvaleursd'alleretde retour sont di erentes onparlerade PVCasymetrique. Cette di erencen'a pas d'in uencesur lefonctionnement de la plupartdes heuris-tiques, m^eme si lesperformances obtenues ne sont pas les m^emes.

Ant-System pour le PVC (AS-TSP) est l'un des trois algorithmes qui furent pro-posesdansl'articledeColornietal.en1991[36].Celui-cimettaitenavantle compor-tementcooperatifdesfourmispourlaresolutiondu PVC.Nousaborderonsuniquement l'algorithmedesignepar lenom"antcycle" quiadonne plustard naissance aAS-TSP (ou AS) [67].

Comme la majorite des OCF, il peut etre^ decrit suivant deux points : la strategie de deplacement de la fourmi ou mouvement, et le mode de mise a jour de la matrice de pheromone. Lesequations relatives aces deux pointspour cet algorithmeainsi que pour ceux decrits dans ce chapitresont presentees respectivement dans lestableau3.1 et3.2 :

1. Mouvement de lafourmi

Le fonctionnement de cet algorithme est le suivant : au depart, des fourmis sont positionnees sur les sommets du grapheque forment les villes de l'instance consideree; les fourmis vont se deplacer de ville en ville en construisant une so-lution.

Le choixde la villesuivante respecte la contrainte de ne passer qu'une fois dans chaque ville. Pour cela, une fourmiva memoriser toutes les villes par lesquelles ellesera dejapassee sous laformed'une liste(L

k

). Ce choix sera guidepar deux facteurs, d'une part la valeur de pheromone a l'instant t qui est associee aux arcs pouvant les amener de la ville actuelle i a une ville j (

i;j

), d'autre part la longueur de ces arcs.

Laprobabilite(P i;j

) de selectiond'un arc est dans ce cas dependant a la foisdu taux de pheromone present sur cet arc et de son pouvoir attracteur, ce dernier etantobtenuenprenantl'inversedelalongueur.Lesdeux facteursontuneaction qui peut ^etre modulee gr^ace a deux parametres qui sont xes a l'initialisation.

(45)

Tab. 3.1{ Equationsrelativesauxmouvements des fourmis pourles di erentsalgorithmes Nom de Mouvement de la fourmi

l'algorithme AS-TSP P i;j = ( si j 2L k (i) [ i;j ] [ i;j ] P j2L k (i) [ i;j ] [ i;j ] sinon 0 L k

(i)est lalistetabou pour lafourmi k arrivee au sommeti

 i;j

designel'inverse de ladistance entre lesvilles i etj

et ponderent l'in uence de lapheromone etde lalongueur 

ij

taux de pheromone entre les villesi et j ANT-Q j =  arg fmax l 2J k (i) f[AQ(i;l)] [HE(i;l)] g] si qq 0 J sinon

HE(i;l) est une valeur fournie par une heuristique AQ(i;l) donne lavaleurde probabilite de choix de l en etant en i (pheromone)

et ponderent l'in uence des deux mesures q

0

est la probabilite d'utiliserlapremiere equation AS

rank

Identiquea AS-TSP ACS Semblablea Ant-Q avec

AQ(i;l)=(i;l),HE(i;l)=(i;l) et =1

(i;l) est l'inverse de ladistance quisepare lesvilles i etl

2. Mise ajour de la memoire

Quand les fourmis ont ni de parcourir toutes les villes, les solutions qu'elles ont construites vont ^etre evaluees. Dans notre cas la qualite de la solution est ladistance parcourue.La mise ajour de lapheromone commence par une phase d'evaporation,quireduittouteslesvaleursdesarcs.Ensuitepourchaquesolution, les valeurs de pheromone associees aux elements la constituant sont renforcees par un facteur proportionnela l'inverse de la longueur totale de la solution.

(46)

Tab. 3.2 { Equations relativesa lamise ajour de lapheromonepour les di erents algorithmes Nomde Mise ajour

l'algorithme AS-TSP  i;j = i;j (1 )+ P m k=1  k i;j (1 )est lefacteur d'evaporation 

k i;j

est l'apportde la fourmik al'arc (i;j)

 k i;j = 8 < : Q D k

sila fourmik est passee par l'arc (i;j)

0 sinon Q une constante D

k

la distance parcourue par la fourmi

ANT-Q AQ(i;j)=(1 )AQ(i;j)+ AQ(i;j)+ max l 2J

k (i)

AQ(i;l)  est une valeur de niea l'initialisation

AQi;j = 

W D

b

si(i;j) 2 tour e ectue par k 0 sinon

W est une constantede nie al'initialisation D

b

est ladistance parcourue par lameilleurefourmi (pour cetteiteration oupour l'execution)

AS rank  i;j (t+1)= i;j (t)+ i;j +  i;j  i;j = P  1 =1   i;j   i;j = 8 > < > : ( ) Q L sila   eme

meilleurefourmi est passee par l'arc (i;j)

0 sinon   i;j = 8 < : ( ) Q L 

sila meilleurefourmiest passee par l'arc (i;j)

0 sinon  est l'indicedans leclassement 

 i;j

augmentele tauxde pheromone des arc des  meilleuressolutions 

 i;j

augmentele tauxde pheromone des arc de la meilleuresolution  nombre de solutions utilisees pour lamise a jour

L 

longueur du tour cree par la fourmi L



longueur du tour cree par la meilleurefourmi

ACS  i;j =(1 ) i;j + i;j j =  arg fmax l 2J k (i) f[(i;l)] [(i;l)] g] siq q 0 J sinon  i;j = 0 ,  0

(47)

Tab. 3.3 { Comparaison de l'AS (Ant-cycle) avec d'autres algorithmes sur l'instance de PVC Oliver30

Nomdel'Algorithme Meilleur Ant-Cycle 420 NearNeighbour 587 Far Insert 428 NearInsert 510 SpaceFillingCurve 464

Sweep 486

Random 1212

Algorithme 3.2: L'algorithme AS-TSP. AS-TSP() (1) Initialisation: 8(i;j)2f1;:::;ng 2  i;j  0

, placerchaque fourmisur une villechoisiealeatoirement

(2) pour t=1at =t max

faire (3) pour chaque fourmik faire (4) Construire un chemin T

k

(t) avec la regle de selection (5) Calculerla longueur D k (t) du parcours (6) npour (7) Soit T 

lemeilleur chemin trouve etL 

sa longueur (8) Mettre a jourles valeurs de pheromone

(9) npour (10) retournerT

 , L



Commenousl'avons vudanslasectionprecedente, AS-TSPs'ecartedumodeledes fourmis naturelles. En e et, les fourmis virtuelles possedent une memoire du chemin parcouru. Elles percoivent les distances entre les villes et travaillent avec un temps discret qui leur impose de construire totalement la solution avant de deposer leur pheromone.

Les resultats encourageants (tab. 3.3) ont incite au developpement d'autres algo-rithmes s'inspirant du m^eme paradigme que pour le PVC.

Nousallonsaborderlesvariantes lesplusconnues deAS-TSPquionteteproposees.

Ant-Q

Dans"Ant-Q[87] :AReinforcementLearningApproachtotheTraveling Salesman Problem", Gambardella et Dorigo presentent AS sous la forme d'un algorithme d'apprentissagepar renforcement(Q-learning)et en deduisentlaformegenerale d'une heuristique qu'ils appellent Ant-Q.



A chaque arc sont associees deux valeurs :

{ unevaleurappelee AQ(i;j)correspondant plusoumoinsautauxde pheromone. (Danscet algorithme onutilise plut^otle terme statistique.)

Références

Documents relatifs

ÉLEVAGE DE FOURMIS Élevage de fourmis. Élevage

Dans une autre expérimentation au niveau des vergers, les mangues ont été échantillonnées dans les vergers à 1 mètre et à 1-3 mètres de distance des nids de fourmis et sur

Dans ce travail, nous proposons une approche de résolution du TSP sur la base dune heuristique doptimisation par colonies des fourmis (OCF) dont plusieurs colonies sont mis

On d´ecrit dans les paragraphes suivants la strat´egie ph´eromonale Φ utilis´ee par les fourmis pour guider la recherche, ainsi que les principales ´etapes de l’algorithme Ant-CP, `

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des

2- Déterminer lequel des 4 états de contrainte est le plus dangereux, le moins dangereux, justifier vos réponses ; 3- Calculer dans chaque cas la valeur de σ 12 entrainant

LEROY Annabelle, école TO’ATA Lis les questions ci-dessous et essaye de répondre, au crayon à papier, à celles dont tu penses connaître les réponses.. Compare tes réponses

Estelle Dumont, Christine Gilbert et les collaboratrices Crédit images : http://www.scrappindoodles.com/ (Feuilles d’étude 4 e année)!. Chargées