Abstract
Recently, numerous automatic programming techniques have been developed and applied in various fields. A typical example is genetic programming (GP), and various extensions and representations of GP have been proposed thus far. Complex programs and hand-written programs, however, may contain several loops and handle multiple data types. In this chapter, we propose a new method called Graph Structured Program Evolution (GRAPE). The representation of GRAPE is a graph structure; therefore, it can represent branches and loops using this structure. Each programis constructed as an arbitrary directed graph of nodes and a data set. The GRAPE program handles multiple data types using the data set for each type, and the genotype of GRAPE takes the form of a linear string of integers. We apply GRAPE to three test problems, factorial, exponentiation, and list sorting, and demonstrate that the optimum solution in each problem is obtained by the GRAPE system.
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
Agapitos, Alexandros and Lucas, Simon M. (2006a). Evolving efficient recursive sorting algorithms. In Proceedings of the 2006 IEEE Congress on Evolutionary Computation, pages 9227-9234, Vancouver. IEEE Press.
Agapitos, Alexandros and Lucas, Simon M. (2006b). Learning recursive functions with object oriented genetic programming. In Collet, Pierre, Tomassini, Marco,Ebner, Marc, Gustafson, Steven, and Ekrt, Anikó, editors, Proceedings of the 9th European Conference on Genetic Programming, volume 3905 of Lecture Notes in Computer Science, pages 166-177, Budapest, Hungary. Springer.
Angeline, Peter J. and Pollack, Jordan (1993). Evolutionary module acquisition. In Fogel, D. and Atmar, W., editors, Proceedings of the Second Annual Conference on Evolutionary Programming, pages 154-163, La Jolla, CA, USA.
Brameier, Markus and Banzhaf, Wolfgang (2001). A comparison of linear genetic programming and neural networks in medical data mining. IEEE Transactions on Evolutionary Computation, 5(1):17-26.
Deb, Kalyanmoy, Anand, Ashish, and Joshi, Dhiraj (2002). A computationally efficient evolutionary algorithm for real-parameter optimization. Evolutionary Computation, 10(4):371-395.
Fogel, David B., Angeline, Peter J., and Fogel, David B. (1995). An evolutionary programming approach to self-adaptation on finite state machines. In Proceedings of the Fourth Annual Conference on Evolutionary Programming, pages 355-365. MIT Press.
Gruau, Frederic, Whitley, Darrell, and Pyeatt, Larry (1996). A comparison between cellular encoding and direct encoding for genetic neural networks. In Koza, John R., Goldberg, David E., Fogel, David B., and Riolo, Rick L., editors, Genetic Programming 1996: Proceedings of the First Annual Conference, pages 81-89, Stanford University, CA, USA. MIT Press.
Harvey, Inman and Thompson, Adrian (1996). Through the labyrinth evolution finds a way: A silicon ridge. In Proceedings of the First International Conference on Evolvable Systems: From Biology to Hardware (ICES 96), volume 1259 of LNCS, pages 406-422. Springer-Verlag.
Huelsbergen, Lorenz (1997). Learning recursive sequences via evolution of machine-language programs. In Koza, John R., Deb, Kalyanmoy, Dorigo, Marco, Fogel, David B., Garzon, Max, Iba, Hitoshi, and Riolo, Rick L., editors, Genetic Programming 1997: Proceedings of the Second Annual Conference, pages 186-194, Stanford University, CA, USA. Morgan Kaufmann.
Kantschik, Wolfgang and Banzhaf, Wolfgang (2002). Linear-graph GPA new GP structure. In Foster, James A., Lutton, Evelyne, Miller, Julian, Ryan, Conor, and Tettamanzi, Andrea G. B., editors, Genetic Programming, Proceedings of the 5th European Conference, EuroGP 2002, volume 2278 of LNCS, pages 83-92, Kinsale, Ireland. Springer-Verlag.
Katagiri, Hironobu, Hirasawa, Kotaro, Hu, Jinglu, and Murata, Junichi (2001). Network structure oriented evolutionary model - genetic network programming-and its comparison with. In Spector, Lee, Goodman, Erik D., Wu, Annie, Langdon, W. B., Voigt, Hans-Michael, Gen, Mitsuo, Sen, Sandip, Dorigo, Marco, Pezeshk, Shahram, Garzon, Max H., and Burke, Edmund, editors, Proceedings of the Genetic and Evolutionary Computation Conference (GECCO-2001), page 179, San Francisco, California, USA. Morgan Kaufmann.
Kinnear, Jr., Kenneth E. (1993a). Evolving a sort: Lessons in genetic programming. In Proceedings of the 1993 International Conference on Neural Networks, volume 2, pages 881-888, San Francisco, USA. IEEE Press.
Kinnear, Jr., Kenneth E. (1993b). Generality and difficulty in genetic programming: Evolving a sort. In Forrest, Stephanie, editor, Proceedings of the 5th International Conference on Genetic Algorithms, ICGA-93, pages 287-294, University of Illinois at Urbana-Champaign. Morgan Kaufmann.
Koza, John R. (1992). Genetic Programming: On the Programming of Computers by Means of Natural Selection. MIT Press, Cambridge, MA, USA.
Koza, John R. (1994). Genetic Programming II: Automatic Discovery of Reusable Programs. MIT Press, Cambridge Massachusetts.
Koza, John R., Andre, David, Bennett III, Forrest H, and Keane, Martin (1999). Genetic Programming 3: Darwinian Invention and Problem Solving. Morgan Kaufman.
Mattiussi, Claudio and Floreano, Dario (2007). Analog genetic encoding for the evolution of circuits and networks. IEEE Transactions on Evolutionary Computation, 11(5):596-607.
Miller, Julian F. and Smith, Stephen L. (2006). Redundancy and computational efficiency in cartesian genetic programming. IEEE Transactions on Evolutionary Computation, 10(2):167-174.
Miller, Julian F. and Thomson, Peter (2000). Cartesian genetic programming. In Poli, Riccardo, Banzhaf, Wolfgang, Langdon, William B., Miller, Julian F., Nordin, Peter, and Fogarty, Terence C., editors, Genetic Programming, Proceedings of EuroGP, volume 1802 of LNCS, pages 121-132, Edinburgh. Springer-Verlag.
Montana, David J. (1995). Strongly typed genetic programming. Evolutionary Computation, 3(2):199-230.
O Neill, Michael and Ryan, Conor (2003). Grammatical Evolution: Evolutionary Automatic Programming in a Arbitrary Language, volume 4 of Genetic programming. Kluwer Academic Publishers.
Poli, Riccardo (1997). Evolution of graph-like programs with parallel distributed genetic programming. In Back, Thomas, editor, Genetic Algorithms: Proceedings of the Seventh International Conference, pages 346-353, Michigan State University, East Lansing, MI, USA. Morgan Kaufmann.
Satoh, Hiroshi, Yamamura, Masayuki, and Kobayashi, Shigenobu (1996). Minimal generation gap model for considering both exploration and exploitations. In Proceedings of the IIZUKA 96, pages 494-497.
Shirakawa, Shinichi and Nagao, Tomoharu (2007). Evolution of sorting algorithm using graph structured program evolution. In Proceedings of the 2007 IEEE International Conference on Systems, Man and Cybernetics (SMC 2007), pages 1256-1261, Montreal, Canada. IEEE.
Shirakawa, Shinichi and Nagao, Tomoharu (2009). Evolution of search algorithms using graph structured program evolution. In Vanneschi, Leonardo, Gustafson, Steven, Moraglio, Alberto, De Falco, Ivanoe, and Ebner, Marc, editors, Proceedings of the 12th European Conference on Genetic Programming, EuroGP 2009, volume 5481 of LNCS, pages 109-120, Tuebingen. Springer.
Shirakawa, Shinichi, Ogino, Shintaro, and Nagao, Tomoharu (2007). Graph structured program evolution. In Thierens, Dirk, Beyer, Hans-Georg, Bongard, Josh, Branke, Jurgen, Clark, John Andrew, Cliff, Dave, Congdon, Clare Bates, Deb, Kalyanmoy, Doerr, Benjamin, Kovacs, Tim, Kumar, Sanjeev, Miller, Julian F., Moore, Jason, Neumann, Frank, Pelikan, Martin, Poli, Riccardo, Sastry, Kumara, Stanley, Kenneth Owen, Stutzle, Thomas, Watson, Richard A, and Wegener, Ingo, editors, GECCO 07: Proceedings of the 9th annual conference on Genetic and evolutionary computation, volume 2, pages 1686-1693, London. ACM Press.
Spector, Lee, Klein, Jon, and Keijzer, Maarten (2005). The push3 execution stack and the evolution of control. In Beyer, Hans-Georg, O Reilly, Una-May, Arnold, Dirk V., Banzhaf, Wolfgang, Blum, Christian, Bonabeau, Eric W., Cantu-Paz, Erick, Dasgupta, Dipankar, Deb, Kalyanmoy, Foster, James A., de Jong, Edwin D., Lipson, Hod, Llora, Xavier, Mancoridis, Spiros, Pelikan, Martin, Raidl, Guenther R., Soule, Terence, Tyrrell, Andy M., Watson, Jean-Paul, and Zitzler, Eckart, editors, GECCO 2005: Proceedings of the 2005 conference on Genetic and evolutionary computation, volume 2, pages 1689-1696, Washington DC, USA. ACM Press.
Spector, Lee and Robinson, Alan (2002). Genetic programming and autoconstructive evolution with the push programming language. Genetic Programming and Evolvable Machines, 3(1):7-40.
Teller, Astro (1994). Turing completeness in the language of genetic programming with indexed memory. In Proceedings of the 1994 IEEE World Congress on Computational Intelligence, volume 1, pages 136-141, Orlando, Florida, USA. IEEE Press.
Teller, Astro and Veloso, Manuela (1996). PADO: A new learning architecture for object recognition. In Ikeuchi, Katsushi and Veloso, Manuela, editors, Symbolic Visual Learning, pages 81-116. Oxford University Press.
Tsutsui, Shigeyoshi, Yamamura, Masayuki, and Higuchi, Takahide (1999). Multi-parent re-combination with simplex crossover in real coded genetic algorithms. In Proceedings of the Genetic and Evolutionary Computation Conference 1999 (GECCO 99), pages 657-664.
Yu, Tina and Clack, Chris (1998). Recursion, lambda-abstractions and genetic programming. In Poli, Riccardo, Langdon, W.B., Schoenauer, Marc, Fogarty, Terry, and Banzhaf, Wolfgang, editors, Late Breaking Papers at EuroGP'98: the First European Workshop on Genetic Programming, pages 26-30, Paris, France. CSRP-98-10, The University of Birmingham, UK.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer Science+Business Media, LLC
About this chapter
Cite this chapter
Shirakawa, S., Nagao, T. (2010). Graph Structured Program Evolution: Evolution of Loop Structures. In: Riolo, R., O'Reilly, UM., McConaghy, T. (eds) Genetic Programming Theory and Practice VII. Genetic and Evolutionary Computation. Springer, Boston, MA. https://doi.org/10.1007/978-1-4419-1626-6_11
Download citation
DOI: https://doi.org/10.1007/978-1-4419-1626-6_11
Published:
Publisher Name: Springer, Boston, MA
Print ISBN: 978-1-4419-1653-2
Online ISBN: 978-1-4419-1626-6
eBook Packages: Computer ScienceComputer Science (R0)