sparse

Prev: Individual vs population-based diversity Next: Spatio-temporal pattern formation as prerequisite for evolving complex (regulatory) individuals

TODO List
 * REF Koza
 * REF bacteria several generations make flagellum
 * REF [|E. coli] spend many generations in the gut or external environment, but retain regulation to allow for that. (REF)
 * CLARIFY parallel search algorithms were also found to be more efficient than sequential ones: parallel integration in the whole population (NOT CLEAR)
 * CLARIFY as the population increases there is more redundancy which increases the number of bits analysed (NOT CLEAR)
 * CLARIFY The system then doesn't constraints, but included that in set of options as alternative solutions (NOT CLEAR).

=Sparse fitness evaluation=

History: local competition and co-evolution as optimization strategy
[| Danny Hillis] produced the first massive parrallel computer as a huge CA, so called [|connection machine]. The problem however was to find a way to figure out algorithms to calculate things on it! So how to do that?

One idea was to evolve list sorting algorithms which would swap items in a list and do so in a most efficient way. In order to achieve this however, Hillis (1992) did not take **fast** as a criterion, as one also needed to get //sorted// lists (discussed in Hogeweg 1992). The method chosen was therefore to search in sets of **shufflers** that may sort or not, and then select them according to the number of correctly sorted items and hoping to get **fast** as a side-effect. This also required a trick in the coding:
 * always swapping 2 positions
 * diploid genetic code
 * if two alleles different, then do both left and right
 * fastness of sorting therefore depends on number of alleles, i.e. double the number of steps than the homozygous option

Using this algorithm Hillis found a best sorter of 61 steps (Note that at a later stage the best ever sorter was found to be 60 steps (Green's sorter)). So how did the sorter evolve? At first Hillis attempted to evolve sorters as follows:
 * in a shuffler plane with random problems, but then evolution stagnated in local optima
 * in a "north-south" gradient on plane, but that did not help
 * in a **co-evolution** set-up:
 * each shuffler had a neighbourhood of 9 problems
 * predator-prey like system: shufflers want to sort, problems want to avoid being sorted
 * this step-up allowed for the evolution of efficient sorters!

More on fitness
The standard biological [|dogma] on fitness is **immediate benefits**. However we have seen that long term benefits can be very relevant in the host-parasite systems (eco-evo timescales). With respect to the above results we see that:
 * we get generalized sorters although they do not see all possible problems
 * a retention of what is seen before, i.e. non-immediate benefit and evolution of information integration
 * what evolves is something that can cope with all problems, even if they haven't seen those problems every generation

Especially with respect to the latter point it is interesting to note that:
 * Bacteria spend several generations to develop a [|flagellum]! (REF)
 * [|E. coli] spend many generations in the gut or external environment, but retain regulation to allow for that. (REF)

Such ability to cope with situations that one sees only once in a long time tends to negate the idea of immediate benefits.

It is also important to note that most multi-level selection literature predefines levels and selection pressures, i.e. assumptions are made about what is good. In contrast, for multi-level selection which is emergent it is very hard to predefine what is good! For instance, the individual-based versatility discussed previously, is only good for plasmids and viruses. On the other hand, population-based diversity appears good for the bacteria population as a whole and viruses die out!

Sparse fitness evaluation
Pagie and Hogeweg ([|1997]) studied optimization through co-evolution in more detail and approached it as follows:
 * some [|polynomial] function was chosen
 * parasites could vary in a plane of the polynimial and have x, y, values for which the polynimial has a unique solution
 * hosts then need to solve the polynomial for x and y

This issue was approached using genetic programming (Koza REF) using LISP to evolve polynomial functions in hosts and addressed the following questions:
 * do we always get horrendous solutions for polynomials?
 * is there information integration, i.e. does long term fintess count?
 * does mutational robustness and generalizability evolve?

To address these question **complete** and **sparse fitness evaluations** were compared: This was done in **space** where solvers and problems were each in a CA layer.
 * **sparse:** each host sees only few parasite cases
 * **complete**: each host sees a predefined set of cases (not exhaustive, but fixed)

Bitstrings
This was first done with [|bitstring] matching instead of using a polynomial, and using varying population sizes. Results showed that:
 * for an easy problem of 256 bits, sparse evaluation does better
 * for harder problems (longer) sparse evaluation only does better when the population size is large enough
 * parallel search algorithms were also found to be more efficient than sequential ones: parallel integration in the whole population (NOT CLEAR)
 * as the population increases there is more redundancy which increases the number of bits analysed (NOT CLEAR)

Polynomials
For the polynomial matching (Pagie and Hogeweg [|1997]) an arbitrary function was chosen. The system then doesn't constraints, but included that in set of options as alternative solutions (NOT CLEAR). Method:
 * **sparse:** 8 problems per life time and coevolution
 * **complete:** 26^2 values seen in life time
 * **fitness:** distance to target, i.e. value of polynomial given the values of x and y

Results show that:


 * sparse evaluation does better, where complete only reaches some lower value (local optima)
 * sparse in some case really perfect, but otherwise quite perfect
 * when tested on novel situations sparse does very well, i.e. it has integrated information which allows it to generalize
 * complete evaluation cannot generalize (cf Koza's spiral classification where over-fitting evolved to fixed target)
 * sparse appear to get the idea!
 * However the polynomial is just in **our** heads: why not errors? Well there are a restricted number of ways that the polynomial can be right, but an unrestricted number of ways it can be wrong!
 * complete has greater mutational robustness as in RNA evolution to fixed target, i.e. evolution becomes very specific for every positiion and therefore more sensitive to mutation
 * sparse is less mutationally robust, as in co-evolving RNA where general mutations have a greater effect on the whole
 * Here we see that physiological robustness and mutational robustness are opposite! In sparse it is physiologically generalizable but mutationally unrobust.

So how does evolution proceed in the sparse fitness evaluation? And complete evaluation?
 * first, when the phenotype is not generalizable, mutational unrobustness is selected for greater mutational effects
 * (but what to generalize?)
 * once completely phenotypically generalizable mutational unrobustness is no longer necessary
 * many local optima or rugged landscape and evolution gets stuck on local optima
 * bits of function are added to try to fit to other local optima, i.e. can only extend to other local optima by adding to own function

These results therefore show that **sparse fitness evaluation** lead to:
 * better fit (distance)
 * better fit (simple function)
 * better fit (more generalizable)
 * but **lower** mutational robustness!

Moreover, in the sparse fitness evaluation the adaptive landscape is more of a **seascape** where local optima sink under your feet. This leads to much more effective evolution because one sees parts of what we need to evolve to. Probably the first organisms where short lived and therefore were subjected to sparse fitness evaluations. Later longer lived organisms saw more things within their lifetime. However there is always a longer time scale environmental variation! Interestingly therefore, while geologists describe harsh climate changes, ecosystems appear fairly robust to change. However the fossil record does not see the eco-evolutionary wiggle, i.e. evolution allows ecosystems to handle climate variation. Moreover, climate changes are less profound than seasonal changes, so some robustness is already there due to shorter time scales.

Next: Spatio-temporal pattern formation as prerequisite for evolving complex (regulatory) individuals