A new study that left data to interact in a digital “primordial soup” has found that self-replicating patterns emerge.
In 1970, British mathematician John Horton Conway created a zero-player videogame, dubbed Conway’s Game of Life. The game takes place on a grid of squares, and the only input a user can have is setting the initial state.
The rules, decided by Conway, are as follows:
For a space that is occupied, each cell with one occupied neighbor or no neighbors dies, as if by solitude. Each occupied space with four or more neighbors also dies, as if by overpopulation. If an occupied cell has two or three neighbors, it will survive to the next step (i.e. it will remain occupied as the whole grid moves forward one step). A space that is unoccupied, meanwhile, will only become populated only when it has three occupied spaces beside it.
Though only a few simple rules are followed, complex and self-replicating patterns and behaviors soon emerge as each step progresses.
In the new study, which has not yet been peer-reviewed, researchers from Google, the Paradigms of Intelligence Team and The University of Chicago were attempting to gain a little insight into how life arises from the interaction of non-living molecules.
“While searching for a general definition of life, we observe a major change in dynamics coincident with the rise of self-replicators, which seems to apply regardless of substrate,” the team write in their paper. “Hence, we may use the appearance of self-replicators as a reasonable transition to distinguish pre-life from life dynamics.”
To investigate, the team placed tens of thousands of snippets of computer code, randomly mixed in a sort of digital primordial soup of random noise, which were allowed to interact over up to 16,000 epochs.
“Each program consists of 64 1-byte characters which are randomly initialized from a uniform distribution. In these simulations, no new programs are generated or removed – change only occurs through self-modification or random background mutations,” the team explains. “In each epoch, programs interact with one another by selecting random ordered pairs, concatenating them and executing the resulting code for a fixed number of steps or until the program ends.”
The programs were not given any goal or reward mechanism rewarding survival or replication, and yet from this soup the team found that self-replicating programs emerged around 40 percent of the time. The replicators did not always survive, sometimes being destroyed in further interactions.
State transitions – where the replicators came to dominate the system – were rare with a random initial setup, taking place only three times out of 1,000. When a self-replicator – extracted from previous simulations – was placed in a random soup, however, state transitions took place 22 percent of the time within only 128 epochs.
These experiments were all in something analogous to a zero-dimensional environment, as the programs all had a uniform chance of interacting with each other, as if they were compressed into a single point. But the team also experimented with one- and two-dimensional environments, where the programs could only interact with neighboring code.
“In the resulting simulation, self-replicators still emerge,” the team explained. “The main difference compared to the usual setup is given by the speed of propagation of self-replicators: if all tapes are allowed to interact in a soup of size n, once a self-replicator emerges it typically takes over at least half of the soup in about log n steps; on the other hand, in a 2D soup it takes a number of epochs that is proportional to the grid side lengths, which is √n for a square grid.”
“Because of this difference, 2D grid experiments are very helpful to visualize how self-replicators evolve and their behaviour. It also provides a fertile ground for multiple variations of self-replicators to co-exist and compete with each other.”
The result, shown in an accompanying YouTube video, included self-replicators coming to dominate the system.
Though the experiments are of course not completely analogous to the primordial soup from which life on Earth emerged, they nonetheless show how complexity and self-replicators can emerge in the random interactions between “inert” constituent pieces. The team hopes to continue their work, and answer such questions as whether even more complex functions could arise, and whether evolution in computational systems is the same or notably different from biological systems.
“We argue that this set of computational substrates shows a new way of discovering and arriving at life. “The behavior of such systems is markedly different from auto-catalytic networks and biologically-inspired systems,” the team concludes. “Moreover, our initial explorations and the ones observed in similar systems such as Tierra and AVIDA suggest that this may be just the beginning of the complexity of behaviors that can emerge and flourish in such systems.”
The study, which has not yet been peer-reviewed, is posted to preprint server arXiv.
Source Link: Spontaneously Self-Replicating Programs Emerge In Digital "Primordial Soup"