Research and study the Ant Colony Optimisation (ACO) problem. This problem originated as
a probabilistic technique for finding the shortest path through a graph, using the behavior of
ants seeking a path between their colony and a source of food .
Having done some research, you are required to write programs (as both serial C and
parallel Pthreads C programs) to simulate, in two dimensions, the Ant Colony Optimisation
problem. Note: both programs must be written in the C programming language. The parallel
program must use Pthreads.
Write an additional program, in a programming language of your choice, to visualise the
movement/evolution over time of the ants. Rather than have a visualisation and simulation
running as one program, you should have your serial and parallel programs output the
necessary data to files. These data-file(s) can then be read by your visualisation program to
visualise the evolution, over time, of the movement of the ants around the model two dimensional world.
Test different scenarios in relation to the movement of the ants; for e.g.:
- provide more than one food source, and study how the ants behave differently
compared to one food source.
- change the pheromone-evaporation parameter to see how this affects the ants
choosing the shortest path(s).