# Artificial Life using a Book and Bookmarker

Keishu Utimula

###### Abstract

Reproduction, development, and individual interactions are essential topics in
artificial life. The cellular automata, which can handle these in a composite
way, is highly restricted in its form and behavior because it represents life
as a pattern of cells. In contrast, the virtual creatures proposed by Karl
Sims have a very high degree of freedom in terms of morphology and behavior.
However, they have limited expressive capacity in terms of those viewpoints.
This study carefully extracts the characteristics of the cellular automata and
Sims models to propose a new artificial life model that can simulate
reproduction, development, and individual interactions while exhibiting high
expressive power for morphology and behavior. The simulation was performed by
sequentially reading a book with genetic information and repeatedly executing
four actions: expansion, connection, disconnection, and transition. The
virtual creatures in the proposed model exhibit unique survival strategies and
lifestyles and acquire interesting properties in reproduction, development,
and individual interactions while having freedom in morphology and behavior.

##  I Introduction

In 1994, Karl Sims proposed a system of virtual creatures that could be
simulated on a computer [1]. These virtual creatures had bodies and neurons
defined by directed graphs, and they evolved into creatures with various
functions through genetic algorithms. Subsequently, there have been many
related studies on this virtual creature, which has a very high degree of
freedom in its morphology and behavior [2, 3, 4, 5, 6].

However, this virtual creature has limited expressive capacity with regard to
reproduction, development, and individual interactions. Therefore, many prior
studies have delved into these elements separately.

The process of reproduction is often simulated through genetic algorithms.
Here, there are variations in how the parents are selected and how the genes
of the selected parents are mixed, which are hyperparameters that can be set
from the outside [2, 7].

The mechanism of biological development was applied to a network structure for
development by Stanley et al. in 2007 [8]. In several studies, the bodies of
virtual creatures were constructed using particles and springs connecting the
particles to simulate the process of development [9, 10, 11, 12].

Individual interactions have occasionally been modeled as parameters for
genetic algorithms. Sims created interesting and diverse virtual creatures
using the results of competitions between individuals as criteria for the
selection of the parents [7]. Additionally, some studies have examined changes
in morphology and behavior in environments where predators and prey coevolve
[13].

These earlier studies independently studied reproduction, development, and
individual interactions. An example of a model that can handle these
components in a composite way is the self-reproduction pattern of cellular
automata proposed by Neumann [14]. However, while cellular automata have high
expressive power for reproduction, development, and individual interactions,
they are highly restricted in their morphology and behavior because they
represent life as a pattern of cells.

In this study, a new artificial life model is proposed that can simulate
reproduction, development, and individual interactions while exhibiting high
expressive power for morphology and behavior. This approach represents an
attempt to combine the virtual creatures proposed by Sims with the elements
possessed by cellular automata.

The virtual creatures in this proposed model have their own survival
strategies and lifestyles and have acquired interesting properties in
reproduction, development, and individual interactions.

##  II Model and Methodology

A cellular automaton is a discrete computational model consisting of a regular
grid of cells [14]. Each cell changes its internal state according to a set of
rules. In 1966, Neumann discovered the existence of a self-reproduction
pattern in a cellular automaton with 29 internal states [14]. Many other
researchers followed, including Codd [15], Banks [16], and Devore [17]. This
self-reproduction was not instantaneous, but involved a process of
development. In addition, the self-reproduction pattern Loop that was proposed
by Langton was robust and could achieve self-reproduction even when mutations
occurred that were triggered by collisions with other loops [18, 19]. This is,
therefore, an excellent method of expressing reproduction that incorporates
interactions between individuals.

This study focused on the mechanism that causes reproduction and development
by sequentially reading information about the creatures in genes and changing
the surrounding environment based on that content. This system simulates the
expression of various reproductive and developmental processes, and even the
individual interactions caused by the intervention of others.

The proposed model is based on the concept of incorporating cellular automata
mechanism into a cell that moves freely in a three-dimensional space.

###  II.1 Overview

The form of the virtual creatures proposed here consists of spheres, called
cells, and springs that connect them. Cells acquire their morphology through
repeated cell divisions, binding with surrounding cells using springs, or
unbinding. The procedure is written in the genes that each cell possesses,
which are read sequentially to represent the developmental process. The cell
can copy some or all of its own genes during division and pass them on to a
new cell. In addition, each cell has a neural network with only one hidden
layer, which allows for a response and action from external input. This action
is separated from the gene-derived behavior described above.

These virtual creatures will live in mutation on an undulating field. There is
a sun above the field that moves back and forth in one direction, and light
emitting from it is the only source of energy in this world.

###  II.2 Gene

Genes in these virtual creatures are represented as strings of 64 different
characters. Here, a total of 52 upper and lower case letters of the alphabet,
ten Arabic numerals [$0$-$9$], and the symbols + and $-$ were selected as the
characters. Each cell had a string as a gene and a string that determined its
readout position. Considering the difference in their roles, the gene string
is referred to as the Book and the string for the readout position is referred
to as the Bookmarker. For example, the first character to be read is the
character ”G” if there is a cell with a Book and Bookmarker, as shown in Table
1.

Table 1: Example for the Book and Bookmarker. Book | ABCD EF GHIJKLMN…
---|---
Bookmarker | EF

The cell can perform four different actions depending on the character that is
read out first, as follows.

  * •

EXPANSION ($\mathcal{E}$)

  * •

