We have described a system, Grammatical Evolution (GE) that can map a
binary genotype onto a phenotype which is a high level program. GE has proved successful for three different types of problems, namely, Symbolic Regression [Ryan 98a], finding Trigonometric Identities [Ryan 98b], and a Symbolic Integration problem reported here.
We have demonstrated that by using a Steady State selection mechanism the performance of GE can be improved significantly for the problems addressed here, thus bringing GE on a par with Genetic Programming in terms of the number of generations it takes to reach a correct solution. A more detailed comparison between the two systems will be carried out at a later date. Other problem domains are being tackled with GE and it is hoped to show that it can perform at least as well if not better than GP across a broad spectrum of problems.
In particular, it is intended to apply GE to a problem that requires multi line functions. Because our mapping technique employs a BNF definition, the system is language independent, and, can easily generate functions which use several lines of code, specifically, if the rule for <code>
in the earlier definition was modified to read:
<code> ::= <line>; | <line>; <code> <line> ::= <var> = <expr>
then the system could generate functions of arbitrary
length.