70
Ant Colony Optimization: an introduction Daniel Chivilikhin 03.04.2013

Aco 03-04-2013

Embed Size (px)

Citation preview

Page 1: Aco 03-04-2013

Ant Colony Optimization: an introduction

Daniel Chivilikhin03.04.2013

Page 2: Aco 03-04-2013

2

Outline

1. Biological inspiration of ACO2. Solving NP-hard combinatorial problems3. The ACO metaheuristic4. ACO for the Traveling Salesman Problem

Page 3: Aco 03-04-2013

3

Outline

1. Biological inspiration of ACO2. Solving NP-hard combinatorial problems3. The ACO metaheuristic4. ACO for the Traveling Salesman Problem

Page 4: Aco 03-04-2013

4

Biological inspiration: from real to artificial ants

Page 5: Aco 03-04-2013

5

Ant colonies• Distributed systems of social insects• Consist of simple individuals• Colony intelligence >> Individual intelligence

Page 6: Aco 03-04-2013

6

Ant Cooperation• Stigmergy – indirect communication

between individuals (ants)• Driven by environment modifications

Page 7: Aco 03-04-2013

7

Denebourg’s double bridge experiments

• Studied Argentine ants I. humilis• Double bridge from ants to food source

Page 8: Aco 03-04-2013

8

Double bridge experiments: equal lengths (1)

Page 9: Aco 03-04-2013

9

Double bridge experiments: equal lengths (2)

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

of trials

Page 10: Aco 03-04-2013

10

Double bridge experiments: different lengths (2)

Page 11: Aco 03-04-2013

11

Double bridge experiments: different lengths (2)

• The majority of ants follow the short path

Page 12: Aco 03-04-2013

12

Outline

1. Biological inspiration of ACO2. Solving NP-hard combinatorial problems3. The ACO metaheuristic4. ACO for the Traveling Salesman Problem

Page 13: Aco 03-04-2013

13

Solving NP-hard combinatorialproblems

Page 14: Aco 03-04-2013

14

Combinatorial optimization• Find values of discrete variables• Optimizing a given objective function

Page 15: Aco 03-04-2013

15

Combinatorial optimization

Π = (S, f, Ω) – problem instance• S – set of candidate solutions• f – objective function• Ω – set of constraints• – set of feasible solutions (with

respect to Ω)• Find globally optimal feasible solution s*

SS ~

Page 16: Aco 03-04-2013

16

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

Page 17: Aco 03-04-2013

17

Approximate methods• Constructive algorithms• Local search

Page 18: Aco 03-04-2013

18

Constructive algorithms• Add components to solution incrementally• Example – greedy heuristics: add solution component with best heuristic

estimate

Page 19: Aco 03-04-2013

19

Local search• Explore neighborhoods of complete

solutions• Improve current solution by local changes

– first improvement– best improvement

Page 20: Aco 03-04-2013

20

What is a metaheuristic?• A set of algorithmic concepts• Can be used to define heuristic methods• Applicable to a wide set of problems

Page 21: Aco 03-04-2013

21

Examples of metaheuristics• Simulated annealing• Tabu search• Iterated local search• Evolutionary computation• Ant colony optimization• Particle swarm optimization• etc.

Page 22: Aco 03-04-2013

22

Outline

1. Biological inspiration of ACO2. Solving NP-hard combinatorial problems3. The ACO metaheuristic4. ACO for the Traveling Salesman Problem

Page 23: Aco 03-04-2013

23

The ACO metaheuristic

Page 24: Aco 03-04-2013

24

ACO metaheuristic• A colony of artificial ants cooperate in

finding good solutions• Each ant – simple agent• Ants communicate indirectly using

stigmergy

Page 25: Aco 03-04-2013

25

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…

Page 26: Aco 03-04-2013

26

Combinatorial optimization problem mapping (2)

• C = {c1, c2, …, cNc} – finite set of components

• States of the problem:

X = {x = <ci, cj, …, ch, …>, |x| < n < +∞}

• Set of candidate solutions: XS

Page 27: Aco 03-04-2013

27

Combinatorial optimization problem mapping (3)

• Set of feasible states:

• We can complete into a solution satisfying Ω(t)

• Non-empty set of optimal solutions:

XX ~

Xx ~

SXS ~*

Page 28: Aco 03-04-2013

28

Combinatorial optimization problem mapping (4)

S* X~S

X• X – states

• S – candidate solutions

• – feasible states

• S* – optimal solutions

X~

Page 29: Aco 03-04-2013

29

Combinatorial optimization problem mapping (5)

• Cost g(s, t) for each • In most cases – g(s, t) ≡ f(s, t) • GC = (C, L) – completely connected graph• C – set of components• L – edges fully connecting the

components (connections)• GC – construction graph

SsSs ~

Page 30: Aco 03-04-2013

30

Combinatorial optimization problem mapping (last )

• Artificial ants build solutions by performing randomized walks on GC(C, L)

Page 31: Aco 03-04-2013

31

Construction graph

• Each component ci or connection lij have associated: heuristic information pheromone trail

Page 32: Aco 03-04-2013

32

Heuristic information• A priori information about the problem• Does not depend on the ants• On components ci – ηi

• On connections lij – ηij

• Meaning: cost of adding a component to the current

solution

Page 33: Aco 03-04-2013

33

Pheromone trail• Long-term memory about the entire search

process• On components ci – τi

