“自复制自动机”的版本间的差异

来自集智百科 - 复杂系统|人工智能|复杂科学|复杂网络|自组织
跳到导航 跳到搜索
(没有差异)

2021年12月1日 (三) 11:24的版本

此词条暂由彩云小译翻译,翻译字数共2516,未经人工整理和审校,带来阅读不便,请见谅。

The first implementation of von Neumann's self-reproducing universal constructor.[1] Three generations of machine are shown: the second has nearly finished constructing the third. The lines running to the right are the tapes of genetic instructions, which are copied along with the body of the machines. The machine shown runs in a 32-state version of von Neumann's cellular automata environment, not his original 29-state specification.


right|thumb|400px|The first implementation of von Neumann's self-reproducing universal constructor. Three generations of machine are shown: the second has nearly finished constructing the third. The lines running to the right are the tapes of genetic instructions, which are copied along with the body of the machines. The machine shown runs in a 32-state version of von Neumann's cellular automata environment, not his original 29-state specification.

右 | 拇指 | 400px | 冯 · 诺依曼的自复制通用构造函数的第一个实现。三代机器显示: 第二个已经接近完成建设第三。右边的线条是遗传指令的磁带,这些磁带随着机器的身体一起被复制。所展示的机器运行在32状态的冯 · 诺依曼的细胞自动机环境中,而不是他最初的29状态规范。

John von Neumann's universal constructor is a self-replicating machine in a cellular automata (CA) environment. It was designed in the 1940s, without the use of a computer. The fundamental details of the machine were published in von Neumann's book Theory of Self-Reproducing Automata, completed in 1966 by Arthur W. Burks after von Neumann's death.[2] While typically not as well known as von Neumann's other work, it is regarded as foundational for automata theory, complex systems, and artificial life.[3][4] Indeed, Nobel Laureate Sydney Brenner considered Von Neumann's work on self-reproducing automata (together with Turing's work on computing machines) central to biological theory as well, allowing us to "discipline our thoughts about machines, both natural and artificial."[5]

John von Neumann's universal constructor is a self-replicating machine in a cellular automata (CA) environment. It was designed in the 1940s, without the use of a computer. The fundamental details of the machine were published in von Neumann's book Theory of Self-Reproducing Automata, completed in 1966 by Arthur W. Burks after von Neumann's death. While typically not as well known as von Neumann's other work, it is regarded as foundational for automata theory, complex systems, and artificial life. Indeed, Nobel Laureate Sydney Brenner considered Von Neumann's work on self-reproducing automata (together with Turing's work on computing machines) central to biological theory as well, allowing us to "discipline our thoughts about machines, both natural and artificial."

约翰·冯·诺伊曼的通用构造器是细胞自动机(CA)环境中的自我复制机械。它是在20世纪40年代设计的,当时没有使用计算机。机器的基本细节发表在冯 · 诺依曼的《自复制自动机理论》一书中,该书由冯 · 诺依曼死后的亚瑟 · w · 伯克斯于1966年完成。虽然通常不像冯 · 诺依曼的其他著作那样广为人知,但它被认为是自动机理论、复杂系统和人工生命的基础。事实上,诺贝尔奖获得者悉尼 · 布伦纳认为冯 · 诺依曼关于自我复制自动机的工作(以及图灵关于计算机的工作)对生物学理论同样重要,它允许我们“约束我们关于自然和人工机器的思想”

Von Neumann's goal, as specified in his lectures at the University of Illinois in 1949,[2] was to design a machine whose complexity could grow automatically akin to biological organisms under natural selection. He asked what is the threshold of complexity that must be crossed for machines to be able to evolve.[4] His answer was to specify an abstract machine which, when run, would replicate itself. In his design, the self-replicating machine consists of three parts: a "description" of ('blueprint' or program for) itself, a universal constructor mechanism that can read any description and construct the machine (sans description) encoded in that description, and a universal copy machine that can make copies of any description. After the universal constructor has been used to construct a new machine encoded in the description, the copy machine is used to create a copy of that description, and this copy is passed on to the new machine, resulting in a working replication of the original machine that can keep on reproducing. Some machines will do this backwards, copying the description and then building a machine. Crucially, the self-reproducing machine can evolve by accumulating mutations of the description, not the machine itself, thus gaining the ability to grow in complexity.[4][5]

Von Neumann's goal, as specified in his lectures at the University of Illinois in 1949, was to design a machine whose complexity could grow automatically akin to biological organisms under natural selection. He asked what is the threshold of complexity that must be crossed for machines to be able to evolve. His answer was to specify an abstract machine which, when run, would replicate itself. In his design, the self-replicating machine consists of three parts: a "description" of ('blueprint' or program for) itself, a universal constructor mechanism that can read any description and construct the machine (sans description) encoded in that description, and a universal copy machine that can make copies of any description. After the universal constructor has been used to construct a new machine encoded in the description, the copy machine is used to create a copy of that description, and this copy is passed on to the new machine, resulting in a working replication of the original machine that can keep on reproducing. Some machines will do this backwards, copying the description and then building a machine. Crucially, the self-reproducing machine can evolve by accumulating mutations of the description, not the machine itself, thus gaining the ability to grow in complexity.

