Ant colony optimization

Preview:

Citation preview

Ant Colony Optimization

1

Swarm Intelligence

“Swarm intelligence (SI) is artificial intelligence based on the collective behaviour of decentralized, self-organized systems”

2

Characteristics of Swarms

Composed of many individualsIndividuals are homogeneousLocal interaction based on simple rulesSelf-organization Constituting a natural model particularly

suited to distributed problem solving

3

4

5

Ant Colony Optimization

• Optimization Technique Proposed by Marco Dorigo in the early ’90

• Heuristic optimization method inspired by biological systems

• Multi-agent approach for solving difficult combinatorial optimization problems

• Has become new and fruitful research area

6

Natural behavior of ant

7

How can they manage such great tasks ?

Ants are , essentially blind, deaf and dumb. social creatures – behavior directed to survival of colony

Question: how can ants find the short path to food sources?

8

SHORTEST PATH

Answer:

Ants deposit pheromones on ground that form a trail. The trail attracts other ants.

Pheromones evaporate faster on longer paths. Shorter paths serve as the way to food for most of the other

ants.

9

Application

• Traveling Salesman Problem

• Quadratic Assignment Problem

• Network Model Problem

• Vehicle routing

• Graph coloring

10

Aco system -PSEUDOCODE Often applied to TSP (Travelling Salesman Problem): shortest

path between n nodes

Algorithm in Pseudocode:– Initialize Trail– Do While (Stopping Criteria Not Satisfied) – Cycle Loop

• Do Until (Each Ant Completes a Tour) – Tour Loop• Local Trail Update• End Do• Analyze Tours• Global Trail Update

– End Do11

Algorithm

• Ant Colony Algorithms are typically use to solve minimum cost problems.

• We may usually have N nodes and A undirected arcs

• There are two working modes for the ants: either forwards or backwards

• The ants memory allows them to retrace the path it has followed while searching for the destination node

• Before moving backward on their memorized path, they eliminate any loops from it. While moving backwards, the ants leave pheromones on the arcs they traversed.

12

Algorithm

• At the beginning of the search process, a constant amount of pheromone is assigned to all arcs. When located at a node i an ant k uses the pheromone trail to compute the probability of choosing j as the next node:

• where is the neighborhood of ant k when in node i.

0

ki

ij kik

ilij l N

ki

if j Np

if j N

13

kiN

Algorithm

• When the arc (i,j) is traversed , the pheromone value changes as follows:

• By using this rule, the probability increases that forthcoming ants will use this arc.

• After each ant k has moved to the next node, the pheromones evaporate by the following equation to all the arcs:

kij ij

14

(1 ) , ( , )ij ijp i j A

Steps for Solving a Problem by ACO

1. Represent the problem in the form of sets of components and transitions, or by a set of weighted graphs, on which ants can build solutions

2. Define the meaning of the pheromone trails3. Define the heuristic preference for the ant while

constructing a solution4. If possible implement a efficient local search algorithm for

the problem to be solved.5. Choose a specific ACO algorithm and apply to problem

being solved6. Tune the parameter of the ACO algorithm.

15

A simple TSP example

A

D

CB

1

[]

4

[]

3

[]

2

[]

dAB =8;dBC = 4;dCD =15;dDA =616

Iteration 1

A

D

CB

1

[A]

3

[C]

2

[B]

4

[D]

17

How to build next sub-solution?

1

[A]

A

D

CB

18

Iteration 2

A

D

CB

2

[B,C]

3

[C,D]

1

[A,B]

4

[D,A]

19

Iteration 3

A

D

CB

2

[B,C,D]

3

[B,C,A]

4

[D,A,B]

1

[A,B,C]

20

Iteration 4

A

D

CB

1

[A,B,C,D]

2

[B,C,D,A]

3

[C,D,A,B]

4

[D,A,B,C]

21

Path and Pheromone Evaluation

1

[A,B,C,D

L1 =27

L2 =25

L3 =29

L4 =18

2

[B,C,D,A]

3

[C,D,A,B]

4

[D,A,B,C]

22

Best tour

End of First Run

All ants die

New ants are born

Save Best Tour (Sequence and length)

23

Advantages and Disadvantages

For TSPs (Traveling Salesman Problem), relatively efficient for a small number of nodes, TSPs can be solved by

exhaustive search for a large number of nodes, TSPs are very computationally

difficult to solve exponential time to convergence Performs better against other global optimization techniques

such as neural net, genetic algorithms, simulated annealing Can be used in dynamic applications (adapts to changes such

as new distances, etc.) Convergence is guaranteed, but time to convergence uncertain

24

Recommended