shrinkage_fraction
Decrease the population size by a percentage
Specification
Alias: shrinkage_percentage
Arguments: REAL
Default: 0.9
Description
As of JEGA v2.0, all replacement types are common to both MOGA and
SOGA. They include the roulette_wheel
, unique_roulette_wheel
,
elitist
, and below_limit
selectors. In roulette_wheel
replacement, each design is conceptually allotted a portion of a wheel
proportional to its fitness relative to the fitnesses of the other
Designs. Then, portions of the wheel are chosen at random and the
design occupying those portions are duplicated into the next
population. Those Designs allotted larger portions of the wheel are
more likely to be selected (potentially many times).
unique_roulette_wheel
replacement is the same as roulette_wheel
replacement, with the exception that a design may only be selected
once. The below_limit
selector attempts to keep all designs for
which the negated fitness is below a certain limit. The values are
negated to keep with the convention that higher fitness is better.
The inputs to the below_limit
selector are the limit as a real
value, and a shrinkage_percentage
as a real value. The
shrinkage_percentage
defines the minimum amount of selections that
will take place if enough designs are available. It is interpreted as
a percentage of the population size that must go on to the subsequent
generation. To enforce this, below_limit
makes all the selections
it would make anyway and if that is not enough, it takes the remaining
that it needs from the best of what is left (effectively raising its
limit as far as it must to get the minimum number of selections). It
continues until it has made enough selections. The
shrinkage_percentage
is designed to prevent extreme decreases in the
population size at any given generation, and thus prevent a big loss
of genetic diversity in a very short time. Without a shrinkage limit,
a small group of “super” designs may appear and quickly cull the
population down to a size on the order of the limiting value. In this
case, all the diversity of the population is lost and it is expensive
to re-diversify and spread the population. The elitist
selector
simply chooses the required number of designs taking the most fit.
For example, if 100 selections are requested, then the top 100 designs
as ranked by fitness will be selected and the remaining will be
discarded.