The Help Menu

The Help menu provides the same text that has been presented in the Software Documentation section of this report, as well as a few other items that will be presented here.

Help-Important!!!

 Important Hot Keys:

It is essential to know how to use a few Hot Keys to control the view of the render window.  These keys allow you to switch to full screen view, to change the camera position, to view the inner structure of the creatures, and to touch the creatures.  There are also Hot Key that replace the functions of the buttons.  These are especially useful when you view the creature in full screen mode. 

Active keys set by the renderer:

·        Arrow keys - tilt and rotate the camera position

·        +  - zoom in

·        -  - zoom out

·        F2 - toggle between smooth, flat, and wireframe rendering

·        F4 - toggle showing of axes through the Newtonian Reference Frame, and the individual body reference frames

·        F5 - toggle showing of a line from the light source through the origin

·        F9 - toggle between window and full-screen viewing modes

·        t  - toggle between window and full-screen viewing modes

·        Ctrl-Arrow keys - move the light source around

 

Active keys set by the application:

·        Enter - reset the creature to its initial position

·        x - pull the creature in the positive x direction by the first and last segments

·        a - pull the creature in the negative x direction by the first and last segments

·        y - pull the creature in the positive y direction by the first and last segments

·        b - pull the creature in the negative y direction by the first and last segments

·        z - pull the creature in the positive z direction by the first and last segments

·        c - pull the creature in the negative z direction by the first and last segments

·        g - toggle the ground plane between visible and invisible

·        k - toggle the color effector between none, neuron, and joint

·        r - reproduce (either random, or reproduce the selection if any)

·        s - select the current creature for reproduction

·        d - delete the current creature

·        1 - pull the first segment in a random direction

·        2 - pull the second segment in a random direction

·        3 - pull the third segment in a random direction

·        4 - pull the fourth segment in a random direction

·        5 - pull the fifth segment in a random direction

·        6 - pull the sixth segment in a random direction

·        7 - pull the seventh segment in a random direction

·        8 - pull the eighth segment in a random direction

·        9 - pull the ninth segment in a random direction

·        0 - pull the tenth segment in a random direction

·        e - increase the time step

·        p - decrease the time step

 

The following keys are valid only if the camera is not following the creature:

·        u - move the camera in the positive y direction

·        n - move the camera in the negative y direction

·        h - move the camera in the positive x direction

·        l - move the camera in the negative x direction

·        i - move the camera in the positive z direction

·        o - move the camera in the negative z direction

The Zoo

Keeping the Zoo:  This program comes with a Zoo of creatures that have been previously created.  You can visit the Zoo by using the File-Read menu item.  This will pop up a window that shows a large number of genome files with names like "BaitFish.gen".  Just select any one of these genomes and the creature will appear in the render window.

You can evolve them into something else if you like!

If you have created a creature that you would like to add to the Zoo, you can save it by using the File-Save menu item, and giving the creature a name.  Now you can view it again later when visiting the Zoo.

 

Evolution

If you find a creature that you like, you can evolve it into something even better!  Press the Select button while your chosen creature is displayed.  Notice that the radio-buttons next to the Reproduce button change from Random to Selection.

Now, when you press the Reproduce button again, you will make children from your selected creature, with genetic variations!  If you see a variation that you like even better, press the Select button again, and your new favorite creature will become the parent of the next generation.

Genetic variations affect both the form of the body, and the form of the nervous system.  So there will be variations in both form and behavior.  You can select for more interesting behaviors, as well as more interesting forms.

You might want to add your favorite evolved creatures to the Zoo by using the File-Save menu selection.  You might also want to use creatures in the Zoo as the starting point for evolution.

If you want to make random creatures again, just click the radio-button labeled Random.  As long as the Random radio-button is selected, all creatures will be created at random.  As long as the Selection radio-button is selected, all creatures will be the children of the last creature you selected.

 

 

 

The Circuit Tool:

The Circuit tool currently exists as a separate, free-standing software.  This is a temporary status during the development of this new tool.  As soon as the tool is perfected, it will be integrated into the VirtualLife software.  It is included with this distribution as a Circuit.exe file.

The circuit dialog prompts the user to Choose a Genome for analysis.  This button will open an Open File – Selection dialog restricted to files with the .log extension.  The user should select a file that was generated through the Options – Log Data – Log Neural Nets – Log Phenotype facility of the Virtual Life software.

