Artificial Life Models in Software Andrew Adamatzky and Maciej Komosinski (Eds) Artificial Life Models in Software
With 189 Figures Andrew Adamatzky, DSc, MSc Maciej Komosinski, PhD Faculty of Computing, Institute of Computing Science Engineering and Maths Sciences Poznan University of Technology University of the West of England Poznan, Poland Bristol, UK
British Library Cataloguing in Publication Data A catalogue record for this book is available from the British Library
Library of Congress Control Number: 2005926657
ISBN-10: 1-85233-945-4 Printed on acid-free paper. ISBN-13: 978-1-85233-945-6
© Springer-Verlag London Limited 2005 Apart from any fair dealing for the purposes of research or private study, or criticism or review, as permitted under the Copyright, Designs and Patents Act 1988, this publication may only be reproduced, stored or transmitted, in any form or by any means, with the prior permission in writing of the publishers, or in the case of reprographic reproduction in accordance with the terms of licences issued by the Copyright Licensing Agency. Enquiries concerning reproduction outside those terms should be sent to the publishers.
The use of registered names, trademarks, etc. in this publication does not imply, even in the absence of a specific statement, that such names are exempt from the relevant laws and regula- tions and therefore free for general use.
The publisher makes no representation, express or implied, with regard to the accuracy of the information contained in this book and cannot accept any legal responsibility or liability for any errors or omissions that may be made.
Printed in the United States of America. (EB)
987654321
Springer Science+Business Media springeronline.com Preface
Artificial life is an interdisciplinary field of science, hosting experts from com- puter science, biology, physics, chemistry, and mathematics, as well as philo- sophers and artists. It focuses on studying the phenomena of life on all levels of complexity and organization — molecular, cellular, organismic, and pop- ulation. These studies not only employ conventional computers (using both software and hardware), but also take place in wetware, using techniques of biochemical laboratory. Artificial life research is not limited to life forms ex- isting on the Earth. It rather attempts to study the general principles of life which are common to all instances of life, both already recognized and yet unknown. This book is dedicated to the software medium, the most popular and widely employed in the artificial life research. The software medium offers almost unlimited abilities for experiments, which are cheap, easily arranged, and modified. Additionally, such experiments can be repeated under the same conditions, and large amounts of data (unavailable in biological studies) can be collected for analysis. To begin experimentation, a model of life is required. Such models are built in software for all organizational levels of life. Most of the models described in this book are very general and therefore allow for a wide range of experiments. Researchers, academicians and students in artificial life use specialized software to verify their ideas related to evolution dynamics, self-organization, origins of life, multicellular development, natural and artificial morphogenesis, intelligent autonomous robotics, evolutionary robotics, evolvable hardware, emergent collective behaviors, swarm intelligence, evolution of communica- tion and evolution of social behaviors. Artificial life software systems are also essential tools in practical demonstrations in undergraduate and postgradu- ate courses in adaptive systems, evolutionary biology, collective robotics, and nature-inspired computing. This monograph provides an introduction and guidance in modern, at- tractive software tools for modeling and simulation of life-like phenomena. Software projects covered here are still actively developed and supported by VI the developers, who create their programs with both professional and ama- teur users in mind. In most cases, the simulators are employed in research, and results are published. Each chapter describes a single — usually free- to-use — software model, but references to other similar software packages and related scientific works are included as well. The origins of software pack- ages, milestones in their development, and the most important or interesting experiments are also reported. Every chapter is self-consistent and can be read independently. The com- pendium of chapters is split into four parts. The first part — Virtual Living Worlds, focuses on individual creatures and their populations. It includes dis- cussions of Avida: a digital laboratory for studying populations of evolving programs; Framsticks: a model of three-dimensional creatures, their simula- tion, evolution, and experimentation with would-be animals and prototypes of bio-inspired robots; Nerve Garden: an Internet-based virtual terrarium rem- iniscent of a simple ecosystem; GenePool: an interactive software for exper- imenting with aesthetics-based sexual selection and evolution of swimming organisms; and Sodarace: an online-based interface, learning support and en- vironment for construction, experimenting and competition between virtual two-dimensional mobile robots. Dynamics of collectives of simple locally interacting entities is dealt with in the second part — Collective Artificial Life. There, we find discussion of several unique software (and also hardware) platforms — Repast : an advanced agent-based simulation toolkit for studying development of natural and arti- ficial social structures; EINSTein: a multiagent-based simulator of land com- bat modeling individual behaviors and personalities of combatants; StarLogo: an educational programming language for simulation of life-like phenomena — from population dynamics to emergent behavior of complex systems; and Eden: an interactive artwork, including hardware implementation of cellular automata and agents, allowing observers to interact with the installation and influence the development of the artificial ecosystem. Already mentioned in previous chapters, cellular automata — arrays of lo- cally interacting finite automata, which update their states depending on the states of their neighbors, get a proper treatment in the third part — Magic of Discrete Worlds. Two remarkable software tools for studies of discrete uni- verses are introduced here. MCell is a powerful explorer of cellular automata, which supports almost all known nontrivial cellular automaton rules and has a regularly updated database of old and newly discovered patterns. Discrete Dynamics Lab (DDLab) is an interactive tool for designing and investigat- ing dynamics of discrete dynamical networks, including simulation of decision networks, generating attraction basins, and searching for mobile patterns. The book completes — the fourth part — Artificial Life Arts, with two chapters raising aesthetical issues of would-be worlds. The first chapter of this part reveals ways to breed images and sounds using SBEAT (for graphics) and SBART (for music). These computer programs are designed to select and breed genotypes that represent graphical and musical pieces. The last VII chapter of the book searches for a phenomenological understanding of what makes artificial life appealing to scientists, artists and laymen, and why people become attracted to certain forms of creative computer art. The Appendix contains a table that summarizes software systems de- scribed in this book. For each program, the table includes a short description, information about availability on various platforms and operating systems, software requirements, license type, and the Internet web site address. The book covers hot topics related to computer science, evolutionary and computational biology, simulation, robotics, cognitive science, cybernetics, ar- tificial intelligence, multiagent societies, virtual worlds, computer graphics and animation, neuroscience, and philosophy. We hope that academics, re- searchers, graduate students, and amateurs interested in these fields will find this monograph a valuable guide to artificial life and an excellent supplemen- tary reading.
Andrew Adamatzky April 2005 Maciej Komosinski Contents
Part I Virtual Living Worlds
1 Avida: Evolution Experiments with Self-Replicating Computer Programs Charles Ofria, Claus O. Wilke ...... 3 2 Framsticks: A Platform for Modeling, Simulating, and Evolving 3D Creatures Maciej Komosinski ...... 37 3 Nerve Garden: Germinating Biological Metaphors in Net-based Virtual Worlds Bruce Damer, Karen Marcelo, Frank Revi, Todd Furmanski, Chris Laurel 67 4 GenePool: Exploring the Interaction Between Natural Selection and Sexual Selection Jeffrey Ventrella ...... 81 5 Sodarace: Adventures in Artificial Life Peter W. McOwan, Edward J. Burton ...... 97
Part II Collective Artificial Life
6 Escaping the Accidents of History: An Overview of Artificial Life Modeling with Repast Michael J. North, Charles M. Macal ...... 115 7 EINSTein: A Multiagent-based Model of Combat Andrew Ilachinski ...... 143 XContents
8 StarLogo: A Programmable Complex Systems Modeling Environment for Students and Teachers Andrew Begel, Eric Klopfer ...... 187 9 On the Evolution of Sonic Ecosystems Jon McCormack ...... 211
Part III Magic of Discrete Worlds
10 Exploring Cellular Automata with MCell Mirek Wojtowicz ...... 233 11 Discrete Dynamics Lab: Tools for Investigating Cellular Automata and Discrete Dynamical Networks Andrew Wuensche ...... 263
Part IV Artificial Life Arts
12 Simulated Breeding — A Framework of Breeding Artifacts on the Computer Tatsuo Unemi ...... 301 13 Enriching Aesthetics with Artificial Life Alan Dorin ...... 323 A Appendix: Artificial Life Software ...... 337
Index ...... 343 List of Contributors
Andrew Adamatzky To dd Furmanski Faculty of Computing, Engineering School of Cinema-Television and Mathematical Sciences University of Southern California University of the West of England LUC-310B Los Angeles, CA Bristol BS16 1QY UK 90089-2211 USA [email protected] [email protected]
Andrew Begel Andrew Ilachinski University of California The Center for Naval Analyses Berkeley, CA USA Corporation, Virginia, USA [email protected] [email protected]
Eric Klopfer Edward J. Burton Massachusetts Institute of Technol- Soda Creative Ltd. ogy, Cambridge, MA, USA London E2 8HD UK [email protected] [email protected] Maciej Komosinski Bruce Damer Institute of Computing Science Biota.org Special Interest Group Poznan University of Technology P.O. Box 66866, Scotts Valley, CA Piotrowo 3A, 60-965 Poznan, Poland 95067-6866 USA [email protected] [email protected] Chris Laurel Alan Dorin Contact Consortium, P.O. Box 66866 Center for Electronic Media Art, Scotts Valley, CA 95067-6866 USA School of Computer Science and Software Engineering Charles Macal Monash University Argonne National Laboratory, 9700 3800 Australia S. Cass Avenue, Argonne, IL, USA [email protected] [email protected] XII List of Contributors
Karen Marcelo Tatsuo Unemi Biota.org Special Interest Group Department of Information Systems P.O. Box 66866, Scotts Valley, CA Science, Soka University 95067-6866 USA 1-236 Tangi-machi, Hachi¯oji, Tokyo, 192-8577 Japan Jon McCormack [email protected] Centre for Electronic Media Art, School of Computer Science and Software Engineering Jeffrey Ventrella Monash University, Victoria, 3800 Adobe Systems Incorporated Australia 345 Park Avenue [email protected] San Jose, CA, 95110-2704 USA [email protected] Peter W. McOwan Computer Science, Queen Mary, Claus O. Wilke University of London, E1 4NS UK Keck Graduate Institute, 535 Watson [email protected] Drive, Claremont, CA 91711 USA Michael J. North [email protected] Argonne National Laboratory, 9700 S. Cass Avenue, Argonne, IL, USA Mirek Wojtowicz [email protected] wellCAM CCS s.c. ul.B.Smialego3-1 Charles Ofria 20-611 Lublin Department of Computer Science Poland and Engineering, Michigan State [email protected] University, East Lansing MI 48840 USA [email protected] Andrew Wuensche Faculty of Computing, Engineering Frank Revi and Mathematical Sciences Biota.org Special Interest Group University of the West of England P.O. Box 66866, Scotts Valley, CA Bristol BS16 1QY UK 95067-6866 USA [email protected] Part I
Virtual Living Worlds 1 Avida: Evolution Experiments with Self-Replicating Computer Programs
Charles Ofria and Claus O. Wilke
Avida is a software platform for experiments with self-replicating and evolv- ing computer programs. It provides detailed control over experimental settings and protocols, a large array of measurement tools, and sophisticated meth- ods to analyze and postprocess experimental data. This chapter explains the general principles on which Avida is built, its main components and their interactions, and gives an overview of some prior research with Avida.
1.1 Introduction to Avida
When studying biological evolution, we have to overcome a large obstacle: Evolution happens extremely slowly. Traditionally, evolution has therefore been a field dominated by observation and theory, even though some regard the domestication of plants and animals as early, unwitting evolution exper- iments. Realistically, we can carry out controlled evolution experiments only with organisms that have very short generation times, so that populations can undergo hundreds of generations within a timeframe of months to a few years. With the advances in microbiology, such experiments in evolution have become feasible with bacteria and viruses [14, 39]. However, even with mi- croorganisms, evolution experiments still take a lot of time to complete and are often cumbersome to carry out. In particular, certain data can be diffi- cult or impossible to obtain, and it is often impractical to carry out enough replicas for high statistical accuracy. According to Daniel Dennett, “evolution will occur whenever and wher- ever three conditions are met: replication, variation (mutation), and differen- tial fitness (competition)” [9]. It seems to be an obvious idea to set up these conditions in a computer and to study evolution in silico rather than in vitro.