Ant Colony Optimization: Presented by:VISHAL RAJ
Ant Colony Optimization: Presented by:VISHAL RAJ
• Section II (Applications)
• In the model, the probability of choosing a branch at a certain time depends on the total
amount of pheromone on the branch, which in turn is proportional to the number of ants
that used the branch until that time.
• Artificial ants live in a discrete world and their moves consist of transitions from
discrete states to discrete states.
• Artificial ants have an internal state. This private state contains the memory of the
ants’ past actions.
• Artificial ants’ timing in pheromone laying is problem dependent and often does
not reflect real ants’ behavior. For example, in many cases artificial ants update
pheromone trails only after having generated a solution.
• Artificial ants’ timing in pheromone laying is problem dependent and often does
not reflect real ants’ behavior. For example, in many cases artificial ants update
pheromone trails only after having generated a solution.
• To improve overall system efficiency, ACO algorithms can be enriched with extra
capabilities such as lookahead, local optimization, backtracking, and so on that
cannot be found in real ants. In many implementations ants have been hybridized
with local optimization procedures , while, so far, only Michel and Middendorf have
used a simple one-step lookahead function and there are no examples of backtracking
procedures added to the basic ant capabilities, except for simple recovery procedures
used by Di Caro and Dorigo
How to implement in a program
•Memory: MK or TabuK
[]
A
B
2
[]
C
3
[]
4
D
E []
5
Iteration 1
[A] [B]
2
1
A
B
[C]
3
C
[D] [E]
4
D 5
E
How to build next sub-solution?
[A]
1
A
[A]
B
1
[A]
C
1
[A,D]
[A]
1 1
D
E
Iteration 2
[E,A] [C,B]
5
3
A
B
[B,C]
2
C
[A,D]
[D,E]
1
D 4
E
Iteration 3
[D,E,A] [E,A,B]
4 5
A
B
[A,D,C]
1
C
[B,C,D]
[C,B,E]
2
D 3
E
Iteration 4
[B,C,D,A] [D,E,A,B]
2 4
A
B
[E,A,B,C]
5
C
[C,B,E,D]
[A,DCE]
D 3
1
E
Iteration 5
[C,B,E,D,A] [A,D,C,E,B]
3 1
A
B
[D,E,A,B,C]
4
C
[E,A,B,C,D]
[B,C,D,A,E]
D 5
E 2
Path and Pheromone Evaluation
[A,D,C,E,B]
Q
if ( i , j ) tour
ik, j Lk
0
1 otherwise
[B,C,D,A,E]
2
[C,B,E,D,A]
[D,E,A,B,C]
[E,A,B,C,D]
5
End of First Run
Update tabuk(s)
Tabu list management
= (i,j)
For every edge
Compute ij ( t n ) ij ( t ) ij
For k:=1 to m do
Q
if ( i , j ) tour described by tabu k
k
i,j Lk
0
otherwise
ij : ij ijk
Yes
End
Stopping Criteria
• Stagnation
• Max Iterations
Improvements to AS
min ij max
• pheromone trails are only updated offline by the daemon
pheromone
e / Lgb
( t ) if arc(i, j) T gb
ijgb ( t )
0 otherwise
w1
ij ( t 1 ) ( 1 ) ij ( t ) ( w r ) ijr ( t ) w ijgb ( t )
r 1
Improvements to AS
ij ( t 1 ) ( 1 ) ij ( t ) ijbest ( t )
• Problem is NP-hard
• Classical combinatorial
optimization problem to
test.
ACO for the Traveling Salesman Problem
No
Update pheromone level using the tour cost for each ant
No
Stopping
criteria
yes
K ij (t ) for each edge that it has used. depends on how well the ant
has performed.
• The quadratic assignment problem is the problem of assigning n facilities to n locations so that
the cost of the assignment, which is a function of the way facilities have been assigned to
locations, is minimized
Maniezzo, Colorni, and Dorigo applied exactly the same algorithm as AS using the QAP-
specific min-max heuristic to compute the (n) values . The resulting algorithm, AS-QAP, was
tested on a set of standard problems and turned out to be of the same quality as metaheuristic
approaches such as simulated annealing and evolutionary computation.
Similar results were obtained by St¨utzle and Hoos with their MMAS-QAP algorithm
Job-Shop Scheduling Problem
Colorni, Dorigo, and Maniezzo (1994) applied AS to the job-shop scheduling problem
(JSP),
The basic algorithm they applied was exactly the same as AS, where the ´ heuristic
value was computed using the longest remaining processing time heuristic. Due to
the different nature of the constraints with respect to the TSP they also defined a new
way of building the ant’s tabu list. AS-JSP was applied to problems of dimensions up
to 15 machines and 15 jobs always finding solutions within 10% of the optimal value
Vehicle Routing Problem
Work to date