Ant Colony Optimization for Optimization of Route path taken
Ant Colony Algorithm is a potential candidate for coupled, 3D optimisation. Ant Colony Algorithm enjoys the overall optimization capacity and the parallel implementation. The purpose of this project is to use Ant Colony Algorithm to create a route optimization.
Ant Colony Optimization is a probabilistic technique for solving difficult combinatorial optimization problems. The main idea that is used in Ants Colony Algorithm is adapted from the ants' pheromone trails-laying behaviour, which is an indirect form of communication as a result of modifications of the environment. In the real world, ants communicate with one another through detecting pheromone trails. When an ant passes through a route, it deposits a sample amount of pheromone onto the path, marking the path with a trail of pheromones. However, these pheromones are temporary and the intensity of the pheromones will evaporate over time. The ants then determine their movements by gauging the density of the pheromones on a path, with the tendency of the ants to follow the paths where intensity of pheromones trails is higher. This means that the higher density of pheromone trails on a road, the more attractive that road will be to the ants. Pheromone density tends to be higher on a shorter path. As more ants follow a given trail, more pheromones is left on that trail, and the probability that other ants will follow the same trail will be higher. The main idea of this self-catalyzing activities is that the path that most approximates the optimal scenario carries more pheromone, which makes it more attractive in the next cycle.
Task:
Design a matlab code, using Ant Colony Algorithm, to obtain the most optimized path with the shortest distance taken from the starting node to the ending node. Your optimized path has to pass through nodal points to reach the final destination. (The coordinates of all the nodes are provided) and you have to vary the amount of pheromones to suit the path travelled.
• Create the model with the coordinates provided and treat this coordinates as your available nodes
• Allow user input to select starting node(departure) and ending node(destination)
• Create segments where your path may travel
• Include constraints to limit your random path to bearings of +-45degree from your current location to your destination
• Provide a simulation of the model created
• Compare data with Dijkstra Algorithm to check the path of convergence