Evolving Machine Codes: Tierra V3.13

Thomas Ray ray at chopin.udel.edu
Sat Jul 11 17:48:33 EST 1992

                                TIERRA UPDATE:

Version V3.13 Now Available; Unified License Agreement; FTP Site Reorganized;
Bug Fixes; Virtual Debugger; Instruction Set Documented; Genome Injector;
Genebank Hash Function; Haploid Sex; Resolution Toggle; Diversity Tool Improved;
Chris Stephenson, Kurt Thearling and Walter Tackett visit SFI;
Future Phylogeny; Tierra in the News; Tierra Publications; Mailing Lists;
What Tierra Is;

This message contains:

1) Availability of Tierra V3.13 Source Code
   a) by ftp
   b) by snail mail on disk
2) Unified License Agreement
3) FTP Site Reorganized
4) Bug Fixes
5) Virtual Debugger
6) Instruction Set Documented
7) Genome Injector
8) Genebank Hash Function
9) Haploid Sex
10) Resolution Toggle
11) Diversity Tool Improved
12) Chris Stephenson, Kurt Thearling and Walter Tackett visit SFI
13) Converation with Paul Barton-Davis (Evolution of a Decision)
14) Future Phylogeny
15) Tierra Funding
16) Tierra in the News
17) Tierra Publications
18) Mailing Lists
19) What Tierra Is (If you don't know what Tierra is, read this first)

1) Availability of Tierra V3.13 Source Code

     The Tierra V3.13 source code; and the source code, and DOS executables of
all tools is available now.  Please note that the source code in the ftp
site and the source code provided on disk will each compile and run on either
DOS or UNIX platforms.  It is exactly the same source code in either case.
The DOS executables are available only on disk, and can not be freely

     If you purchase this program on disk, thank you for your support.
If you obtain the source code through the net or friends, we invite you to
contribute an amount that represents the program's worth to you.  You may
make a check in US dollars payable to Virtual Life, and mail the check to
one of the two addresses listed below.

   a) by ftp

     If you use the software, be sure to pick up new versions from the ftp
site.  The source in the ftp site will be replaced on a roughly monthly or
bi-monthly basis.

     The complete source code and documentation is available by anonymous
ftp at:

tierra.slhs.udel.edu [] and
  life.slhs.udel.edu []

in the directories: almond/, beagle/, doc/, and tierra/.

To get it, ftp to tierra or life, log in as user "anonymous" and give your
email address (eg. tom at udel.edu) as a password.  Be sure to transfer binaries
in binary mode (it is safe to transfer everything in binary mode).
Each directory contains a compressed tar file (filename.tar.Z) and a SRC
directory that contains all the files in raw ascii format.  You can just
pick up the .tar.Z files, and they will expand into the complete directory
structure with the following commands (Unix only):

uncompress tierra.tar.Z
tar oxvf tierra.tar

   b) by snail mail on disk

     The source code, documentation and the beagle.exe file can be distributed
freely, however, the executables (the .exe files in DOS) are for sale and
cannot be freely distributed (with the exeception of beagle.exe).

     If you do not have ftp access you may obtain everything on DOS disks
by making a check for $65 (US dollars drawn on a US bank) payable to
Virtual Life.  Specify 3.5" or 5.25" disks.  Send the check to one of the
following addresses:

Tom Ray                  (January through August)
Santa Fe Institute
1660 Old Pecos Trail
Suite A
Santa Fe, NM 87501

Virtual Life             (September through December)
P.O. Box 625
Newark, Delaware 19715

     The DOS disks contain everything but ALmond (ALmond can be provided on
disk by request, but it only runs on a Unix platform).  The disks include DOS
executables, source code and documentation.  The DOS disks include an easy
installation program.  This is the same source code available in the ftp
site.  If you have ftp access, there is no need to buy the disks.

2) Unified License Agreement

     If you have seen the earlier versions (pre V3.12), you may have noticed
that there were different license agreements for the DOS and Unix versions.
There is now a single and perhaps more coherent license agreement.

3) FTP Site Reorganized

     With Version 3.11 the ftp site was reorganized.  The files are no
longer distributed in shar format.  They are in both raw form, and in
compressed tar files.  All the documentation has been moved to the doc/
directory.  The doc/ directory also includes manuscripts on Tierra in LaTeX
and Postscript formats.