1949年,冯 · 诺依曼在伊利诺伊大学厄巴纳-香槟分校的演讲中明确指出,他的目标是设计一种机器,其复杂性可以自动增长,类似于自然选择下的生物有机体。他问,机器要想进化,必须跨越多大的复杂性门槛。他的答案是指定一个抽象的机器,当运行时,它会自我复制。在他的设计中,自我复制机械包括3个部分: 一个对(‘蓝图’或程序)本身的“描述”,一个可以读取任何描述并构造机器的通用构造机制(无描述) ,以及一个可以复制任何描述的通用复印机。在使用通用构造函数构造描述中编码的新机器之后,使用复制机器创建描述的副本,并将该副本传递给新机器,从而生成可以继续复制的原始机器的工作复制。有些机器会向后执行此操作,复制描述,然后构建一台机器。至关重要的是,自我复制机器可以通过不断累积描述的突变而不是机器本身来进化,从而获得在复杂性中增长的能力。

To define his machine in more detail, von Neumann invented the concept of a cellular automaton. The one he used consists of a two-dimensional grid of cells, each of which can be in one of 29 states at any point in time. At each timestep, each cell updates its state depending on the states of the surrounding cells at the prior timestep. The rules governing these updates are identical for all cells.

To define his machine in more detail, von Neumann invented the concept of a cellular automaton. The one he used consists of a two-dimensional grid of cells, each of which can be in one of 29 states at any point in time. At each timestep, each cell updates its state depending on the states of the surrounding cells at the prior timestep. The rules governing these updates are identical for all cells.

为了更详细地定义他的机器,von Neumann 发明了细胞自动机的概念。他使用的那个由一个二维的细胞网格组成,每个细胞在任何时间点都可以处于29种状态之一。在每个时间步骤中,每个单元根据前一个时间步骤中周围单元的状态更新其状态。管理这些更新的规则对所有单元格都是相同的。

The universal constructor is a certain pattern of cell states in this cellular automaton. It contains one line of cells that serve as the description (akin to Turing's tape), encoding a sequence of instructions that serve as a 'blueprint' for the machine. The machine reads these instructions one by one and performs the corresponding actions. The instructions direct the machine to use its 'construction arm' (another automaton that functions like an Operating System[4]) to build a copy of the machine, without the description tape, at some other location in the cell grid. The description cannot contain instructions to build an equally long description tape, just as a container cannot contain a container of the same size. Therefore, the machine includes the separate copy machine which reads the description tape and passes a copy to the newly constructed machine. The resulting new set of universal constructor and copy machines plus description tape is identical to the old one, and it proceeds to replicate again.

The universal constructor is a certain pattern of cell states in this cellular automaton. It contains one line of cells that serve as the description (akin to Turing's tape), encoding a sequence of instructions that serve as a 'blueprint' for the machine. The machine reads these instructions one by one and performs the corresponding actions. The instructions direct the machine to use its 'construction arm' (another automaton that functions like an Operating System) to build a copy of the machine, without the description tape, at some other location in the cell grid. The description cannot contain instructions to build an equally long description tape, just as a container cannot contain a container of the same size. Therefore, the machine includes the separate copy machine which reads the description tape and passes a copy to the newly constructed machine. The resulting new set of universal constructor and copy machines plus description tape is identical to the old one, and it proceeds to replicate again.

通用构造函数是本细胞自动机中细胞状态的某种模式。它包含一行细胞作为描述(类似于图灵的磁带) ,对一系列指令进行编码,作为机器的“蓝图”。机器逐条读取这些指令并执行相应的操作。指令指导机器使用它的“构造臂”(另一个自动机,其功能类似于操作系统)在单元网格的其他位置建立一个机器的副本,而不需要描述磁带。说明不能包含生成同样长的说明磁带的指令,就像容器不能包含同样大小的容器一样。因此,该机器包括单独的复印机,该复印机读取描述磁带并将一个副本传递给新构建的机器。由此产生的新的通用构造函数集和复印机加上描述磁带与旧的相同,并且它继续进行复制。

Purpose

Purpose

= 目的 =

Von Neumann's System of Self-Replication Automata with the ability to evolve (Figure adapted from Luis Rocha's Lecture Notes at Indiana University[6]). i) the self-replicating system is composed of several automata plus a separate description (an encoding formalized as a Turing 'tape') of all the automata: Universal Constructor (A), Universal Copier (B), Operating System (C), extra functions not involved with replication (D), and separate description Φ(A,B,C,D) encoding all automata. ii) (Top) Universal Constructor produces (decodes) automata from their description (active mode of description); (Bottom) Universal Copier copies description of automata (passive mode of description); Mutations Φ(D') to description Φ(D) (not changes in automaton D directly) propagate to the set of automata produced in next generation, allowing (automata + description) system to continue replicating and evolving (D → D').[4] The active process of construction from a description parallels DNA translation, the passive process of copying the description parallels DNA replication, and inheritance of mutated descriptions parallels Vertical inheritance of DNA mutations in Biology,[4][5] and were proposed by Von Neumann before the discovery of the structure of the DNA molecule and how it is separately translated and replicated in the Cell.[6]

Von Neumann's design has traditionally been understood to be a demonstration of the logical requirements for machine self-replication.[3] However, it is clear that far simpler machines can achieve self-replication. Examples include trivial crystal-like growth, template replication, and Langton's loops. But von Neumann was interested in something more profound: construction, universality, and evolution.[4][5]

Von Neumann's design has traditionally been understood to be a demonstration of the logical requirements for machine self-replication. However, it is clear that far simpler machines can achieve self-replication. Examples include trivial crystal-like growth, template replication, and Langton's loops. But von Neumann was interested in something more profound: construction, universality, and evolution.

的设计传统上被理解为对机器自我复制的逻辑需求的论证。然而,很明显,更简单的机器可以达到自我复制。例子包括平凡的晶体样生长、模板复制和朗顿循环。但冯 · 诺依曼对更深奥的东西感兴趣: 构造、普遍性和进化。

