GeneXproTools 4.0 implements the Mean Squared Error
(MSE) fitness function both with and without parsimony pressure. The
version with parsimony
pressure puts a little pressure on the size of the evolving
solutions, allowing the discovery of more compact models.
The MSE fitness function of
GeneXproTools is, as expected, based on the standard
mean squared error, which, on its turn, is based on the
absolute error.
The mean squared error E_{i} of an individual program
i is evaluated by the equation:
where P_{(ij)} is the value predicted by the individual program
i for fitness case j (out of n fitness cases
or sample cases); and
T_{j} is the target value for fitness case j.
For a perfect fit, P_{(ij)} = T_{j}
and E_{i} = 0. So, the MSE index ranges from 0 to infinity, with 0 corresponding to the ideal.
As it stands, E_{i} can not be used directly as fitness since, for fitness proportionate selection, the value of fitness must increase with efficiency.
Thus, for evaluating the fitness f_{i} of an individual program
i, the following equation is used:
which obviously ranges from 0 to 1000, with 1000 corresponding to the ideal.
Its counterpart with parsimony pressure, uses this fitness
measure f_{i}
as raw fitness rf_{i} and complements
it with a parsimony term.
Thus, in this case, raw maximum fitness rf_{max} =
1000.
And the overall fitness fpp_{i} (that is, fitness with parsimony pressure) is evaluated by the formula:
where S_{i} is the size of the program, S_{max} and
S_{min} represent, respectively, maximum and minimum program sizes and are evaluated by the formulas:
S_{max} = G (h + t)
S_{min} = G
where G is the number of genes, and h and t are the head and tail sizes (note that, for simplicity, the linking function was not taken into account). Thus, when
rf_{i} = rf_{max} and S_{i} =
S_{min} (highly improbable, though, as this can only happen for very simple functions as this means that all the subETs are composed of just one node),
fpp_{i} = fpp_{max}, with fpp_{max} evaluated by the formula:
