A.L.E.S.: An Agent-Based Artificial Life Platform
John Daigle
Abstract: In fall of 2005, I worked with 3 other students to build the Artificial Life Ecosystem Simulator, a simple Java platform for simulating the behavior of single celled organisms in a simple environment. That project has led to the a collaborative open source effort in the Alife and AI communities. In this proposal, I suggest a new direction for the A.L.E.S. as a platform for studying learning in populations, evolution, and adaptation.
1 Introduction
Artificial Intelligence and Artificial Life are not quite the same field. However, both fields are concerned with the same basic question: That of developing systems that are adaptable, that display behaviors that are emergent properties of their programming rather than simple executions of instructions.[2] An adaptable system, however, does not have to be intelligent in the sense of having predictive power or being able to model an evironment. Especially in networking, many researchers are trying to harnass the properties of so called ``swarm intelligence'' to solve problems.[1, 6]
A swarm intelligent system is essentially a simple agent based model consisting of a huge number of simple agents interacting with each other and some environment. The behavior of this system as a whole can be used to solve difficult problems, such as TSP.[4] Because this type of system models living systems, such as Ants or Fish, it is Artificial Life. Because the system is an adaptable, agent based system, it is also artificial intelligence.
2 A.L.E.S.
The Artificial Life Ecosystem Simulator is a Java program that attempts to model simple life forms. Very simple software agents interact with each other and an environment. In the current system, there are three creature models, carnivores, herbivores, and plants. Carnivores are capable of detecting and eating herbivores, herbivores detect and eat plants, and plants just drift. All three species have a lifespan, during which they may divide several times to create new creatures.
In the current A.L.E.S. system, there is no variation between two plants, all plants are exactly the same. So to add a new behavior to the system, the programmer has to create new classes. Without variation, the simulation is completely flat, no new behavior can appear and the system as a whole cannot adapt. So if the environment is altered in some way to be hostile to a certain species, that species will simply go extinct.
So the current A.L.E.S. system is not artificial life or artificial intelligence. It is, however, a promising framework on which to build both.
3 New Directions for the A.L.E.S
In order for the A.L.E.S. to be an intelligents system, it must involve adapation to circumstance. However, the system only models very simple (unicellular) agents. Such creatures, in the real world, show very limited abilities to learn or alter their behavior. However, populations of such creatures show natural variability in characteristics, which, over a great many generations, lead to such phenomena as a species of bacteria ``learning'' to eat nylon. [3]
The next direction for the A.L.E.S. is to create population variation and heredity. This will allow entire populations to learn over time, a crucial step in modeling both intelligence and life. A further step from that would be an attempt to model more complex and intelligent single celled systems, such as the mammalian immune system, which is a complex agent based information processing system, and therefore an excellent subject for artificial intellence research.[5]
However, it would be much more interesting to evolve an immune system than simply design one, so the best direction for A.L.E.S. to take is to maximize the evolvability of the system.
4 Project Goals
The goals for the A.L.E.S. project during this semester are as follows:-
Debug the system for wider use.
- Add mechanisms for adaptation and variation over many generations.
- Investigate and if possible implement simpler tools for adding new species to the simulator.
- Increase the complexity of the environment.
- Investigate means of encoding the ``genetics'' of each species in order to allow for genetic behaviors such as frame shifting or point mutation.
References
-
[1]
-
D. de Oliveira, P. R. F. Jr., and A. L. C. Bazzan, ``A swarm based approach for
task allocation in dynamic agents organizations,'' in AAMAS '04:
Proceedings of the Third International Joint Conference on Autonomous Agents
and Multiagent Systems.1em plus 0.5em minus 0.4emWashington,
DC, USA: IEEE Computer Society, 2004, pp. 1252--1253.
- [2]
-
J. Doyle and T. Dean, ``Strategic directions in artificial intelligence,''
ACM Comput. Surv., vol. 28, no. 4, pp. 653--670, 1996.
- [3]
-
S. Ohno, ``Birth of a unique enzyme from an alternative reading frame of the
preexisted, internally repetitious coding sequence.'' Proc Natl Acad
Sci U S A, vol. 81, no. 8, pp. 2421--2425, April 1984.
- [4]
-
P. Tarasewich and P. R. McMullen, ``Swarm intelligence: power in numbers,''
Commun. ACM, vol. 45, no. 8, pp. 62--67, 2002.
- [5]
-
J. C. Tay and A. Jhavar, ``CAFISS: a complex adaptive framework for
immune system simulation,'' in SAC '05: Proceedings of the 2005 ACM
symposium on Applied computing.1em plus 0.5em minus 0.4emNew
York, NY, USA: ACM Press, 2005, pp. 158--164.
- [6]
-
S. Ziane and A. Melouk, ``A swarm intelligent multi-path routing for multimedia
traffic over mobile ad hoc networks,'' in Q2SWinet '05: Proceedings of
the 1st ACM international workshop on Quality of service & security in
wireless and mobile networks New
York, NY, USA: ACM Press, 2005, pp. 55--62.
This document was translated from LATEX by
HEVEA.
Created 12 February 2006
by John P. Daigle