Evolving Turing-Complete Programs for a Register Machine with Self-modifying Code

Created by W.Langdon from gp-bibliography.bib Revision:1.4524

  author =       "Peter Nordin and Wolfgang Banzhaf",
  title =        "Evolving {Turing}-Complete Programs for a Register
                 Machine with Self-modifying Code",
  booktitle =    "Genetic Algorithms: Proceedings of the Sixth
                 International Conference (ICGA95)",
  year =         "1995",
  editor =       "Larry J. Eshelman",
  pages =        "318--325",
  address =      "Pittsburgh, PA, USA",
  publisher_address = "San Francisco, CA, USA",
  month =        "15-19 " # jul,
  publisher =    "Morgan Kaufmann",
  keywords =     "genetic algorithms, genetic programming",
  ISBN =         "1-55860-370-0",
  URL =          "ftp://lumpi.informatik.uni-dortmund.de/pub/biocomp/papers/icga95-2.ps.gz",
  URL =          "http://citeseer.ist.psu.edu/viewdoc/summary?doi=",
  abstract =     "The majority of commercial computers today are
                 register machines of von Neumann type. We have
                 developed a method to evolve Turing-complete programs
                 for a register machine. The described implementation
                 enables the use of most program constructs, such as
                 arithmetic operators, large indexed memory, automatic
                 decomposition into subfunctions and subroutines (ADFs),
                 conditional constructs i.e. if-then-else, jumps, loop
                 structures, recursion, protected functions, string and
                 list functions. Any C-function can be compiled and
                 linked into the function set of the system. The use of
                 register machine language allows us to work at the
                 lowest level of binary machine code without any
                 interpreting steps. In a von Neumann machine, programs
                 and data reside in the same memory and the genetic
                 operators can thus directly manipulate the binary
                 machine code in memory. The genetic operators
                 themselves are written in C-language but they modify
                 individuals in binary representation. The result is an
                 execution speed enhancement of up to 100 times compared
                 to an interpreting C-language implementation, and up to
                 2000 times compared to a LISP implementation. The use
                 of binary machine code demands a very compact coding


Genetic Programming entries for Peter Nordin Wolfgang Banzhaf