Rdvanced Mathematical Approach to Biologij
This page is intentionally left blank
ftt
International Institute for Advanced Studies
Advanced MarhemaHcal Approach ro Biology Editor
THida
Faculfq of Science and Technology Meijo University. Japan
World Scientific
Kong Singapore • New Jersey • LondonHong •
Published by World Scientific Publishing Co. Pte. Ltd. P O Box 128, Farrer Road, Singapore 912805 USA office: Suite IB, 1060 Main Street, River Edge, NJ 07661 UK office: 57 Shelton Street, Covent Garden, London WC2H 9HE
Library of Congress Cataloging-in-Publication Data Advanced mathematical approach to biology / edited by T. Hida. p. cm. Includes bibliographical references. ISBN 9810230656 1. Biomathematics. 2. Stochastic analysis. I. Hida, Takeyuki. 1927QH323.5.A287 1997 570'.l'51-dc21 97-546 CIP
British Library Cataloguing-in-Publication Data A catalogue record for this book is available from the British Library.
Copyright © 1997 by World Scientific Publishing Co. Pte. Ltd. All rights reserved. This book, or parts thereof, may not be reproduced in any form or by any means, electronic or mechanical, including photocopying, recording or any information storage and retrieval system now known or to be invented, without written permission from the Publisher.
For photocopying of material in this volume, please pay a copying fee through the Copyright Clearance Center, Inc., 222 Rosewood Drive, Danvers, MA 01923, USA. In this case permission to photocopy is not required from the publisher.
Printed in Singapore by Uto-Print
V
PREFACE
The original idea of writing this book arose on the occasion of the HAS (International Institute for Advanced Studies) Summer School on "Perception, Fluctuation and Information" held in 1994. Thomas R. Ray, Ken-ichi Naka and myself enjoyed each other's presentation, and one of us proposed to write articles based on our talks, not only for our record but also to appeal to young scientists who are interested in both biology and mathematics. In recent years the mathematical and biological approach to evolutionary phenomena and the study of organisms have made great progess and new viewpoints need to be investigated. We hope that our articles well-described some of this new development. We would suggest reader who is familiar with biology to read starting from Chap. 1 in the usual order. While reader who is mathematically oriented would be advised to follow in the reversed order, i.e., from Chap. 3 to Chap. 2 and then Chap. 1. Chapter 1 by Thomas Ray presents evolution theory and ecology of organ isms; the author develops a new direction for modern biology. In Chap. 2, K. Naka proposes a method of identifying the black boxes observed in biological phenomena. Chapter 3 provides some basic mathematical tools for investi gation of random events with fluctuation from the viewpoint of white noise analysis. Finally all of us would like to express our gratitude to HAS, which gave us the opportunity to discuss such an interdisciplinary topic, and a motivation to write this book.
June 1997
The editor Takeyuki HID A
This page is intentionally left blank
vii
CONTENTS
Preface
v
Chapter 1 A Computational Approach to Evolutionary Biology Thomas S. Ray
1
Chapter 2
White-Noise Analysis in Retinal Physiology Ken-ichi Naka and Vanita Bhanot
Chapter 3
White Noise Analysis with Special Emphasis on Applications to Biology Takeyuki Hida
109
269
T h o m a s S. Ray ATR Human Information Processing Research Laboratories 2-2 Hikaridai, Seika-cho Soraku-gun, Kyoto 619-02 Japan (81)-774-95-1008 (FAX), (81)-774-95-1063 (phone)
[email protected],
[email protected],
[email protected] http://www.hip.atr.co.jp/~ray
A Computational Approach To Evolutionary Biology
1
Introduction Marcel, a mechanical chessplayer... his exquisite 19th-century brainwork — the human art it took to build which has been flat lost, lost as the dodo bird ... But where inside Marcel is the midget Grandmaster, the little Johann Allgeier? where's the pantograph, and the magnets? Nowhere. Marcel really is a mechanical chess player. No fakery inside to give him any touch of humanity at all. — Thomas Pynchon, Gravity's Rainbow.
1.1
Synthetic Biology
Artificial Life (AL) is the enterprise of understanding biology by construct ing biological phenomena out of artificial components, rather than breaking natural life forms down into their component parts. It is the synthetic rather than the reductionist approach. I will describe an approach to the synthesis of artificial living forms that exhibit natural evolution. The umbrella of Artificial Life is broad, and covers three principal ap proaches to synthesis: in hardware (e.g., robotics, nanotechnology), in software (e.g., replicating and evolving computer programs), in wetware (e.g., replicat ing and evolving organic molecules, nucleic acids or others). This essay will focus on software synthesis, although it is hoped that the issues discussed will be generalizable to any synthesis involving the process of evolution. I would like to suggest thaLsoftware syntheses in AL could be divided into
2
two kinds: simulations and instantiations of life processes. AL simulations rep resent an advance in biological modeling, based on a bottom-up approach, that has been made possible by the increase of available computational power. In the older approaches to modeling of ecological or evolutionary phenomena, sys tems of differential equations were set up that expressed relationships between covarying quantities of entities (i.e., genes, alleles, individuals, or species) in the populations or communities. The new bottom up approach creates a population of data structures, with each instance of the data structure corresponding to a single entity. These structures contain variables defining the state of an individual. Rules are defined as to how the individuals interact with one another and with the envi ronment. As the simulation runs, populations of these data structures interact according to local rules, and the global behavior of the system emerges from those interactions. Several very good examples of bottom up ecological mod els have appeared in the AL literature [36, 86]. However, ecologists have also developed this same approach independently of the AL movement, and have called the approach "individual based" models [20, 40]. The second approach to software synthesis is what I have called instantia tion rather than simulation. In simulation, data structures are created which contain variables that represent the states of the entities being modeled. The important point is that in simulation, the data in the computer is treated as a representation of something else, such as a population of mosquitoes or trees. In instantiation, the data in the computer does not represent anything else. The data patterns in an instantiation are considered to be living forms in their own right, and are not models of any natural life form. These can from the basis of a comparative biology [55]. The object of an AL instantiation is to introduce the natural form and process of life into an artificial medium. This results in an artificial life form in some medium other than carbon chemistry, and is not a model of organic life forms. The approach discussed in this essay involves introducing the process of evolution by natural selection into the computational medium. I consider evolution to be the fundamental process of life, and the generator of living form. Ideally, the science of biology should embrace all forms of life. However in practice, it has been restricted to the study of a single instance of life, life on earth. Life on earth is very diverse, but it is presumably all part of a sin gle phylogeny. Because biology is based on a sample size of one, we can not know what features of life are peculiar to earth and what features are general,
3
characteristic of all life. A truly comparative natural biology would require inter-planetary travel, which is light years away. The ideal experimental evo lutionary biology would involve creation of multiple planetary systems, some essentially identical, others varying by a parameter of interest, and observing them for billions of years. A practical alternative to an inter-planetary or mythical biology is to create synthetic life in a computer. The objective is not necessarily to create life forms that would serve as models for the study of natural life, but rather to create radically different life forms, based on a completely different physics and chemistry, and let these life forms evolve their own phylogeny, leading to whatever forms are natural to their unique physical basis. These truly independent instances of life may then serve as a basis for comparison, to gain some insight into what is general and what is peculiar in biology. Those aspects of life that prove to be general enough to occur in both natural and synthetic systems can then be studied more easily in the synthetic system. The intent of this work is to synthesize rather than simulate life. This approach starts with hand crafted organisms already capable of replication and open-ended evolution, and aims to generate increasing diversity and complexity in a parallel to the Cambrian explosion. To state such a goal leads to semantic problems, because life must be defined in a way that does not restrict it to carbon based forms. It is unlikely that there could be general agreement on such a definition, or even on the proposition that life need not be carbon based. Therefore, I will simply state my conception of life in its most general sense. I would consider a system to be living if it is self-replicating, and capable of openended evolution. Synthetic life should self-replicate, and evolve structures or processes that were not designed-in or pre-conceived by the creator ([12, 64]). Core Wars programs, computer viruses, and worms ([14, 22, 23, 24, 26, 27, 77, 82]) are capable of self-replication, but fortunately, not evolution. It is unlikely that such programs will ever become fully living, because they are not likely to be able to evolve. Most evolutionary simulations are not open-ended. Their potential is lim ited by the structure of the model, which generally endows each individual with a genome consisting of a set of pre-defined genes, each of which may exist in a pre-defined set of allelic forms ([1, 18, 19, 25, 37, 62]). The object being evolved is generally a data structure representing the genome, which the sim ulator program mutates and/or recombines, selects, and replicates according to criteria designed into the simulator. The data structures do not contain the mechanism for replicating, they are simply copied by the simulator if they
4
survive the selection phase. Self-replication is critical to synthetic life because without it, the mecha nisms of selection must also be pre-determined by the simulator. Such artificial selection can never be as creative as natural selection. The organisms are not free to invent their own fitness functions. Freely evolving creatures will discover means of mutual exploitation and associated implicit fitness functions that we would never think of. Simulations constrained to evolve with pre-defined genes, alleles and fitness functions are dead ended, not alive. The approach presented here does not have such constraints. Although the model is limited to the evolution of creatures based on sequences of ma chine instructions, this may have a potential comparable to evolution based on sequences of organic molecules. Sets of machine instructions similar to those used in the Tierra Simulator have been shown to be capable of "universal com putation" ([3, 48, 56]). This suggests that evolving machine codes should be able to generate any level of complexity. Other examples of the synthetic approach to life can be seen in the work of [5, 30, 38, 46, 65]. A characteristic these efforts generally have in common is that they parallel the origin of life event by attempting to create prebiotic conditions from which life may emerge spontaneously and evolve in an open ended fashion. While the origin of life is generally recognized as an event of the first or der, there is another event in the history of life that is less well known but of comparable significance: the origin of biological diversity and macroscopic multicellular life during the Cambrian explosion 600 million years ago. This event involved a riotous diversification of life forms. Dozens of phyla appeared suddenly, many existing only fleetingly, as diverse and sometimes bizarre ways of life were explored in a relative ecological void ([34, 60]). The work presented here aims to parallel the second major event in the history of life, the origin of diversity. Rather than attempting to create prebi otic conditions from which life may emerge, this approach involves engineering over the early history of life to design complex evolvable organisms, and then attempting to create the conditions that will set off a spontaneous evolution ary process of increasing diversity and complexity of organisms. This work represents a first step in this direction, creating an artificial world which may roughly parallel the RNA world of self-replicating molecules (still falling far short of the Cambrian
5
1.2
Recognizing Life
Most approaches to defining life involve assembling a short list of properties of life, and then testing candidates on the basis of whether or not they exhibit the properties on the list. The main problem with this approach is that there is disagreement as to what should be on the list. My private list contains only two items: self-replication and open-ended evolution. However, this reflects my biases as an evolutionary biologist.
I prefer to avoid the semantic argument and take a different approach to the problem of recognizing life. I was led to this view by contemplating how I would regard a machine that exhibited conscious intelligence at such a level that it could participate as an equal in a debate such as this. The machine would meet neither of my two criteria as to what life is, yet I don't feel that I could deny that the process it contained was alive.
This means that there are certain properties that I consider to be unique to life, and whose presence in a system signify the existance of life in that system. This suggests an alternative approach to the problem. Rather than creating a short list of minimal requirements and testing whether a system exhibits all items on the list, create a long list of properties unique to life and test whether a system exhibits any item on the list. In this softer, more pluralistic approach to recognizing life, the objective is not to determine if the system is alive or not, but to determine if the system exhibits a "genuine" instance of some property that is a signature of living systems (e.g., self-replication, evolution, flocking, consciousness).
Whether we consider a system living because it exhibits some property that is unique to life amounts to a semantic issue. What is more important is that we recognize that it is possible to create disembodied but genuine instances of specific properties of life in artificial systems. This capability is a powerful research tool. By separating the property of life that we choose to study, from the many other complexities of natural living systems, we make it easier to manipulate and observe the property of interest. The objective of the approach advocated in this paper is to capture genuine evolution in an artificial system.
6
1.3
What Natural Evolution Does
Evolution by natural selection is a process that enters into a physical medium. Through iterated replication-with-selection of large populations through many generations, it searches out the possibilities inherent in the "physics and chem istry" of the medium in which it is embedded. It exploits any inherent selforganizing properties of the medium, and flows into natural attractors realizing and fleshing out their structure. Evolution never escapes from its ultimate imperative: self-replication. How ever, the mechanisms that evolution discovers for achieving this ultimate goal gradually become so convoluted and complex that the underlying drive can seem to become superfluous. Some philosophers have argued that the evolu tionary theory as expressed by the phrase "survival of the fittest" is tauto logical, in that the fittest are defined as those that survive to reproduce. In fact, fitness is achieved through innovation in engineering of the organism [79]. However there remains something peculiarly self-referential about the whole enterprise. There is some sense in which life may be a natural tautology. Evolution is both a defining characteristic and the creative process of life itself. The living condition is a state that complex physical systems naturally flow into under certain conditions. It is a self-organizing, self-perpetuating state of auto-catalytically increasing complexity. The living component of the physical system quickly becomes the most complex part of the system, such that it re-shapes the medium, in its own image as it were. Life then evolves adaptations predominantly in relation to the living components of the system, rather than the non-living components. Life evolves adaptations to itself.
1.3.1
E v o l u t i o n in S e q u e n c e S p a c e
Think of organisms as occupying a "genotype space" consisting of all possible sequences of all possible lengths of the elements of the genetic system (i.e., nucleotides or machine instructions). When the first organism begins replicating, a single self-replicating creature, with a single sequence of a certain length oc cupies a single point in the genotype space. However, as the creature replicates in the environment, a population of creatures forms, and errors cause genetic variation, such that the population will form a cloud of points in the genotype space, centered around the original point. Because the new genotypes that forms the cloud are formed by random
7
processes, most of them are completely inviable, and die without reproducing. However, some of them are capable of reproduction. These new genotypes persist, and as some of them are affected by mutation, the cloud of points spreads further. However, not all of the viable genomes are equally viable. Some of them discover tricks to replicate more efficiently. These genotypes increase in frequency, causing the population of creatures at the corresponding points in the genotype space to increase. Points in the genotype space occupied by greater populations of individuals will spawn larger numbers of mutant offspring, thus the density of the cloud of points in the genotype space will shift gradually in the direction of the more fit genotypes. Over time, the cloud of points will percolate through the genotype space, either expanding outward as a result of random drift, or by flowing along fitness gradients. Most of the volume of this space represents completely inviable sequences. These regions of the space may be momentarily and sparsely occupied by inviable mutants, but the cloud will never flow into the inviable regions. The cloud of genotypes may bifurcate as it flows into habitable regions in different directions, and it may split as large genetic changes spawn genotypes in distant but viable regions of the space. We may imagine that the evolving population of creatures will take the form of wispy clouds flowing through this space. Now imagine for a moment the situation that there were no selection. This implies that every sequence is replicated at an equal rate. Mutation will cause the cloud of points to expand outward, eventually filling the space uniformly. In this situation, the complexity of the structure of the cloud of points does not increase through time, only the volume that it occupies. Under selection by contrast, through time the cloud will take on an intricate structure as it flows along fitness gradients and percolates by drift through narrow regions of viability in a largely uninhabitable space. Consider that the viable region of the genotype space is a very small subset of the total volume of the space, but that it probably exhibits a very complex shape, forming tendrils and sheets sparsely permeating the otherwise empty space. The complex structure of this cloud can be considered to be a product of evolution by natural selection. This thought experiment appears to imply that the intricate structure that the cloud of genotypes may assume through evolution is fully deterministic. Its shape is pre-defined by the physics and chemistry and the structure of the environment, in much the same way that the form of the Mandlebrot set is pre-determined by its defining equation. The complex structure of this viable space is inherent in the medium, and is
8
an example of "order for free" [44]. No living world will ever fill the entire viable subspace, either at a single moment of time, or even cumulatively over its entire history. The region actu ally filled will be strongly influenced by the original self-replicating sequence, and by stochastic forces which will by chance push the cloud down a subset of possible habitable pathways. Furthermore, co-evolution and ecological in teractions imply that certain regions can only be occupied when certain other regions are also occupied. This concept of the flow of genotypes through the genotype space is essentially the same as that discussed by Eigen [28] in the context of "quasispecies". Eigen limited his discussion to species of viruses, where it is also easy to think of sequence spaces. Here, I am extending the concept beyond the bounds of the species, to include entire phylogenies of species.
1.3.2
N a t u r a l E v o l u t i o n in an Artificial M e d i u m
Until recently, life has been known as a state of matter, particularly combina tions of the elements carbon, hydrogen, oxygen, nitrogen and smaller quantities of many others. However, recent work in the field of Artificial Life has shown that the natural evolutionary process can proceed with great efficacy in other media, such as the informational medium of the digital computer [2, 7, 10, 16, 17, 21, 31, 35, 42, 43, 51, 53, 54, 65, 66, 68, 69, 70, 71, 73, 74, 78, 84, 85] These new natural evolutions, in artificial media, are beginning to explore the possibilities inherent in the "physics and chemistry" of those media. They are organizing themselves and constructing self-generating complex systems. While these new living systems are still so young that they remain in their pri mordial state, it appears that they have embarked on the same kind of journey taken by life on earth, and presumably have the potential to evolve levels of complexity that could lead to sentient and eventually intelligent beings. If natural evolution in artificial media leads to sentient or intelligent beings, they will likely be so alien that they will be difficult to recognize. The sentient properties of plants are so radically different from those of animals, that they are generally unrecognized or denied by humans, and plants are merely in another kingdom of the one great tree of organic life on earth [67, 72, 83]. Synthetic organisms evolving in other media such as the digital computer, are not only not a part of the same phylogeny, but they are not even of the same physics. Organic life is based on conventional material physics, whereas digital
9 life exists in a logical, not material, informational universe. Digital intelligence will likely be vastly different from human intelligence; forget the Turing test.
1.4
The Approach
The objective of the approach discussed here, is to create an instantiation of evolution by natural selection in the computational medium. This creates a conceptual problem that requires considerable art to solve: ideas and tech niques must be learned by studying organic evolution, and then applied to the generation of evolution in a digital medium, without forcing the digital medium into an "un-natural" simulation of the organic world. We must derive inspiration from observations of organic life, but we must never lose sight of the fact that the new instantiation is not organic, and may differ in many fundamental ways. For example, organic life inhabits a Euclidean space, however computer memory is not a Euclidean space. Inter cellular communication in the organic world is chemical in nature, and therefore a single message generally can pass no more information than on or off. By contrast, communication in digital computers generally involves the passing of bit patterns, which can carry much more information. The fundamental principal of the approach being advocated here is to understand and respect the natural form of the digital computer, to facilitate the process of evolution in generating forms that are adapted to the computational medium, and to let evolution find forms and processes that naturally exploit the possibilities inherent in the medium. Situations arise where it is necessary to make significant changes from the standard computer architecture. But such changes should be made with cau tion, and only when there is some feature of standard computer architectures which clearly inhibits the desired processes. Examples of such changes are dis cussed in the section "The Genetic Language" below. Less substantial changes are also discussed in the sections on "Mutations 1 ', "Flaws", and "Artificial Death". The section on "Spatial Topology" and is a little tirade against ex amples of what I consider to be un-natural transfers of forms from the natural world to the digital mediu
10
1.5
The Metaphor
Organic life is viewed as utilizing energy, mostly derived from the sun, to organize matter. By analogy, digital life can be viewed as using CPU (central processing unit) time, to organize information. Organic life evolves through natural selection as individuals compete for resources (light, food, space, etc.) such that genotypes which leave the most descendants increase in frequency. Digital life evolves through the same process, as replicating algorithms compete for CPU time and memory space, and organisms evolve strategies to exploit one another. CPU time is thought of as the analog of the energy resource, information as the analog of the material resource, and memory as the analog of the spatial resource. The memory, the CPU and the computer's operating system are viewed as elements of the "abiotic" (physical) environment. A "creature" is then designed to be specifically adapted to the features of the computational environment. The creature consists of a self-replicating assembler language program. Assem bler languages are merely mnemonics for the machine codes that are directly executed by the CPU. These machine codes have the characteristic that they directly invoke the instruction set of the CPU and services provided by the operating system. All programs, regardless of the language they are written in, are converted into machine code before they are executed. Machine code is the natural language of the machine, and machine instructions are viewed by this author as the "atomic units" of computing. It is felt that machine instructions provide the most natural basis for an artificial chemistry of creatures designed to live in the computer. In the biological analogy, the machine instructions are considered to be more like the amino acids than the nucleic acids, because they are "chemically active". They actively manipulate bits, bytes, CPU registers, and the move ments of the instruction pointer (see below). The digital creatures discussed here are entirely constructed of machine instructions. They are considered analogous to creatures of the RNA world, because the same structures bear the "genetic" information and carry out the "metabolic" activity. A block of RAM memory (random access memory, also known as "main" or "core" memory) in the computer is designated as a "soup" which can be inoculated with creatures. The "genome" of the creatures consists of the sequence of machine instructions that make up the creature's self-replicating
11
algorithm. The prototype creature consists of about 80 machine instruc tions, thus the size of the genome of this creature is 80 instructions, and its "genotype" is the specific sequence of those 80 instructions (Appendix D).
1.6
The Computational Medium
The computational medium of the digital computer is an informational universe of boolean logic, not a material one. Digital organisms live in the memory of the computer, and are powered by the activity of the central processing unit (CPU). Whether the hardware of the CPU and memory is built of silicon chips, vacuum tubes, magnetic cores, or mechanical switches is irrelevant to the digital organism. Digital organisms should be able to take on the same form in any computational hardware, and in this sense are "portable" across hardware. Digital organisms might as well live in a different universe from us, as they are not subject to the same laws of physics and chemistry. They are subject to the "physics and chemistry" of the rules governing the manipulation of bits and bytes within the computer's memory and CPU. They never "see" the actual material from which the computer is constructed, they see only the logic and rules of the CPU and the operating system. These rules are the only "natural laws" that govern their behavior. They are not influenced by the natural laws that govern the material universe (e.g., the laws of thermodynamics). A typical instantiation of this type involves the introduction of a selfreplicating machine language program into the RAM memory of a computer subject to random errors such as bit flips in the memory or occasionally inac curate calculations [7, 10, 21, 53, 68]. This generates the basic conditions for evolution by natural selection as outlined by Darwin [15]: self-replication in a finite environment with heritable genetic variation. In this instantiation, the self-replicating machine language program is thought of as the individual "digital organism" or "creature". The RAM memory pro vides the physical space that the creatures occupy. The CPU provides the source of energy. The memory consists of a large array of bits, generally grouped into eight bit bytes and sixteen or thirty-two bit words. Information is stored in these arrays as voltage patterns which we usually symbolize as patterns of ones and zeros.
12 constitutes its machine language program. This information pattern is data, but when it is passed to the CPU, it is interpreted as a series of executable instructions. These instructions are arranged in such a way that the d a t a of the body will be copied to another location of memory. The informational patterns stored in the memory are altered only through the activity of the CPU. It is for this reason that the CPU is thought of as the analog of the energy source. Without the activity of the CPU, the memory would be static, with no changes in the informational patterns stored there. The logical operations embodied in the instruction set of the CPU consti tute a large part of the definition of the "physics and chemistry" of the digital universe. The topology of the computer's memory (discussed below) is also a significant component of the digital physics. The final component of the digital physics is the operating system, a software program running on the computer, which embodies rules for the allocation of resources such as memory space and CPU time to the various processes running on the computer. The instruction set of the CPU, the memory, and the operating system together define the complete "physics and chemistry" of the universe inhabited by the digital organism. They constitute the physical environment within which digital organisms will evolve. Evolving digital organisms will compete for access to the limited resources of memory space and CPU time, and evolution will generate adaptations for the more agile access to and the more efficient use of these resources.
1.7
Spatial Topology
Digital organisms live in the memory space of computers, predominantly in the RAM memory, although they could also live on disks or any other storage device, or even within networks to the extent that the networks themselves can store information. In essence, digital organisms live in the space that has been referred to as "cyber-space". It is worthwhile reflecting on the topology of this space, as it is a radically different space from the one we live in. A typical UNIX workstation, or Macintosh computer includes a RAM mem ory that can contain some megabytes of data. This is "flat" memory, meaning that it is essentially unstructured. Any location in memory can be accessed through its numeric address. Thus adjacent locations in memory are accessed through successive integer values. This addressing convention causes us to think of the memory as a linear space or a one dimensional space.
13
However, this apparent one-dimensionality of the RAM memory is some thing of an illusion generated by the addressing scheme. A better way of understanding the topology of the memory comes from asking "what is the distance between two locations in memory". In fact the distance can not be measured in linear units. The most appropriate unit is the time that it takes to move information between the two points. Information contained in the RAM memory can not move directly from point to point. Instead the information is transferred from the RAM to a register in the CPU, and then from the CPU back to the new location in RAM. Thus the distance between two locations in RAM is just the time that it takes to move from the RAM to the CPU plus the time that it takes to move from the CPU to the RAM. Because all points in the RAM are equidistant from the CPU, the distance between any pair of locations in the RAM is the same, regardless of how far apart they may appear based on their numeric addresses. A space in which all pairs of points are equidistant is clearly not a Eu clidean space. That said, we must recognize however, that there are a variety of ways in which memory is normally addressed, that gives it the appear ance, at least locally, of being one dimensional. When code is executed by the CPU, the instruction pointer generally increments sequentially through mem ory, for short distances, before jumping to some other piece of code. For those sections of code where instructions are sequential, the memory is effectively one-dimensional. In addition, searches of memory are often sequentially or ganized (e.g., the search for complementary templates in Tierra). This again makes the memory effectively one-dimensional within the search radius. Yet even under these circumstances, the memory is not globally one-dimensional. Rather it consists of many small one dimensional pieces, each of which has no meaningful spatial relationship to the others. Because we live in a three-dimensional Euclidean space, we tend to impose our familiar concepts of spatial topology onto the computer memory. This leads first to the erroneous perception that memory is a one-dimensional Euclidean space, and second, it often leads to the conclusion that the digital world could be enriched by increasing the dimensionality of the Euclidean memory space. Many of the serious efforts to extend the Tierra model have included as a central feature, the creation of a two-dimensional space for the creatures to inhabit [7, 16, 17, 53, 78]. The logic behind the motivation derives from con templation of the extent to which the dimensionality of the space we live in permits the richness of pattern and process that we observe in nature. Cer-
14
tainly if our universe were reduced from three to two dimensions, it would eliminate the possibility of most of the complexity that we observe. Imagine for example, the limitations that two-dimensionality would place on the design of neural networks (if "wires" could not cross). If we were to further reduce the dimensionality of our universe to just one dimension, it would probably completely preclude the possibility of the existence of life. It follows from these thoughts, that restricting digital life to a presumably one-dimensional memory space places a tragic limitation on the richness that might evolve. Clearly it would be liberating to move digital organisms into a two or three-dimensional space. The flaw in all of this logic derives from the erroneous supposition that computer memory is a Euclidean space. To think of memory as Euclidean is to fail to understand its natural topol ogy, and is an example of one of the greatest pitfalls in the enterprise of syn thetic biology: to transfer a concept from organic life to synthetic life in a way that is "un-natural" for the artificial medium. The fundamental princi pal of the approach I am advocating is to respect the nature of the medium into which life is being inoculated, and to find the natural form of life in that medium, without inappropriately trying to make it like organic life. The desire to increase the richness of memory topology is commendable, however this can be achieved without forcing the memory into an un-natural Euclidean topology. Let us reflect a little more on the structure of cyberspace. Thus far we have only considered the topology of flat memory. Let us consider segmented memory such as is found with the notorious Intel 80X86 design. With this design, you may treat any arbitrarily chosen block of 64K bytes as flat, and all pairs of locations within that block are equidistant. However, once the block is chosen, all memory outside of that block is about twice as far away. Cache memory is designed to be accessed more rapidly than RAM memory, thus pairs of points within cache memory are closer than pairs of points within RAM memory. The distance between a point in cache and a point in RAM would be an intermediate distance. The access time to memory on disks is much greater than for RAM memory, thus the distance between points on disk is very great, and the distance between RAM and disk is again intermediate (but still very great). CPU registers represent a small amount of memory locations, between which data can move very rapidly, thus these registers can be considered to be very close together. For networked computer systems, information can move between the mem ories of the computers on the net, and the distances between these memories
15
is again the transfer time. If the CPU, cache, RAM and disk memories of a network of computers are all considered together, they present a very complex memory topology. Similar considerations apply to massively parallel comput ers which have memories connected in a variety of topologies. Utilizing this complexity moves us in the direction of what has been intended by creating Euclidean memories for digital organisms, but does so while fully respecting the natural topology of computer memories.
2
Methods Here was a world of simplicity and certainty... a world based on the one and zero of life and death. Minimal, beautiful. The patterns of lives and deaths.... weightless, invisible chains of electronic pres ence or absence. If patterns of ones and zeros were "like" patterns of human lives and deaths', if everything about an individual could be represented in a computer record by a long string of ones and zeros, then what kind,of creature would be represented by a long string of lives and deaths? It would have to be up one level at least — an angel, a minor god, something in a UFO. — Thomas Pynchon, Vine land.
2.1
The Virtual Computer — Tierra Simulator
The software used in this study is available over the net or on disk (Appendix A). The computers we use are general purpose computers, which means, among other things, that they are capable of emulating through software, the behavior of any other computer that ever has been built or that could be built ([3, 48, 56]). We can utilize this flexibility to design a computer that would be especially hospitable to synthetic life. There are several good reasons why it is not wise to attempt to synthesize digital organisms that exploit the machine codes and operating systems of real computers. The most urgent is the potential threat of natural evolution of machine codes leading to virus or worm type of programs that could be dif ficult to eradicate due to their changing "genotypes". This potential argues
16
strongly for creating evolution exclusively in programs that run only on vir tual computers and their virtual operating systems. Such programs would be nothing more than data on a real computer, and therefore would present no more threat than the data in a data base or the text file of a word processor. Another reason to avoid developing digital organisms in the machine code of a real computer is that the artificial system would be tied to the hardware and would become obsolete as quickly as the particular machine it was developed on. In contrast, an artificial system developed on a virtual machine could be easily ported to new real machines as they become available. A third issue, which potentially makes the first two moot, is that the ma chine languages of real machines are not designed to be evolvable, and in fact might not support significant evolution. Von Neuman type machine languages are considered to be "brittle", meaning that the ratio of viable programs to possible programs is virtually zero. Any mutation or recombination event in a real machine code is almost certain to produce a non-functional program. The problem of brittleness can be mitigated by designing a virtual computer whose machine code is designed with evolution in mind. Farmer k, Belin [29] have suggested that overcoming this brittleness and "Discovering how to make such self-replicating patterns more robust so that they evolve to increasingly more complex states is probably the central problem in the study of artificial life." The work described here takes place on a set of virtual computers known as Tierra (Spanish for Earth). The Tierra computer architectures have been designed with the feature that their machine code is robust to the genetic operations of mutation and recombination. This means that''computer pro grams written in the machine code of these architectures remain viable some of the time after being randomly altered by bit-flips which cause the swapping of individual instructions with others from within the instruction set, or by swapping segments of code between programs (through a spontaneous sexual process). These new computers have not been built in silicon, but exist only as software prototypes known as "virtual computers". Tierra is a parallel computer of the MIMD (multiple instruction, multiple data) type, with a processor (CPU) for each creature. Parallelism is imper fectly emulated by allowing each CPU to- execute a small time slice in turn. Each CPU of this virtual computer contains two address registers, two nu meric registers, a flags register to indicate error conditions, a stack pointer, a ten word stack, and an instruction pointer. Each virtual CPU is implemented via the C structure listed in Appendix B. Computations performed by the Tierran CPUs are probabilistic due to flaws that occur at a low frequency (see
17 Mutation below). The instruction set of a CPU typically performs simple arithmetic opera tions or bit manipulations, within the small set of registers contained in the CPU. Some instructions move data between the registers in the CPU, or be tween the CPU registers and the RAM (main) memory. Other instructions control the location and movement of an ''instruction pointer" (IP). The IP indicates an address in RAM, where the machine code of the executing program (in this case a digital organism) is located. The CPU perpetually performs a fetch-decode-execute-incrementJP cycle: The machine code instruction currently addressed by the IP is fetched into the CPU, its bit pattern is decoded to determine which instruction it corresponds to, and the instruction is executed. Then the IP is incremented to point se quentially to the next position in RAM, from which the next instruction will be fetched. However, some instructions like jmp, call and ret directly manip ulate the IP, causing execution to jump to some other sequence of instructions in the RAM. In the Tierra Simulator this CPU cycle is implemented through the timejslice routine listed in Appendix C.
2.2
The Genetic Language
The simplest possible instantiation of a digital organism is a machine language program that codes for self-replication. In this case, the bit pattern that makes up the program is the body of the organism, and at the same time its complete genetic material. Therefore, the machine language denned by the CPU constitutes the genetic language of the digital organism. It is worth noting at this point that the organic organism most comparable to this kind of digital organism is the hypothetical, and now extinct, RNA organism [9]. These were presumably nothing more than RNA molecules ca pable of catalyzing their own replication. What the supposed RNA organisms have in common with the simple digital organism is that a single molecule constitutes the body and the genetic information, and effects the replication. In the digital organism a single bit pattern performs all the same functions. The use of machine code as a genetic system raises the problem of brittleness. The assumption that machine languages are too brittle to evolve is probably true, as a consequence of the fact that machine languages have not previously been designed to survive random alterations. However, recent
18
experiments have shown that brittleness can be overcome by addressing the principal causes, and without fundamentally changing the structure of machine languages [68, 74]. The first requirement for evolvability is graceful error handling. When code is being randomly altered, every possible meaningless or erroneous condition is likely to occur. The CPU should be designed to handle these conditions without crashing the system. The simplest solution is for the CPU to perform no operation when it meets these conditions, perhaps setting an error flag, and to proceed to the next instruction. Due to random alterations of the bit patterns, all possible bit patterns are likely to occur. Therefore a good design is for all possible bit patterns to be interpretable as meaningful instructions by the CPU. For example in the Tierra system [68, 69, 70, 71, 73, 74], a five bit instruction set was chosen, in which all thirty-two five bit patterns represent good machine instructions. This approach (all bit patterns meaningful) also could imply a lack of syn tax, in which each instruction stands alone, and need not occur in the company of other instructions. To the extent that the language includes syntax, where instructions must precede or follow one another in certain orders, random al terations are likely to destroy meaningful syntax thereby making the language more brittle. A certain amount of this kind of brittleness can be tolerated as long as syntax errors are also handled gracefully. During the design of the first evolvable machine language [68], a standard machine language (Intel 80X86) was compared to the genetic language of or ganic life, to attempt to understand the difference between the two languages that might contribute to the brittleness of the former and the robustness of the latter. One of the outstanding differences noted was in the number of basic informational objects contained in the two. The organic genetic language is written with an alphabet consisting of four different nucleotides. Groups of three nucleotides form sixty-four "words" (codons), which are translated into twenty amino-acids by the molecular ma chinery of the cell. The machine language is written with sequences of two voltages (bits) which we conceptually represent as ones and zeros. The num ber of bits that form a "word" (machine instruction) varies between machine architectures, and in some architectures is not constant. However, the number required generally ranges from sixteen to thirty-two. This means that there are from tens of thousands to billions of machine instruction bit patterns, which are translated into operations performed by the CPU.
19
The thousands or billions of bit patterns that code for machine instructions contrasts with the sixty four nucleotide patterns that code for amino acids. The sixty-four nucleotide patterns are degenerate, in that they code for only twenty amino-acids. Similarly, the machine codes are degenerate, in that there are at most hundreds rather than thousands or billions of machine operations. The machine codes exhibit a massive degeneracy (with respect to actual operations) as a result of the inclusion of data into the bit patterns coding for the operations. For example, the add operation will take two operands, and produce as a result the sum of the two operands. While there may be only a single add operation, the instruction may come in several forms depending on where the values of the two operands come from, and where the resultant sum will be placed. Some forms of the add instruction allow the value(s) of the operand(s) to be specified in the bit pattern of the machine code. The inclusion of numeric operands in the machine code is the primary cause of the huge degeneracy. If numeric operands are not allowed, the number of bit patterns required to specify the complete set of operations collapses to at most a few hundred. While there is no empirical data to support it, it is suspected that the huge degeneracy of most machine languages may be a source of brittleness. The logic of this argument is that mutation causes random swapping among the fundamental informational objects, codons in the organic language, and ma chine instructions in the digital language. It seems more likely that meaningful results will be produced when swapping among sixty-four objects than when swapping among billions of objects. In order to make a machine code with a truly small instruction set, we must eliminate numeric operands. This can be accomplished by allowing the CPU registers and the stack to be the only operands of the instructions. When we need to encode an integer for some purpose, we can create it in a numeric register through bit manipulations: flipping the low order bit and shifting left. The program can contain the proper sequence of bit flipping and shifting instructions to synthesize the desired number, and the instruction set need not include all possible integers. The size of the machine instruction set can be made comparable to the number of codons simply by eliminating numeric operands embedded in the machine code. However, this change creates some new problems. Computer programs generally function by executing instructions located sequentially in memory. However, in order to loop or branch, they use instructions such
20
as "jump" to cause execution to j u m p to some other part of the program. Since the locations of these jumps are usually fixed, the j u m p instruction will generally have the target address included as an operand embedded in the machine code. By eliminating operands from the machine code, we generate the need for a new mechanism of addressing for jumps. To resolve this problem, an idea can be borrowed from molecular biology. We can ask the question: how do biological molecules address one another? Molecules do not specify the coor dinates of the other molecules they interact with. Rather, they present shapes on their surfaces that are complementary to the shapes on the surfaces of the target molecules. The concept of complementarity in addressing can be intro duced to machine languages by allowing the j u m p instruction to be followed by some bit pattern, and having execution j u m p to the nearest occurrence of the complementary bit pattern. Addressing by template is illustrated by the Tierran j m p (jump) instruc tion. Each j m p instruction is followed by a sequence of n o p (no-operation) instructions, of which there are two kinds: nop_0 and n o p _ l . Suppose we have a piece of code with five instruction in the following order: j m p nop_0 nop_0 nop_0 n o p _ l . The system will search outward in both directions from the j m p instruction looking for the nearest occurrence of the complementary pattern: n o p _ l n o p _ l n o p _ l nop_0. If the pattern is found, the instruction pointer will move to the end of the complementary pattern and resume execu tion. If the pattern is not found, an error condition (flag) will be set and the j m p instruction will be ignored (in practice, a limit is placed on how far the system may search for the pattern). The Tierran language is characterized by two unique features: a truly small instruction set without numeric operands, and addressing by template. Oth erwise, the language consists of familiar instructions typical of most machine languages, e.g., mov, call, ret, p o p , p u s h etc. The four complete instruction sets are listed in Appendix G. In the development of the Tierran language, two changes were introduced to the machine language to reduce brittleness: elimination of numeric operands from the code, and the use of complementary patterns to control address ing. The resulting language proved to be evolvable [68]. As a result, nothing was learned about evolvability, because only one language was tested, and it evolved. It is not known what features of the language enhance its evolvabil ity, which detract, and which do not affect evolvability. Subsequently, three additional languages were tested and the four languages were found to vary in
21
their patterns and degree of evolvability [74]. However, it is still not known how the features of the language affect its evolvability.
2.3
Four Instruction Sets
The original Tierran virtual computer was designed by the author in the fall of 1989. In the summer of 1992, a series of meetings was held at the Santa Fe Institute to attempt to improve on the original design. Present at these meet ings were: Steen Rassmussen (Santa Fe Institute), Walter Tackett (Hughes Aircraft), Chris Stephenson (IBM), Kurt Thearling (Thinking Machines), Dan Pirone (Santa Fe Institute), and the author. The discussions did not lead to a consensus as to how to improve on the original design, but rather, to three suggestions: instruction set 2 proposed by Kurt Thearling, instruction set 3 proposed by the author, and instruction set 4 proposed by Walter Tack ett. In August 1992, the author implemented all three new instruction sets, and integrated them into the Tierra program. These four instruction sets are summarized in Appendix G. The three new instruction sets are quite similar, differing primarily in the details of how information is moved between the registers of the CPU. There fore, the differences between the first instruction set and the others will be described first. The new instruction sets include a number of features miss ing from the first: 1) Instructions for moving information between the CPU registers and the RAM memory (movdi, movid). 2) Instructions providing input/output facilities (put, get). 3) Facilitation of the full range of possi ble inter-register moves (this is where the three new instruction sets differ the most). 4) A conditional to test if the flag is set (iffl). 5) The memory allocation instruction (mal) has the option of specifying where the allocated memory will be.located, or it may use other new options (i.e., better fit). 6) Facilities to support multi-cellularity. These include mechanisms of inter-cellular commu nication (put, get) and innovations in the divide instruction that can provide a mechanism for gene regulation: the ability to determine where the instruc tion pointer starts executing in the daughter cell, and the ability to transfer the contents of the CPU registers from mother to daughter. The original instruction set contained two inter-register moves: moved (CX to DX) and movab (AX to BX). This is clearly incomplete, as there are many other register pairs between which moves are not allowed. However, the full set of four pushes and four pops makes it possible to move data in any direction between any pair of registers by combining the appropriate push-pop
22
pair. Therefore, in designing the fourth instruction set, Walter Tackett chose to use the eight push-pop instructions to handle the inter-register moves, and the push-pop pairs are the only mechanism for inter-register moves in that instruction set. In the third instruction set, inter-register moves are effected through the mechanisms used in the "reverse Polish notation" (RPN) as is found in the Hewlett-Packard calculators. This uses the rollu, rolld, enter, and e x c h instructions. In the second instruction set, inter-register moves may be accomplished by a push-pop pair, or by the m o v d d (RO = R l ) instruction. However, this instruction set uses a level of indirection to refer to the registers. There are four "shadow" registers, each of which refers to one of the real registers. The contents of the shadow registers are determined by executing the four register instructions: A X , B X , C X , and D X . So, for example, if shadow register RO contains the value CX, and shadow register R l contains the value AX (which is arranged by executing the A X instruction followed by the C X instruction), then executing the m o v d d instruction, will move the value in AX to the CX register. All other instructions in set two also reference the actual registers through the shadow registers, and so may operate on any of the registers. In addition to these differences, each of the instructions that are common to the three new sets (e.g.: inc, dec, add, sub, zero, mal, p o p , p u t , etc.) may differ between sets in which registers they reference. For example, in set two inc operates on RO, in set three on AX, and in set four on CX. There are also some small differences in the set of calculation instructions included. These are due to differences in the number of instructions consumed in implementing the inter-register moves. There were different numbers of opcodes "left over", and these were filled with calculations. Set four has seven calculations, set two has eight calculations, and set three has nine calculations. The original 80 byte program was slightly modified so that it could be implemented in a consistent manner across the four instruction sets. The four new seed organisms were then tested in a series of eight runs in each of the four languages (only four runs in the original language, because comparable data from this instruction set have already been published, [71]). The resulting twenty-eight runs form the basis of the comparisons of patterns of evolution across different languages, and the analysis of the development of complex structures in one of those languages (the fourth).
23
2.4
Operating System
Much of the "physics and chemistry" of the digital universe is determined by the specifications of the operations performed by the instruction set of the CPU. However, the operating system also determines a significant part of the physical context. The operating system manages the allocation of critical resources such as memory space and CPU cycles. The Tierran virtual computer needs a virtual operating system that will .be hospitable to digital organisms. The operating system will determine the mechanisms of interprocess communication, memory allocation, and the allo cation of CPU time among competing processes. Digital organisms are processes that spawn processes. As processes are born, the operating system will allocate memory and CPU cycles to them, and when they die, the operating system will return the resources they had utilized to the pool of free resources. In synthetic life systems, the operating system may also play a role in managing death, mutations and flaws. The management of resources by the operating system is controlled by algorithms. From the point of view of the digital organisms these take the form of a set of logical rules like those embodied in the logic of the instruction set. In this way, the operating system is a defining part of the physics and chemistry of the digital universe. Evolution will explore the possibilities inherent in these rules, finding ways to more efficiently gain access to and exploit the resources managed by the operating system. More than being a mere aspect of the environment, the operating system together with the instruction set will determine the topology of possible in teractions between individuals, such as the ability of pairs of individuals to exhibit predator-prey, parasite-host or mutualistic relationships.
2.4.1
Memory Allocation — Cellular it y
The Tierran computer operates on a block of RAM of the real computer which is set aside for the purpose. This block of RAM is referred to as the "soup". In most of the work described here the soup consisted of about 60,000 to 200,000 bytes, which can hold the same number of Tierran machine instructions.
24
Cellularity is one of the fundamental properties of organic life, and can be recognized in the fossil record as far back as 3.6 billion years ([6]). The cell is the original individual, with the cell membrane defining its limits and preserving its chemical integrity. An analog to the cell membrane is needed in digital organisms in order to preserve the integrity of the informational structure from being disrupted easily by the activity of other organisms. The need for this can be seen in Artificial Life models such as cellular automata where virtual state machines pass through one another ([46, 47]), or in core wars type simulations where coherent structures demolish one another when they come into contact ([23, 26, 65]). Tierran creatures are considered to be cellular in the sense that they are protected by a "semi-permeable membrane" of memory allocation. The Tierran operating system provides memory allocation services. Each creature has exclusive write privileges within its allocated block of memory. The "size" of a creature is just the size of its allocated block (e.g., 80 instructions). This usually corresponds to the size of the genome. This "membrane" is described as "semi-permeable" because while write privileges are protected, read and execute privileges are not. A creature may examine the code of another crea ture, and even execute it, but it can not write over it. Each creature may have exclusive write privileges in at most two blocks of memory: the one that it is born with which is referred to as the "mother cell", and a second block which it may obtain through the execution of the MAL (memory allocation) instruction. The second block, referred to as the "daughter cell", may be used to grow or reproduce into. When Tierran creatures "divide", the mother cell loses write privileges on the space of the daughter cell, but is then free to allocate another block of memory. At the moment of division, the daughter cell is given its own CPU, and is free to allocate its own second block of memory.
2.4.2
Time Sharing — The Sheer
The Tierran operating system must be multi-tasking (or parallel) in order for a community of individual creatures to live in the soup simultaneously. The system doles out small slices of CPU time to each creature in the soup in turn. The system maintains a circular queue called the "sheer queue". As each creature is born, a virtual CPU is created for it, and it enters the slicer queue just ahead of its mother, which is the active creature at that time. Thus the newborn will be the last creature in the soup to get another time slice after
25
the mother, and the mother will get the next slice after its daughter. As long as the slice size is small relative to the generation time of the creatures, the time sharing system causes the world to approximate parallelism. In actuality, we have a population of virtual CPUs, each of which gets a slice of the real CPU's time as it comes up in the queue. The number of instructions to be executed in each time slice may be set proportional to the size of the genome of the creature being executed, raised to a power. If the "slicer power" is equal to one, then the sheer is size neutral, the probability of an instruction being executed does not depend on the size of the creature in which it occurs. If the power is greater than one, large creatures get more CPU cycles per instruction than small creatures. If the power is less than one, small creatures get more CPU cycles per instruction. The power determines if selection favors large or small creatures, or is size neutral. A constant slice size selects for small creatures.
2.4.3
Artificial D e a t h
Death must play a role in any system that exhibits the process of evolution. Evolution involves a continuing iteration of selection, which implies differen tial death or reproduction. In natural life, death occurs as a result of accident, predation, starvation, disease, or if these fail to kill the organism, it will even tually die from senescence resulting from an accumulation of wear and tear at every level of the organism including the molecular. In normal computers, processes are "born" when they are initiated by the user, and "die" when they complete their task and halt. A process whose goal is to repeatedly replicate itself is essentially an endless loop, and would not spontaneously terminate. Due to the perfection of normal computer systems, we can not count on "wear and tear" to eventually cause a process to terminate. In synthetic life systems implemented in computers, death is not likely to be a process that would occur spontaneously, and it must generally be introduced artificially by the designer. Everyone who has set up such a system has found their own unique solutions. Todd [88] recently discussed this problem in general terms. The Tierran operating system includes a "reaper" which begins "killing" creatures from a queue when the memory fills. Creatures are killed by deal locating their memory, and removing them from both the reaper and slicer
26
queues. Their "dead" code is not removed from the soup. In the present system, the reaper uses a linear queue. When a creature is born it enters the bottom of the queue. The reaper always kills the creature at the top of the queue. However, individuals may move up or down in the reaper queue according to their success or failure at executing certain instructions. When a creature executes an instruction that generates an error condition, it moves one position up the queue, as long as the individual ahead of it in the queue has not accumulated a greater number of errors. Two of the instructions are somewhat difficult to execute without generating an error, therefore successful execution of these instructions moves the creature down the reaper queue one position, as long as it has not accumulated more errors than the creature below it. The effect of the reaper queue is to cause algorithms which are fundamen tally flawed to rise to the top of the queue and die. Vigorous algorithms have a greater longevity, but in general, the probability of death increases with age. An interesting variation on this was introduced by Barton-Davis [7] who eliminated the reaper queue. In its place, he caused the "flaw rate" (see section on Flaws above) to increase with the age of the individual, in mimicry of wear and tear. When the flaw rate reached 100%, the individual was killed. Skipper [78] provided a "suicide" instruction, which if executed, would cause a process to terminate (die). The evolutionary objective then became to have a suicide instruction in your genome which you do not execute yourself, but which you try to get other individuals to execute. Litherland [51] introduced death by local crowding. Davidge caused processes to die when they contained certain values in their registers [17]. Gray [35] allowed each process six attempts at reproduction, after which they would die.
2.5
Genetic Operators
In order for evolution to occur, there must be some genetic variation among the offspring. In organic life, this is insured by natural imperfections in the replication of the informational molecules. However, one way in which digital "chemistry' 1 differs from organic chemistry is in the degree of perfection of its operations. In the computer, the genetic code can be reliably replicated without errors to such a degree that we must artificially introduce errors or other sources of genetic variation in order to induce evolution.
27
2.5.1
Mutations
In organic life, the simplest genetic change is a "point mutation", in which a single nucleic acid in the genetic code is replaced by one of the three other nucleic acids. This can cause an amino acid substitution in the protein coded by the gene. The nucleic acid replacement can be caused by an error in the replication of the DNA molecule, or it can be caused by the effects of radiation or mutagenic chemicals. In the digital medium, a comparably simple genetic change can result from a bit flip in the memory, where a one is replaced by a zero, or a zero is replaced by a one. These bit flips can be introduced in a variety of ways that are analogous to the various natural causes of mutation. In any case, the bit flips must be introduced at a low to moderate frequency, as high frequencies of mutation prevent the replication of genetic information, and lead to the death of the system [71]. Bit flips may be introduced at random anywhere in memory, where they may or may not hit memory actually occupied by digital organisms. This could be thought of as analogous to cosmic rays falling at random and dis turbing molecules which may or may not be biological in nature. Bit flips may also be introduced when information is copied in the memory, which could be analogous to the replication errors of DNA. Alternatively, bit flips could be introduced in memory as it is accessed, either as data or executable code. This could be thought of as damage due to "wear and tear". In Tierra mutations occur in two circumstances. At some background rate, bits are randomly selected from the entire soup (e.g., 60,000 instructions total ing 300,000 bits) and flipped. This is analogous to mutations caused by cosmic rays, and has the effect of preventing any creature from being immortal, as it will eventually mutate to death. The background mutation rate has generally been set at about one bit flipped for every 10,000 Tierran instructions executed by the system. In addition, while copying instructions during the replication of creatures, bits are randomly flipped at some rate in the copies. The copy mutation rate is the higher of the two, and results in replication errors. The copy mutation rate has generally been set at about one bit flipped for every 1,000 to 2,500 in structions copied. In both classes of mutation, the interval between mutations varies randomly within a certain range to avoid possible periodic effects.
28
2.5.2
Flaws
Alterations of genetic information are not the only source of noise in the system. In organic life, enzymes have evolved to increase the probability of chemical reactions that increase the fitness of the organism. However, the metabolic system is not perfect. Undesired chemical reactions do occur, and desired re actions sometimes produce undesired by-products. The result is the generation of molecular species that can "gum up the works", having unexpected conse quences, generally lowering the fitness of the organism, but possibly raising it. In the digital system, an analogue of metabolic (non-genetic) errors can be introduced by causing the computations carried out by the CPU to be probabilistic, producing erroneous results at some low frequency. For example, any time a sum or difference is calculated, the result could be off by some small value (e.g. plus or minus one). Or, if all bits are shifted one position to the left or right, an appropriate error would be to shift by two positions or not at all. When information is transferred from one location to another, either in the RAM memory or the CPU registers, it could occasionally be transferred from the wrong location, or to the wrong location. While flaws do not directly cause genetic changes, they can cause a cascade of events that result in the production of an offspring that is genetically different from the parent. It turns out that bit flipping mutations and flaws in instructions are not nec essary to generate genetic change and evolution, once the community reaches a certain state of complexity. Genetic parasites evolve which are sloppy repli cators, and have the effect of moving pieces of code around between creatures, causing rather massive rearrangements of the genomes. The mechanism of this ad hoc sexuality has not been worked out, but is likely due to the parasites' inability to discriminate between live, dead or embryonic code. Mutations result in the appearance of new genotypes, which are watched by an automated genebank manager. When new genotypes increase in frequency across some arbitrary threshold, such as making up 2% of the population, they are given a unique name and saved to disk. Each genotype name contains two parts, a number and a three letter code. The number represents the number of instructions in the genome. The three letter code is used as a base 26 numbering system for assigning a unique label to each genotype in a size class. The first genotype to appear in a size class is assigned the label aaa, the second is assigned the label aab, and so on. Thus the ancestor is named 80aaa, and the first mutant of size 80 is named 8Qaab. The first creature of size 45 is
29 named 45aaa. The genebanker saves some additional information with each genome: the genotype name of its immediate ancestor which makes possible the reconstruc tion of the some of the phylogeny; the time and date of origin; "metabolic" data including the number of instructions executed in the first and second reproduction, the number of errors generated in the first and second reproduc tion, and the number of instructions copied into the daughter cell in the first and second reproductions (see Appendix D, E); some environmental param eters at the time of origin including the search limit for addressing, and the slicer power, both of which affect selection for size.
2.6
The Tierran Ancestor
I have used the Tierran language to write a single self-replicating program which is 80 instructions long. This program is referred to as the "ancestor", or alternatively as genotype 0080aaa (Figure 1). The ancestor is a minimal selfreplicating algorithm which was originally written for use during the debugging of the simulator. No functionality was designed into the ancestor beyond the ability to self-replicate, nor was any specific evolutionary potential designed in. The commented Tierran assembler and machine code for this program is presented in Appendix D. The ancestor examines itself to determine where in memory it begins and ends. The ancestor's beginning is marked with the four no-operation template: 1 1 1 1 , and its ending is marked with 1 1 1 0 . The ancestor locates its beginning with the five instructions: adrb, nop_0, nop.O, nop.O, nop_0. This series of instructions causes the system to search backwards from the adrb instruction for a template complementary to the four nop_0 instructions, and to place the address of the complementary template (the beginning) in the AX register of the CPU (see Appendix D). A similar method is used to locate the end. Having determined the address of its beginning and its end, it subtracts the two to calculate its size, and allocates a block of memory of this size for a daughter cell. It then calls the copy procedure which copies the entire genome into the daughter cell memory, one instruction at a time. The beginning of the copy procedure is marked by the four no-operation template: 1 1 0 0. Therefore the call to the copy procedure is accomplished with the five instructions: call, nop_0, nop_0, nop_l
30
When the genome has been copied, it executes the divide instruction, which causes the creature to lose write privileges on the daughter cell memory, and gives an instruction pointer to the daughter cell (it also enters the daughter cell into the slicer and reaper queues). After this first replication, the mother cell does not examine itself again; it proceeds directly to the allocation of another daughter cell, then the copy procedure is followed by cell division, in an endless loop. Fourty-eight of the eighty instructions in the ancestor are no-operations. Groups of four no-operation instructions are used as complementary templates to mark twelve sites for internal addressing, so that the creature can locate its beginning and end, call the copy procedure, and mark addresses for loops and jumps in the code, etc. The functions of these templates are commented in the listing in Appendix D.
2.7
Evolution and Diversity/Entropy
Independently of these studies, a series of runs was conducted using the original program with the original instruction set, and applying a tool for the calculation of diversity/entropy and its changes over time in an evolving ecological community. The diversity /entropy measure is negative sum of p log p, where p is the proportion of the community occupied by each genotype. For the purposes of this study a filter was used, which ignored all genotypes represented by a single individual. The purpose of the filter was to eliminate all mutants which were never able to reproduce (thus reducing the sensitivity of the measure to mutation rate). In addition, this diversity/entropy data was calculated for every birth and death, and then averaged over each million CPU cycle period. Only the averages over each period were recorded.
3
Results
3.1
Natural History
Evolutionary runs of the simulator are generally begun by inoculating a soup of about 60,000 instructions with a single individual of the 80 instruction ancestral genotype. The passage of time in a run is measured in terms of how many
31
Image 1
Image 2
Image 3
Image 4
Images from Anti-Gravity Workshop Animation Image 1: The digital environment: self-replicating computer programs (colored geometric objects) occupy the RAM memory of the computer (orange background). Mutations (lightning) cause random changes in the code. Death (the skull) eliminates old or defective programs. Image 2: The ancestral program - consists of three "genes" (green solid objects). The CPU (green sphere) is executing code in the first gene, which causes the program to measure itself. Image 3: A parasite (blue, two-piece object) uses its CPU (blue sphere) to execute the code in the third gene of a neighboring host organism (green) to replicate itself, producing a daughter parasite (two-piece wire frame object). Image 4: A hyper-parasite (red, three-piece object) steals the CPU from a parasite (blue sphere). Using the stolen CPU, and its own CPU (red sphere) it is able to produce two daughters (wire frame objects on left and right) simultaneously.
32
Image 1
Image 2
Image 3
Image 4
Images of Evolutionary Interaction b e t w e e n Hosts and Parasites Image made using the Artificial Life Monitor (ALmond) program developed by Marc Cygnus. Image 1: Hosts, red, are very common. Parasites, yellow, have appeared but are still rare. Image 2: Hosts, are now rare because parasites have become very common. Immune hosts, blue, have appeared but are rare. Image 3: Immune hosts are increasing in frequency, separating the parasites into the top of memory. Image 4: Immune hosts now dominate memory, while parasites and susceptible hosts decline in frequency. The parasites will soon be driven to extinction. Each image represents a soup of 60,000 bytes, divided into 60 segments of 1000 bytes each. Each individual creature is represented by a colored bar, colors correspond to genome size (e.g., red = 80, yellow = 45, blue = 79).
33
Tierran instructions have been executed by the simulator, or the number of generations of organisms that have passed. The original ancestral cell executes 839 instructions in its first replication, and 813 for each additional replication. The initial cell and its replicating daughters rapidly fill the soup memory which starts the reaper. Typically, the system executes about 400,000 instructions in filling up the soup with about 375 individuals of size 80 (and their 375 em bryonic daughter cells). Once the reaper begins, the memory remains roughly filled with creatures for the remainder of the run. If there were no mutations at the outset of the run, there would be no evolution. However, the bits flipped as a result of copy errors or background mutations result in creatures whose list of 80 instructions (genotype) differs from the ancestor, usually by a single bit difference in a single instruction. Mutations in and of themselves, can not result in a change in the size of a creature, they can only alter the instructions in its genome. However, by altering the genotype, mutations may affect the processes whereby the creature examines itself, calculates its size, or replicates, potentially causing it to produce an offspring that differs in size from itself. Four out of the five possible mutations in a no-operation instruction con vert it into another kind of instruction, while one out of five converts it into the complementary no-operation. Therefore 80% of mutations in templates destroy or change the size of the template, while one in five alters the template pattern. An altered template may cause the creature to make mistakes in self examination, procedure calls, or looping or jumps of the instruction pointer, all of which use templates for addressing.
3.1.1
Parasites
An example of the kind of error that can result from a mutation in a template is a mutation of the low order bit of instruction 42 of the ancestor (Appendix D). Instruction 42 is a nop_0, the third component of the copy procedure template. A mutation in the low order bit would convert it into n o p . l , thus changing the template from 1 1 0 0 to 1 1 1 0 . This would then be recognized as the template used to mark the end of the creature, rather than the copy procedure. A creature born with a mutation in the low order bit of instruction 42 would calculate its size as 45. It would allocate a daughter cell of size 45 and copy
34
only instructions 0 through 44 into the daughter cell. The daughter cell then, would not include the copy procedure. This daughter genotype, consisting of 45 instructions, is named 0045aaa. Genotype 0045aaa (Figure 1) is not able to self-replicate in isolated culture. However, the semi-permeable membrane of memory allocation only protects write privileges. Creatures may match templates with code in the allocated memory of other creatures, and may even execute that code. Therefore, if creature 0045aaa is grown in mixed culture with OOSOaaa, when it attempts to call the copy procedure, it will not find the template within its own genome, but if it is within the search limit (generally set at five times the average genome size) of the copy procedure of a creature of genotype OOSOaaa, it will match templates, and send its instruction pointer to the copy code of OOSOaaa. Thus a parasitic relationship is established (see Ecology below). Typically, parasites begin to emerge within the first few million instructions of elapsed time in a run.
Figure 1. M e t a b o l i c flow chart for t h e a n c e s t o r , p a r a s i t e , h y p e r parasite, a n d their interactions: ax, bx and ex refer to CPU registers where location and size information are stored, [ax] and [bx] refer to locations in the soup indicated by the values in the ax and bx registers. Patterns such as 1101 are complementary templates used for addressing. Arrows outside of boxes indicate jumps in the flow of execution of the programs. The dotted-line arrows indicate flow of execution between creatures. The parasite lacks the copy procedure, however, if it is within the search limit of the copy procedure of a host, it can locate, call and execute that procedure, thereby obtaining the information needed to complete its replication. The host is not adversely affected by this informational parasitism, except, through competition with the parasite, which is a superior competitor. Note that the parasite calls the copy procedure of its host with the expectation that control will return to the parasite when the copy procedure returns. However, the hyper-parasite jumps out of the copy procedure rather than returning, thereby seizing control from the parasite. It then proceeds to reset the CPU registers of the parasite with the location and size of the hyper-parasite, causing the parasite to replicate the hyper-parasite genome thereafter.
35
Fig. 1
3.1.2
Immunity to Parasites
At least some of the size 79 genotypes demonstrate some measure of resistance to parasites. If genotype 45aaa is introduced into a soup, flanked on each side with one individual of genotype 0079aab, 0045aaa will initially reproduce somewhat, but will be quickly eliminated from the soup. When the same experiment is conducted with 0045aaa and the ancestor, they enter a stable cycle in which both genotypes coexist indefinitely. Freely evolving systems have been observed to become dominated by size 79 genotypes for long periods, during which parasitic genotypes repeatedly appear, but fail to invade.
3.1.3
Circumvention of Immunity to Parasites
Occasionally these evolving systems dominated by size 79 were successfully invaded by parasites of size 51. When the immune genotype 0079aab was tested with 0051aao (a direct, one step, descendant of 0045aaa in which instruction 39 is replaced by an insertion of seven instructions of unknown origin), they were found to enter a stable cycle. Evidently 0051aao has evolved some way to circumvent the immunity to parasites possessed by 0079aab. The fourteen
36
genotypes 0051aaa through 0051aan were also tested with 0079aab, and none were able to invade.
3.1.4
Hyper-parasites
Hyper-parasite have been discovered, (e.g., OOSOgai, which differs by 19 in structions from the ancestor, Figure 1). Their ability to subvert the energy metabolism of parasites is based on two changes. The copy procedure does not return, but jumps back directly to the proper address of the reproduction loop. In this way it effectively seizes the CPU from the parasite. However it is another change which delivers the coup de grace: after each reproduction, the hyper-parasite re-examines itself, resetting the BX register with its location and the CX register with its size. After the instruction pointer of the para site passes through this code, the CPU of the parasite contains the location and size of the hyper-parasite and the parasite CPU thereafter replicates the hyper-parasite genome. In essence, the hyper-parasite has parallelized itself by recruiting a new CPU stolen from a parasite.
3.1.5
Social H y p e r - p a r a s i t e s
Hyper-parasites drive the parasites, as well as all other algorithms, to extinc tion. This results in a community with a relatively high level of genetic unifor mity, and therefore high genetic relationship between individuals in the com munity. These are the conditions that support the evolution of sociality, and social hyper-parasites soon dominate the community. Social hyper-parasites (Figure 2) appear in the 61 instruction size class. For example, 0061acg is so cial in the sense that it can only self-replicate when it occurs in aggregations. When it jumps back to the code for self-examination, it jumps to a template that occurs at the end rather than the beginning of its genome. If the creature is flanked by a similar genome, the j u m p will find the target template in the tail of the neighbor, and execution will then pass into the beginning of the ac tive creature's genome. The algorithm will fail unless a similar genome occurs just before the active creature in memory. Neighboring creatures cooperate by catching and passing on jumps of the instruction pointer. It appears that the selection pressure for the evolution of sociality is that it facilitates size reduction. The social species are 24% smaller than the ancestor. They have achieved this s i z e j ^ ^ ^ ^ y i ^ g j ^ g / s h r i n k i n g their templates from
37
four instructions to three instructions. This means that there are only eight templates available to them, and catching each others jumps allows them to deal with some of the consequences of this limitation as well as to make dual use of some templates.
3.1.6
Cheaters: Hyper-hyper-parasites
The cooperative social system of hyper-parasites is subject to cheating, and is eventually invaded by hyper-hyper-parasites (Figure 2). These cheaters (e.g., 0027aab) position themselves between aggregating hyper-parasites so that when the instruction pointer is passed between them, they capture it.
Figure 2. Metabolic flow chart for social hyper-parasites, their as sociated hyper-hyper-parasite cheaters, and their interactions. Sym bols are as described for Fig. 1. Horizontal dashed lines indicate the bound aries between individual creatures. On both the left and right, above the dashed line at the top of the figure is the lowermost fragment of a social-hyperparasite. Note (on the left) that neighboring social hyper-parasites cooperate in returning the flow of execution to the beginning of the creature for self-reexamination. Execution jumps back to the end of the creature above, but then falls off the end of the creature without executing any instructions of conse quence, and enters the top of the creature below. On the right, a cheater is inserted between the two social-hyper-parasites. The cheater captures control of execution when it passes between the social individuals. It sets the CPU reg isters with its own location and size, and then skips over the self-examination step when it returns control of execution to the social creature below.
38
Fig. 2
39 3.1.7
A Novel Self-examination
All creatures discussed thus far mark their beginning and end with templates. They then locate the addresses of the two templates and determine their genome size by subtracting them. In one run, creatures evolved without a template marking their end. These creatures located the address of the tem plate marking their beginning, and then the address of a template in the middle of their genome. These two addresses were then subtracted to calculate half of their size, and this value was multiplied by two (by shifting left) to calculate their full size.
3.2
Ecology
The only communities whose ecology has been explored in detail are those that operate under selection for small sizes. These communities generally include a large number of parasites, which do not have functional copy procedures, and which execute the copy procedures of other creatures within the search limit. In exploring ecological interactions, the mutation rate is set at zero, which effectively throws the simulation into ecological time by stopping evolution. When parasites are present, it is also necessary to stipulate that creatures must breed true, since parasites have a tendency to scramble genomes, leading to evolution in the absence of mutation. 0045 aaa is a "metabolic parasite". Its genome does not include the copy procedure, however it executes the copy procedure code of a normal host, such as the ancestor. In an environment favoring small creatures, 0045aaa has a competitive advantage over the ancestor, however, the relationship is density dependent. When the hosts become scarce, most of the parasites are not within the search limit of a copy procedure, and are not able to reproduce. Their calls to the copy procedure fail and generate errors, causing them to rise to the top of the reaper queue and die. When the parasites die off, the host population rebounds. Hosts and parasites cultured together demonstrate Lotka-Volterra population cycling ([52, 89, 90]). A number of experiments have been conducted to explore the factors af fecting diversity of size classes in these communities. Competitive exclusion trials were conducted with a series of self-replicating (non-parasitic) genotypes of different size classes. The experimental soups were initially inoculated with one individual of each size.
40
of size 80, and then against successively larger size classes. The interactions were observed by plotting the population of the size 79 class on the x axis, and the population of the other size class on the y axis. Sizes 79 and 80 were found to be competitively matched such that neither was eliminated from the soup. They quickly entered a stable cycle, which exactly repeated a small orbit. The same general pattern was found in the interaction between sizes 79 and 81. When size 79 was tested against size 82, they initially entered a stable cycle, but after about 4 million instructions they shook out of stability and the trajectory became chaotic with an attractor that was symmetric about the diagonal (neither size showed any advantage). This pattern was repeated for the next several size classes, until size 90, where a marked asymmetry of the chaotic attractor was evident, favoring size 79. The run of size 79 against size 93 showed a brief stable period of about a million instructions, which then moved to a chaotic phase without an attractor, which spiraled slowly down until size 93 became extinct, after an elapsed time of about 6 million instructions. An interesting exception to this pattern was the interaction between size 79 and size 89. Size 89 is considered to be a "metabolic cripple", because although it is capable of self-replicating, it executes about 40% more instructions than normal to replicate. It was eliminated in competition with size 79, with no loops in the trajectory, after an elapsed time of under one million instructions. In an experiment to determine the effects of the presence of parasites on community diversity, a community consisting of twenty size classes of hosts was created and allowed to run for 30 million instructions, at which time only the eight smallest size classes remained. The same community was then regenerated, but a single genotype (0045aaa) of parasite was also introduced. After 30 million instructions, 16 size classes remained, including the parasite. This seems to be an example of a "keystone" parasite effect ([63]). Symbiotic relationships are also possible. The ancestor was manually dis sected into two creatures, one of size 46 which contained only the code for self-examination and the copy loop, and one of size 64 which contained only the code for self-examination and the copy procedure (Figure 3). Neither could replicate when cultured alone, but when cultured together, they both replicated, forming a stable mutualistic relationship. It is not known if such relationships have evolved spontaneously. Figure 3. M e t a b o l i c flow chart for o b l i g a t e s y m b i o n t s a n d t h e i r i n t e r a c t i o n s . Symbols are as described for Fig. 1. Neither creature is able
41
to self-replicate in isolation. However, when cultured together, each is able to replicate by using information provided by the other. SYMBIONTS
Fig. 3
3.3
Evolutionary Optimization
In order to compare the process of evolution between runs of the simulator, a simple objective quantitative measure of evolution is needed. One such measure is the degree to which creatures improve their efficiency through evolution. This provides not only an objective measure of progress in evolution, but also sheds light on the potential application of synthetic life systems to the problem of the optimization of machine code. The efficiency of the creature can be indexed in two ways: the size of the genome, and the number of CPU cycles needed to execute one replication. Clearly, smaller genomes can be replicated with less CPU time, however, during evolution, creatures also decrease the ratio of instructions executed in one replication, to genome size. The number of instructions executed per instruction copied, drops substantially. Figure 4 shows the changes in genome size over a time period of 500 million instructions executed by the system, for eight sets of mutation rates differing by factors of two. Mutation rates are measured in terms of 1 in N individuals
42
being affected by a mutation in each generation. At the highest two sets of rates tested, one and two, either each (one) or one-half (two) of the individuals are hit by mutation in each generation. At these rates the system is unstable. The genomes melt under the heat of the high mutation rates. The community often dies out, although some runs survived the 500 million instruction runs used in this study. The next lower rate, four, yields the highest rate of optimization without the risk of death of the community. At the five lower mutation rates, 8, 16, 32, 64 and 128, we see successively lower rates of optimization. Additional replicates were made of the runs at the mutation rate of four (Figure 5). The replicates differ only in the seed of the random number genera tor, all other parameters being identical. These runs vary in some details such as whether progress is continuous and gradual, or comes in bursts. Also, each run decreases to a size limit which it can not proceed past even if it is allowed to run much longer. However, different runs reach different plateaus of efficiency. The smallest limiting genome size seen has been 22 instructions, while other runs reached limits of 27 and 30 instructions. The simple interpretation is that the system can reach a local optima from which it can not easily evolve to the global optima. However, a close look as the "sub-optimal" solutions suggests an alternative explanation (see section on "Complex Structures' 1 below).
Figure 4. E v o l u t i o n a r y o p t i m i z a t i o n at eight s e t s of m u t a t i o n r a t e s . In each run, the three mutation rates: move mutations (copy error), flaws and background mutations (cosmic rays) are set relative to the generation time. In each case, the background mutation rate is the lowest, affecting a cell once in twice as many generations as the move mutation rate. The flaw rate is intermediate, affecting a cell once in 1.5 times as many generations as the move mutation rate. For example in one run, the move mutation will affect a cell line on the average once every 4 generations, the flaw will occur once every 6 generations, and the background mutation once every 8 generations. The horizontal axis shows elapsed time in hundreds of millions of instructions executed by the system. The vertical axis shows genome size in instructions. Each point indicates the first appearance of a new genotype which crossed the abundance thresholds of either 2% of the population of cells in the soup, or occupation of 2% of the memory. The number of generations per move mutation is indicated by a number in the upper right hand corner of each graph.
43
Fig. 4
44 44
Fig. 4
45
Figure 5. Variation in evolutionary optimization under constant conditions. Based on a mutation rate of four generations per move mutation, all other parameters as in Fig. 4. The plots are otherwise as described for Fig. 4.
Fig. 5
46
The increase in efficiency of the replicating algorithms is even greater than the decrease in the size of the code. The ancestor is 80 instructions long and requires 839 CPU cycles to replicate. The creature of size 22 only requires 146 CPU cycles to replicate, a 5.75-fold difference in efficiency. The algorithm of one of these creatures is listed in Appendix E. Although the optimization rate of the algorithm is maximized at the highest mutation rate that does not cause instability, ecological interactions appear to be richer at slightly lower mutation rates. At the rates of eight or 16, we find the diversity of coexisting size classes to be the greatest, and to persist the longest. The smaller size classes tend to be various forms of parasites, thus a diversity of size classes indicates a rich ecology. An example of even greater optimization is illustrated in Appendix F and discussed in the section "Complex Structures". Unrolling of the loop results in a loop which uses 18 CPU cycles to copy three instructions, or six CPU cycles executed per instruction copied, compared to 10 for the ancestor. The creature of size 22 also uses six CPU cycles per instruction copied. However, the creature of Appendix F uses three extra CPU cycles per loop to compensate for a separate adaptation that allows it to double its share of CPU time from the global pool (in essence meaning that relatively speaking, it uses only three CPU cycles per instruction copied). Without this compensation it would use only five CPU cycles per instruction copied.
3.4
Evolutionary Patterns in Four Different Genetic Lan guages
In comparing the patterns of evolution across the four instruction sets, two ma jor differences are apparent: 1) The degree and rate of optimization attained. 2) The patterns of gradualism, punctuation and equilibrium. These results are summarized in Table 1, and described below. The original instruction set (Figure 6) shows the most rapid optimization, generally reaching its final plateau within 600 generations. In addition, this instruction set showed one of the highest degrees of optimization, with the best performance reducing the seed program from seventy-two to twenty-two instructions, 30% of its original size, and the average reduced to 35%. This instruction set generally showed a pattern of gradualism, with an occasional punctuation.
47
Comparison of optimizations in the four instruction sets, II, 12, 13 and 14 (described in Appendix G). The first column, "Set", specifies which of the four sets. The second column, "Ancestor", specifies the size in instructions, of the ancestral algorithm of that set. The following eight columns, "RO" through "R7" refer to the eight runs, and contain the size of the smallest algorithms evolved during that run. The column "Avg. Opt." shows the average optimization for that set. This is calculated by averaging the sizes of the smallest algorithms to evolve in each run for that set, and dividing by the size of the ancestral algorithm. The column "Max. Opt." shows the maximum optimization achieved by this set. This is calculated by dividing the size of the smallest algorithm to evolve by the size of the ancestral algorithm. Table 1: Comparison of Optimizations in t h e Four Instruction Sets Set Ancestor RO Rl R2 R3 R4 R5 R6 R7 Avg. Opt Max. Opt. 11 12 13 14
73 94 93 82
27 54 54 26
27 57 37 23
26 54 34 23
22 55 36 26
60 49 35
56 53 24
57 54 43
55 40 23
.35 .60 .48 .34
.30 .57 .37 .28
The second instruction set (Figure 6) shows slower optimization, generally taking about 1000 generations to reach its final plateau. Also, the degree of optimization shown by this set is not as great. The best performance reduced the algorithm from ninety-four to fifty-four instructions, 57% of its original size, and the average reduced to 60%. This instruction set generally showed a pattern of gradualism, punctuations were completely absent.
Figure 6. Optimization Patterns in Four Instruction Sets. For each of the twenty-eight graphs, the horizontal axis is elapsed time in genera tions, and the vertical axis is the size of the algorithm in instructions. Points appear on the graph when a new genotype increases in frequency across some threshold. Each group of four graphs is labeled as to which instruction set, e.g., INST 1 is the first set, INST 3 is the third.
48
Fig. 6
49
Fig. 6
50
Fig. 6
51
Fig. 6
52
Fig. 6
53
Fig. 6
54
Fig. 6
55
The third instruction set (Figure 6) performed much like the second, taking about 1000 generations to reach its final plateau, and showing a pattern of gradualism, completely lacking in punctuations. This instruction set showed somewhat better optimization than the second, with the best performance reducing the algorithm from ninety-three to thirty-four instructions, 37% of its initial size, and the average reduced to 48%. The fourth instruction set (Figure 6) showed very distinctive patterns of evolution. The time to reach its final plateau varied widely, ranging from about 350 generations to about 2000 generations. The greatest degree of optimization resulted in reducing the algorithm from eighty-two to twenty-three instructions, 28% of the original size, and the average reduced to 34%. This instruction set showed what could only be described as punctuated equilibrium, with no clear signs of gradualism.
3.5
Complex Structures
Optimization in digital organisms involves finding algorithms for which less CPU time is required to effect a replication. This is always a selective force, regardless of how the environmental parameters of the Tierran universe are set. However, selection may also favor reduction or increase in size of the creatures, depending on how CPU time is allocated to the creatures. If each creature gets an equal share of CPU time, selection strongly favors reduction in size. The reason is that all other things being equal, a smaller creature requires less CPU time because it need copy fewer instructions to a new location in memory. Under selection favoring a decrease in size, evolution has converted an orig inal eighty-two instruction creature (instruction set four) to creatures of as few as twenty-three instructions, within a time span of four hundred generations. Different runs under the same initial parameters, but using different seeds to the random generator, achieved different degrees of optimization. These runs have plateaued at forty-three, thirty-five, twenty-six, twenty-four and twentythree instructions. An obvious interpretation of these results is that evolution gets caught on a local optima, from which it can not reach the global optima [71]. However, analysis of the "sub-optimal" (larger) final algorithms suggests an alternative interpretation. An efficiency measure was calculated for each resultant organ ism, in which the total number of CPU cycles expended in replication is divided by the size of the organism. The efficiency index measures the cost of moving
56
C o m p a r i s o n s of Size, Efficiency a n d C o m p l e x i t y in E v o l v e d A l g o r i t h m s from eight runs of instruction set four. The first column, "Run", refers to which of the eight runs this result occurred in (compare to Table 1). The second column, "Genotype", lists the name of an example of an algorithm of the smallest size evolved in that run. The third column, "Efficiency", lists the efficiency of that algorithm, calculated as CPU cycles expended for each byte moved during reproduction. The rows of the table are sorted on this value, with the highest efficiency (least CPU cycle expenditure) at the top of the table. The fourth column, "Unrolling", is an indication of the complexity of the central loop of the algorithms. This indicates the level to which the central loop is "unrolled" (see explanation in text). An asterisk in the final column indicates that the assembler code for this algorithm can be found in Appendix H. The algorithm 0082aaa is the ancestral program, written by the author, and is included for the sake of comparison. Table 2: C o m p a r i s o n s of Size, Efficiency a n d C o m p l e x i t y in E v o l v e d Algorithms
Run R6 R4 R3 R5 R2 Rl R7 RO RX
Genotype 0043crg
Efficiency 3.33
0035bfj 0026ayz 0024aah 0023awn 0023api 0023aod 0026abk 0082aaa
3.49 3.73 3.96 4.96 5.04 5.09 5.19 8.39
1LJnrol 3 3 2 2 1 1 1 1 1
a byte of information by that algorithm, in units of CPU cycles per byte. Table 2 ranks the evolved organisms by this measure of efficiency. They arrange themselves almost perfectly in reverse order of size. With the exception of the last algorithm, 0026abk, the evolved algorithms show a pattern in which the larger algorithms are the most efficient. Examination of the individual algorithms shows that the larger individuals have discovered an optimization technique called "unrolling the loop". This technique involves the production of more intricate algorithms. The central loop of the copy procedure of the ancestor (0082aaa) for instruction set four (see appendix B) performs the following operations: 1) copies an instruction from the mother to the daughter, 2) decrements the CX register which initially contains the size of the parent genome, 3) tests to see if CX is
57
equal to zero, if so it exits the loop, if not it remains in the loop, 4) jumps back to the top of the loop. The work of the loop is contained in steps 1 and 2. Steps 3 and 4 are overhead associated with executing a loop. The efficiency of the loop can be increased by duplicating the work steps within the loop, thereby saving on overhead. The creatures 0024aah and 0026ayz had repeated the work steps twice within the loop, while the creatures 0035bfj and 0043crg had repeated the work steps three times within the loop. These optima appear to represent stable endpoints for the course of evolution, in that running the system longer does not appear to produce any significant further evolution. The increase in CPU economy of the replicating algorithms is even greater than the decrease in the size of the code. The ancestor for instruction set four is 82 instructions long and requires 688 CPU cycles to replicate. A creature of size 24 only requires 95 CPU cycles to replicate, a 7.24-fold difference in CPU cycles, and a 2.12-fold difference in efficiency (CPU cycles expended per byte moved). A creature of size 43 requires only 143 CPU cycles to replicate, a 4.81-fold difference in CPU cycles, and a 2.52fold difference in efficiency. Unrolling of the loop is not unique to instruction set four. It has also been observed in the original instruction set. Appendix F contains the central copy loop of the ancestor (0080aaa) of instruction set one, and also the central copy loop of an organism that evolved from it (0072etq), which exhibits loop unrolling to level three.
3.6
Evolution and Diversity/Entropy
Figure 7 illustrates the measure of community diversity/entropy over a period of one billion CPU cycles. This measure, negative sum of p log p, where p is the proportion of the population occupied by a particular genotype, is the same index that ecologists use to measure community diversity. Initially, the diversity/entropy measures zero, because there is only a single genotype in the community. Mutation introduces new genotypes, and the diversity quickly rises to some "equilibrium" value. Over the course of the billion cycles, this equilibrium value slowly drifts up. This is probably due to the fact that during this same period, the average size of the individuals gradually decreases. This results in a gradual rise in the population of creatures in the community (since the area of memory available is fixed) Evidently larger populations are able
58
to sustain a greater equilibrium diversity. Another feature of the lower graph is the striking peaks representing abrupt drops in entropy/diversity. These peaks are major extinction events. They are not generated by external perturbations to the system, but arise entirely out of the internal dynamics of the evolving system. The population records for this run were reviewed, and all genotypes which had achieved frequencies representing 20% or more of the total population in the community were identified. Ten genotypes had achieved these frequency levels, and they are listed in Table 3. Each of these ten genotypes is marked with a letter on the lower graph of Figure 7, to indicate the time of its occur rence. It appears that these extremely successful genotypes correspond to all the major peaks of diversity loss. The upper portion of Figure 7 shows the changes in the size of organisms during the run. A point appears on this graph each time a new genotype increases in frequency across a threshold of 2%. That is to say, that when the population a new genotype first comes to represent 2% of the total population of individuals in the soup, a point appears on the graph indicating the size of that organism, and the time that it reached the threshold. Therefore the upper part of Figure 7 illustrates the size trends for the appearance of successful new genotypes. Two distinct data clouds can be recognized in the upper part of Figure 7. The upper cloud of points spans the full range of time, and is located principally in the 60 to 80 instruction size range. These points represent "hosts", or fully self-replicating algorithms. By contrast, the lower cloud of points represents the smaller parasites. The lower cloud is located principally in the 25 to 45 instruction size range.
Figure 7. Entropy/Diversity Changes in an Evolving Ecological Community. In both graphs, the horizontal axis is time, in millions of in structions executed by the system. The upper graph shows changes in the sizes of the organisms, in the same style as Figure 6. The lower graph shows changes in ecological entropy over time (see text).
II ——
tfq
en CCD D
60
Most Successful Genotypes, Their Times of Occurrence, and Maximum Fre quency. The first column "Letter" indicates the letter used to mark the location of the genotype on Figure 7. The second column "Time" indicates the time of occurrence of this genotype, in millions of instructions. The third column "Genotype" indicates the name of this organism. The fourth column "Max. Frequency" indicates the maximum frequency achieved by this genotype, as a proportion of the total population of creatures in the soup. Table 3: Most Successful Genotypes, Their Times of Occurrence, and Maximum Frequency Letter Time Genotype Max. Frequency a 117 0039aab 0.25 b c
d e f g h i .1
166 245 313 369 542 561 683 794 866
0037aaf 0070aac 0036aaj 0038aan 0027aaj 0023abg 0029aae 0029aab 0024aar
0.30 0.20 0.25 0.21 0.21 0.34 0.24 0.23 0.33
While the lower cloud also spans the full range of time, it contains obvious gaps which represent periods where parasites were absent from the community. The coming and going of parasites over time evidently relates to the turns in the evolutionary race between hosts and parasites. Parasites disappear when hosts evolve defenses, and reappear when the defenses are breached, or when the defenses are lost.through evolution in the absence of parasites.
4
Discussion of Results
It can be seen in Figures 6 that the parasites (the lower clouds of points) generally die out by half way through the run. Yet, in the upper part of Figure 7, parasites persist throughout the run. The run illustrated in Figure 7 was conducted with relatively lower mutation rates, than the runs shown in Figure 6. At higher mutation rates, optimization proceeds more rapidly. It is when optimization is well advanced that parasites tend to die out. In Figure 6 it can be seen that parasites tend to persist longer in instruction sets two and three which achieve only moderate optimization, than in sets one and
61
four that achieve higher degrees of optimization. Once the algorithms have been significantly compacted through optimization, the evolution of ecological interactions becomes more difficult, and these interactions tend to disappear from the evolving communities.
4.1
Evolutionary Patterns in Four Genetic Languages
The four genetic languages differ in various characteristics of the underlying machine language. In fact, the four languages differ only subtly, yet the rates, degrees and patterns of evolution vary widely among them. Unfortunately, it is not possible to conclude from these data, which specific differences in the machine languages are responsible for specific differences in the evolutions. This would require carefully controlled studies in which specific individual features of the machine languages are varied independently to de termine the effects of those differences on evolution. These would be studies to determine the elements of evolvability in genetic systems. The current study was not designed in this fashion. What we can conclude from the data available is that many features of the evolutionary process are sensitive to the characteristics of the underlying genetic system. It is also interesting to note that the greatest levels of opti mization occurred in those systems in which punctuations at least some times were present.
4.2
Complex Structures
Does evolution lead to greater complexity? It is obvious that it can, but. it would be erroneous to believe that there is a general trend in evolution toward greater complexity. In fact evolution also leads to greater simplicity. Genetic variation is generated through essentially random processes. Thus the generation of novel genotypes should not be biased toward either greater or lesser complexity. Natural selection could very well be biased, however, there are abundant examples of selection leading to less complexity. Parasitic digital organisms are good examples.
62
simple forms, as they rely on their host for certain services. For example, gut parasites do not require a digestive system, and have evolved very simple body plans. The eyes of some cave dwelling animals have evolved into rudi mentary non-functional structures. Viruses must have arisen from renegade DNA of cellular organisms, perhaps from transposons. Thus viruses must be much simpler than their ancestors, having become metabolic parasites at the molecular level. Probably the best way to view the issue is to note that, evolution is always pushing the boundaries, in all directions, of any measure. If we look at com plexity of organisms over the history of life on Earth, we clearly see a large increase over time. However, this does not necessarily arise from an inherent directionality. It may also arise from the fact that the original organisms were extremely simple, thus any moves in the direction of greater complexity are readily noted. Meanwhile, later evolutions in the direction of less complexity do not push the envelope of pre-existing complexity levels, and are easily lost amidst the background of pre-existing simpler organisms. Because the origi nal organisms were so extremely simple, onij evolutions to greater complexity push the envelope of life, and are readily noted (the origin of viruses may be a counter-example). This study cited some examples of the evolution of more complex algo rithms. These algorithms achieve high levels of optimization through a tech nique called "unrolling the loop". In the ancestral algorithm of instruction set four, the "work" part of the copy loop consists of only two instructions: dec and movii. Therefore the unrolling of this loop through the duplication of these two instructions would seem to be not too e v o l u t i o n a r y challenging. However, in the ancestral algorithm of instruction set one, the "work" part of the copy loop consists of four instructions: movii, dec_c, mr,_a and inc_b. Due to other circumstances that occurred in the course of evolution, this set of work instructions became slightly more complex, requiring two instances of dec_c. Thus, the "work" part of the evolving copy loop requires the proper combination and order of five instructions. Yet the organism 0072etq shows this set of instructions repeated three times (with varying ordering, indicating that the unrolling did not occur through an actual replication of the complete sequence). Th ese algorithms are substantially more intricate than the unevolved ones written by the author. The astonishing improbability of these complex orderings of instructions is testimony to the ability of evolution through natural selection to build complexit
63
4.3
Evolution and Diversity/Entropy
Does evolution lead to a decrease in entropy? In the context of the current study, entropy was measured as genetic diversity in an ecological community. This measure showed occasional sharp but transient drops in diversity/entropy. These drops in diversity/entropy appear to correspond to the appearance of highly successful new genotypes whose populations come to dominate large portions of the memory, pushing other genotypes out, and generating major extinction events.
It is interesting also, that nine of the ten genotypes listed in Table 3 are parasites (all except for 'c', 0070aac). The peaks of diversity/entropy loss are greatest on the occasions that parasites reappear in the community after a period of absence.
It appears likely from these observations, that these extinction episodes correspond to the emergence of novel adaptations among the evolving organ isms (particularly a breaching of the hosts defense mechanisms by parasites). These adaptations bestow the bearers with the ability to dominate the memory, excluding other organisms.
This suggests a process in which random genetic changes generated by mu tation and recombination explores the genotype space. Occasionally, these ex plorations stumble onto a significant innovation. These innovations can bestow such an advantage that the population of the new genotype explodes, gener ating an episode of mass extinction as it drives other genotypes out of mem ory. The extinction episode is noted as a sharp drop in the diversity/entropy measure. Thus, ecological entropy drops appear to correspond to the chance discovery of significant innovations.
However, continued mutation and recombination generates new variants of the successful new form. This process generally restores the community to the equilit ; um diversity /entropy about as rapidly as the diversity/entropy was lost in the extinction episo
64
5 5.1
Discussion of F u t u r e Directions Digital Husbandry
Digital organisms evolving freely by natural selection do no "useful" work. Natural evolution tends to the selfish needs of perpetuating the genes. We can not expect digital organisms evolving in this way to perform useful work for us, such as guiding robots or interpreting human languages. In order to generate digital organisms that function as useful software, we must guide their evolution through artificial selection, just as humans breed dogs, cattle and rice. Some experiments have already been done with using artificial selection to guide the evolution of digital organisms for the performance of "useful" tasks [2, 84, 85]. I envision two approaches to the management of digital evolution: digital husbandry, and digital genetic engineering.
D i g i t a l h u s b a n d r y is an analogy to animal husbandry. This technique would be used for the evolution of the most advanced and complex software, with intelligent capabilities. Correspondingly, this technique is the most fanci ful. I would begin by allowing multi-cellular digital organisms to evolve freely by natural selection. Using strictly natural selection, I would attempt to engi neer the system to the threshold of the computational analog of the Cambrian explosion, and let the diversity and complexity of the digital organisms spon taneously explode. One of the goals of this exercise would be to allow evolution to find the natural forms of complex parallel digital processes. Our parallel hardware is still too new for human programmers to have found the best way to write parallel software. And it is unlikely that human programmers will ever be capable of writing software of the complexity that the hardware is capable of running. Evolution should be able to show us the way. It is hoped that this would lead to highly complex digital organisms, which obtain and process information, presumably predominantly about other digital organisms. As the complexity of the evolving system increases, the organisms will process more complex information in more complex ways, and take more complex actions in response. These will be information processing organisms living in an informational environment.
65
organisms which while doing no "useful1' work, would none-the-less be highly sophisticated parallel information processing systems. Once this level of evo lution has been achieved, then artificial selection could begin to be applied, to enhance those information processing capabilities that show promise of utility to humans. Selection for different capabilities would lead to many different breeds of digital organisms with different uses. Good examples of this kind of breeding from organic evolution are the many varieties of domestic dogs which were derived by breeding from a single species, and the vegetables cabbage, kale, broccoli, cauliflower, and brussels sprouts which were all produced by selective breeding from a single species of plant.
D i g i t a l g e n e t i c e n g i n e e r i n g would normally be used in conjunction with digital husbandry. This consists of writing a piece of application code and inserting it into the genome of an existing digital organism. A technique being used in organic genetic engineering today is to insert genes for useful proteins into goats, and to cause them to be expressed in the mammary glands. The goats then secrete large quantities of the protein into the milk, which can be easily removed from the animal. We can think of our complex digital organisms as general purpose animals, like goats, into which application codes can be inserted to add new functionalities, and then bred through artificial selection to enhance or alter the quality of the new functions. In addition to adding new functionalities to complex digital organisms, digital genetic engineering could be used for achieving extremely high degrees of optimization in relatively small but heavily used pieces of code. In this approach, small pieces of application code could be inserted into the genomes of simple digital organisms. Then the allocation of CPU cycles to those organisms would be based on the performance of the inserted code. In this way, evolution could optimize those codes, and they could be returned to their applications. This technique would be used for codes that are very heavily used such as compiler constructs, or central components of the operating system.
5.2
Living Together I'm glad they're not real, because if they were, I would have to feed them and they would be all over the house. — Isabel Ray.
66
ever it can to insure its own survival, with no regard for the well-being of other genetic groups (potentially with the exception of intelligent species). Freely evolving autonomous artificial entities should be seen as potentially dangerous to organic life, and should always be confined by some kind of containment facility, at least until their real potential is well understood. At present, evolv ing digital organisms exist only in virtual computers, specially designed so that their machine codes are more robust than usual to random alterations. Out side of these special virtual machines, digital organisms are merely data, and no more dangerous than the data in a data base or the text file from a word processor. Imagine however, the problems that could arise if evolving digital organisms were to colonize the computers connected to the major networks. They could spread across the network like the infamous internet worm [4, 11, 80, 81]. When we attempted to stop them, they could evolve mechanisms to escape from our attacks. It might conceivably be very difficult to eliminate them. However, this scenario is highly unlikely, as it is probably not possible for digital organisms to evolve on normal computer systems. While the supposition remains untested, normal machine languages are probably too brittle to support digital evolution. Evolving digital organisms will probably always be confined to special ma chines, either real or virtual, designed to support the evolutionary process. This does not mean however, that they are necessarily harmless. Evolution remains a self-interested process, and even the interests of confined digital organisms may conflict with our own. For this reason it is important to re strict the kinds of peripheral devices that are available to autonomous evolving processes. This conflict was taken to its extreme in the movie Terminator 2. In the imagined future of the movie, computer designers had achieved a very advanced chip design, which had allowed computers to autonomously increase their own intelligence until they became fully conscious. Unfortunately, these intelligent computers formed the "sky-net" of the United States military. When the humans realized that the computers had become intelligent, they decided to turn them off. The computers viewed this as a threat, and defended themselves by using one of their peripheral devices: nuclear weapons. Relationships between species can however, be harmonious. We presently share the planet with millions of freely evolving species, and they are not threatening us with destruction. On the contrary, we threaten them. In spite of the mindless and massive destruction of life being caused by human activity, the general pattern in living communities is one of a network of inter-dependencies.
67
More to the point, there are many species with which humans live in close relationships, and whose evolution we manage. These are the domesticated plants and animals that form the basis of our agriculture (cattle, rice), and who serve us as companions (dogs, cats, house plants). It is likely that our relationship with digital organisms will develop along the same two lines. There will likely be carefully bred digital organisms developed by artifi cial selection and genetic engineering that perform intelligent data processing tasks. These would subsequently be "neutered" so that they can not replicate, and the eunuchs would be put to work in environments free from genetic op erators. We are also likely to see freely evolving and/or partially bred digital ecosystems contained in the equivalent of digital aquariums (without danger ous peripherals) for our companionship and aesthetic enjoyment. While this paper has focused on digital organisms, it is hoped that the discussions be taken in the more general context of the possibilities of any synthetic forms of life. The issues of living together become more critical for synthetic life forms implemented in hardware or wet ware. Because these organisms would share the same physical space that we occupy, and possibly consume some of the same material resources, the potential for conflict is much higher than for digital organisms. At the present, there are no self-replicating artificial organisms imple mented in either hardware or wet ware (with the exception of some simple organic molecules with evidently small and finite evolutionary potential [32, 39, 61]). However, there are active attempts to synthesize RNA molecules capa ble of replication [8, 41], and there is much discussion of the future possibility of self-replicating nano-technology and macro-robots. I would strongly urge that as any of these technologies approaches the point where self-replication is possible, the work be moved to specialized containment facilities. The means of containment will have to be handled on a case-by-case basis, as each new kind of replicating technology will have its own special properties. There are many in the artificial life movement who envision a beautiful future in which artificial life replaces organic life, and expands out into the universe [49, 50, 57, 58, 59]. The motives vary from a desire for immortality to a vision of converting virtually all matter in the universe to living matter. It is argued that this transition from organic to metallic based life is the inevitable and natural next step in evolution. The naturalness of this step is argued by analogy with the supposed genetic takeovers in which nucleic acids became the genetic material taking over from
68
clays [13], and cultural evolution took over from DNA based genetic evolution in modern humans. I would point out that whatever nucleic acids took over from, it marked the origin of life more than the passing of a torch. As for the supposed transition from genetic to cultural evolution, the truth is that genetic evolution remains intact, and has had cultural evolution layered over it rather than being replaced by it. The supposed replacement of genetic by cultural evolution remains a vision of a brave new world, which has yet to materialize. Given the ever increasing destruction of nature, and human misery and violence being generated by human culture, I would hesitate to place my trust in the process as the creator of a bright future. I still trust in organic evolution, which created the beauty of the rainforest through billions of years of evolution. I prefer to see artificial evolution confined to the realm of cyberspace, where we can more easily coexist with it without danger, using it to enhance our lives without having to replace ourselves. As for the expansion of life out into the universe, I am confident that this can be achieved by organic life aided by intelligent non-replicating machines. And as for immortality, our unwillingness to accept our own mortality has been a primary fuel for religions through the ages. I find it sad that Artificial Life should become an outlet for the same sentiment. I prefer to achieve immortality in the old fashioned organic evolutionary way, through my children. I hope to die in my patch of Costa Rican rain forest, surrounded by many thousands of wet and squishy species, and leave it all to my daughter. Let them set my body out in the jungle to be recycled into the ecosystem by the scavengers and decomposers. I will live on through the rain forest I preserved, the ongoing life in the ecosystem into which my material self is recycled, the memes spawned by my scientific works, and the genes in the daughter that my wife and I created.
5.3
Challenges
For well over a century, evolution has remained a largely theoretical science. Now new technologies have allowed us to inoculate natural evolution into ar tificial media, converting evolution into an experimental and applied science, and at the same time, opening Pandora's box. This creates a variety of chal lenges which have been raised or alluded to in the preceding essay, and which will be summarized here.
69 Respecting t h e Medium If the objective is to instantiate rather than sim ulate life, then care must be taken in transferring ideas from natural to artificial life forms. Preconceptions derived from experience with natural life may be inappropriate in the context of the artificial medium. Getting it right is an art, which likely will take some skill and practice to develop. However, respecting the medium is only one approach, which I happen to favor. I do not wish to imply that it is the only valid approach. It is too early to know which approach will generate the best results, and I hope that other approaches will be developed as well. I have attempted to articulate clearly this "natural" approach to synthetic life, so that those who choose to follow it may achieve greater consistency in design through a deeper understanding of the method.
Understanding Evolvability Attempts are now underway to inoculate evolution into many artificial systems, with mixed results. Some genetic lan guages evolve readily, while others do not. We do not yet know why, and this is a fundamental and critically important issue. What are the elements of evolvability? Efforts are needed to directly address this issue. One approach that would likely be rewarding would be to systematically identify features of a class of languages (such as machine languages), and one by one, vary each feature, to determine how evolvability is affected by the state of each feature.
Creating Organized Sexuality Organized sexuality is important to the evolutionary process. It is the basis of the species concept, and while remain ing something of an enigma in evolutionary theory, clearly is an important facilitator of the evolutionary process. Yet this kind of sexuality still has not been implemented in a natural way in synthetic life systems. It is important to find ways of orchestrating organized sexuality in synthetic systems such as digital organisms, in a way in which it is not mandatory, and in which the organisms must carry out the process through their own actions.
Creating Multi-cellularity In organic life, the transition from single to multi-celled forms unleashed a phenomenal explosion of diversity and com plexity. It would seem then that the transition to multi-cellular forms could generate analogous diversity and complexity in synthetic systems. In the case of digital organisms, it would also lead to the evolution of parallel processes, which could provide us with new para igms for the design of parallel software. The creation of multi-celled digital organisms remains an important challenge.
70
C o n t r o l l i n g E v o l u t i o n Humans have been controlling the evolution of other species for tens of thousands of years. This has formed the basis of agricul ture, through the domestication of plants and animals. The fields of genetic algorithms [33, 37], and genetic programming [45] are based on controlling the evolution of computer programs. However, we still have very little experience with controlling the evolution of self-replicating computer programs, which is more difficult. In addition, breeding complex parallel programs is likely to bring new challenges. Developing technologies for managing the evolution of complex software will be critical for harnessing the full potential of evolution for the creation of useful software.
Living T o g e t h e r If we succeed in harnessing the power of evolution to create complex synthetic organisms capable of sophisticated information processing and behavior, we will be faced with the problems of how to live harmoniously with them. Given evolution's selfish nature and capability to improve perfor mance, there exists the potential for a conflict arising through a struggle for dominance between organic and synthetic organisms. It will be a challenge to even agree on what the most desirable outcome should be, and harder still to accomplish it. In the end the outcome is likely to emerge from the bottom up through the interactions of the players, rather than being decided through rational deliberations.
6 6.1
Network Initiative T h e Possibility
The process of evolution by natural selection is able to create complex and beautiful information processing systems (such as primate nervous systems) without the guidance of an intelligent supervisor. Yet intelligent programmers have not been able to produce software systems that match even the full capa bilities of insects. Recent experiments demonstrate that evolution by natural selection is able to operate effectively in genetic languages based on the ma chine codes of digital computers [68, 71, 74]. This opens up the possibility of using evolution to generate complex software. Ideally we would like to generate software that utilizes the full capability of our most advanced hardware, particularly massively parallel and networked
71
computational systems. Yet it remains an open question if evolution has the ability to achieve such complexity in the computational medium, and if it does, how that goal can be achieved. Successful efforts at the evolution of machine codes have generally worked with programs of under a hundred bytes. How can we provoke evolution to transform such simple algorithms into software of vast complexity?
Perhaps we can gain some clues to solving this problem by studying the comparable evolutionary transformation in organic life forms. Life appeared on Earth roughly 3.5 thousand million years ago, but remained in the form of single celled organisms until about 600 million years ago. At that point in time, life made an abrupt transformation from simple microscopic single celled forms lacking nervous systems, to large and complex multi-celled forms with nervous systems capable of coordinating sophisticated behavior. This transformation occurred so abruptly, that evolutionary biologists refer to it as the "Cambrian explosion of diversity."
It is heartening to observe that once conditions are right, evolution can achieve extremely rapid increases in complexity and diversity, generating so phisticated information processing systems where previously none existed. How ever, our problem is to engineer the proper conditions for digital organisms in order to place them on the threshold of a digital version of the Cambrian explosion. Otherwise we might have to wait millions of years to achieve our goal. Ray [75] has reviewed the biological issues surrounding the evolution of diversity and complexity, and they lead to the following conclusions:
Evolution of complexity occurs in the context of an ecological community of interacting evolving species. Such communities need large complex spaces to exist. A large and complex environment consisting of partially isolated habitats differing and occasionally changing in environmental conditions would be the most conducive to a rapid increase in diversity and complexity. These are the considerations that lead to the suggestion of the creation of a large and complex ecological reserve for digital organisms. Due to its size, topological complexity, and dynamically changing form and conditions, the global network of computers appears to be an ideal habitat for the evolution of complex digital organisms.
72
6.2
A Better Medium
Natural evolution in the digital medium is a new technology, about which we know very little. The hope is to evolve software with sophisticated functionality far beyond anything that has been designed by humans. But how long might this take? Evolution in the organic medium is known to be a slow process. Certainly there remains the possibility that evolution in the digital medium will be too slow to be a practical tool for software generation, but several observations can be made that provide encouragement. First, computational processes occur at electronic speeds, and are in fact relatively fast. Second, as was noted above, during the Cambrian, evolution produced such a rapid inflation of complexity and diversity, that it has come to be known as an "explosion". The bulk of the complexity of living systems on Earth appeared suddenly at the time of the Cambrian explosion. If complexity had developed gradually, at a steady pace through the history of life, then it would probably be hopeless to attempt to use evolution as a methodology for generating complexity. However, if the Cambrian explosion phenomenon is a general property of evolving systems, then it may be practical to use evolution to generate complexity in evolving digital systems. A third point remains to be made. Let us consider a thought experiment. Imagine that we are robots. We are made out of metal, and our brains are composed of large scale integrated circuits made of silicon or some other semi conductor. Imagine further, that we have no experience of carbon based life. We have never seen it, never heard of it, nor ever contemplated it. Now suppose a robot enters the scene with a flask containing methane, ammonia, hydrogen, water and a few dissolved minerals. This robot asks our academic gathering: "Do you suppose we could build a computer out of this material. The theoreticians in the group would surely say yes, and propose some approaches to the problem. But the engineers in the group would say: "Why bother when silicon is so much better suited to information processing than carbon." From our organo-centric perspective the robot engineers might seem naive, but in fact I think they are correct. Carbon chemistry is a lousy medium for information processing. Yet the evolutionary process embodies such a powerful drive to generate information processing systems, that it was able to rig up carbon based contraptions for processing information, capable of generating the beauty and complexity of the human mind. W h a t might such a powerful force for information processing do in a medium designed for that purpose in
73
the first place? It is likely to arrive more quickly at sophisticated information processes than evolution in carbon chemistry, and would likely achieve compa rable functionality with a greater economy of form and process. Evolution is a process that explores the possibilities inherent in the medium.
6.3
How
The Tierra system creates a virtual computer (a software emulation of a com puter that has not been built in hardware) whose architecture, instruction set, and operating system have been designed to support the evolution of the ma chine code programs that execute on that virtual machine. A network version of the Tierra system is under development that will allow the passage of mes sages between Tierra systems installed on different machines connected to the network, via "sockets". The instruction sets of the Tierran virtual computers will have some new instructions added that allow the digital organisms to communicate between themselves, both within a single installation of Tierra, and over the net between two or more installations. The digital organisms will be able to pass messages consisting of bit strings, and will also be able to send their genomes (their executable code) over the network between installations of Tierra. The network installation of Tierra will create a virtual sub-network within which digital organisms will be able to move and communicate freely. This network will have a complex topology of interconnections, reflecting the topol ogy of the internet within which it is embedded. In addition, there will be complex patterns of "energy availability" (availability of CPU cycles) due to the Tierra installations being run as low priority background processes and the heterogeneous nature of the real hardware connected to the net. A miniature version of this concept has already been implemented in the form of a CM5 version of Tierra, has been used to simulate the network version [87]. Consider that each node on the net tends to experience a daily cycle of activity, reflecting the habits of the user who works at that node. The avail ability of CPU time to the Tierra process will mirror the activity of the user, as Tierra will get only the cycles not required by the user for other processes. Statistically, there will tend to be more "energy" available for the digital or ganisms at night, when the users are sleeping. However, this will depend a great deal on the habits of the individual users and will vary from day to day.
74
There will be strong selective pressures for digital organisms to maintain themselves on nodes with a high availability of energy. This might involve daily migrations around the planet, keeping on the dark side. However, selection would also favor the evolution of some direct sensory capabilities in order to respond to local deviations from the expected patterns. When rich energy resources are detected on a local sub-net, it may be advantageous to disperse locally within the sub-net, rather than to disperse long distances. Thus there is likely to be selection to control the ''directionality' 1 and distances of movement within the net. All of these conditions should encourage the evolution of "sensory" capa bilities to detect energy conditions and spatial structure on the net, and also evolution of the ability to detect temporal and spatial patterns in these same features. In addition to the ability to detect these patterns, the digital organ isms need the ability to coordinate their actions and movements in response to changing conditions. In short, the digital organisms must be able to intelli gently navigate the net in response to the dynamically changing circumstances. In addition to responding to conditions on the net itself, digital organisms evolving in this environment will have to deal with the presence of other organ isms. If one node stood out above all the rest, as the most energy rich node, it would not be appropriate for all organisms to attempt to migrate to that node. They wouldn't all fit, and if they could they would have to divide the CPU resource too thinly. Thus there will be selection for social behavior, flock ing or anti-flocking behavior. The organisms must find a way of distributing themselves on the net in a way that makes good use of the CPU resources. A primary obstacle to the evolution of complexity in the Tierra system has been that in the relatively simple single node installation, a very simple twenty to sixty byte algorithm that quickly and efficiently copies itself can not be beat by a much more complex algorithm, which due to its greater size would take much longer to replicate. There is just no need to do anything more complicated than copy yourself quickly. However, the heterogeneous and changing patterns of energy availability and network topology of the network version will reward more complex behavior. It is hoped that this will launch evolution in the direction of more complexity. Once this trajectory has begun, the interactions among the increasingly sophisticated organisms themselves should lead to further complexity increases. Already on the single node installation, most of the evolution that, has been described has involved the adaptation of organisms to other organisms in the environment (parasitism, so£^bfikftY£'(fh/F£ife}jsfit is this kind of dynamics that
75
can lead to an auto-catalytic increase in complexity and diversity in an evolving ecological system. The complexity of the physical system in which evolution is embedded does not have to lead the complexity of the living system. For example, in tropical rain forests on white sand soils, the physical envi ronment consists of clean white sand, air, falling water, and sunlight. Embed ded in this physical environment is the most complex living system on Earth: the tropical rain forest, consisting of hundreds of thousands of species. These species do not represent hundreds of thousands of adaptations to clean white sand, air, falling water, and sunlight. Rather, they represent numerous adapta tions to other organisms. The living organisms create their own environment, and then evolution produces adaptations to other living organisms. If you go into the forest, what you see are living organisms (mostly trees), not sand, air water and sunshine. It is imagined that individual digital organisms will be multi-celled, and that the cells that constitute an individual might be dispersed over the net. The remote cells might play a sensory function, relaying information about energy levels around the net back to some "central nervous system11 where the incoming sensory information can be processed and decisions made on appropriate actions. If there are some massively parallel machines participating in the virtual net, digital organisms may choose to deploy their central nervous systems on these arrays of tightly coupled processors.
6.4
"Managing" Evolution
Humans have been managing the evolution of other species for tens of thou sands of years, through the domestication of plants and animals. It forms the basis of the agriculture which underpins our civilizations. We manage evolution through "breeding", the application of artificial selection to captive populations. Similar approaches have been developed for working with evolution in the digital domain. It forms the basis of the fields of "genetic algorithms" and "genetic programming". However, because digital evolution has not yet passed through its version of the Cambrian explosion, there exists the possibility to use a radically different approach to "managing" digital evolution. Some questions frequently asked about software evolution are: How can we guide evolution to produce useful application software? How can we validate
76 the code produced by evolution to be sure that it performs the application correctly? These questions reveal a limited view of how software evolution can be used, and what it can be used for. I will articulate a fairly radical view here. Computer magazines bemoan the search for the "next killer application ", some category of software that everybody will want, but which nobody has thought of yet. The markets for the existing major applications (word processors, spread sheets, data bases, etc.) are already saturated. Growth of the software industry depends on inventing completely new applications. This implies that there are categories of software that everyone will want but which haven't been invented yet. We need not only attempt to use evolution to produce superior versions of existing applications. Rather we should allow evolution to find the new applications for us. To see this process more clearly, consider how we manage applications through organic evolution. Some of the applications provided by organic evolution are: rice, corn, wheat, carrots, beef cattle, dairy cattle, pigs, chickens, dogs, cats, guppies, cotton, mahogany, tobacco, mink, sheep, silk moths, yeast, and penicillin mold. If we had never encountered any one of these organisms, we would never have thought of them either. We have made them into applications because we recognized the potential in some organism that was spontaneously generated within an ecosystem of organisms evolving freely by natural selection. Many different kinds of things occur within evolution. Breeding relates to evolution within the species: producing new and different, possibly "better' 1 forms of existing species. However, evolution is also capable of generating species. Even more significantly, evolution is capable of causing an explosive increase in the complexity of replicators, through many orders of magnitude of complexity. The Cambrian explosion may have generated a complexity increase of eight orders of magnitude in a span of three million years. Harnessing these enormously more creative properties of evolution requires a completely different approach. We know how to apply artificial selection to convert poor quality wild corn into high-yield corn. However we do not know how to breed algae into corn. There are two bases to this inability: 1) if all we know is algae, we could not envision corn. 2) even if we know all about corn, we do not know how to guide the evolution of algae along the route to corn. Our experience with managing evolution consists of guiding evolution of species through variations on existing themes. It does not consist of managing the generation of the themes themselves.
77
As a thought experiment, imagine being present in the moments before the Cambrian explosion on Earth, and that your only experience with life was familiarity with bacteria, algae, protozoa and viruses. If you had no prior knowledge, you could not envision the mahogany trees and giraffes that were to come. We couldn't even imagine what the possibilities are, much less know how to reach those possibilities if we could conceive of them. Imagine for a moment that a team of Earth biologists had arrived at a planet at the moment of the initiation of its Cambrian explosion of diversity. Suppose that these biologists came with a list of the useful organisms (rice, corn, pigs, etc.), and a complete description of each. Could those biologists intervene in the evolutionary process to hasten the production of any of those organisms from their single celled ancestors? Not only is that unlikely, but any a t t e m p t s to intervene in the process are likely to inhibit the diversification and increase in complexity itself. If the silk moth never existed, but we somehow came up with a complete description of silk, it would be futile to attempt the guide the evolution of any existing creature to produce silk. It is much more productive to survey the bounty of organisms already generated by evolution with an eye to spotting new applications for existing organisms. Evolution would not be an appropriate technique for generating account ing software, or any software where precise and accurate computations are required. Evolution would be more appropriate for more fuzzy problems like pattern recognition. For example, if you get a puppy that you want to raise to be a guard dog, you can't verify the neural circuitry or the genetic code, but you can tell if it learns to bark at strangers and is friendly to your family and friends. This is the type of application that evolution can deliver. We don't need to verify the code, but verification of the performance should be straightforward.
6.5
Harvest Time
T h e strategy being advocated in this proposal is to let natural selection do most of the work of directing evolution and producing complex software. This software will be "wild", living free in the digital biodiversity reserve. In order to reap the rewards, and create useful applications, we will need to domesticate some of the wild digital organisms, much as our ancestors began domesticating the ancestors of dogs
78
The process must begin with observation. Digital naturalists must explore the digital jungle, observing and publishing on the natural history, ecology, evolution, behavior, physiology, morphology, and other aspects of the biology of the life forms of the digital ecosystem. Much of this work will be academic, like the work of modern day tropical biologists exploring our organic jungles (which I have been doing for twenty years). However, occasionally, these digital biologists will spot an interesting in formation process for which they see an application. At this point, some in dividuals will be captured and brought, into laboratories for closer study, and farms for breeding. Sometimes, breeding may be used in combination with genetic engineering (insertion of hand written code, or code transferred from other digital organisms). The objective will be to enhance the performance of the process for which there is an application, while diminishing unruly wild behavior. Some digital organisms will domesticate better than others, as is true for organic organisms (alligators don't domesticate, yet we can still ranch them for their hides). Once a digital organism has been bred a n d / o r genetically engineered to the point that it is ready to function as an application for end users, they will probably need to be neutered to prevent them from proliferating inappropri ately. Also, they will be used in environments free from the mutations that will be imposed on the code living in the reserve. By controlling reproduction and preventing mutation, their evolution will be prevented at the site of the end user. Also the non-replicating interpreted virtual code, might be translated into code that could execute directly on host machines in order to speed their operation. The organisms living in the biodiversity reserve will essentially be in the public domain. Anyone willing to make the effort can observe them and at tempt to domesticate them. However the process of observation, domestication and genetic engineering of digital organisms will require the development of much new technology. This is where private enterprise can get involved. The captured, domesticated, engineered and neutered software that is delivered to the end user will be a salable product, with the profits going to the enterprise that made the efforts to bring the software from the digital reserve to the market. It seems obvious that organisms evolving in the network-based biodiver sity reserve will develop adaptations for effective navigation of the net. This suggests that the most obvious realm of application for these organisms would be as autonomous network agents It would be much less likely that this kind
79 of evolution could generate software for control of robots, or voice or image recognition, since network based organisms would not normally be exposed to the relevant information flows. Yet at this point we surely can not conceive of where evolution in the digital domain will lead, so we must remain obser vant, imaginative in our interpretations of their capabilities, and open to new application possibilities.
6.6
Commitment
Those who wish to support the digital biodiversity reserve by contributing spare CPU cycles should be prepared to make a long-term commitment. No body knows how long it will take for complex software to evolve in the reserve. However, a few years will likely be enough time to shake down the system and get a sense of the possibilities. If the desired complexity does begin to evolve, then the reserve should become a permanent fixture within the net. A long-term commitment does not mean that the Tierra process must run uninterrupted. It is ok for the Tierra process to be taken up and down on any node, for whatever reason (the Tierran creatures will experience down time as a local catastrophe). However, the commitment suggests that an attempt would be made to keep the Tierra process running on a node most of the time for a very prolonged period of time. The same problems are faced in the creation of reserves for organic biodi versity. Great effort and financial resources are required just to establish the reserves. However, that is only the first step. The objective of the reserves is to limit the extent to which human activity causes the extinction of other species. The survival or extinction of organic species is a process that is played out over vast expanses of time: thousands or millions of years. This means that if our rain forest reserves should be converted into pastures or housing developments five thousand years from now, they will have failed. The organic rainforest conservation proposal [76] is focused on the sustainability issue. The present strategy is to insure the long term survival of the nature reserves by finding ways for the surrounding human populations to de rive an economic benefit from the presence of the reserves. In Costa Rica, at present, this can most easily be done through nature tourism. In the future other economic activities may be more appropriate, or per.haps some centuries or millennia in the future, humans will be willing to protect other species without the motivation of self-interest.
80
Similar concerns apply to the sustainability of the digital reserve. If the Tierra process provides no reward to those who run it on their nodes, they are likely to terminate the process within a few days, weeks, or months. Such a short participation would be meaningless. As an initial hedge against this problem, a tool will be distributed to allow anyone to observe activity at any participating node, from any node. Yet even this may not be enough, as such tools don't tell a lot about what is going on. To really know the interesting details requires greater effort than most contributors of CPU cycles will have time for. An even more serious problem is that experience with operation of the system will certainly lead to redesign requiring reinstallation. The ideal, situ ation would be to have the reinstallation done by the same people who do the redesign. However, this would be likely to require that the designers of the reserve actually have accounts on the participating nodes. Where the design ers don't have accounts, the contributors would have to do the reinstallation themselves, and they would likely tire of the chore. The willingness of people to support the reserve for the long term is likely to depend initially on the level of faith that people put in the evolutionary process as a potential generator of rewarding digital processes. Eventually, if all goes well, the harvest of some complex and beautiful digital organisms will provide rewards beyond our imaginations, and should replace faith with solid proof and practice.
6.7
Containment
The Tierra system is a containment facility for digital organisms. Because Tierra implements a virtual computer, one that has never been implemented in hardware, the digital organisms can only execute on the virtual machine. On any real machine, Tierran organisms are nothing but data. They are no more likely to be functional on a real computer than a program that is executable on a Mac is likely to run on an IBM PC, or that the data in a spread sheet is likely to replicate itself by executing on a machine. Similarly, the network version of Tierra will create a virtual sub-net, within which the digital organisms will be able to move freely. However, the Tierran digital organisms will not access the real net directly. All communication between nodes will be mediated by the simulation software which does not evolve.
81
results in communication across the net, that instruction will be interpreted by the simulation software running on the real machine. The simulation soft ware will pass the appropriate information to a Tierra installation on another machine, through established socket based communication channels. These socket communication channels will only exist between Tierra installations at participating nodes. The digital organisms will not be able to sense the pres ence of real machines or the real net, nor will they have any way of accessing them. To further understand the nature of the system, consider a comparison between the Tierra program and the mail program. The mail program is installed at every node on the net and can send data to any other node on the net. The d a t a passing between mail programs is generated by processes that are completely out of control: humans. Humans are beyond control, and sometimes actually malicious, yet the messages that they send through the mail program do not cause problems on the net because they are just data. The same is true of the Tierra program. While the processes that generate the messages passing between Tierra installations are wild digital organisms, the messages are harmless d a t a as they pass through the net. The Tierra program that passes the messages does not evolve, and is as well behaved as the mail program. A related issue is network load. We do not yet know the level of traffic that would be generated by networked installations of Tierra communicating in the manner described. We will place hard limits on the volume of communication allowed to individual digital organisms in order to prevent mutants from spew ing to the net. As we start experimenting with the system, we will monitor the traffic levels to determine if it would have a significant impact on network loads. If the loads are significant, additional measures will need to be taken to limit them. This can be done by charging the organisms for their network access so t h a t they will evolve to minimize their access. To insure that the experiment is safe, Sun Microsystems has hired an inde pendent security expert, Tsutomu Shimomura (who achieved fame in Feb. '95 by tracking down and capturing the notorious hacker Kevin Mitnick) to do a security review of the project. A p p e n d i x A: G e t t i n g t h e Tierra S y s t e m The complete source code and documentation (but not executables) is avail able by anonymous ftp
82
t i e r r a . s l h s . u d e l . e d u [128.175.41.34] the f i l e : t i e r r a / t i e r r a . t a r . Z To get it, ftp to tierra or life, log in as user "anonymous" and give your email address (eg.
[email protected]) as a password. Change to the tierra directory and get tierra.tar.Z, a compressed tar file. Be sure to transfer in binary mode. It will expand into the complete directory structure with the following commands (Unix only):
uncompress t i e r r a . t a r . Z t a r oxvf t i e r r a . t a r The source code compiles and runs on either DOS or UNIX systems (and some others). If you do not have ftp access, the complete UNIX/DOS system is also available on DOS disks with an easy installation program. For the disk set, contact the author. Appendix B: The Tierra C P U Structure definition to implement the Tierra virtual CPU. The complete source code for the Tierra Simulator can be obtained by contacting the author by email.
s t r u c t cpu { / * s t r u c t u r e f o r r e g i s t e r s of v i r t u a l cpu */ int ax; / * address r e g i s t e r */ int bx; / * address r e g i s t e r */ int ex; / * numerical r e g i s t e r */ int dx; / * numerical r e g i s t e r */ char f l ; / * f l a g */ char sp; / * s t a c k p o i n t e r */ int s t [ l O ] ; / * s t a c k */ int i p ; / * i n s t r u c t i o n p o i n t e r */ >
;
A p p e n d i x C: T h e T i e r r a C e n t r a l Loop Abbreviated code for implementing the CPU cycle of the Tierra Simulator.
83
int main() { GetSoup () ; life() ; WriteSoup() ; }
void life() 1* doles out time slices and death { while(Generations < alive) { (*slicer) o: ReapCheck () ;
*1
} }
void TimeSlice(ce, size_slice) Pcells ce; l32s size_slice; { l1Bs di; 1* decoded instruction
*1
ce->c.ib += size_slice; for(is.ts = ce->c.ib; is.ts > 0; ) di = FetchDecode(ce); { (*id[di] .execute)(ce); lncrementlp(ce); SystemWork(ce) ; ce->c.ib -= is.dib; is.ts = is.dib; } }
Appendix D: Ancestor Source Code Assembler source code for the ancestral creature.
genotype: 80 aaa or1g1n: 1-1-1990 parent genotype: human 1st_daughter: flags: 0 inst: 839 2nd_daughter: flags: 0 inst: 813 nop1 nop1 nop1 nop1
01 01 01 01
0 1 2 3
beginning beginning beginning beginning
template template template template
00:00:00:00
ancestor
mov_daught: 80 mov_daught: 80
84 zero notO shl shl
; ; ; ;
04 02 03 03
4 5 6 7
moved
18
8
adrb nopO nopO nopO nopO
lc 00 00 00 00
9 10 11 12 13
sub ac
07
14
movab
19
15
adrf nopO nopO nopO nopl
Id 00 00 00 01
16 17 18 19 20
inc_a sub_ab
08 06
21 22
nopl nopl nopO nopl mal
01 01 00 01 le
23 24 25 26 27
call nopO
; 16 ; 00
28 29
put zero in ex put 1 in first bit of ex shift left ex shift left ex, now ex = 4 ax = bx = ex = template size dx = move template size to dx ax = bx = ex = template size dx = template size get (backward) address of beginning template compliment to beginning template compliment to beginning template compliment to beginning template compliment to beginning template ax = start of mother + 4 bx = ex = template size dx = template size subtract ex from ax ax = start of mother bx = ex = template size dx = template size move start address to bx ax = start of mother bx = start of mother ex = template size dx = template size get (forward) address of end template compliment to end template compliment to end template compliment to end template compliment to end template ax = end of mother bx = start of mother ex = template size dx = template size to include dummy statement to separate creatures subtract start address from end address to get size ax = end of mother bx = start of mother ex = size of mother dx = template size reproduction loop template reproduction loop template reproduction loop template reproduction loop template allocate memory for daughter cell, address to ax ax = start of daughter bx = start of mother ex = size of mother dx = template size call template below (copy procedure) copy procedure compliment
85 nopO nopl nopl divide
TO nopO nopO nopl nopO ifz nopl nopl nopO nopO pushax pushbx pushcx nopl nopO nopl nopO movii dec_c ifz jmp nopO nopl nopO nopO inc_a inc_b jmp nopO nopl nopO nopl ifz nopl nopO nopl nopl
; ; ; ; ; ; ; ; ; ;
00 01 01 if 14 00 00 01 00 05
30 31 32 33 34 35 36 37 38 39
; oi 40 ; oi 41 ; ; ; ; ; ; ; ; ; ; ; ;
,
; ; ; ; ; ; ; , ;
00 00 0c Od Oe oi 00 oi 00 la Oa 05 14 00 01 00 00 08 09 14 00 01 00 01 05 01 00 01 01
42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
copy procedure compliment copy procedure compliment copy procedure compliment create independent daughter cell jump to template below (reproduction loop, above) reproduction loop compliment reproduction loop compliment reproduction loop compliment reproduction loop compliment this is a dummy instruction to separate templates begin copy procedure copy procedure template copy procedure template copy procedure template copy procedure template push ax onto stack push bx onto stack push ex onto stack copy loop template copy loop template copy loop template copy loop template move contents of [bx] to [ax] decrement ex if ex == 0 perform next instruction, otherwise skip it jump to template below (copy procedure exit) copy procedure exit compliment copy procedure exit compliment copy procedure exit compliment copy procedure exit compliment increment ax increment bx jump to template below (copy loop) copy loop compliment copy loop compliment copy loop compliment copy loop compliment this is a dummy instruction, to separate templates copy procedure exit template copy procedure exit template copy procedure exit template copy procedure exit template
86 popcx popbx popax ret nopl nopl nopl nopO ifz
12 11 10 17 01 01 01 , 00 05
71 72 73 74 75 76 77 78 79
pop ex off stack pop bx off stack pop ax off stack return from copy procedure end template end template end template end template dummy statement to separate creatures
Appendix E: Smallest Replicator Source Code Assembler source code for the smallest self-replicating creature. genotype: 0022abn parent genotype: 0022aak lst_daughter: flags: 1 inst: 146 mov_daught: 22 breed_true: 1 2nd_daughter: flags: 0 inst: 142 mov_daught: 22 breed_true: 1 InstExecC: 437 InstExec: 625954 origin: 662865379 MaxPropPop: 0.1231 MaxPropInst: 0.0568 Wed Jan 2 20:16:19 1991 nopO adrb nopl divide sub_ac movab adrf nopO inc_a sub_ab mal pushbx nopO movii dec_c ifz ret inc_a inc_b jmpb nopl
00 lc 1 find beginning 01 2 3 fails the first time it is executed If 4 07 5 19 Id 6 find end 00 7 08 8 to include final dummy statement 06 9 calculate size le 10 Od 11 save beginning address on stack in order to 'return' there 00 12 top of copy loop la 13 0a 14 05 15 17 16 jump to beginning, address saved on stack 08 17 09 18 15 19 bottom of copy loop (6 instructions executed per loop) ; 01 20
87 la
movn
21 dummy statement to terminate template
A p p e n d i x F: Source Code of Complex Loop Assembler code for the central copy loop of the ancestor of instruction set one (80aaa) and a descendant after fifteen billion instructions (72etq). Within the loop, the ancestor does each of the following operations once: copy instruc tion (51), decrement CX (52), increment AX (59) and increment BX (60). The descendant performs each of the following operations three times within the loop: copy instruction (15, 22, 26), increment AX (20, 24, 31) and increment BX (21, 25, 32). The decrement CX operation occurs five times within the loop (16, 17, 19, 23, 27). Instruction 28 flips the low order bit of the CX register. Whenever this latter instruction is reached, the value of the low order bit is one, so this amounts to a sixth instance of decrement CX. This means that there are two decrements for every increment. The reason for this is related to another adaptation of this creature. When it calculates its size, it shifts left (12) before allocating space for the daughter (13). This has the effect of allo cating twice as much space as is actually needed to accommodate the genome. The genome of the creature is 36 instructions long, but it allocates a space of 72 instructions. This occurred in an environment where the CPU time slice size was set equal to the size of the cell. In this way the creatures were able to garner twice as much energy. However, they had to compliment this change by doubling the number of decrements in the loop.
nopl nopO nopl nopO movii dec_c ifz jmp nopO nopl nopO nopO inc_a inc_b jmp nopO nopl
; ; ; ; ; ;
, i , ; ; ; ; ;
oi 00 oi 00 la 0a 05 14 00 01 00 00 08 09 14 00 01
47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
copy l o o p t e m p l a t e COPY LOOP OF 80AAA copy loop t e m p l a t e copy loop t e m p l a t e copy loop t e m p l a t e move c o n t e n t s of [BX] t o [AX] (copy i n s t r u c t i o n ) decrement CX i f CX = 0 perform next i n s t r u c t i o n , o t h e r w i s e s k i p i t jump t o t e m p l a t e below (copy procedure e x i t ) copy p r o c e d u r e e x i t compliment copy p r o c e d u r e e x i t compliment copy p r o c e d u r e e x i t compliment copy p r o c e d u r e e x i t compliment increment AX ( p o i n t t o next i n s t r u c t i o n of d a u g h t e r ) increment BX ( p o i n t t o next i n s t r u c t i o n of mother) jump t o t e m p l a t e below (copy loop) copy loop compliment copy loop compliment
88 nopO nopl
shl mal nopO movii dec_c dec_c jmpb dec_c inc_a inc_b movii dec_c inc_a inc_b movii dec_c notO ifz ret inc_a inc_b jmpb nopl
, 00 01
03 le 00 la Oa Oa 15 Oa 08 09 la Oa 08 09 la Oa 02 05 17 08 09 15 01
64 copy loop compliment 65 copy loop compliment (10 instructions executed per loop)
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
shift left CX COPY LOOP OF 72ETQ allocate daughter cell top of loop copy instruction decrement CX decrement CX junk decrement CX increment AX increment BX copy instruction decrement CX increment AX increment BX copy instruction decrement CX flip low order bit of CX, equivalent to dec_c if CX == 0 do next instruction exit loop increment AX increment BX go to top of loop (6 instructions per copy) bottom of loop (18 instructions executed per loop)
Appendix G: Definition of Four Instruction Sets G.l Instruction Set # 1 The original instruction set, designed and implemented by Tom Ray. This instruction set was literally designed only to run a single program, the original 80 instruction "ancestor". As a consequence of this narrow design criteria, this instruction set has several obvious deficiencies: There is no method of moving information between the CPU registers and the RAM memory (soup). There is no mechanism for input/output. Only two inter-register moves are available, although this limitation can be overcome by using the stack to move data between registers (as is done in instruction set 4). There are no options for the control of the positioning in memory of the daughter cells (only the "first fit"
89 technique is used). There are no facilities to support multi-cellularity. These deficiencies were addressed in the creation of instruction sets two through four.
No Operations: 2 nopO nopl Memory Movement: 11 pushax pushbx pushcx pushdx popax popbx popcx popdx moved movab movii
(push AX onto stack) (push BX onto stack) (push CX onto stack) (push DX onto stack) (pop from stack into AX) (pop from stack into BX) (pop from stack into CX) (pop from stack into DX) (DX = CX) (BX = AX) (move from ram [BX] to ram [AX])
Calculation: 9 sub_ab sub.ac inc_a inc_b inc_c dec_c zero notO shl
(CX = AX - BX) (AX = AX - CX) (increment AX) (increment BX) (increment CX) (decrement CX) (zero CX) (flip low order bit of CX) (shift left all bits of CX)
Instruction Pointer Manipulation: 5 ifz jmp jmpb call ret
(if CX == 0 execute next instruction, otherwise, skip it) (jump to template) (jump backwards to template) (push IP onto the stack, jump to template) (p°P "the stack into the IP)
90 Biological and Sensory: 5 adr adrb adrf mal divide
(search outward (search backward (search forward (allocate amount (cell division)
for template, put address in AX, template size in CX) for template, put address in AX, template size in CX) for template, put address in AX, template size in CX) of space specified in CX)
Total: 32
G.2 Instruction Set # 2 Based on a design suggested by Kurt Thearling of Thinking Machines, and implemented by Tom Ray. The novel feature of this instruction set is the ability to reorder the relative positions of the registers, using the A X , BX, C X and DX instructions. There are in essence, two sets of registers, the first set contains the values that the instruction set operates on, the second set points to the first set, in order to determine which registers any operation will act on. Let the four registers containing values be called AX, BX, CX and DX. Let the four registers pointing to these registers be called RO, Rl, R2 and R3. When a virtual cpu is initialized, RO points to AX, Rl to BX, R2 to CX and R3 to DX. The instruction add does the following: (R2 = Rl + RO). Therefore CX = BX + AX. However, if we execute the D X instruction, the RO points to DX, Rl to AX, R2 to BX and R3 to CX. Now if we execute the add instruction, we will perform: BX = AX + DX. If we execute the DX instruction again, RO points to DX, Rl to DX, R2 to AX, and R3 to BX. Now the add instruction would perform: AX = DX + DX. Now the registers can be returned to their original configuration by executing the following three instructions in order: CX, BX, AX.
No Operations: 2 nopO nopl Memory Movement: 12
91 AX BX CX DX movdd movdi movid movii push pop put
get
(make AX RO, Rl RO, R2 = Rl, R3 = R2, R3 is lost) (make BX RO, Rl RO, R2 = Rl, R3 = R2, R3 is lost) (make CX RO, Rl RO, R2 = Rl, R3 = R2, R3 is lost) (make DX RO, Rl RO, R2 = Rl, R3 = R2, R3 is lost) (move Rl to RO) (move from Rl to ram [RO]) (move from ram [Rl] to RO) (move from ram [Rl] to ram [RO]) (push RO onto stack) (pop from stack into RO) (write RO to output buffer, three modes: #ifndef ICC: write RO to own output buffer #ifdef ICC: write RO to input buffer of cell at address Rl, or, if template, write RO to input buffers of all creatures within PutLimit who have the complementary get template) (read RO from input port)
Calculation: 8 inc dec add sub zero notO shl not
(increment RO) (decrement RO) (R2 = Rl + RO) (R2 = Rl - RO) (zero RO) (flip low order bit of RO) (shift left all bits of RO) (flip all bits of RO)
Instruction Pointer Manipulation: 5 ifz iffl jmp jmpb call
(if Rl == 0 execute next instruction, otherwise, skip it) (if flag == 1 execute next instruction, otherwise, skip it) (jump to template, or if no template jump to address in RO) (jump back to template, or if no template jump back to address in RO) (push IP + 1 onto the stack; if template, jump to complementary tempi)
Biological and Sensory: 5 adr
(search size in adrb (search size in
outward for template, put address in RO, template Rl, and offset in R2, start search at offset +- RO) backward for template, put address in RO, template Rl, and offset in R2, start search at offset - RO)
92 adrf (search forward for template, put address in RO, template size in Rl, and offset in R2, start search at offset + RO) mal (allocate amount of space specified in RO, prefer address at Rl, if Rl < 0 use best fit, place address of allocated block in RO) divide (cell division, the IP is offset by RO into the daughter cell, the values in the four CPU registers are transferred from mother to daughter, but not the stack. If !R1, eject genome from soup) Total: 32
G.3 Instruction Set # 3 Based on a design suggested and implemented by Tom Ray. This includes certain features of the RPN Hewlett-Packard calculator. No Operations: 2 nopO nopl Memory Movement: 11 rollu rolld enter exch movdi movid movii push pop put
get
roll registers up: AX = DX, BX = AX, CX = BX, DX = CX) roll registers down: AX = BX, BX = CX, CX = DX, DX = AX) AX = AX, BX = AX, CX = BX, DX = CX, DX is lost) AX = BX, BX = AX) move from BX to ram [AX]) move from ram [BX] to AX) move from ram [BX] to ram [AX]) push AX onto stack) pop from stack into AX) write AX to output buffer, three modes: #ifndef ICC: write AX to own output buffer #ifdef ICC: write AX to input buffer of cell at address BX, or, if template, write AX to input buffers of all creatures within PutLimit who have the complementary get template) (read AX from input buffer)
Calculation: 9 inc
(increment AX)
93 dec add sub zero notO not shl rand
(decrement AX) (AX = BX + AX, BX = CX, CX = DX)) (AX = BX-AX, BX = CX, CX = DX)) (zero AX) (flip low order bit of AX) (flip all bits of AX) (shift left all bits of AX) (place random number in AX)
Instruction Pointer Manipulation: 5 ifz iffl jmp jmpb
(if AX == 0 execute next instruction, otherwise, skip it) (if flag == 1 execute next instruction, otherwise, skip it) (jump to template, or if no template jump to address in AX) (jump back to template, or if no template jump back to address in AX) call (push IP + 1 onto the stack; if template, jump to complementary tempi)
Biological and Sensory: 5 adr
(search outward for template, put address in AX, template size in BX, and offset in CX, start search at offset +- BX) adrb (search backward for template, put address in AX, template size in BX, and offset in CX, start search at offset - BX) adrf (search forward for template, put address in AX, template size in BX, and offset in CX, start search at offset + BX) mal (allocate amount of space specified in BX, prefer address at AX, if AX < 0 use best fit, place address of allocated block in AX) divide (cell division, the IP is offset by AX into the daughter cell, the values in the four CPU registers are transferred from mother to daughter, but not the stack. If !CX genome will be ejected from the simulator) Total: 32
G.4 Instruction Set # 4 Based on a design suggested by Walter Tackett of Hughes Aircraft, and implemented by Tom Ray. The special features of this instruction set are that all movement between registers of the cpu takes place via push and pop through the stack. Also, all indirect addressing involves an offset from the address in the CX register.
94 No Operations: 2 nopO nopl Memory Movement: 13 movdi movid movii pushax pushbx pushcx pushdx popax popbx popcx popdx put
get
move from BX to ram [AX + CX]) move from ram [BX + CX] to AX) move from ram [BX + CX] to ram [AX + CX]) push AX onto stack) push BX onto stack) push CX onto stack) push DX onto stack) pop from stack into AX) pop from stack into BX) pop from stack into CX) pop from stack into DX) write DX to output buffer, three modes: #ifndef ICC: write DX to own output buffer #ifdef ICC: write DX to input buffer of cell at address CX, or, if template, write DX to input buffers of all creatures within PutLimit who have the complementary get template) (read DX from input port)
Calculation: 7 inc dec add sub zero notO shl
(increment CX) (decrement CX) (CX = CX + DX) (CX = CX - DX) (zero CX) (flip low order bit of CX) (shift left all bits of CX)
Instruction Pointer Manipulation: 5 ifz iffl jmp jmpb
(if CX == 0 execute next instruction, otherwise, skip it) (if flag == 1 execute next instruction, otherwise, skip it) (jump to template, or if no template jump to address in AX) (jump back to template, or if no template jump back to address in AX) call (push IP + 1 onto the stack; if template, jump to complementary tempi)
95 Biological and Sensory: 5 adr
(search outward for template, put address in AX, template size in DX, and offset in CX, start search at offset +- CX) (search backward for template, put address in AX, template adrb size in DX, and offset in CX, start search at offset - CX) (search forward for template, put address in AX, template adrf size in DX, and offset in CX, start search at offset + CX) (allocate amount of space specified in CX, prefer address mal at AX, if AX < 0 use best fit, place address of allocated block in AX) divide (cell division, the IP is offset by CX into the daughter cell, the values in the four CPU registers are transferred from mother to daughter, but not the stack. If !DX genome will be ejected from the simulator) Total: 32
Appendix H: Source Code for Unrolled Loops This appendix contains the assembler source code for the 82 instruction ancestor written for instruction set four, and three descendant organisms that evolved from the ancestor. The three descendants are derived from different runs, and represent forms found after optimization was apparently complete in each run. The three evolved forms illustrate three levels of loop unrolling: 1) no unrolling, level 1, 2) unrolling to level 2, and 3) unrolling to level 3. GENOTYPE: 0082aaa comments: ancestor for instruction set 4
nopl nopl nopl nopl zero adrb nopO nopO nopO nopO pushax
; 01 0 1 01 2 01 3 01 4 , 13 5 , lc 6 ; 00 7 ; 00 8 ; 00 9 ; 00 ; 05 10
beginning marker beginning marker beginning marker beginning marker CX = 0, offset for search find start, AX = start + 4 , DX = tempi size complement to beginning marker complement to beginning marker complement to beginning marker complement to beginning marker push start + 4 on stack
96 popcx sub pushcx zero adrf nopO nopO nopO nopl pushax popcx inc popdx sub nopl nopl nopO nopl mal call nopO nopO nopl nopl divide jmpb nopO nopO nopl nopO ifz nopl nopl nopO nopO pushcx pushdx pushdx popbx nopl nopO nopl
; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;
Ob 12 07 13 Id 00 00 00 01 05 0b Of 0c 12 01 01 00 01 le la 00 00 01 01 If 19 00 00 01 00 16 01 01 00 00 07 08 08 0a 01 00 01
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
pop start + 4 into CX CX = CX - DX, CX = start push start on stack CX = 0, offset for search find end, AX = end, CX = offset, DX = tempi size complement to end marker complement to end marker complement to end marker complement to end marker push end on stack pop end into CX increment to include dummy instruction at end pop start into DX CX = CX - DX, AX = end, CX = size, DX = start reproduction loop marker reproduction loop marker reproduction loop marker reproduction loop marker AX = daughter, CX = size, DX = mom call copy procedure copy procedure complement copy procedure complement copy procedure complement copy procedure complement create daughter cell jump back to top of reproduction loop reproduction loop complement reproduction loop complement reproduction loop complement reproduction loop complement dummy instruction to separate templates copy procedure template copy procedure template copy procedure template copy procedure template push size on stack push start on stack push start on stack pop start into BX copy loop template copy loop template copy l o o p template
97 nopO dec movii ifz
J*P nopO nopl nopO nopO jmpb nopO nopl nopO nopl ifz nopl nopO nopl nopl popdx popcx popax jmp ifz nopl nopl nopl nopO ifz
; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;
00 10 04 16 18 00 oi 00 00 19 00 oi 00 oi 16 oi 00 oi oi 0c 0b 09 18 16 01 , 01 01 00 16
53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81
copy loop template decrement size move from [BX + CX] to [AX + CX] test when to exit loop exit loop copy procedure exit complement copy procedure exit complement copy procedure exit complement copy procedure exit complement jump to top of copy loop copy loop complement copy loop complement copy loop complement copy loop complement dummy instruction to separate jmp from template copy procedure exit template copy procedure exit template copy procedure exit template copy procedure exit template pop start into DX pop size into CX pop call IP into AX jump to call (return) dummy instruction to separate jmp from template end marker end marker end marker end marker dummy instruction to separate creatures
GENO TYP]3: 0023awn
call popcx dec pushcx zero divide
; ; ; ; ; ;
la 0b 10 07 13 If
0 1 2 3 4 5
push ip + 1 on stack pop ip + 1 into CX CX = start save start on stack CX = 0 cell division, will fail first time
98 adrf nopO pushax popcx popdx sub adr pushdx mal popbx nopO dec movii ifz jrap jmpb nopl
Id 00 05 Ob Oc 12 lb 08 le Oa 00 10 04 16 18 19 01
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
AX = end + 1 push end address on stack CX = end address + 1 DX = start address (CX = CX - DX) CX = size this instruction will fail put start address on stack allocate daughter, AX = start of daughter BX = start address top of copy loop decrement size copy byte to daughter if CX == 0 jump to address in AX (start of daughter) jump back to line 17 (top of copy loop)
GENOTYPE: 0024aah
call popcx dec pushcx zero adrf nopl pushax divide popcx popdx sub pushdx popbx mal nopl dec movii
la 0b 10 07 13 Id 01 05 If 0b 0c 12 08 0a le 01 10 04
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
push ip + 1 on stack pop ip + 1 into CX CX = start save start on stack CX = 0 AX = end + 1 push end address on stack cell division, will fail first time CX = end address + 1 DX = start address (CX = CX - DX) CX = size put start address on stack BX = start address allocate daughter, AX = start of daughter top of copy loop decrement size copy byte to daughter
99 dec movii ifz jmp jmpb nopO
; ; ; ; ; ;
10 04 16 18 19 00
18 19 20 21 22 23
decrement size copy byte to daughter if CX == 0 jump to address in AX (start of daughter) jump back to line 16 (top of copy loop)
GENOTYPE: 0035bfj
call popcx dec pushcx adrf divide movid zero adrf nopl pushax popcx adrf popdx pushdx pushdx sub mal pushdx popbx pushbx
; la ; Ob
; io ; ; ; ; ; ; ; ; ;
mal
j
put nopl nopl dec movii dec movii
; ; ; ; ; ; ;
07 id if 03 13 id oi 05 0b Id 0c 08 08 12 le 08 0a 06 le Od 01 01 10 04 10 04
0 push ip + 1 on stack 1 pop ip + 1 into CX 2 CX = start 3 save start on stack 4 dummy instruction 5 cell division, will fail first time 6 dummy instruction (AX = 0x1a, call instruction) 7 CX = 0 8 AX = end + 1 9 10 push end address on stack 11 CX = end address + 1 12 dummy instruction 13 DX = start address 14 push start address on stack 15 push start address on stack 16 (CX = CX - DX) CX = size 17 allocate daughter, AX = start of daughter 18 push start address on stack 19 BX = start address 20 push start address on stack 21 allocate daughter, AX = start of daughter (fails) 22 dummy instruction (write to get buffer of other creature) 23 24 top of copy loop 25 decrement size 26 copy byte to daughter 27 decrement size 28 copy byte to daughter
100 ifz jmpb
dec movii jmpb nopO
16 19 10 04 , 19 00
29 30 31 32 33 34
if CX == 0 jump to address in AX (start of daughter) decrement size copy byte to daughter jump back to line 25 (top of copy loop)
References [1] Ackley, D. H. k Littman, M. S. 'Teaming from natural selection in an artificial environment." In: Proceedings of the International Joint Conference on Neural Networks, Volume I, Theory Track, Neural and Cognitive Sciences Track, IJCNN Winter 1990, Washington, DC. Hillsdale, New Jersey: Lawrence Erlbaum Associates, 1990. [2] Adami, Chris. Unpublished. Learning and complexity in genetic autoadaptive systems. Caltech preprint: MAP - 164, One of the Marmal Aid Preprint Series In Theoretical Nuclear Physics, October 1993. Adami has used the input-output facilities of the new Tierra languages to feed data to creatures, and select for responses that result from simple computations, not contained in the seed genome. Contact:
[email protected] [3] Aho, A. V., Hopcroft, J. E. Sz Ullman, J. D. The design and analysis of computer algorithms. Reading, Mass.: Addison-Wesley Publ. Co, 1974. [4] Anonymous. 1988. Worm invasion. Science 11-11-88: 885. [5] Bagley, R. J., Farmer, J. D., Kauffman, S. A., Packard, N. H., Perelson, A. S. & Stadnyk, I. M. "Modeling adaptive biological systems.'1 Unpublished paper, 1989. [6]
Barbieri, M. The semantic theory of evolution. London: Harwood Aca demic Publishers, 1985.
[7]
Barton-Davis, Paul. Unpublished. Independent implementation of the Tierra system, contact:
[email protected].
[8]
Beaudry, Amber A., and Gerald F. Joyce. 1992. Directed evolution of an RNA enzyme. Science 257: 635-641.
[9]
Benner, Steven A., Andrew D. Ellington, and Andreas Tauer. 1989. Mod ern metabolism as a palimpsest of the RNA world. Proc. Natl. Acad. Sci. U.S.A. 86: 7054-7058.
101
[10] Brooks, Rodney. Unpublished. Brooks has created his own Tierra-like sys tem, which he calls Sierra. In his implementation, each machine instruc tion consists of an opcode and an operand. Successive instructions overlap, such that the operand of one instruction is interpreted as the opcode of the next instruction. Contact:
[email protected] [11] Burstyn, Harold L. 1990. RTM and the worm that ate internet. Harvard Magazine 92(5): 23-28. [12] Cariani, P. "Emergence and artificial life." In: Artificial Life II, edited by C. Langton, D. Farmer and S. Rasmussen. Redwood City, CA: AddisonWesley, 1991, 000-000. [13] Cairn-Smith, A. G. 1985. Seven clues to the origin of life. Cambridge: Cambridge University Press. [14] Cohen, F. Computer viruses: theory and experiments. Ph. D. dissertation, U. of Southern California, 1984. [15] Darwin, Charles. 1859. On the origin of species by means of natural selec tion or the preservation of favored races in the struggle for life. London: Murray. [16] Davidge, Robert. 1992. Processors as organisms. CSRP 250. School of Cognitive and Computing Sciences, University of Sussex. Presented at the ALife III conference. Contact:
[email protected] [17] Davidge, Robert. 1993. Looping as a means to survival: playing Russian roulette in a harsh environment. In: Self organization and life: from simple rules to global complexity, proceedings of the second European conference on artificial life. Contact:
[email protected] [18] Dawkins, R. The blind watchmaker. New York: W. W. Norton h Co., 1987. [19] Dawkins, R. "The evolution of evolvability." In: Artificial life: proceedings of an interdisciplinary workshop on the synthesis and simulation of living systems, edited by C. Langton. Redwood City, CA: Addison-Wesley, 1989, 201-220. [20] DeAngelis, D., and L. Gross [eds]. 1992. Individual based models and approaches in ecology. New York: Chapman and Hill. 21] de Groot, Marc. Unpublished. Primordial soup, a Tierra-like system that has the additional ability to spawn self-reproducing organisms from a sterile soup. Contact:
[email protected],
[email protected],
[email protected] 102 [22; Denning, P. J. "Computer viruses." Amer. Sci. 76 (1988): 236-238. [23; Dewdney, A. K. "Computer recreations: In the game called Core War hostile programs engage in a battle of bits." Sci. Amer. 250 (1984): 1422. [2< Dewdney, A. K. "Computer recreations: A core war bestiary of viruses, worms and other threats to computer memories." Sci. Amer. 252 (1985a): 14-23. [25; Dewdney, A. K. "Computer recreations: Exploring the field of genetic algorithms in a primordial computer sea full of flibs." Set. Amer. 253 (1985b): 21-32. [26; Dewdney, A. K. "Computer recreations: A program called MICE nibbles its way to victory at the first core war tournament." Sci. Amer. 256 (1987): 14-20. [2?; Dewdney, A. K. "Of worms, viruses and core war." Sci. Amer. 260 (1989): 110-113. [28; Eigen, Manfred. 1993. Viral quasispecies. Scientific American 269(1): 3239. July 1993. [29 Farmer, J. D. k, Belin, A. Artificial life: the coming evolution. Proceedings in celebration of Murray Gell-Mann's 60th Birthday. Cambridge: University Press. (Reprinted in Artificial Life II. Pp. 815-840.)
po;
Farmer, J. D., KaufTman, S. A., &, Packard, N. H. "Autocatalytic replication of polymers." Physica D 22 (1986): 50-67.
[31; Feferman, Linda. 1992. Simple rules... complex behavior [video]. Santa Fe, NM: Santa Fe Institute. Contact:
[email protected],
[email protected] [32; Feng, Q., Park, T. K. & Rebek, J. 1992. Science 254: 1179-1180. [33; Goldberg, D. E. 1989. Genetic algorithms in search, optimization, and machine learning. Reading, MA: Addison-Wesley. [34; Gould, Steven J. 1989. Wonderful life. W. W. Norton k Company. Inc. Pp. 347. [35; Gray, James. Unpublished. Natural selection of computer programs. This may have been the first Tierra-like system, but evolving real programs on a real rather than a virtual machine, and predating Tierra itself: "I have attempted to develop ways to get computer programs to function
103
like biological systems subject to natural selection.... I don't think my systems are models in the usual sense. The programs have really com peted for resources, reproduced, run, and "died'. The resources consisted primarily of access to the CPU and partition space.... On a PDP11 I could have a population of programs running simultaneously." Contact:
[email protected] [36] Hogeweg, P. 1989. Mirror beyond mirror: puddles of life. In: Langton, C. [ed], Artificial Life, Santa Fe Institute Studies in the Sciences of Complex ity, vol. VI, 297-316. Redwood City, CA: Addison-Wesley. [37] Holland, John Henry. 1975. Adaptation in natural and artificial systems: an introductory analysis with applications to biology, control, and artifi cial intelligence (Univ. of Michigan Press, Ann Arbor). [38] Holland, J. H. ''Studies of the spontaneous emergence of self-replicating systems using cellular automata and formal grammars." In: Automata, Languages, Development, edited by Lindenmayer, A., & Rozenberg, G. New York: North-Holland, 1976, 385-404. [39] Hong, J. I., Feng, Q., Rotello, V. & Rebek, J. 1992. Competition, cooper ation, and mutation: improving a synthetic replicator by light irradiation. Science 255: 848-850. [40] Huston, M., DeAngelis, D., and Post, W. 1988. New computer models unify ecological theory. Bioscience 38(10): 682-691. [41] Joyce, Gerald F. 1992. Directed molecular evolution. Scientific American, December 1992: 90-97. [42] Kampis, George. 1993. Coevolution in the computer: the necessity and use of distributed code systems. Printed in the ECAL93 proceedings, Brussels. Contact:
[email protected] [43] Kampis, George. 1993. Life-like computing beyond the machine metaphor. In: R. Paton [ed]: Computing with biological metaphors, London: Chap man and Hall. Contact:
[email protected] [44] Kauffman, Stuart A. 1993. The origins of order, self-organization and selection in evolution. Oxford University Press. Pp. 709. [45] Koza, John R. 1992. Genetic programming, on the programming of com puters by means of natural selection. Cambridge, MA: MIT Press. [46] Langton, C. G. 1986. Studying artificial life with cellular automata. Physica 22D: 120-149.
104
[47] Langton, C. G. "Virtual state machines in cellular automata." Complex Systems 1 (1987): 257-271. [48] Langton, C. G. "Artificial life." In: Artificial life: proceedings of an interdisciplinary workshop on the synthesis and simulation of living systems, edited by Langton, C. Vol. 6 in the series: Santa Fe Institute studies in the sciences of complexity. Redwood City, CA: Addison-Wesley, 1989, 1-47. [49] Levy, Steven. 1992. Artificial Life, the quest for a new creation. Pantheon Books, New York. Pp. 390. [50] Levy, Steven. 1992. A-Life Nightmare. Whole Earth Review #76, Fall 1992, p. 22. [51] Litherland, J. 1993. Open-ended evolution in a computerised ecosystem. A Masters of Science dissertation in the Department of Computer Science, Brunei University. Contact:
[email protected] [52] Lotka, A. J. Elements of physical biology. Baltimore: Williams and Wilkins, 1925, reprinted as Elements of mathematical biology, Dover Press, 1956. [53] Maley, Carlo C. 1993. A model of early evolution in two dimensions. Mas ters of Science thesis, Zoology, New College, Oxford University. Contact:
[email protected] [54] Manousek, Wolfgang. 1992. Spontane Komplexitaetsentstehung — TIERRA, ein Simulator fuer biologische Evolotion. Diplomarbeit, Universitaet Bonn, Germany, Oktober 1992. Contact: Kurt Stueber,
[email protected] [55] Maynard Smith, J. 1992. Byte-sized evolution. Nature 355: 772-773. [56] Minsky, M. L. Computation: finite Cliffs, N.J.: Prentice-Hall, 1976.
and infinite machines. Englewood
[57] Moravec, Hans. 1988. Mind Children: the future of robot and human intelligence. Cambridge, MA: Harvard University Press. [58] Moravec, Hans. 1989. Human culture: a genetic takeover underway. In: Langton, C. [ed], Artificial Life, Santa Fe Institute Studies in the Sciences of Complexity, vol. VI, 167-199. Redwood City, CA: Addison-Wesley. [59] Moravec, Hans. 1993. Pigs in cyberspace. Extropy #10, Winter/Spring, 1993.
105
[60] Morris, S. Conway. 1989. Burgess shale faunas and the Cambrian explo sion. Science 246: 339-346. [61] Nowick, J., Feng, Q., Tijivikua,T., Ballester, P. & Rebek, J. 1991. Journal of the American Chemical Society 113: 8831-8839. [62] Packard, N. H. "Intrinsic adaptation in a simple model for evolution." In: Artificial life: proceedings of an interdisciplinary workshop on the synthesis and simulation of living systems, edited by C. Langton. Redwood City, CA: Addison-Wesley, 1989, 141-155. [63] Paine, R. T. "Food web complexity and species diversity." Am. Nat. 100 (1966): 65-75. [64] Pattee, H. H. "Simulations, realizations, and theories of life." In: Artificial life: proceedings of an interdisciplinary workshop on the synthesis and simulation of living systems, edited by C. Langton. Redwood City, CA: Addison-Wesley, 1989, 63-77. [65] Rasmussen, S., Knudsen, C , Feldberg, R. k Hindsholm, M. "The coreworld: emergence and evolution of cooperative structures in a computa tional chemistry" Physica D 42 (1990): 111-134. [66] Rasmussen, S., C. Knudsen, and R. Feldberg. 1991. Dynamics of pro grammable matter. In: Langton, C , C. Taylor, J. D. Farmer, & S. Ras mussen [eds], Artificial Life II, Santa Fe Institute Studies in the Sciences of Complexity, vol. X, 211-254. Redwood City, CA: Addison-Wesley. [67] Ray, T. S. 1979. Slow-motion world of plant 'behavior' visible in rainforest. Smithsonian 9(12): 121-30. [68]
1991. An approach to the synthesis of life. In: Langton, C , C. Taylor, J. D. Farmer, h S. Rasmussen [eds], Artificial Life II, Santa Fe Institute Studies in the Sciences of Complexity, vol. X, 371-408. Redwood City, CA: Addison-Wesley.
[69]
. 1991. Population dynamics of digital organisms. In: Langton, C. G. fed.], Artificial Life II Video Proceedings. Redwood City, CA: Addison Wesley.
[70]
. 1991. Is it alive, or is it GA? In: Belew, R. K., and L. B. Booker [eds.], Proceedings of the 1991 International Conference on Genetic Algo rithms, 527-534. San Mateo, CA Morgan Kaufmann.
106
[71]
1991. Evolution and optimization of digital organisms. In: Billingsley K. R., E. Derohanes, H. Brown, III [eds.],fflScientific Excel lence in Supercomputing: The IBM 1990 Contest Prize Papers, Athens, GA, 30602: The Baldwin Press, The University of Georgia.
[72]
1992. Foraging behaviour in tropical herbaceous (Araceae). Journal of Ecology. 80: 189-203.
[73]
1994. Evolution and complexity. In: Cowan, George A., David Pines and David Metzger [eds.], Complexity: Metaphors, Models, and Reality, Pp. 161-173. Addison-Wesley Publishing Co.
[74]
1994. Evolution, complexity, entropy, and artificial reality. Physica D 75: 239-263.
[75]
1994. An evolutionary approach to synthetic biology: Zen and the art of creating life. Artificial Life 1(1/2): 195-226. Reprinted In: Langton, C. G. [ed.], Artificial Life, an overview. The MIT Press, 1995.
[76]
Unpublished. A proposal to consolidate and stabilize the rain forest reserves of the Sarapiqui region of Costa Rica. Available by anony mous ftp: tierra.slhs.udel.edu [128.175.41.34] as tierra/doc/reserves.tex, or at http://www.hip.atr.co.jp/~ray/pubs/reserves/reserves.html.
climbers
[77] Rheingold, H. (1988). Computer viruses. Whole Earth Review Fall (1988): 106. [78] Skipper, Jakob. 1992. The computer zoo - evolution in a box. In: Francisco J. Varela and Paul Bourgine [eds.], Toward a practice of autonomous systems, proceedings of the first European conference on Artificial Life. MIT Press, Cambridge, MA. Pp. 355-364. Contact:
[email protected] [79] Sober, E. 1984. The nature of selection. MIT Press, Cambridge, MA. [80] Spafford, Eugene H. 1989. The internet worm program: an analysis. Com puter Communication Review 19(1): 17-57. Also issued as Purdue CS technical report TR-CSD-823. Contact:
[email protected] [81] Spafford, Eugene H. 1989. The internet worm: crisis and aftermath. CACM 32(6): 678-687. Contact:
[email protected] [82] Spafford, E. H., Heaphy, K. A. k Ferbrache, D. J. Computer viruses, dealing with electronic vandalism and programmed threats. ADAPSO, 1300 N. 17th Street, Suite 300. Arlington, VA 22209, 1989.
107
[83] Strong, D. R. and T. S. Ray. 1975. Host tree location behavior of a tropical vine (Monstera gigantea) by skototropism. Science, 190: 804-06. [84] Surkan, Al. Unpublished. Self-balancing of dynamic population sectors that consume energy. Department of computer science, UNL. "Tierra-like systems are being explored for their potential applications in solving the problem of predicting the dynamics of consumption of a single energy carrying natural resource". Contact:
[email protected] [85] Tackett, Walter, and Jean-Luc Gaudiot. 1993. Adaptation of selfreplicating digital organisms. Proceedings of the International Joint Con ference on Neural Networks, Nov. 1993, Beijing, China. IEEE Press. Con tact:
[email protected],
[email protected] [86] Taylor, Charles E., David R. Jefferson, Scott R. Turner, and Seth R. Gold man. 1989. RAM: artificial life for the exploration of complex biological systems. In: Langton, C. [ed], Artificial Life, Santa Fe Institute Stud ies in the Sciences of Complexity, vol. VI, 275-295. Redwood City, CA: Addison-Wesley. [87] Thearling, Kurt, and Ray, T. S. 1994. Evolving multi-cellular artificial life. Brooks, Rodney A., and Pattie Maes [eds.], Artificial Life IV conference proceedings, Pp. 283-288. The MIT Press, Cambridge. [88] Todd, Peter M. 1993. Artificial death. Proceedings of the Second European Conference on Artificial Life (ECAL93), Vol. 2, Pp. 1048-1059. Brussels, Belgium: Universite Libre de Bruxelles. Contact:
[email protected] [89] Volterra, V. "Variations and fluctuations of the number of individuals in animal species living together." In: Animal Ecology, edited by R. N. Chapman. New York: McGraw-Hill, 1926, 409-448. [90] Wilson, E. O. Sz Bossert, W. H. A primer of population biology. Stamford, Conn: Sinauer Associates, 1971.
1
WHITE-NOISE ANALYSIS IN RETINAL PHYSIOLOGY
Ken-ichi Naka and Vanita Bhanot Departments of Opththalmology and Physiology and Biophysics New York University Medical Center New York NY 10016 USA
Contents Introduction
110
Section 1
System's Analysis
115
Section 2
Computational Algorithms
126
Section 3
Physiological Interpretation of Kernels
131
Section 4
Piecewise-Linear Dynamics
144
Section 5
Statics Versus Dynamics
160
Section 6
Generation and Transformation of Second-Order Nonlinearity
168
Section 7
Cascade Analysis
181
Section 8
Contrast Gain Control
189
Section 9
Application of White-Noise Analysis to Spike Train
203
Section 10
Peeking into Black Boxes
222
Afterwords
247
Brief Description of Vertebrate Retina
251
References
258
110
But increasingly it seems that most of what is interesting in the natural world, and especially in the biological world of living things, involves non-linear mathematics. Robert May From PLAYBILL for Arcadia Lincoln Center Theater at the Vivian Beaumont New York, NY
INTRODUCTION The retina is the window through which the visual scene of the outside world is transformed into a signal that can be decoded ultimately by neurons in the central nervous system (CNS). Therefore, the retina is the gateway where what is known by all of us is transformed into what is known only by ourselves. It is a threshold where object is transformed into subject. It is fitting that the ancient wisdom of the Indians declares that "it is Maya, the veil of deception, which covers the eyes of mortals, and causes them to see a world of which one cannot say either that it is or that it is not; for it is like a dream, like the sunshine on the sand which the traveller from a distance takes to be water, or like the piece of rope on the ground which he regards as a snake (Schopenhauer, 1844 and 1958). What constitutes the objective visual world is captured by the photo-receptors, cones and rods in the retina, where they are converted into transmembrane potentials and processed in the retinal neuron network. Here we are not concerned with detailed molecular mechanisms that are involved in this transduction or with synaptic transmission in the network but our interest lies in uncovering how the visual world is transformed into a nervous signal in a holistic fashion. The cellular responses in retinal neurons carry the information we use for vision. Everything we see is contained in the spike discharges, short electric pulses, sent to the brain. How is the ever-changing image of the visual world processed in the retinal neuron network?
111
What is the role of many types of neruons and their complex interconnection in signal processing? How are the results of complex processing encoded into a spike train, a point process? The answer to these questions is indeed not only the goal of retinal physiology but also provides us with some idea on how the nervous system reads, so to speak, the outside world. Such a goal may be impossible to achieve in other parts of the nervous system. Almost all animals use some form of visual detection for survival in a hostile world. All vertebrate retinas are laid down, to our surprise, under a fixed pattern which is layered and hierarchical in structure. All vertebrate retinae are composed of five principal neural components: 1) the receptors, rods and cones, which capture the photons and transform energy into electrical signals; 2) horizontal cells, which receive signals from the receptors; 3) bipolar cells, which form the concentric receptive fields and which interconnect the outer and inner layers in the retina; 4) amacrine cells, which integrate signals in the inner layer and; 5) ganglion cells, which produce spike discharges sent to the brain (Cajal, 1993; Polyak, 1941; Dowling, 1987). It is possible to control precisely the input to the retina in time and space and to record from all types of retinal neurons and identify them morphologically. Thus, the retina is the only place where one can reasonably expect to untangle how a nervous system transforms images of the outside world into neural codes. It is an Approachable Part of the Brain (Dowling, 1987). In the early 1970s, Marmarelis and Naka (1973), opened a new path to understanding neural function in the vertebrate retina by developing application of the theory of white-noise analysis conceived by Norbert Wiener (1958). This theory is the last contribution of this great mathematician and still remains largely ignored outside of a small group of scientists, engineers, and mathematicians although the mathematical aspect of white noise is a subject of intensive study, principally by Professor Takeyuki Hida and his disciples (Hida, 1980; Hida, Kuo, PotthofF, and Streit, 1993; Kuo, 1996). No system's analysis textbook we know of mentions Wiener's theory on nonlinear analysis. Not many books on stochastic analysis mention the fact that white-noise is a derivative of the Brownian motion, an achievement by Professor Hida. Some papers equate white-noise to Brownian motion. The basic idea of white-noise analysis is shown in Fig. 1A, in which a system is a Tektronix AF501 bandpass filter tuned at 35 Hz. We stimulated the filter with a white-noise
112 TEKTRONIX AF50I FILTER
OUTPUT RESPONSE
INPUT WHITE-NOISE SYSTEM
CROSS-CORRELATE
Fig. 1 A. Impulse responses of a Tektronix AF501 band pass filter tuned at 35 Hz. Two impulse responses are shown. The one in the upper box was produced by brief pulses approximating an impulse input and the one in the lower box was obtained by cross-correlation between a white-noise input and the filter's output.
NA amacrine->NBamacrine
INPUT WHITE-NOISE
OUTPUT RESPONSE SYSTEM
CROSS-CORRELATE
Fig. IB A first-order kernel obtained by cross-correlation between an input, a white-noise current injected into an NA amacrine cell, arid a response recorded from an NB amacrine cell. The kernel identifies the signal transmission from the NA to NB amacrine cell, which was quasi-linear. The kernel was similar to that for the Tektronix AF501 band pass filter tuned at 35 Hz. The signal transmission from NA to NB amacrine cell is modeled by a band pass filter tuned at 35 Hz as in the case of man-made Tektronix filter.
113
signal and observed the output. Cross-correlation was made between the input and output to produce the system's first-order kernel. As the system is man-made, the system's impulse response can easily be observed by a pulse of very short duration that approximates an impulse input. Two impulse responses, one obtained directly and the other through crosscorrelation are similar. However, there are minor differences between the two impulse responses. These differences may be due to several reasons such as the finite length of the white-noise stimulus and the deviation of the white-noise input from a true Gaussian white noise, i.e. the noise was band-limited. The Tektronix bandpass filter is then replaced by the catfish neuron network (Fig. IB). Input is a white-noise modulated current injected into an NA amacrine cell and the resulting response is recorded from an NB amacrine cell. The input signal was cross-correlated against the response to obtain the first-order kernel. We found that transmission of the signal from NA to NB amacrine cell is quasilinear. Therefore, the kernel approximates, the impulse response of neuron network between the NA and NB amacrine cells. The kernel from the catfish neuron network is very similar to that from the Tektronix band-pass filter. Both are characteristic of a 35 Hz band-pass filter. If and only if two systems' responses to white-noise input are identical, then the two systems are equivalent. Therefore, the catfish neuron network between the NA and NB amacrine cells is equivalent to the Tektronix AF501 band-pass filter tuned at 35 Hz. This illustrates how we use whitenoise analysis to untangle the neuron network in the retina. In our study we mostly use the retina of the channel catfish, Ictalurus punctatus. Catfish live in a world of chiaroscuro so analysis is much simpler than in those retinas which process color. Occasionally we also include results from the gourami fish which seems to process color signals. In the following sections, we will briefly present some mathematical aspects of whitenoise analysis and the results obtained from the catfish retina through such analysis. Why choose the retina of the catfish? Because no one has ever studied it. Why white-noise analysis? Because no one has seriously applied it to a practical system. There are many other good reasons but our basic motives are to try to use an untested methodology and to understand an unknown phenomenon. During the course of our research we have discovered many unexpected phenomena which might someday force neurophysioloists to change their basic thesis. Could we have made these discoveries without the use of white-noise analysis?
114
This is a question we cannot answer because the clock cannot be turned back to the 1970s and we cannot redo what we have done without using white-noise analysis. This section is not meant to be inpartial or extensive. The goal of this undertaking is to summarize what we have done. There are many books and reviews on the subject (Marmarehs and Marmarehs, 1978; Schetzen, 1980; Rught, 1981; Palm and Popel, 1985; Sakuranaga, Sato, Hida, and Naka, 1986; Sakai, 1992; Victor, 1992).
115
Section 1 SYSTEM'S ANALYSIS Linear system's analysis In physiology, as well as in engineering, it is often necessary to ask what the function of a system is without knowing the system's precise inner mechanism. It may be possible to learn what a neuron does by observing how it responds to a certain stimulus. This is the "black box approach" which is widely used in engineering and also, to a lesser degree, in physiology. Linear system analysis is a well established engineering discipline. One of the most important differences between studies of natural and man-made things is that the former is an endless search of smaller black boxes, as evidenced in high-energy physics, whereas the latter can be taken apart into known parts. In the black box approach, a system is defined by the input-output relationship as shown in Fig. 1-1. This is known as system identification. A system, therefore, must have a well-defined input as well as output. By providing a proper input and observing the resulting response, we try to guess what the black-box's function is. This requirement imposes several restrictions to system analysis in neurophysiology. For example, there are many parts of the central nervous system in which the input is not welldefined and its output obscure. One advantage of studying a visual system is that its input is clearly defined and can easily be manipulated in time, space and spectral composition. Although it is not absolutely essential, analysis becomes less difficult if it is time invariant, i.e. if the system's response is independent of the particular time at which the input signal is initiated. Seen over large time intervals, no physiological system is time invariant, but for a short span of time, i.e. for a few minutes, it is possible that the system is time invariant.
NPUT
> SYSTEM
OUTPUT, 7
Fig. 1-1. A system has to have a well-defined input and output.
116
Let f(t;s) be the response of the system at time t to an input s. Let s' represent the same signal delayed in time by an amount x (or advanced in time by an amount -x). Then, if f(.) represents a time invariant function, equation (1) must hold for all time t:
f(t;s)=f(t+T;s')
(1)
A system is linear if the response characteristics are additive and homogeneous. If an input, x,(t), produces an output, y,(t), and a second input, x2(t), produces another output, y2(t), a combined input, x,(t)+x2(t), will produce an output, y,(t)+y2(t). In linear system's analysis, input is usually a series of sinusoid waves and analysis is performed in the frequency domain. A typical example is the Bode plot. If a linear system is stationary or time invariant, the system's output can be related to the input through the convolution integral for linear systems:
00
y(t) = fh(x)x(t-x)dz
(2)
0
where h, (t) is the system's impulse response and x(t) is an arbitrary input. The impulse response is a system's response to a unit impulse. The impulse response function is a timedomain representation and can be transformed into a frequency-domain representation through Fast (Discrete) Fourier Transform (FFT). The impulse response, h,(t), gives a complete description of a linear system. If the input, x(t) is a Gaussian function, the output, y(t) also shows a Gaussian distribution. It should be noted that h,(t) goes to zero for sufficiently large x, as determined by the system memory, and that h(x) = 0 for x, of the input (Marmarelis and Marmarelis, 1978).
N-\
M
P=
£
("); 4>(±«) = l / # ]C x(m+n)x(m)
n=-M
/M=0
where the time, M, is sufficiently longer than the system's memory.
Second-order Wiener kernel The kernel is computed by the twofold cross correlation;
(2b)
128
h2{nvn2)
2
N-n-l
= 1/(2M> )[ £
y(m)x(m-nx)x(m-n2)
m -n
- ^0<J>(»j-w2)], [w = max(/ij,w2)]
(3)
where^ is the mean (DC component) of the output.
Third-order kernel The kernel is computed by the threefold cross correlation; h3(n„n2,n3)
3
= \/(6NP ) x -
N-n-\
£
y{m)[x{m-nx)
x(m-n2)x(m-n3)-x(m-nl)$(n2-n3) x(m-n2)§{n3-nx)-x{m-n3)§{nx-n2)], [/7 = max(«,,« 2 ,« 3 )] (4)
where an improvement is made to consider the small degree of non-whiteness of the input consistent with Eqs. (2) and (3).
First-order convolution (model) The first-order component, yx{ri), of the response at time nAt is the superposition of the past stimulus, x(n - m), with a weighted function, h,(m), and given by M
yx{n) = M £
hx{m)x{n-m)
(5)
m=0
This is the well-known convolution integral for a linear system.
Second-order convolution (model) The second-order nonlinear component, y2{r\), is computed by the twofold convolution of the stimulus with the second-order Wiener kernel by
129 2
y2(n) = (A0
M
M
E
E h2(mx,m2)
x [x(n-mx)x{n-m2)-$(mx-m2)]
(6)
The second-order model is the sum of the linear and second-order components.
Third-order convolution (model) The third-order contribution is computed by the following triple summation; 3
M
y3(n) = (At) E »»[ =0
M
E Wj =0
M
E
hi(ml,m2,m3)[x(n-ml)
mi=0
x x(n - m2)x(n - m2) -3$(m2-
m3)x(n - m3)]
(7)
The third-order model is the sum of the linear, second- and third-order components.
Power Spectrum We adopted the Blackman-Tukey algorithm to compute the power spectrum (Blackman and Tukey, 1965). Conversion from time to frequency domains are made by the FFT algorithm to make computation shorter without introducing added errors, since the auto correlation function is much shorter than the data length. The Hanning window was used for frequency smoothing (Blackman and Tukey, 1965). We also tried the Hamming window with no apparent advantage.
Mean Square error MSE is computed by MSE = At E
tV mod (»)-.H")] 2
(8)
where_ymod is the wth-order model of response^. The results were normalized and represented in percentage form.
130
Probability density function PDF of x is computed by; p{x) = Nt ix)l{Nd),
(/ = \,...,K)
(9)
where Nj(x) is the number of x(n) within the range x,±d, and x, are the midpoint of the intervals with a width d selected to cover the entire range of x(n). If a system is linear and the input is Gaussian, the response PDF is also Gaussian. The degree of deviation, i.e., is an indication of the degree of nonlinearity in a system (McKean, 1973). Examples are seen in N and C amacrine cells (Sakuranaga and Naka, 1985b,c).
131
Section 3 PHYSIOLOGICAL INTERPRETATION OF KERNELS Although the first paper on the application of white-noise analysis was published in 1972 by Panos Marmarelis and Naka (1972), we did not have any idea of the nature of kernels in terms of physiology. Formulas or equations could be written and kernels could be computed according to these formulas, but to understand what they meant in terms of physiology was more difficult. It was in 1979 that we came to understand what a kernel is (Naka, Chan, and Yasui, 1979). First-order kernels from the catfish horizontal cell are the local slope of NakaRushton equation (equation 3) plotted on a linear light scale. It follows easily that the firstorder kernel is an incremental or AC sensitivity of retinal neurons. It is rather surprising that it took nearly 10 years to reach that seemingly obvious conclusion. This section will give a mathematical foundation of the idea and is based on the article by Sakuranaga and Ando (1985). In the natural environment, visual information is a constant fluctuation around a slowly undulating mean illuminance. Most physiological studies have used only a zero-mean illuminance (complete dark) as background. Resulting responses reflect the non-steady state response of retinal neurons. A better stimulus is a modulation of mean luminance to evoke a steady state response. There are several ways to modulate a mean luminance as shown in Fig.3-1. Modulation signals can be: a) step-wise or pulsatile, b) sinusoidal, and c) stochastic or white-noise. As intuitively appreciated by comparing these three types of modulation signals, the white-noise signal, 5, is a rich stimulus. There is a dead period between steps and sinusoidal modulation which is limited in its frequency components. The drawback of the signal is that the input-output relationship cannot be observed without mathematical manipulation whereas, in the case of the two other modulation signals, the relationship can be intuitively appreciated. Illumination, L(t), falling onto the retinal surface is generally expressed as the sum of two terms, a steady mean level, I0, of illuminance and a modulated illuminance, I (t), which has an average value of zero for the period we are interested in. L(t)=L
+ I(t)
(1)
132 ^ ^ M ^ » » ^
STEPS MEAN tm >i m m
DARK
SINUSOIDS MEAN DARK
WHITE-NOISE MEAN DARK
TIME Fig. 3-1. Three modes of modulation of a mean luminance. A mean luminance can be modulated by a pulsatile signal, a sinusoid, or a white-noise signal. White-noise modulation is the most efficient means of modulation.
The Wiener analysis uses a GWN modulated illuminance as a test stimulus and, in the natural environment, light fluctuation can be considered as an approximation to a Gaussian distribution. There are two ways to modify a white-noise modulated light stimulus. One is to keep I0 constant and to change the amplitude of I(t) as shown in Fig. 3-2 'A' through 'D'. This is to change the depth of modulation and this stimulus allows us to study how neurons respond to white-noise stimulus of various depths of modulation. This is a study of contrast sensitivity. The other was of modification is to change I0 and I(t) by the same proportion as shown in Fig. 3-2 'AA' through ' C C . This is to study sensitivity around various levels of mean luminance. As shown in Fig. 4-6, the mean luminance as well as the amplitude of modulation can be changed in the same proportion by interposing a neutral density filter between the light source and the preparation. Responses from cones and horizontal cells
133 TIME RECORD
0.5
PDF
TIME RECORD ,
PDF
DARK S I.O
Fig. 3-2. Two ways to change a white-noise modulated light. One way is to change the depth of modulation while keeping the mean constant and the other way is to change the magnitude of both the mean and modulation.
evoked by a stimulus defined by equation (1) have a steady hyperpolarization, V0, produced by Io and a dynamic (or a.c.) response, V(t), produced by I(t), that fluctuates around the mean hyperpolarization. Our analysis is simplified by the fact that dynamic responses of cones and horizontal cells are linear over a large range of input modulation (Marmarelis and Naka, 1973b; Naka et al., 1982; Tranchina, Gordon, and Shapley, 1983; Sakuranaga and Naka, .1985; Chappell, Naka, and Sakuranaga, 1985; Naka, Chappell, Sakuranaga, and Ripps, 1988). The linear component of the response is predicted by convolving the first-order kernel, h (T; I0), with the modulated input, I (t), and the cell's response can be expressed as V{t) = VQ(I0) + f
hixJQ)I(t-x)dx
(2)
134
The dependence of the d.c. response, V0, on I0 represents the absolute d.c. sensitivity and the d.c. sensitivity must be a nonlinear function of mean illuminance (static nonlinearity) due to saturation. The d.c. sensitivity of cones and horizontal cells follows the empirical NakaRushton equation (1966) which is equivalent to the Michaelis-Menten equation;
/0 + o
Here Vmax is the maximum potential change and o is a mean illuminance to produce V0 = Vmax/2. Therefore, o defines the position of the curve (plotted on a semi-log scale); voltage is plotted on a linear scale and illuminance on log scale. This V-log I curve moves laterally along the log I axis as the sensitivity of the retina changes, a type of adaptation called (pigment) bleaching adaptation (see ADDENDUM) by Rushton (1965). As suggested by Naka, Chan, and Yasui (1979), the first-order kernel is related to the local slope of the absolute sensitivity curve (which is not a function of time). An instantaneous increase, 61, in the mean illuminance level at t = 0 will produce a response; i
V(t) = V0(I0)+6lfh(x;I0)dx
(4)
After an appropriate time (t = °°), the membrane potential reaches a steady state and becomes equal to V0(I0 + 61) and; V0(I0 + 6I) = V0(IQ)+6I^
(5)
The local slope of the absolute sensitivity curve is expressed in terms of the first-order kernel as:
A/,
o
= f h(xj0)dx o
(6)
135
The static incremental sensitivity defined by equation (6) is a function of mean illuminance level and can be approximated by the local slope of the Naka-Rushton equation: 00
tkMjdz
*-2—v^
o
7 +
(o
(7)
°)
For a linear system, the dynamics is defined by the first-order kernel, and, if the kernel doesn't change over a large range of mean illuminance, then the integral in equation (6) is proportional to the peak amplitude of the kernel. This relationship is approximated true in catfish horizontal cells which exhibit constant-gain lowpass dynamics (Naka, Chan, and Yasui, 1979), and probably in the case for turtle cones since their absolute sensitivities are expressed by the Naka-Rushton equation (Baylor and Hodgkin, 1970). Therefore;
peak-amplitude of kernel = k
(V°)
2
V
(8)
where k is a constant independent of \ The static response, which is produced by a constantgain lowpass filter, is only one type of processing among many complex signal processing in the retina. For these other signal processing, sensitivity must be defined in terms of the dynamic properties of the response. When a brief test flash of intensity, I*, and duration, At, is applied at t = 0 on a background, I0 (i.e. I0 + I*At), the response is expressed as V{t) = VQ(IQ) + rAt-h(t;I0)
(9)
The incremental (or differential) sensitivity, Sj(t), of a cell is defined as the change, AV(t), in potential generated by a criterion stimulus of strength, AI = I*At;
*/«
=
^p-=h(t,IQ) A/
(10)
136
Here incremental sensitivity includes the system's dynamics and is a function of mean illuminance. The turtle horizontal cell changes response dynamics from monophasic (lowpass) to biphasic (bandpass) with an increase in mean illuminance (Chappell et al., 1985), in which case the peak-to-peak amplitude of the response is not an appropriate measure of the sensitivity as described by Naka et al (1979). Equation (10) is applicable not only to quasi-linear cells such as cones and horizontal cells, but also to the linear part of more complex responses having dynamic nonlinearities. Dynamically nonlinear responses are represented by second- and third-order kernels and can be treated in the same fashion as linear responses. By definition, the incremental sensitivity, equation (10), is measured by (small) perturbations around a mean illuminance and first-order kernels can be obtained experimentally by averaging many responses evoked by small incremental-decremental flashes around a mean illuminance provided that the responses produced by the flashes are within the linear range. Baylor and Hodgkin (1974) have observed a range of linear responses in the turtle receptor using flashes which produced a response of a few mV or less. The white-noise method, in which a white-noise modulated input is cross correlated with the output, extracts the linear component of the response (Marmarelis and Marmarelis, 1978). Cone and horizontal cells respond only to frequencies up to about 50 Hz, so that the bandwidth of the white-noise can be limited. A band-limited white-noise input, with a flat power spectrum from near dc to a slightly higher frequency than the band-limit of the cone or horizontal cells' response (about 50 Hz), is sufficient to measure the first-order kernel with sufficient accuracy and, thereby, the incremental sensitivity. Contrast is another important parameter of a light stimulus. A brief flash has a single parameter, stimulus strength, Al (equivalent to photons per unit area), and the contrast for a flash superposed on a steady mean illumination, I0, is defined as Al/I0. Contrast sensitivity, Sc(t), is the change, AV(t), in a cell's potential generated by the contrast, AI/I 0 ;
W =^
= V«;'o)
CO
The physical dimension of equation (11) is voltage multiplied by time (mV • sec). As shown
137
by equations (10), (11) and (6), both the incremental and contrast sensitivities are related to the cell's dynamic response characteristics , whereas, the absolute sensitivity is related to the static response characteristics. Naka and his colleagues have performed many white-noise experiments on neurons in catfish, turtle, skate, and a gourami retinas (Marmarelis and Naka, 1973; Naka et al., 1982; Sakuranaga and Naka, 1985; Chappell et al., 1985, Naka et al. 1988, Sakai, Wang, and Naka, 1995, and Sakai, Machuca, and Naka, 1996). In all of their temporal experiments the whitenoise source was a glow modulator tube whose current, and hence the tube's light output, was modulated by white-noise signals. In recent experiments, the glow tube has been replaced by an LED whose light output is linearly related to the input signal. An LED is much easier to handle so that white-noise analysis is simpler to perform. This is another example of advanced technology combined with a theory that remains unchanged. In the experiments performed by Naka and his associates, mean illuminance was controlled by interposing a series of neutral density filters between the light source and the preparation. When a photic stimulus with I0 = Imax and power spectral density, ~Pmax , is attenuated by a series of neutral densityfiltersin log-units, the stimulus, Ln(t), impinging onto the retina is given by;
£„(') = / „ + / « / 1 0 "
(12a)
In earlier studies, kernels were computed by cross correlating the white-noise light signal, I(t), before attenuation with the cellular response, V(t), and the presence of the neutral density filter was not taken into account. By such a scheme, kernels at four mean illuminance levels (at 1 log intervals) were obtained for catfish retinal interneurons (e.g. Fig. 25, Naka, Marmarelis, and Chan, 1975). The kernel, h ( t ; IJ, at n - log attenuation was then composed as
138
h(x,In)
= -}^-I(t-xW(t)-V0(Tn)]
(13)
max
Here the bar is used to denote the average value over time t. By neglecting the scaling factor, 10", thefirst-orderkernels presented in the earlier works were actually the contrast sensitivity as defined in equation (11). From equation (11) and (13), the contrast sensitivity is given by the cross correlation; Se(t) = ^Lj(t-x)[V(t)-VQ(In)]
(14)
max
Four kernels from type-N cells were almost identical in their amplitude indicating that the cell's contrast sensitivity remained unchanged when the mean illuminance was increased by 3 log units (Fig. 25, Naka et al., 1975). These results showed that not only did the amplitude of the first-order kernel obey the Weber-Fechner relationship, but also that the mean illuminance level controlled the cell's frequency response. A low mean illuminance input produced a first-order kernel which was slower (frequency-wise) as well as integrating, whereas, a high mean illuminance input produced a first-order kernel which was faster as well as differentiating. This subtle change in a cell's frequency response can be readily demonstrated by white-noise analysis. When the first-order kernel's amplitude was multiplied by the value of the neutral density filter, the incremental sensitivity as defined by equation (6) was obtained (Naka et al., 1979). But in earlier publications by Naka and his colleagues this point was missed, so that the notion of contrast sensitivity was never associated with the first-order kernels. In retrospect, the omission of contrast sensitivity has probably greatly contributed in making the interpretation of kernels very obscure for vision physiologists. This situation was finally resolved by Sakai, Wang, and Naka (1995). Figure 3-3 shows the same set of kernels plotted on two scales, an incremental sensitivity scale and contrast sensitivity scale. Kernels shown here were measured from a turtle horizonal cells. Kernels were observed at a set of four mean luminance levels covering three log units, i.e., from a relative mean luminance of 1 through 1,000. The kernels plotted on the incremental sensitivity scale show that as the mean became brighter the kernel became smaller and faster
139
A
INCREMENTAL SENSITIVITY r\3
> (2i*)
If the power spectra of the responses do not change appreciably with changes in mean illumination, as has been observed for turtle horizontal cells (Chappell et al., 1985), then P(f, I„) in equation (21) is almost independent of I„, so that a 10n-fold increase in S;(/") is produced by an «-log attenuation, while SJf) will not vary with mean level. This is an expression of the Weber-Fechner relationship for sensitivity, and Kelly (1971) observed a similar phenomenon in the human visual system. In summary, several factors should be taken into account when visual sensitivity is measured. The static and dynamic aspects of a response must be separated: the static part, which behaves nonlinearly (static nonlinearity), is produced by a process with lowpass characteristics, while the sensitivity of the dynamic part can always be defined as the result of piecewise linearization (dynamic linearity). Dynamic sensitivity can, of course, be defined by the classical stimulus-response relationship using a flash or sinusoidal modulation on a steady mean illuminance base. A white-noise input, which includes both a steady mean and a complex modulation, is a good probe to measure visual sensitivities, and the first-order kernel, which is a dynamic incremental sensitivity, is a comprehensive presentation of the sensitivity. Dynamic sensitivity can also be described frequency-wise by either the transfer function (frequency-domain version of the first-order kernel) or the power spectrum of the response to white-noise input.
143
0
02
0.4
0.6
0.8 Se
BACKGROUND FIELD LOG td MEAN IRRADIANCE IN LOG UNITS
Fig. 3-4. 'A' Contrast sensitivity measured at six levels of mean irradiance. The numbers below each kernel indicate log I0, where I 0 = 20 mW/cm2 for the kernel marked 0. Crosscorrelation was performed between nl(t), the light signal monitored before attenuation, and V(7), the cellular response. Note that the amplitudes of the kernels plotted on the contrast sensitivity scale are similar for irradiances greater than 0.002 /^W/cm2 (i.e., kernels labeled -3 to 0). However, the waveform of the kernels changed significantly as the mean increased; the initial slope became steeper and the time-to-peak shortened, indicating that the responses followed faster components of the white-noise stimulus train. 'B' The amplitude of the kernels is plotted (open circles) against the mean of the stimulus, I0. The data is of two parts: one described by the Weber-Fechner line (unit slope) and the other approaching absolute sensitivity. Data for a rod monochromat plotted for comparison (filled circles) were modified from the original data in Blakemore and Rushton.
144
Section 4 PIECEWISE-LINEAR DYNAMICS International Business Machines (IBM) rarely makes mistakes. The company sponsored, in their once-proud building, a show entitled SEEING THE LIGHT which is one of their rare mistakes. We do not see the light but WE SEE IN THE LIGHT. Most retinal physiologists use aflashof light given in the dark as their standard stimulus, a mistake similar to that made by IBM. A lightflashedin the dark is a very artificial stimulus. Animals rarely see light in the dark except lightening in a stormy night. What we see is a gentle modulation of ambient light. We see, in the presence of ambient light, how dark it may be. It is, therefore, expected that the retina has evolved over millions of years to detect a modulation around a mean luminance, not to detect lightning. Therefore, a better stimulus than a light flashed in the dark is a modulation of light around a mean luminance. In this case, light stimulus, L(t), can be decomposed into two parts, /„, which is a steady luminance and modulation, I(t). A light white-noise stimulus is a modulation of a mean, /„, by a Gaussian signal, I(t), as we have shown in Fig. 3-1. As already shown in Section 3, the response from horizontal cells at a given mean luminance is linear in the sense that the MSE of a white-noise evoked response is always less than 10%; in some cases the MSE could be a few %. The right side of Fig. 4-1A shows the response evoked by a white-noise-modulated stimulus in a catfish horizontal cell. The light stimulus, L(t), may be decomposed into two parts: a mean luminance, I0, and a modulation, I(t), around the mean: L{t) = I0 + /(/)
(1)
The response may also be decomposed into two parts: a steady hyperpolarization, V* related to I0, and a fluctuating potential, v(l), related to I(t). V(t)=V0+v(t)
(2)
The response to a sudden increase in luminance shows a negative peak, Vp, immediately after the onset of the stimulus, and settles down to a steady-state DC level, V* in about 1 sec after
145
A
B
o ro
l_
I
I
IO
15
I
I
se
\40 VtfVtwf
ftF)f^fflk
o
3
< o
o
fU
20
'^A^K^^A/^ sec
Fig. 4-1. Time records show that the responses from a catfish horizontal cell were evoked by either a series of step stimuli or a white-noise-modulated stimulus. 'A' Upper left: response evoked by a series of steps of light. Intensity of steps of light was increased linearly. Upper right: initial part of white-noise evoked response. 'B' Lower right: a part of the record after the response reached a steady state, where the linear prediction is superimposed on the actual response although indistinguishable from each other. IQ is the mean (static input) of the stimulus, and I(t) is the modulation (dynamic input); V0 is the static response, and v(t) is the dynamic response; Up is the peak of initial transient.
the peak. We always observed a period showing nonstationary dynamics immediately after the peak response generated by a large sudden appearance of a steady illumination. In the catfish, Vg is about 90% of Fpbut in some other retinas, such as the turtle, V0 is about 50% of Vp. Fig. 4-1A also shows a series of flash stimulus with linearly increasing amplitude and resulting responses. This is the relationship between I0 and Vp. In almost all retinas so far studied, the relationship is represented by the Michaelis-Menten equation, a fact discovered
146
by Naka and Rushton (1967). Here the equation is plotted on a linear light-intensity scale, whereas, it is plotted on log I scale in Fig. 5-1. This is a static input-output relationship. In Fig. 4-IB, a steady state response from the same horizontal cell is shown on an expanded time scale. It is the relationship between I(t) and v(t) that we seek to define the dynamics of the cell's response. There are two response traces: one, a cellular response and the other, a prediction by the first-order kernel. The match of the two traces is so good that it is hard to distinguish one from the other. The modulation response is linearly related to the input modulation.
LOG LLUMINANCE 0 12 3 4
PDF
x _J
DARK LEVEL
o CD
>
Q.
UJ 00 2L O CL 00 UJ
rr a. UJ
h-
00
m
>
o m r o
Fig. 4-2. Comparison of step-evoked responses with those produced by a white-noise stimulus. The step-evoked responses are for the (initial) transient part of cell's response, whereas white-noise-evoked responses are the cell's response to perturbation around a mean luminance after the response reached a steady state. The light stimulus is measured before it is attenuated by neutral-density filters. The number indicates the magnitude in log-units of step or mean luminance. The amplitude histogram gives the PDF obtained at the corresponding steady state level.
147
The amplitude distribution of the dynamic response is the probability density function (PDF). If the dynamics of a system are linear, the PDF of a response produced by a GWN input is also Gaussian (showing a normal distribution). The relation among Vp, V„, and v(t) is shown in Fig. 4-2 using PDFs of v(t). On the left are responses evoked by a series of flashes of light given in the dark, with magnitudes increasing by 1-log unit steps. The up-going pulses indicate the timing of the flashes and the numbers indicate the logarithm of the magnitudes. The 0.3-sec flashes produced only initial transient peaks, Vp, whose amplitudes increased monotonically as the magnitudes of the flash inputs were increased. On the right of Fig. 4-2 are PDFs of the response evoked by white-noise stimuli whose mean luminance is equal to the full intensity of the flash stimuli. The PDFs of the responses were approximately Gaussian, although those obtained with brighter stimuli (3 or 4 log) were slightly skewed. This is one indication that the dynamic response is substantially linear around a mean luminance level. The linearity is "piecewise" since the response PDFs remain Gaussian, and at the same time, depend upon mean luminance. Here we can point out that large step inputs given in the dark are not suitable to characterize the steady-state dynamics: such stimuli produce only a nonstationary dynamic response for the period immediately following the onset of stimuli. In a linear system, v(t) is predicted by convolving the modulated input, I(t), with the first-order kernel, ht(r,If) as shown in equation (3);
DO
V{t) =VQ(I0) + f h^-I^Kt-^dt
(3)
o
We measured the first-order kernel, h,(v;I0), by cross-correlating the dynamic response, v(t), with the GWN modulated stimulus, I(t). Then the cellular potential, V(t), is a sum of V0 and v(t), and is expressed by equation (2). This cross-correlation procedure is illustrated in Fig. 4-3 A. Fig. 4-3B shows the power spectra of the white-noise stimulus and the resulting response from a catfish horizontal cell. The stimulus has an almost flat spectrum approximately from DC up to 50 Hz. This range exceeds the bandwidth of the response
148
whose bandwidth is less than 20 Hz. Another measure of the goodness of fit between the actual response and the prediction is their power spectra, which are shown in Fig. 4-4B. In thisfigure,the power spectra of both stimulus and the observed response (solid line) are the same as those in Fig. 4-3B. The spectrum (dashed line) of the predicted response matches very well, over the entire range of frequency, with that of the actual response. These facts support our conclusion that the dynamics of the horizontal cell is linear.
B
A
INPUT
SYSTEM
ou
r
PUT
CROSSCORRELATION 20
Hz
200
Fig. 4-3. Scheme of experiment and analysis. (A) White-noise input produces the output of a system. Cross correlation between input and output generates kernels shown. (B) Power spectra of input and output. The input spectra is almost flat from near DC to about 100 Hz. The power spectrum of horizontal cell's modulation response is also flat from near DC to about 10 Hz. The white-noise input adequately covers the range of frequency the cell is capable of responding to.
Figure 4-4A shows a first-order kernel evoked from a catfish horizontal cell. The kernels are plotted on two time scales: a solid line for a slow scale, 0 to 3 sec, and dashed line for a fast time scale, 0 to 0.5 sec. The kernel was monophasic with a peak time of about 60 msec, and became negligible after about 0.2 sec ("system memory" less than 0.2 sec). The small base-linefluctuationsare due mainly to the limited record length and to deviation of the stimulus from true GWN. The duration of the non-zero portion of the kernel indicates that the horizontal-cell's impulse response is less than 200 msec in duration. The monophasic
149
A «r
20 Hz
Fig. 4-4. (A) A first-order kernel evoked from a catfish horizontal cell by whitenoise-modulated light. The kernel is plotted on two time scales. The fast time scale is from 0 to 0.5 sec and the slow time scale is from 0 to 3 sec. (B) Frequency response of a horizontal cell. Spectra of white-noise-evoked response (solid curve) and linear prediction (dashed curve). The prediction is obtained by convolving the first-order kernel shown in 'A' with the white-noise stimulus whose spectrum is marked, INPUT. The two OUTPUT spectra are almost identical indicating that the modulation response was linearly related to the input modulation. (C) Gain and phase functions which are Fourier transformed from the kernel shown in 'A'. (D) A response (solid line in the lower trace) evoked by a sinusoid modulated light and the linear prediction (dashed line in the lower trace). The two response traces match with each other well showing that the first-order kernel is capable of predicting the cell's response to an arbitrary input.
character of the kernel indicates that the response dynamics have "constant-gain low-pass" characteristics. The low-pass nature of the transduction is also indicated by the power spectra in Fig. 4-4B. The power spectra of the response is almost flat, with a roll-off frequency of about 10 Hz. That is, modulated components up to 10 Hz of the input signal (i.e., luminance modulation) are transmitted to the cell without the loss of gain. This is shown in more detail by taking the Fourier transform of the kernel in Fig. 4-4 A. The Fourier transform of the
150
impulse response, which in a linear system is the first-order kernel, is called the transfer function. It is a complex-valued function of frequency, which we plot as gain and phase (Fig. 4-4C). The gain curve is almost flat up to about 10 Hz, while the phase was about 180° (showing the negativity of the response) at lower frequencies. Both curves quickly turn down around 10 Hz with the phase curve falling before the gain does. Thus, the horizontal cells transmit input signals with a constant amplification up to 10 Hz, although, a faster signal modulation delays the transmission. As the modulation becomes faster than 10 Hz, the amplification of the signal decreases monotonically. This prediction of the linear theory may be observed directly as shown in Fig. 4-4D. The figure shows, in solid line, the response recorded from a horizontal cell stimulated by sinusoidally modulated light (upper trace), and the dashed line shows the linear prediction, model, computed from the first-order kernel. The response, either light-evoked or kernelpredicted, showed a regular repetition of sinusoidal cycles with decreasing amplitude. The fit between the two traces, solid and dashed lines, provides further evidence for the linear and low-pass characteristics of the modulation response from the horizontal cell. Harmonic analysis, in which a system's responses to sinusoid are observed (as in Fig. 4-4C) and the transfer function is directly measured, is a standard method to characterize a linear system. Tranchina and his co-workers (Tranchina, Gordon, Shapley, and Toyoda, 1981; Tranchina, Gordon, and Shapely, 1983; Tranchina, Gordon, and Shapley, 1984), performed such analyses on turtle horizontal cells. The turtle horizontal cells also show a linear response to modulation around a mean luminance although the detailed feature of responses are slightly different from those of catfish horizontal cells (Chappell, Naka, and Sakuranaga, 1984). The two approaches, harmonic and white-noise analyses, should lead to the same results. The measurements by Tranchina et al. was almost identical to ours (Chappell, Naka, and Sakuranaga, 1985). As illustrated above, the first-order kernel completely describes the linear dynamics of horizontal cells at a given mean illuminance. The first-order kernel is the most comprehensive representation of linear dynamics because, once it is known around a given mean luminance, it predicts all the dynamic responses evoked by the modulated inputs around the mean (Fig. 4-4D). If the response has a nonlinearity, the kernel also enables us
151
to extract the best-fitting linear component from the actual response in an MSE-sense. This is based on the theoretical framework that the first-order kernel describes the linear response which best approximates, in an MSE sense, the actual response to GWN at a given mean luminance.
A
B L
-ML
TRIGGEREDAVERAGE
C
|_ NArVV-ZYY^^^ CROSSCORRELATE
i
3 or I sec
,
0.2 sec
Fig. 4-5. Comparison of a flash-evoked 'impulse' response with a white-noise evoked kernel. (A) A part of the response to a series of 5-msec flashes of light delivered from a mean luminance of 0.5uW/cm2. The amplitude of theflashwas 0.5uW/cm2. (C) The trace 'L' shows a part of the white-noise modulated light around the same mean as in 'A'. The trace 'R' shows the resulting response from a horizontal cell. Cross correlation between the input and output produces the first-order kernel in 'D\ The dashed trace shows the prediction by the kernel. The two traces are indistinguishable from each other. Time scale 3-sec applies to 'A' and 1-sec to 'C. (B) The top record shows the stimulus. The middle record shows three flashevoked responses. The bottom record is composed of two traces: 1) the post-stimulus-time histogram of flash-evoked responses produced by 20 repeated flashes; and 2) the first-order kernel shown in 'D'. (D) The first-order kernel obtained by cross correlation between the white-noise input and output.
152
We can implement the more simpleminded approach both to verify linearity and to illustrate theory, since the impulse-response is the first-order kernel. This is illustrated in an experiment in a turtle horizontal cell as shown in Fig. 4-5. In the figure, a series of 5-msec flashes with an intensity of 0.5/iW/cm2 are superimposed upon a mean luminance of 0.5//W/cm2. Figure 4-5C shows white-noise-modulated stimulus superimposed upon the same mean level. In Fig. 4-5B, the responses to the three incremental flashes in A are superimposed and, below, their time average is displayed as a post-stimulus-time histogram (smooth trace). In Fig. 4-5D the stimulus and the response, a part of which are shown in Fig. 4-5C, are cross-correlated and the first-order kernel is computed. The kernel is superimposed as a dashed line on the average response in Fig. 4-5B and the output prediction from the kernel is also superimposed as a dashed line on the actual response in Fig. 4-5C. The experiment and data processing in Fig. 4-4A and B are the traditional ones, whereas those in C and D are based on the Wiener theory. The turtle horizontal cell also shows linear dynamics, and therefore we obtain a very good fit between the linear prediction and actual response in B and D. In a linear system, the traditional and white-noise analysis produce identical results but, as seen in Figs. 3-1 and 4-5, white-noise stimulus is much more efficient. The above results can be formulated using equation (2). A brief flash of Intensity, I*, and duration, A/, superimposed on a mean luminance, I0, produces a response, V(t), expressed by:
m = y0(i0)
+ A/-A 1 (T;/ 0 )
(4)
where A/ = / * A? represents the integrated intensity of stimulus. The dynamic response, AV (t) = V(t) - V0 (I 0 ), is related to the first-order kernel by:
153
The right-hand side of this equation shows the ratio of the dynamic response to the stimulus strength, and is called the (dynamic) incremental sensitivity (see the next section). In Fig. 4-5D the ordinate of the kernel is scaled in such a way that h,(T;I,) coincides with the voltage as scaled in Fig. 4-5B. Thus, we conclude that the first-order kernel is equivalent to the dynamic incremental sensitivity, and that an idealized "impulse" may be realized by a brief and small flash superimposed upon a mean luminance. The modulated inputs, either whitenoise as in Fig. 4-6C or sinusoidal as in Fig. 4-6B and Fig. 4-6A , may be thought of as a superposition of a continuous series of flashes such as those in Fig. 4-6B and the resulting response is also generated as a temporal superposition of first-order kernels. This is the principle of linearity; the kernel makes a template of the dynamic response. Thus, in the analysis of a linear system, results from GWN and impulse analyses are fundamentally equivalent. Conversely, the ability of one procedure to predict the results from the other is a stringent test of linearity. Unfortunately, the test with impulse inputs is very difficult since a large flash of light evoked a nonstationary response as shown in Fig. 4-2. Although small flashes of light produce small and stationary responses which are linear as shown in Fig. 4-6A, we need a long span of time to estimate the precise impulse response through an average procedure. During such longtime exposure to mean luminance, the cell will be light adapted and may change its response characteristics. This is in contrast with the idea that white-noise stimulation is very efficient to evoke a stationary dynamic response and to gather data from a cell. It is expected that the linearity of flash evoked response is limited to a few mV in amplitude (Baylor and Hodgkin, 1973). The statics of the horizontal cell were nonlinear, while the dynamics were linear. One may suspect that the modulation of input signal was so small that the excursion of response might be confined to a limited range along the curve of the Naka-Rushton relationship. This is not the case, as we will show in the next experiment. The experimental procedure is illustrated in Fig. 4-6. The light source is an LED which was modulated by a white-noise signal. (In most of past catfish experiments, a Sylvania glow tube was used in place of an LED.) Between the light source and the retina is an optical system including a series of neutral-density filters. In this system there are two ways to change modulations of
154
white-noise light: one is to change the depth of modulation while mean luminance is kept unchanged and the other is to change the mean as well as the modulation amplitude. The former is achieved by attenuation of the white-noise signal and the latter by placement of neutral density filters between the light source and the retina. The neutral-density filters attenuate the mean and modulation depth in the same fashion, i.e., the contrast remains unchanged. Cross-correlation between the white-noise signal detected by a photo diode (before attenuation) and the resulting response generates a first-order kernel on contrastsensitivity. Cross-correlation between the white-noise signal after attenuation and the resulting response generates a first-order kernel on an incremental-sensitivity scale. Two measures of sensitivity are identical in their dynamics and only the scaling factor differs.
INPUT
CONTRAST SENSITIVITY
OUTPUT
CROSS-CORRELATOR
WHITE-NOISE LIGHT
INCREMENTAL SENSITIVITY
Fig. 4-6. Scheme of procedure for measuring the light stimulus and the resulting response. The light stimulus was monitored by a photo diode before the signal was attenuated by a series of neutral density filters. A correlation was made between the unattenuated light signal and the response. The kernel computed was the contrast sensitivity because contrast of the light stimulus remained unchanged although the absolute amplitude of the stimulus, both the mean and modulation, spanned a range of several log units. Incremental sensitivity can be obtained if a correlation is made between the stimulus after attenuation and the response.
155
The results are summarized in Fig. 4-7 as PDFs of both stimuli and steady-state AC responses. Fig. 4-8A shows results of experiments in which neutral-density filters were interposed between the light source and the retina. Without any attenuation, the white-noise light had a mean of 5 //W/cm2; with a 1-log neutral-density filter interposed, the mean was 0.5 fiW/cm2; with a 2-log neutral density filter interposed, the mean was 0.05 /^W/cm2 and so on. PDFs of light stimuli are marked INPUT. PDFs of resulting responses are marked OUTPUT. The output PDFs are composed of the response PDF and the best-fitting gaussian function. At all mean levels, two curves are undistinguishable. Two sets of PDFs are related to the Naka-Rushton equation plotted on a linear light, I0, and voltage, V0, scale. It is seen that: 1) At all mean luminance levels, response PDFs are Gaussian and 2) the peak-to-peak response amplitude can be as large as 40 mV. The linear modulation response is not a small amplitude response. In Fig. 4-8B, the depth of modulation of white-noise stimulus was changed whereas the mean was kept unchanged at the brightest level of 5 //W/cm2. PDFs of the resulting responses, marked OUTPUT, were Gaussian and were proportional to the stimulus PDFs. This wide range of dynamic linearity would be impossible if the dynamic response was restricted by the static relationship of the Naka-Rushton relationship. The steady-state dynamic response of the cell evoked by a white-noise stimulation is apparently different from both the step-evoked static response and the flash-evoked nonstationary response. Whitenoise stimulation produced a stationary response and linearized the response. The linear nature of horizontal cell's modulation response has been shown in many species including turtle (Wheeler and Naka, 1977; Chappell, Naka, and Sakuranaga, 1985; Naka, Itoh, and Chappell, 1987), skate (Naka, Chappell, Sakuranaga, and Ripps, 1988), and a gourami fish (Sakai, Machuca, and Naka, 1996a). We have discussed in detail the statics and dynamics of catfish horizontal cells. In catfish, the cones (photoreceptor) have been shown to have similar statics and dynamics to the horizontal cells (Naka, Itoh, and Chappell, 1987). In the outer retinal layer there is another class of cells, bipolar cells. This class of cells also showed piecewise linear dynamics. For comparison, the responses from a catfish horizontal cell (Fig. 4-9A) and a bipolar cell (Fig. 4-9B) were used in which a step- and a white-noise-modulated light was
156
A
yWcm2
Fig. 4-7. Two sets of PDF of white-noise evoked responses from a catfish horizontal cell. In 'A', the mean and depth of modulation were changed by interposing neutral density filters between the white-noise light source and the retina. The mean luminance was 5, 0.5, 0.05, and 0.005uW/cm2. These mean levels relate to the Naka-Rushton relationship. The output PDFs are also displaced along V0 as dictated by the relationship; the modulation response, v(t), is around V0. Although the ratio of modulation amplitude differed l to 0.001, the difference among the response PDFs was not large. This is because the modulation response is the local slope of the Naka-Rushton relationship in which the slope is steeper for dimmer mean luminances. All response PDFs were Gaussian. In 'B1, the depth of modulation was changed while the mean was kept unchanged. Both input and output PDFs were Gaussian. The modulation response was linearly related to the input modulation.
157 TIME RECORD
PDF
Fig. 4-8. Time records of responses from a horizontal cell (upper trace) and a bipolar cell (lower trace) evoked by a step of light given in the dark followed by a white-noise modulated stimulus. Only initial parts of responses evoked by white-noise stimuli are shown. The right column in 'A' and 'B' shows the PDF of the light stimulus and the resulting response. PDFs were measured after the responses reached their steady state. The PDF of the linear (firstorder) model is superimposed on each response PDF. By definition the PDF of a linear model is Gaussian. Note that V0 produced by I0 in the response from a horizontal cell is lost in the bipolar cell. Light scale is uW/cm2. 'DL' indicates the membrane potential observed in the dark. successively imposed. Both types of cells produced similar responses to a step of light, although the bipolar cell showed more transient hyper-and depolarizing peaks at the on- and off-sets of stimulus. In about 1 sec after the on-set of white-noise stimulus, the mean membrane potential settled down to a steady state in both horizontal and bipolar cells. As we have already shown in the horizontal cell, the membrane potential remained at a steady level as defined by the Naka-Rushton equation, whereas that of the bipolar cell frequently crossed the resting potential. This is confirmed by the PDFs of the steady-state dynamic responses shown in the right column. The response PDF of the bipolar cell is composed of two traces
158
(although undistinguishable from each other): one from the actual response and the other from the linear component predicted from the first-order kernel. This evidence indicates that the dynamics of the bipolar cell are also linear. Note that the static component is essentially lost in the bipolar cell. This response feature of the bipolar cell is known as a "band-pass" filter characteristic. In Fig. 4-9, we show first-order kernels from horizontal and bipolar cells together with their power spectra. The first-order kernels from horizontal cells are
0
Ql
0.2
(S)
0.3
Fig. 4-9. (A) First-order kernels from horizontal and bipolar cells. The kernels from horizontal cells are almost monophasic but those from bipolar cells are biphasic. (B) Pairs of power spectra of the actual and predicted responses of horizontal and bipolar cells to white-noise stimulation. Two pairs are taken from two cell types (solid and dashed lines). Top curves are spectra of white-noise inputs. Power spectra show that the response from horizontal cells is constant-gain lowpass and the response from bipolar cell is bandpass.
159 monophasic showing that the cells contain gain- lowpass response characteristics whereas the bipolar-cell kernels are biphasic showing the cells' bandpass response characteristics. The spectra were obtained from two cells (solid lines and dashed lines) of each type, and the spectra of actual responses were superimposed on those of the linear components. The match between the actual and predicted responses shows that both cell types produce linear dynamic responses. The spectra of horizontal cells were almost flat up to about 10 Hz, whereas those of bipolar cells have a gradual rise up to 10 Hz. That is, bipolar cells transmit more efficiently a signal modulated at about 10 Hz: it has band-pass filter characteristics. Bipolar cells receive two inputs, one directly from receptors and the other from horizonal cells. The two inputs are complementary in a sense that one is sign-inverting and the other sign non-inverting and both cells' statics are defined by the Naka-Rushton equation. Thus the bipolar cell's steady membrane potential is close to that observed in the dark. Further comments on this problem is in the ADDENDUM. We have also examined signal transmission within the outer layer by injecting steps and white-noise modulated current into a horizontal cell and recording resulting responses from other horizontal cells and bipolar cells (Sakuranaga and Naka, 1985a). This provides a way to analyze signal passage in neuron chains directly. White-noise analysis of the currentresponse relationship also indicates that signal transmission within the outer layer is essentially linear. Transmission between horizontal cells is instantaneous because they form an S-space. The linearity of horizontal cells' modulation response over a large range of modulation amplitude is rather surprising because some of the channel mechanisms that underlie the generation of the cell's response are nonlinear (in a static sense). Winslow and Ma (1990) attributed this discrepancy among observations made on the horizontal cells in the network and those made on isolated horizontal cells to the loss of receptor inputs in the isolated-cell preparation. We believe, however, that any study trying to find network function in isolatedcell preparations is a futile effort. It is surprising that so many authors spend their time and research resources on isolated-cell preparations. This shows their lack of imagination as well as common sense. In the following sections we will show that well-defined nonlinearities are generated in the inner retina and we will show how we have coped with these nonlinearities. After all white-noise analysis is meant to identify nonlinearity in a system.
160
Section 5 STATICS VERSUS DYNAMICS The standard stimuli used in vertebrate retinal physiology are typically flashes or steps of light given in the dark. Relationships between the stimulus amplitudes and evoked responses have been appreciated intuitively. One example of such a stimulus-response recording is shown in Fig. 5-1 A, in which responses evoked from catfish horizontal cells by step stimuli of several magnitudes are superimposed. After the onset of a step input, I& the response reaches a negative plateau whose displacement, V0, from the resting membrane potential (dark potential), is a measure of the static response to the step of light. The relationship between V0 and I0 is approximated by the empirical Naka-Rushton (equivalent to the Michaelis-Menten) equation:
V
V
0 7
0
max J
0
+
°
where Vmax is the amplitude of the maximal steady response evoked by a very bright flash, which is the ceiling or saturation of the response, and I0 is the intensity of light which produces a response of \/2Vmax. The equation is plotted on log I and linear V scales in Fig. 5-IB with experimental results superimposed; the fit is very good. Since this result was presented in the mid-1960s (Naka and Rushton, 1966), the formula (or equivalent forms) has been used extensively to express the static input-output relationship of retinal neurons. The solid line in Fig. 5-IB shifts along the log I axis when I0 changes; the curve moves along the log I axis without changing its shape. Lateral shift of this curve signifies an increase or decrease in DC sensitivity, an adaptation referred to as bleaching adaptation by Rushton (1965). The plots in Fig. 5-IB show that the input-output relationship is nonlinear. This fact has misled many physiologists to believing that horizontal cells generally behave nonlinearly. However, the Naka-Rushton relationship is a reflection of the static response; the dynamic response, which is the dominant in the natural environs, is essentially linear (as discussed in Section 4). Step inputs given in the dark produce an unsteady-state response.
161
A
TIME
ijj
>
Z>
h-
E -10
LL)
-20
_J 0_ :>
Ll
SPIKE GENERATOR
Ni
GANGLION PSP
Nz
SPIKE TRAIN „
Fig. 7-3. Functional structure of cascade models for generating ganglion cell PSP and spike train output. L, is a dynamic linear filter, and N, and N2 are static nonlinearities. g(x) is the impulse response function of filters L,. Light stimulus to PSP generation, is represented by a Wiener model (dynamic-linear followed by static nonlinear cascade). Figure 7-3 Gaussian function with crippling (saturation) at A and -A.
186
Wiener kernels of a saturated linear system A saturated linear system is equivalent to a dynamic linear system, h(t), followed by a static nonlinearity, g(.), which is a clipping or saturating nonlinearity (Fig. 7-1). This system is a cascade structure of the Wiener type (Korenberg, 1973);
where
x{t)= rh{x)u(t-x)dx,
(3)
JO
Six)
A -t
X
A
x A
For a Gaussian white-noise, GWN, input u(t) with variance au, the linear response x(t) also has a Gaussian distribution whose PDF, p(x), is: x2
P(x) = —l—e ox\[2n
2
°*
(5)
and its variance ox is given by the equations;
°1 = < x1(0>
= olfh\z)dx, Jo
(6)
where denotes the time average. The clipping or saturation, g(.), is a zero-memory nonlinearity. For a Gaussian input, x(t), according to Bussgang's theorem (Bendat, 1990), the optimum linear system K, (f) for this nonlinear g(.) is given by
m=^mi
(7)
187
The transfer function, K^f), isfrequency-independentbecause the g(x) transformation has no memory. The Gaussian distribution of variable x(t) yields; <xg(x)> = f[Axx22p(x)+2A[~xp(x)dx <xg(x)>= p(x)+2A[°°xp(x)dx ==oox 2fx[Ap(x)dx p(x)dx J-A J -A
(8) (8)
JJ-A -A
JA JA
and the input-output cross-correlation gives;
yK{f) Y(f)H*(f)W(f) a -Y{f)X*jf)_Y(f)H-{f)W(f)^ ) _ r(f)X*(f) _
°*
°l
(9)
(9)
Then it follows that the resultant first-order Wiener kernel, H,(f), for this saturated linear system is Hi(f)'
Y{f)U t{f) 2
oo
=H(f)fAp(x)dx,
u u
with H(f) being the transfer function of the linear subsystem.
Fig. 7-4.
(10) (10)
188
Therefore, the gain factor is equal to the probability of the Gaussian variable x(t) within a range from -A to A (the shaded area in Fig. 7-4, which shows the fA n(x)^c>Q levels of clipping). Such a factor is static and decreases as the modulation depth ox becomes larger. Hence, the amplitude of the resultant Wiener kernel will be inversely proportional to the modulation depth and will have the same phases and waveform as the original kernel. Here we note that Gaussian white-noise is a modulation around a zero mean. In the case of light input, Gaussian modulation is around a mean luminance, I0> and in the case of neuronal response the modulation is around a mean level of polarization, Vg,
189 Section § CONTRAST GAIN CONTROL Under natural conditions, visual input is a modulation of steady mean luminance that changes very slowly. Such visual inputs come mostly from a reflecting surface. Therefore, animals have evolved in a world of reflecting surfaces (Kaplan, Shapley, and Purpura, 1987), The depth of modulation in the normal photic environment is not so large as seen from the fact that photographic film of a limited latitude, y, can adequately reproduce the environment. The relationship between the magnitude of modulation and the amplitude of the response is, therefore, an important measure of retinal function. In their series of experiments on cat ganglion cells, Shapley and Victor (1978, 1979, and 1981) discovered that the sensitivity of a ganglion cell, measured as the number of spikes per second per unit contrast, was greater for an input with a smaller depth of modulation than for an input with a larger modulation. Victor and Shapley, chose the term "contrast gain control", to describe the phenomenon they discovered. Victor and Shapley concluded, from the dependence of gain on frequency, that gain control was not a simple response saturation but could be thought of as a frequency-dependent saturation. Victor and Shapley coined the phrase an automatic control of contrast. Since Victor and Shapley's discovery, a number of papers have been published on this subject (Ohzawa and Freeman, 1985; Benardete, Kaplan, and Knight, 1991). Unfortunately, contrast gain control of retinal interneurons has not yet been studied. This unfortunate situation is due to the fact that retinal physiologists look for mechanisms without really knowing what a system, in this case the retinal neuron network, does. Pharmacology is best left for pharmacologists. In this section we define contrast as (l^-I^J/fl^+l^J. For white-noise stimulus, I„ is three standard deviations, 3o, greater than and 4»„ is 3o less than I0 which is equal to (lUKm+Im,J/2. HORIZONTAL CELLS Figure 8-1A shows a series of modulation responses from luminosity horizontal cells of the kissing gourami that were evoked by a largefieldof red light. A steady illuminance, 4 (FigJ-lAl), produced a steady hyperpolarization, F„, of 15 mV (Fig. 8-1A2). In general,
190
S cat*
iQ5sect
Fig. 8-1. Recordings from a kissing gourami luminosity horizontal cell. The response was evoked by a red field of light. Al shows the input modulated by a 3-Hz sinusoid with the depth of modulation ranging from 4% to 87%, A2 shows the resulting modulation response from the horizontal cell. In Al and A2, an input, Im produced a steady hyperpolarization, V0, and modulation of the mean, I(t), produced a modulation response, V(i). Bl and B2 show the pulsatile input with an amplitude of I„, the mean of the modulation input in Al and the resulting response, which is characterized by transient phases at the on- and off-set of the pulsatile input. The responses from the horizontal cell of the kissing gourami are characterized by overshoots at the on- and off-set of pulsatile stimulus. The horizontal cells of the gourami are similar to the horizontal cells of the turtle (Chappell et al., 1985).
the relationship between I0 and V0 resembles the Michaelis-Menten equation (Naka and Rushton, 1967) and it defines the absolute (DC) sensitivity (Naka, Chen, and Yasui, 1979). As in the case of the turtle horizontal cells (Chappell, Naka, and Sakuranaga, 1985), the peak value of a response, F„, (Fig. 8-1B2), evoked by a pulsatile input with an amplitude, /„ (Fig. 8-1 Bl), is not identical to V9. This is explained by the phenomenon that the response evoked by a pulsatile stimulus represents i non-steady-state response. Chappell and Naka (1991) advanced a noble idea that the transition from Vp to V0 was the mechanism which produced the Weber-Fechner relationship. Here we recall that in the catfish, the horizontal cell was approximately a constant gain lowpass device, i.e., there was no conspicuous peak
191
at the onset of the step-evoked response. The relationship between various values of Iff) at steady 4 and V(t) deines the contrast sensitivity (Section 3, Fig. 3-1). In the experiment for which results are shown in Fig. 8-1A1, the mean illuminance was modulated with a 3-Hz sinusoidal input at modulation depths that ranged from 4% to 88% in five steps. The resulting modulation response from the horizontal cell was a 3-Hz sinusoid and the amplitude of the modulation response appeared to be proportional to the depth of input modulation; V(t) * I(t). The maximal amplitude of the modulation response was 25 mV, peak-to-peak. In the turtle horizontal cell, the linear range modulation response was nearly 40 mV, peak-to-peak, in amplitude (Chappell, Naka, and Sakuranaga, 1985), Fig, 8-1A shows quantitatively that the depth of the modulation response increased linearly with an increase in depth of the input modulation. Figure 8-2 shows two sets of first-order kernels from a kissing gourami horizontal cell upon a simultaneous stimulation by a red (A) and a green (B) light modulated by two independent white-noise signals. The red and the green inputs produced one-output, a modulation of the horizontal cell's steady hyperpolarization. This is a two-input and one-output white-noise analysis. The modulation response was decomposed into two components; one evoked by the red input and the other evoked by the green input. The depths of modulation were 25%, 35%, and 70%. In spite of the differences in the depth of modulation, the kernels evoked by the red and green lights were similar in terms of amplitude as well as waveform. The kernels evoked by the green input (Fig. 8-2B) were more oscillatory than those evoked by the red input (Fig. 8-2 A) at all depths of modulation. This observation shows that the response dynamics were also invariant of the depth of modulation. The mean square error (MSE) of the predictions, linear models, by the red and green (first-order) kernels was between 4% and 9%. For a physiological system, this degree of linearity of a response whose amplitude is more than 20 mV (Fig. 8-2D) is quite extraordinary (Winslow and Ma, 1990). In a linear system, the PDF of the output, the response, is Gaussian. In the case of horizontal cells, a white-noise modulation produced a response whose PDF is closely fitted by a Gaussian function. One example is shown in Fig. 8-2 C (input) and D (output). PDFs (noisy traces) for the inputs and outputs are fitted with Gaussian functions (smooth traces).
192
Fig. 8-2. Modulation responses from a horizontal cell in a kissing gourami. Responses were evoked by two superimposed inputs, red and green, and the resulting response was decomposed into red and green components through a process of cross-correlation, twoinput and one-output experiment described in Section 1. The mean luminance, 70, for the red input, was modulated by white-noise signals whose PDFs are shown in C in which the curves marked 1, 2, and 3 correspond to a depth of modulation of 25%, 35% and 70%, respectively. In D, PDFs of the resulting responses evoked by the red inputs are shown. In both C and D, all experimental curves are fitted with the best-fitting Gaussian function. For both the input and output PDFs, the fit is good. In A, where the response was evoked by a red input, and B, where the response was evoked by a green input, the first order kernels are shown. Two sets of kernels, generated by red and green inputs of different depths of modulation have identical waveforms and amplitude. The modulation response was linear and, as a logical consequence, there was no contrast gain control. Kernel units, 1.0, are 1.3 x 10"7 mV photons' mm2 sec' for the red kernels, Fig. 2A, and 0.8 x 10-7 mV photons-' mm2 sec1 for the green kernels, Fig. 2B. Note that when light is made brighter, the potential becomes more hyperpolarized (negative) because the polarity of the kernel is negative, i.e. sign reversing.
193 Indeed, the two sets of PDFs could be superimposed on one another. These two pieces of evidence, one from the waveform of the kernels as well as the small MSE of the predicted response and the other from the Gaussian distribution of PDFs, show that the modulation response from a horizontal cell is linearly related to the depth of modulation. Therefore, the contrast sensitivity, as defined by the first-order kernels, is independent of the depth of input modulation. This is what one would expect from a linear system. The horizontal cell shows a piece-wise linearization in that, at steady state, the cell's response is linear over a range of modulation depths. Similar observations were made about the cones and horizontal cells of the turtle (Chappell et al., 1985; Naka, Itoh, and Chappell, 1987), in the cellular neurons of the cockroach (Mizunami, Tateda, and Naka, 1986), in the horizontal cells of the skate (Naka, Chappell, Sakuranaga, and Ripps, 1988), and in the horizontal and bipolar cells of the catfish (Sakai and Naka, 1987b).
N AMACRINE CELLS Control of contrast sensitivity in the N (sustained) amacrine cells is very different from the similar control in the horizontal cell. In the N amacrine cells, contrast sensitivity is greater for an input of smaller depth of modulation. Figure 8-3 shows two sets of responses from an NB amacrine cell of the catfish, which corresponds to the sustained hyperpolarizing amacrine cells in other retinas (cf. Kaneko, 1970). Responses were evoked by a large field of red light that was modulated by two white-noise signals: one with a modulation depth of 6% (Fig. 8-3A1) and the other with a modulation depth of 80% (Fig. 8-3B1), while IQ was kept constant. PDFs of the inputs and outputs are also shown in Figs. 8-3 A1 and B1. The response evoked by the input of smaller modulation was 10 mV, peak-to-peak, whereas the response evoked by the input of larger modulation was 15 mV, as shown by both the time records and by the response PDFs. The amplitude of the input PDFs differed by a factor of 10, whereas the difference was less than a factor of 2 for the response. We note that the response PDF produced by a smaller input is more like a Gaussian curve while that produced by a larger input is strongly skewed (distorted as compared to a Gaussian curve), revealing the presence of a strong nonlinear component (McKean, 1973; Bendat, 1990). The time record depicts nonlinearity by many transient depolarizing peaks that are characteristic of catfish N cells
194
(Sakai and Naka, 1988). The results in Fig. 8-3 show quantitatively that the cell's contrast sensitivity, unlike that of the horizontal cells, depends upon the depth of modulation. This NB cell's modulation response is apparently different from the cell shown in Fig. 8-5.
Fig. 8-3. Responses from an NB (sustained hyperpolarizing) amacrine cell of a catfish evoked by modulations of mean luminance. In Al, the depth of modulation of the input was 6%, whereas in B1 it was 80%. The resulting responses are shown in A2 and B2. The PDF of the response, A2, evoked by the small modulation was close to a Gaussian distribution whereas the response PDF, B2, evoked by the large modulation was highly skewed (distorted from the input Gaussian distribution). This distribution reveals the presence of a large nonlinear component, a transient depolarization, evoked by the modulation input, as seen in the time record. N amacrine cells of both the catfish and the kissing gourami produce a marked transient response to modulation of an input (Sakai and Naka, 1987). /„ shows the mean luminance.
Figure 8-4 shows a series of responses recorded from an NA (sustained depolarizing) amacrine cell of the catfish. In the experiments from which results are shown in Fig. 8-4 A, the stimuli were a) a flashing spot of light in the presence of steady annular illumination,
195
Fig. 8-4. Recordings from a catfish NA amacrine cell. A shows pulsatile responses evoked by a combination of steady spot or steady annular illumination and a pulsatile spot or annular stimulation, as shown by the two lowest traces. Steady-spot illumination depolarized the cell to the level marked CENTER and an annulus of light produced a hyperpolarizing response marked SURROUND. The thick baseline, seen during steady-spot illumination, shows the characteristic 35-Hz oscillation. As seen in the middle part of the record, a steady annular illumination produced a steady hyperpolarization and a pulsatile spot produced large depolarizing responses. Simultaneous stimulation by the spot and annular inputs produced a large depolarization followed by an after-hyperpolarization, characteristic of the response from the catfish NA cells to a pulsatile input given in the dark. Note that, in the dark, the membrane potential as indicated by MEAN settled down between two levels, namely, CENTER, produced by steady spot illumination, and SURROUND. In the presence of steady spot and annular inputs, as in the case of a two-input white-noise stimulation, the membrane potentials also settled down close to the level shown by MEAN. B and C show the results of a two-input white-noise experiment in which the spot and annulus were modulated by two independent white-noise inputs and the spot kernels, shown in B, and annular kernels, shown in C, were computed by cross-correlating two inputs against one output. Modulation depths were 80% for the kernels marked 1, 35% for the kernels marked, 2, 15% for the kernels marked, 3, and 7% for the kernels marked, 4. All kernels evoked by the spot inputs, B, had same peak-response times as did the annulus-evoked kernels, C. The peak-response times of spot and annular kernels differed by 20 msec, as noted previously by Sakai and Naka (1991). Iofor the spot and annular inputs were 1.6X10" and 7xl08photons mm2 sec'. Kernel units, 1.0, are 6 x 10-*mV photons-1 mm2 sec-1 for the spot kernel and 1.2 x 106mV photons' mm2 sec' for the annular kernels.
196
b) a flashing annulus in the presence of steady spot illumination or c) the spot and annulus flashing together in dark. The steady spot illumination depolarized the cell with an accompanying 35-Hz oscillation whereas steady annular illumination hyperpolarized the cell. In the dark, the resting potential settled somewhere between the levels evoked by steady center and steady surround illumination, respectively. The NA amacrine cell shows a concentric receptive-field, as revealed by steady illumination of the receptive-field center or surround (Sakai and Naka, 1992). Next, we used a spot and an annulus of light that were modulated by two independent white-noise signals; the receptive-field center and surround were simultaneously stimulated by two independent white-noise stimuli. The resulting response was decomposed into the spot and annular components by cross-correlation between two inputs and one output. The kernels generated by the spot inputs were an initial depolarization followed by a hyperpolarization phase (Fig. 8-4B) and the kernels generated by the annular inputs were hyperpolarizing (Fig. 8-4C), i.e., the receptive-field organization was encoded by the DC (Oth-order) component, (Fig. 8-4A), as well as by the first-order components (Sakai and Naka, 1992). There was a 20-msec transport delay between the center and surround kernels. The depth of modulation of the two stimuli was changed over four intervals ranging from 80% (kernels marked 1), to 7%, (kernels marked 4). The first-order kernels evoked by the spot and annular stimuli were both larger for the smaller modulation and smaller for the larger modulation. The linear part of the NA cell's response, for both the receptive-field center and surround, shows contrast gain control that is roughly similar for the center and surround of the field. The kernels in each set had similar waveforms and they could be superimposed, when they are normalized with respect to their amplitudes. There was no change in the dynamics of the linear component derived from a center or a surround of a receptive field. The results shown in Fig. 8-5 were obtained from a catfish NB amacrine cell with the same stimulus configuration as that used to generate the results in Fig. 8-4, namely, the receptive-field center and surround were stimulated simultaneously by a spot and an annulus of light, which were modulated by two independent white-noise signals. The spot and annular inputs produced first-order kernels with complex waveforms. The kernels
197
Fig. 8-5. Recordings from an NB amacrine cell of a catfish. A shows kernels generated by the spot input and B shows kernels generated by the annular input. Responses were evoked by a spot and annular input modulated by two independent white-noise signals. The resulting response was decomposed into the spot and annular components by crosscorrelating the two inputs against one output. The first-order kernels generated by the spot input were mostly triphasic and those evoked by the annular input were also triphasic. Kernels marked 1, 2, 3, and 4, were generated by modulation depths of 82%, 43%, 20%, and 9%, respectively. C and D show the PDFs of the inputs and outputs. Input PDFs marked 1 through 4 generated output PDFs marked 1 through 4 (two output PDFs' 2 and 3 are unmarked). The input PDFs are Gaussian but the output PDFs are highly skewed, showing the presence of transient depolarizing peaks characteristic of catfish N amacrine cells, one example of which is shown in Fig. 8-3B2. I0 and X show the approximate levels of mean illuminance and the membrane potential in the presence of spot and annular inputs. The membrane potential, V0, was similar to that seen in the dark and was -15 mV. Kernel units, 1.0, are 1.3 x 10'7 mV photons' mm2 sec-1 for the spot kernel and 1.1 x 107 mV photons-' mm2 sec-1 for the annular kernels.
198 are predominately triphasic and the spot and annular kernels differ in their latency; there is a transport delay of about 20 msec between the two sets of kernels. The kernel marked 1 was evoked by stimulation with a depth of modulation of 82% whereas the kernel marked 4 was evoked by a stimulus with a 9% modulation. Similar to the NA amacrine cell for which results are shown in Fig. 8-4, the contrast gain was dependent upon the depth of modulation. Figure 8-5 C and D show the PDFs of the spot inputs and outputs. The input and response PDFs marked 1 correspond to the largest modulation, 82%, of the signal and those marked 4 to the smallest modulation, 9%, of the signal. Obviously the PDFs of the input were Gaussian whereas those of the response were highly skewed, indicating that the response had nonlinear components. The comparison of the PDFs for the horizontal cells shown in Fig. 8-2 and those shown here is striking. In the NB cells for which results are shown in Fig. 8-5, the amplitude of the modulation response, as shown by the PDF, decreased from 17 mV (trace 1 in Fig. 8-5D) to 9 mV (trace 4) when the depth of modulation of the stimulus decreased from 82% to 9%; an almost ten-fold change in the depth of modulation only halved the response amplitude. This difference corresponds to a five-fold increase in the contrast sensitivity. All response PDFs had similar skewed distributions, showing 1) the response contained a strong nonlinear component which produced sharp depolarizing transients (Fig. 8-3B2 in this paper and Fig. 3 in an earlier paper by Sakuranaga and Naka, 1985); and 2) the nonlinearity was even produced by an input with a small depth of modulation.
C AMACRINE CELLS One class of amacrine cells consists of transient amacrine cells. Figure 8-6A shows the time record for a series of responses from a transient amacrine cell in the retina of a kissing gourami. The cell's morphology was characterized by its two-layered dendritic fields, one in the distal layer of the inner plexiform layer (IPL) and the other in the proximal layer of the IPL (Naka and Ohtsuka, 1975; Sakai and Naka, 1988). The C amacrine cells of the gourami fish produce transient depolarization in response to a change in luminance, whether dimming or brightening, or when there is a red or a green input. Similar to catfish C amacrine cells (Section 6, Fig. 6-1), steady illumination did not generate any change in the membrane
199 potential (Fig. 8-6A). Results of white-noise stimulation are shown as PDFs in Fig. 8-6B1, for the inputs, and Fig. 8-6B2, for the outputs. The depth of modulation was 80% for the PDF marked 1 and 10% for the PDF marked 4. The input PDFs are Gaussian, as we would expect, but the PDFs of the output response all show a skewed distribution and the four PDFs produced by inputs of various depths of modulation are almost identical in their distribution characteristics. Two conclusions can be drawn: 1) the contrast sensitivity increased as the depth of modulation decreases; and 2) smaller signals did not change the nonlinear characteristics or linearize the response, as is also the case in N amacrine cells (Fig. 8-5).
Fig. 8-6. Responses from a C-amacrine cell of a kissing gourami. A shows the cell's response to a field of either red or green light modulated by pulsatile inputs. The cell produced a transient depolarization when there was a change in the input, namely, brightening, dimming, or pulsatile red or green inputs. Bl and B2 show the PDFs of inputs and outputs. The modulation depth of inputs ranged from 10% to 90% and input PDFs were fitted to Gaussian functions shown by smooth solid lines. The output PDFs all exhibited a similar and skewed distribution irrespective of the depth of modulation of the input.
200
Figure 8-7 shows the first- and second-order kernels from the input and output shown in Fig. 8-6. The linear component of the modulation response from a C amacrine cell is small in both the catfish and kissing gourami. The linear component accounts for less than 10% of the total response in terms of MSE whereas the second-order component accounts for more than 50% of a cell's response in terms of MSE. The four first-order kernels shown in Fig. 8-7A do not differ much in their amplitude as compared to similar kernels from N amacrine cells shown in Figs. 8-4 and 8-5. We do not know how general these results might be since the first-order kernels from C amacrine cells are often noisy, as one would expect, due to the component's small contribution to the total response. Figure 8-7B shows a topographic view of the second-order kernel obtained from an input with a depth of modulation of 80%. The kernel has a characteristic signature, namely, a four-eye signature, showing that the nonlinearity was probably generated by a Wiener type cascade, in which a dynamic linear filter is followed by a static nonlinearity equivalent to squaring (Section 6, Fig. 6-5 and Section 7, Fig. 7-2A and Figs. 16 and 17 in Sakai and Naka, 1987b). Figure 8-7C shows the diagonal cuts of the second-order kernels generated by inputs with different depths of modulation (Fig. 8-6B1). A decrease in the depth of modulation from 80% to 10%, caused the amplitude of the second-order kernel to increase by a factor of 50. In Fig. 8-7D, the diagonal cuts are normalized in terms of amplitude and all cuts were superimposed on top of each another. Thus, 1) there is control of contrast involving the second-order components, with the change in the contrast gain being much greater than that of the linear component; and 2) in spite of the large difference in the contrast sensitivity, the response dynamics of the second-order components do not change much. The contrast gain for the second-order component is roughly a quadratic function of that for the first-order component. The contrast gain control we have observed in both catfish and gourami fish can be modeled by a simple Wiener type cascade as we described in Section 7, in which the static nonlinearity is an amplitude saturation. As already shown in Fig. 8-2, the first-order kernels are all similar in terms of amplitude as well as waveform. The original responses obtained with modulated stimuli were convolved through a saturating nonlinearity, and a new set of kernels was computed by cross-correlating the original inputs against the output of the saturating device.
201
The resultant kernels are different in their amplitude; the kernels generated by smaller modulations are larger and those generated by larger modulations are smaller, as we have observed in the amacrine cells and ganglion cells (Figs. 8-4 and 8-5). As would be expected from the static nature of the nonlinearity, the original (from catfish horizontal cell) and transformed kernels are identical in waveform. The PDF of the model responses predicated by the transformed kernels is Gaussian. The static nonlinearity changes only the amplitude of the kernels.
L UNITS
>
B oin IS)
E o Q
UJ
o m
en UJ i
50
i
UJ
'1 50
1
/
C)
1
50
1
100 ms 150
o
UJ N
_) < D cr o
•
i
C
i
100 ms ISC)
tNEL UNITS
O
(D
" 00
1
100 ms I5C
"
(D
i
50
l
l
100 ms 150
Fig. 8-7. The first- and second-order kernels from the C amacrine cell for which data are shown in Fig. 8-6. A shows the first-order kernels for the inputs whose PDFs are shown in i Fig. 8-6B1. The amplitude of kernels, the contrast sensitivity, differed only by 30% while the range of input modulations varied from 80% to 10%. B shows a topographic representation of the second-order kernel obtained for an input with a depth of modulation of 80%. The kernel has a characteristic four eye structure but is slightly filtered, as seen from the elliptic shape of each of the four eyes. C shows four second-order kernels as their diagonal cuts. The largest kernel was associated with a stimulus with 10% modulation and the smallest with 80% modulation. In D, all diagonal cuts in C have been normalized in terms of amplitude. Kernel units, 1.0, are 1.6 x 10" mV photons"' mm2 sec' for the first-order kernel and 2.4 x 10'7mV photons'2 mm4 sec2 for the second-order kernel.
202
The naming of this mechanism in the lower vertebrate retinas as automatic gain control is an objective choice. Changes in contrast modify any model parameter. The saturating nonlinearity must be located between the outer and inner retinas and we speculate that it might exist between the bipolar and amacrine cells since we found no marked contrast gain control in the bipolar cells (Sakai and Naka, 1988). This mechanism operates on both the receptive-field center and the surround (Fig. 8-4). The saturating nonlinearity did not affect the nature of the second-order nonlinearity but operated on the amplitude of the second-order kernel, which increased more steeply than the linear component, in an approximately quadratic fashion. An exception exists which is the linear component from the C amacrine cell. The component did not change its amplitude, as the N amacrine cell did, when the depth of modulation was changed, whereas the second-order component did. We do not know why this is so. The linear component in the C cell's response is similar to that of the bipolar cell, and is less complex than the linear component of the N amacrine cell. What are the implications of contrast gain control? First, it allows the network better detection of smaller modulations. In our experiments, the smallest modulation which gave a well defined kernel was 4% to 6% but this value can probably be reduced with a more sensitive detection of input signals. We estimate that the smallest modulation that fish can detect is about 1%. This value is about 5 times larger than that reported as the minimal detectable contrast in human psychophysics studies (Lawton and Tyler, 1993). Second, the inverse relationship between the depth of modulation and the contrast gain renders the amplitude of the response less dependent upon the amplitude of the modulation, as can easily be seen by comparing the PDFs for horizontal cells in Fig. 8-2 with the PDFs for an amacrine cell in Fig. 8-5. Large modulations evoked large modulation responses in horizontal cells that could be more than 20 mV, peak-to-peak, in some cells. In the amacrine cell, the amplitude of the PDF differed by a factor of 2, while the depth of modulation varied from 80% to less than 10%. Neurons in the inner retina do not generate a large analog response as horizontal cells do. There has to be a mechanism to equalize or compress the large modulation response generated in the outer retina, in particular, in the horizontal cells. This mechanism is equivalent to automatic contrast gain control.
203
Section 9 APPLICATION OF WHITE-NOISE ANALYSIS TO SPIKE TRAIN
The nervous system is analogous to the human community in that messages have to be sent over long distances usually via a cable, either electric or optical. In the nervous system, the cable is called an axon. As with man-made transmission, messages are sent as a series of electrical pulses called spike discharges. In the nervous system, spike discharges are the ubiquitous means of sending information over a large distance. A spike discharge is a short electrical pulse of less than a few msec in duration which travels along an axon, an insulated-wire-like structure that connects two distant neurons, at a speed of a few meters per second. In the 1930s, the idea emerged of spike discharges as carriers of information in the nervous system. Before the oscilloscope was introduced to observe electrical pulses traveling along an axon, a galvanometer was used to observe the electrical pulses which appeared as a series of spikes or blips on a recording chart or smoke drum. There are two means of registering spike discharges: one is to record discharges externally from a neuron or axon, this is an extracellular recording; and the other is to impale a neuron or its axon with a very fine electrode, whose tip is less than a few urn in diameter. (Such an electrode is made from a glass tubing and is filled with an electrolyte for electrical connection.) This is an intracellular recording invented by Ling and Gerald (1949). When recording is extracellular, we use the term "spike discharges" and when recording is intracellular we use "action potential". Intracellularly-recorded action potentials are more than lOOmV in amplitude whereas extracellularly-recorded spike discharges are less than a few mV, often of the order of uV, in amplitude. Intracellular recording of action potentials is essential for those interested in ionic mechanisms of spike generation; but for those who study how information is carried by spike discharges or action potentials, the timing or time of occurrence of each spike discharge is important. This is because only the timing of a discharge carries information as in man-made digital devices. Therefore, it does not matter if a spike discharge is lOOmV or lOu in amplitude. Among those who formulated the idea of spikes as carriers of information was Adrian of the Physiological Laboratory in Cambridge, England (Adrian, 1931). Hodgkin
204
and Rushton (1946) showed that the spread of current with subthreshold strength along a nerve fiber could be described by the linear cable equation. One problem in neurophysiology is to discover the mechanisms that underlie generation of a spike discharge. Hodgkin and Huxley (1952) laid the foundation for the 'ionic theory' of spike generation. This is the classical case of the successful application of the nonlinear diffusion equation or parametric modeling. The application was so successful that modeling in neurophysiology generally implies a parametric modeling. The introduction of the patch technique, in combination with molecular biological manipulations, will surely make impressive progress in the study of molecular mechanisms of spike generation. Spike discharges are a means of communication between neurons. For a student of neuron networks, the archetype being the central nervous system, the relevance of spike discharges rests not so much with the (ionic or molecular) mechanisms of spike generation but with the manner in which a neuron encodes (and decodes) information into a spike train so that information can be efficiently and reliably transmitted from point A to point B within a network. In the case of catfish, point A and B are the retina and the tectum, respectively. Spike discharges are the language, so to speak, of the nervous system including the human's. We think and walk using spike discharges, but for us it is very difficult to make any sense of a series of electrical pulses carried by an axon. One way to get around deciphering spike discharges is to find a particular stimulus that elicits spike discharges. If a cell responds to a bar of light moving in a specific direction, the discharge or a ganglion cell that generated such a response is called a directionally selective cell. If a cell responds to a very complex figure, the cell could be called a grandmother cell. Another approach to spike analysis involves taking advantage of the all-or-nothing nature of spike generation. In the visual system, the magnitude of an incremental flash (superposed on a fixed mean luminance) can be varied to determine the magnitude of the incremental flash required to evoke just one single discharge, as in the threshold experiment of Donner (1959) in which the Weber-Fechner relationship for the frog optic nerve discharges was observed. In the cases we have described so far, it was the stimulus that characterized a response, that is to say, the experimenter determined the appropriate stimulus required to evoke a maximal number of discharges or a stimuli with a minimal threshold. Since spike
205
discharges are used as an indicator, such experiments represent an experimenter-centered approach (Eggermont, Johannesma, and Aertsen, 1983). The experimenter chooses the type of stimulus that his or her experience has shown to be most suitable for achieving the goal of a particular experiment. The kind of stimulus that evokes spike discharges optimally is used to classify a given spike train. To date, such an approach has proved quite satisfactory although it tends to be all too human. It has been known that repetition of the same stimulus does not produce exactly the same discharge sequence, i.e., the inter-spike interval is variable. One of the first observations of this phenomena, jitter in timing of spike generation, was made by Frank and Fuortes (1955) on cat spinal motor neurons. Gerstein and Kiang (1960) developed a technique for producing a post-stimulus-time (PST) histogram by taking advantage of the then newly developed electronics. They were able to exploit a means of converting a point process, which is not easy for us to comprehend, into an analog signal, which is intuitively appreciated, by repeating the same stimulus many times, an example of which is shown in Fig. 9-1 A. This technique relies on the fact that timing of discharges was stochastic. If discharges are exactly related to the stimulus, the PST histogram will merely reproduce the same point process. Since Gerstein and Kiang's invention, the PST histogram has became one of the most popular means of analyzing spike discharges. For example, the cover of the May-1996 issue of the Journal of Neurophysiology shows a dozen PST histograms produced by six three-dimensional visual stimuli. Production of PST histograms depends critically on jitter in the timing of generation of each spike discharge. Jitter in firing or noise in the spike-generation process tends to be viewed as a universal phenomenon, but this is not necessarily the case. One example has been shown by Korenberg, Sakai, and Naka (1989) who made simultaneous intracellular and extracellular recordings from a single retinal ganglion cell. A sinusoidal current was injected into a ganglion cell through an intracellular electrode and the resulting spike discharges were recorded by an extracellular electrode. Often, but not always, spike discharges evoked by sinusoidally modulated current were exactly synchronized with the current (Fig. 9-1B). PST histograms merely reproduced the same point process.
206
Fig. 9-1. Spike discharges from a ganglion cell evoked by sinusoidal current injected through an intracellular electrode. Resulting discharges were recorded by the extracellular electrode. Al: Three sample recordings. A2: PST histograms of spike discharges produced from the averaging of-20 cycles. Bl: three sample recordings from another ganglion cell. No jitter of thefiringwas observed, which was demonstrated by superimposition of the three traces in B2. The spike amplitude was ~0.1 mV. Jitter in timing of spike generation is essential for generation of a PST histogram. Reproduced from the Journal of Neurophysiology, with permission.
Perkel, Gerstein, and Moore (1967 a,b) introduced the technique of serial- and crosscorrelation between two spike trains. The work of Perkel et al. is important because it clearly recognized that 1) spike discharges are a point process and 2) temporal relationships between spikes carry information. The relationship is lost when spike discharges are averaged by use of'bins', as in the case of PST histograms. It is regrettable that their seminar work had little influence on later works in spike analysis. DeBoer and Kuyper (1968) developed a very different approach to spike analysis. They used a white-noise input, a stochastic process, to evoke discharges. They sought the (average) wave-form of the stimulus that produced a spike discharge by running the recorder
207
in the reverse direction and using discharges (transformed into unitary pulses) as a trigger to accumulate the stimulus waveform that produced a spike discharge. Their method is referred to as the reverse or trigger correlation and has been used extensively by the Dutch school in their studies of the auditory system (Eggermont et al., 1983). Lately, the reverse correlation method has been re-discovered, so to speak, and is used by many authors including DeAngelis, Ohzawa, and Freeman (1995) and by Meister, Lagnado, and Baylor (1995). An experimenter presents a 'rich' stimulus and a neuron network responds to that part of the stimulus that is of interest to the network. The development of this important technique, however, has limitations. Reverse correlation shows us the optimal wave-form of the stimulus required to evoke a discharge, however, it is not possible to relate the result to neural processes in the network. This is because the input is related to a spike train, a point process. No analog neural response is involved. In this sense, the reverse correlation still falls within the traditional framework of seeking a specific stimulus to evoke a response. Nonetheless, introduction of the technique was significant because the technique focused attention on the dynamics of the stimulus. Schellart and Spekreijse (1972) used this technique to study the dynamics of responses of color-coded ganglion cells in goldfish retina. They made a Fourier transform of the kernels (reverse-correlograms) to represent the optimal stimulus waveform in the frequency domain as gain and phase plots. Victor, Shapley, and Knight (1977), Victor and Knight (1979), and Victor and Shapley (1979) developed an analytical technique of using a sum of several sinusoidal signals to test a system. Their technique occupies the middle ground between the classical technique of testing a system by a series of sinusoidal signals and Wiener's idea of testing a system by an all-inclusive white-noise input. Victor and Shapley cross-correlated a light stimulus, a sum of sinusoidal signals, with the spike discharge (transformed into unitary pulses) from the Yganglion cells of the cat. They obtained second-order kernels represented in the frequency domain, which led them to some interesting conclusions about the neuron network that is associated with the generation of spike discharges from X- and Y-cells. The efforts of Victor and Shapley were important because they were the first to show that a particular sequence of spike discharges, detected by a second-order correlation, carried relevant information. Victor and Shapley were also the first to introduce the notion of cascade structure to spike analysis,
269 WHITE NOISE ANALYSIS W I T H SPECIAL EMPHASIS ON APPLICATIONS TO BIOLOGY
TAKEYUKI HIDA
School of Science and Technology, Meijo University Nagoya, 468, Japan
We shall illustrate the central role played by White Noise Analysis in contem porary biological science and discuss how to apply the theory to various actual problems. Since 1975 there has been a tremendous effort made in this direction by many authors, so we shall only give, in this notes, an overview of the analysis without going to much details. But applications will be discussed in more detail. Since white noise analysis deals with the random functions, unlike the classical analysis, we shall find useful applications of our analysis in many places where fluctuation is involved. As a result, we shall see interesting problems in mathematical science arising from these applications. For further study regarding the mathematical background the readers are rec ommended to see the books and papers listed at the end of this chapter. Contents §0§1§2§3§4§5§6. §7§8§9§10. §11. §12.
Introduction Prologue Innovation of a stochastic process Brownian motion and white noise Generalized white noise functionals I Generalized white noise functionals II When is a functional a white noise functional? Approaches to quantum phenomena I Creation and annihilation Evolution equations Approaches to quantum phenomena II Variational calculus for random fields Approximations to white noise
References
269 272 275 277 281 283 285 287 290 295 297 299 301 305
§0. Introduction The purpose of this section is to provide a brief background of mathematical approach to biological sciences. Mahtematical theory is, usually, rather general
270 and abstract. To avoid such a way of description, this section explains just our idea of approaching to the mathematical theory, rather in an intuitive level, by emphasizing applications, and by taking the topics ready to be applied to biology. It is hoped that our theory can be applied to other fields like quantum dynamics and related fields as well. Fluctuation is a random phenomenon and can be observed in various biological behaviours or movements. Sometimes we can recognize even spontaneous fluctua tion. Here are some typical illustrative examples. (1) Observe the movement of a paramecium. It runs straight ahead and suddenly changes its direction. Such a change occurs according to the effect of fluctuation. (2) Take an electrocardiogram to measure the intervals of peaks. It is easy to see that these intervals fluctuate and that we can use statistics to analyze the organ. (3) Look at random evolutional event governed by a stochastic functional dif ferential equation driven by the time-differential of a Brownian motion that stands for a fluctuation. (4) Consider the identification of a biological organ (viewed as a black box) like a retina that allows random input signal. Then the output is a random function that reflects the function of the organ. We claim that these phenomena mentioned above may be illustrated mathemat ically as functions of a basic elementary random element called white noise. In other words, behind various random biological phenomena is a white noise. Since those phenomena change as time goes by, we may expect that a new infinitesi mal random variable appears at each instant. Each of such random variables has of course a probability distribution extended over, say, three dimensional space. Thus, by taking the time development into account, we are given infinitely many random variables that may or may not be mutually correlated. This fact means that the fluctuation in question, often expressed as white noise, (which is independent at every moment) provides an infinite dimensional probability distribution. The dis tribution has more complexity if we take the space variable, in addition to the time variable, as a parameter of random phenomena. For a moment, we give an intuitive explanation to what are mentioned above. More rigorous mathematical definition will be given in Sec.2. Now, associated with each instant or with each space-time point, appears a new random element, from which we may form a system of independent random variables. We are thus given an infinite-dimensional probability distribution which is an infinite direct product of the same one or three dimensional probability distributions according as the parameter is taken to be just a time or a space-time variable. Hence a mathematical approach to the phenomena in question must request an essentially infinite dimensional calculus, in particular, each direction in the space is equally weighted and carries the same probability distribution. In such a measure space every vector would have infinite length. Figuratively speaking, once a paramecium (see (1) above) changes its direction by chance, the influence of the effect remains forever, regardless of when the change actually happened. Infinite dimensional space where each coordinate axis or each direction is equally
271 weighted looks like an infinite-dimensional Euclidean space. It is different from a Hilbert space such as I2 where the square of coordinates of any point does converge and far remote coordinates are almost ignored. Our infinite dimensional space never looks like such a Hilbert space I2. We shall therefore see unusual properties, contrary to our expectations. For instance, a unit ball in this space has of course unit radius in each direction. Take another concentric ball with radius 1 — e. The ratio of the volumes is the limit of (1 — e) n , that is zero, which means that there is no interior at all for the unit ball. If one is given an apple in this infinite-dimensional space, then in reality he/she is given only the skin of the apple. We therefore have to be careful in dealing with the measures or integrals of functions defined on such an infinite dimensional space.
Fig. 1. Another awkward property arises in the infinite-dimensional case. We shall meet complicated nonlinear functions of white noise as mathematical models. It should be noted that sample functions of white noise are generalized functions. Hence, the variable of those functions is an infinite dimensional vector with infinite length and its further coordinates should never be ignored. Such an awkwardness can be overcome by introducing a technique of the so-called renormalization of nonlinear functions of white noise. Moreover visualized expressions of these functionals can be obtained (see (1) below). With these mathematical techniques, we can come to a general mathematical setup in order to deal with complex biological phenomena with fluctuation. This is just the white noise analysis. There one can even discover interesting biological questions that can be discussed within this framework. A few remarks are now in order; specifically those addressed to mathematical biologists. (1) As we have seen above, a functional of white noise is in general a nonlinear functional of generalized functions (note that sample functions of white noise are generalized functions) which are not so familiar for us. There is, however, no need to worry about that, since we shall introduce, in Sec.3, the so-called S-transform that carries the functional in question to a usual functional of a smooth function with visualized form, and hence one can appeal to the known classical calculus of functionals. As a result, certain kind of interesting stochastic differential equa tions can be solved when we regard them as if they were ordinary (non random)
272 differential equations. (2) Having observed a r a n d o m phenomenon, one may form a r a n d o m function describing it, t h a t is, a white noise functional indexed by a space-time p a r a m e t e r t or by a contour C, denoted by X(t) or X(C), respectively. T h e latter case is more interesting, because, unlike a one dimensional motion of a point t along a line, a deformation of C turns out to be an infinite dimensional behavior, so t h a t it gives us more complex and rich information on the way of depending of the r a n d o m functions. In practical applications, it is recommended to get compound d a t a indexed by a contour C. T h e obtained d a t a form samples of a r a n d o m field X(C). For instance an integral of fluctuation over a domain with b o u n d a r y C defines a r a n d o m field X(C), and its variation gives much richer information t h a n t h a t of X(t) as the time t goes by. (3) Now let us return to the case where t is the one dimensional time. In order to make the time parameter t explicitly appear in the expression of t h e functins of the B(t) we are led to introduce generalized functionals. One of the significances of this class is t h a t we can form mathematical models of r a n d o m p h e n o m e n a t h a t change as time propagates in visualized expressions as functions of B(tys within this class. Our approach indeed allows us to have explicit descriptions in t e r m s of t h e variable 5 ( t ) ' s without smearing them. W i t h such a choice of variables we are further able to enter the quantum world in which non-commutative operators are involved. Actually we can apply our analysis, with mild modification, to some interesting fields in the q u a n t u m probability theory. (4) In biology we often encounter with geometric characterization of shape and structure. Symmetry is one of the basic consept for this purpose. Infinite di mensional rotation group, to be given in the next section, can well serve for this purpose. Thus, in what follows, we develop t h e white noise analysis so as to be efficiently applicable to biological sciences. Before closing this section, a short comment is necessary. White noise is an idealized object, indeed idealized m a t h e m a t i c a l object. W h e n we apply our theory, we often need to approximate it in a certain m a n n e r by ordinary object familiar to us. Most common way of approximation is to take t h e so-called band limited white noise. More naive technique is to take A £ in place of B. Also we will mention t h a t Ornstein-Uhlenbeck process can approximate, in a sense, white noise. These will be discussed in the last section for practical use. §1. P r o l o g u e Under the term Fluctuation one might think of uncertain events or r a n d o m phe nomena, the future of which cannot be predicted exactly. Nobody could therefore imagine that fluctutation would be an important object of m a t h e m a t i c s which is an exact science with provable t r u t h s and where the most strict argument is re quested. In reality, so is treated the fluctuation. Fluctuating p h e n o m e n a can be seen everywhere in such situations as biological behaviors, physical or chemical re actions, observation of the weather and so forth. It would be fine if we could control
273 those fluctuating phenomena or predict their future development. Such an attempt was one of the motivations of our white noise analysis, and it has still been done so far. The investigation of mathematical models of random phenomena is a research object in probability theory. In particular, development of the theory has been much accelerated as soon as we come to discussions on nonlinear stochastic analysis requested there. In the case where the white noise is taken to be the innovation process (see Sec.2) of the given stochastic process, the white noise analysis has so far played a dominant role. One of the important viewpoints of the white noise analysis is that it has an aspect of a harmonic analysis arising from the infinite dimensional rotation group, where one sees a good analogy to the theory in the case of a finite dimensional harmonic analysis arising from a Lie group. Roughly speaking, the probability distribution p, of white noise B(t) is introduced in the space E* of generalized functions, and the measure // is invariant under the action of the group of rotations of E*. The group is called the infinite dimensional rotation group and is denoted by Ooo o r by 0(E) when E is specified. We illustrate why and how an analysis arises from the rotation group. In the simplest case, that is, in the one dimensional case, a function on the circle S1 is developed in a Fourier series in terms of sinnO and cos nO which are eigenfunctions of the operator d2 , , A l
=
( L 1 )
^ -
The uniform measure dd on S1 is invariant under the rotations that form the group 50(2). For two-dimensional case, we are given the sphere S 2 , where the surface element is taken to be the 50(3)-invariant measure. The spherical Laplacian acting on the Hilbert space L2(S2 ,dcr), da being the uniform measure on S"2, is given by 11
A2
~~
dd
d I( ■ n„d> \ sin sinOdO ' ( ^ y sin 6 dO \ oO )'
d2 & sin2 66 dd> d(p22 sin 11
+
(1.2)
It is well-known that A2 is determined by the Lie algebra so(3) and its eigenfunctions are the spherical harmonics by which L2 -functions on S2 are developed into orthogonal series. In the same spirit one can carry out the harmonic analysis on the higher dimensional sphere. We claim that an infinite dimensional analogue of the harmonic analysis ob served above may be seen in our white noise analysis since we are given the infinite dimensional rotation group Ooo and the support of the white noise measure is like an infinite dimensional sphere. It should, however, be noted that the white noise analysis can never be regarded as the limit of the finite-dimensional harmonic anal ysis. It contains essentially infinite dimensional part that cannot be approximated by the finite dimensional analysis. In fact, the non-approximated part constitutes the most important part of our analysis and that part is characterized by a certain subgroup of OQO-
274 Before giving an introduction to our analysis, we should like to note an interesting feature of t h e analysis, indeed t h e readers might not expect such a characteristic t h a t is going t o be explained below. W h i t e noise, the definition being given later, comes from a very familiar daily phenomenon, namely Brownian motion, which was discovered by Robert Brown, a British botanist, in 1827, when he observed a very irregular movement of grains of pollen suspended in the water, as is illustrated by the Fig. 2. below.
Fig. 2. Brownian motion. It is really a surprising fact t h a t such a primitive phenomenon does give rise t o one of the most important subjects of modern functional analysis and probability theory! A naive observation given below would tell us why it is so. Enormous number of molecules of water hit the grains rapidly and successively. As a result, if the amount of transitions of molecules within certain time interval is observed, then the statistics shows t h a t it is independent of the past. T h e situation still holds even if the time interval is infinitesimally small. In other words, every instant arises independent r a n d o m quantity. We may further assume t h a t such a r a n d o m phenomenon occurs homogeneously b o t h in time a n d in space. Under these assumptions it is proved t h a t the probability distribution of the molecules is Gaussian ( A. Einstein, 1905). To b e more precise, if u(t,x) denotes the onedimensional density of the molecules a t instant t, then it was shown t h a t u(t,x) satisfies the diffusion equation O
J-J
—u(t,x) = -Au(t,x),
(1.3)
275 where D is a constant. The solution is the Gaussian density function of the form u(t, x) =
1 y/2irDt
exp[-
x2 2DV 1
(1.4)
if the initial data is given by the delta function. Such a statistical property can be observed in a visualized form. The position of a particle is a sample function of Brownian motion and its speed is that of white noise. Unfortunately the latter is a generalized function, as one can easily guess this fact because the movement of a molecule is so irregular and hence its trajectory cannot be differentiable. White noise can successively provide fresh independent random variable at every infinitesimal time interval as time propagates. With this understanding we can now propose a very basic concept; it is an idealized elementary random variables, (i.e.r.v. in short). (This term comes from a private communication with Professor John R. Klauder.) The term 'elementary' does not mean that it is an easy subject to learn ,but it means 'atomic' in a sense; we understand it as in elementary particle. White noise, the time derivative of Brownian motion is just right to be so called. Mathematical definition and detailed properties of white noise will be given in the following sections. §2. Innovation of a stochastic process This section is devoted to an interpretation of an innovation for a stochastic process and of some characteristic of white noise as a typical realization of i.e.r.v. that can appear as an innovation. We first consider the role of a system of i.e.r.v.'s in stochastic analysis. For this purpose we now recall Levy's stochastic infinitesimal equation introduced to determine the structure of a stochastic process X(t), t £ R. Let 6X(t) be a variation of X(t) over an infinitesimal time interval [t,t + dt). Consider the case where 8X(t) is expressed in the form SX(t) = $ ( X ( s ) , a < t; Y{t), t, dt),
(2.1)
where $ is a non-random function and Y(t) is the so-called innovation (process). It is independent of the past values X(s),s < t, and contains the information that is gained by X(t) during the infinitesimal interval [i, t + dt). The above equation is a rather formal expression, however it suggests how to analyze the process X(t). It should be noted that F(£)'s do not form a system of continuously many in dependent random variables, but they are viewed as random variables which are independent at every infinitesimal intervals [t,t + dt), or simply they are said to be independent at every dt. Their sum (or integral), each term of which is indexed by dt, is therefore an additive (i.e. independent increments) process. If Y(t) is normalized, the sum has to be of the form J Y(s)y/ds, denoted by Z(t), again in a formal expression. Thus, we are given an additive process Z(t), the increment 8Z(t) of which is in agreement with Y(t)y/dt. The reason why the integration is computed by using yjds and not by using ds is that a sum of independent iden tically distributed random variables as many as n is of order yjn, or equivalently,
276 sum of n independent r a n d o m variables of order -4= makes a r a n d o m variable of order 1. To be more elementary, stochastic analysis claims t h a t 1 + 1 is not 2 but y/2, since for the values of two independent r a n d o m variables with m e a n zero, their values of plus and minus signs partly cancel out. In other words, if X a n d Y are independent and have the probability distribution with s t a n d a r d deviation a, then the s t a n d a r d deviation of X + Y is yj2o. This fact explains why a sum of n independent r a n d o m variables having the same distribution is of order yfn. T h u s the stochastic integration should be with respect to y/ds. Remark. Perhaps it could be a good opportunity to tell the so-called y/ft - R U L E
(2.2)
which we often meet in r a n d o m theory. It may be a good idea to refer to the famous book by E. Schrodinger [25], C h a p . l , where the author mentions the signif icance of this rule with good examples in actual phenomena, for which a suitable interpretation can be given. T h e next question is to find a possible structure of an additive process. To answer this question there is a well-known formula called the Levy decomposition of an additive process. Under mild conditions, such as stationary independent increment and continuity in probability, an additive process Z(t) is decomposed into a sum of the following form: Z(t) = mt + aB(t)
+ compound Poisson process,
(2-3)
where m is a non-random constant which may be taken to be 0. If we assume sample function continuity, we are given a Brownian motion. Therefore it is reasonable to take white noise B(t) as the innnovation in question. We can now discuss functionals of B ( t ) ' s , namely with a choice of white noise to be the system of i.e.r.v.'s we shall aim at the following. (1). Determination of a class of random variables t h a t can be expressed as functionals of the elementary r a n d o m variables, t h a t is of white noise. (2). Each elementary r a n d o m variable can be thought of as a variable of r a n d o m functionals in question, so t h a t the calculus is to be established as the analysis of functionals of the variables which are in the system of the i.e.r.v.'s.. (3). T h e analysis thus established would elucidate the n a t u r e of r a n d o m phe nomena represented by white noise functionals. W i t h this new tool it is expected t h a t one can explore new research problems in biology. (4). As the new areas in the development of white noise analysis there are two topics besides its own research in probability, one is quantization of what have been obtained so far, and the other is to find new ideas for the development of harmonic analysis arising from the infinite dimensional rotation group. W i t h these aims in mind we are going to carry on white noise analysis in what follows. Before starting the theory it would be worthwhile to list the main charac teristics (which are, in fact, advantages) of our white noise analysis.
277 (i) Having introduced the notion of elementary random variables, the basic phi losophy of white noise analysis, which is in line with functional analysis, has been established. (ii) The part of the theory, in concepts and in methods, that cannot be approx imated by any finite dimensional analysis plays essential roles. (iii) With the notion of elementary random variables which are variables of func t i o n a l , differential and integral operators in those variables are defined and they are naturally led to quantum probability theory. (iv) Some random fields indexed by a manifold can be dealt with within our white noise analysis, and there is discovered complex and profound way of depending of variables. Such a way has not been observed before. (v) Classical theory of functional analysis has been restored in many places within our analysis. Thus, this article gives a very brief overview of the theory which has beendeveloped since 1975 (see [8],[9]) with emphasis on the properties (ii), (iii) and (iv) mentioned above and discusses some future directions with many applications to various fields in science, in particular to molecular biology. §3. Brownian motion and white noise Having been suggested by the biological phenomenon of Brownian motion, we give a mathematical definition. Let (£l,B,P) be a probability space. Each LO in Q, may be thought of as a molecule of grains of pollen. The parameter tin R represents the time and B(t,uj) denotes a trajectory of a molecule LO. For each t, B(t) — B(t, LO) is a random variable and the probability distribution of B = {B(t),t £ R] is given by (1) B is a Gaussian system, namely for every n and any )£'(t)dt is well defined and is a continuous linear func tional of £ G S . As a result, an ordinary random variable B(£,u>) is defined by
B&u) = -J°° B(t,u)('(t) dt (= y°° B(i,w)«i) dt)
(3.1)
By the properties (1) ~ (3) of Brownian motion, it is proved that #(£) is an (ordinary) Gaussian random variable with mean 0 and variance ||£|| 2 = f £(t)2dt and that {£(£); £ G 5} is a Gaussian system. Since £(£ + rj) = B(£) + B(rj), "£ and rj are orthogonal" implies that "#(£) and B{r}) are independent" Because of the assumption (£,ry) = / £(t)rj(t)dt = 0, the covariance E[B(()B(rj)] = \E[B{i + T7)2 - 5(£) 2 - B(ri)*\ = | ( | | £ + V\\2 - ||£|| 2 - ||ry||2) = (£,;/) vanishes. If, in particular, £(t)^(] dP(uj) - / ,
1
= exp[-^||£||2],
(3.2)
279 which is the characteristic function of B(£) evaluated at 1. While, the B(£) is the canonical bilinear form of a sample function B(t) and a test function £(] dfi(x),
(3.3)
JE*
if one can think of an infinite-dimensional analogue of the S. Bochner theorem which gives a one-to-one correspondence between probability measures on Rd and characteristic functions. In reality, an analogy holds with some additional restrictions. Namely, the socalled Bocher-Minlos theorem asserts the following (see, e.g., [7], [9]). Let E C L2(Rd) C E* be a Gel'fand triple, that is, E is a nuclear space and E* is the dual space of E. If a functional C(£), £ € E, satisfies (1) positive definite, (2) continuous, and (3) C(0) = 0, then there is a unique probability measure (distribution) // on E* such that (3.3) holds. Existence and uniqueness of the white noise measure // have thus been guaran teed. With respect to this measure fj, almost all elements x in E* axe viewed as sample (generalized) functions of B. Hence, a functional 's, with £ G E, of degree n. Two such Hermite polynomials are orthogonal if their degrees are different. Also note that the collection of polynomials is dense in (L2). Hence we have proved the following Wiener-Ito decomposition theorem. Theorem 1. The Hilbert space (L2) admits a direct sum
decomposition
(L2)=®nHn.
(3.4)
Remark 1. A member of Hn is a homogeneous chaos of degree n in N. Wiener's terminology. Also, it is called an n-ple Wiener integral after K. Ito. In quantum mechanics Hn is the collection of states where just n Bosonian particles are found. In view of this (3.4) is called a Fock space. Remark 2. Actual construction of a Fock space, namely that of Hn employs Hermite polynomials Hn's in < x,( >'s. We claim that Hn{< x,£ >) is orthogonal (unlike the Schmidt orthogonalization) to all the Hermite polynomials in any < x,rj >'s of degree other than n. This property gives an advantage of the so-called Wiener expansion of (JL2)-functionals. What we have discussed so far can be generalized to those in the case of multi dimensional parameter space, say Rd instead of R — R} (d = 1). The basic nuclear space is now taken to be a subspace of L2(R ). The structure of the Fock space has no essential change. Note that the formal notation B(t) is no longer used, but we often use the notation W(t) and again, x G E* is a sample function of W. For the case d = 1 we like to use B(t) since it is a traditional and intuitive notation. We now introduce the so-called <S-transform S which is given by (Stp)U) = C(0
f
exp [< x, £ >]• ^ n e above integral is equal to Pt(a-
/ i(s) ds), Jo
dudfi(x), duMxl
282 where pt is the heat kernel: pt{u) = i^- exp [— ^ ] . There are various roles played by a delta function, among others it serves to give the pinning effect at a fixed point a and at a fixed instant t for the trajectories interfered by fluctuation expressed as a function of B(t). We originally used such a delta function to have a visualized expression of a path functional, the average of which gives the propagator in quantum dynamics. By doing so, we did follow the idea of R. Feynman. Later, we have given many applications in biology.
Fig.3 An example of application of such a delta-function to molecular biology may be found in investigation of polymer's behavior. A train of cells may have in tersections or double points as is illustrated in Fig.3 above. The picture is like a two-dimensional trajectory of a Brownian motion B(t). Hence a double point may be found by using a generalized Brownian functional 8o(B(t) — B(s)). Finer computation related to this functional is given in the paper [3]. We are now ready to introduce a class of generalized white noise functionals involving those appeared in Examples 1, 2, and 3. Again, the parameter space is taken to be R. Recall that the <S-transform carries the (L 2 )-functionals to the U-functionals, denoted by U(£), of £. If the transform is restricted to Hn, then U(£) is expressed in the form
(S ! ||F||n, where || • || and || • || n are norms in (X 2 ) and L2(Rn), an isomorphism: Hn * y/nlL2(Rn)\
respectively. Further we have (4.2)
283 This isomorphism tells us that a functional in Hn is a functional defined on an infinite dimensional space E*, however the functional has a representation in terms of a function defined on the finite dimensional space Rn. Also this isomorphism, together with examples given above, would suggest us a method how to extend the space Hn. Namely, we can appeal to the theory of the Sobolev space of negative or der, which is an extension of L2(Rn) and members of which are allowed to have some singularities or degeneracies. For example, the ?7-functional U(£) = / f(u)£(u)ndu is associated with J f(u) : B(u)n : du and the kernel function F{u\,v,2,- " -,un) may be expressed in the form f(u\)6{u2 — u\)$(u$ — U\) ■ ■ ■ 6(un — Ui) which is a member of the Sobolev space H~ ?{Rn) of order -2±± over Rn. It is therefore natural to have a diagram: Diagram
Hn+ «->
H^(Rn)A,
Hn~L\Rn)\ Hn~
^H-^{Rn)A.
The isomorphism in the second line has already been established, so we come, by restriction and with a stronger topology, to the first line. Taking the dual spaces of Hn+ and H 2 (i?") A , respectively, we obtain the isomorphism in the bottom line. The space Hn~ is the Hilbert space of generalized white noise functionals of degree n, and the norm is denoted by | ||_ n . The weighted direct sum (L2)c~ =®ncnH-,
c=(cn)
(4.3)
is the subspace of generalized white noise functionals, where cn > 0, monotone decreasing and c n —> 0. The symbol cnH~ denotes the Hilbert space with norm cn\\ \\-n- It is noted that the Donsker's delta function is a generalized white noise functional with cn = n - 1 ' 2 . §5. Generalized white noise functionals II We now come to a somewhat modern construction, by using a second quantized. operator, of a space of generalized white noise functionals. Apart from the motiva tions we are going to give a definition in a natural manner. The method is due to Kubo and Takenaka [18], and then Potthoff and Streit have developed and given a characterization of generalized functionals [23]. We start again with the basic Hilbert space (X 2 ). As was mentioned in the Introduction, we follow an analogue of a Gel'fand triple where the basic Hilbert space is taken to be an X 2 -space of functions on a finite dimensional space. First, start with a triple involving the Schwartz space 5 , which is a nuclear space, and the space 5 ' of tempered distributions :
Sc
L2(R) CS',
284 where L2(R) is the basic Hilbert space. To form a triple in the infinite dimensional case, we take the space {L2) to be the basic Hilbert space, and introduce a nuclear space (S) in the following manner. Take a self-adjoint operator d2
2 H = -—1+u z
du
3
+l
acting on the space L2(R). The second quantized operator T(H) acts on 0 „ I (Rmn\)'A Through the diagram in the last section, we are given an operator T(H), keep the same notation, acting on (L2)~. In the same manner operators T(HP) = T(H)p,p > 1, are defined. Set (S)p = Domain(T(H)p). It is a Hilbert space with the norm p || ||p defined by \\ 1. Then, the following assertion is proved. Proposition 1. 1) (5) is a nuciear space. 2) (S) is an algebra. 3) Exponential functions of the form exp[< x, £ >] are members of (5). Definition. The space (S) is called the space of test The following theorem is due to I. Kubo.
functionals.
Theorem 2. Any functional ] is a test functional, that is, it is in the space (S). This means that ^p(x) can be a generalized functional. Hence we can prove the following assertion. Proposition 2. The S-transform
extends to a transform on (5)*.
Thus extended transform is still called the S-transform. §6 W h e n is a functional a white noise functional? Characterization theorem. When a functional 0, (see Sec. 5) 2 2 \U(0\= / =
d jR jRd
ijdXpiu) « *((u)dXF(u)
for all £ € S(R ), due to the Schwartz theory of distributions. We are now interested in the counter part of the Schwartz theorem in the case of white noise for (5)*. (See Y. Yokoi [28].)
287 T h e o r e m 4. Let t/> be in (S)+. Then, there exists a unique finite measure du^ on E* such that with a continuous kernel function F on Rn. Then, the kernel associated to dt^p is nF(ui,u2,...,un_i,t). (8.2) Proof. For : exp[s < x,T] >] : we have
= u(0 == exp [s(f, ??)] -E *—■'
sn n\
as its ^-functional. Its Frechet derivative is
sV(t)U(0 --
~^{n
sn ^ \n—1 rtWi V) -1)!
Taking the coefficient of sn we come to the conclusion for this particular case. Generalization is possible, since the algebra generated by the exponential functions exp[a < x,r] >],?? E E, is dense in (L2). Hence, we have the formula (8.2). We also define a (smeared) differential operator d(r]) (often written simply as drj)
d(r}) = JV(t)dtdt,
rjeE.
The next operator acting on (S)* is a creation operator. Let
* in (S)* such that =* determined by the above equation may be denoted by d*ip- Thus we have introduced an operator d* acting on the space of generalised white noise functionals
(sy.
293 P r o p o s i t i o n 3 . 1) The domain of df is (5)*. 2) d* maps (S)* into itself. 3) d* maps Hn into Hn+i. In terms of the kernel function, it holds that if a symmetric generalized function Fn on Rn is associated to ip, then so is (F 8t)(u1,U2, ...,tt n +i) to d*ip, where means the symmetric tensor product. Proof is almost trivial and is omitted. Definition. The operator d* defined by the formula (8.3) is called the creation operator. Example 3. Let ip be : B(t)n
: . Then
a t > = : B{t)n+l : . A good application of the action by d* can be seen in the theory of the HitsudaSkorohod integral, where the integrands are not necessarily non-anticipating. Proposition 4. The following commutation
[da,dt]=o,
relations hold.
[d*s,d;} = o
[d„dn = 6(s-t)I,
(8.4)
where [•, •] stands for the Lie bracket: [A, B] = AB — BA. This assertion is easily proved. Multiplication mt by B(i) is expressed in terms of the operators dt and d*:
mt = dt + d*.
(8.5)
We now note that by using the concepts of multiplication operators just in troduced in (8.5) above we can discover some relations between our white noise analysis and the quantum probability theory. For this we refer to the grand-chose by L. Accardi, R.L.Hudson, K.R.Parthasarathy, N.Obata et al. 3mm The smeared operator is denoted by 0 Txx(h) TYY(h)
= 0.3
exp[-0.15h],
= -0.015exp[-0.15fc]+ 0.032exp [-0.075/*],
TxY(h)
= 0.11 exp [-0.15ft] - 0.15exp [-0.075ft].
With these information we can see the probabilistic character of the fluctuation of a standing human body. 3) Given an equation X(t) = (-X + fif(t)dt)X(t),
(9.2)
where the initial value X(0) is given. Then, associated ^/-functional satisfies
mo = -\ + -(-
tif(t)t(t))U(t,Z).
The solution is given by
[7(t,0=exp -\t + v / f(u)Z(u)du f(u)£(u)du JO Jo
u(o,0-
Hence, we see that X(t) is obtained by applying creation operators d* and their powers to X(0). Note. This example is suggested by Professor Yamanoi at Meijo University. 4) Kimura's approach to population genetics (see [17]). Various profound examples of a stochastic differential equation appear in the Kimura's theory of population genetics. As everyone knows, the probability dis tribution of a Markov process X(t) is determined by the transition probability P(X(t) € A | X(s) = a),s < t. In the case of the gene frequency, the transi tion probability has a density (a,x,t) in the state variable x and it satisfies the following diffusion equation dS »
=
1 d2 iNO?*1 ~ *»■
For further equations related to this topic, see [17].
(9 3)
'
297 §10. Approaches to q u a n t u m p h e n o m e n a II As in the finite dimensional case, Laplacian operator plays a dominant role in our calculus, particularly for evolutional phenomena, and it is well known that Laplacian has a close connection with the Dirichlet form. Being motivated by Fukushima's work [6], we shall discuss Dirichlet forms and work out a representation of the free massive relativistic scalar boson field in terms of white noise analysis. The analysis is essentially infinite-dimensional, so that it is relevant to the case in question. The idea of Dirichlet form in quantum dynamics may shortly be expressed as fol lows. Introduce a Hamiltonian (a self-adjoint operator) H = — A + V on L2(Rd,dx). Then, under some mild conditions on V we know that H admits a unique, strictly positive, ground state y 0 Then, we are ready to have the so-called ground state representation. Let U denote the unitary operator which maps L2(Rd,dx) to L2(R , ifo(x)2dx) given by
(Uf)(x) = K-VX*). Set HA = U~lHU to have
{f,HAg)= = \f
e(f,g)
{Vj,Vg){x)vo{x)2dx.
Thus, in the ground state representation, the Hamiltonian takes a particularly simple form. If it is difficult to define H as a self-adjoint operator on L2(Rd, >= /
tp(x)V(x)diJ,(x),
JE*
where the duality on the left-hand side of the above equation is the one between (5) and (5)*. The space L2(E*, > = /(V(x))V(x)dn(x)
298 where Vy? is defined to be (dtp; t € Rd) and where (V0-Vtf)(*)= /
JRd
{dt)(x)dt
which belongs to (5). Therefore S is a well-defined sesquilinear form on (5). Its associated quadratic form will be denoted as £( dk) k
with dk = / ek(s)d3ds. If if is an integral kernel K(s, t), then we have the following expression: HA = - /a s 2 d5 + / x ( s ) ( l +
K)(s,t)dtdsdt.
§11. Variational calculus for random fields. Again we consider biological phenomena interfered with by fluctuation which may be expressed mathematically by white noise indexed by a space-time param eter, say a point in R . We are interested in observed data which are viewed as white noise functionals depending on a manifold C in Rd, denote it by X(C). An example of X(C) is that it is a function of random variables indexed by a point that runs through a region determined by C. In general, a random function X(C) behaves in a very complex manner as C deforms. We can therefore observe complex profound way of depending for the X(C) by talcing variations SX(C) as is seen in the examples below. It deserves mention that even for X(t),t € Rd, we can form various kinds of X(C) from X(t) by integrating it in t over a domain determined by C or by some other way in order to investigate the dependency of the given X(t). Example 1. Let C be a simply connected closed plane curve, homeomorphic to a circle, in the random emvironment. Let X(C) be a random field which is a function of white noise x(w), u £ D, where D is a domain with boundary C: X(C) = f f(x(u))du.
(11.1)
JD
For a general random field X(C), we may deform C to have a variation SX(C), which is expressed as an integral only on the bounary C. Then, we should have an equation which is a generalization of the stochastic infinitesimal equation for an ordinary stochastic process X(t),t € RWe now propose a stochastic variational equation for X(C) in the following form. 6X(C) = *(X(C"),C" < C,Y(s),s swhere Y(s) is (generalized) innovation for X(C) inside of C.
e C,C,6C),
(11.2)
and C < C means that C" is
300 The equation (11.2) is proposed as a generalization of the Levy's stochastic infinitesimal equation (2.1) for X(t),t € i?, mentioned in Sec.2.
Fig.6. Good examples of a stochastic variational equation are a generalization of Langevin equation discussed in 1) of Sec.9 and a functional equation called a Volterra form. Example 2. Generalized Langevin equation. (See 1) in Sec.9.) Let C be a sphere in the space and let (C) denote the domain (ball) enclosed by C. Consider a variational equation SX(C) = -X(C) f f(s)6n(s) Jc
ds + X0 f v{s)d*6n(s)ds, Jc
(11.3) C>C0,
with the initial data XQ. The solution is given by X(C) = X0 f exp[-p(C,u)f(u)]d*uv(u) J(C)
du.
Example 3. Variational equation of the Volterra form. Let r\ be a two-dimensional valued analytic function representing a contour C and let U(r]) — U(r]^) be the 5-transform of a white noise functional X(C) depending on a contour C. A varia tional equation for U(r}) is of the Volterra form if it can be expressed in the form
% ) =
/ Jo
f(v,U,s)6V(s)ds.
(11.4)
An integrability condition is known (Si Si [26], 1995). At present we are far from a general theory of the variational calculus for random fields. However the above examples suggest interesting future directions.
301 §12. Approximations to white noise We consider approximations of white noise with one-dimensional parameter. First it is noted that almost all sample functions of white noise are generalized func tions of the time parameter t and that its spectrum is flat, that is, it is uniformly distributed over the entire time domain (—00,00). Hence, for actual applications, we need to approximate white noise so that sample functions become acceptable ordinary functions. There are several ways of approximations. Three typical methods are illustrated below. (1) Since white noise with one-dimensional parameter may be realized as the time-derivative of a Brownian motion B(t),t € (—00,00), so that a simple approx imation may easily be introduced by using B(t). Set Xa{t) = -(B(t a Then Xa(t)
+ a)-B(t)),
(12.1)
is a stationary Gaussian process with mean 0 and covariance function
la(h) = °-P, = 0,
\h\ 0, is a complex white noise (see [9] Chapt.6) and where Z ( - A ) = Z(X) holds. Then the band limited white noise Bw(t)
can be expressed in the form
w Bw
exp[itX]Z(X)dX. /
.w
(12.3)
302 It may be useful also for other purposes to discuss a general Gaussian process X(t) for which the spectral representation is of the form X(t) = r
exp[iXt]A(X)Z(X)dX.
J —oo
Then, the band limited process is of the form
w
:
M*) /
-w J-w
exp [iXt]A(X)Z(X)dX. exp[iXt]A(X)Z(X)dX.
Proposition 1. It holds that
X^^X^S^,
*«*,w
ii) The entropy H(Xw) of the Xw(t) per degree of freedom is defined by the average of the entropy computed by the joint distribution for successive sam ple points. Actual computation is as follows. We use the expansion (12.4) of Xw(t)- Let [0,T] be the time interval of observation. Then we have a system X = Xk=Xw(kf),k = 0,l,...,[^} = n. The entropy H{X) of X = {XuX2,...,Xn) r is |-(log(27r|V | + 1), where V is the covariance matrix of X. For the white noise case, H(X) is equal to y(log (2TT) + 1). We see, in particular, that the entropy is proportional to WT. hi) Sample function properties. Almost all sample functions of Xw{t) are ana lytic (with a suitable choice of a version). The k-th derivative is given by rW w
x$\t) --/
k exp[it\](i\) exp [it\](i\)kA(\)Z(\)d\, A(\)Z(\)d\,
(12.5)
J-W
-w and its expansion has coefficients rW
X$C£)
=J
\
exp [^](iX)kA(X)Z(X)dX.
Note that even in the white noise case, the Xw
(12.6)
( ^ r ) are not independent.
As for the forecasting problem for a band limited Gaussian process, we can say that if one is given its past values on some time interval, its future values are completely determined. So, one should be careful on the approximation by limiting the band when causality is involved.
304 For white noise functional, if the variable B(t) is approximated by a band limited white noise, then its functional can be regarded as those of independent variables Xk, k — ..., - 1 , 0 , 1 , 2 , . . . . Unfortunately causality is then hidden. (3) Ornstein-Uhlenbeck process approximation to white noise Consider an Ornstein-Uhlenbeck process Ua[t) formed by a white noise B(t): Ua(t) = af
ex-p[-a(t-u)]B{u)du,a>0.
(12.7)
J — oo
Simple computation gives the covariance function -ya(h) = E(Ua(t + h)Ua(t)) follows: 7 a (/i) — a2
exp [-a(t + h — u)] exp [—a(t - u)] du,for
as
h > 0.
J — oo
Hence, we have la(h) = - exp [-a|h|].
(12.8)
The idea is that for large a ya(h) is close to the delta-function as is illustrated in Fig. 7 and by the fact that J_ ~fa(h)dh = 1.
Fig. 7. Ta(h) The spectral representation of the covariance function is Z" 00
la(h)=
I
a2
exp[ihX]a2
2dX.
(12.9)
The spectral density function ^rrp", tend to the flat spectrum as a tends to oo. Note. Professor Yamanoi encouraged the author to give the above example. The significance of this method of approximation is that the Ornstein-Uhlenbeck process has the simple Markov property. Observe the process up to time t. Then the best prediction for the future values depends only on the value of the process at t only. Indeed, we can forget about the values before t. A white noise enjoys independency more than simple Markov property; namely it has independent values at every infinitesimal interval dt. In this sense, so far as stochastic dependency is concerned, an Ornstein-Uhlenbeck process stands next to the independent system.
305 REFERENCES
[1] P. Levy, Problemes Concrets d'Analyse Fonctionnelle. Gauthier-Villars, 1951. [2] P. Levy, Quelques Aspects de la Pensee d'un Mathematicien. Albert Blanchard, 1970. [3] M. de Faria, H. Watanabe et al. Intersection local times as generalized white noise functionals, to appear in Acta Appl. Math. [4] I. Doku, On the Laplacian on a space of white noise functionals, Tsukuba J. Math. 19-1 (1995), 93-119. [5] R. Feynman, Space-time approach to non-relativistic quantum mechanics, Rev Mod Phys 20 (1948), 367-387. [6] M. Fukushima, Dirichlet Forms and Markov Processes. North-Holland / Kodansha, 1980. [7] I.M. Gel'fand and N.Ya. Vilenkin, Generalized Functions, vol.4, Academic Press, 1964. [8] T. Hida, Analysis of Brownian functionals. Carleton Math. Notes 13, 1975 [9] T. Hida, Brownian Motion. Springer-Verlag, Applications of Math.11. 1980. [10] T. Hida and M. Hitsuda, Gaussian Processes. American Math. Soc. 1993. [11] T. Hida, H.-H. Kuo, J. Potthoff and L. Streit, White noise. An Infinite Dimen sional Calculus. Kluwer Academic Pub, 1993. [12] T. Hida, J. Potthoff and L. Streit, Dirichlet forms and white noise analysis. Comm. math. Physics, 116 (1988), 235-245. [13] Ed. T. Hida, Mathematical approach to fluctuations, vol.11, Complexity and nonlinearity, World Scientific, 1995. [14] Z.Y. Huang, Quqntum white noises - White noise approach to quantum stochas tic calculus, preprint, 1991. [15] T. Kato, Perturbation Theory for Linear Operators. Grundlehren der Math. Wissenschaften 132, Springer-Verlag, 1976. [16] Y. Kiho, Y. Shikata and T. Hida, Fluctuation in protein, chymotrypsin. to appear in Proc. Japan Academy. See also. Y. Kiho et al. Functional word in a protein, Proc. Japan Academy 72, Ser.B (1996), 85-90. [17] M. Kimura, Diffusion models in population genetics, J. Applied Probability 1 (1964), 177-232. See also the book. J.F. Crow and M. Kimura, An Introduction to Population Genetics Theory. Burgess Pub. Co. 1970, Chap. 8. [18] I. Kubo and S. Takenaka, Calculus on Gaussian white noise I-IV. Proceedings of Japan Academy, vol 56 (1980) - vol.58 (1982). 19] H.-H. Kuo, White Noise Distribution Theory. Probability and Stochastics Series. CRC Press, 1996. 20] K. Naka et al. A microcomputer system for spatiotemporal visual receptive field analysis. IEEE Trans, on Biomedical Engineering, vol. BME-32, no.l (1985) 56-60. 21] N. Obata, White Noise Calculus and Fock Space. Lecture Notes in Math. #1577, Springer-Verlag, 1994. 22] F. Oosawa et al. Fluctuation in living cells: Effect of field fluctuation and asymmetry of fluctuation. Stochastic Methods in Biology. Springer Lecture Notes in Biomathematics. no.70, ed. M. Kimura, G. Kallianpur and T. Hida, 1987, 158-170.
306 [23] J, Potthoff and L. Streit, A characteriiation of Hida distribution, J. Funct. Anal. 101 (1991), 212-229. [24] K. Saito, A group generated by the Levy Laplacian and the Fourier-Mehler transform. Stochastic analysis in infinite dimensional spaces, ed. H. Kunita and H.-H. Kuo, Longman Sci. & Tech. , 1994, 274-288. [25] E. Schrodinger, What Is Life ? With Mind and Matter and Autobiographical Sketches3 new ed. Cambridge Univ. Press, 1992. [26] Si Si, A note on Levy's Brownian motion, Nagoya Math. J. 108 (1987), 121 - 130. The same title II, Nagoya Math. J. 114 (1989), 165-172. See also Integrability condition for stochastic variational equation. 1995. Volterra Center Pub. no.217. [27] L. Streit, White noise analysis in quantum physics. Pub. Univ. da Madeira, Funchal, Portugal, 1993. [28] Y. Yokoi, Positive generalized Brownian functionals. in White Noise Analysis, Mathematics and Applications, World Scientific Pub. Co. 1989, 407-422. [29] H. Yonezawa, White noise analysis for the center of ravitation of the human body. Master's Thesis, Meijo Univ. 1996. [30] K. Yosida, Functional Analysis, second edition, die Grundlehren der math. Wiss. in Einzeldarstellungen Bd. 123, Springer-Verlag, 1968.