Evolutionary meta programming

  • Authors:
  • Jamie S. Cullen

  • Affiliations:
  • UNSW, Sydney, Australia

  • Venue:
  • Proceedings of the first ACM/SIGEVO Summit on Genetic and Evolutionary Computation
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

The Evolutionary Meta Programming (EMP) approach towards the evolution of computer programs is presented. An EMP system is divided into two interacting parts: The Host Environment, and the Target Environment. Programs are evolved in an arbitrary target language by the Host Environment and are injected into the Target Environment, where they are evaluated for fitness in their `natural surroundings'. Early results from three significantly different domains are discussed: (1) Compiling C programs using a well-known compiler (GNU C compiler) (2) Circuit synthesis of digital hardware in an industry standard Hardware Description Language (Verilog), and (3) Functional Programming in an external Common LISP interpreter. The presented approach has now been used to evolve solutions to some well-known problems in the field of Evolutionary Computation, as well as enabling the initial examination of some novel problem domains that are typically not amenable to exploration by common techniques. Possible strengths of this approach, when compared to techniques such as Genetic Programming, include more rapid and natural problem specification and testbench development for some types of problems, reduced software development time, and the potential to more readily examine problems that require complex methods of fitness evaluation.