Top Banner
SC741– W8: Ant Colony Optimization Algorithms
69

SC741– W8: Ant Colony Optimization Algorithms

May 01, 2022

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: SC741– W8: Ant Colony Optimization Algorithms

SC741– W8: Ant Colony Optimization

Algorithms

Page 2: SC741– W8: Ant Colony Optimization Algorithms

Outline• Real ant networks• The Traveling Salesman Problem (TSP)• An Ant System (AS) for the TSP• Moving beyond the AS

– Ant Colony System (ACS)– ACS with local search for TSP: ACS-3-Opt

• Applying ACO to routing problems– ABC– AntNet

Source

Destination

Page 3: SC741– W8: Ant Colony Optimization Algorithms

Ant Networks

Page 4: SC741– W8: Ant Colony Optimization Algorithms

The organization of inter-nest traffic in ants

• For most social insects, the fundamental ecological unit is the colony.

• In a number of ant species, groups of workers, larvae, and reproductives can leave the nest and set up a new nest while maintaining close connections with the parent nest.

• The collection of nests, or sub-colonies, forms what is called a super-colony.

Ant Super-Colonies

Page 5: SC741– W8: Ant Colony Optimization Algorithms

Super-colony of Formica Lugubris (Switzerland)Prof. D. Cherix (Uni Lausanne)

Page 6: SC741– W8: Ant Colony Optimization Algorithms

Results for a triangular network (3 nest super-colony)with Linepithemahumile (Argentine ants)

[Aron, Deneubourg, Goss, Pasteels, 1991]

The Organisation of Inter-NestTraffic in Ants

Page 7: SC741– W8: Ant Colony Optimization Algorithms

Results for a quadrangularnetwork (4 nest super-colony) with Linepithema humile(Argentine ants)

[Aron, Deneubourg, Goss, Pasteels, 1991]

The Organisation of Inter-Nest Traffic in Ants

Page 8: SC741– W8: Ant Colony Optimization Algorithms

Ants are Able to Optimize!

• All the nests are connected either directly or indirectly

• Ants are able to find the minimal spanning treeconnecting all the nests

• This is similar to the Travel Salesman Problem (TSP)

• Can artificial ants solve the TSP? ACO proved it!

Page 9: SC741– W8: Ant Colony Optimization Algorithms

The Traveling Salesman Problem

Page 10: SC741– W8: Ant Colony Optimization Algorithms

Graph (N,E)N : set of cities (nodes)E : set of connecting roads (links)dij : distance between city i and j

Problem: Find the shortest path which allow the salesman to visitonce and only once each city in the graph

1

10 7

8

9

24 6

5

3

1

10 7

8

9

24 6

5

3

1

10 7

8

9

24 6

5

3

1

10 7

8

9

24 6

5

3

The Travel Salesman Problem

Difficulty: NP-hard problem; time for computing the shortest route grows in a nonpolinomial way with the number of cities in thenetwork -> metaheuristics provide near-optimal solutions!

Page 11: SC741– W8: Ant Colony Optimization Algorithms

Artificial Ants and the Shortest Path Problem

?Probabilistic rule to

choose the path

Pheromone traildepositing

Source

Destination

Memory

Page 12: SC741– W8: Ant Colony Optimization Algorithms

Problem!The extension of the real ant behavior (forward/backward trail deposit and slow pheromone decay rate) to artificial ants moving on a graph doesn’t work: problem of self-reinforcing loops

Probabilistic solution generation plus pheromone update -> self-reinforcing loops

Source

Destination

Example of possibleself-reinforcing loop

Page 13: SC741– W8: Ant Colony Optimization Algorithms

The First ACO Algorithm:The Ant System (AS)

Page 14: SC741– W8: Ant Colony Optimization Algorithms

Design Choices for AS(Dorigo, Colorni, Maniezzo, 1991)

• Ants are given a memory of visited nodes• Ants build solutions probabilistically without

updating pheromone trails• Ants deterministically backward retrace the