Note that the simpler self-replicating CA structures (especially, Byl's loop and the Chou–Reggia loop) cannot exist in a wide variety of forms and thus have very limited evolvability. Other CA structures such as the Evoloop are somewhat evolvable but still don't support open-ended evolution. Commonly, simple replicators do not fully contain the machinery of construction, there being a degree to which the replicator is information copied by its surrounding environment. Although the Von Neumann design is a logical construction, it is in principle a design that could be instantiated as a physical machine. Indeed, this universal constructor can be seen as an abstract simulation of a physical universal assembler. The issue of the environmental contribution to replication is somewhat open, since there are different conceptions of raw material and its availability.

Note that the simpler self-replicating CA structures (especially, Byl's loop and the Chou–Reggia loop) cannot exist in a wide variety of forms and thus have very limited evolvability. Other CA structures such as the Evoloop are somewhat evolvable but still don't support open-ended evolution. Commonly, simple replicators do not fully contain the machinery of construction, there being a degree to which the replicator is information copied by its surrounding environment. Although the Von Neumann design is a logical construction, it is in principle a design that could be instantiated as a physical machine. Indeed, this universal constructor can be seen as an abstract simulation of a physical universal assembler. The issue of the environmental contribution to replication is somewhat open, since there are different conceptions of raw material and its availability.

注意,更简单的自我复制 CA 结构(尤其是 Byl 循环和 Chou-Reggia 循环)不能以多种形式存在,因此可进化性非常有限。其他 CA 结构,比如 Evoloop 也是可进化的,但仍然不支持开放式进化。通常情况下,简单的复制因子并不完全包含构建机制,在一定程度上,复制因子是由其周围环境复制的信息。尽管冯 · 诺依曼设计是一个逻辑结构,但从原则上讲,它是一个可以被实例化为物理机器的设计。实际上,这个通用构造函数可以看作是对物理通用汇编程序的抽象模拟。由于对原材料及其可得性有不同的概念,环境对复制的贡献问题在某种程度上是开放的。

Von Neumann's crucial insight is that the description of the machine, which is copied and passed to offspring separately via the universal copier, has a double use; being both an active component of the construction mechanism in reproduction, and being the target of a passive copying process. This part is played by the description (akin to Turing's tape of instructions) in Von Neumann's combination of universal constructor and universal copier.[4] The combination of a universal constructor and copier, plus a tape of instructions conceptualizes and formalizes i) self-replication, and ii) open-ended evolution, or growth of complexity observed in biological organisms.[3]

Von Neumann's crucial insight is that the description of the machine, which is copied and passed to offspring separately via the universal copier, has a double use; being both an active component of the construction mechanism in reproduction, and being the target of a passive copying process. This part is played by the description (akin to Turing's tape of instructions) in Von Neumann's combination of universal constructor and universal copier. The combination of a universal constructor and copier, plus a tape of instructions conceptualizes and formalizes i) self-replication, and ii) open-ended evolution, or growth of complexity observed in biological organisms.

冯 · 诺依曼的重要见解是,对机器的描述---- 通用复印机分别复制并传递给后代---- 具有双重用途: 既是繁殖过程中构建机制的主动部分,又是被动复制过程的目标。冯 · 诺依曼将通用构造函数和通用复印机结合在一起的描述(类似于图灵的指令磁带)扮演了这一角色。一个通用的构造器和复印器的组合,再加上一盘指令磁带,概念化和形式化了 i)自我复制,ii)开放式的进化,或者说在生物有机体中观察到的复杂性的增长。

This insight is all the more remarkable because it preceded the discovery of the structure of the DNA molecule by Watson and Crick and how it is separately translated and replicated in the cell—though it followed the Avery–MacLeod–McCarty experiment which identified DNA as the molecular carrier of genetic information in living organisms.[6] The DNA molecule is processed by separate mechanisms that carry out its instructions (translation) and copy (replicate) the DNA for newly constructed cells. The ability to achieve open-ended evolution lies in the fact that, just as in nature, errors (mutations) in the copying of the genetic tape can lead to viable variants of the automaton, which can then evolve via natural selection.[4] As Brenner put it:

This insight is all the more remarkable because it preceded the discovery of the structure of the DNA molecule by Watson and Crick and how it is separately translated and replicated in the cell—though it followed the Avery–MacLeod–McCarty experiment which identified DNA as the molecular carrier of genetic information in living organisms. The DNA molecule is processed by separate mechanisms that carry out its instructions (translation) and copy (replicate) the DNA for newly constructed cells. The ability to achieve open-ended evolution lies in the fact that, just as in nature, errors (mutations) in the copying of the genetic tape can lead to viable variants of the automaton, which can then evolve via natural selection. As Brenner put it:

这一发现尤其引人注目,因为它先于沃森与克里克发现了 DNA 分子的结构,以及 DNA 分子在细胞中是如何分别翻译和复制的---- 尽管它遵循的是 Avery-MacLeod-McCarty 实验,该实验将 DNA 确定为活生物体中遗传信息的分子载体。DNA 分子通过不同的机制进行处理,为新构建的细胞执行其指令(翻译)和复制(复制) DNA。实现开放式进化的能力在于,就像在自然界一样,复制基因带时的错误(突变)可以导致自动机的可行变体,然后通过自然选择进化。正如布伦纳所言:

/* Styling for Template:Quote */ .templatequote { overflow: hidden; margin: 1em 0; padding: 0 40px; } .templatequote .templatequotecite {

   line-height: 1.5em;
   /* @noflip */
   text-align: left;
   /* @noflip */
   padding-left: 1.6em;
   margin-top: 0;

}

Evolution of Complexity

Evolution of Complexity

= = 进化的复杂性 = =

