Currently I´m wirting my thesis on the topic of Evolutionary Algorithms (EA) within Simulation. The field of EAs consists of Genetic Algorithms (GA), Evolution Strategies (ES) and others.
Most literature states that GAs are generally binary coded (I know there are also real-valued GAs) and real values are rather solved with ES. The GAWizard (and GAAllocation etc.) indicates that a GA is used. Since you can use both binary and real-valued coding I was wondering if the concept of the GAWizard follows GAs or something else. Is it just called GA as a kind of working title rather than the scientific definition (from above)?
the GAWizard should follow the principles of a GAs. If you like you could also take a look at its description in the help and also into its implementation in Plant Simulation in Simtalk to further your research. Furthermore, there are also examples included in the example collection that demonstrate its working methods.
Thank you for the quick reply! Unfortunately the examples didn´t provide answers to my questions.
So if I have a real-valued problem, the Individuals will be encoded binary and the Crossover and Mutation (selected in GAAllocation) will be performed on these binary representations of the Individuals? Can you tell me the method in the GAWizard Network which executes the two operations?
the ideas of GA are described in the documentation.
You will understand the coding of a sequence as a permutation of numbers.
The attached model for Plant Simulation 13 shows how the genetic operator Mutation works.
Perform the method Start. After GAoptimization.evolve the method Evaluate is called.
You will see how the basic objects GAoptimization and GAsequence work together.
The genetic operator is a single mutation of 2 elements.
The termination control showFalimies fills the table Families.
The tablefile compareChromosom shows a parent and the corresponding child.
Please note that the GAWizard performs simulation runs for the evaluation of the individuals.
It uses the mentioned basic objects.
My model will help you to understand the basic objects of GAs.
Thank you for the explanation of the mutation operator and for the attached model!
I still have a question regarding the crossover. In permutational problems you may choose between Order Crossover (OX) and Partially Matched Crossover (PMX) and adjust the probability in the dialog. In combinatorial problems (GARangeAllocation, GASetAllocation) you can only adjust the crossover probability.
The question is: Which crossover is performed in GARangeAllocation and GASetAllocation?