ant colony optimization algorithms : introduction …introduction main aco algorithms applications...

38
!"# %&'&"( )*+,-./+&" 01&23 4/1-& 0/5&"6 76*/1#,6"# &2 4/#86,/+9: /"; %&,*<#61 =9-6"96 >"-561:-#( &2 %/#/"-/ ,*/5&"6?;,-3<"-9#3-# 8@*ABBCCC3;,-3<"-9#3-#B,*/5&"6B

Upload: others

Post on 11-May-2020

14 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

!"#$%&'&"($)*+,-./+&"$

01&23$4/1-&$0/5&"6$76*/1#,6"#$&2$4/#86,/+9:$/";$%&,*<#61$=9-6"96$

>"-561:-#($&2$%/#/"-/$,*/5&"6?;,-3<"-9#3-#$

8@*ABBCCC3;,-3<"-9#3-#B,*/5&"6B$

Page 2: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References

Outline

1 IntroductionAnt Colony OptimizationMeta-heuristic OptimizationHistoryThe ACO Metaheuristic

2 Main ACO AlgorithmsMain ACO AlgorithmsAnt SystemAnt Colony SystemMAX-MIN Ant System

3 Applications of ACO4 Advantages and Disadvantages

AdvantagesDisadvanatges

Page 3: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References

Ant Colony Optimization

What is Ant Colony Optimization?

ACOProbabilistic technique.Searching for optimal path in the graph based onbehaviour of ants seeking a path between their colony andsource of food.Meta-heuristic optimization

Page 4: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References

Ant Colony Optimization

ACO Concept

Overview of the ConceptAnts navigate from nest to food source. Ants are blind!Shortest path is discovered via pheromone trails.Each ant moves at randomPheromone is deposited on pathMore pheromone on path increases probability of pathbeing followed

Page 5: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

2- path symmetric bridge

Page 6: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Real Ants

Prof. J.-L. Deneubourg (ULB Bruxelles)

Page 7: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Constrained Optimization – 2 pathasymmetric bridge

Nest

2

1

nest

food Foraging area

Foraging area

Nest

12.5

cm

4 mn 8 mn

Page 8: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Real Ant Experiment

Page 9: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References

Ant Colony Optimization

Page 10: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

2- path symmetric bridge

Page 11: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Real Ants

Prof. J.-L. Deneubourg (ULB Bruxelles)

Page 12: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Constrained Optimization – 2 pathasymmetric bridge

Nest

2

1

nest

food Foraging area

Foraging area

Nest

12.5

cm

4 mn 8 mn

Page 13: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Real Ant Experiment

Page 14: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Shortest Path - unconstrained

source 1

source 2

source 3

nest

a b

c d

The virtual colony exploits the nearestfood sources first.

When the nearest food sources havebeen exhausted, the colony then startsexploiting remote sources.

Page 15: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Searching a Graph by Smell-OrientedVertex Process (Wagner99)

• Ant walks along edges of a graph G leavingpheromone at nodes

• Pheromone used to guide search - Ant sensesamount of pheromone on nearest neighbors andchooses minimum

• Pheromone on a node depends on number of visitsand time since last visit (pheromone decays)

• Can cover graph in order nd• n=vertices• d =diameter of G (max dist between any pair of

vertices)• Multiple ants can be used with no modification• Simulation (vaw.html)

Page 16: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Shortest Path – constrained tographs

Mario Pavone
Mario Pavone
Mario Pavone
Page 17: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References

Ant Colony Optimization

Page 18: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Travelling Salesman Problem (TSP)Problem: given N cities, and a distance function dbetween cities, find a tour that:

(1) goes through every city once and only once

(2) minimizes the total distance

! Problem is NP-complete

! Classical combinatorialoptimization problemto test algorithms

Seattle

San Francisco

Salt Lake City

Los Angeles

Las Vegas

San Diego Phoenix Albuquerque

Houston

Oklahoma City

Indianapolis

Miami

New York

Atlanta

Boston

Page 19: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References

Ant Colony Optimization

ACO System

Overview of the SystemVirtual trail accumulated on path segmentsPath selected at random based on amount of "trail" presenton possible paths from starting nodeAnt reaches next node, selects next pathContinues until reaches starting nodeFinished tour is a solution.Tour is analyzed for optimality

Page 20: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References

Meta-heuristic Optimization

Meta-heuristic

1 Heuristic method for solving a very general class ofcomputational problems by combining user-given heuristicsin the hope of obtaining a more efficient procedure.

2 ACO is meta-heuristic3 Soft computing technique for solving hard discrete

optimization problems

Page 21: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References

History

History

1 Ant System was developed by Marco Dorigo (Italy) in hisPhD thesis in 1992.

2 Max-Min Ant System developed by Hoos and Stützle in1996

3 Ant Colony was developed by Gambardella Dorigo in 1997

Page 22: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References

The ACO Metaheuristic

The ACO Meta-heuristic

ACOSet Parameters, Initialize pheromone trails

SCHEDULE ACTIVITIES1 Construct Ant Solutions2 Daemon Actions (optional)3 Update Pheromones

Virtual trail accumulated on path segments

Page 23: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Ant System Solution

Salt Lake City

Las Vegas

Phoenix

Albu

quer

que

Houston

Oklahoma City

?

•In AS ants are launched at cities and build solutions to theTSP by traversing the graph until they complete a tour.

•At each step a probabilistic transition rule is applied.

Page 24: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References

The ACO Metaheuristic

ACO - Construct Ant Solutions

ACO - Construct Ant SolutionsAn ant will move from node i to node j with probability

pi,j =(⌧↵

i,j )(⌘�i,j )P

(⌧↵i,j )(⌘

�i,j )