Von Neumann's goal, as specified in his lectures at the University of Illinois in 1949,[2] was to design a machine whose complexity could grow automatically akin to biological organisms under natural selection. He asked what is the threshold of complexity that must be crossed for machines to be able to evolve and grow in complexity.[4][3] His “proof-of-principle” designs showed how it is logically possible. By using an architecture that separates a general purpose programmable (“universal”) constructor from a general purpose copier, he showed how the descriptions (tapes) of machines could accumulate mutations in self-replication and thus evolve more complex machines (the image below illustrates this possibility.). This is a very important result, as prior to that, it might have been conjectured that there is a fundamental logical barrier to the existence of such machines; in which case, biological organisms, which do evolve and grow in complexity, could not be “machines”, as conventionally understood. Von Neumann's insight was to think of life as a Turing Machine, which, is similarly defined by a state-determined machine "head" separated from a memory tape.[5]

Von Neumann's goal, as specified in his lectures at the University of Illinois in 1949, was to design a machine whose complexity could grow automatically akin to biological organisms under natural selection. He asked what is the threshold of complexity that must be crossed for machines to be able to evolve and grow in complexity. His “proof-of-principle” designs showed how it is logically possible. By using an architecture that separates a general purpose programmable (“universal”) constructor from a general purpose copier, he showed how the descriptions (tapes) of machines could accumulate mutations in self-replication and thus evolve more complex machines (the image below illustrates this possibility.). This is a very important result, as prior to that, it might have been conjectured that there is a fundamental logical barrier to the existence of such machines; in which case, biological organisms, which do evolve and grow in complexity, could not be “machines”, as conventionally understood. Von Neumann's insight was to think of life as a Turing Machine, which, is similarly defined by a state-determined machine "head" separated from a memory tape.

1949年,冯 · 诺依曼在伊利诺伊大学厄巴纳-香槟分校的演讲中明确指出,他的目标是设计一种机器,其复杂性可以自动增长,类似于自然选择下的生物有机体。他问,机器要想在复杂性中进化和成长,必须跨越多大的复杂性门槛。他的“原理证明”设计显示了这在逻辑上是可能的。通过使用一种将通用可编程构造器和通用复印机分离开来的架构,他展示了机器的描述(磁带)是如何在自我复制中累积突变,从而进化出更复杂的机器的(下图说明了这种可能性).这是一个非常重要的结果,因为在此之前,人们可能会推测,这种机器的存在有一个根本的逻辑障碍; 在这种情况下,确实进化和增长的复杂性的生物有机体,不可能是传统意义上的“机器”。冯 · 诺依曼的洞察力是把生命想象成一台图灵机,它同样被一台状态决定的机器“头”从一个记忆磁带中分离出来。

In practice, when we consider the particular automata implementation Von Neumann pursued, we conclude that it does not yield much evolutionary dynamics because the machines are too fragile - the vast majority of perturbations cause them effectively to disintegrate.[3] Thus, it is the conceptual model outlined in his Illinois lectures[2] that is of greater interest today because it shows how a machine can in principle evolve.[7][4] This insight is all the more remarkable because the model preceded the discovery of the structure of the DNA molecule as discussed above.[6] It is also noteworthy that Von Neumann's design considers that mutations towards greater complexity need to occur in the (descriptions of) subsystems not involved in self-reproduction itself, as conceptualized by the additional automaton D he considered to perform all functions not directly involved in reproduction (see Figure above with Von Neumann's System of Self-Replication Automata with the ability to evolve.) Indeed, in biological organisms only very minor variations of the genetic code have been observed, which matches Von Neumann's rationale that the universal constructor (A) and Copier (B) would not themselves evolve, leaving all evolution (and growth of complexity) to automaton D.[4] In his unfinished work, Von Neumann also briefly considers conflict and interactions between his self-reproducing machines, towards understanding the evolution of ecological and social interactions from his theory of self-reproducing machines.[2]:147

In practice, when we consider the particular automata implementation Von Neumann pursued, we conclude that it does not yield much evolutionary dynamics because the machines are too fragile - the vast majority of perturbations cause them effectively to disintegrate. Thus, it is the conceptual model outlined in his Illinois lectures that is of greater interest today because it shows how a machine can in principle evolve. This insight is all the more remarkable because the model preceded the discovery of the structure of the DNA molecule as discussed above. It is also noteworthy that Von Neumann's design considers that mutations towards greater complexity need to occur in the (descriptions of) subsystems not involved in self-reproduction itself, as conceptualized by the additional automaton D he considered to perform all functions not directly involved in reproduction (see Figure above with Von Neumann's System of Self-Replication Automata with the ability to evolve.) Indeed, in biological organisms only very minor variations of the genetic code have been observed, which matches Von Neumann's rationale that the universal constructor (A) and Copier (B) would not themselves evolve, leaving all evolution (and growth of complexity) to automaton D. In his unfinished work, Von Neumann also briefly considers conflict and interactions between his self-reproducing machines, towards understanding the evolution of ecological and social interactions from his theory of self-reproducing machines.

在实践中,当我们考虑冯 · 诺依曼所追求的特定自动机实现时,我们得出结论,它不会产生太多的进化动力学,因为机器太脆弱了——绝大多数的扰动会导致它们有效地解体。因此,他在伊利诺伊州的演讲中概述的概念模型是今天人们更感兴趣的,因为它展示了机器原则上是如何进化的。这个发现更加引人注目,因为这个模型是在上面讨论的 DNA 分子结构被发现之前。值得注意的是,Von Neumann 的设计认为向着更高复杂性的突变需要发生在(描述)子系统中,而这些子系统本身并不涉及自我复制,这是由额外的自动机 d 来概念化的,他认为这些自动机执行所有不直接涉及复制的功能(见上面的图和 Von Neumann 的具有进化能力的自我复制自动机系统)事实上,在生物有机体中,只观察到遗传密码的微小变异,这与冯 · 诺依曼的理论基础相符,即通用构造器(a)和复印器(b)本身不会进化,将所有进化(和复杂性的增长)留给自动机 d。在他未完成的著作中,冯 · 诺依曼还简要地考虑了他的自我繁殖机器之间的冲突和相互作用,以便从他的自我繁殖机器理论中理解生态和社会相互作用的进化。

