(Emergent Morphology)
6 Motor Control
McKenna (90) has developed a virtual roach which attains locomotion through
oscillators in each of the six legs. Coupling of the oscillators, which
operate at coordinated frequencies, generates different rhythms determining
a set of gaits. In a similar fashion (yet much simpler), this system utilizes a
rhythmic motor control program which consists of a combination of sinusoidal
angular motions in multiple limbs. The differences from one animat's motor
program to another can vary greatly according to genetic variation. An animat's
motor program is continually active at all times and cannot change during
its lifetime. Unlike the figures modeled by Ngo and Marks (93), and van de
Panne and Fiume (93), which incorporate a stimulus/response model for
controlling motion (physical-based motor control), these animats use a time-based
motor control system.
The genes which affect motion are expressed somewhat differently than in the case of
morphology. Attributes of motions within the whole collection of joints are created
by one number-series generating function, as a way to coordinate them. This function
takes five control parameters (determined by five genes) as input, plus the number of
joints, and it generates a periodic series as output. Each number of the series
corresponds to one joint angle in the animat. The following pseudo-code example
illustrates this function.
INPUT: size, start, step, low, high, number_of_joints;
_______________________________________________________
integers: size, start, step, number_of_joints;
real numbers: low, high;
BEGIN
number = start;
LOOP from (index=1) to (index=number_of_joints):
(
number = number + step;
output_parameter[index] = low + (number MOD size)/size * (high - low);
)
END;
_______________________________________________________
OUTPUT: a periodic series of real-number parameter values
The purpose of this scheme is to allow a small number of genes to determine an
indefinitely long series of values to control motions in multiple limbs,
where the number of limbs can vary. The series is periodic to encourage
regularity, yet with a large number of possible polyrhythms in the total
animat's motions. Thus, an animat can move all its limbs either in total
synchrony, with various wave motions, in alternating fashions, or irregularly.
In embryological expression from genotype to phenotype, the periodic series
generator is used to determine six motion attributes (with six associated
sets of five genes determining the inputs to the function). The six
motion attributes, for the whole series of joints, are:
amplitude of sine wave motion in the pitch angle of the joint
amplitude of sine wave motion in the yaw angle of the joint
phase offset of the pitch angle sine wave
phase offset of the yaw angle sine wave
on-off switch to enable or disable the joint's pitch angle motion
on-off switch to enable or disable the joint's yaw angle motion
In addition to the genes controlling these motions, there is one global rate
gene which controls the overall frequency of sine motions in all the joints.
(go to beginning of document)