Natural Computing

, Volume 12, Issue 4, pp 499–515 | Cite as

Exploring programmable self-assembly in non-DNA based molecular computing

  • Germán Terrazas
  • Hector Zenil
  • Natalio KrasnogorEmail author


Self-assembly is a phenomenon observed in nature at all scales where autonomous entities build complex structures, without external influences nor centralised master plan. Modelling such entities and programming correct interactions among them is crucial for controlling the manufacture of desired complex structures at the molecular and supramolecular scale. This work focuses on a programmability model for non DNA-based molecules and complex behaviour analysis of their self-assembled conformations. In particular, we look into modelling, programming and simulation of porphyrin molecules self-assembly and apply Kolgomorov complexity-based techniques to classify and assess simulation results in terms of information content. The analysis focuses on phase transition, clustering, variability and parameter discovery which as a whole pave the way to the notion of complex systems programmability.


Self-assembly systems Complex systems Complex behaviour analysis Molecular computing 



This work is supported by EPSRC grants EPSRC EP/J004111/1 and EP/H010432/1 Evolutionary Optimisation of Self-Assembly Nano-Design (ExIStENcE). The authors acknowledge the insightful discussions on the chemistry and physics of porphyrins with Prof. N. Champness, Prof. A. Moriarty and Prof. P. Beton from the University of Nottingham.


  1. Adleman LM, Cheng Q, Goel A, Huang MD (2001) Running time and program size for self-assembled squares. In: Symposium on theory of computing, ACM, pp 740–748Google Scholar
  2. Adleman LM, Cheng Q, Goel A, Huang MD, Kempe D, Moisset de Espanés P, Rothemund PWK (2002) Combinatorial optimization problems in self-assembly. In: Symposium on theory of computing, ACM, pp 23–32Google Scholar
  3. Anderberg MR (1973) Cluster analysis for applications. Academic Press, New YorkzbMATHGoogle Scholar
  4. Bruschi P, Cagnoni P, Nannini A (1997) Temperature-dependent Monte Carlo simulations of thin metal film growth and percolation. Phys Rev B: Condens Matter 55(12):7955–7963CrossRefGoogle Scholar
  5. Chaitin GJ (1969) On the length of programs for computing finite binary sequences: statistical considerations. J ACM 1:145–159MathSciNetCrossRefGoogle Scholar
  6. Cheng Q, Goel A, Moisset de Espanés P (2004) Optimal self-assembly of counters at temperature two. In: Foundations of Nanoscience: self-assembled architectures and devicesGoogle Scholar
  7. Cilibrasi R, Vitányi PMB (2005) Clustering by compression. IEEE Trans Inf Theory 51(4):1523–1545CrossRefGoogle Scholar
  8. Dubacq JC, Durand B, Formenti E (2001) Kolmogorov complexity and cellular automata classification. Theoret Comput Sci 1–2:271–285MathSciNetCrossRefGoogle Scholar
  9. Moisset de Espanés P (2008) Computer aided search for optimal self-assembly systems. In: Krasnogor et al. (ed) pp 225–243Google Scholar
  10. Ferragina P, Giancarlo R, Greco V, Manzini G, Valiente G (2007) Compression-based classification of biological sequences and structures via the universal similarity metric: experimental assessment. BMC Bioinform 8(1):252CrossRefGoogle Scholar
  11. Flenner E, Janosi L, Barz B, Neagu A, Forgacs G, Kosztin I (2012) Kinetic Monte Carlo and cellular particle dynamics simulations of multicellular systems. Phys Rev E 85(3):031907–031916CrossRefGoogle Scholar
  12. Goldin D, Wegner P (2006) Interactive computation. In: Goldin D, Smolka S, Wegner P (eds) Principles of interactive computation, Springer, Berlin, p 25–37CrossRefGoogle Scholar
  13. Keogh E, Lonardi S, Ratanamahatana CA, Wei L, Lee SH, Handley J (2007) Compression-based data mining of sequential data. Data Min Knowl Disc 14(1):99–129MathSciNetCrossRefGoogle Scholar
  14. Kolmogorov AN (1965) Three approaches to the quantitative definition of information. Probl Inf Transm 1:1–7Google Scholar
  15. Krasnogor N, Gustafson S, Pelta DA, Verdegay JL (2008) Systems self-assembly: multidisciplinary snapshots, studies in multidisciplinarity, vol 5. Elsevier, AmsterdamGoogle Scholar
  16. Li M, Chen X, Li X, Ma B, Vitányi PMB (2004) The similarity metric. IEEE Trans Inf Theory 50(12):3250–3264CrossRefGoogle Scholar
  17. Mao C, LaBean T, Reif JH (2000) Logical computation using algorithmic self-assembly of DNA triple crossover molecules. Nature 407:493–496CrossRefGoogle Scholar
  18. Mealy GH (1955) A method for synthesizing sequential circuits. Bell Syst Tech J 34(5):1045–1079MathSciNetCrossRefGoogle Scholar
  19. Pelesko JA (2007) Self assembly: the science of things that put themselves together. Chapman & Hall/CRC, LondonCrossRefGoogle Scholar
  20. Rothemund PWK (2000) Using lateral capillary forces to compute by self-assembly. Proc Natl Acad Sci USA 97(3):984–989CrossRefGoogle Scholar
  21. Rothemund PWK, Winfree E (2000) The program-size complexity of self-assembled squares. In: Symposium on theory of computing, ACM, pp 459–468Google Scholar
  22. Siepmann P, Terrazas G, Krasnogor N (2006) Evolutionary design for the behaviour of cellular automaton-based complex systems. In: Adaptive computing in design and manufacture, pp 199–208Google Scholar
  23. Siepmann P, Martin CP, Vancea I, Moriarty PJ, Krasnogor N (2007) A genetic algorithm approach to probing the evolution of self-organised nanostructured systems. Nano Lett 7:1985–1990CrossRefGoogle Scholar
  24. Soloveichik D, Winfree E (2005) The computational power of Benenson automata. Theoret Comput Sci 344(2–3):279–297MathSciNetCrossRefzbMATHGoogle Scholar
  25. Terrazas G, Krasnogor N, Kendall G, Gheorghe M (2005) Automated tile design for self-assembly conformations. In: IEEE congress on evolutionary computation, vol 2. IEEE Press, Los Alamitos, p 1808–1814Google Scholar
  26. Terrazas G, Gheorghe M, Kendall G, Krasnogor N (2007a) Evolving tiles for automated self-assembly design. In: IEEE congress on evolutionary computation, IEEE Press, Los Alamitos, p 2001–2008Google Scholar
  27. Terrazas G, Siepmann P, Kendall G, Krasnogor N (2007b) An evolutionary methodology for the automated design of cellular automaton-based complex systems. J Cell Autom 2(1):77–102MathSciNetzbMATHGoogle Scholar
  28. Terrazas G, Lui LT, Krasnogor N (2013) Spatial computation and algorithmic information content in non-DNA based molecular self-assembly. In: Spatial computing, p 85–90Google Scholar
  29. Vitányi PMB (2011) Information distance in multiples. IEEE Trans Inf Theory 57(4):2451–2456CrossRefGoogle Scholar
  30. Vitányi PMB (2012) Information distance: new developments. In: Information theoretic methods in science and engineering, p 71–74Google Scholar
  31. Wang H (1961) Proving theorems by pattern recognition. Bell Syst Tech J 40:1–42CrossRefGoogle Scholar
  32. Winfree E (1996) On the computational power of DNA annealing and ligation. In: Discrete mathematics and theoretical computer science, vol 27. American Mathematical Society, Providence, p 199–221Google Scholar
  33. Winfree E, Bekbolatov R (2003) Proofreading tile sets: error correction for algorithmic self-assembly. DNA Comput 2943:126–144MathSciNetCrossRefGoogle Scholar
  34. Winfree E, Liu F, Wenzler LA, Seeman NC (1998) Design and self-assembly of two-dimensional DNA crystals. Nature 394:539–544CrossRefGoogle Scholar
  35. Woolley RAJ, Stirling J, Radocea A, Krasnogor N, Moriarty P (2011) Automated probe microscopy via evolutionary optimization at the atomic scale. Appl Phys Lett 98(25):253,104–253,104CrossRefGoogle Scholar
  36. Zenil H (2010) Compression-based investigation of the dynamical properties of cellular automata and other systems. Complex Syst 19(1):1–28MathSciNetzbMATHGoogle Scholar
  37. Zenil H (2012) On the dynamic qualitative behavior of universal computation. Complex Syst 20(3):265–278MathSciNetGoogle Scholar

Copyright information

© Springer Science+Business Media Dordrecht 2013

Authors and Affiliations

  • Germán Terrazas
    • 1
  • Hector Zenil
    • 3
  • Natalio Krasnogor
    • 2
    Email author
  1. 1.Institute for Advanced Manufacturing, Faculty of EngineeringUniversity of NottinghamNottinghamUK
  2. 2.School of Computing Science and Centre for Bacterial Cell BiologyNewcastle UniversityNewcastle upon TyneUK
  3. 3.Behavioural and Evolutionary Theory Lab, Department of Computer Science, Kroto Research InstituteUniversity of SheffieldSheffieldUK

Personalised recommendations