Another approach to this problem is evolution
of Central Pattern Generators (CPG) (Crespi and
Ijspeert, 2008). Those are type of neural network with
the ability to generate rhythmic patterns. CPGs are
nature inspired mechanisms used to generate rhyth-
mic signals useful for periodical motions. This con-
cept comes from neurology. Small clusters of neu-
rons were isolated from brains of many different an-
imals which were able to generate rhythmic signals
hours after any sensory input. Simple CPG can be
sine wave generator or multiple sine wave generators
with different frequency amplitude and phase, more
complex ones are usually constructed from artificial
neural network. CPGs in robotics are used the same
way as in living organism for periodical motions like
walking or swimming.
In (Parker, 2001) Parker used the idea of two stage
evolution. He used an evolution algorithm to evolve
the motion of single limb of hexapod robot and then
combined those moves into gait in another stage of
evolution. This approach simplifies the task by evolv-
ing part of the problem in advance, but it also has
some limitations. Because the movement of entire
robot cannot be observed during the first stage of the
evolution it is not part of fitness function. The motion
pattern which has a good fitness when used for a sim-
plified problem of the first stage might behave poorly
when used for final robot.
Neuroevolutionary approach to generate con-
trollers for entire robot has been described in (Yosin-
ski, 2011). Yosinski et al. used HyperNEAT gen-
erative encoding to evolve controller for a physical
quadruped robot. The gaits produced by HyperNEAT
performed significantly better than locally optimized
parameterized motion models. This has been at-
tributed to an ability of HyperNEAT to discover a va-
riety of gait regularities. However, the gaits evolved
by HyperNEAT directly on a physical robot were not
impressive. Evolution on real hardware proved to be
impractical. Since the robot would constantly over-
heat or break, number of evaluations in evolution has
to be greatly reduced and this led to inferior results.
Thus, further improvement of the gaits was achieved
only after it has been moved to the simulated environ-
ment (Lee et al., 2013).
In (Cerny, 2012; Cerny, 2013) a new co-
evolutionary approach for automatic generation of
robotic gait was presented. The method was designed
for modular robotic creatures that are composed of a
number of simple cubic-shaped robotic blocks
1
. The
robotic blocks are endowed with a movable arm and
1
Multi-legged robots that exhibit features of symme-
try and module repetition were considered (particularly a
quadruped robot).
several slots that they use to connect to each other (re-
alizing joint-like connections) to form complex struc-
tures. Joint angles are controlled by functions of a
single input, time, that return desired joint positions
at discrete time steps. Thus, the generation of the gait
consists in finding a set of functions (a single func-
tion for each joint) that make the whole robotic crea-
ture to move in a desired way. The gaits were gen-
erated through a simultaneous evolution of (1) opti-
mal single-leg motion and (2) its coordinated deploy-
ment to all legs of the robot. The results presented in
(Cerny, 2013) show that such a decomposition of the
whole problem can lead to better motion patterns than
simple GP approach that evolves individual control
function to all legs. However, there are still a number
of open issues that has to be investigated in order to
conclude about the relevance of the co-evolutionary
approach.
The primary goal of this work is to investigate
the impact of key features of the co-evolutionary ap-
proach on its performance. Particularly, we focus on
the following two design choices:
• Co-evolution vs. Single-population Evolution.
The robotic gait is sought through the co-
evolution of the single-leg motion pattern and the
coordination strategy. Another way to approach
the gait generation problem using decomposition
is to evolve a single population of individuals,
where each one encodes both the single-leg mo-
tion and the coordination strategy. Thus, the ques-
tion is whether the co-evolution of the two aspects
of the complete robotic gait is better than single
evolution of composite individuals.
• Complexity of the Control Functions. The single-
leg motion patterns are represented as arbitrary
functions that are sought by the GP. Another way
to realize the motion patterns is to some periodic
function, such as the sine wave, to control mod-
ules of the robot and then to tune just the pa-
rameters of the sine waves (amplitude, phase, fre-
quency) of each module. Thus, the question is
whether the more general functions evolved by
GP are advantageous and can allow for generating
better motion patterns than the sine wave ones.
Series of experiments were carried out in or-
der to compare a performance of the baseline co-
evolutionary GP approach with its variants that differ
in the above mentioned aspects.
This paper is structured as follows. In section 2,
characteristics of robots simulated in the simulation
platform Sim are described. Section 3 describes
the co-evolutionary approach for automatic robot gait
generation. Section 4 describes algorithms used to
empirically validate the design of the co-evolutionary
IJCCI2013-InternationalJointConferenceonComputationalIntelligence
38