A demonstration of the ability of von Neumann's machine to support inheritable mutations. (1) At an earlier timestep, a mutation was manually added to the second generation machine's tape. (2) Later generations both display the phenotype of the mutation (a drawing of a flower) and pass the mutation on to their children, since the tape is copied each time. This example illustrates how von Neumann's design allows for complexity growth (in theory) since the tape could specify a machine that is more complex than the one making it.

Implementations

Implementations

= 实现 =

In automata theory, the concept of a universal constructor is non-trivial because of the existence of Garden of Eden patterns. But a simple definition is that a universal constructor is able to construct any finite pattern of non-excited (quiescent) cells.

In automata theory, the concept of a universal constructor is non-trivial because of the existence of Garden of Eden patterns. But a simple definition is that a universal constructor is able to construct any finite pattern of non-excited (quiescent) cells.

在自动机理论中,由于伊甸园模式的存在,普遍构造函数的概念是非平凡的。但一个简单的定义是,通用构造函数能够构造任何非激发(静止)细胞的有限模式。

Arthur Burks and others extended the work of von Neumann, giving a much clearer and complete set of details regarding the design and operation of von Neumann's self-replicator. The work of J. W. Thatcher is particularly noteworthy, for he greatly simplified the design. Still, their work did not yield a complete design, cell by cell, of a configuration capable of demonstrating self-replication.

Arthur Burks and others extended the work of von Neumann, giving a much clearer and complete set of details regarding the design and operation of von Neumann's self-replicator. The work of J. W. Thatcher is particularly noteworthy, for he greatly simplified the design. Still, their work did not yield a complete design, cell by cell, of a configuration capable of demonstrating self-replication.

亚瑟 · 伯克斯和其他人扩展了冯 · 诺依曼的工作,给出了一套更加清晰和完整的关于冯 · 诺依曼自复制因子的设计和操作的细节。撒切尔的工作尤其值得注意,因为他极大地简化了设计。尽管如此,他们的工作并没有产生一个完整的设计,一个细胞一个细胞的配置能够显示自我复制。

Renato Nobili and Umberto Pesavento published the first fully implemented self-reproducing cellular automaton in 1995, nearly fifty years after von Neumann's work.[1][8] They used a 32-state cellular automaton instead of von Neumann's original 29-state specification, extending it to allow for easier signal-crossing, explicit memory function and a more compact design. They also published an implementation of a general constructor within the original 29-state CA but not one capable of complete replication - the configuration cannot duplicate its tape, nor can it trigger its offspring; the configuration can only construct.[8][9]

Renato Nobili and Umberto Pesavento published the first fully implemented self-reproducing cellular automaton in 1995, nearly fifty years after von Neumann's work. They used a 32-state cellular automaton instead of von Neumann's original 29-state specification, extending it to allow for easier signal-crossing, explicit memory function and a more compact design. They also published an implementation of a general constructor within the original 29-state CA but not one capable of complete replication - the configuration cannot duplicate its tape, nor can it trigger its offspring; the configuration can only construct.

Renato Nobili 和 Umberto Pesavento 在1995年发表了第一个完全实现的自我复制细胞自动机,比 von Neumann 的工作晚了近50年。他们使用了32态细胞自动机,而不是冯诺依曼最初的29态规范,扩展了它,以便更容易的信号交叉,显式存储功能和更紧凑的设计。他们还发布了原始29状态 CA 中的一个通用构造函数的实现,但是没有一个能够完成复制——配置不能复制它的磁带,也不能触发它的后代; 配置只能构造。

In 2004, D. Mange et al. reported an implementation of a self-replicator that is consistent with the designs of von Neumann.[10]

In 2004, D. Mange et al. reported an implementation of a self-replicator that is consistent with the designs of von Neumann.

In 2004, D. Mange et al.报道了一个与冯 · 诺依曼设计一致的自复制器的实现。

In 2007, Nobili published a 32-state implementation that uses run-length encoding to greatly reduce the size of the tape.[11]

In 2007, Nobili published a 32-state implementation that uses run-length encoding to greatly reduce the size of the tape.

2007年,Nobili 发布了一个包含32个州的实现方案,该方案使用游程编码来大大减小磁带的大小。

In 2008, William R. Buckley published two configurations which are self-replicators within the original 29-state CA of von Neumann.[9] Buckley claims that the crossing of signal within von Neumann 29-state cellular automata is not necessary to the construction of self-replicators.[9] Buckley also points out that for the purposes of evolution, each replicator should return to its original configuration after replicating, in order to be capable (in theory) of making more than one copy. As published, the 1995 design of Nobili-Pesavento does not fulfill this requirement but the 2007 design of Nobili does; the same is true of Buckley's configurations.

In 2008, William R. Buckley published two configurations which are self-replicators within the original 29-state CA of von Neumann. Buckley claims that the crossing of signal within von Neumann 29-state cellular automata is not necessary to the construction of self-replicators. Buckley also points out that for the purposes of evolution, each replicator should return to its original configuration after replicating, in order to be capable (in theory) of making more than one copy. As published, the 1995 design of Nobili-Pesavento does not fulfill this requirement but the 2007 design of Nobili does; the same is true of Buckley's configurations.

