This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Sequential and Parallel Cellular Automata-Based Scheduling Algorithms
October 2002 (vol. 13 no. 10)
pp. 1009-1023

Abstract—In this paper, we present a novel approach to designing cellular automata-based multiprocessor scheduling algorithms in which extracting knowledge about the scheduling process occurs. This knowledge can potentially be used while solving new instances of the scheduling problem. We consider the simplest case when a multiprocessor system is limited to two-processors, but we do not imply any limitations on the size and parameters of parallel programs. To design cellular automata corresponding to a given program graph, we propose a generic definition of program graph neighborhood, transparent to the various kinds, sizes, and shapes of program graphs. The cellular automata-based scheduler works in two modes. In learning mode we use a genetic algorithm to discover rules of cellular automata suitable for solving instances of a scheduling problem. In operation mode, discovered rules of cellular automata are able to automatically find an optimal or suboptimal solution of the scheduling problem for any initial allocation of a program graph in two-processor system graph. Discovered rules are typically suitable for sequential cellular automata working as a scheduler, while the most interesting and promising feature of cellular automata are their massive parallelism. To overcome difficulties in evolving parallel cellular automata rules, we propose using coevolutionary genetic algorithm. Discovered this way, rules enable us to design effective parallel schedulers. We present a number of experimental results for both sequential and parallel scheduling algorithms discovered in the context of a cellular automata-based scheduling system.