CONNECTION ($\mathcal{C}$)

  * •

DISCONNECTION ($\mathcal{D}$)

  * •

TRANSITION ($\mathcal{T}$)

EXPANSION is the generation of new cells around a source cell, corresponding
to cell division. Here, the generated cell is connected to the source cell by
a spring. CONNECTION is the action of connecting with surrounding non-
connected cells. DISCONNECTION is an operation to disconnect a cell that has
already been connected. TRANSITION is the action of changing the Bookmarker
string.

In this simulation, 64 different characters were evenly assigned to these four
actions, as listed in Table 2.

Table 2:  Characters assigned to the four actions. $\mathcal{E}$ | : ABCDEFGHIJKLMNOP
---|---
$\mathcal{C}$ | : QRSTUVWXYZabcdef
$\mathcal{D}$ | : ghijklmnopqrstuv
$\mathcal{T}$ | : wxyz0123456789+$-$

Thus, EXPANSION is the action that would have been performed in the previous
example, as shown in Table 3.

Table 3:  Examples for EXPANSION. Book | ABCD EF GHIJKLMN…
---|---
Bookmarker | EF
Action | [ G] EXPANSION

In terms of interpretation of actions, there is no difference between
characters classified as the same action. Thus, in the example here, the
behavior would be the same even if G were A or P. The action determines how
the string that follows is interpreted.

####  II.2.1 EXPANSION

The following string is interpreted as information about the newly created
cell if the action is EXPANSION. Specifically, the information is as follows.

  * •

Light absorption rate (color)

  * •

Luminous intensity

  * •

Mass

  * •

Radius

  * •

Neural network weight

  * •

From where to where in the Book to be copied and passed to the new cell

  * •

Bookmarker for new cells

The cell generates new cells based on this information. The location to be
generated is around the original cell, but it is random. Additionally, the
generated cell is connected with the cell from which it was generated. Any
further strings following this are interpreted as the next Bookmarker in this
cell. Specifically, the following string was read by every other character and
used as the new Bookmarker. For example, the new Bookmarker would be ”df” if
the length of the Bookmarker was 2 and the string following the specifics of
the action was ”def…”, as shown in Table 4. This is a simple encryption to
prevent the instruction about the new Bookmarker itself from becoming the next
read position.

Table 4:  Examples for EXPANSION. Book | CDEF AHIJK…abc defg…
---|---
Bookmarker | EF
Action | [ A] EXPANSION
New Cell Info. | HIJKLMN…abc
New Bookmarker | df

####  II.2.2 CONNECTION

The cell will be in a waiting state for the connection if the action is
CONNECTION. This is the state in which a connection will be performed if there
is a cell near another cell that is also waiting to be connected. The
following string is interpreted as the next Bookmarker, as shown in Table 5.

Table 5:  Examples for CONNECTION. Book | ABCDEF Q defg…
---|---
Bookmarker | EF
Action | [ Q] CONNECTION
State | Waiting for connection
New Bookmarker | df

####  II.2.3 DISCONNECTION

The cell will be in a state waiting for disconnection if the action is
DISCONNECTION. This is the state in which a cell will be disconnected if a
connected cell is also waiting to be disconnected. The following string is
interpreted as the next Bookmarker, as shown in Table 6.

Table 6:  Examples for DISCONNECTION. Book | ABCDEF g defg…
---|---
Bookmarker | EF
Action | [ g] DISCONNECTION
State | Waiting for disconnection
New Bookmarker | df

####  II.2.4 TRANSITION

The same process as described so far is followed if the action is TRANSITION,
where the following string is interpreted as the next Bookmarker. This is
shown in Table 7.

Table 7:  Examples for TRANSITION. Book | ABCDEF w defg…
---|---
Bookmarker | EF
Action | [ w] TRANSITION
New Bookmarker | df

####  II.2.5 Shift for Bookmarker

It is easy to realize a procedure that repeats the same action indefinitely
using the implementation described above. An example of the Book and
Bookmarker that repeatedly expand the same cell is shown in Table 8.

Table 8:  Example of Book and Bookmarker with the repeated EXPANSION of the same cell. Book | CDEF AHIJK…abc EeFghi…
---|---
Bookmarker | EF
Action | [ A] EXPANSION
New Cell Info. | HIJKLMN…abc
New Bookmarker | EF

However, if the same operation is to be repeated a finite number of times, the
same content must be described in the Book for that number of times, which is
inefficient. Therefore, a string called Advance was introduced to eliminate
this problem. This Advance string shifts the readout position of the new
Bookmarker. For example, the new Bookmarker would be ”Fh” if the Advance was 2
in Table 8. The Advance was also updated at this time. Subsequently, the
string that followed the string interpreted as the new Bookmarker became the
new Advance. In this example, the new Advance is ”i” if the length of the
Advance is one. This Advance string is interpreted as a 64-decimal integer at
runtime.

As an example, the Book that repeats self-reproduction while forming a
tetrahedral body can be written based on the above, as shown in Fig. 1.

Figure 1:  Book repeatedly self-reproducing while forming tetrahedral bodies.

###  II.3 Neural Networks

Each cell has a neural network with only one hidden layer. The weights of this
neural network were determined by the genes and were not variable.
Additionally, the activation function was $\tanh$.

The output of this neural network is as follows:

  * •

Output $S_{out}$ to connected cells

  * •