2008年,威廉 · r · 巴克利发表了两个构型,它们是冯 · 诺依曼原始的29态 CA 中的自复制因子。巴克利认为,冯 · 诺依曼29态细胞自动机中的信号交叉对于自复制因子的构造是不必要的。巴克利还指出,出于进化的目的,每个复制因子在复制之后都应该返回到原来的结构,以便(理论上)能够复制多个副本。正如发表的,1995年的诺比利-佩斯旺托设计没有满足这一要求,但2007年的诺比利设计做到了,巴克利的配置也是如此。

In 2009, Buckley published with Golly a third configuration for von Neumann 29-state cellular automata, which can perform either holistic self-replication, or self-replication by partial construction. This configuration also demonstrates that signal crossing is not necessary to the construction of self-replicators within von Neumann 29-state cellular automata.

In 2009, Buckley published with Golly a third configuration for von Neumann 29-state cellular automata, which can perform either holistic self-replication, or self-replication by partial construction. This configuration also demonstrates that signal crossing is not necessary to the construction of self-replicators within von Neumann 29-state cellular automata.

2009年,Buckley 与 Golly 一起发表了 von Neumann 29州元胞自动机的第三种配置,它既可以执行整体自我复制,也可以通过部分构造执行自我复制。这种结构还表明,在冯 · 诺依曼29态细胞自动机中,信号交叉对于自复制因子的构造是不必要的。

C. L. Nehaniv in 2002, and also Y. Takada et al. in 2004, proposed a universal constructor directly implemented upon an asynchronous cellular automaton, rather than upon a synchronous cellular automaton. [12] [13]

C. L. Nehaniv in 2002, and also Y. Takada et al. in 2004, proposed a universal constructor directly implemented upon an asynchronous cellular automaton, rather than upon a synchronous cellular automaton.


2002年,c. l. Nehaniv,还有 y. Takada 等人。2004年,提出了一个通用构造函数,它直接在异步细胞自动机上实现,而不是在同步细胞自动机上实现。

Comparison of implementations

Comparison of implementations

= = 实现比较 = =

Implementation Source Ruleset Rectangular area Number of cells Length of tape Ratio Period Tape code compression Tape code length Tape code type Replication mechanism Replication type Growth rate
Nobili-Pesavento, 1995[1] 模板:CEmpty[14] Nobili 32-state 97 × 170 6,329 145,315 22.96 6.34模板:Times1010 模板:CNone 5 bits binary holistic constructor 模板:No2 linear
Nobili, 2007 SR_CCN_AP.EVN[11] Nobili 32-state 97 × 100 5,313 56,325 10.60 9.59模板:Times109 run-length limited encoding 5 bits binary holistic constructor 模板:Yes2 super-linear
Buckley, 2008 codon5.rle[15] Nobili 32-state 112 × 50 3,343 44,155 13.21 5.87模板:Times109 auto-retraction 5 bits binary holistic constructor 模板:Yes2 linear
Buckley, 2008[9] replicator.mc von Neumann 29-state 312 × 132 18,589 294,844 15.86 2.61模板:Times1011 auto-retraction 5 bits binary holistic constructor 模板:Yes2 linear
Buckley, 2008 codon4.rle[15] Nobili 32-state 109 × 59 3,574 37,780 10.57 4.31模板:Times109 auto-retraction/bit generation 4 bits binary holistic constructor 模板:Yes2 linear
Buckley, 2009 codon3.rle Nobili 32-state 116 × 95 4,855 23,577 4.86 1.63模板:Times109 auto-retraction/bit generation/code overlay 3 bits binary holistic constructor 模板:Yes2 super-linear
Buckley, 2009 PartialReplicator.mc[15] von Neumann 29-state 2063 × 377 264,321 模板:NA 模板:Sdash ≈1.12模板:Times1014 模板:CNone 4 bits binary partial constructor 模板:Yes2 linear
Goucher & Buckley, 2012 phi9.rle[16] Nobili 32-state 122 × 60 3957 8920 2.25 模板:Sdash auto-retraction/bit generation/code overlay/run length limited 3+ bits ternary holistic constructor 模板:Yes2 super-linear
Implementation Source Ruleset Rectangular area Number of cells Length of tape Ratio Period Tape code compression Tape code length Tape code type Replication mechanism Replication type Growth rate
Nobili-Pesavento, 1995 Nobili 32-state 97 × 170 6,329 145,315 22.96 6.341010 5 bits binary holistic constructor linear
Nobili, 2007 SR_CCN_AP.EVN Nobili 32-state 97 × 100 5,313 56,325 10.60 9.59109 run-length limited encoding 5 bits binary holistic constructor super-linear
Buckley, 2008 codon5.rle Nobili 32-state 112 × 50 3,343 44,155 13.21 5.87109 auto-retraction 5 bits binary holistic constructor linear
Buckley, 2008 replicator.mc von Neumann 29-state 312 × 132 18,589 294,844 15.86 2.611011 auto-retraction 5 bits binary holistic constructor linear
Buckley, 2008 codon4.rle Nobili 32-state 109 × 59 3,574 37,780 10.57 4.31109 auto-retraction/bit generation 4 bits binary holistic constructor linear
Buckley, 2009 codon3.rle Nobili 32-state 116 × 95 4,855 23,577 4.86 1.63109 auto-retraction/bit generation/code overlay 3 bits binary holistic constructor super-linear
Buckley, 2009 PartialReplicator.mc von Neumann 29-state 2063 × 377 264,321 ≈1.121014 4 bits binary partial constructor linear
Goucher & Buckley, 2012 phi9.rle Nobili 32-state 122 × 60 3957 8920 2.25 auto-retraction/bit generation/code overlay/run length limited 3+ bits ternary holistic constructor super-linear
-!Nobili-Pesavento, 1995 Nobili 32-state 97 × 170 6,329 145,315 22.96 6.341010 5 bits binary holistic constructor linear
SR ccn/ap.EVN | | Nobili 32-state | | 97 × 100 | | 5,313 | | 56,325 | | 10.60 | | 9.59109 | | 行程长度有限的编码 | | 5位构造函数 | 二进制 | 整体 | | | | 超线性 | !巴克利,2008 | codon5.rle | Nobili 32-state | | 112 × 50 | | 3,343 | | 44,155 | | 13.21 | | 5.87109 | | 自动收回 | 5位 | 二进制 | | 整体 | | | | | 线性 |-!29-state | 312 × 132 | | | 18,589 | | 294,844 | | 15.86 | | 2.611011 | 自动回缩 | 5位 | 二进制 | 整体 | | | | | 线性 |-!巴克利,2008 | codon4.rle | Nobili 32-state | | 109 × 59 | | 3,574 | | 37,780 | | 10.57 | | 4.31109 | | 自动回缩/位生成 | 4位 | 二进制 | 整体构造函数 | | | | | | | 线性 |-!巴克利,2009 | codon3.rle | Nobili 32-state | | 116 × 95 | | 4,855 | | 23,577 | | 4.86 | | 1.63109 | | | 自动收回/位生成/代码覆盖 | 3位 | | 二进制 | | 整体构造函数 | | | | | | | 超线性 |-!29-state | 2063 × 377 | | 264,321 | | | | | | | | | | | ≈1.121014 | | | 4位 | 二进制 | 部分构造函数 | | | | | | | | 线性 |-!2012 | phi9.rle | | Nobili 32-state | 122 × 60 | | 3957 | | 8920 | | 2.25 | | | | | 自动收缩/比特生成/代码覆盖/运行长度有限 | | 3 + 位 | | 整体构造函数 | | | | | | 超线性 | }