4) Bug Fixes

new in V3.13:

adr() - the parse function for the adr instruction, previous to V3.13, set
     is.iip = 0, which meant that the instruction pointer would not increment.
     This means that if ever the adr instruction were executed, the virtual
     cpu would hang on this instruction.  This has been fixed in V3.13.

GarbageCollectGB() - previous to V3.13, this function (in bookeep.c) caused
     some empty .gen files to be created, which would clutter up the genebank
     directory.  This has been fixed.

genotype histogram - there were some problems with the genotype histogram
     display in V3.12, these have been fixed.

new in V3.12:

template search - Version 3.11 and earlier had a bug in the bi-directional
     template search algorithm.  God intended that the search should move
     outward at equal rates in both directions.  However, some situations
     caused one direction to get ahead of the other.  This does not matter
     to the creatures or evolution; evolution makes due with whatever
     physics or chemistry it has at hand.  However, it makes it difficult
     for the observer reading the genome files to tell what the outcome of
     a bi-directional template search might be.  Another problem with the
     same algorithm is that the limit on the distance of the template
     search was not properly implemented, they tend to search farther than
     the intended limit.  Both these bugs are fixed in V3.12.

5) Virtual Debugger

     In V3.13 the virtual debugger has been spiffed up, and the system is
configured to compile with the debugger implemented, and the dubugger is
documented in the tierra.doc file.  This allows the user to single step
through the code of a creature, while viewing the virutal cpu.  This will
be useful to anyone writing a creature, or trying to see what a creature

6) Instruction Set Documented

     With V3.13, the tierra.doc file includes a new section that provides
a detailed documentation of what each of the 32 Tierran instructions actually

7) Genome Injector

     With V3.13, a mechanism has been provided for injecting genomes into a
running simulation.  The tool is available through the menu system, and allows
a genome from the genebank to be injected into the run at the users command.
However, there is a function Inject(), in the genebank.c module, which takes
a pointer to a genome as an argument.  This function can be used to inject
genomes from any source.  An interesting use of this function would be to
facilitate migration of genomes between simulations running on separate
machines, creating an archipelago.

8) Genebank Hash Function

     In V3.13 a hash function has been added to the genebanker.  The
function CheckGenotype() applies the hash function to each new genome.
This means that when a new genotype appears, its sequence no longer must
be compare to the sequence of every same-sized genome in the bank.  Generally,
only a single integer must be compared.  This means that the .gen files
for V3.13 are not compatible with earlier versions.

9) Haploid Sex

     An option is now available to force creatures to cross-over their genomes
with other creatures while reproducing.  This feature is documented in the
tierra.doc file.

10) Resolution Toggle

     In V3.12 and higher on DOS machines with a VGA display, the simulator
will come up in low resolution mode.  If you select a histogram or size list
display, it will toggle into high resolution mode.  When you return to the
plan display, it will toggle back into low resolution mode.  This is easier
on the eyes.

11) Diversity Tool Improved

     Several changes have been made to the diversity tool to improve its
utility.  The divrange file now also contains the average value of each of
the eight variables, in addition to the minimum and maximum values that it
formerly contained.  Also when multiple divdat.X output files are produced,
they now each contain header information so that they can be processed
independently by the diversity graphics tools in Beagle.  To facilitate this,
a brkrange file is also produced which contains the maximum value of each
variable at the end of each divdat.X file.

12) Chris Stephenson, Kurt Thearling and Walter Tackett visit SFI

     Kurt Thearling of Thinking Machines Corporation (kurt at think.com) is
visiting the Santa Fe Institute from June 12 through May 12 to work on the
Tierra project.  His primary objective will be to port Tierra to the CM5.

     Chris Stephenson of the IBM T. J. Watson Research Center
(cjs at yktem.vnet.ibm.com) will visit SFI from June 29 through July 13 to work
on the Tierra project.  His primary objective will be to provide a new memory
allocator for Tierra.  He will use a memory allocation scheme that he
developed, which will allow us to specify where we would like the new
creature to be placed in memory.

     Walter Tackett of Hughes Aircraft (tackett at ipld01.hac.com) will visit
SFI from June 12 through July 3.  His main objective will be discuss his w

More information about the Bio-soft mailing list

Send comments to us at biosci-help [At] net.bio.net