It is assumed that the creation of floating-point constants is necessary to do symbolic regression
using evolutionary computing methods, perhaps because they seem to be essential for conventional mathematical modeling. For instance,
the genetic programming technique solves the problem of constant creation by using a special terminal named
ephemeral random constant. For each ephemeral random constant used in the trees of the initial population, a random number of a special data type in a specified range is generated. Then these random constants are moved around from tree to tree by the crossover operator.
Gene Expression Programming (GEP) solves the problem of constants’ creation
more efficiently as it uses an extra
terminal “?” and an extra domain Dc composed of the symbols chosen to represent the random
numerical constants (RNCs). For each gene, the random constants are generated during the inception of the initial population and kept in an array. The values of each random constant are only assigned during
gene expression. Furthermore, a special mutation operator
(RNC mutation) is used to introduce genetic variation in the available pool of random constants by mutating the random constants directly. In addition, the usual
genetic operators of GEP plus a
Dc specific mutation,
a Dc specific inversion and a
Dc specific transposition, guarantee the effective circulation of the random constants in the population. Consequently, with this scheme of constants’ manipulation, the appropriate diversity of random constants can be generated in the beginning of a run and maintained easily afterwards by the genetic operators.
These two algorithms search the solution landscape differently and therefore you might wish to try them both on
your problems. Not surprisingly, the kinds of models these algorithms produce are quite different and, when both of them perform equally well on the problem
at hand, you still might prefer one to the other. But there are cases, however, where numerical constants are crucial for an
efficient modeling and, therefore, the
GEP-RNC algorithm is the default in GeneXproTools
4.0 for all kinds of mathematical modeling (Function Finding,
Classification, and Time Series Prediction). For Logic Synthesis
problems, though, the simpler GEP
is used as default as numerical constants here are limited to zero
and one and can be easily accessed through other means.
|
|