forward path to update pheromone• Ants deposit a quantity of pheromone function of

the quality of the solution they generated• Pheromones evaporates much more quickly than in

nature

Page 15: SC741– W8: Ant Colony Optimization Algorithms

bi (t), (i = 1 … n) : number of ants at the node i at the iteration t

ΣΣ i = 1i = 1

nnm = bi (t) = constant: total number of ants

AS for TSP - Overview

Page 16: SC741– W8: Ant Colony Optimization Algorithms

amb …

i

j

k

r

dij

dik

dir

?Memory of ant k: listof visited nodes

Jik

ηij

1

AS for TSP- Individual Ant Behavior

The inverted value of the distance ηij = 1/dij between nodes i and j is called visibility; thisinformation (heuristic desirability) is static, i.e. not changed during the problem solution

ηikηir

0 0,5

Page 17: SC741– W8: Ant Colony Optimization Algorithms

amb …

i

jr

τij

τik

τir

k

τij, quantity of virtual pheromone deposited on the link between the node i and j

AS for TSP- Individual Ant Behavior

Page 18: SC741– W8: Ant Colony Optimization Algorithms

AS for TSP - AlgorithmLoop \* t = 1*\

Place one ant on each node \*there are n = |N| nodes \*

For step := 1 to n \* each ant builds a tour \*

For k := 1 to m \* each ant adds a node to its path \*

Choose the next node to move to applying a probabilistic state transition rule

End-forEnd-forUpdate pheromone trails

Until End_condition \*t = tmax *\

Page 19: SC741– W8: Ant Colony Optimization Algorithms

During a tour T, an ant k at the node i decided to move towards the nodej with the following probability (idea: roulette wheel):

α : parameter controlling the influence of the virtual pheromoneβ : parameter controlling the influecne of the local heuristic (visibility)

pij(t) = k

0 , if node j have been visited by ant k alreadybecause of tabu list

[τij(t)]βα

Σl ∈ Ji

k

[ηij]

[τil(t)]βα [ηil]

, if the node have not been visited yetpij(t) = k

AS for TSP – Transition RuleskiJ : list of nodes still to be visited for ant k when it is at node i; exhaustive list of

all the cities in the problem; nodes get scratched during a tour T; at the beginning the list contains all nodes but i; also called tabu list: tour, it last n= |N| steps (N = number of nodes in the problem) in which the probabilistic transition rule below is applied: iteration index: number of time the whole algorithm is run; 1 ≤ t ≤ tmax

T

t

Page 20: SC741– W8: Ant Colony Optimization Algorithms

At the end of each tour T, each ant k deposit a quantity of virtual pheromoneon the link (i,j)∆τ∆τijij

kk

0 , when (i,j) has not been used during the tour T∆τij = k

Q , , when (i,j) has been used during the tour T∆τij = k

AS for TSP – Virtual Pheromone Update

Lk(t)

Lk(t) = length of the tour T done by ant k at iteration tQ = parameter (adjusted by heuristic, not sensitive)

Note: the longer the tour, the lower is the quality of the solution, the smaller the quantity of pheromone dropped

Page 21: SC741– W8: Ant Colony Optimization Algorithms

with ∆τij(t) = Σk = 1

m

∆τijk

AS for TSP – Virtual Pheromone Update

