MULTI-LEVEL PARALLEL FRAMEWORK - Craus, Mitica; Rudeanu, Laurentiu (International Journal of Computing, 2014)
This article deals with the pyramidal framework designed to be used in the parallelization of the ant-like algorithms. Such algorithms have several things in common: they run in cycles and the process can be divided among different "processing units". The parallel implementation of the Ant Colony Optimization algorithm for the Traveling Salesman Problem is an application of this system. The topology of the framework architecture is similar to a B-tree and contains three types of processing nodes: a single master (the root), several sub-masters corresponding to the internal nodes of the tree and several slaves as leaves. First the master reads the problem instance, wraps it up in a message that is sent to all the other processing nodes and initializes the central data structures. Then, the slaves take over the control by starting the algorithm while the master and the sub-masters are waiting for requests to update the data. The framework has an object-oriented design and was implemented in C++, using the MPI library.