Abstract
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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Baumann, R.C.: Soft errors in advanced semiconductor devices – part 1: the three radiation sources. IEEE Transactions on Device and Materials Reliability 1(1), 17–22 (2001)
Anckaert, B., Madou, M., de Bosschere, K.: A model for self-modifying code. In: Camenisch, J.L., Collberg, C.S., Johnson, N.F., Sallee, P. (eds.) IH 2006. LNCS, vol. 4437, pp. 232–248. Springer, Heidelberg (2007)
Calude, C.S., Păun, G.: Computing with Cells and Atoms: An Introduction to Quantum, DNA and Membrane Computing. Taylor & Francis, Abington (2001)
Dittrich, P.: Chemical Computing. In: Banâtre, J.-P., Fradet, P., Giavitto, J.-L., Michel, O. (eds.) UPP 2004. LNCS, vol. 3566, pp. 19–32. Springer, Heidelberg (2005)
Dittrich, P., Ziegler, J., Banzhaf, W.: Artificial Chemistries – A Review. Artificial Life 7(3), 225–275 (2001)
Banzhaf, W., Lasarczyk, C.: Genetic Programming of an Algorithmic Chemistry. In: O’Reilly, et al. (eds.) Genetic Programming Theory and Practice II, vol. 8, pp. 175–190. Kluwer/Springer (2004)
Deckard, A., Sauro, H.M.: Preliminary Studies on the In Silico Evolution of Biochemical Networks. ChemBioChem 5(10), 1423–1431 (2004)
Leier, A., Kuo, P.D., Banzhaf, W., Burrage, K.: Evolving Noisy Oscillatory Dynamics in Genetic Regulatory Networks. In: Collet, P., Tomassini, M., Ebner, M., Gustafson, S., Ekárt, A. (eds.) EuroGP 2006. LNCS, vol. 3905, pp. 290–299. Springer, Heidelberg (2006)
Păun, G.: Computing with Membranes. Journal of Computer and System Sciences 61(1), 108–143 (2000)
Banâtre, J.P., Fradet, P., Radenac, Y.: A Generalized Higher-Order Chemical Computation Model with Infinite and Hybrid Multisets. In: 1st International Workshop on New Developments in Computational Models (DCM 2005). ENTCS, pp. 5–14. Elsevier, Amsterdam (to appear)
Tschudin, C.: Fraglets - a metabolistic execution model for communication protocols. In: Proc. 2nd Annual Symposium on Autonomous Intelligent Networks and Systems (AINS), Menlo Park, USA (2003)
Yamamoto, L., Schreckling, D., Meyer, T.: Self-Replicating and Self-Modifying Programs in Fraglets. In: Proc. 2nd International Conference on Bio-Inspired Models of Network, Information, and Computing Systems (BIONETICS 2007), Budapest, Hungary (2007)
von Neumann, J.: Theory of Self-Reproducing Automata. University of Illinois Press, Champaign (1966)
Sipper, M., Sanchez, E., Mange, D., Tomassini, M., Perez-Uribe, A., Stauffer, A.: A Phylogenetic, Ontogenetic, and Epigenetic View of Bio-Inspired Hardware Systems. IEEE Transactions on Evolutionary Computation 1(1) (1997)
Freitas Jr., R.A., Merkle, R.C.: Kinematic Self-Replicating Machines. Landes Bioscience, Georgetown (2004)
Sipper, M.: Fifty years of research on self-replication: an overview. Artificial Life 4(3), 237–257 (1998)
Langton, C.G.: Self-reproduction in cellular automata. Physica D 10D(1-2), 135–144 (1984)
Perrier, J.Y., Sipper, M., Zahnd, J.: Toward a Viable, Self-Reproducing Universal Computer. Physica D 97, 335–352 (1996)
Kleene, S.: On notation for ordinal numbers. The Journal of Symbolic Logic 3, 150–155 (1938)
Thompson, G.P.: The quine page (1999), http://www.nyx.net/~gthompso/quine.htm
Dittrich, P., di Fenizio, P.S.: Chemical organization theory: towards a theory of constructive dynamical systems. Bulletin of Mathematical Biology 69(4), 1199–1231 (2005)
Fontana, W., Buss, L.W.: The Arrival of the Fittest: Toward a Theory of Biological Organization. Bulletin of Mathematical Biology 56, 1–64 (1994)
Dittrich, P., Banzhaf, W.: Self-Evolution in a Constructive Binary String System. Artificial Life 4(2), 203–220 (1998)
Hutton, T.J.: Evolvable Self-Reproducing Cells in a Two-Dimensional Artificial Chemistry. Artificial Life 13(1), 11–30 (2007)
Teuscher, C.: From membranes to systems: self-configuration and self-replication in membrane systems. BioSystems 87(2-3), 101–110 (2007); The Sixth International Workshop on Information Processing in Cells and Tissues (IPCAT 2005), York, UK (2005)
Holland, J.: Adaptation in Natural and Artificial Systems, 1st edn. MIT Press, Cambridge (1992)
Decraene, J., Mitchell, G.G., McMullin, B., Kelly, C.: The Holland Broadcast Language and the Modeling of Biochemical Networks. In: Ebner, M., O’Neill, M., Ekárt, A., Vanneschi, L., Esparcia-Alcázar, A.I. (eds.) EuroGP 2007. LNCS, vol. 4445, pp. 361–370. Springer, Heidelberg (2007)
Tominaga, K., Watanabe, T., Kobayashi, K., Nakamura, M., Kishi, K., Kazuno, M.: Modeling Molecular Computing Systems by an Artificial Chemistry—Its Expressive Power and Application. Artificial Life 13(3), 223–247 (2007)
Gillespie, D.T.: Exact Stochastic Simulation of Coupled Chemical Reactions. Journal of Physical Chemistry 81(25), 2340–2361 (1977)
Bagley, R.J., Farmer, J.D., Kauffman, S.A., Packard, N.H., Perelson, A.S., Stadnyk, I.M.: Modeling adaptive biological systems. Biosystems 23, 113–138 (1989)
Farmer, J.D., Kauffman, S.A., Packard, N.H.: Autocatalytic replication of polymers. Physica D 2(1-3), 50–67 (1986)
Kauffman, S.A.: The Origins of Order: Self-Organization and Selection in Evolution. Oxford University Press, Oxford (1993)
Mossel, E., Steel, M.: Random biochemical networks: the probability of self-sustaining autocatalysis. Journal of Theoretical Biology 233(3), 327–336 (2005)
di Fenizio, P.S., Banzhaf, W.: A less abstract artificial chemistry. In: Bedau, M.A., Mccaskill, J.S., Packard, N.H., Rasmusseen, S. (eds.) Artificial Life VII, Cambridge, Massachusetts 02142, pp. 49–53. MIT Press, Cambridge (2000)
Stadler, P.F., Fontana, W., Miller, J.H.: Random catalytic reaction networks. Physica D 63(3-4), 378–392 (1993)
Hoglund, G., Mcgraw, G.: Exploiting Software: How to Break Code. Addison-Wesley Professional, Reading (2004)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2008 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Meyer, T., Schreckling, D., Tschudin, C., Yamamoto, L. (2008). Robustness to Code and Data Deletion in Autocatalytic Quines. In: Priami, C., Dressler, F., Akan, O.B., Ngom, A. (eds) Transactions on Computational Systems Biology X. Lecture Notes in Computer Science(), vol 5410. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-92273-5_2
Download citation
DOI: https://doi.org/10.1007/978-3-540-92273-5_2
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-92272-8
Online ISBN: 978-3-540-92273-5
eBook Packages: Computer ScienceComputer Science (R0)