ArticlePDF Available


Artificial chemistries are presented. An informal definition is first introduced, followed by a presentation of the various kind of artificial chemistries found in literature. We continue explaining the difference between a qualitative model and a quantitative one. We then explain how a.c. presents a qualitative model, more than a quantitative one. The common measures used to follow the behaviour of an a.c. experiment are then introduced. Artificial chemistries generate particular algebraic structures: organisations. Organisations are then defined, and some of its basic algebraic properties presented. The general behaviour of an experiment is then presented. The article ends with an example of a particular artificial chemistry.
Artificial Chemistries
Pietro Speroni di Fenizio
researcher, Odysseus s.r.l.
Artificial chemistries are presented. An informal definition is first introduced,
followed by a presentation of the various kind of artificial chemistries found in
literature. We continue explaining the difference between a qualitative model and a
quantitative one. We then explain how a.c. presents a qualitative model, more than a
quantitative one. The common measures used to follow the behaviour of an a.c.
experiment are then introduced. Artificial chemistries generate particular algebraic
structures: organisations. Organisations are then defined, and some of its basic
algebraic properties presented. The general behaviour of an experiment is then
presented. The article ends with an example of a particular artificial chemistry.
What is an Artificial Chemistry
An artificial chemistry (a.c.) is a tool. It is a type of computer model that can be used
to simulate different types of systems. The aim of those simulations is, as we shall
see, often quite different from the average type of simulation. Aiming more for
qualitative results, than for quantitative ones. The type of systems that has been
modelled with a.c. range from chemistry, biochemistry [McCaskill, 1998], ecology,
sociology, linguistic [Dittrich, Ziegler, Banzhaf, 2002]. Also a.c. has been used for
practical purposes for example to model a robot brain [Ziegler & Banzhaf, 2001].
The definition
Artificial chemistries have often a similar structure, with few important differences
from model to model. We will here list the major components, leaving for later the
discussion on the possible differences that can be present. And how those differences
could affect the outcome of the model. The general element that are always present in
an artificial chemistry are the molecules, the soup and the interaction rule [Dittrich,
2001]. In simple terms, an artificial chemistry is generated by a multiset of molecules
in a well-stirred reactor (called soup). At every time step some molecules are
randomly sorted. Those molecules interact generating some new molecules. Those
new molecules are then inserted in the soup, while some others (sometimes the
interacting molecules, sometimes others) are eliminated. We will now try to express
this process formally.
The molecules
In each a.c., the possible molecules range within a very definite space: the space of all
possible molecules. This space can be finite or infinite [Speroni et al. 2000]. In some
cases the space is not only finite, but so small that all the possible molecules can be
listed [Ono and Ikegami, 2000], in some others this is practically or even theoretically
The soup
In every moment only a finite multiset of the possible molecules are present in the
system (a multiset is a set where the same element can appear more than one time).
This multiset will be called soup. In some a.c. the size of the soup (number of
molecules inside it, also called population size) will be fixed [Banzhaf 1994], in some
others varies as the experiment proceeds [Speroni di Fenizio, 1999].
The interaction rule
Artificial chemistry usually proceeds in discreet steps. Is not possible to give a totally
general rule that is valid for all artificial chemistries on what happens at each time
step. We will here present a common interaction rule.
Let S be the space of all possible molecules, let * be an interaction rule that takes n
elements (thus of arity n) and that returns mS×S××S molecules. That is that returns a
multiset of molecules, where the size of the multiset depends only upon the particular
n molecules taken. For some particular choices of molecules the multiset can also be
*: S×S××Sn{S, S,… ,Sm}∪∅.
Often n is equal to two and the returned multiset is restricted to a single molecule.
In those cases the interaction rules is restricted to:
*: S×S S ∪∅.
Normally at every time step n molecules are randomly chosen. The n molecules
interact and generate their multiset of molecules.
What happens next is different from a.c. to a.c. In some system the generating
molecules (the original n elements) are eliminated from the soup and the new multiset
is inserted instead [Speroni di Fenizio, 1999, 2000].
In other cases (especially if the n elements generate a singular molecule) another
random molecule is extracted, eliminated from the soup and the generated molecule is
inserted instead. This is in fact the most common interaction rule [Fontana, 1992],
[Bersini, 2000][Ono, & Ikegami, 2000] [Dittrich, Ziegler, & Banzhaf, 1998].
In this case, the complete interaction rule should then be expressed as:
*:(S,S,S) (S,S,S),
with a, b and x random molecules on S and ϕ an operation that goes from S×S to S
(ϕ:S×SS) this can be expressed as,
*:(a, b, x) (a, b, ϕ(a,b)).
It iss obvious that in this case the population size of the system will remain constant.
The power of Artificial Chemistries
The problem: the barrier of objects
Often the intrinsic limits of a method are invisible to the people who use the method
themselves. This is the case with modern scientific mathematical modelling, and the
concept of objects. In our time, nearly every serious scientific model of a system is
quantitative by its own nature. Once defined what are the objects present in a system,
its aim is to study the quantitative relations between those objects: how many ‘a’
respect to how many ‘b’. To permit such study we need to know which element are
present in the system at any given time, and how they interact with each other. The
classical ecological model ‘fox and rabbit’ requires that we know that two type of
elements can be present in the system at any given time. We also need to know that
the number of foxes and the number of rabbits follow strictly precise mathematical
laws. We can then write a differential equation, solve it analytically, when possible,
or through a computer simulation, when not possible, and examine the solution.
The a priori supposition that should not be overlooked here is that we need to know
what objects will be active in the environment of our system. This has always been
true for scientific research, up to now, and scientific research has, consciously or
unconsciously, limited itself to systems on which the reacting elements were known.
Yet those are not all the possible scenario, we might be interested in studying a
system on which we simply lack the knowledge of some of its elements. Even worse,
we might be studying a system that can just not be limited inside a finite set of
differential equations.
An example will clarify this last point. Suppose you wish to study evolution. The
elements of your model will then be the different animals existing in the ecological
scenario. The aim of your model would be to know which animals would be present.
More ambitious than this you might also wish to know how many animals of a given
type would be present. You don’t know a priori which animals will be present and
which absent. You don’t also know the particular relations that will then appear
between those animals. How do a hare relate to a dinosaur? Is clear that such model
would be qualitative more than quantitative. We first want to know which animals are
present. And then, in case, their quantitative relations. 3 centuries of dynamic systems
don’t help us in our aim. We can’t write even the first differential equation if we lack
the information of which elements are present.
The problem was clearly posed by Walter Fontana and Leo Buss [Fontana and Buss,
1996] in a paper that placed the theoretical foundations to Artificial Chemistries.
In Artificial Chemistries, we first consider the qualitative aspects of a problem, before
considering the quantitative relations between its components.
Every set of molecules, present in the reactor, defines a set of differential equations.
Those molecules define such a set, and if the set of molecules is algebraically closed
we could study its differential equations and understand its quantitative dynamic.
Once the closed set of molecules is defined is possible to study its differential
equations. Yet, much of the questions that interests researcher who study artificial
chemistries have little to do with quantitative dynamic, and more to do with its
qualitative one. The stable structures generated by artificial chemistries, the stable sets
of molecules, are called organisations. Understanding which organisation will appear
is equivalent to understanding the qualitative solution of an Artificial chemistry (i.e.
which animals are present). Understanding the relative quantity of the molecules is
instead equivalent to understanding the quantitative behaviour of the system.
The questions that researchers that study Artificial Chemistries pose themselves are:
"Given an artificial chemistry, how can I know a priori which organisations are
possible and which are not possible?"
"How can I know which organisations are probable and which are improbable?"
"How can I define an a.c. to generate a particular organisation?"
“How stable are organisations?”
“Can the complexity of an organisation be defined?”
“How is possible to generate an artificial chemistry which moves from organisation to
organisation in a never ending growth of complexity?” [Bedau et al. 1997]
But of course also the quantitative questions are present as well:
“Given an a.c. in a particular organisation, how many stable (attractive) states are
present inside it?”
The possibility to study an AC with ordinary differential
Of course, artificial chemistries can be studied also with Ordinary Differential
Equations. ODE can be applied when the number of molecule type, diversity, is very
small and the population size is high. If the diversity is too high the equations become
not solvable due to the high non-linearity intrinsic in the system. When the population
decreases the system becomes increasingly dependent upon the discreet nature of its
components. Then having one molecule of a particular type inside the system or
having none can make a tremendous difference. Is just not meaningful to consider a
continuous model where there is half of that molecule (nor is clear which half should
we then consider) [Dittrich, 2001].
The different type of AC and their relative properties
Depending on some essential elements a.c. can develop in different ways. This
includes the number of possible molecules. The type of operation used, the possibility
from the system to have an influx of new molecules, or an outflow of old ones.
On a finite or infinite support
The first important element is the size of the support. In other words how vast is the
space of the possible molecules. The support can be finite or infinite. Of course, if the
support is finite, but so wide that the whole space of all possible molecules is never
totally explored the dynamic will resemble the dynamic of an artificial chemistry with
an infinite support. In fact, in every experiment simulated inside a computer, the
support will necessarily be finite. For this reason when we speak of an infinite support
we are actually speaking of a ‘very large finite support’, limited only by the memory
of the computer.
The operation
We presented before the interaction rule between n molecules. In such interaction rule
we used a particular operation that given n molecules would return us a particular
multiset of molecules. Lately we would insert the multiset in the system following a
particular procedure. We now will discuss the various possible operations between the
molecules. We will treat, for simplicity, only the case where n is equal to two. The
more general case can be trivially derived from that.
Give two molecules the reaction between them can be (a) randomly generated, (b) can
follow a previously defined algorithm, (c) or can be chosen (through an algorithm or a
human being) to reach a particular result.
For every pair of molecules is also possible that no reaction is possible. This is
normally indicated by writing that the reaction of the two molecules will give rise to
Random Operation
Random a.c. are the most simple to do. Every time two elements interact, the result is
randomly chosen from a set of possible results. If the support is finite, the result will
just be one (or more) molecules from the support. If instead the support is not finite,
then, with a certain probability, a new molecule would be generated and added to the
soup. This molecule would then increase the complexity of the artificial chemistry
[Bagley and Farmer, 1992].
Algorithmic Operation
Here the molecules just follow a low-level logic [Banzhaf, 1994][Ikegami and
Hashimoto 1995][McCaskill, 1988][Suzuki and Tanaka, 1998]. An example of this is
shown later, where molecules are combinators. Combinators, similar to lisp programs
have universal computation capability, and applied one to the other generate new
combinators, thus filling the infinite reaction table in an interesting non-random way.
Following an Operation Defined by a Human Being or through a
Genetic Algorithm
This method is normally used when the number of elements is fixed. Here the whole
table of all possible reactions is generated [Suzuki & Tanaka, 1998][Ziegler &
Banzhaf, 2001]. This table can be generated in many ways. The table then defines
what would be the reaction out of every possible interaction. Of course, if the
elements were just inserted in the table randomly the result would not be different
from the previous case. Yet is possible to define some reactions in particular ways and
fill the rest of the table in a random way.
As we study artificial chemistries is important to understand which possible stable
states can be reached. The basic element is an organisation [Fontana 1992][Fontana
and Buss, 1996][Speroni at al. 2000][Dittrich 2001].
From an algebraic point of view an organisation is a pair < S, * >, with S a set of
molecules and ‘*’ an operation from S1, S2,…, SnS such that S is a closed and self-
maintaining set.
A self-maintaining set (respect to an operation) is a set such that for every ‘a’ in S
exists b1, b2, …, bn with (b1, b2,…, bn)* a. So every element of S can be regenerated
from other elements of S.
Note that we don’t make any particular requirement on the nature of the b1, b2,…, bn.
A closed set (respect to an operation, *) is a set such that for every b1, b2,…, bn in S
(b1, b2,…, bn)* is in S.
Therefore, from the closure we have that the elements can generate nothing outside
the set, while form the self-maintenance we have that the whole set can be
dynamically regenerated.
The two properties are independent and many sets are only closed or only self-
maintaining. The interested reader is referred to [Speroni et al. 2000] for a deeper
study on the basic theory of organisations.
Finite and Infinite Organisations
Depending on the number of different elements in the organisation, an O. will be
finite or infinite.
Relations: Union, Intersection
Few basic properties of organisations can be proven:
Given a set of elements, this uniquely defines an organisation generated from S. As a
corollary of this becomes trivial to prove that intersection (union) of organisations
uniquely defines an organisation. Therefore, the set of all the possible organisations,
with the operation of intersection and union generates a lattice [Speroni at al. 2000].
In the picture that follows is possible to see an example of lattice generated by an
artificial chemistry.
General Behaviour
When an artificial chemistry is permitted to run for a certain number of generations it
tend to reach some equilibrium. At the beginning an experiment tend to explore the
space of the possible molecules. This time is often referred to as the transition time.
After the transition time the system settles around a stable set of molecules (an
organisation) . If no new molecules are then added, the behaviour of the system can
often (at this point) be predicted through the equivalent ODE.
Depending on the support of the artificial chemistry, the transition time can be shorter
or longer. If the system can contain many different molecules, this phase can be much
longer. If the system contain an infinite number of possible molecules, and new
molecules are inserted then is possible that no organisation is stable. The system is
always in danger of reacting with the wrong external molecule and slide into a new
transition phase with unpredictable results [Speroni & Banzhaf, 2001].
Point attractor
As we said before, an organisation can be finite or infinite. Sometimes finite
organisations are very small with few or only one element. Often only one element is
present and the whole system reaches this tiny organisation and doesn’t change
Qualitative and Quantitative results from the organisation
point of view
We should always remember that an organisation does not represent a state of the
system, but rather a set of differential equations. An organisation is a sort of multi-
state, where many different dynamic attractor states are possible. In other words, once
the system has reached a particular organisation, with molecules {a, b,…,z}, the
relative amount of a, b, …, and z is still to be defined. Two systems can both reach the
same organisation, but one with a particular quantitative relation between a, b, and
z, and another with a totally different one. Therefore, while the organisation reached
represents the qualitative dynamic of the system (the active equations) the dynamic
equilibrium represents the quantitative one.
It is interesting to note how although when an organisation has been found the system
is still at risk of falling into a new transition phase. It would be easier to conclude that
this can happen only when new molecules are inserted (from outside or through a
mutation). This is unfortunately not true, at least theoretically. We have explained
before how organisations don’t form a partition of the state space. Organisations form
a lattice and all the organisations are sub-organisation of a universal organisation U
which holds all the possible molecules that can be generated in some ways.
Sometimes the organisation present in the system is U itself. This can happen, for
example, when U can be generated by a small set of molecules (like in the example
presented later). When this happen no information can unfortunately be extracted
from the algebraic study of the solution. We are then left with its quantitative study.
The author is not aware of any article that faces and tries to solve this situation.
Measures of an AC
Many global measures can be taken of an a.c. Some are general [Dittrich, 2001],
while others can be applied only on particular artificial chemistries [Speroni Banzhaf,
2001]. Here is a list of the most common ones.
Population Size
When the number of molecules is not fixed, its size is always an important measure.
Even when is fixed, the behaviour can be quite different between two different
experiments depending on the relative population size. In general the bigger
experiment will follow more closely the behaviour predicted (when is possible) by the
Ordinary Differential Equations. While this might induce to think that a.c. should just
be studied through ODE, this is wrong. There are some specific cases where ODE just
can’t be applied successfully. In general this is true:
when the number of possible molecules is too big (or infinite);
when an influx of random molecules is added to the system, disturbing its predictable
in addition, when the size of the system is small or if the system contains some
molecules with a strong non-linear behaviour.
In all those cases, an Ordinary Differential Equation will just not solve the system.
For example, how should we interpret that a molecule type is present with ½
molecules? A particularly important question in a system where a single molecule can
have a devastating effect due to its intrinsic non-linear dynamic.
After the population Size the most common measure taken is the diversity, or the
number of different molecule types present in the system. Often a system will limit
itself to one or few types of molecules present. Some systems, instead, reaches a state
where the diversity is not fixed but fluctuates. This can be caused by an external
outflow, but also by the inner dynamic of the molecules that are present.
Time in Generations
All those measures are normally plotted against time, and time is in general measured
in generations. If the population size is fixed a generation is considered to be passed
when ‘population size’ interactions has happened.
Shannon Entropy
Shannon Entropy on the population of the various molecule types is also a common
measure. As soon as an organisation falls into an organisation the Shannon entropy
falls. Yet, two different organisations tend to have their entropy vary through different
This measure indicates the percentage of interaction, which give rise to new
molecules. This is obviously an important measure, since each molecule introduce a
higher complexity in the system.
In some studies a molecule is considered new if it never appeared in the reactor, so if
it is ‘absolutely new to the experiment’. In others experiments a molecule is
considered new only if no other molecule of that kind is present in the experiment in
that particular moment. Both types of novelty should be considered, maybe with
different names like absolute novelty and relative novelty. Often the decision upon
which measure to use is more dictated by how the system is coded. For example, if
the system tends to have a long transition time, it might be just not possible to record
all the molecules that have been present. This makes the first novelty measure
difficult or, sometimes, impossible to calculate.
A third type of novelty, which could be measured, is a novelty related to the
organisation present in the reactor. Here a molecule would be considered new if it
never appeared while this organisation was present, independently if it appeared
before this organisation became dominant. Of course this type of measure has not (to
the author knowledge) been used, since it require to automatically calculate what is
the present organisation. A daunting task to be calculated at every time step.
As we explained not every molecule can interact with any other molecule. Some
interactions might be either theoretically impossible, or filtered out as being elastic to
obtain some special effects [Fontana & Buss, 1994]. For this reason, it makes sense to
measure the productivity of the system. The productivity of the system is calculated as
the number of colliding molecules who react divided by the number of colliding
molecules. This number tends to vary much during a run, yet inside the same
organisation is often bounded. For this reason (along with novelty) gives a good hint
on when does the system enters an organisation.
Other measures
Each a.c. has, of course, also other measures, often unique, that address either the
singular characteristics of the particular model or the unique characteristics the
problem that the system is trying to solve. For example in the system presented below
the molecules are generated upon a set of basic atoms. The total number of those
atoms is fixed, so for each type we measure the free atoms available to the system.
Obviously, such measure just does not make sense in many other systems.
The figure that follows, taken from [Speroni, Dittrich, Banzhaf, 2001], shows an
example, where the population of some particular molecules are plotted against time,
then the diversity and the productivity. The system (which is kept unstable through a
random inflow of elements) passes through at least three main organisations, at
generations 250, 600 and 900. We can see how the main molecules succeed to each
other as the system is pushed from one organisation to the next.
Examples of Artificial Chemistries
The Combinatorial AlChemy system
We will present as a general example a particular a.c. on which the author has worked
for some time. In this work we try to build an a.c. that can supports living process. We
are not here speaking about natural biological life, but of a more abstract concept. We
will say that a particular sub-system of a system is alive if some particular relations
are presents between its element. We will say that a sub-system is alive if: (1) is able
to self-heal [Varela, Maturana, & Uribe, 1974]; (2) it possess a metabolism [Bagley,
Farmer, & Fontana, 1992] [Speroni, Banzhaf, 2001] and (3) it generates a boundary
that identify it from the external world [Varela, Maturana, & Uribe, 1974][Ono &
Ikegami, 2000][Speroni, Dittrich, Banzhaf, 2001]. Discussing this list would take a
long time and the interested reader is referred to the referred, more precise, in depth
What Artificial Chemistry
The artificial chemistry we use has some unique characteristics. This a.c. uses an
infinite set of molecules. Each molecule tends to act in a different way. This is a
general statement, as we shall see some duplication might sometimes be possible. The
molecules are made up of seven types of basic atoms. When two molecules ‘a’ and ‘b’
collide, they generate a multiset of resulting molecules. The size and content of this
multiset, directly depends on ‘a’ and ‘b’. When two molecules collide, the two
molecules are extracted from the soup, while the resulting new molecules are inserted.
From this rule follows that the population size of the soup is not fixed, but varies.
While the total number of molecules is not fixed the total number of atoms of each
type, present in the soup, can never exceed a certain limit. While the population size
(number of molecules) in the soup is not fixed, the limit in the total number of atoms
does indeed limit the total number of possible molecules, keeping the system from
Not every molecule in the soup can interact with any other. Some times a collision
either does not produce nothing, or the product would require an excessive use of
atoms of some type. In this case, the collision is considered elastic and the interaction
never to have happened.
Infinite type of molecules
In this artificial chemistry, we use combinators as molecules.
Let S be the space of strings with balanced parenthesis. Combinators are operators
from S to S. Thus a combinator ‘c’ is an operator c: S S. Combinators can
themselves be expressed as strings with balanced parenthesis over a particular
alphabet. From this follows that given two combinators ‘a’ and ‘b’ is possible to apply
one to the other to obtain a third combinator. This can be done in two different ways:
‘a’ * ‘b’ and ‘b’ * ‘a’. This will sometimes lead to two different results.
Finite type of atoms
While the number of possible molecules is infinite (theoretically, since is still limited
by the memory capacity of the machine we are working on), the number of base
elements on which the combinators are built is finite. We have explained how each
combinator can be expressed as a string with balanced parenthesis on an alphabet. The
alphabet is the alphabet of the basic combinators we will use in our experiment. We
use only seven basic combinators, and we will call those combinators atoms. Those
combinators are: B, C, K, I, S, W and R. For a complete explanation on those
combinators and their behaviour please refer to [Hindley & Seldin, 1986][Speroni di
Fenizio & Banzhaf, 2001].
The number of atoms inside the reactor is finite and fixed. In every moment, a
separate account is kept for the number of free atoms. That is, atoms not used in any
molecule and ready to be used in a new reaction.
As we said before, atoms are not a universal feature of artificial chemistries. Here
their presence introduces a physical conservation law that stops the system from
exploding. In fact, the system would explode as soon as the first molecule able to
make copies of itself (replicator) would be generated.
Reaction Following an Algorithm
As we explained before, three are the main types of operations that can be present in
an artificial chemistry. Casual operations, operations following a (men made) finite
table of reaction, and operations following an intrinsic logic. In this artificial
chemistry we are obviously in the third case. At every time-step two combinators are
randomly selected. If their reaction is not elastic, the two combinators are applied one
to the other; the solution is released in the soup while the two original molecules are
eliminated. It is interesting to note that given any string s on an alphabet {a1,…, an}
exists a combinator ‘c’ on the alphabet {B, C, K, W} such that c*((((a1)a2)…)an)s.
The same result is also true if we choose ‘c’ on the alphabet {S, K, I}. For this reason
{B, C, K, W} and {S, K, I} are called a bases of the space of combinators [Hindley
and Seldin, 1986]. In our system, we use both bases; this will of course generate some
redundancy, as the same operator can be written in (at least) two different ways. On
the other hand, since we limit the number of possible atoms of each type, this
redundancy permit to reach a particular type of operator even when one of the atoms
has been all used up.
Number of released elements depending
While the atoms B, C, I, K, S and W are taken from the standard theory of
combinators, the operator R has been introduced ad-hoc to give the possibility to
combinators to react giving more than one result. Of course, if at every reaction two
molecules interact to generate only one, and if at every reaction we eliminate the two
molecules who has been used up, we would soon find ourselves with no molecules
left in the soup. A common solution to this has been not to eliminate the reacting
molecules at all, consider their action as catalytic on a flux of basic elements on the
background. The basic elements would then be so common and universal not to be
modelled at all. Instead, a random molecule would be eliminated, representing an
outflow of elements or a random death.
So the operation could be expressed as:
a + b + x a* b + a + b; where x is the random element.
In this artificial chemistry we worked to maintain a form of conservation law on the
atoms. Now if ‘a’ and ‘binteract, we eliminate from the reactor a copy of ‘a’ and a
copy of ‘b’, while we insert the resulting molecule(s).
a+ b c1+ c2+ …+ c n a, b
The number of resulting elements n a, b depends strictly only on ‘a’ and on ‘b’. The
average number of elements generated by a random reaction tends to fluctuate during
the experiments but soon always stabilises at 2.
Slight influx or outflow
To study the stability of the system we kept a slight influx of random elements. The
influx is so small not to prevent the system from finding stable solutions
(organisations). Of course those solutions are stable respect to the element present.
They are also stable respect a subset of the possible elements that can be inserted. Yet,
there is always the possibility that a particularly complex molecule can be randomly
selected, inserted, and pushing the system into a different organisation.
We also added to the system the possibility to have an outflow of elements. This was
added in some experiments and not in others. The outflow was inserted mainly to
prevent the system from collecting too many molecules too complex to be used. When
we added in the system the ‘K’ molecule, that gave the possibility that a whole other
molecule could be destroyed the necessity for an outflow disappeared. Instead, the
system started to ‘evolve’ molecules to destroy those big molecules, thus taking care
by itself to ‘clean its environment’.
On the right side we can see an
example of run taken from
[Speroni, 2000]. We run the system
to study the space of its possible
attractors as well as to study their
stability. Each attractor was a
qualitative solution, a different set
of molecules, and a different set of
equations. The attractors appeared
to be of two different kinds:
attractors that used the inflow of
elements to increase in size, and
attractors that did not need the
inflow. Since the first needed such
a flow of molecules which would
then be modified to generate more
molecules of the same type of the attractors we called the first type metabolic
organisation, for it metabolises inserted molecules [Bagley & Farmer, 1992]. The
second type of organisation, always contained different types of molecules, some that
would generate more and more molecules (using the R atom), and others that would
destroy some of the existing molecules (using the K atom). Such organisation was
called balanced organisation since it contained and held in balances at least two
different types of molecules: molecules that would expand the system and molecules
that would contract it.
Artificial chemistries are now beginning to be used in various fields. If every
‘molecule’ is a replicator (able to generate copies of itself), the system can represent a
social system, or an ecological one, with the ‘molecules’ being human beings or
animals. If instead the ‘molecules’ represent ‘firms’ we are probably trying to model
an economy, while if every molecule represents a specific human being, in relation to
its language, we are probably dealing with a linguistic model. Artificial chemistries
are, in a sense, only a tool. Like ordinary differential equations. This tool was born
inside artificial life, but its range of action is much wider. Since some of the problem
it addresses are universal: the difference between qualitative and quantitative
solutions; the nature of qualitative solution and what is an ‘attractor’ in the space of
possible ‘types’ of solutions. It seems to be a promising tool to be used in different
disciplines. As a last note, we wish to point out that this tool has not been used only
for theoretical disciplines, but also for practical purposes. A robot controller using an
artificial chemistry in his brain has already been developed [Ziegler & Banzhaf,
2001], while an algorithm to automatically prove theorems, which uses an a.c. as its
main part has been built too [Bush & Banzhaf, 2000].
Bagley, R. J., & Farmer, J. D. (1992). Spontaneous emergence of a metabolism. In C.
G. Langton, C. Taylor, J. D. Farmer & S. Rasmussen (Eds.), Artificial Life II (pp. 93–
140). Redwood City, CA: Addison-Wesley.
Bagley, R. J., Farmer, J. D., & Fontana, W. (1992). Evolution of a metabolism. In C.
G. Langton, C. Taylor, J. D. Farmer, & S. Rasmussen (Eds. ), Artificial Life II (pp.
141–158). Redwood City, CA: Addison-Wesley.
Banzhaf, W. (1994). Self-organization in a system of binary strings. In R. Brooks &
P. Maes (Eds. ), Artificial Life IV (pp. 109–119). Cambridge, MA: MIT Press.
M. A. Bedau, E. Snyder, C. T. Brown, & N. H. Packard, (1997) "A Comparison of
Evolutionary Activity in Artificial Evolving Systems and the Biosphere". In P.
Husbands and I. Harvey, Proceedings of the Fourth European Conference on
Artificial Life, ECAL97, pp. 125-134. MIT Press/Bradford Books
Bersini, H. (2000). Reaction mechanisms in the oo chemistry. In M. A. Bedau, J. S.
McCaskill, N. H. Packard, & S. Rasmussen (Eds. ), Artificial Life VII (pp. 39–48).
Cambridge, MA: MIT Press.
Busch, J., & Banzhaf, W. (2000). Multi-agent systems inspired by artificial
chemistries: A case study in autorated theorem proving. In Proceedings, Fourth
International Conference on MultiAgent Systems (pp. 371–372). Boston, MA: IEEE
Computer Society.
Dittrich, P. (2001). On artificial chemistries. Ph.D. thesis, University of Dortmund,
Department of Computer Science, D-44221 Dortmund, Germany.
Dittrich, P., Ziegler, J., & Banzhaf, W. (1998). Mesoscopic analysis of self-evolution
in an artificial chemistry. In C. Adami, R. Belew, H. Kitano, & C. Taylor (Eds. ),
Artificial Life VI (pp. 95–103). Cambridge, MA: MIT Press.
Dittrich, P., Ziegler, J., & Banzhaf, W. (2001). Artificial Chemistries—A Review,
Artificial Life 7(3): (pp. 225–275).
Fontana, W. (1992). Algorithmic chemistry. In C. G. Langton, C. Taylor, J. D.
Farmer, & S. Rasmussen (Eds.), Artificial Life II (pp. 159–210). Redwood City, CA:
Fontana, W., & Buss, L. W. (1994). “The arrival of the fittest”: Toward a theory of
biological organization. Bulletin of Mathematical Biology, 56, 1–64.
Fontana, W., & Buss, L. W. (1996). The barrier of objects: From dynamical systems
to bounded organization. In J. Casti & A. Karlqvist (Eds. ), Boundaries and Barriers
(pp. 56–116). Redwood City, MA: Addison-Wesley.
Hindley J. R., & Seldin J. P., 1986. Introduction to Combinators and λ-Calculus.
Cambridge University Press.
Ikegami, T., & Hashimoto, T. (1995). Active mutation in self-reproducing networks
of machines and tapes. Artificial Life, 2, 305–318.
McCaskill, J. S. (1988). Polymer chemistry on tape: A computational model for
emergent genetics. Internal report, MPI for Biophysical Chemistry, Göttingen,
Speroni di Fenizio, P. (1999) Building life without cheating. Master's thesis,
University of Sussex, Falmer, Brighton, UK.
Speroni di Fenizio, P., & Banzhaf W. (2001) Stability of metabolic and balanced
organisations. In J. Kelemen und P. Sosík, Hrsg., Advances in Artificial Life (ECAL
2001), 196-205. Springer, Berlin, Prague, September 10-14.
Speroni di Fenizio P., Dittrich P., & Banzhaf W. (2001) Spontaneous formation of
proto-cells in an universal artificial chemistry on a planar graph. In J. Kelemen und P.
Sosík, Hrsg., Adavances in Artificial Life (ECAL 2001), 206-215. Springer, Berlin,
Prague, September 10-14.
Speroni di Fenizio P., Dittrich P., Banzhaf W., & Ziegler J. (2001) Towards a theory
of organizations. In Proc. Fourth Geman Workshop on Artificial Life (GWAL'00).
Bayreuth. (in print).
Suzuki, Y., & Tanaka, H. (1998). Order parameter for a symbolic chemical system. In
C. Adami, R. Belew, H. Kitano, & C. Taylor (Eds. ), Artificial Life VI (pp. 130–139).
Cambridge, MA: MIT Press.
Ono, N., & Ikegami, T. (2000). Self-maintenance and self-reproduction in an abstract
cell model. Journal of Theoretical Biology, 206, 243–253.
Varela F. J., Maturana H. R., & Uribe R. (1974) Autopoiesis: The organization of
living systems. BioSystems, 5(4):187—196.
Ziegler, J., & Banzhaf, W. (2001). Evolving control metabolisms for a robot.
Artificial Life 7 (2), 171–190.
... Artificial chemistries use the multiset formalism to specify the substrates, catalysts and products of chemical reactions (e.g. [203]) and can be applied to biochemical reactions [125,378]. Sophisticated models of biological processes can be built out of these reaction specifications. ...
... Roughly speaking, an artificial chemistry [35,36] is a computational model of a chemical system. It consists of a set (a soup) of objects, called molecules, a set of reaction rules that produce new molecules from already existing molecules, and the definition of the dynamics of the system, that specifies the application conditions of the rules, the preference in their application, etc. Against other types of computational models, the goal of an artificial chemistry is to answer qualitative, rather than quantitative, questions: the existence of steady, or closed and self-maintaining, states, the size and diversity of the soup at some moment, etc. ...
Conference Paper
Full-text available
In the beginning, one of the main fields of application of graph transformation was biology, and more specifically morphology. Later, however, it was like if the biological applications had been left aside by the graph transformation community, just to be moved back into the mainstream these very last years with a new interest in molec- ular biology. In this paper, we review several fields of application of graph grammars in molecular biology, including: the modeling higher- dimensional structures of biomolecules, the description of biochemical reactions, the analysis of metabolic pathways, and their potential use in computational systems biology.
... In the recent years, several representations and simulations of specific biochemical processes have been proposed using well known rewriting formalisms borrowed from Theoretical Computer Science. Let us mention, for instance, Fontana's lambda calculus chemistry [3,4], recently revised by Müller [9] (for a recent survey on artificial chemistry, see [14]), the stochastic Petri net approach [5], the π-calculus representation of biochemical processes carried out by networks of proteins [10], and the graph replacement approach to DNA operations [8]. In the latter, an ad hoc graph replacement formalism is developed to formalize DNA biochemical operations like annealing or denaturing, by considering DNA double strands to be special graphs. ...
Full-text available
In this paper we model several simple biochemical operations on RNA molecules that modify their secondary structure by means of a suitable variation of Gro\ss e-Rhode's Algebra Transformation Systems.
Conference Paper
Full-text available
An artificial chemistry is embedded in a triangular planar graph, that allows the molecules to act only locally along the edges. We observe the formation of effectively separated components in the graph structure. Those components are kept separated by elastic reactions from molecules generated inside the component itself. We interpret those components as self-maintaining proto-cells and the elastic nodes as their proto-membrane. The possibility for these cells to be autopoietic is discussed.
Networks of catalyzed reactions with nonlinear feedback have been proposed to play an important role in the origin of life. We investigate this possibility in a polymer chemistry with catalyzed cleavage and condensation reactions. We study the properties of a well-stirred reactor driven away from equilibrium by the flow of mass. Under appropriate non-equilibrium conditions. The nonlinear feedback of the reaction network focuses the material of the system into a few specific polymer species. The network of catalytic reactions digests'' the material of its environment, incorporating it into its own form. We call the result an autocatalytic metabolism. Under some variations it persists almost unchanged, while in other cases it dies. We argue that the dynamical stability of autocatalytic metabolisms gives them regenerative properties that allow them to repair themselves and to propagate through time. 43 refs., 16 figs., 3 tabs.
Living cells must maintain their membranes by active metabolism. The membrane is not static but a dynamic structure that has evolved along with its internal reactions. When we reflect on the emergence and evolution of primitive cells, we should not forget the mutual dependency between membranes and metabolic cycles inside the cell. In this paper, we present a simple abstract model of the self-maintaining cell. A metabolic cycle will produce a self-assembling membrane that will enclose the metabolic cycle. We show that a self-maintaining cell has the potential to reproduce itself spontaneously. Further, we have demonstrated two different ways of cellular reproduction depending on the mobility of chemicals. In the first case, a cell releases autocatalytic chemicals that create new cells outside the mother cell. In the second case, a cell grows larger and divides itself into daughter cells by creating a new internal dividing membrane.
We consider an artificial reaction system whose components are binary strings. Upon encounter, two binary strings produce a third string which competes for storage space with the originators. String types or species can only survive when produced in sufficient numbers. Spatial interactions through introduction of a topology and rules for distance-dependent reactions are discussed. We observe various kinds of survival strategies of binary strings.
In this paper complex adaptive systems are defined by a self- referential loop in which objects encode functions that act back on these objects. A model for this loop is presented. It uses a simple recursive formal language, derived from the lambda-calculus, to provide a semantics that maps character strings into functions that manipulate symbols on strings. The interaction between two functions, or algorithms, is defined naturally within the language through function composition, and results in the production of a new function. An iterated map acting on sets of functions and a corresponding graph representation are defined. Their properties are useful to discuss the behavior of a fixed size ensemble of randomly interacting functions. This function gas'', or Turning gas'', is studied under various conditions, and evolves cooperative interaction patterns of considerable intricacy. These patterns adapt under the influence of perturbations consisting in the addition of new random functions to the system. Different organizations emerge depending on the availability of self-replicators.
The formal structure of evolutionary theory is based upon the dynamics of alleles, individuals and populations. As such, the theory must assume the prior existence of these entities. This existence problem was recognized nearly a century ago, when DeVries (1904) stated, ``Natural selection may explain the survival of the fittest, but it cannot explain the arrival of the fittest.'' At the heart of the existence problem is determining how biological organizations arise in ontogeny and in phylogeny. We develop a minimal theory of biological organization based on two abstactions from chemistry. The theory is formulated using $\lambda$-calculus, which provides a natural framework capturing (i) the constructive feature of chemistry, that the collision of molecules generates new molecules, and (ii) chemistry's diversity of equivalence classes, that many different reactants can yield the same stable product. We employ a well-stirred and constrained stochastic flow reactor to explore the generic behavior of large numbers of applicatively interacting $\lambda$-expressions. This constructive dynamical system generates fixed systems of transformation characterized by syntactical and functional invariances. Organizations are recognized and defined by these syntactical and functional regularities. Objects retained within an organization are characterized by a grammar and interactions among objects by algebraic relationships. The objects which maintain themselves in the system realize an algebraic structure and possess a grammar which is invariant under the interaction between objects. An organization is self-maintaining, and is characterized by (i) boundaries established by the invariances, (ii) strong self-repair capabilities responsible for a robustness to perturbation, and (iii) a center, defined as the smallest set kinetically persistent and self-maintaining generator set of the algebra. Imposition of different boundary conditions on the stochastic flow reactor ge