Ant Colony Optimisation. Emergent Problem Solving in Lasius Niger ants, For Lasius Niger ants, [Franks, 89] observed: –regulation of nest temperature.

Slides:



Advertisements
Similar presentations
VEHICLE ROUTING PROBLEM
Advertisements

Swarm Intelligence (sarat chand) (naresh Kumar) (veeranjaneyulu) (kalyan raghu)‏
Swarm algorithms COMP308. Swarming – The Definition aggregation of similar animals, generally cruising in the same direction Termites swarm to build colonies.
1 Topic 7: Stigmergy, Swarm Intelligence and Ant Algorithms stigmergy swarm intelligence ant algorithms  AntNet: routing  AntSystem: TSP.
Ant colonies for the traveling salesman problem Eliran Natan Seminar in Bioinformatics (236818) – Spring 2013 Computer Science Department Technion - Israel.
Ant Colony Optimization. Brief introduction to ACO Ant colony optimization = ACO. Ants are capable of remarkably efficient discovery of short paths during.
Biologically Inspired Computation Lecture 10: Ant Colony Optimisation.
The Antnet Routing Algorithm - A Modified Version Firat Tekiner, Z. Ghassemlooy Optical Communications Research Group, The University of Northumbria, Newcastle.
Anti-pheromone as a Tool for Better Exploration of Search Space by James Montgomery and Marcus Randall, Bond University, Australia.
CMPT 401 Summer 2007 Dr. Alexandra Fedorova Lecture XVII: Distributed Systems Algorithms Inspired by Biology.
Ant Colony Optimization Optimisation Methods. Overview.
CMPT Dr. Alexandra Fedorova Lecture XVII: Distributed Systems Algorithms Inspired by Biology.
Ant Colony Optimization Algorithms for the Traveling Salesman Problem ACO Kristie Simpson EE536: Advanced Artificial Intelligence Montana State.
Presented by: Martyna Kowalczyk CSCI 658
When Ants Attack! Ant Algorithms for Subset Selection Problems Derek BridgeFinbarr TarrantChristine Solnon University College CorkUniversity of Lyon.
Biologically Inspired Computation Ant Colony Optimisation.
Ant Colony Optimization: an introduction
Ant Colony Optimization (ACO): Applications to Scheduling
1 IE 607 Heuristic Optimization Ant Colony Optimization.
FORS 8450 Advanced Forest Planning Lecture 19 Ant Colony Optimization.
Ant colony optimization algorithms Mykulska Eugenia
Part B Ants (Natural and Artificial) 8/25/ Real Ants (especially the black garden ant, Lasius niger)
Distributed Systems 15. Multiagent systems and swarms Simon Razniewski Faculty of Computer Science Free University of Bozen-Bolzano A.Y. 2014/2015.
Swarm intelligence Self-organization in nature and how we can learn from it.
CSM6120 Introduction to Intelligent Systems Other evolutionary algorithms.
Genetic Algorithms and Ant Colony Optimisation
EE4E,M.Sc. C++ Programming Assignment Introduction.
Swarm Computing Applications in Software Engineering By Chaitanya.
Swarm Intelligence 虞台文.
Algorithms and their Applications CS2004 ( )
G5BAIM Artificial Intelligence Methods Graham Kendall Ant Algorithms.
-Abhilash Nayak Regd. No. : CS1(B) “The Power of Simplicity”
Design & Analysis of Algorithms Combinatory optimization SCHOOL OF COMPUTING Pasi Fränti
PSO and ASO Variants/Hybrids/Example Applications & Results Lecture 12 of Biologically Inspired Computing Purpose: Not just to show variants/etc … for.
Kavita Singh CS-A What is Swarm Intelligence (SI)? “The emergent collective intelligence of groups of simple agents.”
Ant Colony Optimization. Summer 2010: Dr. M. Ameer Ali Ant Colony Optimization.
Ant Colony Optimization Theresa Meggie Barker von Haartman IE 516 Spring 2005.
Object Oriented Programming Assignment Introduction Dr. Mike Spann
Biologically Inspired Computation Ant Colony Optimisation.
Topic 6: Stigmergy, Swarm Intelligence and Ant Algorithms swarm intelligence stigmergy ant algorithms  AntNet: routing  AntSystem: TSP.
Optimizing Pheromone Modification for Dynamic Ant Algorithms Ryan Ward TJHSST Computer Systems Lab 2006/2007 Testing To test the relative effectiveness.
Ant colony optimization. HISTORY introduced by Marco Dorigo (MILAN,ITALY) in his doctoral thesis in 1992 Using to solve traveling salesman problem(TSP).traveling.
Ant Colony Optimization Quadratic Assignment Problem Hernan AGUIRRE, Adel BEN HAJ YEDDER, Andre DIAS and Pascalis RAPTIS Problem Leader: Marco Dorigo Team.
Technical Seminar Presentation Presented By:- Prasanna Kumar Misra(EI ) Under the guidance of Ms. Suchilipi Nepak Presented By Prasanna.
Ant Colony Optimization 22c: 145, Chapter 12. Outline Introduction (Swarm intelligence) Natural behavior of ants First Algorithm: Ant System Improvements.
Ant Colony Optimization Andriy Baranov
The Ant System Optimization by a colony of cooperating agents.
Biologically Inspired Computation Ant Colony Optimisation.
AUT- Department of Industrial Engineering Behrooz Karimi 1 Ant Colony Optimization By: Dr. Behrooz Karimi
What is Ant Colony Optimization?
Philipp A. Djang Ph.D. Army Research Labs
B.Ombuki-Berman1 Swarm Intelligence Ant-based algorithms Ref: Various Internet resources, books, journal papers (see assignment 3 references)
Name : Mamatha J M Seminar guide: Mr. Kemparaju. GRID COMPUTING.
Ant Colony Optimization
Ant Colony Optimization
Scientific Research Group in Egypt (SRGE)
Lecture XVII: Distributed Systems Algorithms Inspired by Biology
Subject Name: Operation Research Subject Code: 10CS661 Prepared By:Mrs
Firat Tekiner (Phd Student) Z. Ghassemlooy
Ant colonies for traveling salesman problem
Genetic Algorithms and TSP
metaheuristic methods and their applications
Metaheuristic methods and their applications. Optimization Problems Strategies for Solving NP-hard Optimization Problems What is a Metaheuristic Method?
Swarm Intelligence.
ANT COLONY OPTIMIZATION
Overview of SWARM INTELLIGENCE and ANT COLONY OPTIMIZATION
Ant Colony Optimization
Design & Analysis of Algorithms Combinatorial optimization
traveling salesman problem
Ant Colony Optimization
Presentation transcript:

