As mentioned before, all resulting
implementations for the meta-blocks containing flexible blocks are stored.
Storing all alternatives is useful because one could not decide
in the lower levels of the tree, which implementation of a meta-block would be the best
to minimize the overall area of the layout.
Due to the simple adding of shape-functions and the binarity of the tree,
the optimal sizing of the flexible modules to reach an optimal layout
(optimal for the special placement) can directly be determined by a top-down
traversal of the tree after fixing the best implementation for the
root node [7].
This technique can be characterized as storing multiple genes in some locations of the genotype. It is a very good example for an opportunity the designer of a gentic algorithm has to increase its performance without directly guiding the search: when two blocks are combined, good combinations can be determined and bad combinations can be eliminated. But which of these good combinations are the best to be composed to a global optimal solution? Just let the genetic algorithm decide by making available a pool of good building-blocks!