Generation Process: Selection and Breeding
"Parent" shaders are selected from the multiple-generation population
(MGP) or the breeding pool (1) in pairs and bred to create new children
for the ongoing population where two parents generates two children.
To follow the examples in this page:
Create a working directory:
% mkdir myproject
% cd myproject
Enter the software, hit File->Load Project ..., and bring
up (2):
/usr/local/genshade/prman/examples/gs_01012000_01_sur_top_01.prj
The GUI looks like:

Choose MPG Main Pool from the Pool Option at the Tool Bar
Modify LSD slider at the Frequently Used Generation
Parameters Sliders to 20
For every selection option:
1. Choose desired option (e.g. pool) from the
Selection Option at the Tool Bar,
2. Hit Generation->Select Parents ... (3)
3. Choose Parents from the Image Selection Source at the
Image Display Control Panel
you will see a display of parents of shaders. Please note that the
first cell C0 is not used (4).
Selection Method Options:
Usually you choose the desired pool to select shaders from, for example
the MGP main pool,
and then you choose the selection method. If a MPG pool is selected,
then shaders would be selected based on their rank in the pool.
Pool
Each parent will be selected from the chosen pool.

Two Parents
The first parent will always be parent 1 at the Parent
Images Area, while the second parent will always be parent
2. This tool is used if you want to create children shaders from
only these two parents.

One Parent
The first parent will always be parent 1 at the Parent
Images Area, while the second parent will always be parent
1 as well. This tool is used if you want to fine
tune a final shader or to create children shaders from a parent shader
bred with itself.

Two Parents with Multiple
This tool select parents using this guide:
1. parent1 and parent2 create child 1, and child 2.
2. parent1 and a selected parent from the pool create child
3 and child 4.
3. parent2 and a selected parent from the pool create child
5 and child 6.
These three steps are repeated three times followed by step # 1.

One Parent with Multiple
The first parent will always be parent 1 at the Parent
Images Area, while the second parent will always be a selected
parent from the pool

Multiple Two-Parent
In every generation, only two parents will be selected from the pool for
breeding. This tool is similar to choosing Two Parents tool above,
changing the two parents in every generation.

repeat the three steps described above:

Multiple One-Parent
In every generation, only one parent will be selected from the pool for
breeding. This tool is similar to choosing One Parent tool above,
changing that single parent in every generation.

repeat the three steps described above:

Selection Control
GenShade uses the Low Standard of Deviation (LSD) in
odd generations (e.g. generation # 1) and a High Standard of Deviation
(HSD) in even ones (e.g. generation # 2) . The values of the
LSD and HSD controls the ranking selection process. In a conservative strategy,
where the goal is to focus on high ranked shaders, these values may be
set to MGP size divided by twenty and MGP size divided by four. In a risky
strategy, where the goal is to introduce diversity by selecting low ranked
shaders, these values may be set to MGP divided by eight and MGP size divided
by three.
MGP Gender Pool
Previous experience working interactively with the system showed that breeding
shaders whose images have chromatic content close to that of the target,
with shaders whose images have illumination content close to that of the
target is very useful in creating shaders that resemble the target. This
notion has the appeal of being similar to the notions of "male" and "female"
in real populations, where some of the standards of suitability for mating
are highly gender determined. The selection procedure, If MGP Gender Pool
is chosen, selects pairs of shaders from the male or illumination
population for breeding with shaders in the female or chromatic population
based on their rank.
Notes:
(1) Selection from the MGP pools has shown much
strong results than selection from the breeding pool as it has its limitations.
Although you can type a score for each cell of the breeding pool, it may
be easier to arrange your shader in a certain order where your most favorite
one is ranked # 1 and your least favorite one is the last one in the database.
(2) Your sysadmin may have installed the software somewhere other than
/usr/local. If so, look at your $GENSHADE_DIR variable, and use that instead
of /usr/local/genshade in the above example.
(3) Hitting Generation->Select Parents is a useful tool because
it helps clarify what each tool does without making a generation and having
to wait few minutes to view the resulting shaders and their parents.
(4) Since the size of the breeding pool is always 27, and we always
select pairs of parents, the first cell labeled, C0 is not used in the
MGP selection process. It is used in the breeding pool selection only to
preserve the best shader from previous generation.
If you encounter errors in this document, please email [email protected]
with the URL, and enclose an example of the erroneous text, and what you
feel to be the corrections, if possible.
Copyright (c) 1999-2000 Genetic Graphics Inc. All Rights reserved.