After the user has chosen a log-phenotype-neural-net-file for analysis, the dialog will display the name of the file, and tell us if the creature has a global net, and tell us how many local nets exist in the body.  The user is prompted to use the edit box to enter a number corresponding to the specific net that they wish to analyze.  In the example above, there are 7 local nets and a global net.  Therefore the user could enter values ranging from 0 to 6 to choose a local net, or a value greater than 100 (e.g. 101) to choose the global net.  Once the user has specified a specific net for analysis, they can click the Create Circuit button to generate a diagram of the circuit:

The image above is the circuit diagram resulting from selecting circuit 0 the Ja290828 genome.

In the example above, the user selects net 4 of the Ja290828 genome, and the resulting circuit is displayed below:

 

Make Darwin proud!


Related Publications, Web Pages, and Events

 

Karl Sims

This project is based on the work of Karl Sims, whose web page is: http://www.genarts.com/karl/.  His original work with Evolved Virtual Creatures is described in two publications:

"Evolving Virtual Creatures", K.Sims, Computer Graphics (Siggraph '94 Proceedings), July 1994, pp.15-22.

"Evolving 3D Morphology and Behavior by Competition", K.Sims, Artificial Life IV Proceedings, ed.by Brooks & Maes, MIT Press, 1994, pp.28-39.

Math Engine

This project uses the MathEngine physics libraries.  The main MathEngine web site is: http://www.mathengine.com, Japanese site: http://www.jp.mathengine.com/

The MathEngine site includes online documentation at: http://dev.mathengine.com.

The MathEngine developer’s site includes the following documents: 

User Manual:

http://dev.mathengine.com/Developers/SDK/FastDynamics/Docs/UserManual/index.htm 

Reference Manual:

http://dev.mathengine.com/Developers/SDK/FastDynamics/Docs/ReferenceManual/index.html

Physics Notes:

http://dev.mathengine.com/Developers/SDK/FastDynamics/Docs/PhysicsNotes/index.html

Code Book:

http://dev.mathengine.com/Developers/CodeBook.htm

Fast Dynamics Examples:

http://dev.mathengine.com/Developers/SDK/FastDynamics/Docs/UserManual/Examples.html

Open Source Demo:

http://dev.mathengine.com/Developers/open_source_demo.htm

Misc. Downloads:

http://dev.mathengine.com/Developers/downloads.htm

Bug Reports:

http://dev.mathengine.com/Developers/bug.htm

FAQ:

http://dev.mathengine.com/Developers/faq_main.htm

Newsgroup:

http://dev.mathengine.com/Developers/newsgroup.htm

 

Workshop on the Coevolution of Brains and Bodies

http://computing.tay.ac.uk/timtaylor/cobb/

http://alife7.alife.org/workshops.shtml#Coevolution of Brains and Bodies

Tim Taylor, John Hallam, Hod Lipson and Tom Ray

contact:tim.taylor@abertay.ac.uk

Aim:

This workshop aims to bring together researchers working on the co-evolution of brains and bodies for physically- or virtually-embodied creatures. The best known work in this field is still the seminal research by Karl Sims with his "blockies"; however, a number of research groups have (at last) now started to emulate and extend Sims' work, and the aim of this workshop is to provide the opportunity for these groups to discuss their research with others working on similar topics. The organisers also encourage the attendance of those working on the evolution of controllers for fixed-morphology and parametric-morphology creatures, to promote the discussion of the relative merits of both approaches.

The main objective of the workshop is to identify the major theoretical and technological issues facing research of this nature, and to discuss possible resolutions of these issues. Theoretical issues include the genetic representation of morphologies and controllers, the sorts of controllers best suited for such systems, and the kind of evolutionary algorithm employed. Technological issues include, for virtual embodiment, the choice of physics engine, and, for physical embodiment, methods for automatically generating real robots with variable morphologies.

Location, Dates and Format:

This workshop is part of the International Conference on Artificial Life (ALIFE7), taking place at Reed College, Portland, Oregon over 1-6 August 2000. The workshop itself will be split into two 3-hour sessions, on 2 and 3 August. The organizers wish to promote group discussion during these sessions, and to this end the time given to individual presentations (invited or submitted) will be limited. The number of participants will be limited to 30. To encourage group discussions, a list of questions for discussion will be distributed to all attendees some weeks before the workshop

 

 

Back to Contents Page