Abstract
In this paper we describe an hybrid heuristic approach, which combines Genetic Algorithms and Tabu Thresholding, for the static allocation of interacting processes onto a parallel target system, where the number of processes is greater than the number of available processors. This problem is known to be NP-hard and finds many practical applications, given the increasing diffusion of distributed and parallel computing systems.
The algorithm faces infeasibilities due to processors overload by incorporating them into the objective function and by adapting the mutation operator. Global search is performed on the set of local optima obtained by a repair search operator based on a Tabu Thresholding procedure.
Extensive computational testing on randomly generated instances with up to 100 processes characterized by different target network topologies with 4 to 25 processors, shows that the algorithm favorably compares with other approaches from the literature.
The proposed approach has also been extended to the allocation of parallel objects and classes, where an additional co-residence constraint between each parallel object and the associated class arises.
Similar content being viewed by others
References
Berman F. and Snyder, L. “On Mapping Parallel Algorithms into Parallel Architectures”, J. Parall. Distrib. Comput. 4(5), 439–458, 1987}.
Bertoni, A. and Dorigo, M. “Implicit Parallelism in Genetic Algorithms”, Artificial Intelligence, 61, 2, 307–314, 1993.
Object-Oriented Experiences and Future Trends, Special issue of Communications of the ACM, vol. 38(10), 1995.
Chu, W.W., Holloway, L.J., Lan, M.-T. and Efe, K. “Task Allocation in Distributed Data Processing”, Computer 13, 11, 1980.
Corradi, A. and Leonardi, L. “Parallelism in Object-Oriented Programming Languages”, IEEE 3rd Conference on Computer Languages, New Orleans, 1990.
Corradi, A. Leonardi,L. and Zambonelli, F. “Object-Oriented Parallel Models and Programming Environments”, in G. Balbo and M. Vanneschi (eds.), General Purpose Parallel Computers: Architectures, Programming Environments, and Tools, Editrice Tecnico Scientifica, Pisa, 1995.
Corradi, A., Leonardi, L. and Vigo, D. “Massively Parallel Programming Environments: How to Map Parallel Objects on Transputers”, in M. Becker, L. Litzler and M. Tréhel (eds.), TRANSPUTERS'92: Advanced Research and Industrial Applications, 125–141. I.O.S. Press, Amsterdam, 1992.
Davis, L. Handbook of Genetic Algorithms, van Nostrand Reinhold, 1991. de Jong, K.A. Analysis of the Behavior of a Class of Genetic Algorithms, Ph.D. dissertation, Univ. of Michigan, 1975.
Dutta, A., Koehler, G. and Whinston, A. “On Optimal Allocation in a Distributed Processing Environment”, Management Science 28, 839–853, 1982.
Fernández-Baca, D. “Allocating Modules to Processors in a Distributed System”, IEEE Trans. Softw. Eng., SE-15(11), 1427–1436, 1989.
Goldberg, D.E.Genetic Algorithms in Search, Optimization and Machine Learning, Addison-Wesley, 1989.
Glover, F. “Heuristics for Integer Programming Using Surrogate Duality”, Decision Sciences 8, 156–166, 1977.
Glover, F. “Tabu Search, Part I”, ORSA Journal on Computing 1, 190–206, 1989.
Glover, F. “Genetic Algorithms and Scatter Search: Unsuspected Potentials”, Statistics and Computing 4, 131–140, 1994.
Glover, F. “Tabu Thresholding: Improved Search Trajectories by Non-monotonic Search Trajectories”, ORSA Journal on Computing 7, 426–442, 1995.
Glover, F. “Tabu Search and Adaptive Memory Programming-Advances, Applications and Challenges”, in Barr, Hegalson and Kennington (eds.), Interfaces in Computer Science and Operations Research, 1–75. Kluwer Academic Publisher, 1996.
Glover, F. and Laguna, M. “Tabu Search”, in C. Reeves (ed.), Modern Heuristic Techniques for Combinatorial Problems, 70–141. Blackwell Scientific Publishing, Oxford, 1993.
Holland, J.M. Adaptation in natural and artificial systems, The University of Michigan Press, Ann Arbor, 1975.
Ma, P.R., Lee, E.Y.S. and Tsuchiya, M. “A Task Allocation Model for Distributed Computing Systems”, IEEE Trans. Comput. C-31(1), 41–47, 1982.
Mazzeo, A., Mazzocca, N. and Sforza, A. “Allocazione di Processi per Sistemi di Elaborazione Distribuiti in Ambiente CSP”, (in Italian) Atti delle Giornate della AIRO, Sorrento, October 1990.
Michalewitz, Z. Genetic algorithms + data structures = Evolution programs, Springer Verlag, 1992.
Mühlenbein, H. “Parallel Genetic Algorithms, Population Genetics and Combinatorial Optimization” in J.D. Schaeffer (ed.), Proc. of the 3rd Int. Conf. on Genetic Algorithms, 416–421, 1989.
Norman, M.G. and Thanisch, P. “Models of Machines and Computation for Mapping in Multicomputers”, ACM Computing Surveys 25(3), 263–302, 1993.
Reeves, C.R. Modern Heuristic Techniques for combinatorial problems, Blackwell scientific, 1993.
Sahni, S. and Gonzalez, T. “P-complete Approximation Problems”, Journ. of Assoc. Comput. Mach. 23, 555–565, 1976.
Shen, C.C. and Tsai, W.H. “A Graph Matching Approach to Optimal Task Assignment in Distributed Computing Systems Using a Minimax Criterion”, IEEE Trans. Comput. C-34(3), 197–203, 1985.
Sinclair, J.B. “Efficient Computation of Optimal Assignments for Distributed Tasks”, J. of Parall. and Distrib. Comput. 4, 342–362, 1987.
Stenders, J. (Ed.), Parallel Genetic Algorithms: Theory and Applications, IOS Press, Amsterdam, 1992
Stone, H.S. “Multiprocessor Scheduling with the Aid of Network Flow Algorithms”, IEEE Transactions on Software Engineering 3, 85-93, 1977.
Suh, J.Y. and van Gucht, D. “Incorporating Heuristic Information into Genetic Search”, in J.J. Grefenstette (ed.), Proc. 2nd Int. Conf. on Genetic Algorithms, Lawrence Erlbaum}, 100–107, 1987.
Syswerda, G. “Uniform Crossover Genetic Algorithms”, in J.D. Schaeffer (ed.), Proc. of the 3rd Int. Conf. on Genetic Algorithms, 2–9, 1989.
Wu, S.J. and Chou, P.T. “Steady-state Genetic Algorithms for Discrete Optimization of Trusses”, Computers and Structures 56, 979, 1995.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Vigo, D., Maniezzo, V. A Genetic/Tabu Thresholding Hybrid Algorithm for the Process Allocation Problem. Journal of Heuristics 3, 91–110 (1997). https://doi.org/10.1023/A:1009676913040
Issue Date:
DOI: https://doi.org/10.1023/A:1009676913040