As defined by von Neumann, universal construction entails the construction of passive configurations, only. As such, the concept of universal construction constituted nothing more than a literary (or, in this case, mathematical) device. It facilitated other proof, such as that a machine well constructed may engage in self-replication, while universal construction itself was simply assumed over a most minimal case. Universal construction under this standard is trivial. Hence, while all the configurations given here can construct any passive configuration, none can construct the real-time crossing organ devised by Gorman.[9]

As defined by von Neumann, universal construction entails the construction of passive configurations, only. As such, the concept of universal construction constituted nothing more than a literary (or, in this case, mathematical) device. It facilitated other proof, such as that a machine well constructed may engage in self-replication, while universal construction itself was simply assumed over a most minimal case. Universal construction under this standard is trivial. Hence, while all the configurations given here can construct any passive configuration, none can construct the real-time crossing organ devised by Gorman.

正如冯 · 诺依曼所定义的,宇宙结构只需要被动构型的结构。因此,普遍建构的概念只不过是一种文学(或者,在这里,是数学)手段。它促进了其他的证明,如一个机器构造良好可能参与自我复制,而通用建设本身只是假定在最小的情况下。在这个标准下,通用结构是微不足道的。因此,虽然这里给出的所有构型都可以构造任何被动构型,但没有一种构型可以构造戈尔曼设计的实时交叉器官。

Practicality and computational cost

Practicality and computational cost

= 实用性和计算成本 =

All the implementations of von Neumann's self-reproducing machine require considerable resources to run on computer. For example, in the Nobili-Pesavento 32-state implementation shown above, while the body of the machine is just 6,329 non-empty cells (within a rectangle of size 97x170), it requires a tape that is 145,315 cells long, and takes 63 billion timesteps to replicate. A simulator running at 1,000 timesteps per second would take over 2 years to make the first copy. In 1995, when the first implementation was published, the authors had not seen their own machine replicate. However, in 2008, the hashlife algorithm was extended to support the 29-state and 32-state rulesets in Golly. On a modern desktop PC, replication now takes only a few minutes, although a significant amount of memory is required.

All the implementations of von Neumann's self-reproducing machine require considerable resources to run on computer. For example, in the Nobili-Pesavento 32-state implementation shown above, while the body of the machine is just 6,329 non-empty cells (within a rectangle of size 97x170), it requires a tape that is 145,315 cells long, and takes 63 billion timesteps to replicate. A simulator running at 1,000 timesteps per second would take over 2 years to make the first copy. In 1995, when the first implementation was published, the authors had not seen their own machine replicate. However, in 2008, the hashlife algorithm was extended to support the 29-state and 32-state rulesets in Golly. On a modern desktop PC, replication now takes only a few minutes, although a significant amount of memory is required.

冯 · 诺依曼的自复制机的所有实现都需要相当多的资源才能在计算机上运行。例如,在上面显示的 Nobili-Pesavento 32状态实现中,虽然机器的主体只有6329个非空单元(在一个97x170的矩形内) ,但它需要一个145315个单元长的磁带,并且需要630亿个时间步进才能复制。一个以每秒1000个时间/步的速度运行的模拟器需要两年多的时间才能完成第一次复制。1995年,当第一个实现发表时,作者们还没有看到他们自己的机器复制。然而,在2008年,hashlife 算法被扩展到支持 Golly 中的29状态和32状态规则集。在现代的桌面 PC 上,复制现在只需要几分钟,尽管需要大量的内存。

Animation gallery


Image:320 jump read arm.gif|Example of a 29-state read arm.


