Page 165 - 49A Field Guide to Genetic Programming
P. 165
Appendix B
TinyGP
1
TinyGP i s a highly optimised GP system that was originally developed to
meet the specifications set out in the TinyGP competition of the Genetic and
Evolutionary Computation Conference (GECCO) 2004. We include it as a
working example of a real GP system, to show that GP software tools are
not necessarily big, complex and difficult to understand. The system can be
used as is or can be modified or extended for a user’s specific applications.
Furthermore, TinyGP may serve as a guide to other implementations of
genetic programming.
The following section provides a description of the main characteristics
of TinyGP. Section B.2 describes the format for the input files for TinyGP.
Section B.3 provides further details on the implementation and the source
code for a Java version of TinyGP. Finally, Section B.4 describes a sample
run of the system.
There are numerous other GP systems available on-line. See Section A.4
for a discussion of some of the options.
B.1 Overview of TinyGP
TinyGP is a symbolic regression system with the following characteristics:
1. The terminal set includes a user-definable number of floating point
variables (named X1 to XN).
2. The function set includes multiplication, protected division, subtrac-
tion and addition.
3. The fitness cases are read from a file (the format is given below).
1
http://cswww.essex.ac.uk/staff/rpoli/TinyGP/
151