Ant Colony Optimisation

Emergent Problem Solving in Lasius Niger ants, For Lasius Niger ants, [Franks, 89] observed: –regulation of nest temperature within 1 degree celsius range; –forming bridges; –raiding specific areas for food; –building and protecting nest; –sorting brood and food items; –cooperating in carrying large items; –emigration of a colony; –finding shortest route from nest to food source; –preferentially exploiting the richest food source available. These are swarm behaviours – beyond what any individual can do.

A living bridge

Clustered by Ants

Co-operative Carrying

Explainable (arguably) as emergent property of many individuals operating simple rules? For Lasius Niger ants, [Franks, 89] observed: –regulation of nest temperature within 1 degree celsius range; –forming bridges; –raiding specific areas for food; –building and protecting nest; –sorting brood and food items; –cooperating in carrying large items; –emigration of a colony; –finding shortest route from nest to food source; –preferentially exploiting the richest food source available. The ACO algorithm is inspired by this:

Stigmergy in Ants Ants are behaviorally unsophisticated, but collectively they can perform complex tasks. Ants have highly developed sophisticated sign-based stigmergy –They communicate using pheromones; –They lay trails of pheromone that can be followed by other ants. If an ant has a choice of two pheromone trails to follow, one to the NW, one to the NE, but the NW one is stronger – which one will it follow?

Individual ants lay pheromone trails while travelling from the nest, to the nest or possibly in both directions. The pheromone trail gradually evaporates over time. But pheromone trail strength accumulate with multiple ants using path. Pheromone Trails Food source Nest

Pheromone Trails Continued D E H C A B d=0.5 d=1.0 E H E D H C A B 30 ants D C A B 15 ants 30 ants 10 ants 20 ants 10 ants 30 ants T = 0 T = 1

