Abstract
We describe a Genetic Algorithm called Grammatical Evolution (GE) that can evolve complete programs in an arbitrary language using a variable length linear genome. The binary genome determines which production rules in a Backus Naur Form grammar definition are used in a genotype to phenotype mapping process to a program. Expressions and programs of arbitrary complexity may be evolved using this system.
Since first describing this system, GE has been applied to other problem domains, and during this time GE has undergone some evolution. This paper serves to report these changes, and also describes how we evolved multi-line C-code to solve a version of the Santa Fe Ant Trail. The results obtained are then compared to results produced by Genetic Programming, and it is found that GE outperforms GP on this problem.
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
Elseth Gerald D., Baumgardner Kandy D. Principles of Modern Genetics. West Publishing Company
Fraser Adam, Weinbrenner Thomas. 1997. The Genetic Programming Kernel Version 0.5.2.
Freeman, J. J. A Linear Representation for GP using Context Free Grammars. In Proceeding of Genetic Programming 1998, pages 72–77. MIT Press.
Horner, H A C++ class library for GP. Vienna University of Economics.
Keller, R. E. & Banzhaf, W. 1996. Genetic Programming using Genotype-Phenotype Mapping from Linear Genomes into Linear Phenotypes. In Genetic Programming 1996, pages 116–122. MIT Press.
Koza, J. 1992. Genetic Programming. MIT Press.
Langdon, W. & Poli, R. Why Ant’s Are Hard. In Proceedings of Genetic Programming 1998, pages 193–201.
Levenick, James. R. Inserting Introns Improves Genetic Algorithm Success Rate: Taking a Cue from Biology. In Proceedings of the Fourth International Conference on Genetic Algorithms 1991, pages 123–127.
Paterson, N & Livesey, M. 1997. Evolving caching algorithms in C by GP. In Genetic Programming 1997, pages 262–267. MIT Press.
Ryan C., Collins J.J., O’Neill M. 1998. Grammatical Evolution: Evolving Programs for an Arbitrary Language. Lecture Notes in Computer Science 1391, Proceedings of the First European Workshop on Genetic Programming, pages 83–95. Springer-Verlag.
Ryan C., O’Neill M., Collins J.J. 1998. Grammatical Evolution: Solving Trigonometric Identities. In Proceedings of Mendel ’98: 4th International Conference on Genetic Algorithms, Optimization Problems, Fuzzy Logic, Neural Networks and Rough Sets, pages 111–119.
Ryan C., O’Neill M. Grammatical Evolution: A Steady State Approach. In Late Breaking Papers, Genetic Programming 1998, pages 180–185.
Whigham, P. 1995. Grammatically-based Genetic Programming. In Proceedings of the Workshop on Genetic Programming: From Theory to Real-World Applications, pages 3–41. Morgan Kaufmann Pub.
Wong, M. and Leung, K. 1995. Applying logic grammars to induce subfunctions in genetic programming. In Proceedings of the 1995 IEEE conference on Evolutionary Computation, pages 737–740. USA: IEEE Press.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1999 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
O’Neill, M., Ryan, C. (1999). Evolving Multi-line Compilable C Programs. In: Poli, R., Nordin, P., Langdon, W.B., Fogarty, T.C. (eds) Genetic Programming. EuroGP 1999. Lecture Notes in Computer Science, vol 1598. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-48885-5_7
Download citation
DOI: https://doi.org/10.1007/3-540-48885-5_7
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-65899-3
Online ISBN: 978-3-540-48885-9
eBook Packages: Springer Book Archive