[1] I. Ahmad and Y.-K. Kwok, “On Paralleling the Multiprocessor Scheduling Problem,” IEEE Trans. Parallel and Distributed Systems, vol. 10, pp. 414-432, 1999.
[2] J. Blazewicz, K.H. Ecker, G. Schmidt, and J. Weglarz, Scheduling in Computer and Manufacturing Systems. Springer, 1994.
[3] D. Andre, F.H. Bennet III, and J.R. Koza, “Discovery by Genetic Programming of a Cellular Automata Rule that Is Better than Any Known Rule for the Majority Classification Problem,” Proc. First Ann. Conf. Genetic Programming J.R. Koza, D.E. Goldberg, D.B. Fogel, and R.L. Riolo, eds., pp. 3-11, 1996.
[4] Proc. BioSp3: Workshop Bio-Inspired Solutions to Parallel Processing Problems, in conjunction with Int'l Parallel and Distributed Processing Symp. (IPDPS 2002), Apr. 2002.
[5] A. Boukerche and M.S.M. Notare, “Applications of Neural Networks to Mobile Communication Systems” Solutions to Parallel and Distributed Computing Problems. Lessons from Biological Sciences, A.Y. Zomaya, F. Ercal, and S. Olariu, eds., pp. 255-268, Wiley&Sons, 2001.
[6] R. Das, M. Mitchell, and J. Crutchfield, “A Genetic Algorithm Discovers Particle-Based Computation in Cellular Automata,” Parallel Problem Solving from Nature-PPSN III, pp. 344-353, Y. Davidor, H.-P. Schwefel and R. Männer, eds., Springer, 1994.
[7] Artificial Immune Systems and Their Applications, D. Dasgupta, ed. Springer, 1999.
[8] CEC 2002: Congress on Evolutionary Computation, May 2002.
[9] H.E. Rewini and T.G. Lewis,"Scheduling parallel program tasks onto arbitrary target machines," J. Parallel and Distributed Computing, vol. 9, pp. 138-153, 1990.
[10] M.R. Garey and D.S. Johnson, Computers and Intractability: A Guide to the Theory of NP-Completeness.New York: W.H. Freeman, 1979.
[11] Proc. GECCO-2002: Genetic and Evolutionary Computation Conf., July 2002.
[12] A. Gerasoulis and T. Yang, “A Comparison of Clustering Heuristics for Scheduling DAG's on Multiprocessors,” J. Parallel and Distributed Computing, vol. 16, no. 4, pp. 276-291, 1992.
[13] D.E. Goldberg, Genetic Algorithms in Search, Optimization, and Machine Learning. Reading, Mass.: Addison-Wesley, 1989.
[14] T. Gramb, S. Bornholdt, M. Grob, M. Mitchell, and T. Pellizari, Non-Standard Computation. Wiley-VCH, 1998.
[15] W.D. Hillis, “Coevolving Parasites Improve Simulated Evolution as an Optimization Procedure,” Artificial Life II, C.G. Langton, C. Taylor, J.D. Farmer, and S. Rasmussen eds., Addison-Wesley, 1992.
[16] J.J. Korczak, P. Lipinski, and P. Roger, “Evolution Strategy in Portfolio Optimization,” Proc. Fifth Int'l Conf. Artificial Evolution, pp. 225-236, 2001.
[17] Y.-K. Kwok and I. Ahmad, “Dynamic Critical-Path Scheduling: An Effective Technique for Allocating Task Graphs to Multiprocessors,” IEEE Trans. Parallel and Distributed Systems, vol. 7, no. 5, pp. 506-521, May 1996.
[18] Y.-K. Kwok and I. Ahmad, “Efficient Scheduling of Arbitrary Task Graphs to Multiprocessors Using a Parallel Genetic Algorithm,” J. Parallel and Distributed Computing, vol. 47, no. 1, pp. 58-77, 1997.
[19] Artificial Life. An Overview, G. Langton, ed., Bradford Book/MIT Press, 1995.
[20] J.W. Meyer, “Self-Organizing Processes,” Proc. Int'l Conf Parallel and Vector Processing (CONPAR94-VAPPVI), B. Buchbeger and J. Volker, eds., Springer, 1994.
[21] Z. Miachalewicz, Genetic Algorithm + Data Structure = Evolution Programming, Springer-Verlag, New York, 1992.
[22] M. Mitchel, “Computation in Cellular Automata,” Artificial Life II, pp. 95-140, C.G. Langton, C. Taylor, J.D. Farmer, and S. Rasmussen eds., Addison-Wesley, 1992.
[23] T.M. Nabhan and A.Y. Zomaya, "A Parallel Simulated Annealing Algorithm with Low Communication Overhead," IEEE Trans. Parallel and Distributed Systems, Vol. 6, No. 12, Dec. 1995, pp. 1226-1233.
[24] Proc. PPSN VII: Parallel Problem Solving from Nature, Sept. 2002.
[25] J. Paredis, “Coevolutionary Life-Time Learning,” Proc. Parallel Problem Solving from Nature—PPSN IV, H.-M. Voigt, W. Ebeling, I. Rechenberg and H.-P. Schwefel, eds., pp. 72-80, 1996.
[26] F. Seredynski, “Discovery with Genetic Algorithm Scheduling Strategies for Cellular Automata,” Proc. Parallel Problem Solving from Nature—PPSN V, A.E. Eiben, T. Back, M. Schoenauer, and H.-P. Schwefel, eds. pp. 643-652, 1998.
[27] F. Seredynski, “New Trends in Parallel and Distributed Evolutionary Computing,” Fundamenta Informaticae, vol. 35, no. 1-4, pp. 211-230, Aug. 1998.
[28] F. Seredynski and C.Z. Janikow, “Designing Cellular Automata-based Scheduling Algorithms,” GECCO-99: Proc. Genetic and Evolutionary Computation Conf., W. Banzhaf, J. Daida, A.E. Eiben, M.H. Garzon, V. Honavar, M. Jakiela, and R.E. Smith, eds., pp. 587-594, July 1999.
[29] F. Seredynski, “Evolving Cellular Automata-Based Algorithms for Multiprocessor Scheduling,” Solutions to Parallel and Distributed Computing Problems. Lessons from Biological Sciences, A.Y. Zomaya. F. Ercaland, and S. Olariu, eds., pp. 179-207, John Wiley&Sons, 2001.
[30] F. Seredynski and A. Swiecicka, “Immune-Like System Approach to Multiprocessor Scheduling,” Proc. Fourth Int'l Conf. Parallel Processing and Applied Math., Sept. 2001,
[31] M. Sipper, Evolution of Parallel Cellular Machines: The Cellular Programming Approach. Heidelberg: Springer-Verlag, 1997.
[32] P.M.A. Sloot, J.A. Kaandorp, A.G. Hoekstra, and B.J. Overeinder, “Distributed Cellular Automata: Large-Scale Simulation of Natural Phenomena,” Solutions to Parallel and Distributed Computing Problems. Lessons from Biological Sciences, A.Y. Zomaya, F. Ercal, and S. Olariu, eds., pp. 1-46, John Wiley&Sons, 2001.
[33] T. Toffoli and N. Margolus, Cellular Automata Machines. MIT Press, 1997.
[34] M. Tomassini, M. Sipper, and M. Perrenoud, “On the Generation of High-Quality Random Numbers by Two-Dimensional Cellular Automata,” IEEE Trans. Computers, vol. 49, no. 10, pp. 1140-1151, Oct. 2000.
[35] Q. Wang and K.H. Cheng, “List Scheduling of Parallel Tasks,” Information Processing Letters, vol. 37, pp. 291-297, Mar. 1991.
[36] S. Wolfram, “Universality and Complexity in Cellular Automata,” Physica D., vol. 10, pp. 1-35, 1984.
[37] A.Y. Zomaya, J.A. Andreson, D.B. Fogel, G.J. Milburn, and G. Rozenberg, “Non-Conventional Computing Paradigms in the New Millennium,” Computing in Science and Engineering, vol. 3, no. 6, pp. 82-99, Nov./Dec. 2001.
[38] Solutions to Parallel and Distributed Computing Problems. Lessons from Biological Sciences. A.Y. Zomaya, F. Ercaland, and S. Olariu, eds., John Wiley&Sons, 2001.
[39] A.Y. Zomaya and Y.-W. Teh, “Observations on Using Genetic Algorithms for Dynamic Load-Balancing,” IEEE Trans. Parallel and Distributed Systems, vol. 12, no. 9, pp. 899-911, Sept. 2001.
[40] A.Y. Zomaya, C. Ward, and B. Macey, “Genetic Scheduling for Parallel Processor Systems: Comparative Studies and Performance Issues,” IEEE Trans. Parallel and Distributed Systems, vol. 10, no. 8, pp. 795-812, Aug. 1999.

Index Terms:
Cellular automata, coevolution, genetic algorithms, multiprocessor scheduling, two-processor systems.
Citation:
Franciszek Seredynski, Albert Y. Zomaya, "Sequential and Parallel Cellular Automata-Based Scheduling Algorithms," IEEE Transactions on Parallel and Distributed Systems, vol. 13, no. 10, pp. 1009-1023, Oct. 2002, doi:10.1109/TPDS.2002.1041877
Usage of this product signifies your acceptance of the Terms of Use.