ACM Home Page
Please provide us with feedback. Feedback
Genetic programming in the wild: evolving unrestricted bytecode
Full text PdfPdf (590 KB)
Source
Genetic And Evolutionary Computation Conference archive
Proceedings of the 11th Annual conference on Genetic and evolutionary computation table of contents
Montreal, Québec, Canada
SESSION: Track 10: genetic programming table of contents
Pages 1043-1050  
Year of Publication: 2009
ISBN:978-1-60558-325-9
Authors
Michael Orlov  Ben-Gurion University, Beer-Sheva, Israel
Moshe Sipper  Ben-Gurion University, Beer-Sheva, Israel
Sponsors
SIGEVO: ACM Special Interest Group on Genetic and Evolutionary Computation
ACM: Association for Computing Machinery
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 7,   Downloads (12 Months): 44,   Citation Count: 0
Additional Information:

abstract   references   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1569901.1570042
What is a DOI?

ABSTRACT

We describe a methodology for evolving Java bytecode, enabling the evolution of extant, unrestricted Java programs, or programs in other languages that compile to Java bytecode. Bytecode is evolved directly, without any intermediate genomic representation. Our approach is based upon the notion of compatible crossover, which produces correct programs by performing operand stack-, local variables-, and control flow-based compatibility checks on source and destination bytecode sections. This is in contrast to existing work that uses restricted subsets of the Java bytecode instruction set as a representation language for individuals in genetic programming. Given the huge universe of unrestricted Java bytecode, as is programs, our work enables the applications of evolution within this realm. We experimentally validate our methodology by both extensively testing the correctness of compatible crossover on arbitrary bytecode, and by running evolution on a program that exploits the richness of the Java virtual machine architecture and type system.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
E. Bruneton, R. Lenglet, and T. Coupaye. ASM: A code manipulation tool to implement adaptable systems. In Adaptable and Extensible Component Systems, Oct. 17-18, Grenoble, France, pp. 184--195, 2002.
 
2
C. Darwin. On the Origin of Species by Means of Natural Selection, or the Preservation of Favoured Races in the Struggle for Life. John Murray, London, 1859.
 
3
J. Engel. Programming for the Java Virtual Machine. Addison-Wesley, Reading, MA, USA, July 1999.
 
4
B. Harvey, J. Foster, and D. Frincke. Towards byte code genetic programming. In W. Banzhaf, J. Daida, A. E. Eiben, M. H. Garzon, V. Honavar, M. Jakiela, and R. E. Smith, editors, Proceedings of the Genetic and Evolutionary Computation Conference, Orlando, Florida, USA, July 13-17, 1999, volume 2, page 1234, San Francisco, CA, USA, Oct. 1999. Morgan Kaufmann.
 
5
L. Huelsbergen. Fast evolution of custom machine representations. In D. Corne, Z. Michalewicz, and B. McKay, editors, The 2005 IEEE Congress on Evolutionary Computation, 2-5 September 2005, Edinburgh, Scotland, UK, volume 1, pages 97--104. IEEE Press, Sept. 2005.
 
6
S. Klahold, S. Frank, R. E. Keller, and W. Banzhaf. Exploring the possibilites and restrictions of genetic programming in Java bytecode. In J. R. Koza, editor, Late Breaking Papers at the Genetic Programming 1998 Conference, Madison, Wisconsin, USA, July 22-25, 1998, pages 120--124, Madison, WI, USA, July 1998. Omni Press.
 
7
 
8
 
9
 
10
S. Luke and L. Panait. A Java-based evolutionary computation research system. Online, Mar. 2004. http://cs.gmu.edu/ eclab/projects/ecj.
 
11
 
12
E. Lukschandl, M. Holmlund, E. Modén, M. Nordahl, and P. Nordin. Induction of Java bytecode with genetic programming. In J. R. Koza, editor, Late Breaking Papers at the Genetic Programming 1998 Conference, Madison, Wisconsin, USA, July 22-25, 1998, pages 135--142, Madison, WI, USA, July 1998. Omni Press.
 
13
 
14
 
15
P. Nordin. Evolutionary Program Induction of Binary Machine Code and its Applications. Krehl Verlag, Münster, Germany, 1997.
 
16
 
17
T. Perkis. Stack-based genetic programming. In Z. Michalewicz, J. D. Schaffer, H.-P. Schwefel, D. B. Fogel, and H. Kitano, editors, Proceedings of the First IEEE Conference on Evolutionary Computation, IEEE World Congress on Computational Intelligence, June 27-29, 1994, Orlando, Florida, USA, volume 1, pages 148--153. IEEE Neural Networks, June 1994.
 
18
R. Poli, W. B. Langdon, and N. F. McPhee. A Field Guide to Genetic Programming. Lulu Enterprises, UK, Mar. 2008.
 
19
F. Servant, D. Robilliard, and C. Fonlupt. JEB: Java evolutionary byte-code -- implementation and tests. In Artificial Evolution, 7th International Conference, Evolution Artificielle, EA 2005, Lille, France, October 26-28, 2005, Oct. 2005.
 
20
 
21
E. B. Tchernev. Forth crossover is not a macromutation? In J. R. Koza, W. Banzhaf, K. Chellapilla, K. Deb, M. Dorigo, D. B. Fogel, M. H. Garzon, D. E. Goldberg, H. Iba, and R. Riolo, editors, Genetic Programming 1998: Proceedings of the Third Annual Conference, July 22-25, 1998, Madison, Wisconsin, USA, pages 381--386, San Francisco, CA, USA, Aug. 1998. Morgan Kaufmann.
 
22
E. B. Tchernev and D. S. Phatak. Control structures in linear and stack-based genetic programming. In M. Keijzer, editor, Late Breaking Papers at the 2004 Genetic and Evolutionary Computation Conference, June 26-30, 2004, Seattle, Washington, USA. Distributed on CD-ROM at GECCO-2004, June 2004.
 
23
J. R. Woodward. Evolving turing complete representations. In R. Sarker, R. Reynolds, H. Abbass, K. C. Tan, B. McKay, D. Essam, and T. Gedeon, editors, The 2003 Congress on Evolutionary Computation, CEC 2003, Canberra, Australia, 8-12 December, 2003, volume 2, pages 830--837. IEEE Press, Dec. 2003.

Collaborative Colleagues:
Michael Orlov: colleagues
Moshe Sipper: colleagues