Autocatalytic replication of polymers
Physica D
Adaptation in natural and artificial systems
Adaptation in natural and artificial systems
Random catalytic reaction networks
Physica D
Self-evolution in a constructive binary string system
Artificial Life
Fifty years of research on self-replication: an overview
Artificial Life - Special issue on self-replication
Journal of Computer and System Sciences
Computing with cells and atoms: an introduction to quantum, DNA and membrane computing
Computing with cells and atoms: an introduction to quantum, DNA and membrane computing
Artificial chemistries—a review
Artificial Life
Exploiting Software: How to Break Code
Exploiting Software: How to Break Code
Theory of Self-Reproducing Automata
Theory of Self-Reproducing Automata
A model for self-modifying code
IH'06 Proceedings of the 8th international conference on Information hiding
The holland broadcast language and the modeling of biochemical networks
EuroGP'07 Proceedings of the 10th European conference on Genetic programming
Evolving noisy oscillatory dynamics in genetic regulatory networks
EuroGP'06 Proceedings of the 9th European conference on Genetic Programming
UPP'04 Proceedings of the 2004 international conference on Unconventional Programming Paradigms
A phylogenetic, ontogenetic, and epigenetic view of bio-inspired hardware systems
IEEE Transactions on Evolutionary Computation
A self-healing multipath routing protocol
Proceedings of the 3rd International Conference on Bio-Inspired Models of Network, Information and Computing Sytems
Hi-index | 0.00 |
Software systems nowadays are becoming increasingly complex and vulnerable to all sorts of failures and attacks. There is a rising need for robust self-repairing systems able to restore full functionality in the face of internal and external perturbations, including those that affect their own code base. However, it is difficult to achieve code self-repair with conventional programming models. We propose and demonstrate a solution to this problem based on self-replicating programs in an artificial chemistry. In this model, execution proceeds by chemical reactions that modify virtual molecules carrying code and data. Self-repair is achieved by what we call autocatalytic quines : programs that permanently reproduce their own code base. The concentration of instructions reflects the health of the system, and is kept stable by the instructions themselves. We show how the chemistry of such programs enables them to withstand arbitrary amounts of random code and data deletion, without affecting the results of their computations.