9.5 GA Tools Classes
The operators (GATools) represent ways to evolute a population. They change
the gene sets (equals population), or the genes themselves. Every GATool is a
descendant of the class TGATool. Basically three kinds of operators exist.
They differ mostly in the number of parameters they need for their execution (in brackets
is the base class for this group of operators - a direct descendant of TGATool):
- GA unoms (TGAUnom)
Requires unly one parameter - a population. The changes are made inside this one population.
- GA functions (TGAFunc)
Requires two parameters - two populations. The result is always placed
in the second population. It depends on the specific GA function whether
only the first population or both of them are used for the execution.
- GA selectors (TGASelector)
These operators select the specified number of genes. The parameters
are four: the source population, the destination population, the number
of genes to be selected and the flag specifying whether the genes should be copied or
- ...GA tables
This is specific part of the GA functions group. These specific GA functions
do not make any changes directly.
Instead they consist of one or two (GA dual tables) sets of GA tools and a
set(s) of temporary populations. Than the execution of a GAtable consists
of the execution of every GA tool in the set one after other. Every table
has the ability to load the set specification from a
This and the fact that every genetic algorithm includes
one such table, enables a huge variability of the computation algorithm
without any programming. Note : of course, after each execution the temporary
populations are emptied.
It does not make any problems to use the same population as both the parameter
in GA functions and GA selectors if needed. The system also does not collapse if in the
GA selector more genes are to be selected then available actually in the incoming
population. In this case all genes are selected.
For more detailed specification of operator groups see chapter
GA Operators Specification .