Skip to main content

Programming Self-Assembling Systems via Physically Encoded Information

  • Chapter
  • First Online:

Part of the book series: Understanding Complex Systems ((UCS))

Abstract

Throughout nature, in both the inorganic and organic realms, complex entities emerge as a result of self-assembly from decentralised components governed by simple rules. Natural self-assembly is dictated by the morphology of the components and the environmental conditions they are subjected to, as well as the physical and chemical properties of their components and environments—their information. Components, their environment, and the interactions among them form a system, which can be described as a set of simple rules. The process of self-assembly is equivalent to a physical computation, through the interaction and transformation of physically and chemically encoded information. A critical question then arises: How does one program self-assembling systems? In the pursuit of answering this question we first use the classic Penrose physical self-assembling system as a case study. This is followed by our three-level design approach, which comprises: specifying a set of self-assembly rules, modelling these rules to determine the outcome of a system in software, and translating to a physical system by mapping the set of rules using physically encoded information. The objective of our approach is to provide a bottom-up design methodology to create scalable self-assembling systems. Two physically encoded information schemes are presented in eight experiments, to demonstrate how component interactions can be directed during the self-assembly process. The results show that the translated physical systems self-assembled into the target structures achieved by the modelling. We use rapid prototyping to construct the translated components and their environment in the latter three experiments. These successful results demonstrate how our three-level approach can be used for programming self-assembling systems via physically encoded information.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   109.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   139.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD   139.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Notes

  1. 1.

    Supplementary resources, including CNC/CAD files [20] and videos, pertaining to the case study and experiments can be found at http://www.navneetbhalla.com/resources.

