- Darwinbots
-
Darwinbots
Screenshot from the game.Developer(s) Carlo Comis, et al. Version Darwinbots 2.45.01 Platform(s) Windows Release date(s) 2003-2011 Genre(s) Artificial Life Mode(s) Single player Media/distribution PC DarwinBots is an open source artificial life simulator, originally developed by Carlo Comis, providing a virtual environment in which a number of digital organisms called "bots" interact, fight for resources, and eventually reproduce and evolve.
Contents
Simulation
Darwinbots simulates genes that control the behavior of an individual "bot". Each gene has a trigger for its activation, a body that dictates gene function, and an end marker. Darwinbots does not simulate intermediate information carriers or effectors (RNA or proteins) and gene interactions are minimal. Individuals with similar DNA recognize each other as relatives.[1]
Each bot has an energy level which increases through feeding, and decreases through activating an encoded action. Metabolism is simulated with this consumption of energy and production of waste. A bot may die if its energy too low or the waste around them is too high. Efficiency of energy and waste management is the main selective mechanism for evolution. In addition, feeding requires a combination of vision, movement, target recognition and attack.[1]
Development history
Darwinbots is developed in Visual Basic 6. An effort was made to port Darwinbots's code from Visual Basic to C++, but this port has been abandoned and now a C# port is being developed. Progress is somewhat slow, however, and the Visual Basic program is still being updated and new features being added.
The design principles of Darwinbots were:
- All bots have their own semi-protected address space. Other bots can modify this, but it is an aggressive action to do so, proximity is required, and there are counter measures to protect against it.
- All bots execute their entire DNA code once per cycle, rather than a single code being activated per cycle.
- The bots' world is a non discrete flat plane. That is, bots are not segmented into grids as in cellular automata.
- Every bot is equipped with a set of basic, but high level abilities, addressed through specific memory locations called sysvars, which allow it to interact with the world. These sysvars are things such as "accelerate forward a set amount" or "fire a connective tie".
Darwinbots gives the organisms comparatively high level tools, and sees if they can form even more complex behaviors from these. Darwinbots does not attempt to evaluate the fitness of individual organisms at all, and gives energy uniformly to organisms deemed plants at the start of the simulation and their descendants. Since there is no external fitness function, there is no single metric of fitness; rather, fitness varies according to organisms' adaptation to local environments.
Reviews
The Science Advisory Board commented that the Darwinbots software could be developed into a model of complex interactions amongst cells, tissues and organs: "Normal and pathological physiology could be re-thought as inter-specific relationships."[1]
See also
- Digital organism
- Artificial life
- List of other Alife Simulators
External links
- DarwinBots Wiki home page
- Darwinbots Forum
- DarwinBots's original webpage
- Biota Interview with Jay Lemmon on DarwinBots (MP3)
References
- ^ a b c Laura, Ana. "Scientific & Medical Links". The Science Advisory Board. http://www.scienceboard.org/resources/links.asp?linkId=3716.
Categories:- Artificial life
- Free, open source video games
Wikimedia Foundation. 2010.