where⌧i,j is the amount of pheromone on edge i , j↵ is a parameter to control the influence of ⌧i,j⌘i,j is the desirability of edge i , j (typically 1/di,j )� is a parameter to control the influence of ⌘i,j

Page 25: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References

The ACO Metaheuristic

ACO - Pheromone Update

ACO - Pheromone UpdateAmount of pheromone is updated according to the equation

⌧i,j = (1� ⇢)⌧i,j + �⌧i,j

where⌧i,j is the amount of pheromone on a given edge i , j⇢ is the rate of pheromone evaporation�⌧i,j is the amount of pheromone deposited, typically given by

�⌧ ki,j =

(1/Lk if ant k travels on edge i , j0 otherwise

where Lk is the cost of the kth ant’s tour (typically length).

Page 26: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Performance

• Algorithm found best solutions on small problems(30 city)

• On larger problems converged to good solutions –but not the best

• On “static” problems like TSP hard to beatspecialist algorithms

• Ants are “dynamic” optimizers – should we evenexpect good performance on static problems

• Coupling ant with local optimizers gave worldclass results….

Page 27: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References

Main ACO Algorithms

ACO

ACOMany special cases of the ACO metaheuristic have beenproposed.The three most successful ones are: Ant System, AntColony System (ACS), and MAX-MIN Ant System (MMAS).For illustration, example problem used is TravellingSalesman Problem.

Page 28: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References

Ant System

ACO - Ant System

ACO - Ant SystemFirst ACO algorithm to be proposed (1992)Pheromone values are updated by all the ants that havecompleted the tour.

⌧ij (1� ⇢) · ⌧ij +Pm

k=1 �⌧ kij ,

where⇢ is the evaporation ratem is the number of ants�⌧ k

ij is pheromone quantity laid on edge (i , j) by the kth ant

�⌧ ki,j =

(1/Lk if ant k travels on edge i , j0 otherwise

where Lk is the tour length of the kth ant.

Page 29: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References

Ant Colony System

ACO - Ant Colony System

ACO - Ant Colony SystemFirst major improvement over Ant SystemDifferences with Ant System:

1 Decision Rule - Pseudorandom proportional rule2 Local Pheromone Update3 Best only offline Pheromone Update

Page 30: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References

Ant Colony System

ACO - Ant Colony System

ACO - Ant Colony SystemAnts in ACS use the pseudorandom proportional ruleProbability for an ant to move from city i to city j dependson a random variable q uniformly distributed over [0, 1],and a parameter q0.If q q0, then, among the feasible components, thecomponent that maximizes the product ⌧il⌘

�il is chosen,

otherwise the same equation as in Ant System is used.This rule favours exploitation of pheromone information

Page 31: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References

Ant Colony System

ACO - Ant Colony System

ACO - Ant Colony SystemDiversifying component against exploitation: localpheromone update.The local pheromone update is performed by all ants aftereach step.Each ant applies it only to the last edge traversed:

⌧ij = (1� ') · ⌧ij + ' · ⌧0

where' 2 (0, 1] is the pheromone decay coefficient⌧0 is the initial value of the pheromone (value kept smallWhy?)

Page 32: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References

Ant Colony System

ACO - Ant Colony System

ACO - Ant Colony SystemBest only offline pheromone update after constructionOffline pheromone update equation

⌧ij (1� ⇢) · ⌧ij + ⇢ · �⌧bestij

where

⌧bestij =

(1/Lbest if best ant k travels on edge i , j0 otherwise

Lbest can be set to the length of the best tour found in thecurrent iteration or the best solution found since the start ofthe algorithm.

Page 33: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References

MAX-MIN Ant System

ACO - MAX-MIN Ant System

ACO - MAX-MIN Ant SystemDifferences with Ant System:

1 Best only offline Pheromone Update2 Min and Max values of the pheromone are explicitly limited

⌧ij is constrained between ⌧min and ⌧max (explicitly set byalgorithm designer).After pheromone update, ⌧ij is set to ⌧max if ⌧ij > ⌧max and to⌧min if ⌧ij < ⌧min

Page 34: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References

Applications of ACO

ACORouting in telecommunication networksTraveling SalesmanGraph ColoringSchedulingConstraint Satisfaction

Page 35: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References

Advantages

Advantages of ACO

ACOInherent parallelismPositive Feedback accounts for rapid discovery of goodsolutionsEfficient for Traveling Salesman Problem and similarproblemsCan be used in dynamic applications (adapts to changessuch as new distances, etc)

Page 36: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References

Disadvanatges

Disadvantages of ACO

ACOTheoretical analysis is difficultSequences of random decisions (not independent)Probability distribution changes by iterationResearch is experimental rather than theoreticalTime to convergence uncertain (but convergence isgauranteed!)

Page 37: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References

Summary

Artificial Intelligence technique used to develop a newmethod to solve problems unsolvable since last manyyearsACO is a recently proposed metaheuristic approach forsolving hard combinatorial optimization problems.Artificial ants implement a randomized constructionheuristic which makes probabilistic decisionsACO shows great performance with the “ill-structured”problems like network routing

Page 38: Ant colony Optimization Algorithms : Introduction …Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References Ant Colony Optimization ACO

Introduction Main ACO Algorithms Applications of ACO Advantages and Disadvantages Summary References

References

M. Dorigo, M. Birattari, T. Stützle, “Ant Colony Optimization– Artificial Ants as a Computational IntelligenceTechnique”, IEEE Computational Intelligence Magazine,2006M. Dorigo K. Socha, “An Introduction to Ant ColonyOptimization”, T. F. Gonzalez, Approximation Algorithmsand Metaheuristics, CRC Press, 2007M. Dorigo T. Stützle, “The Ant Colony OptimizationMetaheuristic: Algorithms, Applications, and Advances”,Handbook of Metaheuristics, 2002