SlideShare une entreprise Scribd logo
1  sur  20
République Algérienne démocratique et populaire.
Université Dr. Tahar Moulay – Saïda
Département d’informatique
Matière : MTO
Master1 RISR
Présenté par : Enseigné par :
• Kamar MEDDAH.
• Abderrahmane Kafi.
• Mohamed Aouad
• Mr. BENAMARA
2018/2019
1. Généralités.
2. Définition.
3. Fonctionnement.
4. Algorithme de
colonies de fourmis
pour le problème du
voyageur de
commerceTSP.
5. Exemple
6. Domaines
d’application.
7. Conclusion .
8. Bibliographie.
 Dans les sections qui viendront plus tard, nous
présenterons la méta-heuristique ACO, pour le "Ant Colony
Optimization". Toutes ces idées abstraites sont inspirées des
travaux de Deneubourg sur les fourmis.
 L'optimisation de colonie de fourmi (ACO) étudie les
systèmes artificiels qui prennent l'inspiration du
comportement de vraies colonies de fourmi. Employée pour
résoudre des problèmes discrets d'optimisation.
 Les algorithmes de colonies de fourmis sont des
algorithmes inspirés du comportement des fourmis et qui
constituent une famille de méta-heuristiques d’optimisation.
 Un algorithme de colonies de fourmis est un algorithme
itératif à population où tous les individus partagent un savoir
commun qui leur permet de guider leurs futurs choix et
d'indiquer aux autres individus des directions à suivre ou au
contraire à éviter.
 L’idée originale provient de l’observation de l’exploitation des
ressources alimentaires chez les fourmis. En effet, celles-ci, bien qu’ayant
individuellement des capacités cognitives limitées, sont capables
collectivement de trouver le chemin le plus court entre une source de
nourriture et leur nid.
Un modèle expliquant ce comportement est le suivant:
1. une fourmi parcourt plus ou moins au hasard l’environnement autour
de la colonie.
2. si celle-ci découvre une source de nourriture, elle rentre plus ou moins
directement au nid, en laissant sur son chemin une piste de
phéromones .
3. ces phéromones étant attractives, les fourmis passant à proximité
vont avoir tendance à suivre, de façon plus ou moins directe, cette
piste.
4. En revenant au nid, ces mêmes fourmis vont renforcer la piste.
5. Si deux pistes sont possibles pour atteindre la même source de
nourriture, celle étant la plus courte sera, dans le même temps,
parcourue par plus de fourmis que la longue piste.
6. La piste courte sera donc de plus en plus renforcée, et donc de
plus en plus attractive.
7. La longue piste, elle, finira par disparaître, les phéromones étant
volatiles ;
8. à terme, l’ensemble des fourmis a donc déterminé et « choisi » la
piste la plus courte.
 Les fourmis utilisent l’environnement comme
support de communication : elles échangent
indirectement de l’information en déposant des
phéromones, le tout décrivant l’état de leur
« travail ». L’information échangée a une portée
locale, seule une fourmi située à l’endroit où les
phéromones ont été déposées y a accès. Ce système
porte le nom de « stigmergie », et se retrouve chez
plusieurs animaux sociaux (il a notamment été
étudié dans le cas de la construction de piliers dans
les nids de termites).
1) la première fourmi trouve la source de
nourriture (F), via un chemin quelconque
(a), puis revient au nid (N) en laissant
derrière elle une piste de phéromone (b).
2) les fourmis empruntent indifféremment
les quatre chemins possibles, mais le
renforcement de la piste rend plus attractif
le chemin le plus court.
3) les fourmis empruntent le chemin le plus
court, les portions longues des autres
chemins perdent leur piste de phéromones
 Tant que le critère d'arrêt n'est pas atteint faire
 Pour k=1 à m faire
 Choisir une ville au hasard
 Pour chaque ville non visitée i faire
 Choisir une ville j, dans la liste des villes
restantes selon (F-1)
 Fin Pour
 Déposer une piste sur le trajet (t) conformément à
(F-2)
 Fin Pour
 Évaporer les pistes selon (F-3)
 FinTant que
 Le but initial de la méthode était de résoudre le problème du voyageur
de commerce. L'Algorithme présente la méthode proposée par les
auteurs. Si l'on considère un problème de voyageur de commerce à N
villes, chaque fourmi k parcourt le graphe et construit un trajet de
longueur n =/N/. Pour chaque fourmi, le trajet d'une ville i à une ville j
dépend de :
 la liste des villes déjà visitées, qui définit les mouvements possibles à
chaque pas, quand la fourmi k est sur la ville i,
 l'inverse de la distance entre les villes , appelée visibilité.Cette
