Lectures 11&12
Artificial (Virtual) Ecosystems
1. General discussion
|
References & Reading Material:
Yaeger, L., "Computational Genetics, Physiology, Metabolism,
Neural Systems, Learning, Vision and Behaviour or PolyWorld: Life in a
New Context", Artificial Life III, (ed.) Langton, Addison-Wesley 1994,
pp263-298
Ray, T., "An Approach to the Synthesis of Life", Artificial Life II, (eds)
Langton et al, Addison-Wesley 1991, pp371-408
Pargellis, A.N., "The Spontaneous Generation of Digital Life",
Physica D 91, 1996, pp86-96
Images:
Attenborough, D., "The Private Life of Plants", BBC Books, 1995
Beck, W.S, Liem, K.F, Simpson, G.G, "Life", 3rd edn, Harper-Collins, 1991
|
What is Meant by an Artificial (Virtual) Ecosystem?
Any model in which the (virtual) inhabitants (agents):
- Interact with one another
- Mate with one another
- Compete against one another for material resources (food, water etc.)
- Compete against one another for mates
...within the confines of some (virtual) environment with its own set of 'universal
laws'.
Reproduction within a virtual ecosystem may be implemented using the genetic
algorithm with an implicit fitness function...
- An individual agent is responsible for its own reproduction
- Reproduction requires resources
- Resources are acquired from the environment by appropriate behaviour
Sample behaviours:
|
- Communication
- Warnings (bird cry, wasp colouration)
- Mating calls (changing colour)
- Food signals (bee's
dance)
- Territory markers (pheromones)
|
|
|
- Predation
- Pack hunting (lions, wolves)
- Chasing (leopards)
- Trapping (spider's web, Venus Fly Trap)
- Ambushing (jumping spiders, ant lions)
- Aggregate and social behaviours
- Pack hunting (lions, wolves)
- Flocking (sheep, birds)
- Schooling (fish)
- Removing lice (monkeys)
- Nest construction (termites, ants, bees, wasps)...
|
Lovely Venus
|

Ant Lion
|
|
- Mimicry
- Camouflage (stick & leaf insects)
- Batesian mimicry (tephritid
fly, snake-mimicking caterpillar)
- Inter-species competition & co-operation
|
Not a wasp! (Syrphid Fly)
|
Orchid Imitates Bee
|
Floundering
|
What moth?
|
In addition to the characteristics of the organism, characteristics may be
added to the environment:
- Spatial & physical laws
- Collisions, rigid body dynamics, friction, gravity etc.
- Organization of space (0D, 1D, 2D, 3D, more D, toroidal, infinite plane)
- Energy availability
- From a global source (sunlight)
- From a localized source (plants, animals)
- Number and type of organisms
2. Polyworld
created by Larry Yaeger
Polyworld is
a particular example of an artificial ecosystem.
- Polyworld space
- A plane with impassable boundaries OR
- A flattened torus OR
- A table top
(See the film "Erik
the Viking" (search for edge in the script))
- The above with extra internal barriers
Polyworld screen shot
showing table top world,
some graphs of various parameters etc.
|
- Polyworld energy
- Freely growing food
(Growth rate and energy value may be controlled.)
- Dead organisms
(An organism dies when its health energy is zero.
A dead organism may have non-zero food energy.)
- Polyworld sex
- Genetic algorithm mode
(Inhabitant fitness is measured at predetermined
times according to a pre-determined function. The fittest organisms
are bred by the system.)
- Free-running mode
(The organisms select mates and reproduce under
their own control.)
|
- Polyworld vision
- Organisms and other objects are represented visually (for us)
as coloured polygonal objects.
- Organism vision is implemented by rendering a one-dimensional
relative view of the world and using this as input to the neural-network
brain of an organism.
- Polyworld thought
- Organisms have neural network brains employing Hebbian
learning methods.
- An organism's brain determines its behaviour.
|
Polyworld creature neural architecture
including RGB vision neural structure.
|
|
Polyworld Organisms and their Levis 501's (Genes)
- There are some number of
internal neural clusters as specified by the genes
- Organism's neural states
are updated synchronously
Organism Physiological Genes
- Size
(effects metabolic rate, fights, max. energy storage)
- Strength
(effects metabolic rate, fight outcomes)
- Max.
speed
(effects metabolic rate)
- ID
(green component of org's colour)
- Mutation
rate
- Crossover
points for reproduction
(number)
- Life
span
- Energy
to offspring
(fraction of total)
|
Organism Neural Net Spec. Genes
- Number
neurons devoted to red vision component
- Number
neurons devoted to blue vision component
- Number
neurons devoted to green vision component
- Number
of internal neural groups
- Number
of excitory neurons in each internal group
- Number
of inhibitory neurons in each internal group
- Initial
bias of neurons in each non-input neural group
- Bias
learning rate for each non-input neural group
- Connection
density b/n pairs of neural groups & neuron types.
- Topological
distortion b/n pairs of neural groups & neuron types
- Learning
rate b/n all pairs of neural groups & neuron types.
|
Neural input clusters:
Red, Green, Blue
Organism health
Random value
|
Neural output clusters:
Eat, Mate, Fight
Move, Turn
Focus, Lighten
|
Polyworld Results, a few species:
- The frenetic joggers
Run straight ahead at full speed - always wanting to mate, always wanting
to eat.
- The indolent cannibals
Congregate and do not move - kill, mate with and eat each other all on the
spot.
- The edge runners
Run around the edge of a bounded world - eat or mate with all who pass.
Other Interesting Behaviour
- Respond to visual stimuli by speeding up
- Respond to attack by running away (speeding up)
- Respond to attack by fighting back
- Grazing (respond to food by slowing down)
- Seeking out and circling food
- Follow other organisms
3. Tierra
Tierra was created by Thomas
Ray
|
- Tierran space is represented as virtual machine memory
- Tierran matter is represented as virtual machine code
- Tierran energy is represented by CPU time
|
Tierran Organisms
Organisms are represented as sections of virtual machine code in virtual
memory.
Organisms compete for CPU time running a virtual operating system to execute
their code.
There exist 32 instructions of which an organism may consist.
(eg. MOV, CALL, RET, POP, PUSH, COPY etc...)
Addressing is by template.
(e.g. JMP [template] - execution jumps to the end of the nearest space
in either direction in memory which matches the template.)
There are no numeric operands.
Some extra notes on the Tierran machine
code are
online.
The Tierran
Operating System
- Organisms have exclusive write permission in their allocated block of
memory.
- All organisms may read or execute any memory cell.
- An organism may have write access to at most two blocks of memory:
- Block 1: the mother cell in which the organism exists.
- Block 2: a daughter cell obtained by executing the MAL
(memory allocation) instruction and used for reproduction or growth.
- When Tierran's divide access is lost to the daughter cell but a new one
may be allocated.
- The number of instructions executed by a given organism on its virtual
CPU may be altered to favour different sized organisms.
Limiting the population size
- A reaper queue is maintained which culls organisms when they reach its top.
- New organisms begin at the bottom of the queue.
- Organisms may move down this queue by successfully executing some instruction.
- Organisms may move up this queue by unsuccessfully executing some instruction.
- Vigorous organisms may prolong their life but in general the organism's
chances of being culled increase with age.
Mutation
- Cosmic rays - at some background rate, the operating system randomly
flips bits in the memory.
- Flawed replication - while copying instructions during replication,
a bit may be randomly flipped.
- Flawed execution - the execution of Tierran instructions is flawed
at some rate.
e.g.'s: Result of incrementing a register might be to add two. Bit-flipping
may flip the wrong bit or not work at all.
Getting It Started
A seed, self-reproducing Tierran ancestor has been coded by hand (by
Ray).
A simulation begins with one ancestor and a random 'soup' of 60,000 machine
code instructions.
The ancestor:
- calculates its own size by subtracting the location of its beginning (marked
by template) from the location of its end (also marked by template)
- allocates a block of memory of the same size as itself
- copies itself into the daughter cell
- divides, then returns to step 2
Tierran Results
|
Parasites
- Execute or seize control of the 'copy code' of other organisms in
order to copy their own code.
- This reduces the amount of space the parasite requires and allows
it reproductive speed through a need to avoid replicating the replication
code, whilst wasting the reproductive efforts of the victim.
|
Simulation has also developed immunity to parasites, circumvention of this
immunity, hyper-parasites, social hyper-parasites, hyper-hyper-parasites etc.
The means by which the above behaviours occur stem from an Tierran's ability
to seize the instruction pointers, register values and CPU data from other organisms,
change them or use them themselves.
This enables the parasite to improve its own reproductive success whilst limiting
the success of the victim.
4. Spatial Organization in Artificial
(Virtual) Ecosystems
References:
Oliphant, M.,
"Evolving Cooperation in the Non-Iterated Prisoner's
Dilemma: The Importance of Spatial Organization", proceedings of Artificial
Life IV, Brooks and Maes (eds), MIT Press, 1994, pp349-352
Angeline, P.J.,
"An Alternative interpretation of the Iterated Prisoner's Dilemma
and the Evolution of Non-Mutual Co-operation", proceedings of Artificial
Life IV, Brooks and Maes (eds), MIT Press, 1994, pp353-358
Spatial organization affects:
- Predation
- Communication
- Reproduction
...how?
The Prisoner's Dilemma
- The non-iterative version of the Prisoner's Dilemma has been used to study
the effects of spatial location on agent interactions
- Two agents play against one another
- Each agent must choose one of two moves, co-operation or defection
- Non co-operative game: players may not communicate before the game
- Non zero-sum game: winnings of one player are not necessarily the losses
of the other
- The payoff awarded to a player depends on the move made by the opponent
as follows:
|
Co-operate |
Defect |
Co-operate |
R/R |
S/T |
Defect |
T/S |
P/P |
Where: T > R > P > S and: 2R > T + S
Example: T=5, R=3, P=1, S=0
Then if...
- both players co-operate they each receive 5 points
- both players defect they each receive 1 point
- one player defects and the other co-operates, the co-operator gets 0
points, the defector 5
Strategies for the Prisoner's Dilemma
If a spatially-organized set of players is established:
- Players are more likely to play other players in their neighbourhood
- Players are more likely to mate with players in their neighbourhood
- Offspring are deposited in the neighbourhood of their parents
Results for Spatially-Organized Play
- Fc and Fd will vary across the space
- A co-operator will more likely play against another (and they will mutually
benefit)
- A defector will more likely play against another (and they will mutually
suffer)
- The population no longer converges on uniform defection. Co-operative behaviour
may emerge and be maintained
lecture notes | home
All material accessed from www.cs(se).monash.edu.au/~cema
is
© Copyright 1994-2008 Alan Dorin, Jon McCormack & Monash University except where noted.