HackerPapers

arXiv:2406.19108cs.NE

Computational Life: How Well-formed, Self-replicating Programs Emerge from Simple Interaction

Blaise Agüera y Arcas, Jyrki Alakuijala, James Evans, Ben Laurie, Alexander Mordvintsev, Eyvind Niklasson, Ettore Randazzo, Luca Versari

Abstract

The fields of Origin of Life and Artificial Life both question what life is and how it emerges from a distinct set of "pre-life" dynamics. One common feature of most substrates where life emerges is a marked shift in dynamics when self-replication appears. While there are some hypotheses regarding how self-replicators arose in nature, we know very little about the general dynamics, computational principles, and necessary conditions for self-replicators to emerge. This is especially true on "computational substrates" where interactions involve logical, mathematical, or programming rules. In this paper we take a step towards understanding how self-replicators arise by studying several computational substrates based on various simple programming languages and machine instruction sets. We show that when random, non self-replicating programs are placed in an environment lacking any explicit fitness landscape, self-replicators tend to arise. We demonstrate how this occurs due to random interactions and self-modification, and can happen with and without background random mutations. We also show how increasingly complex dynamics continue to emerge following the rise of self-replicators. Finally, we show a counterexample of a minimalistic programming language where self-replicators are possible, but so far have not been observed to arise.

arXiv comments
20 pages; updated introduction with further related work
Journal reference
DOI
Subjects
cs.NENeural and Evolutionary Computing cs.AIArtificial Intelligence

On Hacker News

Linked by 8 identifiable commenters in 13 comments across 11 threads, from Jul 2024 to Aug 2026. Found in 2 HN submissions from Jun 2024 to Jun 2024. Open submission discussions.

Comments linking this paper, per year.

Discussed in comments11 threads

    • Computational Life Reactor (CLR) is an interactive browser implementation by Alex Borger of the computational-life experiments studied by Agüera y Arcas and collaborators https://arxiv.org/abs/2406.19108. Random byte tapes are repeatedly paired and executed in the BFF language…

      a2xView on HNParent context

    • There have been experiments in "digital primordial soup", where primitive programs are cultivated under conditions with evolutionary pressure. Computational Substrates: How Well-formed, Self-replicating Programs Emerge from Simple Interaction - https://arxiv.org/abs/2406.19108…

      lioetersView on HNParent context

    • This is every cool research. Do you have any idea why the authors chose Z80 as the program language? I have seen other studies in the same spirit that use simpler toy languages like Brainfuck (https://arxiv.org/abs/2406.19108) and I wonder if you could get higher execution speed…

      markisusView on HNParent context

    • See also: https://arxiv.org/abs/2406.19108 > We show that when random, non self-replicating programs are placed in an environment lacking any explicit fitness landscape, self-replicators tend to arise. We demonstrate how this occurs due to random interactions and…

      bob1029View on HNParent context

  1. Designing a Language (2017) 1 comment
    • This paper? https://arxiv.org/abs/2406.19108 I've read it many times. It introduced me to the idea of using self-modifying programs. I've built several prototypes that use their exact instruction set, but I haven't found a way to guide the evolution in a desired direction yet.…

      bob1029View on HNParent context

    • > The advent of large language models have made this type of content relatively easy to churn out on demand, and the majority of the review articles we receive are little more than annotated bibliographies, with no substantial discussion of open research issues. I have to agree…

      bob1029View on HNParent context

    • This sounds like something more up the alley of linear genetic programming. There are some very interesting experiments out there that utilize UTMs (BrainFuck, Forth, et. al.) [0,1,2]. I've personally had some mild success getting these UTM variants to output their own children…

      bob1029View on HNParent context

  2. Brainfuck Enterprise Solutions 1 comment
    • Brainfuck is largely a joke for most developers, but in certain kinds of research it is taken very seriously due to its ease of implementation. I think this is probably the most interesting paper involving it: https://arxiv.org/abs/2406.19108 > In this paper we take a step…

      bob1029View on HNParent context

    • It's an implementation of Google's research https://arxiv.org/abs/2406.19108 Previous discussions: https://news.ycombinator.com/item?id=40820022 https://news.ycombinator.com/item?id=41080435 Since author hasn't setup a github.io link, you can try it using githack…

      smusamashahView on HNParent context

    • https://arxiv.org/abs/2406.19108 Here's a direct link to the paper. I have not read it yet but the abstract reminds me of a recent post discussing using brainfuck as a way to do program synthesis.

      raidicyView on HNParent context

    • previously: https://news.ycombinator.com/item?id=40820022 Link directly to the arxiv paper: https://arxiv.org/abs/2406.19108

      netcraftView on HNParent context

    • Synthetic and generated data might not be garbage. Consider random chess positions. Those are generated,yet there's an engine out there that has objectively a higher chance of winning from that position. There was also a paper on persistent computer programs after running random…

      Out_of_CharacteView on HNParent context

Submitted to Hacker News

Connected through shared HN threads, not inferred similarity or a recommendation.