Background Introduced by Marco Dorigo (Milan, Italy), and others in early 1990s. A probabilistic technique for solving computational problems which can be reduced to finding good paths through graphs. They are inspired by the behaviour of ants in finding paths from the colony to food.

Typical Applications TSP  Traveling Salesman Problem Quadratic assignment problems Scheduling problems Dynamic routing problems in networks

Ant Colony Optimisation Algorithms: Basic Ideas Ants are agents that: Move along between nodes in a graph. They choose where to go based on pheromone strength (and maybe other things) An ant’s path represents a specific candidate solution. When an ant has finished a solution, pheromone is laid on its path, according to quality of solution. This pheromone trail affects behaviour of other ants by `stigmergy’ …

E.g. A 4-city TSP AB C D Pheromone Ant AB: 10, AC: 10, AD, 30, BC, 40, CD 20 Initially, random levels of pheromone are scattered on the edges

E.g. A 4-city TSP AB C D Pheromone Ant AB: 10, AC: 10, AD, 30, BC, 40, CD 20 An ant is placed at a random node

E.g. A 4-city TSP AB C D Pheromone Ant AB: 10, AC: 10, AD, 30, BC, 40, CD 20 The ant decides where to go from that node, based on probabilities calculated from: - pheromone strengths, - next-hop distances. Suppose this one chooses BC

E.g. A 4-city TSP AB C D Pheromone Ant AB: 10, AC: 10, AD, 30, BC, 40, CD 20 The ant is now at C, and has a `tour memory’ = {B, C} – so he cannot visit B or C again. Again, he decides next hop (from those allowed) based on pheromone strength and distance; suppose he chooses CD

E.g. A 4-city TSP AB C D Pheromone Ant AB: 10, AC: 10, AD, 30, BC, 40, CD 20 The ant is now at D, and has a `tour memory’ = {B, C, D} There is only one place he can go now:

E.g. A 4-city TSP AB C D Pheromone Ant AB: 10, AC: 10, AD, 30, BC, 40, CD 20 So, he has nearly finished his tour, having gone over the links: BC, CD, and DA.

E.g. A 4-city TSP AB C D Pheromone Ant AB: 10, AC: 10, AD, 30, BC, 40, CD 20 So, he has nearly finished his tour, having gone over the links: BC, CD, and DA. AB is added to complete the round trip. Now, pheromone on the tour is increased, in line with the fitness of that tour.

E.g. A 4-city TSP AB C D Pheromone Ant AB: 10, AC: 10, AD, 30, BC, 40, CD 20 Next, pheromone everywhere is decreased a little, to model decay of trail strength over time

E.g. A 4-city TSP B C D Pheromone Ant AB: 10, AC: 10, AD, 30, BC, 40, CD 20 We start again, with another ant in a random position. Where will he go? Next, the actual algorithm and variants. A

The Ant System (AS)

The ACO algorithm for the TSP We have a TSP, with n cities. 1. We place some ants at each city. Each ant then does this: It makes a complete tour of the cities, coming back to its starting city, using a transition rule to decide which links to follow. By this rule, it chooses each next-city stochastically, biased partly by the pheromone levels existing at each path, and biased partly by heuristic information.

The ACO algorithm for the TSP We have a TSP, with n cities. 1. We place some ants at each city. Each ant then does this: It makes a complete tour of the cities, coming back to its starting city, using a transition rule to decide which links to follow. By this rule, it chooses each next-city at random, but biased partly by the pheromone levels existing at each path, and biased partly by heuristic information. 2. When all ants have completed their tours. Global Pheromone Updating occurs. The current pheromone levels on all links are reduced (I.e. pheromone levels decay over time). Pheromone is lain (belatedly) by each ant as follows: it places pheromone on all links of its tour, with strength depending on how good the tour was. Then we go back to 1 and repeat the whole process many times, until we reach a termination criterion.

A very common variation, which gives the best results We have a TSP, with n cities. 1. We place some ants at each city. Each ant then does this: It makes a complete tour of the cities, coming back to its starting city, using a transition rule to decide which links to follow. By this rule, it chooses each next-city at random, but biased partly by the pheromone levels existing at each path, and biased partly by heuristic information. 2. When all ants have completed their tours. Apply some iterations of LOCAL SEARCH to the completed tour; this finds a better solution, which is now treated as the ant’s path. Then continue the next steps as normal. Global Pheromone Updating occurs. The current pheromone levels on all links are reduced (I.e. pheromone levels decay over time). Pheromone is lain (belatedly) by each ant as follows: it places pheromone on all links of its tour, with strength depending on how good the tour was. Then we go back to 1 and repeat the whole process many times, until we reach a termination criterion.

Not just for TSP of course ACO is naturally applicable to any sequencing problem, or indeed any problem All you need is some way to represent solutions to the problem as paths in a network.

E.g. Single machine scheduling with due-dates These jobs have to be done; their length represents the time they will take. A B C D E

E.g. Single machine scheduling with due-dates These jobs have to be done; their length represents the time they will take. A B C D E Each has a `due date’, when it needs to be finished 3pm 3:30pm 5pm 4pm 4:30pm