Output $L_{out}$ to connected cells

  * •

Output $E_{out}$ to connected cells

  * •

Determine whether or not to read the Book

  * •

Determine the proportion of the contacted cell to be eaten

  * •

Determine whether or not to incorporate the Book of contacted cells

  * •

Determine whether or not to emit light

Here, $L_{out}$ is the output for changing the position relative to the
connected cell. The natural length of the springs connecting each cell
increases if the value is positive and magnitude is greater than a certain
threshold value. Conversely, the natural length of the spring decreases if the
value is negative and magnitude is greater than a certain threshold.
Therefore, this mechanism functions as a muscle in this virtual creature.
Additionally, this value is used as input to the neural network of the
connected cell.

$E_{out}$ determines the amount of energy sent to the connected cell. The cell
transports its own energy to the connected cell at a rate corresponding to the
magnitude of the value if this value is positive. This value is also used as
an input to the neural network of the connected cell.

In contrast, $S_{out}$ causes no action and its value is simply used as input
to the connected cell. This allows each cell to communicate with connected
cells. The input to this connected cell is multiplied by the variable
$S^{\prime}$ and not simply the value of the output $S$ as is. The variable
$S^{\prime}$ is updated according to the value of the output $S$, which is
expressed as:

$\displaystyle S^{\prime}\left(t+\Delta
t\right)=S^{\prime}\left(t\right)+{\Delta s}\times S\left(t\right)$ (1)

This system functions as variable weights in this neural network. In other
words, $S^{\prime}$ is the coupling strength of the neural network between the
connected cells, on which the feedback from Eq. (1) is applied. This is a
simplified version of Hebb’s rule, in which the firing of a neuron improves
the strength of the connections between neurons [20]. Here, ${\Delta s}$ is a
parameter that determines the simulation environment. This parameter was set
to $0.1$ for the simulations in this study.

The inputs to this neural network are as follows:

  * •

Output $S_{out}$ from the connected cell

  * •

Output $L_{out}$ from the connected cell

  * •

Output $E_{out}$ from the connected cell

  * •

Ratio of red in light hitting the cell

  * •

Ratio of green in light hitting the cell

  * •

Ratio of blue in light hitting the cell

  * •

Information that other cells have been contacted

A schematic diagram of this neural network is shown in Fig. 2.

Figure 2:  Schematic diagram of a neural network in one cell. The left and
right sides are the input and output, respectively. ${\rm cell}_{X}$ denotes
the $X$th connected cell, and $E$ and $L$ denote the energy and natural length
of the spring, respectively. LIGHT and TOUCH on the input side are the light
and cell information in contact with the cell, respectively. On the output
side, READ determines whether to read the Book, EAT determines whether to eat
the contacted cells, FUSION determines whether to take in the Book of the
contacted cells, and LIGHT determines whether to emit light.

###  II.4 Energy

Cells have a quantity called energy, whose value decreases at a fixed rate at
each simulation step. The cell will die if the value falls below a certain
amount, which mimics the metabolism of an organism.

The only source of energy in this world is light from the sun placed above the
field, and virtual creatures cannot increase their energy by themselves. A
cell can absorb light at a rate corresponding to its color and retain it as
energy.

There are three situations in which the energy of a cell increases.

  * •

When absorbing light

  * •

When eating other cells

  * •

When receiving energy from a connected cell

Conversely, there are five situations where cell energy is reduced.

  * •

When time has passed

  * •

When eaten by other cells

  * •

When sending energy to the connected cell

  * •

When generating a new cell

  * •

When emitting light

####  II.4.1 Energy consumption over time

As mentioned earlier, the cell’s energy decreases with each simulation step.
The cell energy $E$ after $\Delta t$ (one step) is updated, which is expressed
as:

$\displaystyle E\left(t+\Delta t\right)$
$\displaystyle=E\left(t\right)-\left(C\cfrac{A^{N_{c}}}{A^{N_{\rm
max}}}\right)E\left(t\right){\Delta t}$
$\displaystyle=E\left(t\right)-UE\left(t\right){\Delta t}$ (2)

where $N_{\rm max}$ is the maximum number of cells that can be connected to
the cell and $N_{c}$ is the number of cells that are currently connected to
the cell. In addition, $C$ and $A$ are parameters for adjusting energy
consumption, where $C$ is a real number greater than $0$ and $A$ is a real
number greater than $1$. In this simulation , $1.0$ was used for $C$, and $A$
was adjusted in real-time so that the number of cells in the field was $4000$.
This formula shows that more energy is consumed when more cells are connected.

In this simulation, there is no energy expenditure due to exercise. Here,
exercise means changing the natural length between connected cells. Also,
energy consumption is not considered for exchanging information between cells
using neural networks. In practice, however, it is more realistic to consider
this type of energy consumption. The energy consumption, according to the
number of connected cells mentioned above, is introduced to easily take this
energy consumption process into account.

####  II.4.2 Energy change when eating cells

Cells can eat the cells they are in contact with, but two rules apply. The
first rule is that if the number of connections of the cell to be eaten is
equal to or greater than its number of connections, the cell cannot be eaten.
The second rule is that if the number of connections of the cell that is about
to be eaten is smaller than its own, the more energy it can obtain at one
time.

The equation for the energy $\Delta E$ obtained by eating a cell is expressed
as:

