I understand (some) of the workings behind schema theory in genetic algorithms, for example:
*****0
would match the genome 010100
But could anyone explain what schema theory (in Genetic Algorithms) is used for, and how it's used?
I understand (some) of the workings behind schema theory in genetic algorithms, for example:
*****0
would match the genome 010100
But could anyone explain what schema theory (in Genetic Algorithms) is used for, and how it's used?
If I remember correctly (it's years since I last studied this), schema theory isn't really used for anything. Rather, it's an attempt to explain why genetic algorithms seem to work well. As I'm not an expert, I can only point you to a book that I remember reading about schemata, Melanie Mitchell's book
When designing a genetic algorithm, you have to choose how to represent the problem in terms of schema, and the representation is vitally important to the performance of the algorithm. I think this is what schema theory is about.
Specifically, the common operations a GA will use to perturb or evolve are mutation and one- or two-point crossover. This means that the proximity of certain traits to other traits in the "chromosome" is significant, since crossover operations slice the chromosome, essentially keeping groups of contiguous traits together. If you've designed a schema in which key related traits are distant in the chromosome, optimal (or even good) solutions may not be found quickly (or at all), because those traits are unlikely to be retained as a collection.
It also means that even optimal groups that are quite large will tend not to be favored, because they will be frequently broken apart by mutation and crossover operations. This, again, relates to the schema.
My best understanding of this is that schema theory deals with these issues (and more). It is designed to address the design of a chromosome in which good and/or optimal solutions are likely to be found given the functions used to evolve the population.