information est utilisée pour diriger les fourmis vers des villes proches et
ainsi, éviter de trop longs déplacements .
 la quantité de phéromone déposée sur l'arête reliant deux villes
appelée intensité de la piste. Cette quantité définit l'attractivité d'une
piste et est modifiée après le passage d'une fourmi. C'est la pseudo-
mémoire du système.
 La règle de déplacement est la suivante :
α et β sont deux paramètres qui contrôlent l’importance
relative entre phéromones et visibilité. Après un tour
complet, chaque fourmi dépose une quantité de phéromone
(t) sur l'ensemble de son parcours.Cette quantité dépend de
la qualité de la solution trouvée et est définie par :
=
F-1
où
• Les fourmis se déplacent entre le
nid(E) et la source de la nourriture
(A) sur le chemin A-E.
• Un obstacle qui coupe le chemin.
• La fourmi qui se déplace de A vers E et se
trouve en B, a 2 choix :
1. Le chemin B-C-D
2. Le chemin B-H-D
• Le choix = f (intensité de phéromone)
• La première fourmi a des probabilités égale
de suivre les deux chemins.
• Celle qui suit le chemin B-C-D
arrive en premier en D.
• Les fourmis qui se retournent de E ont en D
deux choix :
1. Le chemin D-C-B
2. Le chemin D-H-B
• Le chemin D-C-B aura une plus forte intensité
de phéromone causé par :
1. La moitie des fourmis qui prennent ce chemin
de retour.
2. Le nombre supérieur des fourmis qui ont suivi
le chemin B-C-D et qui se retournent.
 Applications au problème symétrique et asymétrique de
voyageur de commerce.
 Applications au problème d’ordonnancement séquentiel.
 Applications au problèmes d’affectation quadratique.
 Applications au problèmes de tournées des véhicules.
 Applications aux problèmes d'établissement d’horaires.
 Applications au problèmes de coloration de graphe.
 Applications aux problèmes de partitionnement.
 Applications aux réseaux de télécommunications.
 Implémentations parallèles.
• L’algorithme des colonies des fourmis est une
heuristique, avec caractère général utilisée pour
résoudre différentes problèmes d’analyse combinatoire.
• Principal inconvénient : coût relativement élevé de la
génération des solutions.
• Elle commence à être adaptée à des problèmes
continus.
1. Optimisation par colonies de fourmis. COSTANZO
Andrea. LUONGThéVan. MARILL Guillaume.
2. http://khayyam.developpez.com/articles/algo/voy
ageur-de-commerce/colonies-de-fourmis/.
3. http://www.apprendre-en-
ligne.net/info/algo/fourmis.html.
Algorithme Colonie de fourmis

Contenu connexe

Tendances

AI Apprentissage Automatique, Machine Learnig
AI Apprentissage Automatique, Machine LearnigAI Apprentissage Automatique, Machine Learnig
AI Apprentissage Automatique, Machine LearnigFelipe Sanchez Garzon
 
Smart Parking: Stationnement intelligent État de l’art, Étude d’un exemple De...
Smart Parking: Stationnement intelligent État de l’art, Étude d’un exemple De...Smart Parking: Stationnement intelligent État de l’art, Étude d’un exemple De...
Smart Parking: Stationnement intelligent État de l’art, Étude d’un exemple De...Ayoub Rouzi
 
Intelligence Artificielle : Introduction à l'intelligence artificielle
Intelligence Artificielle : Introduction à l'intelligence artificielleIntelligence Artificielle : Introduction à l'intelligence artificielle
Intelligence Artificielle : Introduction à l'intelligence artificielleECAM Brussels Engineering School
 
Methodes d'accès dans les réseaux locaux
Methodes d'accès dans les réseaux locauxMethodes d'accès dans les réseaux locaux
Methodes d'accès dans les réseaux locauxInes Kechiche
 
Chapitre v algorithmes gloutons
Chapitre v algorithmes gloutonsChapitre v algorithmes gloutons
Chapitre v algorithmes gloutonsSana Aroussi
 
TD1-UML-correction
TD1-UML-correctionTD1-UML-correction
TD1-UML-correctionLilia Sfaxi
 
Cours Big Data Chap1
Cours Big Data Chap1Cours Big Data Chap1
Cours Big Data Chap1Amal Abid
 
TD2 - UML - Correction
TD2 - UML - CorrectionTD2 - UML - Correction
TD2 - UML - CorrectionLilia Sfaxi
 
