Genetic Programming is extended so that the solutions being evolved do so in the context of local domains within the total problem domain. This produces a situation where different "species" of solution develop to exploit different "niches" of the problem - indicating exploitable solutions. It...