Title: Parallel%20Implementation%20of%20Ant%20Colony%20Optimization%20on%20%20Traveling%20Salesman%20problem
1Parallel Implementation of Ant Colony
Optimization on Traveling Salesman problem
- Yogesh sharma IIT2009175
- Ankur mangal IIT2009176
Under the supervision of Dr.K.P.Singh
2Traveling Salesman Problem (TSP)
- Traveling salesman problem - A salesman must
visit n cities, passing through each city only
once, beginning from one of them which is
considered as his base,and returning to it. - The cost of the transportation among the cities
is given. - The program of the journey is requested , that is
the order of visiting the cities in such a way
that the cost is the minimum.
3Traveling salesman problem
Traveling salesman problem is NP-complete. This
means that to obtain optimal route we have to
through all possible routes and Number of routes
increase exponentially.
4Traveling salesman problem
- Number of possible routes with 50 cities is
(50-2)! , which is - 12,413,915,592,536,072,670,862,289,047,373,375,038
,521,486,354,677,760,000,000,000. - So for large instance compute optimal solution is
impossible. - Instead of finding exact solution optimization
tachniques compute solution that is close to the
optimal solution. - Ant colony optimization is a metaheuristic to
compute a solution close to optimal solution.
5Ant colony optimization ( ACO )
- Ant colony optimization algorithm is a
metaheuristic that can be used to define
heuristic function applicable to wide set of
different problems. - ACO is inspired by behaviour of real ants.
- Key concept of ACO based on communication among
ants based on the use of chemical produce by ants
called as pheromone. - Ants use pheromone trail to making path on ground.
6Ant colony optimization ( ACO )
7Ant colony optimization ( ACO )
- Algorithm-
- Procedure ACOMetaheuristic
- Set parameters, initialize pheromone trails
- While( termination condition not met ) Do
- Construct Solution
- Update pheromone
- daemon Action
- end
- end
8Ant colony optimization ( ACO )
- Construct solution - Construct solution manage a
colony of ants that visit adjacent states of
consider problem (i.e. Traveling salesman problem
) construction graph Gc( v , e ). - They move by a local decision policy make use of
pheromone trail and heuristic information. - Initially , ant are out on randimely chosen
paths. - At each construction step , ant k apply
problalistic choice to decide which state to
visit next.
9Ant colony algorithm ( ACO )
- Probability for kth ant to move from state i to
state j is given by - xy is amount of pheromone for transition
from x to y. -
- xy is heuristic information.
- is parameter to control influence of
pheromone. - is parameter to control influence of
heuristic value.
10Ant colony optimization ( ACO )
1
P15
P12
2
5
P24
P35
P54
P23
3
4
P34
11Ant colony optimization ( ACO )
1
P15
P12
2
5
P24
P35
P54
3
4
12Ant colony optimization ( ACO )
1
P15
P12
2
5
P24
P35
P54
3
4
13Ant colony optimization ( ACO )
1
P15
P12
2
5
P24
P35
P54
3
4
14Ant colony optimization ( ACO )
1
P15
P12
2
5
P24
P35
P54
3
4
15Ant colony optimization ( ACO )
1
P15
P12
2
5
P24
P35
P54
3
4
16ACO Concept
- UpdatePheromones-
- When all ants comleted a solution pheromones
updated by - Is amount phermones deposited for a state
transion xy. - ? is evaporation coefficient and is
the amount of pheromone deposited. - DaemonActions- DaemonAction is procedure to
implement centralized action which cannot be
performed by single ant.example decide whether
deposit additional pheromone to bias the search
process.
17Ant colony optimization ( ACO )
1
P15
P12
2
5
P24
P35
P54
3
4
18Parrallel implementation of ACO
- Our target is to parrallize the sequential
algorithm. - On large instances sequential algorithm does not
use full resources.Ex- if we have 6-processors
sequential algorithm works as one process. - To make better use of available resources
parrallel process work concurrently on system. - Ant speed up process of finding solution.
19Parrallel implementation of ACO
start
Fork
Parrallel threads
Join
End
20Parrallel implementation of ACO
start
Fork
Parrallel threads
Join
End
21Shared memory model for Concurremt Access to Data
Memory
Reead only access
Reead only access
Reead only access
For update of data by ant. Lock data and uadate
by single ant
22Parrallel Algorithm Of ACo
- Algorithm-
- Procedure ACOMetaheuristic
- Set parameters, initialize pheromone trails
- While( termination condition not met ) Do
- Parrallel Do
- Construct Solution
- Update pheromone
- daemon Action
- end
- end
23Result of parrellel Algorithm
- Instances-
- Intance - eli51
- 51 cities
- Best known solution- 426
- Best known solution by Our implementat- 426
- Intance - eli76
- 76 cities
- Best known solution- 540
- Best known solution by Our implementat- 538
24Perfomance graph between thread and time
time
Number of Thread
25Graph between Parrallel implementation and
sequential implementation
Time
26Thank You