Systèmes multi agents concepts et mise en oeuvre avec le middleware jade
Systèmes multi agents concepts et mise en oeuvre avec le middleware jadeSystèmes multi agents concepts et mise en oeuvre avec le middleware jade
Systèmes multi agents concepts et mise en oeuvre avec le middleware jadeENSET, Université Hassan II Casablanca
 
Introduction au Deep Learning
Introduction au Deep Learning Introduction au Deep Learning
Introduction au Deep Learning Niji
 
Algorithme génétique
Algorithme génétiqueAlgorithme génétique
Algorithme génétiqueIlhem Daoudi
 
BigData_TP1: Initiation à Hadoop et Map-Reduce
BigData_TP1: Initiation à Hadoop et Map-ReduceBigData_TP1: Initiation à Hadoop et Map-Reduce
BigData_TP1: Initiation à Hadoop et Map-ReduceLilia Sfaxi
 
POO Java Chapitre 6 Exceptions
POO Java  Chapitre 6 ExceptionsPOO Java  Chapitre 6 Exceptions
POO Java Chapitre 6 ExceptionsMouna Torjmen
 
5.1 K plus proches voisins
5.1 K plus proches voisins5.1 K plus proches voisins
5.1 K plus proches voisinsBoris Guarisma
 
présentation soutenance PFE.ppt
présentation soutenance PFE.pptprésentation soutenance PFE.ppt
présentation soutenance PFE.pptMohamed Ben Bouzid
 
Techniques du data mining
Techniques du data miningTechniques du data mining
Techniques du data miningDonia Hammami
 

Tendances (20)

AI Apprentissage Automatique, Machine Learnig
AI Apprentissage Automatique, Machine LearnigAI Apprentissage Automatique, Machine Learnig
AI Apprentissage Automatique, Machine Learnig
 
Smart Parking: Stationnement intelligent État de l’art, Étude d’un exemple De...
Smart Parking: Stationnement intelligent État de l’art, Étude d’un exemple De...Smart Parking: Stationnement intelligent État de l’art, Étude d’un exemple De...
Smart Parking: Stationnement intelligent État de l’art, Étude d’un exemple De...
 
Intelligence Artificielle : Introduction à l'intelligence artificielle
Intelligence Artificielle : Introduction à l'intelligence artificielleIntelligence Artificielle : Introduction à l'intelligence artificielle
Intelligence Artificielle : Introduction à l'intelligence artificielle
 
Methodes d'accès dans les réseaux locaux
Methodes d'accès dans les réseaux locauxMethodes d'accès dans les réseaux locaux
Methodes d'accès dans les réseaux locaux
 
Chapitre v algorithmes gloutons
Chapitre v algorithmes gloutonsChapitre v algorithmes gloutons
Chapitre v algorithmes gloutons
 
TD1-UML-correction
TD1-UML-correctionTD1-UML-correction
TD1-UML-correction
 
Cours Big Data Chap1
Cours Big Data Chap1Cours Big Data Chap1
Cours Big Data Chap1
 
TD2 - UML - Correction
TD2 - UML - CorrectionTD2 - UML - Correction
TD2 - UML - Correction
 
Systèmes multi agents concepts et mise en oeuvre avec le middleware jade
Systèmes multi agents concepts et mise en oeuvre avec le middleware jadeSystèmes multi agents concepts et mise en oeuvre avec le middleware jade
Systèmes multi agents concepts et mise en oeuvre avec le middleware jade
 
Knn
KnnKnn
Knn
 
Présentation PFE
Présentation PFEPrésentation PFE
Présentation PFE
 
Introduction au Deep Learning
Introduction au Deep Learning Introduction au Deep Learning
Introduction au Deep Learning
 
Algorithme génétique
Algorithme génétiqueAlgorithme génétique
Algorithme génétique
 
BigData_TP1: Initiation à Hadoop et Map-Reduce
BigData_TP1: Initiation à Hadoop et Map-ReduceBigData_TP1: Initiation à Hadoop et Map-Reduce
BigData_TP1: Initiation à Hadoop et Map-Reduce
 
Présentation pfe
Présentation pfePrésentation pfe
Présentation pfe
 
POO Java Chapitre 6 Exceptions
POO Java  Chapitre 6 ExceptionsPOO Java  Chapitre 6 Exceptions
POO Java Chapitre 6 Exceptions
 
5.1 K plus proches voisins
5.1 K plus proches voisins5.1 K plus proches voisins
5.1 K plus proches voisins
 
présentation soutenance PFE.ppt
présentation soutenance PFE.pptprésentation soutenance PFE.ppt
présentation soutenance PFE.ppt
 
Présentation PFE
Présentation PFEPrésentation PFE
Présentation PFE
 