= = = 动画画廊 = = = 图像: 320 jump read arm. gif | 29-state read arm 示例。

See also

  • Codd's cellular automaton
  • Langton's loops
  • Nobili cellular automata
  • Quine, a program that produces itself as output
  • Santa Claus machine
  • Wireworld
  • Constructor theory

这个程序把自己产生为输出圣诞老人机器线世界构造理论

References

  1. 1.0 1.1 1.2 Pesavento, Umberto (1995), "An implementation of von Neumann's self-reproducing machine" (PDF), Artificial Life, MIT Press, 2 (4): 337–354, doi:10.1162/artl.1995.2.337, PMID 8942052, archived from the original (PDF) on June 21, 2007
  2. 2.0 2.1 2.2 2.3 2.4 von Neumann, John; Burks, Arthur W. (1966), Theory of Self-Reproducing Automata. (Scanned book online), University of Illinois Press, retrieved 2017-02-28
  3. 3.0 3.1 3.2 3.3 3.4 McMullin, B. (2000), "John von Neumann and the Evolutionary Growth of Complexity: Looking Backwards, Looking Forwards...", Artificial Life, 6 (4): 347–361, doi:10.1162/106454600300103674, PMID 11348586, S2CID 5454783
  4. 4.00 4.01 4.02 4.03 4.04 4.05 4.06 4.07 4.08 4.09 4.10 4.11 Rocha, Luis M. (1998), "Selected self-organization and the semiotics of evolutionary systems", Evolutionary Systems, Springer, Dordrecht: 341–358, doi:10.1007/978-94-017-1510-2_25, ISBN 978-90-481-5103-5
  5. 5.0 5.1 5.2 5.3 5.4 Brenner, Sydney (2012), "Life's code script", Nature, 482 (7386): 461, doi:10.1038/482461a, PMID 22358811, S2CID 205070101
  6. 6.0 6.1 6.2 6.3 Rocha, Luis M. (2015), "Chapter 6. Von Neumann and Natural Selection." (PDF), Lecture Notes of I-485-Biologically Inspired Computing Course, Indiana University (PDF)
  7. Pattee, Howard, H. (1995), "Evolving self-reference: matter symbols, and semantic closure", Communication and Cognition Artificial Intelligence, Biosemiotics, 12 (1–2): 9–27, doi:10.1007/978-94-007-5161-3_14, ISBN 978-94-007-5160-6
  8. 8.0 8.1 Nobili, Renato; Pesavento, Umberto (1996), "Generalised von Neumann's Automata", in Besussi, E.; Cecchini, A. (eds.), Proc. Artificial Worlds and Urban Studies, Conference 1 (PDF), Venice: DAEST
  9. 9.0 9.1 9.2 9.3 9.4 Buckley, William R. (2008), "Signal Crossing Solutions in von Neumann Self-replicating Cellular Automata", in Andrew Adamatzky; Ramon Alonso-Sanz; Anna Lawniczak; Genaro Juarez Martinez; Kenichi Morita; Thomas Worsch (eds.), Proc. Automata 2008 (PDF), Luniver Press, pp. 453–503
  10. Mange, Daniel; Stauffer, A.; Peparaolo, L.; Tempesti, G. (2004), "A Macroscopic View of Self-replication", Proceedings of the IEEE, 92 (12): 1929–1945, doi:10.1109/JPROC.2004.837631, S2CID 22500865
  11. 11.0 11.1 Nobili, Renato (2007). "The Cellular Automata of John von Neumann". Archived from the original on January 29, 2011. Retrieved January 29, 2011.
  12. Nehaniv, Chrystopher L. (2002), "Self-Reproduction in Asynchronous Cellular Automata", 2002 NASA/DoD Conference on Evolvable Hardware (15-18 July 2002, Alexandria, Virginia, USA), IEEE Computer Society Press, pp. 201–209
  13. Takada, Yousuke; Isokawa, Teijiro; Peper, Ferdinand; Matsui, Nobuyuki (2004), "Universal Construction on Self-Timed Cellular Automata", in Sloot, P.M.A. (ed.), ACRI 2004, LNCS 3305, pp. 21–30
  14. "Von Neumann's Self-Reproducing Universal Constructor".
  15. 15.0 15.1 15.2 andykt. "Golly, a Game of Life simulator". SourceForge.
  16. "Self-replication". Complex Projective 4-Space.

External links

  • Golly - the Cellular Automata Simulation Accelerator Very fast implementation of state transition and support for JvN, GoL, Wolfram, and other systems.
  • von Neumann's Self-Reproducing Universal Constructor The original Nobili-Pesavento source code, animations and Golly files of the replicators.
  • John von Neumann's 29 state Cellular Automata Implemented in OpenLaszlo by Don Hopkins
  • A Catalogue of Self-Replicating Cellular Automata. This catalogue complements the Proc. Automata 2008 volume.

= = 外部链接 =

  • Golly-细胞自动机模拟加速器状态转换的快速实现,并支持 jvm、 GoL、 Wolfram 和其他系统。
  • 冯 · 诺依曼的自复制通用构造器原始的 Nobili-Pesavento 源代码、动画和复制器的 Golly 文件。
  • Don Hopkins 在 OpenLaszlo 中实现的约翰·冯·诺伊曼29态元胞自动机
  • 自我复制元胞自动机目录。本目录补充了本程序。自动化2008卷。

Category:Artificial life Category:Cellular automaton patterns Category:Self-replicating machines Category:3D printing

类别: 人造生命类别: 细胞自动机图案类别: 自我复制机器类别: 3 d 打印


This page was moved from wikipedia:en:Von Neumann universal constructor. Its edit history can be viewed at 自复制自动机/edithistory