old-www/HOWTO/AI-Alife-HOWTO-5.html

719 lines
28 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<META NAME="GENERATOR" CONTENT="LinuxDoc-Tools 0.9.21">
<TITLE>GNU/Linux AI &amp; Alife HOWTO: Alife &amp; Complex Systems</TITLE>
<LINK HREF="AI-Alife-HOWTO-6.html" REL=next>
<LINK HREF="AI-Alife-HOWTO-4.html" REL=previous>
<LINK HREF="AI-Alife-HOWTO.html#toc5" REL=contents>
</HEAD>
<BODY>
<A HREF="AI-Alife-HOWTO-6.html">Next</A>
<A HREF="AI-Alife-HOWTO-4.html">Previous</A>
<A HREF="AI-Alife-HOWTO.html#toc5">Contents</A>
<HR>
<H2><A NAME="Alife &amp; Complex Systems"></A> <A NAME="s5">5.</A> <A HREF="AI-Alife-HOWTO.html#toc5">Alife &amp; Complex Systems</A> </H2>
<P>Alife takes yet another approach to exploring the mysteries of
intelligence. It has many aspects similar to EC and Connectionism, but
takes these ideas and gives them a meta-level twist. Alife emphasizes the
development of intelligence through <I>emergent</I> behavior of
<I>complex adaptive systems</I>. Alife stresses the social or group
based aspects of intelligence. It seeks to understand life and survival. By
studying the behaviors of groups of 'beings' Alife seeks to discover the
way intelligence or higher order activity emerges from seemingly simple
individuals. Cellular Automata and Conway's Game of Life are probably the
most commonly known applications of this field. Complex Systems
(abbreviated CS) are very similar to alife in the way the are approached,
just more general in definition (ie. alife is a type of complex system).
Usually complex system software takes the form of a simulator.</P>
<H2><A NAME="ss5.1">5.1</A> <A HREF="AI-Alife-HOWTO.html#toc5.1">Alife &amp; CS class/code libraries</A>
</H2>
<P>These are libraries of code or classes for use in programming within
the artificial life field. They are not meant as stand alone
applications, but rather as tools for building your own applications.</P>
<P>
<DL>
<P>
<A NAME="AgentFarms"></A> </P>
<DT><B>AgentFarms</B><DD><P>
<UL>
<LI>Web site:
<A HREF="http://www.agentfarms.net">http://www.agentfarms.net</A></LI>
</UL>
</P>
<P>Agent Farms is a system for modelling and simulation of complex,
multi-agent based systems. The system can be used for:
<UL>
<LI>Creating models of multi-agent systems</LI>
<LI>Interactive and distributed simulation</LI>
<LI>Observation and visualisation of the simulation</LI>
<LI>Population modification and migration</LI>
</UL>
</P>
<P>
<A NAME="Biome"></A> </P>
<DT><B>Biome</B><DD><P>
<UL>
<LI>Web site:
<A HREF="http://sourceforge.net/projects/biome/">http://sourceforge.net/projects/biome/</A></LI>
</UL>
</P>
<P>Biome is a C++ library aimed at individual-based/agent-based
simulations. It is somewhat similar to Swarm, EcoSim or Simex but tries
to be more efficient and less monolithic without compromising object-
oriented design. Currently there is an event based scheduling system, a
C++ified Mersenne-Twister RNG, several general analysis classes, some
Qt-based GUI classes, a very basic persistence/database framework (used
also for parameter storage) and many other small useful things.</P>
<P>
<A NAME="CAGE"></A> </P>
<DT><B>CAGE</B><DD><P>
<UL>
<LI>Web site:
<A HREF="http://www.alcyone.com/software/cage/">http://www.alcyone.com/software/cage/</A></LI>
</UL>
</P>
<P>CAGE is a fairy generic and complete cellular automaton simulation
engine in Python. It supports both 1D and 2D automata, a variety of
prepackaged rules, and the concept of "agents" which can move about
independently on the map for implementing agent behavior.</P>
<P>
<A NAME="Cellular"></A> </P>
<DT><B>Cellular</B><DD><P>
<UL>
<LI>Web site:
<A HREF="http://zhar.net/howto/homeless/cellular/">http://zhar.net/howto/homeless/cellular/</A></LI>
</UL>
</P>
<P>The Cellular automata programming system consists of a compiler for the
Cellang cellular automata programming language, along with the
corresponding documentation, viewer, and various tools. Postscript
versions of the tutorial and language reference manual are available for
those wanting more detailed information. The most important
distinguishing features of Cellang, include support for:</P>
<P>
<UL>
<LI>any number of dimensions;</LI>
<LI>compile time specification of each dimensions size;
cell neighborhoods of any size (though bounded at compile time)
and shape;</LI>
<LI>positional and time dependent neighborhoods;</LI>
<LI>associating multiple values (fields), including arrays,
with each cell;</LI>
<LI>associating a potentially unbounded number of mobile
agents [ Agents are mobile entities based on a mechanism of
the same name in the Creatures system, developed by Ian
Stephenson (ian@ohm.york.ac.uk).] with each cell; and</LI>
<LI>local interactions only, since it is impossible to
construct automata that contain any global control or
references to global variables.</LI>
</UL>
</P>
<P>
<A NAME="Integrating Modelling Toolkit"></A> </P>
<DT><B>Integrating Modelling Toolkit</B><DD><P>
<UL>
<LI>Web site:
<A HREF="http://sourceforge.net/projects/imt/">sourceforge.net/projects/imt/</A></LI>
</UL>
</P>
<P>The Integrating Modelling Toolkit (IMT) is a generic, comprehensive,
and extensible set of abstractions allowing definition and use of
interoperable model components. Modellers create an IMT "world" made
of IMT "agents" that will perform each a particular phase of a
modelling task. The core set of IMT agents can describe generic,
modular, distributed model components, either native to the IMT or
integrating existing simulation toolkits, specialized for tasks that
range from simple calculation of functions in an interpreted language
to spatially explicit simulation, model optimization, GIS analysis,
visualization and advanced statistical analysis. IMT agents are
designed to easily "glue" together in higher-level simulations
integrating different modelling paradigms and toolkits. The IMT can be
easily extended by users and developers through a convenient plug-in
mechanism</P>
<P>
<A NAME="MAML"></A> </P>
<DT><B>MAML</B><DD><P>
<UL>
<LI>Web site:
<A HREF="http://www.maml.hu/">http://www.maml.hu/</A></LI>
</UL>
</P>
<P>The current version of MAML is basically an extension to Objective-C
(using the Swarm libraries). It consists of a couple of
'macro-keywords' that define the general structure of a simulation. The
remaining must be filled with pure swarm-code. A MAML-to-Swarm (named
xmc) compiler is also being developed which compiles the source code
into a swarm application.</P>
<P>
<A NAME="MASON"></A> </P>
<DT><B>MASON</B><DD><P>
<UL>
<LI>Web site:
<A HREF="http://cs.gmu.edu/~eclab/projects/mason/">http://cs.gmu.edu/~eclab/projects/mason/</A></LI>
</UL>
</P>
<P>MASON Stands for Multi-Agent Simulator Of Neighborhoods... or
Networks... or something...</P>
<P>MASON is a fast discrete-event multi-agent simulation library core in
Java, designed to be the foundation for large custom-purpose Java
simulations, and also to provide more than enough functionality for
many lightweight simulation needs. MASON contains both a model library
and an optional suite of visualization tools in 2D and 3D.</P>
<P>
<A NAME="SimWorld"></A> </P>
<DT><B>SimWorld</B><DD><P>
<UL>
<LI>Web site: http://www.nd.edu/&nbsp;airolab/simworld/</LI>
<LI>New Web site?: http://hrilab.tufts.edu/</LI>
</UL>
</P>
<P>SimWorld is a free artificial life simulation (based on the free
<A HREF="AI-Alife-HOWTO-6.html#SimAgent">SimAgent</A>
toolkit developed by Aaron Sloman), which provides
functionality for running different interacting agents and objects in a
simulated, continuous environment. The agents are controlled by rules
written in the powerful rule interpreter. New behaviors of agents can
be defined without any programming knowledge.</P>
<P>
<A NAME="Swarm"></A> </P>
<DT><B>Swarm</B><DD><P>
<UL>
<LI>Web site:
<A HREF="http://www.swarm.org/wiki/Swarm_main_page">www.swarm.org/wiki/Swarm_main_page</A></LI>
<LI>FTP site:
<A HREF="http://ftp.swarm.org/pub/swarm/">ftp.swarm.org/pub/swarm/</A></LI>
</UL>
</P>
<P>The swarm Alife simulation kit. Swarm is a simulation environment
which facilitates development and experimentation with simulations
involving a large number of agents behaving and interacting within a
dynamic environment. It consists of a collection of classes and
libraries written in Objective-C and allows great flexibility in
creating simulations and analyzing their results. It comes with three
demos and good documentation. </P>
</DL>
</P>
<H2><A NAME="ss5.2">5.2</A> <A HREF="AI-Alife-HOWTO.html#toc5.2">Alife &amp; CS software kits, applications, etc.</A>
</H2>
<P>These are various applications, software kits, etc. meant for research
in the field of artificial life. Their ease of use will vary, as they
were designed to meet some particular research interest more than as
an easy to use commercial package.</P>
<P>
<DL>
<P>
<A NAME="Achilles"></A> </P>
<DT><B>Achilles</B><DD><P>
<UL>
<LI>Web site:
<A HREF="http://achilles.sourceforge.net/">http://achilles.sourceforge.net/</A></LI>
</UL>
</P>
<P>Achilles is an evolution simulation based on Larry Yaeger's PolyWorld.
It uses Hebbian neural networks, and an extremely simplified physical
model that allows virtual organisms to interact freely in a simulated
environment.</P>
<P>
<A NAME="Avida"></A> </P>
<DT><B>Avida</B><DD><P>
<UL>
<LI>Web site:
<A HREF="http://avida.devosoft.org/">http://avida.devosoft.org/</A></LI>
<LI>Web site:
<A HREF="http://sourceforge.net/projects/avida/">http://sourceforge.net/projects/avida/</A></LI>
</UL>
</P>
<P>The computer program Avida is an auto-adaptive genetic system designed
primarily for use as a platform in Artificial Life research. The Avida
system is based on concepts similar to those employed by the Tierra
program, that is to say it is a population of self-reproducing strings
with a Turing-complete genetic basis subjected to Poisson-random
mutations. The population adapts to the combination of an intrinsic
fitness landscape (self-reproduction) and an externally imposed
(extrinsic) fitness function provided by the researcher. By studying
this system, one can examine evolutionary adaptation, general traits of
living systems (such as self-organization), and other issues pertaining
to theoretical or evolutionary biology and dynamic systems.</P>
<P>
<A NAME="Biogenesis"></A> </P>
<DT><B>Biogenesis</B><DD><P>
<UL>
<LI>Web site:
<A HREF="http://biogenesis.sourceforge.net/">http://biogenesis.sourceforge.net/</A></LI>
</UL>
</P>
<P>Biogenesis is an artificial life program that simulates the processes
involved in the evolution of organisms. It shows colored segment based
organisms that mutate and evolve in a 2D environment. Biogenesis is
based on Primordial Life.</P>
<P>
<A NAME="breve"></A> </P>
<DT><B>breve</B><DD><P>
<UL>
<LI>Web site:
<A HREF="http://www.spiderland.org/breve/">www.spiderland.org/breve/</A></LI>
</UL>
</P>
<P>Breve is a free software package which makes it easy to build 3D
simulations of decentralized systems and artificial life. Users define
the behaviors of agents in a 3D world and observe how they interact.
Breve includes physical simulation and collision detection so you can
simulate realistic creatures, and an OpenGL display engine so you can
visualize your simulated worlds.</P>
<P>
<A NAME="BugsX"></A> </P>
<DT><B>BugsX</B><DD><P>
<UL>
<LI>FTP site:
<A HREF="https://github.com/porridge/bugsx">https://github.com/porridge/bugsx</A></LI>
</UL>
</P>
<P>Display and evolve biomorphs. It is a program which draws the
biomorphs based on parametric plots of Fourier sine and cosine series
and let's you play with them using the genetic algorithm.</P>
<P>
<A NAME="Creatures Docking Station"></A> </P>
<DT><B>Creatures Docking Station</B><DD><P>
<UL>
<LI>Linux info:
<A HREF="http://www.creaturesdockingstation.com/">http://www.creaturesdockingstation.com/</A></LI>
</UL>
</P>
<P>This is a free version of the Creatures3 ALife game. It has fewer
species and a small 'space-station' world, but can connect to other
worlds over the internet and (if you have the windows version of the
game) can connect to your C3 world. The game itself revolves around
breeding and training the alife creatures, 'Norns'. Its strikes a
pretty nice balance between fun and science, or so I'm told.</P>
<P>(summary written by Steve Grand included below)</P>
<P>The eponymous creatures in this computer game are called Norns, and the
world's population of them at one stage hovered around the five million
mark, making them more common than many familiar natural species. Each
norn is composed of thousands of tiny simulated biological components,
such as neurons, biochemicals, chemoreceptors, chemoemitters and genes.
The norns' genes dictate how these components are assembled to make
complete organisms, and the creatures' behaviour then emerges from the
interactions of those parts, rather than being explicitly 'programmed
in'.</P>
<P>The norns are capable of learning about their environment, either by
being shown things by their owners or through learning by their own
mistakes. They must learn for themselves how to find food and how to
interact with the many objects in their environment. They can interact
with their owners, using simple language, and also with each other.
They can form relationships and produce offspring, which inherit their
neural and biochemical structure from their parents and are capable of
open-ended evolution over time. They can fall prey to a variety of
diseases (as well as genetic defects) and can be treated with
appropriate medicines.</P>
<P>
<A NAME="Critterding"></A> </P>
<DT><B>Critterding</B><DD><P>
<UL>
<LI>Web site:
<A HREF="http://critterding.sourceforge.net/">http://critterding.sourceforge.net/</A></LI>
<LI>Web site (telepathic-critterdrug):
<A HREF="http://m-net.arbornet.org/~flamoot/telepathic-critterdrug.html">http://m-net.arbornet.org/~flamoot/telepathic-critterdrug.html</A></LI>
</UL>
</P>
<P>Critterding is a "Petri dish" universe in 3D that demonstrates evolving
artificial life. Critters start out with completely random brains and
bodies, but will automatically start evolving into something with much
better survival skills. The lifeforms are placed in an artificial
environment where there neural net 'brains' can evolve.</P>
<P>Telepathic-critterdrug is a fork of Critterding introducing a
communications medium (called a retina) and psychoactive substances
that effect this retina.</P>
<P>
<A NAME="dblife-dblifelib"></A> </P>
<DT><B>dblife &amp; dblifelib</B><DD><P>
<UL>
<LI>FTP site:
<A HREF="http://ibiblio.org/pub/Linux/science/ai/life/">ibiblio.org/pub/Linux/science/ai/life/</A></LI>
</UL>
</P>
<P><I>dblife:</I> Sources for a fancy Game of Life program for X11
(and curses). It is not meant to be incredibly fast (use xlife for
that:-). But it IS meant to allow the easy editing and viewing of
Life objects and has some powerful features. The related dblifelib
package is a library of Life objects to use with the program.</P>
<P><I>dblifelib:</I> This is a library of interesting Life objects,
including oscillators, spaceships, puffers, and other weird things.
The related dblife package contains a Life program which can read the
objects in the Library.</P>
<P>
<A NAME="Drone"></A> </P>
<DT><B>Drone</B><DD><P>
<UL>
<LI>Web site:
<A HREF="http://www.cscs.umich.edu/Software/Drone/">www.cscs.umich.edu/Software/Drone/</A></LI>
</UL>
</P>
<P>Drone is a tool for automatically running batch jobs of a simulation
program. It allows sweeps over arbitrary sets of parameters, as well
as multiple runs for each parameter set, with a separate random seed
for each run. The runs may be executed either on a single computer or
over the Internet on a set of remote hosts. Drone is written in Expect
(an extension to the Tcl scripting language) and runs under Unix. It
was originally designed for use with the Swarm agent-based simulation
framework, but Drone can be used with any simulation program that
reads parameters from the command line or from an input file.</P>
<P>
<A NAME="EcoLab"></A> </P>
<DT><B>EcoLab</B><DD><P>
<UL>
<LI>Web site:
<A HREF="http://ecolab.sourceforge.net/">http://ecolab.sourceforge.net/</A></LI>
</UL>
</P>
<P>EcoLab is a system that implements an abstract ecology model. It
is written as a set of Tcl/Tk commands so that the model
parameters can easily be changed on the fly by means of editing
a script. The model itself is written in C++.</P>
<P>
<A NAME="Framsticks"></A> </P>
<DT><B>Framsticks</B><DD><P>
<UL>
<LI>Web site:
<A HREF="http://www.frams.alife.pl/">http://www.frams.alife.pl/</A></LI>
</UL>
</P>
<P>Framsticks is a three-dimensional life simulation project. Both
mechanical structures ("bodies") and control systems ("brains") of
creatures are modeled. It is possible to design various kinds of
experiments, including simple optimization (by evolutionary
algorithms), co-evolution, open-ended and spontaneous evolution,
distinct gene pools and populations, diverse genotype/phenotype
mappings, and species/ecosystems modeling.</P>
<P>
<A NAME="Fluidiom"></A> </P>
<DT><B>Fluidiom</B><DD><P>
<UL>
<LI>Web site:
<A HREF="http://ostatic.com/fluidiom">http://ostatic.com/fluidiom</A></LI>
</UL>
</P>
<P>Evolutionary based alife platform. Has a game like feel which makes it
fun while still allowing for some interesting experimentation.</P>
<P>It takes a minimalist approach to spatial structure to make a body,
adds articulation in the form of muscles, and then lets evolution take
over to see if these bodies can learn to walk, run, crawl, or slither
from one place to the other.</P>
<P>
<A NAME="Game Of Life"></A> </P>
<DT><B>Game Of Life (GOL)</B><DD><P>
<UL>
<LI>FTP site:
<A HREF="http://ibiblio.org/pub/Linux/science/ai/life/">ibiblio.org/pub/Linux/science/ai/life/</A></LI>
</UL>
</P>
<P>GOL is a simulator for conway's game of life (a simple cellular
automata), and other simple rule sets. The emphasis here is on
speed and scale, in other words you can setup large and fast
simulations.</P>
<P>
<A NAME="gant"></A> </P>
<DT><B>gant</B><DD><P>
<UL>
<LI>Web site:
<A HREF="http://gant.sourceforge.net/">gant.sourceforge.net</A></LI>
</UL>
</P>
<P>This project is an ANSI C++ implementation of the Generalized Langton
Ant, which lives on a torus.</P>
<P>
<A NAME="gLife"></A> </P>
<DT><B>gLife</B><DD><P>
<UL>
<LI>Web site:
<A HREF="http://glife.sourceforge.net/">glife.sourceforge.net</A></LI>
<LI>SourceForge site:
<A HREF="http://sourceforge.net/projects/glife/">sourceforge.net/projects/glife/</A></LI>
</UL>
</P>
<P>This program is similiar to "Conway's Game of Life" but yet it is very
different. It takes "Conway's Game of Life" and applies it to a society
(human society). This means there is a very different (and much larger)
rule set than in the original game. Things need to be taken into account
such as the terrain, age, sex, culture, movement, etc</P>
<P>
<A NAME="Golly"></A> </P>
<DT><B>Golly</B><DD><P>
<UL>
<LI>Web site:
<A HREF="http://golly.sourceforge.net/">golly.sourceforge.net</A></LI>
</UL>
</P>
<P>An open source, cross-platform implementation of John Conway's Game of
Life with an unbounded universe and capable of running patterns faster
and further than ever before. It has many features such as;</P>
<P>
<UL>
<LI>Reads RLE, Life 1.05/1.06, and macrocell formats.</LI>
<LI>Supports Wolfram's 1D rules.</LI>
<LI>Can paste in patterns from the clipboard. </LI>
<LI>Scriptable via Python.</LI>
</UL>
</P>
<P>
<A NAME="Langton's Ant"></A> </P>
<DT><B>Langton's Ant</B><DD><P>
<UL>
<LI>Web site:
<A HREF="http://theory.org/software/ant/">http://theory.org/software/ant/</A></LI>
</UL>
</P>
<P>Langton's Ant is an example of a finite-state cellular automata. The
ant (or ants) start out on a grid. Each cell is either black or white.
If the ant is on a black square, it turns right 90 and moves forward
one unit. If the ant is on a white square, it turns left 90 and moves
forward one unit. And when the ant leaves a square, it inverts the
color. The neat thing about Langton's Ant is that no matter what
pattern field you start it out on, it eventually builds a "road," which
is a series of 117 steps that repeat indefinitely, each time leaving
the ant displaced one pixel vertically and horizontally.</P>
<P>
<A NAME="LEE"></A> </P>
<DT><B>LEE</B><DD><P>
<UL>
<LI>Web site:
<A HREF="http://www.informatics.indiana.edu/fil/LEE/">www.informatics.indiana.edu/fil/LEE/</A></LI>
</UL>
</P>
<P>LEE (Latent Energy Environments) is both an Alife model and a
software tool to be used for simulations within the framework of that
model. We hope that LEE will help understand a broad range of issues
in theoretical, behavioral, and evolutionary biology. The LEE tool
described here consists of approximately 7,000 lines of C code and
runs in both Unix and Macintosh platforms.</P>
<P>
<A NAME="MATREM"></A> </P>
<DT><B>MATREM</B><DD><P>
<UL>
<LI>Web site:
<A HREF="http://www.romansland.nl/matrem/">http://www.romansland.nl/matrem/</A></LI>
</UL>
</P>
<P>Matrem is a computer program that simulates life. It belongs to the
emerging science of "artificial life", which studies evolution and
complex systems in general by simulation. Matrem is also a game, where
players compete to create the fittest life form. Their efforts are the
driving force behind the program.</P>
<P>
<A NAME="Nanopond"></A> </P>
<DT><B>Nanopond</B><DD><P>
<UL>
<LI>Web site:
<A HREF="http://adam.ierymenko.name/nanopond.shtml">http://adam.ierymenko.name/nanopond.shtml</A></LI>
</UL>
</P>
<P>Nanopond is a "corewar style" evolvable instruction set based virtual
machine written in C. It is similar in design to Tierra and Avida but
considerably smaller and simpler. Version 1.0 weights in at only 840
lines of C code, the majority of which are comments! It is very highly
optimized and supports simple color visualization using the SDL (Simple
Directmedia Layer) library.</P>
<P>More information can be learned by reading the Nanopond source code,
which is very well commented.</P>
<P>
<A NAME="Noble Ape"></A> </P>
<DT><B>Noble Ape</B><DD><P>
<UL>
<LI>Web site:
<A HREF="http://www.nobleape.com/sim/">www.nobleape.com/sim/</A></LI>
</UL>
</P>
<P>The Noble Ape Simulation has been developed (as the Nervana Simulation)
since 1996. The aim of the simulation is to create a detailed
biological environment and a cognitive simulation. The Simulation is
intended as a palette for open source development. It provides a stable
means of simulating large scale environments and cognitive processes.</P>
<P>It features a number of autonomous simulation components including a
landscape simulation, biological simulation, weather simulation,
sentient creature (Noble Ape) simulation and a simple intelligent-agent
scripting language (ApeScript).</P>
<P>The code is currently (2007) used by Apple Inc and by INTEL for
processor optimization and performance tuning. Apple includes it with
their CHUD performance and debugging developer tool set.</P>
<P>
<A NAME="Polyworld"></A> </P>
<DT><B>Polyworld</B><DD><P>
<UL>
<LI>Web site:
<A HREF="http://sourceforge.net/projects/polyworld">http://sourceforge.net/projects/polyworld</A></LI>
</UL>
</P>
<P>PolyWorld is a computational ecology that I developed to explore issues
in Artificial Life. Simulated organisms reproduce sexually, fight and
kill and eat each other, eat the food that grows throughout the world,
and either develop successful strategies for survival or die. An
organism's entire behavioral suite (move, turn, attack, eat, mate,
light) is controlled by its neural network "brain". Each brain's
architecture--it's neural wiring diagram--is determined from its
genetic code, in terms of number, size, and composition of neural
clusters (excitatory and inhibitory neurons) and the types of
connections between those clusters (connection density and topological
mapping). Synaptic efficacy is modulated via Hebbian learning, so, in
principle, the organisms have the ability to learn during the course of
their lifetimes. The organisms perceive their world through a sense of
vision, provided by a computer graphic rendering of the world from each
organism's point of view. The organisms' physiologies are also encoded
genetically, so both brain and body, and thus all components of
behavior, evolve over multiple generations. A variety of "species",
with varying individual and group survival strategies have emerged in
various simulations, displaying such complex ethological behaviors as
swarming/flocking, foraging, and attack avoidance.</P>
<P>
<A NAME="POSES++"></A> </P>
<DT><B>POSES++</B><DD><P>
<UL>
<LI>Web site:
<A HREF="http://www.gpc.de/e_poses.html">http://www.gpc.de/e_poses.html</A></LI>
</UL>
</P>
<P>The POSES++ software tool supports the development and
simulation of models. Regarding the simulation technique models
are suitable reproductions of real or planned systems for their
simulative investigation.</P>
<P>In all industrial sectors or branches POSES++ can model and
simulate any arbitrary system which is based on a discrete and
discontinuous behaviour. Also continuous systems can mostly be
handled like discrete systems e.g., by quantity discretion and
batch processing.</P>
<P>
<A NAME="Tierra"></A> </P>
<DT><B>Tierra</B><DD><P>
<UL>
<LI>Web site:
<A HREF="http://life.ou.edu/tierra/">http://life.ou.edu/tierra/</A></LI>
</UL>
</P>
<P>Tierra's written in the C programming language. This source code
creates a virtual computer and its operating system, whose
architecture has been designed in such a way that the executable
machine codes are evolve-able. This means that the machine code can be
mutated (by flipping bits at random) or recombined (by swapping
segments of code between algorithms), and the resulting code remains
functional enough of the time for natural (or presumably artificial)
selection to be able to improve the code over time.</P>
<P>
<A NAME="Trend"></A> </P>
<DT><B>Trend</B><DD><P>
<UL>
<LI>Web site:
<A HREF="http://www.complex.iastate.edu/download/Trend/">www.complex.iastate.edu/download/Trend/</A></LI>
</UL>
</P>
<P>Trend is a general purpose cellular automata simulation environment
with an integrated high level language compiler, a beautiful graphical
user interface, and a fast, three stage cached simulation engine. This
is the simulation system that was used to discover the first emergent
self-replicating cellular automata rule set, and the first problem
solving self-replication loop.</P>
<P>Since its simulator is very flexible with regard to cellular space
sizes, cell structures, neighborhood structures and cellular automata
rules, Trend can simulate almost all one or two-dimensional cellular
automata models. It also has a smart backtracking feature which
simplifies rule set development a lot by allowing users to go back to a
previous stage of simulation! With other advanced features, Trend is
probably the most easy to use 2-dimensional cellular automata
simulator.</P>
<P>Also available is jTrend. A Java version of Trend.</P>
<P>
<A NAME="XLIFE"></A> </P>
<DT><B>XLIFE</B><DD><P>
<UL>
<LI>FTP site:
<A HREF="http://linux.maruhn.com/sec/xlife.html">http://linux.maruhn.com/sec/xlife.html</A></LI>
</UL>
</P>
<P>This program will evolve patterns for John Horton Conway's game
of Life. It will also handle general cellular automata with the
orthogonal neighborhood and up to 8 states (it's possible to recompile
for more states, but very expensive in memory). Transition rules and
sample patterns are provided for the 8-state automaton of E. F. Codd,
the Wireworld automaton, and a whole class of `Prisoner's Dilemma'
games.</P>
<P>
<A NAME="Xtoys"></A> </P>
<DT><B>Xtoys</B><DD><P>
<UL>
<LI>Web site:
<A HREF="http://thy.phy.bnl.gov/www/xtoys/xtoys.html">http://thy.phy.bnl.gov/www/xtoys/xtoys.html</A></LI>
</UL>
</P>
<P>xtoys contains a set of cellular automata simulators for X windows.
Programs included are:
<UL>
<LI> xising --- a two dimensional Ising model simulator,</LI>
<LI> xpotts --- the two dimensional Potts model,</LI>
<LI> xautomalab --- a totalistic cellular automaton simulator,</LI>
<LI> xsand --- for the Bak, Tang, Wiesenfeld sandpile model,</LI>
<LI> xwaves --- demonstrates three different wave equations,</LI>
<LI> schrodinger --- play with the Scrodinger equation in an
adjustable potential.</LI>
</UL>
</P>
</DL>
</P>
<HR>
<A HREF="AI-Alife-HOWTO-6.html">Next</A>
<A HREF="AI-Alife-HOWTO-4.html">Previous</A>
<A HREF="AI-Alife-HOWTO.html#toc5">Contents</A>
</BODY>
</HTML>