Techniques du data mining
Techniques du data miningTechniques du data mining
Techniques du data mining
 

Plus de kamar MEDDAH

Random number generator
Random number generatorRandom number generator
Random number generatorkamar MEDDAH
 
Etude comparative entre les grilles, cloud et p2p
Etude comparative entre les grilles, cloud et p2pEtude comparative entre les grilles, cloud et p2p
Etude comparative entre les grilles, cloud et p2pkamar MEDDAH
 
Base de données distribuée
Base de données distribuéeBase de données distribuée
Base de données distribuéekamar MEDDAH
 
Les Base de Données NOSQL
Les Base de Données NOSQLLes Base de Données NOSQL
Les Base de Données NOSQLkamar MEDDAH
 
Porter stemming algorithm
Porter stemming algorithmPorter stemming algorithm
Porter stemming algorithmkamar MEDDAH
 

Plus de kamar MEDDAH (13)

Intro to web dev
Intro to web devIntro to web dev
Intro to web dev
 
Random number generator
Random number generatorRandom number generator
Random number generator
 
Routage rip
Routage ripRoutage rip
Routage rip
 
Etude comparative entre les grilles, cloud et p2p
Etude comparative entre les grilles, cloud et p2pEtude comparative entre les grilles, cloud et p2p
Etude comparative entre les grilles, cloud et p2p
 
Base de données distribuée
Base de données distribuéeBase de données distribuée
Base de données distribuée
 
Branch and bound
Branch and boundBranch and bound
Branch and bound
 
Active directory
Active directoryActive directory
Active directory
 
Wwan
WwanWwan
Wwan
 
Hadoop
HadoopHadoop
Hadoop
 
Erlang
ErlangErlang
Erlang
 
Les Base de Données NOSQL
Les Base de Données NOSQLLes Base de Données NOSQL
Les Base de Données NOSQL
 
Porter stemming algorithm
Porter stemming algorithmPorter stemming algorithm
Porter stemming algorithm
 
Javascript
JavascriptJavascript
Javascript
 

