Agent |
|
An autonomous evaluative entity. It is deployed into a design and
its evaluation of the design based on its editable criteria are
accumulated with the opinions of other agents into the fitness measure
of the design.
|
Bounding Box |
|
A three-dimensional region outside of which a design is penalized
for extending.
|
Command/Operation |
|
A unit of our language. The commands are Opening, Translation,
Scale, and Rotation.
|
Command List |
|
Every shape in every design maintains an evolvable list of commands
in our language which constitute part of its genotype. When the
genotype is translated into the phenotype for evaluation by agents,
the command list is run on the starting Maya curve, and the result
is extruded into space.
|
Crossover |
|
Analogous to biological genetic crossover: the replacement of a
randomly selected segement of a shape's command list with a randomly
selected segment of a command list from another shape.
|
Design |
|
A design is the same as an individual. It is a member of a population,
and consists of a genotype, a set of starting Maya curves, and a
phenotype of shapes interpreted from the two.
|
Elite |
|
Elites are individuals of the highest fitness that are transported
directly into the new population without mutation.
|
Fitness |
|
Fitness is the measure of quality that agents collectively give
a design. Higher fitness means greater liklihood of having more
offspring. So traits that the agents favor are selected for.
|
Generation |
|
A generation is a name for a specific population of individuals.
Generations are numbered sequentially.
|
Genetic Algorithms
[GA] |
|
The precursor to genetic programming, Genetic Algorithms use fixed-length,
encoded genotypes, where Genetic Programming uses variable-size
genotypes representing operations in an interpreted language.
|
Genetic Programming
[GP] |
|
A software methodology that seeks to evolve solutions to problems
by generating populations of programs and then selectively breeding
them.
|
Genotype |
|
In the case of AgencyGP, a genotype consists of a set of Maya curves,
a fixed-length list of parameters, and a variable-length list of
commands.
|
Individual |
|
See design.
|
Interruption, Intervention, and Resumption |
|
The ability to stop and manually redirect the evolutionary process
by manipulating the genotypes of individuals. AgencyGP allows this
through the Modify Individual dialog.
|
Layer |
|
A layer in a Maya scene is a method of grouping and showing or
hiding objects. AgencyGP creates new layers to save intermediate
results when requested.
|
Mutation |
|
The random changing of a genotype in moving from one generation
to the next. Mutation takes many forms in AgencyGP. They are all
examined in the Genetic Engine dialog documentation.
|
NURBS curve |
|
Non-uniform ration b-spline curve. This is the kind of geometry
Maya creates that AgencyGP is capable of working with.
|
Phenotype |
|
The physical expression of an individual's genotype. In the case
of AgencyGP, the phenotype consists of one or many extruded shapes
in a Maya scene.
|
Plug-in |
|
A piece of software written in C++ that makes use of Maya's programming
interface. It is a separate file that Maya loads and executes upon
command.
|
Population |
|
A population is a group of individuals ranked by fitness.
|
Pressure |
|
Pressure is what good agents apply to the evolutionary process.
Agent do not control what future generations will look like directly.
Rather through selective pressure, they choose their favorite designs
to reproduce. If a set of agents is too permissive, they will not
be applying sufficient pressure to the system.
|
Shader |
|
A shader is a Maya object that stores settings for rendering color,
texture, and opacity of a surface.
|
Shape |
|
A shape in an individual is one extruded element. Individuals may
consist of many shapes. There may be more or fewer shapes in an
interpreted phenotype than there were initial curves selected because
of the variable effects of intersecting shapes.
|
Shape Mode |
|
Shape mode determines how a shape behaves when it intersects with
others. It may carve out of the other shape; it may be carved into
itself; it may union with the other shape; they may intersect. There
are 45 options, really three consecutive groups of 15.
|
Tournament Selection |
|
Tournament size affects the way individuals
are selected for breeding the new population. When creating a new
population, the process is as follows: 1. Select [Tournament Size]
individuals from the old population. 2. Take the fittest of these
and make a copy of it. 3. Mutate the copy, cross its genes with another
individual's or leave it be. 4. Place this copy into the new population.
5. Repeat 1-4 until the new population is filled. |
Unfitness |
|
AgencyGP ranks designs by unfitness. Therefore a low unfitness
is better than a high one.
|
Variance |
|
A measure of the amount of variation there is in a population.
AgencyGP uses variance in fitness to estimate the genetic variance
in a population, but that is a rather crude estimate. If agents
are overly permissive, radically different individuals may be given
the same low unfitness. It is, however, a convenient measure, and
we use it.
|
Weight |
|
The weight of a value is the emphasis a value is given when combining
it with others. It only has meaning relative to the weights of the
other values. 100 is neither a high nor a low weight. In the list
1, 1, 100 it is high. In the list 1000, 1000, 100, it is low.
|
Z-Height |
|
This is a parameter of a shape which determines how tall its extrusion
is. Remember that this may not represent the final height of the
shape because all of the commands in the command list are executed
on each shape before it is extruded. It may therefore be scaled
up or down multiple times.
|
ZoneType |
|
Before you use AgencyGP fully you must determine the parameters
of your investigation. AgencyGP is best at dealing with problems
in which desires of different types of spatial regions can be brought
to apply pressure to one another.
|
Z-Widening |
|
This is a parameter of a shape which
determines the amount that a shape flares outward when extruded. A
value higher than 1 flares outward, a value less than 1 contracts
inward, and a value of 1 extrudes straight up. |