home *** CD-ROM | disk | FTP | other *** search
/ Power-Programmierung / CD2.mdf / c / library / xplatfrm / tierra / announce next >
Encoding:
Text File  |  1994-05-24  |  13.8 KB  |  284 lines

  1.                              TIERRA UPDATE:
  2.       (Source release, abstract, publications, lectures, new results)
  3.  
  4. This message contains:
  5.  
  6. 1) Announcement of release of Tierra source code
  7. 2) Abstract describing Tierra
  8. 3) List of related publications and upcoming lectures
  9. 4) Some interesting new and unpublished results
  10.  
  11. 1) Announcement of release of Tierra source code
  12.  
  13.      The complete source code for the Tierra simulator is
  14. available by anonymous ftp at:
  15.  
  16. tierra.slhs.udel.edu [128.175.41.34] and
  17.   life.slhs.udel.edu [128.175.41.33]
  18.  
  19. in the directory /tierra.
  20.  
  21. to get it, ftp to tierra or life, log in as user "anonymous" and give your
  22. real name (eg. tom@udel.edu) as a password.
  23.  
  24. then give the command `cd tierra', to get a list of files type `dir'.
  25.  
  26. you will see the following files:
  27.  
  28. README.T1        A detailed description of tierra and how to use it.
  29. README.T2            in two parts
  30. Part01            the source code in shar format
  31.  ...                in seven parts
  32. Part07
  33. announce            this announcement
  34. tierra1.tex        Parts 1 & 2 of a manuscript describing Tierra,
  35. tierra2.tex            in LaTeX format.
  36.  
  37. The shar files contain the README files, so if you want the source code,
  38. you don't need to copy README separately.  To unpack the shar files, use
  39. `unshar', or `sh'.
  40.  
  41.      The version released includes significant contributions from
  42. Tom Uffner, Dan Pirone and Marc Cygnus.  The software remains copyrighted
  43. ("all rights reserved"), and is not being placed in the public domain.
  44. However, it will be made available free of charge and may be freely
  45. distributed.  The intent is that it not be used for profit making activities
  46. unless some royalty arrangement is entered into with the authors.
  47.  
  48.      A DOS version of the Tierra software with a decent frontend will be ready
  49. for sale ($70) by November.
  50.  
  51. 2) Abstract describing Tierra
  52.  
  53. **** BEGIN ABSTRACT ****
  54.  
  55. Synthetic organisms have been created based on a computer metaphor of
  56. organic life in which CPU time is the ``energy'' resource and memory is
  57. the ``material'' resource.  Memory is organized into informational
  58. patterns that exploit CPU time for self-replication.  Mutation generates
  59. new forms, and evolution proceeds by natural selection as different
  60. genotypes compete for CPU time and memory space.
  61.  
  62. Observation of nature shows that evolution by natural selection is
  63. capable of both optimization and creativity.  Artificial models of evolution
  64. have demonstrated the optimizing ability of evolution, as exemplified by
  65. the field of genetic algorithms.  The creative aspects of evolution have been
  66. more elusive to model.  The difficulty derives in part from a tendency of
  67. models to specify the meaning of the ``genome'' of the evolving entities,
  68. precluding new meanings from emerging.  I will present a natural model of
  69. evolution demonstrating both optimization and creativity, in which the
  70. genome consists of sequences of executable machine code.
  71.  
  72. From a single rudimentary ancestral ``creature'',
  73. very quickly there evolve parasites, which are not able to replicate in
  74. isolation because they lack a large portion of the genome.  However, these
  75. parasites search for the missing information, and if they locate it in a
  76. nearby creature, parasitize the information from the neighboring genome,
  77. thereby effecting their own replication.
  78.  
  79. In some runs, hosts evolve immunity to attack by parasites.
  80. When immune hosts appear, they often increase in frequency, devastating the
  81. parasite populations.  In some runs where the community comes to be
  82. dominated by immune hosts, parasites evolve that are resistant to immunity.
  83.  
  84. Hosts sometimes evolve a response to parasites that goes beyond immunity,
  85. to actual (facultative) hyper-parasitism.  The hyper-parasite deceives the
  86. parasite causing the parasite to devote its energetic resources to replication
  87. of the hyper-parastie genome.  This drives the parasites to extinction.
  88.  
  89. Evolving in the absence of parasites, hyper-parasites completely dominate
  90. the community, resulting in a relatively uniform community characterize by
  91. a high degree of relationship between individuals.  Under these circumstances,
  92. sociality evolves, in the form of creatures which can only replicate in
  93. aggregations.
  94.  
  95. The cooperative behavior of the social hyper-parasites makes them vulnerable
  96. to a new class of parasites.  These cheaters, hyper-hyper-parasites, insert
  97. themselves between cooperating social individuals, deceiving the social
  98. creatures, causing them to replicate the genomes of the cheaters.
  99.  
  100. The only genetic change imposed on the simulator is
  101. random bit flips in the machine code of the creatures.  However, it turns
  102. out that parasites are very sloppy replicators.  They cause significant
  103. recombination and rearrangement of the genomes.  This spontaneous sexuality
  104. is a powerful force for evolutionary change in the system.
  105.  
  106. One of the most interesting aspects of this instance of life is
  107. that the bulk of the evolution is based on adaptation to the biotic
  108. environment rather than the physical environment.  It is co-evolution
  109. that drives the system.
  110.  
  111. **** END ABSTRACT ****
  112.  
  113. 3) List of related publications and upcoming lectures
  114.  
  115.     The recent publicity about my work (Technology Review, April 1991;
  116. Science News, August 10, 1991; New York Times, August 27, 1991; Computerworld
  117. September 30, 1991) has generated a lot of interest.  I wanted to list the
  118. relevant publications, and also the upcoming seminars.
  119.  
  120. Ray, T. S.  1991.  ``Is it alive, or is it GA?''
  121. Proceedings of the 1991 International Conference on Genetic Algorithms,
  122. Eds. Belew, R. K., and L. B. Booker, San Mateo, CA: Morgan Kaufmann, 527--534.
  123.  
  124. Ray, T. S.  1991.  ``An approach to the synthesis of life.''
  125. Artificial Life II, Santa Fe Institute Studies in the Sciences of
  126. Complexity, vol. XI, Eds. C. Langton, C. Taylor, J. D. Farmer, & S. Rasmussen,
  127. Redwood City, CA: Addison-Wesley, 371--408.
  128.  
  129. Ray, T. S.  1991.  ``Population dynamics of digital organisms.''
  130. Artificial Life II Video Proceedings,  Ed. C. G. Langton,
  131. Redwood City, CA: Addison Wesley.
  132.  
  133. Ray, T. S.  1991.  ``Evolution and optimization of digital organisms.''
  134. Scientific Excellence in Supercomputing: The IBM 1990 Contest Prize Papers,
  135. Eds. Keith R. Billingsley, Ed Derohanes, Hilton Brown, III.
  136. Athens, GA, 30602, The Baldwin Press, The University of Georgia.
  137. Publication date: December 1991.
  138.  
  139. I will be at the Santa Fe Institute Feb. 1 thru Aug. 31, 1992.
  140. This work will also be presented in the following upcoming seminars:
  141.  
  142. University of Maryland, Zoology, October 29, 1991
  143. University of Kentucky, Lexington, Biology, October 31, 1991
  144. University of Delaware, Entomology, November 5, 1991
  145. Stony Brook, Department of Ecology and Evolution, November 6, 1991
  146. Drexel University, Electrical Engineering, November 8, 1991
  147. The University of the Arts, Philadelphia, Design in Cyberspace lectures,
  148.      November 12, 1991
  149. IBM, T. J. Watson Research Center, Yorktown Heights, NY, November 13, 1991
  150. Thinking Machines Corp., Cambridge, November 14, 1991
  151. Digital Equipment Corp., Hudson, MA, November 15, 1991
  152. American Society of Information Science, New Jersey, November 19, 1991
  153. Texas Instruments, Dallas, November 21, 1991
  154. Harvard University, Biology (Lewontin's lab), December 2, 1991
  155. Boston University, Computational Sciences Center, December 3, 1991
  156. MIT Nanotechnology Study Group, December 3, 1991
  157. University of Massachusetts Boston, Biology, December 5, 1991
  158. Yale University, Biology, December 6, 1991
  159. University of Arizona, Ecology & Evolutionary Biology, March 10, 1992
  160. Cornell University, Mathematical Sciences Institute, CA Workshop, May 1992
  161. Gordon Conference on Theoretical Biology, New Hampshire, June 8--12, 1992
  162.  
  163. 4) Some interesting new and unpublished results
  164.  
  165. Below is a report of an interesting result that is not described in
  166. any of the publications listed above:
  167.  
  168. A COMPLEX ADAPTATION
  169.  
  170. The adaptation described below is a classic example of intricate design in
  171. evolution.  One wonders how it could have arisen through random bit flips,
  172. as every component of the code must be in place in order for the algorithm
  173. to function.  Yet the code includes a classic mix of apparent intelligent
  174. design, and the chaotic hand of evolution.  The optimization technique is a
  175. very clever one invented by humans, yet it is implemented in a mixed up but
  176. functional style that no human would use (unless perhaps very intoxicated).
  177.  
  178. The arms race described in the manuscripts took place over a period of
  179. a billion instructions executed by the system.  Another run was allowed to
  180. continue for fifteen billion instructions, but was not examined in detail.
  181. A creature present at the end of the run was examined and found to have
  182. evolved an intricate adaptation.  The adaptation is an optimization technique
  183. known as ``unrolling the loop''.
  184.  
  185. The central loop of the copy procedure performs the following operations:
  186. 1) copies an instruction from the mother to the daughter, 2) decrements the
  187. cx register which initially contains the size of the parent genome, 3) tests
  188. to see if cx is equal to zero, if so it exits the loop, if not it remains
  189. in the loop, 4) increments the ax register which contains the address in the
  190. daughter where the next instruction will be copied to, 5) increments the
  191. bx register which contains the address in the mother where the next instruction
  192. will be copied from, 6) jumps back to the top of the loop.
  193.  
  194. The work of the loop is contained in steps 1, 2, 4 and 5.  Steps 3 and 6 are
  195. overhead.  The efficiency of the loop can be increased by duplicating the
  196. work steps within the loop, thereby saving on overhead.  The creature from
  197. the end of the long run had repeated the work steps three times within the
  198. loop, as illustrated below.
  199.  
  200. The unrolled loop is an example of the ability of evolution to produce an
  201. increase in complexity, gradually over a long period of time.  The interesting
  202. thing about the loop unrolling optimization technique is that it requires more
  203. complex code.  The resulting creature has a genome size of 36, compared to its
  204. ancestor of size 80, yet it has packed a much more complex algorithm into less
  205. than half the space.
  206.  
  207. Below I include the assembler code for the central copy loop of the ancestor
  208. (80aaa) and decendant after fifteen billion instructions (72etq).  Within
  209. the loop, the ancestor does each of the following operations once: copy
  210. instruction (51), decrement cx (52), increment ax (59) and increment bx (60).
  211. The decendant performs each of the following operations three times within
  212. the loop: copy instruction (15, 22, 26), increment ax (20, 24, 31) and
  213. increment bx (21, 25, 32).  The decrement cx operation occurs five times
  214. within the loop (16, 17, 19, 23, 27).  Instruction 28 flips the low order
  215. bit of the cx register.  Whenever this latter instruction is reached, the
  216. value of the low order bit is one, so this amounts to a sixth instance of
  217. decrement cx.  This means that there are two decrements for every increment.
  218.  
  219. The reason for this is related to another adaptation of this creature.  When
  220. it calculates its size, it shifts left (12) before allocating space for the
  221. daughter (13).  This has the effect of allocating twice as much space as
  222. is actually needed to accomodate the genome.  The genome of the creature
  223. is 36 instructions long, but it allocates a space of 72 instructions.
  224. This occurred in an environment where the slice size was set equal to the
  225. size of the cell.  In this way the creatures were able to garner twice as
  226. much energy.  However, they had to compliment this change by doubling the
  227. number of decrements in the loop.
  228.  
  229. nop_1    ; 01  47 copy loop template      COPY LOOP OF 80AAA
  230. nop_0    ; 00  48 copy loop template
  231. nop_1    ; 01  49 copy loop template
  232. nop_0    ; 00  50 copy loop template
  233. mov_iab  ; 1a  51 move contents of [bx] to [ax] (copy instruction)
  234. dec_c    ; 0a  52 decrement cx
  235. if_cz    ; 05  53 if cx = 0 perform next instruction, otherwise skip it
  236. jmp      ; 14  54 jump to template below (copy procedure exit)
  237. nop_0    ; 00  55 copy procedure exit compliment
  238. nop_1    ; 01  56 copy procedure exit compliment
  239. nop_0    ; 00  57 copy procedure exit compliment
  240. nop_0    ; 00  58 copy procedure exit compliment
  241. inc_a    ; 08  59 increment ax (point to next instruction of daughter)
  242. inc_b    ; 09  60 increment bx (point to next instruction of mother)
  243. jmp      ; 14  61 jump to template below (copy loop)
  244. nop_0    ; 00  62 copy loop compliment
  245. nop_1    ; 01  63 copy loop compliment
  246. nop_0    ; 00  64 copy loop compliment
  247. nop_1    ; 01  65 copy loop compliment (10 instructions executed per loop)
  248.  
  249.  
  250. shl     ; 000 03  12 shift left cx        COPY LOOP OF 72ETQ
  251. mal     ; 000 1e  13 allocate daughter cell
  252. nop_0   ; 000 00  14 top of loop
  253. mov_iab ; 000 1a  15 copy instruction
  254. dec_c   ; 000 0a  16 decrement cx
  255. dec_c   ; 000 0a  17 decrement cx
  256. jmpb    ; 000 15  18 junk
  257. dec_c   ; 000 0a  19 decrement cx
  258. inc_a   ; 000 08  20 increment ax
  259. inc_b   ; 000 09  21 increment bx
  260. mov_iab ; 000 1a  22 copy instruction
  261. dec_c   ; 000 0a  23 decrement cx
  262. inc_a   ; 000 08  24 increment ax
  263. inc_b   ; 000 09  25 increment bx
  264. mov_iab ; 000 1a  26 copy instruction
  265. dec_c   ; 000 0a  27 decrement cx
  266. or1     ; 000 02  28 flip low order bit of cx
  267. if_cz   ; 000 05  29 if cx == 0 do next instruction
  268. ret     ; 000 17  30 exit loop
  269. inc_a   ; 000 08  31 increment ax
  270. inc_b   ; 000 09  32 increment bx
  271. jmpb    ; 000 15  33 go to top of loop (6 instructions per copy)
  272. nop_1   ; 000 01  34 bottom of loop    (18 instructions executed per loop)
  273.  
  274.                              Tom Ray
  275.                        University of Delaware
  276.                   School of Life & Health Sciences
  277.                       Newark, Delaware  19716
  278.                       ray@tierra.slhs.udel.edu
  279.                        ray@life.slhs.udel.edu
  280.                         ray@brahms.udel.edu
  281.                          302-451-2281 (FAX)
  282.                             302-451-2753
  283.  
  284.