aco-03-04-2013

Download Report

Transcript aco-03-04-2013

Ant Colony Optimization: an introduction

Daniel Chivilikhin 03.04.2013

Outline

1. Biological inspiration of ACO 2. Solving NP-hard combinatorial problems 3. The ACO metaheuristic 4. ACO for the Traveling Salesman Problem 2

Outline

1. Biological inspiration of ACO

2. Solving NP-hard combinatorial problems 3. The ACO metaheuristic 4. ACO for the Traveling Salesman Problem 3

Biological inspiration: from real to artificial ants

4

Ant colonies

• Distributed systems of social insects • Consist of

simple

individuals • Colony intelligence >> Individual intelligence 5

Ant Cooperation

Stigmergy

– indirect communication between individuals (ants) • Driven by environment modifications 6

Denebourg’s double bridge experiments

• Studied Argentine ants

I. humilis

• Double bridge from ants to food source 7

Double bridge experiments: equal lengths (1)

8

Double bridge experiments: equal lengths (2)

• Run for a number of trials • Ants choose each branch ~ same number of trials 9

Double bridge experiments: different lengths (2)

10

Double bridge experiments: different lengths (2)

• The majority of ants follow the short path 11

Outline

1. Biological inspiration of ACO

2. Solving NP-hard combinatorial problems

3. The ACO metaheuristic 4. ACO for the Traveling Salesman Problem 12

Solving NP-hard combinatorial problems

13

Combinatorial optimization

• Find values of discrete variables • Optimizing a given

objective function

14

Combinatorial optimization

• • Π = (

S

,

f

, Ω) – problem instance

S

– set of candidate solutions

f –

objective function • • Ω – set of constraints ~

S

S

– set of feasible solutions (with respect to Ω) • Find globally optimal feasible solution

s*

15

NP-hard combinatorial problems

• • Cannot be

exactly

solved in polynomial time

Approximate

methods – generate near optimal solutions in reasonable time • No formal theoretical guarantees • Approximate methods =

heuristics

16

Approximate methods

• Constructive algorithms • Local search 17

Constructive algorithms

• Add components to solution incrementally • Example – greedy heuristics:

add solution component with best heuristic estimate

18

Local search

• Explore neighborhoods of complete solutions • Improve current solution by local changes – first improvement – best improvement 19

What is a metaheuristic?

• A set of algorithmic concepts • Can be used to define heuristic methods • Applicable to a wide set of problems 20

Examples of metaheuristics

• Simulated annealing • Tabu search • Iterated local search • Evolutionary computation •

Ant colony optimization

• Particle swarm optimization • etc.

21

Outline

1. Biological inspiration of ACO 2. Solving NP-hard combinatorial problems

3. The ACO metaheuristic

4. ACO for the Traveling Salesman Problem 22

The ACO metaheuristic

23

ACO metaheuristic

• A colony of artificial ants cooperate in finding good solutions • Each ant – simple agent • Ants communicate indirectly using

stigmergy

24

Combinatorial optimization problem mapping (1)

• Combinatorial problem (

S

,

f

, Ω(t)) • Ω(t) – time-dependent constraints  Example – dynamic problems • Goal – find globally optimal feasible solution

s

* • Minimization problem • Mapped on another problem… 25

Combinatorial optimization problem mapping (2)

• •

C

= {

c

1 ,

c

2 , …,

c Nc

} – finite set of

components States

of the problem:

X

= {

x

= <

c i

,

c j

, …,

c h

, …>, |

x

| <

n

< + ∞} • Set of

candidate

solutions:

S

X

26

Combinatorial optimization problem mapping (3)

• Set of feasible states: ~

X

X

satisfying Ω(t) • Non-empty set of optimal solutions:

S

*  ~

X

S

27

Combinatorial optimization problem mapping (4)

• X – states • S – candidate solutions • ~

X

– feasible states •

S

* – optimal solutions

S X S*

~

X

28

Combinatorial optimization problem mapping (5)

• Cost

g

(

s

,

t

) for each • In most cases –

s

S g

(

s

,

t

) ≡

f

(

s

,

t

) 

s

 ~

S

G C =

(

C

,

L

) – completely connected graph • C – set of

components

• • L – edges fully connecting the components (

connections

)

G C

construction graph

29

Combinatorial optimization problem mapping (last

)

• Artificial ants build solutions by performing randomized walks on

G C

(

C

,

L

) 30

Construction graph

• Each component

c i

associated:   heuristic information pheromone trail or connection

l ij

have 31

Heuristic information

A priori

information about the problem • Does not depend on the ants • On components

c i

• On connections

l ij

η – η ij i

• Meaning: cost of adding a component to the current solution 32

Pheromone trail

• Long-term memory about the entire search process • On components

c i

• On connections

l ij

τ – τ ij i

• Updated by the ants 33

Artificial ant (1)

• Stochastic constructive procedure • Builds solutions by moving on

G C

• Has finite memory for: – Implementing constraints Ω(

t

) – Evaluating solutions – Memorizing its path 34

Artificial ant (2)

• Has a start state x • Has termination conditions

e k

• From state

x r

moves to a node from the neighborhood –

N k

(

x r

) • Stops if some

e k

are satisfied 35

Artificial ant (3)

• Selects a move with a probabilistic rule depending on:    Pheromone trails and heuristic information of neighbor components and connections Memory Constraints Ω 36

Artificial ant (4)

• Can update pheromone on visited components (nodes) • and connections (edges) • Ants act:  Concurrently  Independently 37

The ACO metaheuristic

While not doStop(): ConstructAntSolutions() UpdatePheromones() DaemonActions() 38

ConstructAntSolutions

• A colony of ants build a set of solutions • Solutions are evaluated using the objective function 39

