home *** CD-ROM | disk | FTP | other *** search
/ Collection of Hack-Phreak Scene Programs / cleanhpvac.zip / cleanhpvac / TIERRA40.ZIP / DOC / ANNOUNCE.313 < prev    next >
Text File  |  1992-09-11  |  22KB  |  478 lines

  1.                                 TIERRA UPDATE:
  2.  
  3. Version V3.13 Now Available; Unified License Agreement; FTP Site Reorganized;
  4. Bug Fixes; Virtual Debugger; Instruction Set Documented; Genome Injector;
  5. Genebank Hash Function; Haploid Sex; Resolution Toggle; Diversity Tool Improved;
  6. Chris Stephenson, Kurt Thearling and Walter Tackett visit SFI;
  7. Future Phylogeny; Tierra in the News; Tierra Publications; Mailing Lists;
  8. What Tierra Is;
  9.  
  10. This message contains:
  11.  
  12. 1) Availability of Tierra V3.13 Source Code
  13.    a) by ftp
  14.    b) by snail mail on disk
  15. 2) Unified License Agreement
  16. 3) FTP Site Reorganized
  17. 4) Bug Fixes
  18. 5) Virtual Debugger
  19. 6) Instruction Set Documented
  20. 7) Genome Injector
  21. 8) Genebank Hash Function
  22. 9) Haploid Sex
  23. 10) Resolution Toggle
  24. 11) Diversity Tool Improved
  25. 12) Chris Stephenson, Kurt Thearling and Walter Tackett visit SFI
  26. 13) Converation with Paul Barton-Davis (Evolution of a Decision)
  27. 14) Future Phylogeny
  28. 15) Tierra Funding
  29. 16) Tierra in the News
  30. 17) Tierra Publications
  31. 18) Mailing Lists
  32. 19) What Tierra Is (If you don't know what Tierra is, read this first)
  33.  
  34. 1) Availability of Tierra V3.13 Source Code
  35.  
  36.      The Tierra V3.13 source code; and the source code, and DOS executables of
  37. all tools is available now.  Please note that the source code in the ftp
  38. site and the source code provided on disk will each compile and run on either
  39. DOS or UNIX platforms.  It is exactly the same source code in either case.
  40. The DOS executables are available only on disk, and can not be freely
  41. distributed.
  42.  
  43.      If you purchase this program on disk, thank you for your support.
  44. If you obtain the source code through the net or friends, we invite you to
  45. contribute an amount that represents the program's worth to you.  You may
  46. make a check in US dollars payable to Virtual Life, and mail the check to
  47. one of the two addresses listed below.
  48.  
  49.    a) by ftp
  50.  
  51.      If you use the software, be sure to pick up new versions from the ftp
  52. site.  The source in the ftp site will be replaced on a roughly monthly or
  53. bi-monthly basis.
  54.  
  55.      The complete source code and documentation is available by anonymous
  56. ftp at:
  57.  
  58. tierra.slhs.udel.edu [128.175.41.34] and
  59.   life.slhs.udel.edu [128.175.41.33]
  60.  
  61. in the directories: almond/, beagle/, doc/, and tierra/.
  62.  
  63. To get it, ftp to tierra or life, log in as user "anonymous" and give your
  64. email address (eg. tom@udel.edu) as a password.  Be sure to transfer binaries
  65. in binary mode (it is safe to transfer everything in binary mode).
  66. Each directory contains a compressed tar file (filename.tar.Z) and a SRC
  67. directory that contains all the files in raw ascii format.  You can just
  68. pick up the .tar.Z files, and they will expand into the complete directory
  69. structure with the following commands (Unix only):
  70.  
  71. uncompress tierra.tar.Z
  72. tar oxvf tierra.tar
  73.  
  74.    b) by snail mail on disk
  75.  
  76.      The source code, documentation and the beagle.exe file can be distributed
  77. freely, however, the executables (the .exe files in DOS) are for sale and
  78. cannot be freely distributed (with the exeception of beagle.exe).
  79.  
  80.      If you do not have ftp access you may obtain everything on DOS disks
  81. by making a check for $65 (US dollars drawn on a US bank) payable to
  82. Virtual Life.  Specify 3.5" or 5.25" disks.  Send the check to one of the
  83. following addresses:
  84.  
  85. Tom Ray                  (January through August)
  86. Santa Fe Institute
  87. 1660 Old Pecos Trail
  88. Suite A
  89. Santa Fe, NM 87501
  90.  
  91. Virtual Life             (September through December)
  92. P.O. Box 625
  93. Newark, Delaware 19715
  94.  
  95.      The DOS disks contain everything but ALmond (ALmond can be provided on
  96. disk by request, but it only runs on a Unix platform).  The disks include DOS
  97. executables, source code and documentation.  The DOS disks include an easy
  98. installation program.  This is the same source code available in the ftp
  99. site.  If you have ftp access, there is no need to buy the disks.
  100.  
  101. 2) Unified License Agreement
  102.  
  103.      If you have seen the earlier versions (pre V3.12), you may have noticed
  104. that there were different license agreements for the DOS and Unix versions.
  105. There is now a single and perhaps more coherent license agreement.
  106.  
  107. 3) FTP Site Reorganized
  108.  
  109.      With Version 3.11 the ftp site was reorganized.  The files are no
  110. longer distributed in shar format.  They are in both raw form, and in
  111. compressed tar files.  All the documentation has been moved to the doc/
  112. directory.  The doc/ directory also includes manuscripts on Tierra in LaTeX
  113. and Postscript formats.
  114.  
  115. 4) Bug Fixes
  116.  
  117. new in V3.13:
  118.  
  119. adr() - the parse function for the adr instruction, previous to V3.13, set
  120.      is.iip = 0, which meant that the instruction pointer would not increment.
  121.      This means that if ever the adr instruction were executed, the virtual
  122.      cpu would hang on this instruction.  This has been fixed in V3.13.
  123.  
  124. GarbageCollectGB() - previous to V3.13, this function (in bookeep.c) caused
  125.      some empty .gen files to be created, which would clutter up the genebank
  126.      directory.  This has been fixed.
  127.  
  128. genotype histogram - there were some problems with the genotype histogram
  129.      display in V3.12, these have been fixed.
  130.  
  131. new in V3.12:
  132.  
  133. template search - Version 3.11 and earlier had a bug in the bi-directional
  134.      template search algorithm.  God intended that the search should move
  135.      outward at equal rates in both directions.  However, some situations
  136.      caused one direction to get ahead of the other.  This does not matter
  137.      to the creatures or evolution; evolution makes due with whatever
  138.      physics or chemistry it has at hand.  However, it makes it difficult
  139.      for the observer reading the genome files to tell what the outcome of
  140.      a bi-directional template search might be.  Another problem with the
  141.      same algorithm is that the limit on the distance of the template
  142.      search was not properly implemented, they tend to search farther than
  143.      the intended limit.  Both these bugs are fixed in V3.12.
  144.  
  145. 5) Virtual Debugger
  146.  
  147.      In V3.13 the virtual debugger has been spiffed up, and the system is
  148. configured to compile with the debugger implemented, and the dubugger is
  149. documented in the tierra.doc file.  This allows the user to single step
  150. through the code of a creature, while viewing the virutal cpu.  This will
  151. be useful to anyone writing a creature, or trying to see what a creature
  152. does.
  153.  
  154. 6) Instruction Set Documented
  155.  
  156.      With V3.13, the tierra.doc file includes a new section that provides
  157. a detailed documentation of what each of the 32 Tierran instructions actually
  158. does.
  159.  
  160. 7) Genome Injector
  161.  
  162.      With V3.13, a mechanism has been provided for injecting genomes into a
  163. running simulation.  The tool is available through the menu system, and allows
  164. a genome from the genebank to be injected into the run at the users command.
  165. However, there is a function Inject(), in the genebank.c module, which takes
  166. a pointer to a genome as an argument.  This function can be used to inject
  167. genomes from any source.  An interesting use of this function would be to
  168. facilitate migration of genomes between simulations running on separate
  169. machines, creating an archipelago.
  170.  
  171. 8) Genebank Hash Function
  172.  
  173.      In V3.13 a hash function has been added to the genebanker.  The
  174. function CheckGenotype() applies the hash function to each new genome.
  175. This means that when a new genotype appears, its sequence no longer must
  176. be compare to the sequence of every same-sized genome in the bank.  Generally,
  177. only a single integer must be compared.  This means that the .gen files
  178. for V3.13 are not compatible with earlier versions.
  179.  
  180. 9) Haploid Sex
  181.  
  182.      An option is now available to force creatures to cross-over their genomes
  183. with other creatures while reproducing.  This feature is documented in the
  184. tierra.doc file.
  185.  
  186. 10) Resolution Toggle
  187.  
  188.      In V3.12 and higher on DOS machines with a VGA display, the simulator
  189. will come up in low resolution mode.  If you select a histogram or size list
  190. display, it will toggle into high resolution mode.  When you return to the
  191. plan display, it will toggle back into low resolution mode.  This is easier
  192. on the eyes.
  193.  
  194. 11) Diversity Tool Improved
  195.  
  196.      Several changes have been made to the diversity tool to improve its
  197. utility.  The divrange file now also contains the average value of each of
  198. the eight variables, in addition to the minimum and maximum values that it
  199. formerly contained.  Also when multiple divdat.X output files are produced,
  200. they now each contain header information so that they can be processed
  201. independently by the diversity graphics tools in Beagle.  To facilitate this,
  202. a brkrange file is also produced which contains the maximum value of each
  203. variable at the end of each divdat.X file.
  204.  
  205. 12) Chris Stephenson, Kurt Thearling and Walter Tackett visit SFI
  206.  
  207.      Kurt Thearling of Thinking Machines Corporation (kurt@think.com) is
  208. visiting the Santa Fe Institute from June 12 through May 12 to work on the
  209. Tierra project.  His primary objective will be to port Tierra to the CM5.
  210.  
  211.      Chris Stephenson of the IBM T. J. Watson Research Center
  212. (cjs@yktem.vnet.ibm.com) will visit SFI from June 29 through July 13 to work
  213. on the Tierra project.  His primary objective will be to provide a new memory
  214. allocator for Tierra.  He will use a memory allocation scheme that he
  215. developed, which will allow us to specify where we would like the new
  216. creature to be placed in memory.
  217.  
  218.      Walter Tackett of Hughes Aircraft (tackett@ipld01.hac.com) will visit
  219. SFI from June 12 through July 3.  His main objective will be discuss his work
  220. in applying artificial selection to Tierran creatures in order to evolve them
  221. to do ``useful'' work.
  222.  
  223. 13) Converation with Paul Barton-Davis (Evolution of a Decision)
  224.  
  225.      At the recent Artificial Life III conference in Santa Fe I had an
  226. interesting conversation with Paul Barton-Davis (pauld@cs.washington.edu)
  227. about his work with his own implementation of Tierra.  Paul built his version
  228. of Tierra from scratch, but used the same instruction set described in Ray's
  229. publications.  However, one thing he did differently was to eliminate the
  230. reaper.  Instead his creatures become increasingly flawed as they age, and
  231. eventually die from these effects.  One of the consequences of this is that
  232. free memory is not always available when a creature requests it.  Paul
  233. provided the following details:
  234.  
  235.     You might or might want to note the other conditions that, in addition
  236.     to the reaper-removal, led to this adapatation and that are absent in
  237.     the release version of Tierra:
  238.  
  239.     1) a memory allocator that uses virtual memory addresses beginning at
  240.        1, not zero (thus creating a "flag" value that can specifically
  241.        and easily be tested for by a tierran creature).
  242.     2) selection pressure (via the slice size) for medium size        
  243.        creatures (256 to 5K instructions in size) (gaussian
  244.        distribution of slice size around a mean creature size
  245.        of about 2K)
  246.     3) memory protect bits turned on, and used in a significant fashion.
  247.     4) a more complex ancestor, although the copy code is almost
  248.        identical to Ray's 80aaa.
  249.  
  250.      An adaptation which evolved under these conditions is the first example
  251. I know of in which a Tierran creature evolved a decision making mechanism.
  252. If memory is not available when a creature requests it, the memory allocator
  253. returns a value of zero in the AX register, rather than the address of the
  254. allocated block.  The adaptation then, is to somehow move the value in the
  255. AX register into CX (for example by first pushing AX onto the stack and then
  256. popping that value into the CX register).  Then the creature executes if_cz,
  257. which tests to see if the CX register is zero.  If CX is not zero, the
  258. creature proceeds with reproduction, if CX is zero the creature executes some
  259. code which leads to making another request for memory rather than trying to
  260. copy the genome without having a cell to copy it into.  Paul provided the
  261. following details:
  262.  
  263.     I recall seeing both:
  264.  
  265.         mal       ;  111
  266.         push_ax   ;  111
  267.         pop_cx    ;  111
  268.         if_cz     ;  111
  269.  
  270.     as well as the slightly more expensive:
  271.  
  272.         mal        ; 111
  273.         mov_ab     ; 111 
  274.         push_bx    ; 111
  275.         pop_cx     ; 111
  276.         if_cz      ; 111
  277.  
  278. 14) Future Phylogeny
  279.  
  280.      At the moment, the primary effort in new code development is dedicated
  281. to an extension to the genebanker that will produce an ironclad phylogeny.
  282. The requires that we trace the genetic source of every instruction written
  283. into every creature.  Stay tuned.
  284.  
  285. 15) Tierra Funding
  286.  
  287.      The National Science Foundation has awared a Small Grant for Exploratory
  288. Research to Dr. Ray to support the Tierra project.  The grant is titled:
  289. ``Computer Architectures for the Natural Evolution of Machine Code''.  It
  290. is jointly funded through the Computer Systems Architecutre program and the
  291. Computational Biology Activities programs.
  292.  
  293. 16) Tierra in the News
  294.  
  295. The Tierra Simulator has been widely reported in the media.  Below is a
  296. list of most of the national or international reports that I am aware of.
  297. If you know of some news report not on this list, please send me a hard
  298. copy.
  299.  
  300. Nature (John Maynard Smith, UK) February 27, 1992: ``Byte-sized evolution.
  301. ...we badly need a comparative biology.  So far, we have been able to study
  302. only one evolving system and we cannot wait for interstellar flight to
  303. provide us with a second.  If we want to discover generalizations about
  304. evolving systems, we will have to look at artificial ones.  Ray's study is a
  305. good start.''
  306.  
  307. Nature (Laurence Hurst & Richard Dawkins, UK) May 21, 1992:
  308. ``Life in a test tube.''
  309.  
  310. New York Times (Malcolm Browne, USA) August 27, 1991: ``Lively Computer
  311. Creation Blurs Definition of Life.  Software forms, obeying Darwin's rules,
  312. vie to avoid the `reaper'.''
  313.  
  314. Science News (John Travis, USA) August 10, 1991: ``Digital Darwinism:
  315. Electronic Ecosystem.  Evolving `life' flourishes and surprises in a
  316. novel electronic world''.
  317.  
  318. Scientific American (John Rennie, USA) January 1992: ``Cybernetic Parasites...
  319. Tierra... has been hailed as the most sophisticated artificial-life program
  320. yet developed...''
  321.  
  322. New Scientist (Roger Lewin, UK) February 22, 1992: ``Life and death in a
  323. digital world.  No one can turn back the evolutionary clock, but we can
  324. follow the fate of a rich menagerie of artificial organisms as they evolve
  325. in a model world.''
  326.  
  327. The Economist (Anon, UK) January 4, 1992: ``The meaning of `life'.
  328. In order to understand the origin of life, scientists are switching from the
  329. chemistry set to the computer.  In the process, they are beginning to
  330. understand what it means to be alive.''
  331.  
  332. Guardian (Jocelyn Paine, UK) January 9, 1992: ``Unravelling the loop in the
  333. primordial soup.  Tierran machine code is so adaptable it survives.  Jocelyn
  334. Paine charts the evolution of artificial life within the computer.''
  335.  
  336. Actuel (Ariel Kyrou, France) April 1992: ``Visite Guidee Aux Extremes De
  337. La Science: La Vie Artificielle.  Etes-vous pr\^{e}ts \`{a} entrer dans
  338. l'univers vertigineux de la vie artificielle?  Un champ scientifique tout neuf
  339. sur lequel se penchent les grosses t\^{e}tes et les Nobel de labos
  340. am\'{e}ricains.''
  341.  
  342. The Chronicle of Higher Education (David Wilson, USA) December 4, 1991:
  343. ``Approaching Artificial Life on a Computer.  Survival-of-the-fittest
  344. electronic organisms dramatically illustrate Darwinian principles.''
  345.  
  346. Mikrobitti (Pekka Tolonen, Finland) November 1991: ``Olemmeko humanoiden
  347. biologinen koe?  Tierra simuloi el\"{a}m\"{a}\"{a}.''
  348.  
  349. Europeo (Giovanni Caprara, Italy) September 1991: ``Anche il computer ha
  350. fatto un figlio.  Un biologo americano ha creato un software capace di
  351. elaborare programmi che si evolvono da soli.''
  352.  
  353. GenteMoney (Riccardo Orizio, Italy) November 1991: ``Cos\`{\i} ho dato
  354. la vita al software.''
  355.  
  356. Computerworld (Michael Alexander, USA) September 30, 1991: ``Tierra adds to
  357. evolutionary studies.  A computerized world created on an IBM PC could
  358. have real-world benefits for scientists.''
  359.  
  360. Sueddeutsche Zeitung (Konrad Peters, Germany) October 21, 1991:
  361. ``Die Evolution im Computer.  `K\"{u}nstliches Leben' hilft Biologen und
  362. Informatikern auf die Spr\"{u}nge.''
  363.  
  364. Super Interessante (Anon, Brazil) November 1991: ``A vida dentro do
  365. computador.''
  366.  
  367. Technology Review (Susan Scheck, USA) April 14, 1991: ``Is It Live Or Is
  368. It Memory?''
  369.  
  370. Corriere Della Sera (Giovanni Capara, Italy) August 28, 1991: ``Pronto in
  371. USA il programma che si riproduce.  Il computer `padre' crea vita
  372. informatica.''
  373.  
  374. Fakta (Tom Ottmar, Norway) March 1992: ``Den Lever!  En `skabning', der
  375. best\aa r af nuller og \'{e}nere, er vokset ud af indamaden p\aa \ en
  376. computer og er blevet en videnskabelig sensation i USA.''
  377.  
  378. Associated Press (Theresa Humphrey, USA) October 1991: ``Bringing life to
  379. computer.  U of D biologist's program is self-replicating, shows evolution.''
  380.  
  381. Hovedomr\aa det (Jakob Skipper, Denmark) December 6, 1990: ``Kunstigt liv.
  382. Nu kommer det kunstige liv.  En voksende gruppe af dataloger, biologer,
  383. fysikere, psykologer og mange andre forskere efterlinger p\aa \ computer
  384. det naturlige liv.''
  385.  
  386. 17) Tierra Publications
  387.  
  388. Ray, T. S.  1991.  ``Is it alive, or is it GA?''
  389. Proceedings of the 1991 International Conference on Genetic Algorithms,
  390. Eds. Belew, R. K., and L. B. Booker, San Mateo, CA: Morgan Kaufmann, 527-534.
  391.  
  392. Ray, T. S.  1991.  ``An approach to the synthesis of life.''
  393. Artificial Life II, Santa Fe Institute Studies in the Sciences of
  394. Complexity, vol. XI, Eds. Farmer, J. D., C. Langton, S. Rasmussen, &
  395. C. Taylor, Redwood City, CA: Addison-Wesley, 371-408.
  396.  
  397. Ray, T. S.  1991.  ``Population dynamics of digital organisms.''
  398. Artificial Life II Video Proceedings,  Ed. C.G. Langton,
  399. Redwood City, CA: Addison Wesley.
  400.  
  401. Ray, T. S.  1991.  ``Evolution and optimization of digital organisms.''
  402. Scientific Excellence in Supercomputing: The IBM 1990 Contest Prize
  403. Papers, Eds. Keith R. Billingsley, Ed Derohanes, Hilton Brown, III.
  404. Athens, GA, 30602, The Baldwin Press, The University of Georgia.
  405.  
  406. 18) Mailing Lists
  407.  
  408.      There are two mailing lists for Tierra users.  The first list is for
  409. people who only want to get the official announcements, updates and bug-fixes.
  410. The other will carry the official postings, and are intended for discussion
  411. of Tierra by users.  This one is distributed in digest form, when there is
  412. enough material.  The lists are:
  413.  
  414. tierra-announce    official updates, patches and announcements only
  415. tierra-digest      discussion, updates, etc. (digest form)
  416.  
  417. The addresses are: 
  418.  
  419. tierra-request@life.slhs.udel.edu   the list administrator (Tom Uffner). to
  420.                                     be added, removed, or complain about
  421.                                     problems with any of these lists.
  422.  
  423. tierra-digest@life.slhs.udel.edu    to post to the list.
  424.  
  425. tierra-bug@life.slhs.udel.edu       for bug-reports or questions about the
  426.                                     code or installation.
  427.  
  428.      You may also be interested in the Artificial Life mailing list.
  429. Subscribe to the list by sending a message to:
  430.  
  431. alife-request@cognet.ucla.edu
  432.  
  433.      Post to the list by sending a message to:
  434.  
  435. alife@cognet.ucla.edu
  436.  
  437. 19) What Tierra Is
  438.  
  439.      The C source code creates a virtual computer and its operating system,
  440. whose architecture has been designed in such a way that the executable
  441. machine codes are evolvable.  This means that the machine code can be mutated
  442. (by flipping bits at random) or recombined (by swapping segments of code
  443. between algorithms), and the resulting code remains functional enough of the
  444. time for natural (or presumably artificial) selection to be able to improve
  445. the code over time.
  446.  
  447.      Along with the C source code which generates the virtual computer, we
  448. provide several programs written in the assembler code of the virtual
  449. computer.  One of these was written by a human and does nothing more than make
  450. copies of itself in the RAM of the virtual computer.  The others evolved from
  451. the first, and are included to illustrate the power of natural selection.
  452.  
  453.      The operating system of the virtual computer provides memory management
  454. and timesharing services.  It also provides control for a variety of factors
  455. that affect the course of evolution: three kinds of mutation rates,
  456. disturbances, the allocation of CPU time to each creature, the size of the
  457. soup, etc.  In addition, the operating system provides a very elaborate
  458. observational system that keeps a record of births and deaths, sequences
  459. the code of every creature, and maintains a genebank of successful genomes.
  460. The operating system also provides facilities for automating the ecological
  461. analysis, that is, for recording the kinds of interactions taking place
  462. between creatures.
  463.  
  464.      This system results in the production of synthetic organisms based on
  465. a computer metaphor of organic life in which CPU time is the ``energy''
  466. resource and memory is the ``material'' resource.  Memory is organized into
  467. informational patterns that exploit CPU time for self-replication.  Mutation
  468. generates new forms, and evolution proceeds by natural selection as different
  469. genotypes compete for CPU time and memory space.
  470.  
  471.      Diverse ecological communities have emerged.  These digital communities
  472. have been used to experimentally examine ecological and evolutionary
  473. processes: e.g., competitive exclusion and coexistence, host/parasite density
  474. dependent population regulation, the effect of parasites in enhancing
  475. community diversity, evolutionary arms race, punctuated equilibrium, and the
  476. role of chance and historical factors in evolution.  This evolution in a
  477. bottle may prove to be a valuable tool for the study of evolution and ecology.
  478.