References

  1. Adleman, L., Cheng, Q., Goel, A., Huang, M.D.: Running time and program size for self-assembled squares. In: STOC ’01 Processdings of the Thirty-third Annual ACM Sympsoium on Theory of, Computing, pp. 740–758 (2001)

    Google Scholar 

  2. Adleman, L.M.: Molecular computation of solutions to combinatorial problems. Science 266(5187), 1021–1024 (1994)

    Article  Google Scholar 

  3. Aggarwal, G., Cheng, Q., Goldwasser, M.H., Kao, M.Y., de Espanés, P.M., Schweller, R.T.: Complexities for generalized models of self-assembly. SIAM J. Comput. 34(6), 1493–1515 (2005)

    Article  MathSciNet  MATH  Google Scholar 

  4. Ball, P.: The shape of things to come. Nature 371, 202–203 (1994)

    Article  Google Scholar 

  5. Ball, P.: The Self-Made Tapestry: Pattern Formation in Nature. Oxford University Press, Oxford (1999)

    MATH  Google Scholar 

  6. Ball, P.: Branches: Nature’s Patterns: A Tapestry in Three Parts. Oxford University Press, Oxford (2009)

    MATH  Google Scholar 

  7. Ball, P.: Flow: Nature’s Patterns: A Tapestry in Three parts. Oxford University Press, Oxford (2009)

    MATH  Google Scholar 

  8. Ball, P.: Shapes: Nature’s Patterns: A Tapestry in Three Parts. Oxford University Press, Oxford (2009)

    MATH  Google Scholar 

  9. Barish, R.D., Rothemund, P.W.K., Winfree, E.: Two computational primitives for algorithmic self-assembly: copying and counting. Nano Lett. 5(12), 2586–2592 (2005)

    Article  Google Scholar 

  10. Berger, R.: Memoirs of the American Mathematical Society: The Undecidability of the Domino Problem, vol. 66. American Mathematical Soceity, Providence (1966)

    Google Scholar 

  11. Bhalla, N.: Self-assembling systems in two dimensions. Master’s thesis, M.Sc. in Intelligent Systems, University College London (2004)

    Google Scholar 

  12. Bhalla, N.: Designing self-assembling systems via physically encoded information. Ph.D. thesis, Department of Computer Science, University of Calgary (2011).

    Google Scholar 

  13. Bhalla, N., Bentley, P.J.: Working towards self-assembling robots at all scales. In: International Conference on Autonomous Robots and Agents (ICARA 2006), pp. 617–622. Palmerston North, NZ (2006)

    Google Scholar 

  14. Bhalla, N., Bentley, P.J., Jacob, C.: Mapping virtual self-assembly rules to physical systems. In: Proceedings of the International Conference on Unconventional Computing (UC 2007), pp. 117–147 (2007)

    Google Scholar 

  15. Bhalla, N., Bentley, P.J., Jacob, C.: Evolving self-assembling systems in two-dimensions. In: Proceedings of the International Conference on Evolvable Systems (ICES2010), pp. 381–392. Springer, Heidelberg (2010)

    Google Scholar 

  16. Bhalla, N., Bentley, P.J., Vize, P.D., Jacob, C.: Programming and evolving physical self-assembling systems in three dimensions. Nat. Comput. J. 11(3), 475–498 (2012). http://www.springerlink.com/content/vk86j5h8l6087207/

    Google Scholar 

  17. Bhalla, N., Bentley, P.J., Vize, P.D., Jacob, C.: Staging the self-assembly process using morphological information. In: T. Lenaerts, M. Giacobini, H. Bersini, P. Bourgine, M. Dorigo, R. Doursat (eds.) Proceedings of the European Conference on Artificial Life (ECAL 2011), pp. 93–100 (2011)

    Google Scholar 

  18. Bhalla, N., Bentley, P.J., Vize, P.D., Jacob, C.: Staging the self-assembly process: inspiration from biological development. Artif. Life J. (in print).

    Google Scholar 

  19. Boncheva, M., Bruzewicz, D.A., Whitesides, G.M.: Millimeter-scale self-assembly and its applications. Pure Appl. Chem. 75(5), 621–630 (2003)

    Article  Google Scholar 

  20. Callicott, N.: Computer-Aided Manufacture in Architecture: The Pursuit of Novelty. Architectural Press, Oxford (2001)

    Google Scholar 

  21. Chandran, H., Gopalkrishnan, N., Reif, J.: The tile complexity of linear assemblies. In: Albers, S., Marchetti-Spaccamela, A., Matiasand, Y., Nikoletseas, S., Thomas, W. (eds.) Automata, Languages and Programming, Lecture Notes in Computer Science, vol. 5555, pp. 235–253. Springer, Berlin (2009)

    Google Scholar 

  22. Christner, B.C., Morris, C.E., Foreman, C.M., Cai, R., Sands, D.C.: Ubiquity of biological ice nucleators in snowfall. Science 319(5867), 1214 (2008)

    Article  Google Scholar 

  23. Crick, F.: Central dogma of molecular biology. Nature 227, 561–563 (1970)

    Article  Google Scholar 

  24. Culik II, K.: An aperiodic set of 13 wang tiles. Discrete Math. 160, 245–251 (1996)

    Article  MathSciNet  MATH  Google Scholar 

  25. Demaine, E.D., Demaine, M.L., Fekete, S.P., Ishaque, M., Rafalin, E., Schweller, R.T., Souvaine, D.L.: Staged self-assembly: nanomanufacture of arbitrary shapes with o(1) glues. Nat. Comput. 7(3), 347–370 (2008)

    Article  MathSciNet  MATH  Google Scholar 

  26. Doty, D.: Randomized self-assembly for exact shapes. In: Proceedings of the 50th Annual IEEE Symposium on Foundations of Computer Science (FOCS 2009), pp. 85–94 (2009)

    Google Scholar 

  27. Douglas, S.M., Dietz, H., Liedl, T., Högberg, B., Graf, F., Shih, W.M.: Self-assembly of dna into nanoscale three-dimensional shapes. Nature 459, 414–418 (2009)

    Article  Google Scholar 

  28. Doursat, R.: Programmable architectures that are complex and self-organized: from morphogeneis to engineering. In: 11th International Conference on the Simulation and Synthesis of Living Systems (ALIFE XI), pp. 181–188 (2008)

    Google Scholar 

  29. Doursat, R., Sayama, H., Michel, O.: Overview. In: 1st International Workshop on Morphogenetic Engineering, p. 2 (2009)

    Google Scholar 

  30. de Espanés, P.M., Goel, A.: Toward minimum self-assembled counters. In: Garzon, M.H., Yan, H. (eds.) DNA Computing, Lecture Notes in Computer Science, vol. 4848, pp. 46–53. Springer, Berlin (2007)

    Google Scholar 

  31. Freitas Jr, R.A., Merkle, R.C.: Kinematic Self-Replicating Machines. Landes Bioscience, Georgetown (2004)

    Google Scholar 

  32. Garey, M., Johnson, D.S.: Computers and Intractability: A Guide to the Theory of NP-Completeness. W.H. Freeman and Company, San Francisco (1979)

    MATH  Google Scholar 

  33. Goel, A., Cheng, Q., de Espanés, P.M.: Optimal self-assembly of counters at temperature two. In: Proceedings of the First Conference on Foundations of Nanoscience (2004)

    Google Scholar 

  34. Ingber, D.E.: The architecture of life. Sci. Am. 278, 48–57 (1998)

    Article  Google Scholar 

  35. Jones, C., Matari, M.J.: From local to global behavior in intelligent self-assembly. In: Proceedings of the 2003 IEEE International Conference on Robotics and Automation, vol. 1, pp. 721–726 (2003)

    Google Scholar 

  36. Kaewkamnerdpong, B., Bhalla, N., Bentley, P.J.: Programming nanotechnology: learning from nature. In: Zelkowitz, M.V. (ed.) Advances in Computers, vol. 71. Academic Press, Amsterdam (2007)

    Google Scholar 

  37. Kao, M.Y., Schweller, R.T.: Randomized self-assembly for approximate shapes. In: Proceedings of the 35th International Colloquium on Automata, Languages and Programming (ICALP 2008) (2008)

    Google Scholar 

  38. Kauffman, S.: Investigations. Oxford University Press, New York (2000)

    Google Scholar 

  39. Klavins, E., Ghrist, R., Lipsky, D.: A grammatical approach to self-organizing robotic systems. IEEE Trans. Autom. Control 51(6), 949–962 (2006)

    Article  MathSciNet  Google Scholar 

  40. Krasnogor, N., Gustafson, S., Pelta, D.A., Verdegay, J.L. (eds.): Systems Self-Assembly: Multidisciplinary Snapshots, vol. 5. Elsevier, Hungary (2008)

    Google Scholar 

  41. Libbercht, K.G.: Morphogenesis on ice: the physics of snow crystals. Eng. Sci. LXIV(1), 10–19 (2001)

    Google Scholar 

  42. Mitchell, M.: An Introduction to Genetic Algorithms. MIT Press, Cambridge (1996)

    Google Scholar 

  43. Moore, E.F.: Machine models of self-replication. In: R. Bellman (ed.) Proceedings of the 14th Symposium in Applied Mathematics, pp. 17–33. American Mathematical Soceity, New York (1962)

    Google Scholar 

  44. Murphy, M.P., O’Neill, L.A.J.: What is Life? The Next Fifty Years: Speculations on the Future of Biology. Cambridge University Press, Cambridge (1997)

    Google Scholar 

  45. Nagpal, R.: Self-organizing shape and pattern: from cells to robots. IEEE Intell. Syst. 21(2), 50–53 (2006)

    Article  Google Scholar 

  46. Păun, G., Rozenberg, G., Salomaa, A.: DNA Computing: New Computing Paradigms. Springer, New York (1998)

    MATH  Google Scholar 

  47. Pelesko, J.: Self-Assembly: The Science of Things that Put Themselves Together. Chapman and Hall/CRC Press, Boca Raton (2007)

    Book  MATH  Google Scholar 

  48. Pelletier, O., Weimerskrich, A.: Algorithmic self-assembly of dna tiles and its applications to cryptanalysis. In: Proceedings of the International Conference on Genetic and Evolutionary Computation (GECCO 2002) (2002)

    Google Scholar 

  49. Penrose, L.S.: Mechanics of self-reproduction. Ann. Human Genet. 23, 59–72 (1958)

    Article  Google Scholar 

  50. Penrose, L.S.: Self-reproducing machines. Sci. Am. 200, 105–114 (1959)

    Article  Google Scholar 

  51. Penrose, L.S., Penrose, R.: A self-reproducing analogue. Nature 179(4571), 1183–1184 (1957)

    Article  Google Scholar 

  52. Penrose, R.: Role of aesthetics in pure and applied research. Bull. Inst. Math. Appl. 10, 266 (1974)

    Google Scholar 

  53. Rothemund, P.W.K.: Design of dna origami. In: Proceedings of the International Conference on Computer-Aided Design (ICCAD 2005) (2005)

    Google Scholar 

  54. Rothemund, P.W.K.: Folding dna to create nanoscale shapes and patterns. Nature 440, 297–302 (2006)

    Article  Google Scholar 

  55. Rothemund, P.W.K., Winfree, E.: The program size complexity of self-assembled squares. In: ACM Symposium on Theory of Computing (STOC 2000), pp. 459–468 (2000)

    Google Scholar 

  56. Schrödinger, E.: What is Life? With Mind and Matter and autobiographical sketches. Canto Series. Cambridge University Press, Cambridge (1944, reprinted 2003)

    Google Scholar 

  57. Senechal, M.: What is a quasicrystal. Not. AMS 53(8), 886–887 (2006)

    MathSciNet  MATH  Google Scholar 

  58. Sipser, M.: Introduction to the Theory of Computation. PWS Pub. Co., Boston (1997)

    MATH  Google Scholar 

  59. Stepney, S., Braunstein, S.L., Clark, J.A., Tyrrell, T., Adamatzky, A., Smith, R.E., Addis, T., Johnson, C., Timmis, J., Welch, P., Milner, R., Partridge, D.: Journeys in non-classical computation i: a grand challenge. Int. J. Parallel Emergent Distrib. Syst. 20(1), 5–19 (2005)

    Article  MathSciNet  MATH  Google Scholar 

  60. Stepney, S., Braunstein, S.L., Clark, J.A., Tyrrell, T., Adamatzky, A., Smith, R.E., Addis, T., Johnson, C., Timmis, J., Welch, P., Milner, R., Partridge, D.: Journeys in non-classical computation ii: initial journeys and waypoints. Int. J. Parallel Emergent Distrib. Syst. 21(2), 97–125 (2006)

    Article  MathSciNet  Google Scholar 

  61. Symonds, N.: What is life? schrödinger’s influence on biology. Q. Rev. Biol. 61(2), 221–226 (1986)

    Article  Google Scholar 

  62. Symonds, N.: Schrödiner and what is life? Nature 327, 663–664 (1987)

    Article  Google Scholar 

  63. Thompson, D.W.: On Growth and Form (abridged ed./edited by John Tyler Bonner). Canto Series. Cambridge University Press, Cambridge (1942, reprinted 1992)

    Google Scholar 

  64. Turing, A.M.: On computable numbers, with application to the entscheidungsproblem. Proc. Lond. Math. Soc. Ser. 2(42), 230–265 (1936)

    MathSciNet  Google Scholar 

  65. Wang, H.: Proving theorems by pattern recognition ii. Bell Syst. Tech. J. 40(1), 1–41 (1961)

    Google Scholar 

  66. Wang, H.: Games, logic and computers. Sci. Am. 213, 98–106 (1965)

    Google Scholar 

  67. Watson, J.D., Crick, F.H.C.: Molecular structure of nucleic acids—a structure for deoxyribose nucleic acid. Nature 171(4356), 737–738 (1953)

    Article  Google Scholar 

  68. Whitesides, G.M., Boncheva, M.: Beyond molecules: self-assembly of mesoscopic and macroscopic components. PNAS 99(8), 4769–4774 (2002)

    Article  Google Scholar 

  69. Whitesides, G.M., Boncheva, M.: Making things by self-assembly. MRES Bull. 30, 736–742 (2005)

    Article  Google Scholar 

  70. Whitesides, G.M., Grzybowski, B.: Self-assembly at all scales. Science 295(5564), 2418–2421 (2002)

    Article  Google Scholar 

  71. Winfree, E.: On the computational power of dna annealing and ligation. DNA Based Comput. 27, 199–221 (1995)

    Google Scholar 

  72. Winfree, E.: Algorithmic self-assembly of dna. Ph.D. thesis, California Institute of Technology (1998)

    Google Scholar 

  73. Winfree, E.: Simulations of computing by self-assembly. DNA Based Computers IV (1998)

    Google Scholar 

  74. Winfree, E.: Algorithmic self-assembly of dna: theoretical motivations and 2d assembly experiments. J. Biomol. Struct. Dyn. 11(2), 263–270 (1999)

    Google Scholar 

  75. Winfree, E., Liu, F., Wenzier, L.A., Seeman, N.C.: Design and self-assembly of two-dimensional dna crystals. Nature 394(6), 539–544 (1998)

    Article  Google Scholar 

  76. Wolfram, S.: A New Kind of Science. Wolfram Media, Champaign (2002)

    MATH  Google Scholar 

Download references

Acknowledgments

We thank Charanjit Bilkhu and Luc Martin at Surtek Precision Machining Inc. for their assistance in constructing parts for the Penrose system. We also thank Garry Campbell and his team at Nova Product Development Services Ltd., and Craig LeBlanc and Christopher Massie at the Faculty of Environmental Design, University of Calgary, for their assistance in constructing parts for the three experiments.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Navneet Bhalla .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2012 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Bhalla, N., Bentley, P.J. (2012). Programming Self-Assembling Systems via Physically Encoded Information. In: Doursat, R., Sayama, H., Michel, O. (eds) Morphogenetic Engineering. Understanding Complex Systems. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-33902-8_7

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-33902-8_7

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-33901-1

  • Online ISBN: 978-3-642-33902-8

  • eBook Packages: Physics and AstronomyPhysics and Astronomy (R0)

Publish with us

Policies and ethics