Cyclic genetic algorithms were developed to allow for the
representation of a cycle of actions in the chromosome. They differ
from the standard GA in that the chromosome can be thought of as a circle with two tails and the genes can represent
subtasks that are to be completed in a
predetermined segment of time. The tails of the CGA chromosome allow
for transitional procedures, if any. In our experiments for gait
production, we use only the pre-cycle tail, which positioned the legs
in a ready-to-walk posture. The CGA genes can be one of several
possibilities. They can be as simple as primitive subtasks
(activations) or they can be as complicated as cyclic sub-chromosomes
that can be trained separately by a CGA. For gait generation the genes
represent a set of servo activations that are to be sustained for 100
msec each. The trained chromosome contains the cycle of these
primitive instructions that will be continually repeated by our
robot's simple controller to produce a gait. A number of variations
are possible in the character of CGA chromosomes, including fixed and
variable lengths, constraint enforcement subsegments, and so forth.