• On connections lij – τij

• Updated by the ants

Page 34: Aco 03-04-2013

34

Artificial ant (1)• Stochastic constructive procedure• Builds solutions by moving on GC

• Has finite memory for:– Implementing constraints Ω(t)– Evaluating solutions– Memorizing its path

Page 35: Aco 03-04-2013

35

Artificial ant (2)• Has a start state x• Has termination conditions ek

• From state xr moves to a node from the neighborhood – Nk(xr)

• Stops if some ek are satisfied

Page 36: Aco 03-04-2013

36

Artificial ant (3)• Selects a move with a probabilistic rule

depending on: Pheromone trails and heuristic information of

neighbor components and connections Memory Constraints Ω

Page 37: Aco 03-04-2013

37

Artificial ant (4)• Can update pheromone on visited

components (nodes)• and connections (edges)• Ants act:

Concurrently Independently

Page 38: Aco 03-04-2013

38

The ACO metaheuristic

While not doStop():ConstructAntSolutions()

UpdatePheromones() DaemonActions()

Page 39: Aco 03-04-2013

39

ConstructAntSolutions• A colony of ants build a set of solutions• Solutions are evaluated using the

objective function

Page 40: Aco 03-04-2013

40

UpdatePheromones• Two opposite mechanisms:

Pheromone deposit Pheromone evaporation

Page 41: Aco 03-04-2013

41

UpdatePheromones: pheromone deposit

• Ants increase pheromone values on visited components and/or connections

• Increases probability to select visited components later

Page 42: Aco 03-04-2013

42

UpdatePheromones: pheromone evaporation

• Decrease pheromone trails on all components/connections by a same value

• Forgetting – avoid rapid convergence to suboptimal solutions

Page 43: Aco 03-04-2013

43

DaemonActions• Optional centralized actions, e.g.:

Local optimization Ant elitism (details later)

Page 44: Aco 03-04-2013

44

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

Page 45: Aco 03-04-2013

45

Outline

1. Biological inspiration of ACO2. Solving NP-hard combinatorial problems3. The ACO metaheuristic4. ACO for the Traveling Salesman

Problem

Page 46: Aco 03-04-2013

46

ACO for the Traveling Salesman Problem

Page 47: Aco 03-04-2013

47

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 dij – distance• Problem:

Find minimum length Hamiltonian circuit

Page 48: Aco 03-04-2013

48

TSP: construction graph• Identical to the problem graph• C = N• L = A• states = set of all possible partial tours

Page 49: Aco 03-04-2013

49

TSP: constraints

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

nodes

Page 50: Aco 03-04-2013

50

TSP: pheromone trails• Desirability of visiting city j directly after i

Page 51: Aco 03-04-2013

51

TSP: heuristic information

• ηij = 1 / dij

• Used in most ACO for TSP

Page 52: Aco 03-04-2013

52

TSP: solution construction• Select random start city• Add unvisited cities iteratively• Until a complete tour is built

Page 53: Aco 03-04-2013

53

ACO algorithms for TSP• Ant System• Elitist Ant System• Rank-based Ant System• Ant Colony System• MAX-MIN Ant System

Page 54: Aco 03-04-2013

54

Ant System: Pheromone initialization

• Pheromone initializationΤij = m / Cnn,

where: m – number of ants Cnn – path length of nearest-neighbor

algorithm

Page 55: Aco 03-04-2013

55

Ant System: Tour construction

• Ant k is located in city i

• is the neighborhood of city i• Probability to go to city :

kiNl

ilil

ijijkijp

kiN

kiNj

Page 56: Aco 03-04-2013

56

Tour construction: comprehension

• α = 0 – greedy algorithm• β = 0 – only pheromone is at work

quickly leads to stagnation

kiNl

ilil

ijijkijp

Page 57: Aco 03-04-2013

57

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

Page 58: Aco 03-04-2013

58

Ant System: update pheromone trails – deposit

• Tk – path of ant k• Ck – length of path Tk

• Ants deposit pheromone on visited arcs:

Ljim

k

kijijij

,,1

otherwise

TjiC kkkij ,0

,,/1

Page 59: Aco 03-04-2013

59

Elitist Ant System• Best-so-far ant deposits pheromone on each

iteration:

bestij

m

k

kijijij e

1

otherwise

TjiC bestbestbestij ,0

,,/1

Page 60: Aco 03-04-2013

60

Rank-based Ant System• Rank all ants• Each ant deposits amounts of pheromone

proportional to its rank

Page 61: Aco 03-04-2013

61

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]

Page 62: Aco 03-04-2013

62

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

Page 63: Aco 03-04-2013

63

Ant Colony System

otherwiseSystemAntlike

qqifj ililNl k

i

,

,maxarg 0

1.Tour Construction

2. Local pheromone update:

τij ← (1 – ξ)τij + ξτ0,

Page 64: Aco 03-04-2013

64

Comparing Ant System variants

Page 65: Aco 03-04-2013

65

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!

Page 66: Aco 03-04-2013

66

Current ACO research activity• New applications• Theoretical proofs

Page 68: Aco 03-04-2013

68

Next time…• Some proofs of ACO convergence

Page 69: Aco 03-04-2013

69

Thank you!

Any questions?

This presentation is available at:http://rain.ifmo.ru/~chivdan/presentations/

Daniel Chivilikhin [mailto: [email protected]]

Page 70: Aco 03-04-2013

70

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