A first attempt to evolve a table failed to satisfy objective 2 (covering the
entire surface). One problem with our representation is that the distance between
genotype and phenotype is big: mutations are likely to produce large changes
on the structure, so detailed optimization is hard to obtain. Also, not having
bricks complicates matters (our set of Lego did not include
those at the time). Finally, there was little selective pressure as fitness
values between 1.9 and 2.0 where nearly identically selected. In the final run
we expanded the raw fitness exponentially in order to add pressure (so for example
the fitness value of 123.74 in fig. 2.4 corresponds to
a raw fitness of
), but this did not solve the problem
of full coverage. For the successful run pictured above, objective 2 was redefined
as ``covering at least 96% of the target area''.
The use of stepped fitness functions is not ideal; Pareto front techniques [55, ch. 5] should improve performance in multiobjective problems such as this one.