340 likes | 689 Views
Institut Supérieur d'Informatique et des Techniques de Communication. L’algorithme de fourmis Elaborer par : Mayeh ons Bannour Amira . Sommaire . Historique C’est quoi l’algorithme de fourmis? Origine Les comportement Les fonctionnalités
E N D
Institut Supérieur d'Informatique et des Techniques de Communication L’algorithme de fourmis Elaborer par : Mayeh ons Bannour Amira
Sommaire • Historique • C’est quoi l’algorithme de fourmis? • Origine • Les comportement • Les fonctionnalités • Les système fourni • Principale variante • Cadre ACO • Application • Structure Algorithme de fourmis • Conclusion
Historique • Initialement proposé par Marco Dorigo et al. dans les années 1990, pour la recherche de chemins optimaux dans un graphe, le premier algorithme s’inspire du comportement des fourmis recherchant un chemin entre leur colonie et une source de nourriture.
C’est quoi algorithme de fourmis? • Les algorithmes de colonies de fourmis sont des algorithmes inspirés du comportement des fourmis et qui constituent une famille de métaheuristiques d’optimisation. • L’idée originale s'est depuis diversifiée pour résoudre une classe plus large de problèmes et plusieurs algorithmes ont vu le jour, s’inspirant de divers aspects du comportement des fourmis.
Origine • 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.
Les comportement (1/2) • Un modèle expliquant ce comportement est le suivant : • une fourmi (appelée « éclaireuse ») parcourt plus ou moins au hasard l’environnement autour de la colonie • 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 • ces phéromones étant attractives, les fourmis passant à proximité vont avoir tendance à suivre, de façon plus ou moins directe, cette piste • en revenant au nid, ces mêmes fourmis vont renforcer la piste
les comportement (2/2) 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.
le système fourmi • Le système de deux manière de description : • Description générale • Description formelle
Description général • Le premier algorithme de colonies de fourmis proposé est appelé l’Anti système(système fourmi). Il vise notamment à résoudre le problème du voyageur de commerce, où le but est de trouver le plus court chemin permettant de relier un ensemble de villes.
Description général • À chaque étape, la fourmi choisit de passer d’une ville à une autre en fonction de quelques règles : • elle ne peut visiter qu’une fois chaque ville • plus une ville est loin, moins elle a de chance d’être choisie (c’est la « visibilité ») • plus l'intensité de la piste de phéromone disposée sur l’arête entre deux villes est grande, plus le trajet aura de chance d’être choisi • une fois son trajet terminé, la fourmi dépose, sur l’ensemble des arêtes parcourues, plus de phéromones si le trajet est court • les pistes de phéromones s’évaporent à chaque itération.
Description formelle • La règle de déplacement est appelée « règle aléatoire de transition proportionnelle », et est écrite mathématiquement sous la forme suivante :
Description formelle • Une fois la tournée des villes effectuée, une fourmi k dépose une quantité de phéromone sur chaque arête de son parcours :
Description formelle • À la fin de chaque itération de l’algorithme, les phéromones déposées aux itérations précédentes par les fourmis s’évaporent de : Et à la fin de l'itération, on a la somme des phéromones qui ne se sont pas évaporées et de celles qui viennent d'être déposées.
Principal variante • L’algorithme de colonies de fourmis a été à l’origine surtout utilisé pour produire des solutions quasi-optimales au problème du voyageur de commerce, puis, plus généralement, aux problèmes d’optimisation combinatoire. On observe que depuis ses débuts son emploi s'est étendu à plusieurs domaines, depuis l’optimisation continue jusqu’à la classification ou encore le traitement d’image.
Le cadre ACO • Ce cadre se limite cependant aux algorithmes construisant des solutions sous la forme de paramètres associés aux composants d'un graphe, à l'aide d'un modèle statistique biaisé. • Une méthode de type ACO suit le schéma algorithmique suivant, paramétré par: • un critère d'arrêt de l’algorithme un temps de calcul ou un nombre d'itérations alloué dépassé, un seuil d'amélioration des solutions qui n’est plus satisfaisant, ou une combinaison de critères • desheuristiques(éventuellement) un critère de choix des pistes à explorer ou à éliminer • uneconstruction des solutions et des pistes de phéromones dépendant du problème à résoudre et de sa structures
Application (1/ 3) • Les variantes combinatoires peuvent avoir un avantage, par rapport aux autres méta heuristiques, dans le cas où le graphe étudié peut changer dynamiquement au cours de l’exécution : la colonie de fourmis s’adaptera de façon relativement flexible aux changements. Ceci semble être intéressant pour le routage réseau.
Application (2/3) • Les algorithmes de colonies de fourmis ont été appliqués à un grand nombre de problèmes d’optimisation combinatoire, allant de l'affectation quadratique au replis de protéine ou au routage de véhicules. Comme beaucoup de méta heuristiques, l’algorithme de base a été adapté aux problèmes dynamiques, en variables réelles, aux problèmes stochastiques, multi-objectifs ou aux implémentations parallèles, etc.
Application(3/3) • Problème du sac à dos. Les fourmis en nombre limité privilégient la goutte de miel, en plus petite quantité mais plus intéressante que l'eau sucrée, plus abondante mais moins nutritive.
Algorithme de fourmis Répéter Sélectionne aléatoire de n fourmis sur n ville Pour ide 1 a k faire Pour j de 1 a n faire Choisir le ville suivant en appliquant les règles de choix Fin pour Fin pour Mise ajour de la piste phénomènes jusqu’à condition de fin
Conclusion • D’une façon très générale, les algorithmes de colonies de fourmis sont considérés comme des méta heuristiques à population, où chaque solution est représentée par une fourmi se déplaçant sur l’espace de recherche. • Les fourmis marquent les meilleures solutions, et tiennent compte des marquages précédents pour optimiser leur recherche.