UpdatePheromones

• Two opposite mechanisms:  Pheromone deposit  Pheromone evaporation 40

UpdatePheromones: pheromone deposit

• Ants increase pheromone values on visited components and/or connections • Increases probability to select visited components later 41

UpdatePheromones: pheromone evaporation

• Decrease pheromone trails on all components/connections by a same value • Forgetting – avoid rapid convergence to suboptimal solutions 42

DaemonActions

• Optional centralized actions, e.g.:  Local optimization  Ant elitism (details later) 43

ACO applications

• Traveling salesman • Quadratic assignment • Graph coloring • Multiple knapsack • Set covering • Maximum clique • Bin packing • … 44

Outline

1. Biological inspiration of ACO 2. Solving NP-hard combinatorial problems 3. The ACO metaheuristic

4. ACO for the Traveling Salesman Problem

45

ACO for the Traveling Salesman Problem

46

Traveling salesman problem

N

– set of nodes (cities), |

N

| =

n

• A – set of arcs, fully connecting

N

• Weighted graph

G

= (

N

,

A

) • Each arc has a weight

d ij

• Problem:

distance

Find minimum length Hamiltonian circuit

47

TSP: construction graph

• • Identical to the problem graph

C

=

N

L

=

A

• states = set of all possible partial tours 48

TSP: constraints

• All cities have to be visited • Each city – only once • Enforcing – allow ants only to go to new nodes 49

TSP: pheromone trails

• Desirability of visiting city

j

directly after

i

50

TSP: heuristic information

η ij =

1 /

d ij

• Used in most ACO for TSP 51

TSP: solution construction

• Select random start city • Add unvisited cities iteratively • Until a complete tour is built 52

ACO algorithms for TSP

• Ant System • Elitist Ant System • Rank-based Ant System • Ant Colony System • MAX-MIN Ant System 53

Ant System: Pheromone initialization

• Pheromone initialization

Τ ij = m

/

C nn , where:

 

m – number of ants C nn – path length of nearest-neighbor algorithm

54

Ant System: Tour construction

• Ant

k

is located in city

i

N i k

is the neighborhood of city

i

• Probability to go to city

j

N i k

:

p ij k

  

k l

N ij

i

il

  

ij

  

il

 55

Tour construction: comprehension

p ij k

 

l

N k ij

  

il ij

  

il i

α

= 0 – greedy algorithm • β = 0 – only pheromone is at work  quickly leads to stagnation 56

Ant System: update pheromone trails – evaporation

Evaporation for all connections ∀ (

i

,

j

) ∈

L

:

τ ij

← (1 –

ρ

)

τ ij , ρ

∈ [0, 1] – evaporation rate

Prevents convergence to suboptimal solutions

57

• • •

Ant System: update pheromone trails – deposit

T k

– path of ant

k C k – length of path T k

Ants deposit pheromone on visited arcs: 

ij

 

ij

k m

  1  

ij k

,    

L

 

ij k

  1   0 , /

C k

, 

otherwise T k

58

Elitist Ant System

• Best-so-far ant deposits pheromone on each iteration: 

ij

 

ij

k m

  1  

ij k

e

 

ij best

 

ij best

  1   0 , /

C best

,

otherwise

T best

59

Rank-based Ant System

• Rank all ants • Each ant deposits amounts of pheromone proportional to its rank 60

MAX-MIN Ant System

1. Only iteration-best or best-so-far ant deposits pheromone 2. Pheromone trails are limited to the interval [

τ

min,

τ

max ] 61

Ant Colony System

• Differs from Ant System in three points:  More aggressive tour construction rule  Only best ant evaporates and deposits pheromone  Local pheromone update 62

Ant Colony System

1.Tour Construction

j

 arg 

like

max

Ant l

N i k

 

il System

,

il

,

if q

otherwise q

0 2. Local pheromone update:

τ ij

← (1 –

ξ

)

τ ij + ξτ 0 ,

63

Comparing Ant System variants

64

State of the art in TSP

• CONCORDE http://www.tsp.gatech.edu/concorde.html

• Solved an instance of 85900 cities • Computation took 286-2719 CPU days!

65

Current ACO research activity

• New applications • Theoretical proofs 66

Further reading

• • M. Dorigo, T. Stützle. Ant Colony Optimization. MIT Press, 2004.

http://iridia.ulb.ac.be/~mdorigo/ACO/ 67

Next time…

• Some proofs of ACO convergence 68

Thank you!

Any questions?

This presentation is available at: http://rain.ifmo.ru/~chivdan/presentations/ Daniel Chivilikhin [mailto: [email protected]] 69

Used resources

• • • • • • • • http://teamaltman.com/wp-content/uploads/2011/06/Uncertainty-Ant-Apple 1024x1024.jpg

http://myrealestatecoach.files.wordpress.com/2012/04/ant.jpg

http://ars.els-cdn.com/content/image/1-s2.0-S1568494613000264-gr3.jpg

http://www.theorie.physik.uni-goettingen.de/forschung/ha/talks/stuetzle.pdf

http://www.buyingandsellingwebsites.com/wp-content/uploads/2011/12/Ant-150.jpg

http://moodle2.gilbertschools.net/moodle/file.php/1040/Event 100_Days/Ant_Hormiga.gif

http://4.bp.blogspot.com/_SPAe2p8Y-kg/TK3hQ8BUMtI/AAAAAAAAAHA/p75K GcT_oo/s1600/ant+vision.GIF

http://1.bp.blogspot.com/ tXKJQ4nSqOY/UQZ3vabiy_I/AAAAAAAAAjA/IK8jtlhElqk/s1600/16590492-illustration of-an-ant-on-a-white-background.jpg

70