Automatic Evolution of Java-Written Game Heuristics

Michael Orlov, Carmel Bregman, Moshe Sipper

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review


FINCH is a methodology for evolving Java bytecode, enabling the evolution of extant, unrestricted Java programs, or programs in other languages that compile to Java bytecode. The established approach in genetic programming (GP) involves the definition of functions and terminals appropriate to the problem at hand, after which evolution of expressions using these definitions takes place. FINCH evolutionarily improves actual, extant software, which was not intentionally written for the purpose of serving as a GP representation in particular, nor for evolution in general. In this work we show how several game heuristics that are taken as real-world Java programs are effortlessly and automatically improved by FINCH.
We have developed a powerful tool [1,2,3] by which extant software, written in the Java programming language, or in a language that compiles to Java bytecode, can be evolved directly, without an intermediate genomic representation, and with no restrictions on the constructs used. We provide an overview of this system, some previous results, its usability, and the application of FINCH to evolving Java-written game heuristics.
Original languageEnglish
Title of host publication SSBSE: International Symposium on Search Based Software Engineering
EditorsMyra B. Cohen, Mel Ó Cinnéide
ISBN (Electronic)978-3-642-23716-4
ISBN (Print)978-3-642-23715-7
StatePublished - 2011

Publication series

NameLecture Notes in Computer Science


Dive into the research topics of 'Automatic Evolution of Java-Written Game Heuristics'. Together they form a unique fingerprint.

Cite this