Yogesh sharma IIT2009175 Ankur mangal IIT2009176 Parallel Implementation of Ant Colony Optimization on Traveling Salesman problem Yogesh sharma IIT2009175 Ankur mangal IIT2009176 Under the supervision of Dr.K.P.Singh
Traveling 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.
Traveling 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.
Traveling 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.
Ant 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.
Ant colony optimization ( ACO )
Ant colony optimization ( ACO ) Algorithm:- Procedure ACOMetaheuristic Set parameters, initialize pheromone trails While( termination condition not met ) Do Construct Solution Update pheromone daemon Action end
Ant 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.
Ant 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.
Ant colony optimization ( ACO ) 1 P15 P12 2 5 P24 P35 P54 P23 3 4 P34
Ant colony optimization ( ACO ) 1 P15 P12 2 5 P24 P35 P54 3 4
Ant colony optimization ( ACO ) 1 P15 P12 2 5 P24 P35 P54 3 4
Ant colony optimization ( ACO ) 1 P15 P12 2 5 P24 P35 P54 3 4
Ant colony optimization ( ACO ) 1 P15 P12 2 5 P24 P35 P54 3 4
Ant colony optimization ( ACO ) 1 P15 P12 2 5 P24 P35 P54 3 4
ACO 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.
Ant colony optimization ( ACO ) 1 P15 P12 2 5 P24 P35 P54 3 4
Parrallel 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.
Parrallel implementation of ACO start Fork Parrallel threads Join End
Parrallel implementation of ACO start Fork Parrallel threads Join End
Shared memory model for Concurremt Access to Data Reead only access Reead only access Reead only access For update of data by ant. Lock data and uadate by single ant
Parrallel Algorithm Of ACo Procedure ACOMetaheuristic Set parameters, initialize pheromone trails While( termination condition not met ) Do Parrallel Do Construct Solution Update pheromone daemon Action end
Result 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
Perfomance graph between thread and time Number of Thread
Graph between Parrallel implementation and sequential implementation Time
Thank You