DigitalSpace Papers

Nerve Garden: a Virtual Terrarium in Cyberspace

Bruce Damer, Karen Marcelo, Frank Revi
Contact Consortium, Biota.org
special interest group
343 Soquel Ave, Suite 70
Santa Cruz CA 95062-2305 USA
contact us via our Webmaster project sites: http://www.ccon.org and http://www.biota.org

Bibliographic Reference: Published in the proceedings of Virtual Worlds and Simulation Conference (VWSIM '99), Christopher Landauer and Kirstie Bellman, Editors, SCS (Society for Computer Simulation) Simulation Series, ISBN 1-56555-157-5, pp. 131-135.

If you have comments on this paper, please email comments to contact Bruce Damer via our Webmaster.
Introduction

Nerve Garden is a biologically inspired multi-user collaborative 3D virtual world available to a wide Internet audience. The project combines a number of methods and technologies, including L-systems, Java, cellular automata, and VRML. Nerve Garden is a work in progress designed to provide a compelling experience of a virtual terrarium which exhibits properties of growth, decay and energy transfer reminiscent of a simple ecosystem. The goals of the Nerve Garden project are to create an on-line 'collaborative A-Life laboratory' which can be extended by a large number of users for purposes of education and research.

The Role of Alife in virtual worlds on the Internet

There are several reasons why concepts from the fields of artificial life (Alife) can be valuable in online virtual worlds:
  1. To provide biologically inspired behaviors, including animated behaviors, growth and decay, generation and mutation to draw users into these spaces, for purposes of entertainment or learning about the living world.

  2. To power underlying architectures with biological metaphors.
Using Alife to draw attention span

We have seen the success of non networked CD-ROM games such as 'Creatures' from Cyberlife of Cambridge, UK, Petz from P.F. Magic of San Francisco and the ubiquitous Tomogatchi of Japan in capturing the human imagination, attention span and pocket book. Networked environments, such as gameplay systems, and social creative virtual worlds, are all on the verge of acquiring richer biological metaphors. For networked gaming, the drive for more lifelike animation, better combatant characters and more rich and changeable worlds inspires efforts such as Motion Factory’s Piccolo, a state machine based character animator. Players soon tire of key-framed repeatable behavior sequences and yearn for objects that seem to learn their moves through stimuli from the human players. Believable physics, non-canned motion, stimulus and response learning drive developers to borrow from biology.

Social creative virtual worlds have similar needs to gameplay systems, with less emphasis on real time low latency action. Moves to introduce biologically inspired experiences are already underway in these spaces. It is felt the introduction of Alife metaphors will not only draw in many more users but also strengthen the community matrix. Pets and gardens, perhaps our most intimate biological companions in the physical world, would serve to improve the quality of life in the virtual fold. The vision for Nerve Garden is as an adjunct to classroom hands-on science ('real dirt' terraria). Students can 'dissect' virtual plants to glean the underlying algorithms, L-systems, which are suggestive of the processes in real plant DNA.

Alife powering better virtual world architectures

The recent failure of many efforts in the VRML community to promote an all encompassing standard which would serve behavior rich virtual worlds over the net points out the pressing need for better architectures. The key to delivery of better experiences to a variety of user platforms on low bandwidth connections is to understand that the visual representation of a world and its underlying coding need to be separated. This separation is a fundamental principle of living forms: the abstract coding, the DNA is vastly different than the resulting body. This phenotype/genotype separation also has another powerful property: compression. VRML simply defined a file format, a phenotype, which would be delivered to a variety of different end computers (akin to ecosystems) without any consideration of scaling, or adapting, to that end computer. A biologically inspired virtual world would more effectively package itself in some abstract representation, travel highly compressed along the thin tubes of the Internet, and then generate itself to a complexity appropriate to the compute space in which it finds itself.

As the virtual environment unfolds from its abstraction, it can generate useful controls, or lines of communication, which allow it to talk to the worlds back on servers or to peers on the network. These lines of control can also create new interfaces to the user, providing unique behaviors. One might imagine users plucking fruit from virtual vines only to have those vines grow new runners with fruit in different places. With non-generative, or totally phenotypic models, such interaction would be difficult if not impossible. As we will see in the description of Nerve Garden later in this paper, important scenegraph management techniques such as polygon reduction or level of detail and level of behavior scaling could also be accomplished by the introduction of ecosystem style metaphors. If we define the energy state of a virtual world inversely to the computing resources it is consuming, it would be more beneficial for any scenegraph or objects in it to evolve more efficient representations.

Nerve Garden: a Public Terrarium in Cyberspace

Nerve Garden is the Consortium’s first major attempt to marry Artificial Life metaphors with virtual worlds. The projects described earlier in this chapter were attempts to build a strong social context and achieve something meaningful inside a 3D inhabited space. The Nerve Garden was designed to bring a multi-user biologically inspired space online and eventually marry it with avatar embodied social environments. This is a work in process and we invite your participation.

History of the project

During the summer of 1994, one of us (Damer) paid a visit to the Santa Fe Institute for discussions with Chris Langton and his student team working on the Swarm project. Two fortuitous things were happening during that visit, SFI was installing the first Mosaic Web browsers, and digital movies of Karl Sims’ evolving 'block creatures' (Sims, 1994) were being viewed through the Web by amazed students (figure 1 and on the Internet at http://www.biota.org/conf97/ksims.html). It was postulated then that the combination of the emerging backbone of the Internet, a distributed simulation environment like Swarm and the compelling 3D visuals and underlying techniques of Sims’ creatures could be combined to produce something very compelling: on-line virtual worlds in which thousands of users could collaboratively experiment with biological paradigms.


One of the Contact Consortium’s special interest groups, called Biota.org, was chartered in mid 1996 to develop virtual worlds using techniques from the Artificial Life (ALife) field. Its first effort is Nerve Garden, which came on-line in August of 1997 at the SIGGRAPH 97 conference. Three hundred visitors to the Nerve Garden installation used L-systems and Java to germinate plants models into a shared VRML (Virtual Reality Modeling Language) world hosted on the Internet. Biota.org is now developing a subsequent version of Nerve Garden, which will embody more biological paradigms, and, we hope, create an environment capable of supporting education, research, and cross-pollination between traditional A-Life subject areas and other fields.

Nerve Garden I: architecture and experience


Figure 2: Flight of the bumblebee above Nerve Garden
Click to get print resolution view

Nerve Garden I (figure 2) is a biologically-inspired shared state 3D virtual world available to a wide audience through standard Internet protocols running on all major hardware platforms. Nerve Garden was inspired by the original work on ALife by Chris Langton (Langton 1992), the digital ecosystem called Tierra by Tom Ray (Ray 1994a) and the evolving 3D virtual creatures of Karl Sims (Sims 1994). Nerve Garden sources its models from the work on L-systems by Aristide Lindenmayer, Przemyslaw Prusinkiewicz and Radomir Mech ( Prusinkiewicz and Lindenmayer 1992) (Mech and Prusinkiewicz, 1996).

The first version of the system, Nerve Garden I, allowed users to operate a Java client, the Germinator (figure 3) to extrude 3D plant models generated from L-systems. The 3D interface in the Java client provided an immediate 3D experience of various L-system plant and arthropod forms. Users employed a slider bar to extrude the models in real time and a mutator to randomize production rules in the L-systems and generate variants on the plant models. After germinating several plants, the user would select one, name it and submit it into to a common VRML97 scenegraph called the Seeder Garden.


Figure 3: Lace Germinator Java client interface
Click to get print resolution view

The object passed to the Seeder Garden contained the VRML export from the Germinator, the plant name and other data. Another Java application, called NerveServer, received this object and determined a free 'plot' on an island model in a VRML scenegraph. Each island had a set number of plots and showed the user where his or her plant was assigned by a red sphere operated through the VRML external authoring interface (EAI). Cybergardeners would open the Seeder Garden window where they would then move the indicator sphere with their plant attached and place it into the scene.

Various scenegraph viewpoints were available to users, including a moving viewpoint on the back of an animated model of a flying insect endlessly touring the island. Users would often spot their plant as the bee or butterfly made a close approach over the island. Over 10MB of sound, some of it also generated algorithmically, emanated from different objects on the island added to the immersion of the experience. For added effect, L-system based fractal VRML lightening (with generated thunder) occasionally streaked across the sky above the Seeder Garden islands.

NerveServer permitted multiple users to update and view the same island. In addition, users could navigate the same space using standard VRML plug-ins to Web browsers on SGI workstations, PCs or Macintosh computers from various parts of the Internet. One problem was that the distributed L-system clients could easily generate scenes with several hundred thousand polygons, rendering them impossible to visit. We used 3D hardware acceleration, including an SGI Onyx II Infinite Reality system and a PC running a 3D Labs Permedia video acceleration card to permit a more complex environment to be experienced by users. In 1999 and beyond, a whole new generation of 3D chip sets on 32 and 64 bit platforms will enable highly complex 3D interactive environments. There is an interesting parallel here to Ray’s work on Tierra, where the energy of the system was proportional to the power of the CPU serving the virtual machine inhabited by Tierran organisms. In many Artificial Life systems, it is not important to have a compelling 3D interface. The benefits to providing one for Nerve Garden are that it encouraged participation and experimentation from a wide group of users. The experience of Nerve Garden I is fully documented on the Web at (see references below). Several gardens generated during the SIGGRAPH 97 installation can be visited.

What was learned

As a complex set of parts including a Java client, simple object distribution system, a multi-user server, a rudimentary database and a shared, persistent VRML scenegraph, Nerve Garden functioned well under the pressures of a diverse range of users on multiple hardware platforms. Users were able to use the Germinator applet without our assistance to generate fairly complex, unique, and aesthetically pleasing models. Users were all familiar with the metaphor of gardens and many were eager to 'visit their plant' again from their home computers. Placing their plants in the VRML Seeder Gardens was more challenging due to the difficulty of navigating in 3D using VRML browsers. Younger users tended to be much more adept at using the 3D environment.

In examination of its deficiencies, while it was a successful user experience of a generative environment, Nerve Garden I lacked the sophistication of a 'true ALife system' like Tierra (Ray 1994a) in that plant model objects did not reproduce or communicate between virtual machines containing other gardens. In addition, unlike an adaptive L-system space such as the one described in (Mech and Prusinkiewicz, 1996), the plant models did not interact with their neighbors or the environment. Lastly, there was no concept of autonomous, self replicating objects within the environment. Nerve Garden II, now under development, will address some of these shortcomings, and, we hope, contribute a powerful tool for education and research in the ALife community.

In conclusion, did Nerve Garden serve some of the goals for virtual worlds and Alife enunciated at the beginning of this chapter? The environment did provide a compelling space to draw attention while also proving that an abstraction of a world, that of an L-system, could be transmitted then generated on the client computer, achieving great compression and efficiency. When combined with streaming and ecosystem controls, Nerve Garden could evolve into a powerful virtual world architecture testbed (see The next steps: Nerve Garden II below).

Visiting Nerve Garden I

Nerve Garden I can be visited using a suitable VRML97 compatible browser. Models made at SIGGRAPH 97 can be viewed at http://www.biota.org/nervegarden. The Biota project and its annual conferences are covered at http://www.biota.org.

The next steps: Nerve Garden II

The goals for Nerve Garden II are:
Much of the above depends on the availability of a comprehensive scenegraph and behavior control mechanism. In development over the past two years, Nerves is a simple but high performance general purpose cellular automata engine written as both a C++ and Java kernel. Nerves is modeled on the biological processes seen in animal nervous systems, and plant and animal circulatory systems, which all could be reduced to token passing and storage mechanisms. Nerves and its associated language, NerveScript, allows users to define a large number of arbitrary pathways and collection pools supporting flows of arbitrary tokens, token storage, token correlation, and filtering. Nerves borrows many concepts from neural networks and directed graphs used in concert with genetic and generative algorithms as reported by Ray, Sims (Ray 1994b, Sims 1994) and others.

Nerves components will underlie the Seeder Gardens providing functions analogous to a drip irrigation system, defining a finite and therefore regulatory resource from which the plant models must draw for continued growth. In addition, Nerves control paths will be generated as L-system models extrude, providing wiring paths connected to the geometry and proximity sensors in the model. This will permit interaction with the plant models. When pruning of plant geometry occurs or growth stimulus becomes scarce, the transformation of the plant models can be triggered. One step beyond this will be the introduction of autonomous entities into the gardens, which we term 'polyvores', that will seek to convert the 'energy' represented by the polygons in the plant models, into reproductive capacity. Polyvores will provide another source of regulation in this simple ecosystem. Gardens will maintain their interactive capacity, allowing users to enter, germinate plants, introduce polyvores, and prune plants or cull polyvores. Gardens will also run as automatous systems, maintaining polygon complexity within boundaries that allow users to enter the environment.

spinalTap.nrv

DEF spinalCordSeg Bundle {
-spinalTapA-Swim-bodyMotion[4]-Complex;
-spinalTapB-Swim-bodyMotion[4]-Complex;
}
Figure 4: Sample NerveScript coding language

We expect to use Nerves to tie much of the above processes together. Like VRML, Nerves is described by a set of public domain APIs and a published language, NerveScript. Figure 4 lists some typical NerveScript statements which describe a two chain neural pathway that might be used as a spinal chord of a simple swimming fish. DEF defines a reusable object spinalCordSeg consisting of input paths spinalTapA and spinalTapB which will only pass the token Swim into a four stage filter called bodyMotion. All generated tokens end up in Complex, another Nerve bundle, defined elsewhere.


Figure 5: Nerves visualizer running within the NerveScript development environment

Figure 5 shows the visualization of the running NerveScript code in the NerveScript development environment. In the VRML setting, pathways spinalTapA and B are fed by eventOut messages drawn out of the scenegraph while the Nerve bundles generate eventIns back to VRML using the EAI. Nerves is fully described at the web address referenced at the end of this paper.
Thanks
In addition to the extensive contributions made by the authors of this paper, we would like to thank the following sponsors: Intervista, Silicon Graphics and Cosmo Software, 3D Labs. A special thanks goes to Przemyslaw Prusinkiewicz and numerous other individuals who have worked on aspects of the project since 1995.
References
Damer, B., 1997, Avatars, Exploring and Building Virtual Worlds on the Internet, Berkeley: Peachpit Press.

Sims, K., "Evolving Virtual Creatures," Computer Graphics (Siggraph '94) Annual Conference Proceedings, July 1994, pp.43-50.

Ray, T. S. 1994a. Netlife - Creating a jungle on the Internet: Nonlocated online digital territories, incorporations and the matrix. Knowbotic Research 3/94.

Ray, T. S. 1994b. Neural Networks, Genetic Algorithms and Artificial Life: Adaptive Computation. In Proceedings of the 1994 ALife, Genetic Algorithm and Neural Networks Seminar, 1-14. Institute of Systems, Control and Information Engineers.

Langton, C. 1992. Life at the Edge of Chaos. Artificial Life II 41-91. Redwood City CA: Addison-Wesley.

Prusinkiewicz, P., and Lindenmayer, A., eds. 1990. The Algorithmic Beauty of Plants. New York: Springer Verlag.

Mech, R., and Prusinkiewicz, P. 1994. Visual Models of Plants Interacting with Their Environment. In Proceedings of SIGGRAPH 96 . In Computer Graphics Proceedings, 397-410. ACM Publications.

Kelly, Kevin, 1994, Out of Control: The New Biology of Machines, Social Systems and the Economic World, Perseus Press.

Please send any comments on this paper to Bruce Damer
Return to DigitalSpace Documents