E.g. Single machine scheduling with due-dates These jobs have to be done; their length represents the time they will take. A B C D E Each has a `due date’, when it needs to be finished 3pm 3:30pm 5pm 4pm 4:30pm Only one `machine’ is available to process these jobs, so can do just one at a time. [e.g. machine might be human tailor, photocopier, Hubble Space Telescope, Etc …]

An example schedule A due 3pmB – 3:30C - 5pmD – 4pmE -4:30 2 pm 3 pm5 pm 4 pm 6 pm A is 10min late Fitness might be average lateness; B is 40min late in this case 46min C is 20min early (lateness = 0) D is 90min late or fitness could be Max lateness, E is 90min late in this case 90min

Another schedule A due 3pmB – 3:30C - 5pmD – 4pmE -4:30 2 pm 3 pm5 pm 4 pm 6 pm A is 70min late Fitness might be average lateness; B is 30min early (0 lateness) in this case again 46min C is 60min late D is 50min late or fitness could be Max lateness, E is 50min late in this case 70min

Applying ACO to this problem Just like with the TSP, each ant finds paths in a network, where, in this case, each job is a node. Also, no need to return to start node – path is complete when every node is visited.

ACO Algorithm for TSP Initialize Place each ant in a randomly chosen city Choose NextCity(For Each Ant) more cities to visit For Each Ant Return to the initial cities Update trace level using the tour cost for each ant Print Best tour yes No Stopping criteria yes No

A simple TSP example A E D C B 1 [] d AB =100;d BC = 60…;d DE =150

Iteration 1 A E D C B 1 [A] 5 [E] 3 [C] 2 [B] 4 [D]

How to choose next city? A E D C B 1 [A] [A,D]

Iteration 2 A E D C B 3 [C,B] 5 [E,A] 1 [A,D] 2 [B,C] 4 [D,E]

Iteration 3 A E D C B 4 [D,E,A] 5 [E,A,B] 3 [C,B,E] 2 [B,C,D] 1 [A,D,C]

Iteration 4 A E D C B 4 [D,E,A,B] 2 [B,C,D,A] 5 [E,A,B,C] 1 [A,DCE] 3 [C,B,E,D]

Iteration 5 A E D C B 1 [A,D,C,E,B] 3 [C,B,E,D,A] 4 [D,E,A,B,C] 2 [B,C,D,A,E] 5 [E,A,B,C,D]

Path and Trace Update 1 [A,D,C,E,B] 5 [E,A,B,C,D] L 1 =300 L 2 =450 L 3 =260 L 4 =280 L 5 =420 2 [B,C,D,A,E] 3 [C,B,E,D,A] 4 [D,E,A,B,C]

End of First Run All ants die New ants are born Save Best Tour (Sequence and length)

Ant Algorithm for TSP Randomly position m ants on n cities Loop for step = 1 to n for k = 1 to m Choose the next city to move by applying a probabilistic state transition rule (to be described) end for Update pheromone trails Until End_condition Randomly position m ants on n cities Loop for step = 1 to n for k = 1 to m Choose the next city to move by applying a probabilistic state transition rule (to be described) end for Update pheromone trails Until End_condition