Download View PDF - CiteSeerX

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Document related concepts

Therapeutic gene modulation wikipedia , lookup

Gene therapy of the human retina wikipedia , lookup

Artificial gene synthesis wikipedia , lookup

Point mutation wikipedia , lookup

Vectors in gene therapy wikipedia , lookup

Polycomb Group Proteins and Cancer wikipedia , lookup

Protein moonlighting wikipedia , lookup

NEDD9 wikipedia , lookup

Transcript
Harnessing Morphogenesis
CSRP 423
Nick Jakobi
School of Cognitive and Computing Sciences
University of Sussex, Brighton BN1 9QH, England
email:
[email protected]
Abstract
This paper explains in detail a biologically inspired encoding scheme for
the articial evolution of neural network robot controllers. Under the scheme,
an individual cell divides and moves, in response to protein interactions with
an articial genome, to form a multi-cellular `organism'. After dierentiation
dendrites grow out of each cell, guided by chemically sensitive growth cones,
to form connections between the cells. The resultant network is then interpreted as a recurrent neural network robot controller. Results are given of
preliminary experiments to evolve robot controllers for both corridor following
and object avoidance tasks.
Keywords: Articial Evolution, Morphogenesis, Evolutionary Robotics.
1 Introduction
Many people have noted the diculties involved in designing control architectures
for robots by hand ([10], [1]) and as robots and the behaviours we demand of them
become more complicated these diculties can only increase. Evolutionary robotics
is an attempt to overcome some of these diculties by automating the design process (see [9] for an example). Articial evolution is employed to evolve control
architectures using a genetic algorithm [4].
In the experiments reported in this paper, a population of initially random genotypes (character strings) are developed into phenotypes (articial neural networks)
and assigned a tness value based on their ability to control a small mobile robot at
a simple task. A new generation of genotypes is then `bred' from the old population
by probabilistically selecting t parent genotypes and applying the genetic operators
of crossover and mutation to create ospring genotypes. Over many generations,
average tness gradually improves until individuals evolve that can perform the task
satisfactorily.
Both developmental biology and evolutionary robotics, then, deal with processes
by which genotypes become phenotypes. This is, at the moment, where the similarity between the two disciplines ends. With a few notable exceptions (amongst
them [2], [14] and [16]), the crude bit-string to neural network transformations normally used in evolutionary robotics are clumsy parodies of the subtle mechanisms
of Morphogenesis that developmental biologists are only beginning to uncover. In
itself this is no bad thing, but since no entirely satisfactory method of encoding really complicated neural networks in a compact way has been discovered, this paper
represents a step towards exploiting the encoding scheme used by mother nature.
The inspiration behind the encoding scheme described in this paper comes from
biology, but it was designed with evolutionary robotics rmly in mind, and not as a
defensible model of biological development. The overall picture to be gleaned from
the model, described in the next section, will at least be reminiscent to the developmental biologist of what actually takes place during Morphogenesis, but where
precise functional details of a particular developmental mechanism were unavailable,
or where the biological details appeared to conict with the goals of evolvability and
exibility of design necessary to any encoding scheme, alternative mechanisms were
implemented. Biological terms are used extensively throughout the paper. Unless stated otherwise they should be seen as explanatory tools rather than strong
references to their biological counterparts.
2 An Overview of the Developmental Model
This section gives a general overview of the encoding scheme in three stages. First
it describes what takes place at the level of the genome, then how this controls the
behaviour of individual cells, and nally how a multicellular `organism' develops
from a single cell.
In the current scheme, a genome consists of a single string of what might be
thought of as base-pairs of nucleic acids (i.e. one of four characters). The start of
each gene on the genome is identied by a certain pattern of preceding characters,
similar to the TATA box on a real genome (see [6] for a good introduction to developmental biology). Genes are of xed length. Each gene is responsible for the
production of a particular protein and in turn is regulated by certain combinations
of proteins within the cell. What is important to realise at this stage is that genes
create proteins that regulate genes (see [15] for a beautifully clear example of this),
forming genomic regulatory networks (GRNs) that control the entire behaviour of
each cell during development. These are best thought of as independent dynamical
systems within each cell, capable of being knocked from one basin of attraction into
another by internal and external stimuli, following independent trajectories through
state space 1 (for full details see Section 4.1).
The proteins within each cell are divided into dierent classes. Each has a unique
eect on the gross behaviour of the cell. The ability of a given protein to perform
its role within its class depends on its `shape' (for a full explanation of each class
and how they interact with each other see Section 4.3). Signal proteins diuse out
of one cell and into another, allowing cells to inuence each other at a distance. The
direct consequences of this inuence may take one of two forms, either perturbing
the cell's internal dynamics (turning certain genes `on' and others `o') or applying
a force on the cell body towards or away from the protein source. In practice, there
are many dierent signal proteins, from many dierent sources, entering each cell at
any given time, and each cell will only respond to a subset (depending on the state
For a fuller account of this interpretation and, to my knowledge, the rst exposition of genomic
functionality as a regulatory network, see [13].
1
inputs
outputs
inputs
outputs
protein
emitter
inter-neurons
protein
emitter
inter-neurons
Figure 1: Two evolved neural networks. The network on the left exhibits corridor following
behaviour, while that on the right exhibits obstacle avoiding behaviour. The input region
of the developmental environment was divided into eight sub-regions, from top to bottom,
corresponding to the eight infra red light sensors on the Khepera robot. The output region
was divided into two sub-regions, corresponding to the left and right motors of the Khepera.
small
of its internal dynamics). This means that dierent cells may behave dierently
in response to identical external stimuli, and also that dierent cells may behave
identically in response to dierent external stimuli.
Initially a single cell is placed in an environment containing a number of strategically placed extra-cellular signal protein sources. These xed sources provide a
reference for the developmental process. After the initial cell begins to divide, individual cells divide and move, as part of one big dynamical system coupled together
by signal protein interactions, until, eventually, they dierentiate (see section 4.4).
When this occurs, a number of dendrites grow out from each cell guided by `growth
cones' sensitive to unique combinations of signal proteins. On contact with another
cell, a synaptic connection is formed (see Section 4.5). After every cell has dierentiated and every dendrite has either connected or died, thresholds and weights are
assigned to each cell and dendrite respectively, and inputs and outputs are assigned
to cells which lie in specic regions of the developmental environment, to form a
neural network ready for testing (see section 4.6).
3 Preliminary Experiments
Before going into the details of the encoding scheme, I will rst outline the results
of preliminary experiments. This is done so that the reader may understand the
general ideas behind the work reported here before becoming too bogged down with
the ner points.
Two initial experiments were carries out to test the encoding scheme. Both were
carried out using a simulation [11] of the Khepera miniature mobile robot [12] of the
the correct level of detail to ensure transfer of evolved behaviours from simulation
to robot. Both experiments involved a population of one hundred character strings,
each of which was 5000 (initially random) characters long. The genetic algorithm
in both cases was based on a simple generational model with rank-based selection.
Crossover and mutation were the only genetic operators used. Crossover happened
at every `breeding' and the mutation rate was set at 0.002 mutations per character
on the genome (about 12 mutations per genome on average).
In the rst experiment, the robot was placed at one end of a long corridor with
many bends, and neural networks were evolved that could guide it down the corridor
without crashing into the walls. The tness function (similar to that used in [3])
returned the normalised product of three terms: one for going as fast as possible,
one for going as straight as possible and one for staying away from walls. By
generation 10 networks had evolved that could guide the robot down the corridor.
The network displayed in Figure 1, which was the ttest individual of generation 50,
could successfully guide the robot down the corridor without it touching the walls.
The experiment was run for a total of 500 generations but no real improvement was
made after the ftieth generation.
In the second experiment, the robot was placed in a rectangular environment
containing many small cylinders. The tness function was the same as that used
above. Again, by generation 10, neural networks had evolved which evoked obstacle
avoiding behaviour in the robot. The network displayed on the right hand side of
Figure 1 is again the ttest member of the 50th generation. This network proved to
be very good at obstacle avoidance. However, since it only makes use of two of the
available eight sensors on the robot, the robot has several `blind spots', including
straight ahead for small objects.
4 The Encoding Scheme in Detail
The reader who is not interested in the details of the algorithm that converts character strings to articial neural networks may skip this section if they want. They
should, however, be warned that a full appreciation of the issues raised in Section 5
is not possible without a more involved understanding of the encoding scheme.
4.1 The Genomic Regulatory Network (GRN)
Proteins regulate genes which produce proteins. In other words proteins regulate
other proteins. Each unit in the GRN corresponds to exactly one protein in the cell
and the pattern and nature of links between units is dened by which protein(s)
regulate which other protein(s). The activity of each unit equals the intra-cellular
concentration of its particular protein (which is equal in turn to the activity of the
gene that produces it: maximum 1.0, minimum 0.0). In reality, it may (and usually
does) take the presence of several proteins and the absence of several others to
activate a particular gene (thus increasing the cellular concentration of the protein
it encodes for). There are usually several links fanning into each unit in the GRN,
each with a weight between 2.0 and -2.0, and each unit has a unique threshold that
sets the lower bound of the linear threshold activation function.
‘TATA’ box
Link template
This section codes for a protein. Three characters are taken at a time
creating a protein string from a 64 letter alphabet.
aabbccdaaabacabadcbdcbcadbadcbcdbadbcdbadccbabdbadcbdbcbcbdcbaabcdbbcadbcbcdb
Threshhold
Protein type
Figure 2: The lay-out of a gene.
4.2 Preprocessing The Genome
Various forms of template matching routines are used to work out the nature of
the GRN and indeed all protein interactions, including those that have no direct
inuence on genomic activity. These routines are computationally expensive but,
since the GRN and all protein interactions remain xed for any given genome, the
genome may be exhaustively preprocessed before development begins, and then
discarded. This leaves the GRN (which may now be treated exclusively as a recurrent
neural network with linear threshold activation functions2), and various relations
between the units of the GRN, extra-cellular stimuli and internal variables that
have a direct bearing on the gross behaviour of the cell.
The makeup of a gene is shown in Figure 2. As with a real gene there is a
short regulatory region that contains several elds and a longer coding region. The
`TATA' region marks the start of the gene, the threshold region denes the amount of
stimulation needed to switch the gene on, the link template controls which proteins
aect the gene's activity and the type region denes what class of protein the gene
codes for. A protein is translated from the coding region by taking triplets of
characters to produce a string whose characters derive from a 64 letter alphabet.
The ends of each protein string are then joined together to create a circle.
There are two types of template matching, protein-to-genome and protein-toprotein. These routines are used in three dierent ways: to nd relationships between proteins and the genome, to nd relationships between proteins and other
proteins, and to nd relationships between proteins and xed class-specic templates (designed to elicit specic information about the functionality of that protein
within its class). Each of the 64 characters that may occur in a circular protein string
can be regarded as a chemical with a unique anity for each of the four chemicals
(characters) that make up the genome and with a unique anity for each of the
other 63 chemicals that may constitute a protein. All anities are values between
0 and 1. Any single character match (protein-to-protein or protein-to-genome) will,
therefore, result in one of 64 values between zero and one. These routines, in the current implementation, usually operate on templates of three contiguous characters.
These matches return one of 192 values between 0 and 2.
The lower bound of the linear threshold activation function of each unit in the
GRN is read directly from the threshold region of the corresponding protein's gene.
The triplet of characters is converted from base 4 to a decimal number between 0
Care should be taken to distinguish the GRN from the phenotype as both are, in fact, recurrent
neural networks. It is important to keep in mind that one (the GRN) controls the development of
the other (the phenotype).
2
arbitrary template
weight is a function of this match
match site
protein
link template
gene segment
Figure 3: A protein has been rotated until the match between the link template on the
gene and the corresponding protein segment goes over a certain threshold. The contribution this protein makes to the regulation of the gene is then calculated from matching the
diametrically opposite side of the protein with an arbitrary xed template.
and 64, and then to a decimal between plus and minus one.
In the nucleus of a real cell, which and how many genes any given protein regulates
depends on that protein's shape. This shape is arrived at by a complicated folding
process, the biological intricacies of which are poorly understood. In the model
described in this paper, each protein is a circular string. To work out whether
any given protein plays a part in the regulation of any given gene (and hence its
product), the protein is rotated over the link template of the gene until, if at all,
the value of the match between the template and the protein string segment it is
opposite goes over a threshold (see Figure 3). If the threshold is surpassed then the
protein plays a role in the regulation of the gene and a link is formed in the GRN
between the unit corresponding to the protein and the unit corresponding to the
gene's product. The weight on this link is found by matching three characters of the
circular protein string, diametrically opposite to where the link template matched,
against an arbitrarily dened but xed template that might conceivably be thought
of as part of an RNA Polymerase molecule.
Also at the preprocessing stage, all proteins are assigned to a class depending on
the base 4 number expressed by the type regions on their genes. The functionality of
a protein within its class is found in similar ways to its regulatory role, as described
above (see Section 4.3 for details on each class).
There is one special class of protein that is worth mentioning here as it has a direct
inuence on the nature of the GRN. These are the signal proteins (see below) that
may be emitted from a cell or extra-cellular source, and may enter through the wall
of a cell to aect the dynamics of its GRN. A signal protein plays no regulatory role
within the cell it is produced, but only within other cells it has entered through the
cell wall. The amount of signal protein diusing out of a particular cell is calculated
directly from the state of that cell's GRN. However, the activations of those genes
(and hence the corresponding units in the GRN) within that cell that are regulated
by signal proteins are a function of the amount of signal protein diusing into that
cell through the cell wall. See Section 4.4 for an explanation of how the amount of
signal protein entering a cell is calculated.
4.3 Protein Classes
There are six classes to which a protein may belong: signals, movers, splitters,
dierentiators, dendritics and threshold proteins. Each plays a crucial role in the
determination of individual cell behaviour and hence to the overall shape and functionality of the nal organism. The following is a description of each class's role
within the cell.
signals
These proteins diuse uniformly out from the cell within which they are produced,
creating a chemical eld (there is no time factor involved) in the space around
them. They infuse into cells lying on the resultant chemical gradient wherein they
may inuence the internal dynamics of the GRN, turning some genes `on' and others
`o', or interact with mover proteins (see below).
movers
Mover proteins control the way in which individual cells move (see Section 4.4 for
details). Each mover protein responds to a subset, particular to that mover protein,
of the available signal proteins. This subset is found (during preprocessing) by
nding all signal proteins that have a contiguous 3 character string segment that
matches a similar 3 character string segment somewhere on the mover protein, with
a value that exceeds a certain threshold. This is akin to nding an orientation of
two proteins whereby they `t together'. If a signal protein matches to a mover
protein in this way then the anity of the mover protein (treated as a weight) for
the signal protein is dened as the value returned by matching 3 characters on the
signal protein, diametrically opposite to the match site with the mover protein, to
a xed class-specic template.
dendritics
Dendritic proteins control the way in which dendrites grow (see Section 4.5 for
details). Each dendritic protein also responds to a subset, particular to that dendritic
protein, of the available signal proteins. This subset, and the anity of a dendritic
protein for each of the signal proteins in its subset, is found in exactly the same way
as for mover proteins, described above. In addition dendritic proteins also have a
threshold associated with them, found by taking the lesser of the maximum match
values of two class-specic templates rotated around the protein. This threshold
represents the concentration of dendritic protein that must be present in a cell (at
dierentiation) for the particular dendrite to grow. The dendrite will be excitatory
or inhibitory depending on which of the two templates has the lesser maximum
match.
splitters
A cell may split in one of two ways, either parallel to the direction of the total force
acting on the cell or at right angles to it. Which, if either, of these two options
occurs depends on which of two internal variables goes over a certain threshold rst.
Splitter proteins have two weights between 0 and 1 attributed to them, one for each
of these variables, found by taking the maximum match values of two class-specic
templates rotated around the protein. At each time step the weighted sum of splitter
protein concentrations in the cell is added to each variable; if it splits, both variables
are reset.
dierentiators
Dierentiator proteins work in much the same way as splitter proteins. Each cell
contains an internal variable which is not reset if the cell splits. At each time
step the weighted sum (each dierentiator protein also has a weight between 0
and 1 attributed to it, found, in the same way, using a class-specic template) of
dierentiator protein concentrations is added to this internal variable until it, also,
goes over a certain threshold and the cell starts to dierentiate.
threshold proteins
After development has ceased, the nished structure is translated into a neural
network, with cells becoming units in the network and dendrites becoming the links
between these units. Threshold proteins are responsible for setting the thresholds
on the units in the nal neural network. At dierentiation, these thresholds are
calculated from the normalized sum of the total concentration of threshold protein
within each cell.
4.4 Initial Development
After the genome has been preprocessed, development may begin. A single cell is
placed in a two dimensional environment with a number of strategically placed extracellular signal protein sources. These protein sources emit chemicals in exactly the
same way as a cell does and should not be regarded as somehow having more control
over the developmental process than individual cells that emit signal proteins. The
concentration of signal protein in the environment drops
p o with distance from the
source according to the expression (100 ? d)=(100 + d) where d is the distance.
If d is greater than 100 then the concentration is zero. This expression means a
concentration of 1 at the signal source dropping to 0 at a distance of 100 (the
developmental environment
p used in Section 3 was a 100 by 100 square) with a nonlinearity caused by the d term which ensures that all signal protein maxima will be
located at signal protein emitters (important for dendrite growth, see Section 4.5).
At each time step the concentrations of every signal protein in the local environment of each cell is calculated. This is done by iterating through all signal protein
sources and adding the eects of those sources that emit the same chemical. The
GRNs of each cell may then be updated synchronously. First, new inputs for all
nodes in each GRN are calculated from the weighted sum of recurrent connections
and any external signal protein inputs, and then new outputs are calculated using
a linear threshold function with lower bound set by the threshold on each node. All
internal variables are then updated.
Forces on each cell are calculated by the application of mover proteins to the signal
proteins in each cells locality. Each mover protein causes a force proportional to,
and in the direction of the maximum gradient of, the weighted sum of the local
chemical concentrations of the members of its particular subset of signal proteins.
The weights in this sum correspond to the mover protein's anities for each of the
members of its subset. The cell moves in the direction of the resultant of these
forces.
If any internal variable (for splitting or for dierentiation) has gone over its threshold, then the appropriate action takes place. Note that when a cell splits, each
daughter cell is identical to the mother cell in all but a slight positional displacement at right angles to the axis of cleavage.
When the internal dierentiation variable within a cell goes over a threshold, the
cell dierentiates. At this point the cellular concentrations within the cell become
xed, including the levels of signal proteins output from that cell.
4.5 Dierentiation and Dendrite Growth
At dierentiation the number of dendrites that will grow from a cell is calculated.
This is the number of dendritic proteins whose intra-cellular concentration lies above
the threshold associated with that protein (see Section 4.3). As with mover proteins,
each dendritic responds to its own particular subset of signal proteins. Growth starts
from the side of the cell where the weighted sum of the concentrations of each signal
protein in this subset is greatest.
Dendrites are guided by a trident shaped `growth cone' with three sensors, one
at the tip of each fork, each responsive to the dendritic protein's subset of signal
proteins. At each time step the concentrations at each sensor are calculated, and
the position of the base of the trident is updated to that of the trident `tip' with the
highest concentration. In this way the dendrite is steered, at a xed speed, towards
the local maximum of the weighted sum. This will usually be another cell, at which
point the dendrite forms a connection with that cell and stops. However, since the
sum is weighted, the dendrite may actively steer away from signal protein sources
as well as towards them. This creates two sorts of problems. One, dendrites may
grow o to innity, and two, they may go into `orbit' around local chemical minima.
For this reason there is a maximum length to which a dendrite may grow before it
is said to be dead.
4.6 Interpreting a Neural Network
Once all cells have dierentiated, and all dendrites have either connected or died,
the nished structure may be interpreted as an articial neural network (ANN)
which can then be used to control a robot. The architecture and connection matrix
of the ANN is taken directly from that of the developed organism. Activation is
interpreted to ow in the direction of dendrite growth. Each link is either inhibitory
or excitatory (depending on the results of a template match. See Section 4.3).
The weight on each link is calculated from the concentrations of the signal protein
subset attributed to the dendritic protein responsible. The weighted sum of these
concentrations, at the point where the `growth cone' connects, is divided by the
maximum possible value of this weighted sum (i.e. as if all the concentrations were
1.0) to give a number between 0 and 1. This is then scaled appropriately.
Thresholds on the units in the ANN are calculated directly from the concentration
levels of threshold proteins in the corresponding cells (see Section 4.3). Input and
output units to the ANN correspond to those cells that end up in certain regions of
the developmental environment. See Section 3 for an example of how this is done.
5 Issues of Evolvability
There are two properties essential to an encoding scheme capable of evolving complex control architectures for robots. Firstly, it must be robust with respect to the
genetic operators used by the genetic algorithm (cross-over, mutation, translocation, genome growth etc.), and secondly, it must be capable of `subroutining', in the
sense of encoding for repeated structure in a compact way. The encoding scheme
described in this paper displays both of these properties, which are described below,
and it is this that makes it potentially very powerful indeed.
5.1 Robustness to the Genetic Operators
If an encoding scheme is to work at all (i.e. to provide the basis for something more
than random search) then it must be robust with respect to the genetic operators
it is used with. It is crucial, if evolution is to progress, that `t' phenotypic traits
are not destroyed by the breeding process. Ideally, with the exception of mutation,
all genetic operators should cause as little phenotypic disruption as possible. The
crossover operator is a special case, since it acts on two genotypes as opposed to
one, but I would argue along with [7] that it is only meaningful, in an Evolutionary
Robotics context, to use crossover in conjunction with converged populations.
The encoding scheme, reported here, is robust with respect to operators involving
translocation and genome growth. This allows two things: rstly, genes that work
in tandem (e.g. to create a `t' subnetwork in the phenotype) may be relocated next
to each other on the genotype, thus minimising the chance of their separation by
crossover, and secondly, open ended evolution becomes possible, where phenotypic
complexity is not restricted by the original size of the genome. This robustness
follows from the simple reason that, using template matching, parts of the genotype
address other parts of the genotype (to form the links of the GRN) by the character
sequences that occur there, and not, as in many encoding schemes, by a function of
the region's location on the genome. If these sequences of characters are relocated
on the genotype, or if the genotype is allowed to grow or shrink, it will have minimal
eects on the shape and nature of the GRN.
Ideally, mutating any genotype should, in the main, provide only minor changes
to the phenotype (of a degree proportional, in some sense, to the changes made to
the genotype). However, especially in the case of converged population genetic
algorithms, small mutations to the genotype should occasionally result in large
changes to the phenotype 3. Because of the way a developmental scheme works,
Since we are, in eect, in charge of the physics under which development occurs, it is also
possible to restrict the form that large scale changes may take. This may well be desirable since
3
small scale changes to the GRN that controls development may nevertheless produce large scale changes in the phenotype (whole new portions of network may grow,
or sub-structures may get repeated, see below). Also a small change to the GRN
may do nothing but slightly alter one parameter of the phenotype. Slight mutations
to the GRN, then, provide the right range of changes in the phenotype.
What is less obvious is why slight changes to the genotype, in the encoding scheme
reported here, should result in slight changes to the GRN. Section 4.2 explains
how the GRN is decoded from the genome using a variety of template matching
operations. The problem is that if two or more templates overlap then a single
mutation at this point may result in a disproportionately large change to the GRN.
In order to minimize this possibility, the template matching routines were designed
to extract the maximum amount of information from templates that were as short as
possible. Also, the ratio of protein-length to template-length (e.g. the link templates
on the gene and the class-specic templates used in preprocessing) was made as large
as possible. Inevitably, though, a certain amount of overlap will occur. However, in
practice, evolution very quickly favours those genotypes that display low amounts
of overlap, since mutation of these genomes is far less disruptive in general and t
individuals are more likely to have t ospring. The epistasis caused by this overlap
is then almost entirely `bred out' of the population.
5.2 Encoding Repeated Structure
The positions of the extra-cellular signal protein sources within the developmental
environment restricts the nal neural network architectures that are possible. For
example, in the experiment detailed in Section 3, development unfolds in conjunction
with only a single extra-cellular signal protein source, ensuring bisymmetry in the
resultant neural networks. It must be stressed that, with the addition of more extracellular protein sources (in asymmetric positions), fully developed networks would
not necessarily be asymmetric, since the signal protein produced by any given source
may well not template match anywhere on the genome (see Section 4.2), and thus
would not aect the dynamics of any cell within its chemical eld.
Each cell, during the developmental process, will only respond to a subset of the
signal proteins within which it is immersed. Dierent cells at dierent times will
respond to dierent subsets, depending on the particular positions of their GRNs
in dynamical state space. This allows the developmental process to buy in or out
of symmetry, and the same applies to buying in or out of repeated structure. For
example, imagine two cells on opposite sides of a developmental environment which
is asymmetric with respect to signal protein concentrations. Now even though each
cell is immersed in a dierent set of signal proteins, it so happens that they both
respond to the same subset, and that the environment is symmetrical with respect
to this subset. If both of the cells' GRNs are at the same position in dynamical
state space at this time, then they will display the same behaviour, since, in effect, their internal and external inuences are identical, and they may split, move
and dierentiate to produce identical subnetworks on either side of the developmensome forms of large scale change, such as the insertion of a totally random subnetwork in an ANN,
are less likely to be useful than, say, the repetition of an already existing subnetwork in the same
ANN. In [5], Goodwin argues that something like this sort of restriction plays a major role in
evolution.
tal environment. However, cells elsewhere in the developmental environment may
respond to dierent signal proteins subsets and may, therefore, develop asymmetrically. The nal developed network will be asymmetric as a whole but with two
identical subnetworks.
6 Conclusions
This paper represents an attempt to harness the developmental power of morphogenesis to the still young discipline of Evolutionary Robotics. A biologically inspired
encoding scheme has been outlined, capable of encoding repeated structure and symmetry in a compact way, which is robust to the wiliest of genetic operators. It has
been successfully used to evolve two simple behaviours for a small mobile robot.
It is the author's hope that with time, a descendant of the current encoding scheme
will make possible the evolution of far more complicated behaviours than those outlined in Section 3, and maybe even robots themselves (see [2]). The scheme's ability
to cope with open ended, incremental evolution [7], while building up a `library'
of useful subnetworks on the genome, may nally provide the evolutionary robotocist with the means to compete (in terms of time and resources) with other more
traditional methods of control architecture design, a necessary step if evolutionary
robotics is to fulll its early promise.
Acknowledgements
Nick Jakobi is supported by a postgraduate bursary from the School of Cognitive
and Computer Science at the University of Sussex. Many thanks to Inman Harvey
for allowing me, and encouraging me, to build on the proposed encoding scheme
outlined in [8].
References
[1] R. Brooks. Intelligence without representation. Articial Intelligence, 47:139{59,
1991.
[2] Frank Dellaert and Randall D. Beer. Co-evolving body and brain in autonomous
agents using a developmental model. Technical Report, (CES-94-16), 1994.
[3] D. Floreano and F. Mondada. Automatic creation of an autonomous agent: Genetic
evolution of a neural -network driven robot. In D. Cli, P. Husbands, J.A. Meyer,
and S. Wilson, editors, From Animals to Animats, volume 3, 1994.
[4] David E. Goldberg. Genetic Algorithms in Search, Optimization and Machine Learning. Addison-Wesley, Reading, Massachusetts, USA, 1989.
[5] B. C. Goodwin. The evolution of generic form. In J. Maynard Smith and G. Vida,
editors, Organizational constraints on the dynamics of evolution, Proceedings in Nonlinear Science, pages 107{117. Manchester University Press, 1990.
[6] C.F. Graham and P.F Wareing. Developmental Control in Animals and Plants. Blackwell, Oxford, 2 edition, 1984.
[7] I. Harvey. Species adaptation genetic algorithms: the basis for a continuing saga. In
F. J. Varela and P. Bourgine, editors, Toward a Practice of Autonomous Systems:
Proceedings of the First European Conference on Articial Life, pages 346{354, Cambridge, Massachusetts, 1992. M.I.T. Press / Bradford Books.
[8] I. Harvey. The Articial Evolution of Adaptive Behaviour. PhD thesis, University of
Sussex, 1993.
[9] I. Harvey, P. Husbands, and D. Cli. Seeing the light: Articial evolution, real vision. In Proceedings of the Third International Conference on Simulation of Adaptive
Behavior, 1994.
[10] P. Husbands and I. Harvey. Evolution versus design: Controlling autonomous
robots. In Integrating Perception, Planning and Action: Proceedings of the Third
Annual Conference on Articial Intelligence, Simulation and Planning, pages 139{
146. I.E.E.E. Press, 1992.
[11] N. Jakobi, P. Husbands, and I. Harvey. Noise and the reality gap: The use of simulation in evolutionary robotics. In F. Moran, A. Moreno, J.J. Merelo, and P. Chacon,
editors, Advances in Articial Life: Proc. 3rd European Conference on Articial Life,
pages 704{720. Springer-Verlag, Lecture Notes in Articial Intelligence 929, 1995.
[12] K-Team. Khepera users manual. EPFL,Lausanne, June 1993.
[13] Stuart A. Kauman. The Origins of Order. Oxford University Press, 1993.
[14] S. Nol, O. Miglino, and D. Parisi. Phenotypic plasticity in evolving neural networks.
In Proceedings of the PerAc'94 Conference. IEEE Computer Society Press, 1994.
[15] M. Ptashne. A Genetic Switch. Cell Press, 1986.
[16] J. Vaario. From evolutionary computation to computational evolution. Informatica,
1994.