ρ = evaporation coefficientAt iteration t = 0 each link is initialized with a small homogenous pheromone quantity τ0

)()()1()1( ttt ijijij ττρτ ∆+−←+

Page 22: SC741– W8: Ant Colony Optimization Algorithms

with ∆τij(t) = Σk = 1

m

∆τijk

AS for TSP – Virtual Pheromone Update with Elitism

)()()()1()1( tettt eijijijij τττρτ ∆+∆+−←+

+=∆ LQteij /)(τ

0)( =∆ teijτ otherwise

if (i,j) belongs to the best tour T+

e = parameter (adjusted by heuristic, not sensitive)

Note: idea, best tours get extra reinforcement

Page 23: SC741– W8: Ant Colony Optimization Algorithms

AS for TSP – Evolution of the Best Tour Length

Example: 30 nodes problem

Page 24: SC741– W8: Ant Colony Optimization Algorithms

Network n (dimension) best solution

Mean numberof iteration for

to the near-optimalsolution

Simulation time (seconds)

4 X 4 16 160 5,6 8

5 X 5 25 254,1 13,6 75

6 X 6 36 360 60 1020

7 X 7 49 494,1 320 13440

8 X 8 64 640 970 97000

AS for TSP – Performance as a Function of the Problem

Dimension

Page 25: SC741– W8: Ant Colony Optimization Algorithms

Summary of AS• Ants are launched at each iteration from each node to

explore the network• Ants build their paths probabilistically with a

probability function of: (i) artificial pheromone values, and(ii) heuristic values (in TSP city visibility)

• Ants memorize visited nodes• Once reached their destination nodes (in TSP the last

city on their list) ants retrace their paths backwards, and update the pheromone trails

Page 26: SC741– W8: Ant Colony Optimization Algorithms

Why Does AS Work?Three important components:

• TIME: a shorter path receives pheromone quicker(this is often called: “differential length effect”)

• QUALITY: a shorter path receives more pheromone

• COMBINATORICS: in most real-world problems a shorter path receives pheromone more frequentlybecause it is likely to have a lower number of decision points

Page 27: SC741– W8: Ant Colony Optimization Algorithms

Artificial vs. Natural Ant Systems• Memory

– A-ants: node list– N-ants: no memory used in the model, just pheromone

communication (memory might be involved though)• Pheromones update

– A-ants: performed off-line, the end of each tour (iteration of the algorithm = central synchronization)

– N-ants: on-line, no central synchronization• Other information sharing mechanisms

– A-ants: centralized information sharing between ants other than through stigmergy. Eg., elitist ants, best tour

– N-ants: all com distributed; role of non chemical communication not well understood; nest might play the role of primitive shared blackboard for chemical signals (just central tendency: e.g., overall level of pheromone)

Page 28: SC741– W8: Ant Colony Optimization Algorithms

Extending the Ant System Algorithm

Page 29: SC741– W8: Ant Colony Optimization Algorithms

Constructive Heuristic and Local Search

Current wisdom says that a very good strategy for the approximate solution of NP-hard combinatorial optimization problems is the coupling of:

– a constructive heuristic, and– local search

The problem is to find good couplings: Ant System (and other derived algorithms) seems (as shown by experimental evidence) to provide such a good coupling

Page 30: SC741– W8: Ant Colony Optimization Algorithms

2 Extensions of AS• Ant Colony System (ACS) – constructive heuristic

(Gambardella & Dorigo, 1996; Dorigo & Gambardella, 1997)– Different transition rule– Different pheromone trail updating rules: global and local– Use of a candidate list for the choice of the next city

• ACS-3-opt – local search(Gambardella & Dorigo, 1996; Dorigo & Gambardella, 1997)– Standard ACS + local search– In cased of TSP problems, 2-opt (2 edges exchanged), 3-opt (3 edges

exchanged), and Lin-Kernighan (variable number of edges exchanged) are used as local search algorithms

Page 31: SC741– W8: Ant Colony Optimization Algorithms

Different Transition RuleAn ant k on city i chooses the city j to move according to the following rule:

>≤

= ∈

0

0}])][({[maxargqqifJ

qqiftj iuiuJu k

i

βητ

kiJJ ∈With being a city that is randomly selected according to:

∑∈

=

kiJl

ilil

iJiJkiJ t

ttp β

β

ητητ

])][([])][([)(

• q0: tunable parameter between 0 and 1, controls exploration vs. exploitation• q≤q0: exploitation of the current knowledge of the problem (heuristic

knowledge about distances + learned knowledge about distances)• q>q0: favors more exploration, roulette wheel like in the original AS

Page 32: SC741– W8: Ant Colony Optimization Algorithms

)()()1()1( ttt ijijij τρτρτ ∆+−←+

Virtual Pheromone:Global Update with Elitism

AS: all ants can update pheromones trails in the same wayACS: the global update is performed exclusively by the ant that

generated the best tour from the beginning of the trial (length L+); it updates only the edges of the best tour (T+) since the beginning of the trial (best-so-far, saving of computing time, no major difference with best-of-iteration)

+=∆ Ltij /1)(τ

Update rule for (i,j) edges belonging to T+:

with

Note1: the result is a more directed exploration, ants are encouraged to search for path in the vicinity of the best tour found so far.Note 2: notice the weighted sum of old and new pheromones, different from AS.

Page 33: SC741– W8: Ant Colony Optimization Algorithms

0)()1()1( ξττξτ +−←+ tt ijij

Virtual Pheromone:Local Update

All ants can perform a local update. When an ant k in city i select city the pheromone concentration on edge (i, j) is updated as follows:

kiJj ∈

ξ: parameter; ξ = 0.1 from experimental finding, course book ξ = ρτ0: parameter, also representing the initial pheromone quantity on all edges (like

in AS). From experimental finding: τ0 = (nLnn)-1; n = number of cities, Lnn = length of the tour produced by the nearest neighbor heuristic only

Note: application of the local update rule make the pheromone level decreases each time that an edge is visited → favor exploration of not yet visited edges → avoid stagnation and convergence to a common path

Page 34: SC741– W8: Ant Colony Optimization Algorithms

Candidate List

• A candidate list is a list of cities of length cl (cl = algorithmic parameter) to be visited from a given city; cities in the candidate list are ranked according to the inverse of their distance, the list is scanned sequentially.

• An ant first restrict the choice of the next city to those in the candidate list; it uses standard ACS transition rule to select a city

• Once all the cl closest cities in the candidate list for a given city i have been visited, the next city j is selected from the closest of the yet unvisited cities.

Page 35: SC741– W8: Ant Colony Optimization Algorithms

ProblemProblem

Ant Colony System(Dorigo & Gambardella,1997)

Eil50(50 cities) 425 1830

ShortestTour Lenght

Number oftours

Genetic Algorithms(Whitley et coll., 1989)

428 25000

ShortestTour Lenght

Number oftours

Simulated Annealing(Lin et coll., 1993)

443 68512

ShortestTour Lenght

Number oftours

Eil75(75 cities) 535 3480 545 8000080000 580 173250

KroA100(100 cities) 21282 4820 21761 103000 N/A N/A

ACS for TSP – Comparison with Other Algorithms

ACS ran for 1250 iterations (end criterion) using 20 ants; average over 15 runs for all implementations; see course book for more results

Page 36: SC741– W8: Ant Colony Optimization Algorithms

AS for TSP – Results 50 cities

Example of solution found on Eil50 problem

Page 37: SC741– W8: Ant Colony Optimization Algorithms

ACS for TSP – Results on ATT532 Problem

Page 38: SC741– W8: Ant Colony Optimization Algorithms

2 Extensions of AS• Ant Colony System (ACS)

(Gambardella & Dorigo, 1996; Dorigo & Gambardella, 1997)– Different transition rule– Different pheromone trail updating rule– Use of local update of pheromone trail– Use of a candidate list for the choice of the next city

• ACS-3-opt(Gambardella & Dorigo, 1996; Dorigo & Gambardella, 1997)– Standard ACS + local search– In cased of TSP problems, 2-opt (2 edges exchanged), 3-opt (3 edges

exchanged), and Lin-Kernighan (variable number of edges exchanged) are used as local search algorithms

Page 39: SC741– W8: Ant Colony Optimization Algorithms

Ant System + Local SearchLoop

Place one ant on each node \*there are n nodes \*

For step := 1 to n \* each ant builds a solution \*

For k := 1 to m \* each ant adds a node to its path \*

Choose the next city to move to applying a probabilistic solution construction rule

End-forEnd-forApply local searchUpdate pheromone trails

Until End_condition

Page 40: SC741– W8: Ant Colony Optimization Algorithms

For TSP Problems: Local Search using 3-Opt

1. Apply 3-opt• For each ant k, at each iteration of ACS, three edges at the time

are exchanged iteratively until a local optimum is reached whileall other sub-tour orientations are mantained invaried; full 3-opt, 23=8 combinations;

• in ACS-3-opt restricted permutation: only moves that do not revert the order in which the cities are visited, e.g: (k,l), (p,q), (r,s) → (k,q), (p,s), (r,l)

• Computational speed up obtained by using nearest neighbor list, etc. See for instance [Bentley 1992].

2. Local update of pheromones for each ant3. Global update of pheromones (T+ and L+)

Page 41: SC741– W8: Ant Colony Optimization Algorithms

Advantages and Drawbacks of Local Search

• Local search is complementary to ant pheromone mechanisms, so probability it achieves a major impact on a given problem is high

• The quality of the achieved solution is in particularly improved; the computational cost is increased

• Local search lacks of good starting solutions on which it can perform combinatorial optimization; these solutions are provided by artificial ants using pheromone mechanisms

• Depending on the type of problem, wished solution quality and desired computational cost, an appropriate balance between localsearch and trail-based algorithms has to be chosen (no free-lunch theorem!)

• Clear correspondence with GA: crossover (pheromone) and mutation (local search).

Page 42: SC741– W8: Ant Colony Optimization Algorithms

ACO Applied to the RoutingProblem

Page 43: SC741– W8: Ant Colony Optimization Algorithms

The Routing Problem• The practical goal of routing algorithms is to build routing

tables

• Routing is difficult because costs are dynamic• Adaptive routing is difficult because changes in the

control policy determine changes in the costs and vice versa

Destination node j

Routing table of node k (N-nodes net)

Next node ij

...

...

...

...

1

i1

N

iN

k-1

ik-1

...

...

k+1

ik+1

Page 44: SC741– W8: Ant Colony Optimization Algorithms

Using Pheromones and Heuristic to Choose the Next Node

• τijd is the pheromone trail• ηij is an heuristic evaluation of link (i,j)

which introduces problem specificinformation (e.g., in AntNet ηij is ∝ tothe inverse of link (i,j) queue length)

i

ant’s destination = d

τird ;ηir

j

k

τikd ;ηik

r

pijdk t( )= f τ ijd t( ),ηij t( )( )

τijd ;ηij

Page 45: SC741– W8: Ant Colony Optimization Algorithms

Ants’ Pheromone Trail Depositing

where the (i,j)’s are the links visited by ant k, and

where qualityk is set proportional to the inverse of the time it took ant kto build the path from i to d via j

i

τijd

Source

Destination

d

j

τ ijdk t+1( )← 1 − ρ( )⋅τ ijd

k t( ) + ∆τ ijdk t( )

∆τ ijdk t( ) = qualityk

Page 46: SC741– W8: Ant Colony Optimization Algorithms

Two Main Algorithms up to Date• ABC (Ant-Based Control),

[Schoonderwoerd, Holland, et al., 1996]– Target: telephone network; assumption:

symmetric level of congestion on one given source-destination pair

– Test: UK telephone network• AntNet [DiCaro and Dorigo, 1998]

– Target: packet-switching network style Internet– Tests: more exhaustive on several networks

Page 47: SC741– W8: Ant Colony Optimization Algorithms

AntNet: Data Structures• Routing table:

Memorizes probabilities of choosing each neighbor nodes for each possible final destination

• Trips vector:contains statistics about ants’ trip times from current node k to each destination node d(means and variances)

d

Routing table of node k Destination nodes

P(k,n,d)

n

Trips vector of node k

......σ2(k,1) σ2(k,d) σ2(k,N)

µ(k,d) µ(k,N)µ(k,1)

Page 48: SC741– W8: Ant Colony Optimization Algorithms

AntNet: the Role of F-ants and of B-ants• F-ants collect implicit and explicit information on

available paths and traffic load – implicit information, through the arrival rate at their

destinations (remember the differential length effect)– explicit information, by storing experienced trip times

• F-ants share queues with data packet• B-ants are F-ants which reached their destination; they

fast backpropagate info collected by F-ants to visited nodes

• B-ants use higher priority queues (usually available on real network for control packages)

Page 49: SC741– W8: Ant Colony Optimization Algorithms

AntNet: The Algorithm• Ants are launched at regular instants

from each node to randomly chosen destinations• Ants build their paths probabilistically with a

probability function of: (i) artificial pheromone values, and(ii) heuristic values (length of queues)

• Ants memorize visited nodes and elapsed times• Once reached their destination nodes,

ants retrace their paths backwards, and update the pheromone trails

Page 50: SC741– W8: Ant Colony Optimization Algorithms

AntNet: Experimental setup

• Many topologies• Realistic simulator (though not industrial)• Many traffic patterns• Comparison with many state-of-the-art

algorithms• Performance measures

Page 51: SC741– W8: Ant Colony Optimization Algorithms

Experimental Setup:Network Topologies

6x6 grid net

1

1

11

11

1

1

1

Simple net

Japanese NTT net

American NSF net

Page 52: SC741– W8: Ant Colony Optimization Algorithms

Experimental Setup:Transmission Protocol

• Datagram traffic (UDP-like protocol)• No arrival acknowledgment• No error notification• No admission or congestion control• Packets are discarded if buffer is full

or time to live (TTL) is expired

Page 53: SC741– W8: Ant Colony Optimization Algorithms

Experimental Setup:Traffic Characteristics

Traffic patterns are obtained by the combination of spatial and temporal distributions for sessions

• Spatial distributions– Uniform (U)– Random (R)– Hot Spots (HS)

• Temporal distributions– Poisson (P)– Fix (F)– Temporary (TMPHS)

Page 54: SC741– W8: Ant Colony Optimization Algorithms

Experimental Setup: Network Load

• Heavy load near saturation(1000 sec simulation)

• Heavy load plus transient saturation(1000 sec simulation)

Page 55: SC741– W8: Ant Colony Optimization Algorithms

Experimental Setup: Experiments Design

• Experiment duration:– Each experiment, lasting 1000 sec, is repeated 10 times– Before feeding data, routing tables are initialized by a 500 sec

phase

• Experiment typology:– Study of algorithms behavior for increasing network

load– Study of algorithms behavior for transient saturation– Evaluation of influence of control packet traffic on

total traffic

Page 56: SC741– W8: Ant Colony Optimization Algorithms

Competing Algorithms

AntNet was compared with:– OSPF (Open Shortest Path First, current

official Internet routing algorithm)– SPF (Shortest Path first)– ABF (Adaptive Bellman-Ford)– Q-routing (asynchronous on-line BF)– PQ-R (Predictive Q-routing)– Daemon: approximation of an ideal algorithm

It knows at each instant the status of all queues and applies shortest path at each packet hop

Page 57: SC741– W8: Ant Colony Optimization Algorithms

Measures of Performance

Standard measures of performance are• Throughput (bits/sec): quantity of service• Average packet delay (sec): quality of service

Good routing:– Under high load: increase throughput for same

average delay– Under low load: decrease average delay per

packet

Page 58: SC741– W8: Ant Colony Optimization Algorithms

How to Read Results

• Routing is a multi-objective problem• Max throughput is the main criterion:

non max throughput means – retransmissions, – error notification– augmented congestion

• Average packet delay has inherent very high variance

Page 59: SC741– W8: Ant Colony Optimization Algorithms

NSFNET & NTTnet(increasing UP traffic)

0

5

10

15

20

25

30

35

40

45

AntNet OSPF SPF BF Q-R PQ-R Daemon

Thr

ough

put (

106 b

it/se

c)

3.1 3 2.9 2.8 2.7

0.0

1.0

2.0

3.0

4.0

5.0

6.0

7.0

8.0

9.0

10.0

AntNet OSPF SPF BF Q-R PQ-R Daemon90-t

h pe

rcen

tile

of p

acke

t del

ays

(sec

) 3.1 3 2.9 2.8 2.7

Increasing UP trafficUP traffic increased by reducing the mean session inter arrival time

0

2

4

6

8

10

12

14

16

18

AntNet OSPF SPF BF Q-R PQ-R Daemon

Thr

ough

put (

106 b

it/se

c)2.4 2.3 2.2 2.1 2

0.0

0.5

1.0

1.5

2.0

2.5

3.0

3.5

4.0

4.5

AntNet OSPF SPF BF Q-R PQ-R Daemon90-t

h pe

rcen

tile

of p

acke

t del

ays

(sec

) 2.4 2.3 2.2 2.1 2

Thro

ughp

ut (b

/s)

Avg

pack

et

dela

y

From Di Caro and Dorigo, 1998,Journal of Artificial Intelligence Research

NTT netNSF net 1

10

98

7

6

5

4

3

11

12

13

14

2

9

7

13

7

20 7

7

7

74

8

9

1411

15

16

55

8

7

Page 60: SC741– W8: Ant Colony Optimization Algorithms

NSFNET & NTTnet (UP plus transient HS)

From Di Caro and Dorigo, 1998

6.0

8.0

10.0

12.0

14.0

16.0

Th

rou

gh

pu

t (1

06 b

it/se

c)

OSPFSPF

BFQ-R

PQ-RAntNet

Daemon

30.0

40.0

50.0

60.0

200 300 400 500 600 700 800 900 1000

Pa

cke

t D

ela

y (s

ec)

Simulation Time (sec)

Data averaged over a 5 seconds sliding window

15.0

25.0

35.0

45.0

55.0

Thro

ughput (1

06 b

it/se

c)

OSPFSPF

BFQ-R

PQ-RAntNet

Daemon

0.0

0.2

0.4

0.6

0.8

200 300 400 500 600 700 800 900 1000P

ack

et D

ela

y (s

ec)

Simulation Time (sec)

NTT netNSF net 1

10

98

7

6

5

4

3

11

12

13

14

2

9

7

13

7

20 7

7

7

74

8

9

1411

15

16

55

8

7

Page 61: SC741– W8: Ant Colony Optimization Algorithms

Routing Overhead

From Di Caro and Dorigo, 1998

AntNet OSPF SPF BF Q-R PQ-R DaemonSimpleNet 0.33 0.01 0.10 0.07 1.49 2.01 0.00NSFNET-UP 2.39 0.15 0.86 1.17 6.96 9.93 0.00NSFNET-RP 2.60 0.16 1.07 1.17 5.26 7.74 0.00NSFNET- UP-HS 1.63 0.15 1.14 1.17 7.66 8.46 0.00NTTnet-UP 2.85 0.14 3.68 1.39 3.72 6.77 0.00NTTnet- UP-HS 3.81 0.15 4.56 1.39 3.09 4.81 0.00

Ratio (10-3) between bandwidth occupied by the routing packets and the total available network bandwidth

From Di Caro and Dorigo, 1998,Journal of Artificial Intelligence Research

Page 62: SC741– W8: Ant Colony Optimization Algorithms

ACO Summary• ACO metaheuristics

• Overall performance in the literature

• ACO theory

• Application using ACO

Page 63: SC741– W8: Ant Colony Optimization Algorithms

What is a Metaheuristic?

• A metaheuristic is a set of algorithmic concepts that can be used to define or organize heuristic methods applicable to a wide set of different problems

• Examples of metaheuristic include – simulated annealing– tabu search– iterated local search– genetic algorithms– ant colony optimization

(Definition by M. Dorigo)

Page 64: SC741– W8: Ant Colony Optimization Algorithms

The ACO Metaheuristic

• Ant System and AntNet have been extended so that they can be applied to any shortest path problem on graphs

• The resulting extension is called Ant Colony Optimization metaheuristic

Dorigo, Di Caro & Gambardella, 1999

Page 65: SC741– W8: Ant Colony Optimization Algorithms

The ACO-Metaheuristics Procedure

procedure ACO-metaheuristics()while (not-termination-criterion)

schedule sub-proceduresgenerate-&-manage-ants()update-pheromones()execute-daemon-actions()

{Optional}end schedule sub-procedures

end whileend procedure

These are problem specific actions, like local search

Page 66: SC741– W8: Ant Colony Optimization Algorithms

ACO: Quality of Results ObtainedSEQUENTIAL ORDERING PROBLEM (SOP)

Best heuristic currently available Gambardella-Dorigo

QUADRATIC ASSIGNMENT PROBLEM (QAP)Among best heuristic currently availableon “real-world” problems Gambardella-Dorigo-Taillard-Stützle

ROUTING IN CONNECTION-LESS NETWORKSAmong best heuristics currently available Di Caro-Dorigo

VEHICLE ROUTING PROBLEM (VRP)Among best heuristics currently availablefor vehicle routing problems with time windows Gambardella et al.

SHORTEST COMMON SUPERSEQUENCE PROBLEM (SCS)Among best heuristics currently available Middendorf

TRAVELLING SALESMAN PROBLEM (TSP)Good results, although not the best Gambardella-Dorigo-Stützle

GRAPH COLOURING PROBLEM (GCP)Good results, although not the best Hertz

SCHEDULING PROBLEMPromising preliminary results on the singlemachine weighted total tardiness problem Dorigo-Stützle

MULTIPLE KNAPSACK PROBLEM (MKP)Promising preliminary results Michalewicz

Page 67: SC741– W8: Ant Colony Optimization Algorithms

ACO: Theoretical results• Gutjahr (Future Generation Computer Systems, 2000;

Information Processing Letters, 2002) and Stützle and Dorigo (IEEE Trans. on Evolutionary Computation, 2002) have proved convergence with prob 1 to the optimal solution of different versions of ACO

• Meuleau and Dorigo (Artificial Life Journal, 2002) have shown that there are strong relations between ACO and stochastic gradient descent in the space of pheromone trails, which converges to a local optima with prob 1

• Birattari et al. (TR, 2000) have shown the tight relationship between ACO and reinforcement learning

• Rubinstein (TR, 2000) has shown the tight relationship between ACO and Monte Carlo simulation

Page 68: SC741– W8: Ant Colony Optimization Algorithms

ACO: Real-World Applications• Sequential ordering in a production line

(Gambardella, under evaluation at MCM (Ferrari subcontractor, Italy)

• Routing of gasoline trucks in Canton Ticino(Gambardella, in use by Pina Petroli, Switzerland)

• Job-shop scheduling (Bonabeau, in use at Unilever, France)

• Project scheduling(Kouranos, in use at Intracom S.A , Greece)

• FaxFactory application (Rothkrantz, Delft Universitaet, in use at KPN, Netherlands)

• Water management problems (Mariano, Mexican Institute of Water Technology, Mexico)

• Vehicle routing with time windows (Gambardella, AntOptima, Migros Supermarkets, Switzerland)

Page 69: SC741– W8: Ant Colony Optimization Algorithms

Additional Literature – Week 8Book• M. Dorigo and T. Stuetzle, “Ant Colony Optimization”,

Bradford Books, 2004.

Papers• Gambardella L.M, Taillard E., Dorigo M., “Ant colonies for

the Quadratic Assignment Problem”, J. of the Operational Research Society, 1999, Vol. 50, pp.167-176.

• Gambardella L.M, Taillard E., Agazzi G., MACS-VRPTW: A Multiple Ant Colony System for Vehicle Routing Problems with Time Windows, In D. Corne, M. Dorigo and F. Glover, editors, New Ideas in Optimization. McGraw-Hill, London, UK, pp. 63-76, 1999.