ant colony optimization

19
Ant Colony Optimization By: Sachin Agarwalla Regd. No-0911012065 C.S.E(A) 1 Under Guidance Of: Mr. Swadhin Ku. Barisal B.E., M.Tech., CSE (IIT, Kharagpur) Assistant Professor I.T.E.R

Upload: iter

Post on 18-May-2015

793 views

Category:

Education


5 download

DESCRIPTION

this slide is about the algorithm which is design using ant colony optimization

TRANSCRIPT

Page 1: Ant colony optimization

Ant Colony Optimization

By:Sachin AgarwallaRegd. No-0911012065C.S.E(A)

1

Under Guidance Of:Mr. Swadhin Ku. BarisalB.E., M.Tech., CSE (IIT, Kharagpur)Assistant ProfessorI.T.E.R

Page 2: Ant colony optimization

Optimization

• Given a graph with two specified vertices A and B, find a shortest path from A to B.

2

General optimization problem:

given f:X ,ℝfind xεX such that f(x) is minimum

shortest path problem, polynomial

Page 3: Ant colony optimization

Ant colony

3

food

nest

Page 4: Ant colony optimization

Ant Colony Optimization (ACO):a heuristic optimization method for shortest path

and other optimization problems which borrows ideas from biological ants

4

Page 5: Ant colony optimization

Ant Colony Optimization

Outline

• History: ACO for shortest paths• ACO for shortest paths I: directed• ACO for shortest paths II: general• Advantages and Disadvantages• Summary• References

5

Page 6: Ant colony optimization

History: ACO for shortest paths …

6

Page 7: Ant colony optimization

History: ACO for shortest paths

Goss et al. 1989, Deneuborg et al. 1990experiments with Argentine ants:• ants go from the nest to the food source and

backwards • after a while, the ants prefer the shortest path

from the nest to the food source

• stigmercy: • the ants communicate indirectly laying

pheromone trails and following trails with higher pheromone

• length gradient pheromone will accumulate on the shortest path

7

nest

food

Page 8: Ant colony optimization

ACO for shortest paths I:directed

A first ACO for a simple shortest path problem:

directed acyclic graph (V={0,...,N}, E={ij}), ant hill: 0, food source: N

8

for all i: pi:=0; /*ant position init*/

si:=hungry; /*ant state init*/

for all i j: τij:=const; /*pheromone init*/

repeat for all i: ant_step(i); /*ant step*/

for all i j: τij := (1-ρ) τij ; /*evaporate pheromone*/

Page 9: Ant colony optimization

ACO for shortest paths I:directed

9

ant_step(i):

if pi=N: si:=satisfied; if pi=0: si:=hungry; /*collect food/deliver food*/

if si=hungry: choose j with pij with probability τpi j/Σpij’τpij’ /*choose next step*/

update Δτpi j := ε; pi:=j; /*update pheromone*/

if si=satisfied: choose j with jpi with probability τjpi/Σj’piτj’pi

update Δτjpi:= ε; pj:=i; /* reversed directions*/

Page 10: Ant colony optimization

ACO for shortest paths II:general

...a more complex undirected cyclic graph ...

10

WC4 WC5 Barbara Marc

449a Anja Dagmar Espresso

322 339 WC3 Friedhelm

Fachschaft WC2 Rechner Astrid

Zeitschriften WC Bibo RZ-Sekretariat

ToilettenCafete RZGetraenke-automat

Mensa

Page 11: Ant colony optimization

ACO for shortest paths II:general

11449a

449a

... Marc was not so happy with the result ...

Page 12: Ant colony optimization

ACO for shortest paths II:general

12

for all i: pi:=0; /*ant position init*/

si:=( ); /*ant brain is empty*/

for all i-j: τi-j:=const; /*pheromone init*/

repeat for all i: construct_solution(i);

for all i: global_pheromone_update(i);

for all i-j: τi-j := (1-ρ) τi-j; /*evaporate*/

construct_solution(i):

while pi≠N /*no solution*/

choose j with pi-j with probability τpi-j / Σpi-j’τpi-j’;

pi:=j;

append j to si; /*remember the trail*/

global_pheromone_update(i):

for all j-j’ in si: Δτj-j’:= 1/length of the path stored in si;

minibrain

update according

to the quality

minibrain

si:=hungry

repeat for all i: ant_step(i);

Page 13: Ant colony optimization

ACO for shortest paths II:general

13

WC4 WC5 Barbara Marc

449a Anja Dagmar Espresso

322 339 WC3 Friedhelm

Fachschaft WC2 Rechner Astrid

Zeitschriften WC Bibo RZ-Sekretariat

ToilettenCafete RZGetraenkeMensa

Page 14: Ant colony optimization

14

ACO for shortest paths

init pheromone ti-j ;

repeat for all ants i: construct_solution(i);

for all ants i: global_pheromone_update(i);

for all edges: evaporate pheromone;

construct_solution(i):

init ant;

while not yet a solution:

expand the solution by one edge probabilistically according to the pheromone;

global_pheromone_update(i):

for all edges in the solution:

increase the pheromone according to the quality;

Page 15: Ant colony optimization

15

Advantages and Disadvantages

Advantages :

1) Positive feedback accounts for rapid discovery of good solution.

2) Efficient for Travels salesman problem and other similar problem.

3) Can be use in dynamic application.

Disadvantages :

1) Theoretical analysis is difficult.

2) Probability distribution changes by iteration.

3) Time to convergence is uncertian.

Page 16: Ant colony optimization

16

Summary • Artificial Intelligence technique used to develop a new method to solve problems

unsolvable since last many years

• ACO is a recently proposed metaheuristic approach for solving hard combinatorial optimization problems.

• Artificial ants implement a randomized construction heuristic which makes probabilistic decisions

• ACO shows great performance with the “ill-structured” problems like network routing

Page 17: Ant colony optimization

17

References • M. Dorigo, M. Birattari, T. Stützle, “Ant Colony Optimization – Artificial Ants as a

Computational Intelligence Technique”, IEEE Computational Intelligence Magazine, 2006

• C. Blum, Theoretical and Practical Aspects of Ant Colony Optimization, Dissertations in Artificial Intelligence, Vol. 282, Akademische Verlagsgesellschaft Aka GmbH, Berlin, Germany, 2004.

• Wikipedia.com

Page 18: Ant colony optimization

18

Questions ?

Page 19: Ant colony optimization

19

Thank You !