$\displaystyle\Delta
E=\left\\{\begin{array}[]{ll}d\cfrac{N_{c}-N^{\prime}_{c}}{{N_{\rm
max}}}&(N_{c}>N^{\prime}_{c})\\\ 0&(N_{c}\leq
N^{\prime}_{c})\end{array}\right.$ (5)

where $d$ is the output of the aforementioned neural network. Moreover, it is
simply $0$ when it is less than $0$. In addition, $N_{c}$ is the number of
connections of cells attempting predation and $N^{\prime}_{c}$ is the number
of connections of cells about to be predated.

####  II.4.3 Energy change when a new cell is generated

Energy is required for one cell to generate a new cell. There are two
perspectives on this ”required energy”. One perspective is that the energy is
consumed by the generation of the cell, and the other is that the energy is
passed on to the newly generated cell. It is reasonable to assume that the
required energy is the sum of these two perspectives. However, the energy
consumed by the generation will not be considered in this simulation. Thus,
the only energy that the cell loses in generating a new cell is the energy it
passes to the new cell at the time of generation. Here, the magnitude of
energy passed to a new cell is based on the energy that the generated cell
could acquire after a sufficient amount of time.

When a cell obtains energy from only one light source, the obtained energy
converges to $E_{\infty}$ in a certain amount of time; $E_{\infty}$ can be
estimated as follows:

$\displaystyle E_{\infty}=\cfrac{\Delta E_{L}}{1-\exp\left[-\cfrac{U}{P\Delta
S}\right]}$ (6)

where $\Delta E_{L}$ is the energy obtained from one photon, $P$ is the amount
of light received per unit time and unit area, and $\Delta S$ is the area over
which the cell receives light. It is also assumed that the distance between a
light source and cell does not change. Details of this derivation are provided
in the Appendix.

Using Eq. (6), the energy $E_{\infty}^{\rm sun}$ that can be reached could be
predicted if the new cell to be generated was only supplied with energy from
the sun. This energy that was multiplied by a factor was defined as the amount
of energy that should be passed to the cell during generation. This implies
that cells that obtain more energy in the future will have higher generation
costs. This factor was set to 0.5 in the simulations performed here.

###  II.5 Environment

####  II.5.1 Field

Simulations were performed on a field of $32\times 32$ blocks containing
undulations. The maximum radius of the cell was set to approximately $0.16$
when the length of one side of this block was $1$. One example of a field is
shown in Fig. 3. The sun, which moves back and forth in one direction, is
located at the top of the field, and the light emitted from it is the only
source of energy in this field.

Figure 3:  Example of a field (left), top view (right-top), and side view
(right-bottom). The sun is placed at the top of the field, moving back and
forth in one direction.

####  II.5.2 Mutation

There are two types of mutations: one mutation can occur for all cells at
every simulation step, and the second mutation occurs only for the Book of new
cells during cell division. These mutation probabilities are represented by
$\alpha$ and $\beta$, respectively. The mutation occurring for all cells at
every simulation step may mutate against the Book or Bookmaker.

Four fields were independently calculated with different mutation
probabilities in this simulation and the virtual creatures were mixed on each
field after a specific time, as shown in the conceptual diagram in Fig. 4. The
length of the specific time (Time development) was set to $10^{6}$ steps.

Figure 4:  Conceptual diagram of mutation. The probability of a mutation
occurring for all cells at each step of the simulation is $\alpha$, and the
probability of a mutation occurring only for the new cell Book at cell
division is $\beta$. Four fields were prepared and assigned different mutation
probabilities to each field. After simulating a specific amount of time in
each field, the virtual creatures grown in each field are distributed to the
four fields and the simulation is rerun.

####  II.5.3 Efficiency for light energy conversion

The amount of light absorbed by a cell is expressed as the product of the
light intensity and light absorption coefficient of the cell, which consists
of three components: red, green, and blue. In other words, if the light
intensity is $I_{r}$, $I_{g}$, and $I_{b}$ for each component and the
respective absorptivities of the cell are $a_{r}$, $a_{g}$, and $a_{b}$, then
the amount of light $\Delta L$ absorbed by the cell can be expressed as:

$\displaystyle\Delta L=I_{r}a_{r}+I_{g}a_{g}+I_{b}a_{b}\quad.$ (7)

Here, the parameters of how much of each color is converted to energy must be
determined. The conversion efficiencies of the three components into energy
are expressed as $c_{r},c_{g},$ and $c_{b}$. Subsequently, the amount of
energy $\Delta E_{L}$ obtained from the light absorbed by the cell is
calculated using:

$\displaystyle\Delta
E_{L}=c_{r}I_{r}a_{r}+c_{g}I_{g}a_{g}+c_{b}I_{b}a_{b}\quad.$ (8)

The parameters in this simulation were set to $c_{r}=0.8,c_{g}=0.2,$ and
$c_{b}=0.8$. This approach is also used when determining the cost of
generating cells, as described in Section II.4.3. For example, white and black
cells have smaller and higher generation costs, respectively, as indicated
from the above equation. Therefore, this parameter is expected to affect the
color of future cells.

####  II.5.4 Parameters for connections

Cells can connect to surrounding cells, but it is unnatural to connect to
cells that are too far apart. Therefore, only cells within $1.95$ times their
radius $r$ were allowed to be connected. In addition, the natural length of
the connections between cells were varied according to the output of the
neural network, but this is also unnatural if it is stretched too long.
Therefore, this limit was set to $1.10$ times a cell’s own radius $r$. Lastly,
the connections will be broken if the distance between connected cells is
stretched for some reason and exceeds $2.00$ times the natural length.

##  III Results and Discussion

A virtual creature was simulated for self-reproduction that formed a
tetrahedron as its first virtual creature, as shown in Fig. 1. Additionally,
the kind of virtual creatures that emerged was observed.

The results of the investigation of the ecology of the two observed virtual
creatures are presented here, as well as a discussion of the results.

###  III.1 Dumbbell-shaped virtual creatures

In the simulations performed, single cells were generated in many cases that
were proliferated by simple division in the early stages. One example of this
is shown in Fig. 5.

Figure 5:  Example of a single cell proliferating by simple division.

Dumbbell-shaped virtual creatures could be seen after continuing the
simulation for some time from this point, as shown in Fig. 6. The actual
appearance of the virtual creatures is shown on the left, and a schematic of
the self-reproduction is shown on the right. This dumbbell-shaped morphology
was first seen at approximately $15\times 10^{6}$ steps after the start of the
simulation (top row in Fig. 6). At the $193\times 10^{6}$ step, which was more
than $10$ times longer, the morphology had not changed significantly, merely
in color and size (bottom row in Fig. 6). As mentioned in Section II.5.3, the
energy conversion efficiency was set high for red and blue light, so this
color change was considered to be an adaptation that reduced the absorption
rate of green, which had a low energy conversion efficiency.

Figure 6:  Dumbbell-shaped virtual creatures evolved from a single cell. The
actual appearance of the virtual creature is shown on the left, and a
schematic of the self-reproduction is shown on the right.

Focusing on the morphogenesis process of this dumbbell-shaped virtual
creature, the white cells were born between the second and third steps and
disappeared between the fourth and fifth steps. This disappearance was caused
by the green cells that were connected to white cells eating the white cells.
It was considered that this seemingly inexplicable process, in which the green
cells ate the cells they generated, prevented the green cells from being eaten
by other virtual creatures. As discussed in Section II.4.2, cells with a high
number of connections can eat cells with a low number of connections. Thus,
without this white cell, the green cell at the edge would be vulnerable to
predation by other virtual creatures because it only has one connection. This
white cell increases the number of connections of the green cell and works as
a protector to physically prevent other virtual creatures from approaching. In
fact, the protector is changing to white and large, as shown in Fig. 6. This
is a reasonable change when trying to expand the protector to keep predators
away, at the lowest possible generation cost.

To confirm this role, a virtual creature was prepared by partially editing the
Book of this dumbbell-shaped virtual creature to remove the process that
generated the white cells. Specifically, ”SgSEmEefaAe3” in the Book was edited
to ”SgSEmEdfdAe3”. The differences in this morphogenetic process are shown in
Fig. 7. This virtual creature with omitted protector generation had a superior
proliferation rate compared to the original dumbbell-type virtual creature
because of its short self-reproduction cycle.

Figure 7:  Comparison of the morphogenesis process of a dumbbell-type virtual
creature (left) and a virtual creature whose Book was edited to remove the
process of protector generation (right).

These two types of virtual creatures were placed in the same field and changes
to their respective populations were observed, as shown in Fig. 8. Note that
the simulation was run with a fixed $A$, referring to the simulation results
of the dumbbell-shaped virtual organism before editing. The role of parameter
$A$ was discussed in Section II.4.1. As time passes, the populations for
virtual creatures without protectors will decline and eventually become
extinct.

Figure 8:  Population changes of a dumbbell-shaped virtual creature with a
protector (red) and virtual creature omitting the process of protector
development (blue). The top panel shows the change in the respective
populations with time evolution, while the bottom panel visualizes the
distribution in the field for the three time periods.

This result strongly suggests that the white cells function as protectors. It
was considered that the morphology was acquired from the single-celled state
shown in Fig. 5, reflecting individual interactions.

###  III.2 Reticulated virtual creatures

The dumbbell-shaped virtual creatures discussed in Section III.1 contained two
and three cells per individual. In this section, reticulated virtual creatures
with a larger number of cells that make up one individual will be discussed.
Note that this reticulated virtual creature was observed in simulations
performed independently of the simulation presented in Section III.1. The only
difference between the two simulations is the seed value of the random number,
which affected the formation of the terrain, mutations, and locations where
cells and photons were generated.

####  III.2.1 Number of connections and energy transport

As noted in Section II.4.1, virtual creatures with a higher number of
connections consume more energy. In order to increase the number of cells that
make up one individual, the virtual creature must acquire a mechanism for
efficiently distributing energy throughout its body. The reticulated virtual
creature shown here has acquired such a mechanism. The change in the number of
connections and energy transports over the entire field versus simulation time
is shown in Fig. 9.

Figure 9:  Variation of the number of connections and energy transport times
across the field versus simulation time. The error bars indicate invariant
standard deviations. ($\mathrm{I}$), ($\mathrm{I}\mathrm{I}$),
($\mathrm{I}\mathrm{I}\mathrm{I}$), ($\mathrm{I}\mathrm{V}$), and
($\mathrm{V}$) are labels given to times with characteristic energy transport
and number of bonds.

The energy transport between connected cells was approximately $0$ until near
the simulation time ($\mathrm{I}\mathrm{I}$), and the number of connections
fluctuated widely between $0$ and $2000$.

This fluctuation may be because virtual creatures with many connections were
born but could not stably survive because the energy was not distributed
properly. An example of a virtual creature from Fig. 9 ($\mathrm{I}$) is shown
in Fig. 10. Only the bonding is visualized on the right side of the figure and
it has a more complex morphology than the dumbbell type. It appears as if pink
legs are growing against a yellow body, and these legs are being violently
moved.

Figure 10:  Example of a virtual creature from Fig. 9 ($\mathrm{I}$). The left
image shows a cell and its bonding, while the right image shows only the
bonding.

The number of energy transports increased in proportion to the number of
connections at Fig. 9 ($\mathrm{I}\mathrm{I}$). This is the result of the
virtual creatures obtaining the ability to distribute energy more efficiently.
In fact, the number of connections was also stable from this point on. The
virtual creatures seen on the field at times ($\mathrm{I}\mathrm{I}$),
($\mathrm{I}\mathrm{I}\mathrm{I}$), ($\mathrm{I}\mathrm{V}$), and
($\mathrm{V}$) from Fig. 9 are shown in Figs. 11 (a), (b), (c), and (d),
respectively. The network grew larger as simulation time progressed. In
addition, the color of the cells was accordingly closer to white, which had a
small generation cost, as noted earlier. This was considered as a survival
strategy in which the energy that a single cell could acquire from light was
reduced, thus creating a wide network and sharing of the energy across the
entire network.

Figure 11:  Virtual creatures seen on the field: (a), (b), (c), and (d)
represent times ($\mathrm{I}\mathrm{I}$), ($\mathrm{I}\mathrm{I}\mathrm{I}$),
($\mathrm{I}\mathrm{V}$), and ($\mathrm{V}$) from Fig. 9, respectively. The
network grows larger and whiter in color as the simulation time progresses.

####  III.2.2 How to spread offspring over a wide area

This reticulated virtual creature had a maximum of three connections extending
from a single cell. Furthermore, it was expanding the fourth cell and
disconnecting it simultaneously. A schematic diagram of this situation is
shown in Fig. 12.

Figure 12:  Schematic diagram of the cell disconnection: Step 1 - original
cell, Step 2 - a fourth cell is expanded, Step 3 - the connection distance
between the expanded and source cell is reduced, and Step 4 - the bond is
broken when the reduction reaches the distance limit between the cells, and
the fourth cell is separated.

The cells expanded in Step 2 are pulled back to the cell from which they were
generated. The natural length reduction of this spring is derived from the
output signal of the neural network, which is described in Section II.3. Here,
the natural length can be shortened to zero, but they cannot completely
overlap each other because of the size of the cells. Therefore, contact
between cells caused the spring to be stretched as the natural length of the
spring was shortened. This connection will eventually break because the bond
is designed to break when the distance between cells is twice the natural
length, as mentioned in Section II.5.4. Moreover, disconnected cells are
separated by repulsion. This mechanism is an essential function of this
virtual creature to push offspring farther away.

It is worth noting that this disconnection is not a behavior derived from the
Book, it is caused by a neural network. This is because this neural network-
triggered disconnection can be achieved flexibly depending on the surrounding
circumstances. In this case, the disconnection was performed under the
condition that the number of connections was four. The reticulate virtual
creature could have acquired the survival strategy whereby reaching three
bonds was enough for growth and thus it was better to move to the procreation
phase.

####  III.2.3 Energy transport and parameters $\Delta s$

As mentioned earlier, the energy distribution was significant in a virtual
creature composed of a large number of cells. The amount of energy to
distribute was determined by the neural network presented in Section II.3. How
virtual creatures are affected when one parameter $\Delta s$ that determines
the behavior of the neural network is changed will now be discussed. The
simulations here were run with $A=2.0$, as discussed in Section II.4.1.

This reticulated virtual creature evolved and grew in an environment where
$\Delta s=0.1$. First, the amount of available energy transport capacity in
this setting was checked.

This experiment was performed using the following procedure.

First, one cell was sampled from Fig. 11 ($d$) and fixed in the center of the
flat field. Second, energy was continually provided only to that cell so that
the cell continued to hold a certain amount of energy. This energy was set to
be twice the energy required to produce the same cell. Third, cutting off
light from the sun was simulated, and only energy from this fixed cell was
supplied to the other cells. Even if this fixed cell generates other cells,
the generated cell will die if the fixed cell cannot successfully transport
energy. The number of cells in the field equilibrated after the simulation was
run for some time. The reticulated virtual creatures at this time are shown in
Fig. 13.

Figure 13:  One cell from Fig. 11 ($d$) was sampled and fixed in the center of
the flat field, and the simulation was run with constant energy applied only
to that fixed cell. The magnitude of this energy was set to twice the energy
required to produce the same cell. The left panel shows only the cell bonding,
while the right panel visualizes the energy of each cell. $\Delta s$ was set
to $0.1$.

The reticulated virtual creature could form a large body composed of many
cells, even though only a fixed central cell was supplied with energy. This
result indicates that energy transport was conducted efficiently.

Next, the simulation results when the parameter was changed to $\Delta s=0.0$
are shown in Fig. 14.

Figure 14:  One cell from 11 ($d$) was sampled and fixed in the center of the
field, and the simulation was run with constant energy applied only to that
fixed cell. The magnitude of this energy was set to twice the energy required
to produce the same cell. The left figure shows only the cell bonding, while
the right figure visualizes the energy of each cell. $\Delta s$ was set to
$0.0$.

Compared to Fig. 13, the network spread was smaller and $\Delta s=0.0$ caused
problems in the information transfer between cells, indicating that the energy
transport did not work well.

Lastly, $\Delta s$ was set to $-0.1$ for the reticulated virtual creature from
Fig. 13, and the results are shown in Fig. 15.

Figure 15:  $\Delta s=-0.1$ for the reticulated virtual creature from Fig. 13.

In this case, the reticulated virtual creatures were scattered because the
change of $\Delta s=-0.1$ malfunctioned the diffusion process that was
discussed in Section III.2.2.

These results indicate that Hebb’s rule, which was incorporated in a
simplified manner, had a significant impact on energy transport and the
diffusion of offspring. Specifically, energy transport exhibited a problem and
the size of the reticulated virtual creature was reduced if $\Delta s$ was set
to $0.0$ and grown without updating the coupling strength. In addition,
providing inverse feedback on the coupling strength by setting $\Delta s$ to
$-0.1$ caused a collapse that may be due to a malfunction of the offspring
diffusion process. This result demonstrates the importance of cell-to-cell
communication in reproduction and development.

##  IV Conclusion

This study proposed a new model of artificial life that could handle
reproduction, development, and individual interactions in a composite way.
Furthermore, two virtual creatures were introduced in this model.

The reticulated virtual creature had an interesting way of reproduction in
which it detached parts of its own body and separated far from them. The
virtual creature also grew a body composed of many cells by efficiently
sharing energy, which is a more advanced developmental process than that in
earlier tetrahedral virtual creatures. Regarding individual interactions, the
dumbbell-shaped virtual creature acquired a form of protection by expanding a
protective organ during division, making itself less susceptible to predation
by other virtual creatures.

However, several properties were not seen in this simulation. For example, all
the virtual creatures seen in this study were self-reproductions through
asexual reproduction. Additionally, there was no evolution of vertical growth
or active movement. It was assumed that one of the causes for this was simply
the short simulation time, but the possibility that the model was not designed
to easily produce such virtual creatures cannot be ruled out. Another problem
was that the field used in this simulation was not large enough compared to
the size of the cell. Therefore, there were almost exclusively the same
virtual creatures in the same field as the simulation proceeded. In addition,
the effects of field undulation geometry on evolution and changes in Book
length over the course of evolution were not researched. Further studies are
needed on these points.

##  V Acknowledgments

I would like to thank Hirokazu Nitta for his feedback, as it greatly helped
improve the paper as a whole, especially the conclusion section. The advice
and comments provided by Soichi Ezoe have also been a great help in improving
the methodology section. I am also deeply grateful to Kazumasa Itahashi.
Kentaro Yonemura also read the paper carefully and made some helpful comments,
especially about the wording on the paper.

## Appendix

The energy $E$ of the cell after $\Delta t$ seconds (one step) is updated as
follows:

$\displaystyle E\left(t+\Delta t\right)$
$\displaystyle=E\left(t\right)-\left(C\cfrac{A^{N_{c}}}{A^{N_{\rm
max}}}\right)E\left(t\right){\Delta t}$
$\displaystyle=E\left(t\right)-UE\left(t\right){\Delta t}\quad,$ (9)

where $N_{\rm max}$ is the maximum number of cells that can be connected to
the cell and $N_{c}$ is the number of cells that are currently connected to
the cell.

This can also be expressed as:

$\displaystyle\cfrac{E\left(t+\Delta t\right)-E\left(t\right)}{\Delta t}$
$\displaystyle=-UE\left(t\right).$ (10)

If $\Delta t\to 0$, the above equation can be written as:

$\displaystyle\cfrac{d}{dt}E\left(t\right)$ $\displaystyle=-UE\left(t\right).$
(11)

This equation can be easily solved, which results in:

$\displaystyle E\left(t\right)$ $\displaystyle=E_{0}e^{-Ut},$ (12)

where $E_{0}$ denotes $E\left(0\right)$.

The energy obtained from a photon is calculated from the intensity $I$ of the
light, light absorption rate $a$ of the cell receiving the light, and energy
conversion efficiency $c$ of the light, which is expressed as:

$\displaystyle\Delta
E_{L}=c_{r}I_{r}a_{r}+c_{g}I_{g}a_{g}+c_{b}I_{b}a_{b}\quad,$ (13)

where the subscripts $r$, $g$, and $b$ refer to the red, green, and blue
components, respectively. Therefore, when a single cell receives a photon at
intervals of $T$ seconds on average, the change in the energy of that cell is
expressed as:

$\displaystyle E\left(\left(n+1\right)T\right)=E\left(nT\right)e^{-UT}+\Delta
E_{L}.$ (14)

Here, the numerical sequence is considered, which is expressed as:

$\displaystyle f_{n+1}=rf_{n}+b\quad.$ (15)

The following equation is obtained as a general term:

$\displaystyle
f_{n}=\left(f_{0}-\cfrac{b}{1-r}\right)r^{n}+\cfrac{b}{1-r}\quad,$ (16)

where $|r|<1$.

If $E\left(t\right)$ is regarded as a sequence of numbers defined by the
graded Eq. (14), and $f_{n}=E\left(nT\right),r=e^{-UT},b=\Delta E_{L}$ in Eq.
(16), then:

$\displaystyle E\left(nT\right)=\left(E_{0}-\cfrac{\Delta
E_{L}}{1-e^{-UT}}\right)e^{-nUT}+\cfrac{\Delta E_{L}}{1-e^{-UT}}\quad,$ (17)

where $0<UT$. Therefore, $e^{-UT}<1$.

$E_{\infty}$ can be estimated as energy when enough time has passed and by
using $n\to\infty$, which is expressed as:

$\displaystyle E_{\infty}=\cfrac{\Delta E_{L}}{1-e^{-UT}}\quad.$ (18)

Next, $T$ is calculated.

The emitting cell releases an amount of light proportional to the square of
its radius $R$ during a unit time. Thus, the amount of light $P$ received per
unit area during a unit time at a distance $h$ is expressed as:

$\displaystyle P=\cfrac{DR^{2}}{4\pi h^{2}}.$ (19)

If the area over which a cell receives light is $\Delta S$, then the amount of
light that a cell receives per unit time can be expressed as $P\Delta S$. This
value is smaller than $1$ in the simulations performed here. Therefore, it can
be regarded as the probability $p$ of a cell receiving one light per unit
time, which is expressed as:

$\displaystyle p=P\Delta S.$ (20)

Subsequently, the average time $T$ that a photon hits can be expressed as:

$\displaystyle T$
$\displaystyle=\sum_{n=1}^{\infty}n\left(1-p\right)^{n-1}p=\cfrac{1}{p}.$ (21)

Finally, the following is obtained:

$\displaystyle E_{\infty}=\cfrac{\Delta E_{L}}{1-\exp\left[{-\cfrac{U}{P\Delta
S}}\right]}.$ (22)

## References

  * Sims [1994a] K. Sims, in  _Proceedings of the 21st Annual Conference on Computer Graphics and Interactive Techniques_, SIGGRAPH ’94 (Association for Computing Machinery, New York, NY, USA, 1994) p. 15â22.
  * Lehman and Stanley [2011] J. Lehman and K. O. Stanley, in  _Proceedings of the 13th Annual Conference on Genetic and Evolutionary Computation_, GECCO ’11 (Association for Computing Machinery, New York, NY, USA, 2011) p. 211â218.
  * Auerbach and Bongard [2012] J. E. Auerbach and J. C. Bongard, in  _Proceedings of the 14th Annual Conference on Genetic and Evolutionary Computation_, GECCO ’12 (Association for Computing Machinery, New York, NY, USA, 2012) p. 521â528.
  * Cheney  _et al._ [2014] N. Cheney, R. MacCurdy, J. Clune, and H. Lipson, SIGEVOlution 7, 11â23 (2014).
  * Lipson and Pollack [2000] H. Lipson and J. B. Pollack, Nature 406, 974 (2000).
  * Hornby  _et al._ [2003] G. Hornby, H. Lipson, and J. Pollack, IEEE Transactions on Robotics and Automation 19, 703 (2003).
  * Sims [1994b] K. Sims, Artificial Life 1, 353 (1994b).
  * Stanley [2007] K. O. Stanley, Genetic Programming and Evolvable Machines 8, 131â162 (2007).
  * Schramm  _et al._ [2011] L. Schramm, Y. Jin, and B. Sendhoff, in  _Advances in Artificial Life. Darwin Meets von Neumann_ , edited by G. Kampis, I. Karsai, and E. Szathmáry (Springer Berlin Heidelberg, Berlin, Heidelberg, 2011) pp. 27–34.
  * Joachimczak and Wróbel [2012] M. Joachimczak and B. Wróbel, in  _Proceedings of the 14th Annual Conference on Genetic and Evolutionary Computation_, GECCO ’12 (Association for Computing Machinery, New York, NY, USA, 2012) p. 561â568.
  * 201 [2014] _Fine Grained Artificial Development for Body-Controller Coevolution of Soft-Bodied Animats_, ALIFE 2022: The 2022 Conference on Artificial Life, Vol. ALIFE 14: The Fourteenth International Conference on the Synthesis and Simulation of Living Systems (2014) https://direct.mit.edu/isal/proceedings-pdf/alife2014/26/239/1901279/978-0-262-32621-6-ch040.pdf .
  * Joachimczak  _et al._ [2015] M. Joachimczak, R. Kaur, R. Suzuki, and T. Arita (2015).
  * Ito  _et al._ [2013] T. Ito, M. L. Pilat, R. Suzuki, and T. Arita, Artificial Life and Robotics 18, 36 (2013).
  * Neumann and Burks [1966] J. V. Neumann and A. W. Burks,  _Theory of Self-Reproducing Automata_ (University of Illinois Press, USA, 1966).
  * Hutton [2010] T. J. Hutton, Artificial Life 16, 99 (2010), https://direct.mit.edu/artl/article-pdf/16/2/99/1662659/artl.2010.16.2.16200.pdf .
  * Banks [1971] E. R. Banks (1971).
  * Koza [1994] J. R. Koza, in  _Artificial Life III_ (Addison-Wesley, 1994) pp. 225–262.
  * Langton [1984] C. G. Langton, Physica D: Nonlinear Phenomena 10, 135 (1984).
  * Sayama [1999] H. Sayama, (1999).
  * Hebb [1949] D. O. Hebb,  _The organization of behavior: A neuropsychological theory_ (Wiley, New York, 1949).