Algorithme Colonie de fourmis

  • 1. République Algérienne démocratique et populaire. Université Dr. Tahar Moulay – Saïda Département d’informatique Matière : MTO Master1 RISR Présenté par : Enseigné par : • Kamar MEDDAH. • Abderrahmane Kafi. • Mohamed Aouad • Mr. BENAMARA 2018/2019
  • 2. 1. Généralités. 2. Définition. 3. Fonctionnement. 4. Algorithme de colonies de fourmis pour le problème du voyageur de commerceTSP. 5. Exemple 6. Domaines d’application. 7. Conclusion . 8. Bibliographie.
  • 3.  Dans les sections qui viendront plus tard, nous présenterons la méta-heuristique ACO, pour le "Ant Colony Optimization". Toutes ces idées abstraites sont inspirées des travaux de Deneubourg sur les fourmis.  L'optimisation de colonie de fourmi (ACO) étudie les systèmes artificiels qui prennent l'inspiration du comportement de vraies colonies de fourmi. Employée pour résoudre des problèmes discrets d'optimisation.
  • 4.  Les algorithmes de colonies de fourmis sont des algorithmes inspirés du comportement des fourmis et qui constituent une famille de méta-heuristiques d’optimisation.  Un algorithme de colonies de fourmis est un algorithme itératif à population où tous les individus partagent un savoir commun qui leur permet de guider leurs futurs choix et d'indiquer aux autres individus des directions à suivre ou au contraire à éviter.
  • 5.  L’idée originale provient de l’observation de l’exploitation des ressources alimentaires chez les fourmis. En effet, celles-ci, bien qu’ayant individuellement des capacités cognitives limitées, sont capables collectivement de trouver le chemin le plus court entre une source de nourriture et leur nid. Un modèle expliquant ce comportement est le suivant: 1. une fourmi parcourt plus ou moins au hasard l’environnement autour de la colonie. 2. si celle-ci découvre une source de nourriture, elle rentre plus ou moins directement au nid, en laissant sur son chemin une piste de phéromones . 3. ces phéromones étant attractives, les fourmis passant à proximité vont avoir tendance à suivre, de façon plus ou moins directe, cette piste.
  • 6. 4. En revenant au nid, ces mêmes fourmis vont renforcer la piste. 5. Si deux pistes sont possibles pour atteindre la même source de nourriture, celle étant la plus courte sera, dans le même temps, parcourue par plus de fourmis que la longue piste. 6. La piste courte sera donc de plus en plus renforcée, et donc de plus en plus attractive. 7. La longue piste, elle, finira par disparaître, les phéromones étant volatiles ; 8. à terme, l’ensemble des fourmis a donc déterminé et « choisi » la piste la plus courte.
  • 7.  Les fourmis utilisent l’environnement comme support de communication : elles échangent indirectement de l’information en déposant des phéromones, le tout décrivant l’état de leur « travail ». L’information échangée a une portée locale, seule une fourmi située à l’endroit où les phéromones ont été déposées y a accès. Ce système porte le nom de « stigmergie », et se retrouve chez plusieurs animaux sociaux (il a notamment été étudié dans le cas de la construction de piliers dans les nids de termites).
  • 8. 1) la première fourmi trouve la source de nourriture (F), via un chemin quelconque (a), puis revient au nid (N) en laissant derrière elle une piste de phéromone (b). 2) les fourmis empruntent indifféremment les quatre chemins possibles, mais le renforcement de la piste rend plus attractif le chemin le plus court. 3) les fourmis empruntent le chemin le plus court, les portions longues des autres chemins perdent leur piste de phéromones
  • 9.  Tant que le critère d'arrêt n'est pas atteint faire  Pour k=1 à m faire  Choisir une ville au hasard  Pour chaque ville non visitée i faire  Choisir une ville j, dans la liste des villes restantes selon (F-1)  Fin Pour  Déposer une piste sur le trajet (t) conformément à (F-2)  Fin Pour  Évaporer les pistes selon (F-3)  FinTant que
  • 10.  Le but initial de la méthode était de résoudre le problème du voyageur de commerce. L'Algorithme présente la méthode proposée par les auteurs. Si l'on considère un problème de voyageur de commerce à N villes, chaque fourmi k parcourt le graphe et construit un trajet de longueur n =/N/. Pour chaque fourmi, le trajet d'une ville i à une ville j dépend de :  la liste des villes déjà visitées, qui définit les mouvements possibles à chaque pas, quand la fourmi k est sur la ville i,  l'inverse de la distance entre les villes , appelée visibilité.Cette information est utilisée pour diriger les fourmis vers des villes proches et ainsi, éviter de trop longs déplacements .  la quantité de phéromone déposée sur l'arête reliant deux villes appelée intensité de la piste. Cette quantité définit l'attractivité d'une piste et est modifiée après le passage d'une fourmi. C'est la pseudo- mémoire du système.
  • 11.  La règle de déplacement est la suivante : α et β sont deux paramètres qui contrôlent l’importance relative entre phéromones et visibilité. Après un tour complet, chaque fourmi dépose une quantité de phéromone (t) sur l'ensemble de son parcours.Cette quantité dépend de la qualité de la solution trouvée et est définie par : = F-1
  • 12.
  • 13. • Les fourmis se déplacent entre le nid(E) et la source de la nourriture (A) sur le chemin A-E.
  • 14. • Un obstacle qui coupe le chemin. • La fourmi qui se déplace de A vers E et se trouve en B, a 2 choix : 1. Le chemin B-C-D 2. Le chemin B-H-D
  • 15. • Le choix = f (intensité de phéromone) • La première fourmi a des probabilités égale de suivre les deux chemins. • Celle qui suit le chemin B-C-D arrive en premier en D.
  • 16. • Les fourmis qui se retournent de E ont en D deux choix : 1. Le chemin D-C-B 2. Le chemin D-H-B • Le chemin D-C-B aura une plus forte intensité de phéromone causé par : 1. La moitie des fourmis qui prennent ce chemin de retour. 2. Le nombre supérieur des fourmis qui ont suivi le chemin B-C-D et qui se retournent.
  • 17.  Applications au problème symétrique et asymétrique de voyageur de commerce.  Applications au problème d’ordonnancement séquentiel.  Applications au problèmes d’affectation quadratique.  Applications au problèmes de tournées des véhicules.  Applications aux problèmes d'établissement d’horaires.  Applications au problèmes de coloration de graphe.  Applications aux problèmes de partitionnement.  Applications aux réseaux de télécommunications.  Implémentations parallèles.
  • 18. • L’algorithme des colonies des fourmis est une heuristique, avec caractère général utilisée pour résoudre différentes problèmes d’analyse combinatoire. • Principal inconvénient : coût relativement élevé de la génération des solutions. • Elle commence à être adaptée à des problèmes continus.
  • 19. 1. Optimisation par colonies de fourmis. COSTANZO Andrea. LUONGThéVan. MARILL Guillaume. 2. http://khayyam.developpez.com/articles/algo/voy ageur-de-commerce/colonies-de-fourmis/. 3. http://www.apprendre-en- ligne.net/info/algo/fourmis.html.