An incremental ant colony optimization based approach to task assignment to processors for multiprocessor scheduling
Optimized task scheduling is one of the most important challenges to achieve high performance in multiprocessor environments such as parallel and distributed systems. Most introduced task-scheduling algorithms are based on the so-called list scheduling technique. The basic idea behind list scheduling is to prepare a sequence of nodes in the form of a list for scheduling by assigning them some priority measurements, and then repeatedly removing the node with the highest priority from the list and allocating it to the processor providing the earliest start time (EST). Therefore, it can be inferred that the makespans obtained are dominated by two major factors: (1) which order of tasks should be selected (sequence subproblem); (2) how the selected order should be assigned to the processors (assignment subproblem). A number of good approaches for overcoming the task sequence dilemma have been proposed in the literature, while the task assignment problem has not been studied much. The results of this study prove that assigning tasks to the processors using the traditional EST method is not optimum; in addition, a novel approach based on the ant colony optimization algorithm is introduced, which can find far better solutions.
Key wordsAnt colony optimization List scheduling Multiprocessor task graph scheduling Parallel and distributed systems
Unable to display preview. Download preview PDF.
- Al-Maasarani, A., 1993. Priority-Based Scheduling and Evaluation of Precedence Graphs with Communication Times. MS Thesis, King Fahd University of Petroleum and Minerals, Saudi Arabia.Google Scholar
- Baxter, J., Patel, J.H., 1989. The LAST algorithm: a heuristicbased static task allocation algorithm. Proc. Int. Conf. on Parallel Processing, p.217–222.Google Scholar
- Boveiri, H.R., 2010. ACO-MTS: a new approach for multiprocessor task scheduling based on ant colony optimization. Proc. IEEE Int. Conf. on Intelligent and Advanced Systems, p.1–5. http://dx.doi.org/10.1109/ICIAS.2010.5716203Google Scholar
- Boveiri, H.R., 2014. Assigning tasks to the processors for task-graph scheduling in parallel systems using learning and cellular learning automata. Proc. 1st National Conf. on Computer Engineering and Information Technology, p.1–8 (in Farsi).Google Scholar
- Hwang, J.J., Chow, Y.C., Anger, F.D., et al., 1989. Scheduling precedence graphs in systems with interprocessor communication times.Google Scholar
- SIAM J. Comput., 18(2): 244–257. http://dx.doi.org/10.1137/0218016Google Scholar
- Kruatrachue, B., Lewis, T.G., 1987. Duplication Scheduling Heuristics (DSH): a New Precedence Task Scheduler for Parallel Processor Systems. Technical Report No. OR 97331, Oregon State University, Corvallis.Google Scholar
- Meybodi, M.R., Beigy, H., Taherkhani, M., 2004. Cellular learning automata and its applications. J. Sci. Technol. Sharif Univ., 25: 54–77 (in Farsi).Google Scholar