Abstract
Although much research has been devoted to devising genetic programming systems that are capable of running the evolutionary process in parallel, thereby improving execution speed, comparatively little effort has been expended on evolving programs which are themselves inherently concurrent. A suggested reason for this is that the vast number of parallel execution paths that are open to exploration during the fitness evaluation of population members renders evolutionary computation prohibitively expensive. We have therefore investigated the potential for minimising this expense by using a far more limited exploration of the execution state space to guide evolution. The approach, involving the definition of sets of schedulings to enable a variety of execution interleavings to be specified, has been applied to the classic ‘dining philosophers’ problem, and has been found to evolve solutions that are as good as those created by human programmers.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Koza, J.R.: Genetic Programming: On the Programming of Computers by Means of Natural Selection. MIT Press, Cambridge (1992)
Andre, D., Koza, J.R.: Exploiting the Fruits of Parallelism: An Implementation of Parallel Genetic Programming that Achieves Super-Linear Performance. Inform. Sci. J. (1997)
Folino, G., Pizzuti, C., Spezzano, G.: CAGE: A Tool for Parallel Genetic Programming Applications. In: Miller, J., Tomassini, M., Lanzi, P.L., Ryan, C., Tetamanzi, A.G.B., Langdon, W.B. (eds.) EuroGP 2001. LNCS, vol. 2038, pp. 64–73. Springer, Heidelberg (2001)
Folino, G., Pizzuti, C., Spezzano, G.: A Scalable Cellular Implementation of Parallel Genetic Programming. IEEE Trans. Evolutionary Computation 7(1), 37–53 (2003)
Fernandez, F., Galeano, G., Gomez, J.A.: Comparing Synchronous and Asynchronous Parallel and Distributed Genetic Programming Models. In: Foster, J.A., Lutton, E., Miller, J., Ryan, C., Tettamanzi, A.G.B. (eds.) EuroGP 2002. LNCS, vol. 2278, pp. 326–335. Springer, Heidelberg (2002)
Tomassini, M., Vanneschi, L., Fernandez, F., Galeano, G.: Experimental Investigation of Three Distributed Genetic Programming Models. In: Guervós, J.J.M., Adamidis, P.A., Beyer, H.-G., Fernández-Villacañas, J.-L., Schwefel, H.-P. (eds.) PPSN 2002. LNCS, vol. 2439, pp. 641–650. Springer, Heidelberg (2002)
Leung, K.S., Lee, K.H., Cheang, S.M.: Evolving Parallel Machine Programs for a Multi-ALU Processor. In: Proc. IEEE Congress on Evolutionary Computation, pp. 1703–1708 (2002)
Leung, K.S., Lee, K.H., Cheang, S.M.: Parallel Programs are More Evolvable than Sequential Programs. In: Ryan, C., Soule, T., Keijzer, M., Tsang, E.P.K., Poli, R., Costa, E. (eds.) EuroGP 2003. LNCS, vol. 2610, pp. 107–118. Springer, Heidelberg (2003)
Ryan, C., Ivan, L.: Automatic Parallelization of Arbitrary Programs. In: Langdon, W.B., Fogarty, T.C., Nordin, P., Poli, R. (eds.) EuroGP 1999. LNCS, vol. 1598, pp. 244–254. Springer, Heidelberg (1999)
Ryan, C., Ivan, L.: An Automatic Software Re-Engineering Tool Based on Genetic Programming. In: Spector, L., et al. (eds.) Advances in Genetic Programming, vol. 3, pp. 15–39. MIT Press, Cambridge (1999)
Ross, B.J.: The Evolution of Concurrent Programs. In: Applied Intelligence, vol. 8, pp. 21–32. Kluwer Academic Publishers, Boston (1998)
Godefroid, P., Khurshid, S.: Exploring Very Large State Spaces Using Genetic Algorithms. In: Katoen, J.-P., Stevens, P. (eds.) TACAS 2002. LNCS, vol. 2280, pp. 266–280. Springer, Heidelberg (2002)
Ben-Ari, M.: Principles of Concurrent and Distributed Programming. Prentice-Hall, Englewood Cliffs (1990)
Kinnear Jr., K.E.: Generality and Difficulty in Genetic Programming: Evolving a Sort. In: Forrest, S. (ed.) Proc. Fifth International Conf. on Genetic Algorithms, University of Illinois, pp. 287–294. Morgan Kaufman, San Mateo (1993)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2004 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Jackson, D. (2004). A Practical Approach to Evolving Concurrent Programs. In: Keijzer, M., O’Reilly, UM., Lucas, S., Costa, E., Soule, T. (eds) Genetic Programming. EuroGP 2004. Lecture Notes in Computer Science, vol 3003. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-24650-3_9
Download citation
DOI: https://doi.org/10.1007/978-3-540-24650-3_9
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-21346-8
Online ISBN: 978-3-540-24650-3
eBook Packages: Springer Book Archive