• DocumentCode
    1423012
  • Title

    Flight of the FINCH Through the Java Wilderness

  • Author

    Orlov, Michael ; Sipper, Moshe

  • Author_Institution
    Dept. of Comput. Sci., Ben-Gurion Univ., Beer-Sheva, Israel
  • Volume
    15
  • Issue
    2
  • fYear
    2011
  • fDate
    4/1/2011 12:00:00 AM
  • Firstpage
    166
  • Lastpage
    182
  • Abstract
    We describe Fertile Darwinian Bytecode Harvester (FINCH), a methodology for evolving Java bytecode, enabling the evolution of extant, unrestricted Java programs, or programs in other languages that compile to Java bytecode. Our approach is based upon the notion of compatible crossover, which produces correct programs by performing operand stack-based, local variables-based, 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. We demonstrate FINCH´s unqualified success at solving a host of problems, including simple and complex regression, trail navigation, image classification, array sum, and tic-tac-toe. FINCH exploits the richness of the Java virtual machine architecture and type system, ultimately evolving human-readable solutions in the form of Java programs. The ability to evolve Java programs will hopefully lead to a valuable new tool in the software engineer´s toolkit.
  • Keywords
    Java; genetic algorithms; software tools; virtual machines; FINCH; Fertile Darwinian Bytecode Harvester; Java bytecode; Java programs; Java virtual machine architecture; array sum; compatibility checks; genetic programming; human-readable solutions; image classification; operand stack; representation language; software toolkit; tic-tac-toe; trail navigation; Automatic programming; Java bytecode; genetic programming (GP); software evolution;
  • fLanguage
    English
  • Journal_Title
    Evolutionary Computation, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    1089-778X
  • Type

    jour

  • DOI
    10.1109/TEVC.2010.2052622
  • Filename
    5685268