EvoCpu - Algorithmic Self-Assembly
The self-assembly of computer code fragments into functional programs
is a non-trivial process, which would aid software evolution if
achievable, and may provide insights into mechanisms of molecular
It is an old dream of computer- scientists to evolve software  and abandon the time-consuming error-prone man-made development of complex software-systems. Exactly this problem is predominant in the creation of artificial cells. We believe that complex entities like artificial cells have to be evolved, at least partly. Getting this evolution under control and open it for programmability is a major motivation in this study. Other questions behind this work are robustness of evolving entities, the origin of replication and of course evolvability.
The presented system of evolving micro-controllers gives insights in how information-processing in artificial cells should be orchestrated and how this information-processing could be made robust against external or internal perturbations.
After the introduction which embeds this research into work of others is the current working model presented. It is a consequence of a long series of complexity reductions of the micro-controllers investigated and it uses an old idea of structured programming to view linear execution sequences as independent functional blocks.
With these strongly minimized micro-controllers emerging replication systems can be observed. It is important to note that the simulations did not start with already replicating sequences and that a single sequence is not able replicate itself. Evolution has to find a set of micro-controllers acting in a concerted manner yielding stable, at least temporarily stable, replicating networks of programs.
This distribution of execution is mediated via recognition sites and not via addressing as in conventional computing. Several consequences arise from this paradigm shift. Furthermore, the simplification procedure only was possible because of assuming certain physical properties which, for example, minimized the necessary counter-operations. Further insights are discussed and presented.