Natural Computing

, Volume 14, Issue 2, pp 225–250 | Cite as

Parallel computation using active self-assembly

  • Moya Chen
  • Doris Xin
  • Damien Woods


We study the computational complexity of the recently proposed nubots model of molecular-scale self-assembly. The model generalises asynchronous cellular automata to have non-local movement where large assemblies of molecules can be moved around, analogous to millions of molecular motors in animal muscle effecting the rapid movement of macroscale arms and legs. We show that nubots is capable of simulating Boolean circuits of polylogarithmic depth and polynomial size, in only polylogarithmic expected time. In computational complexity terms, we show that any problem from the complexity class NC is solved in polylogarithmic expected time on nubots that use a polynomial amount of workspace. Along the way, we give fast parallel algorithms for a number of problems including line growth, sorting, Boolean matrix multiplication and space-bounded Turing machine simulation, all using a constant number of nubot states (monomer types). Circuit depth is a well-studied notion of parallel time, and our result implies that nubots is a highly parallel model of computation in a formal sense. Asynchronous cellular automata are not capable of such parallelism, and our result shows that adding a movement primitive to such a model, to get the nubots model, drastically increases parallel processing abilities.


Molecular robotics Self-assembly Computational complexity 



We thank Erik Winfree for valuable discussion and suggestions on our results, Paul Rothemund for stimulating conversations on molecular muscle, Niall Murphy for informative discussions on circuit complexity theory, and Dhiraj Holden and Dave Doty for useful discussions. Damien thanks Beverley Henley for introducing him to developmental biology many moons ago. Supported by National Science Foundation grants CCF-1219274, 0832824 (The Molecular Programming Project), and CCF-1162589.


  1. Aggarwal G, Cheng Q, Goldwasser MH, Kao M-Y, de Espanes PM, Schweller RT (2005) Complexities for generalized models of self-assembly. SIAM J Comput 34:1493–1515CrossRefzbMATHMathSciNetGoogle Scholar
  2. Allender E, Koucký M (2010) Amplifying lower bounds by means of self-reducibility. JACM 14:1–36CrossRefGoogle Scholar
  3. Aloupis G, Collette S, Demaine ED, Langerman S, Sacristán V, Wuhrer S (2008) Reconfiguration of cube-style modular robots using \(O(\log n)\) parallel moves. In: ISAAC: Proc. of the 19th Annual International Symposium on Algorithms and Computation, pp 342–353Google Scholar
  4. Aloupis G, Collette S, Damian M, Demaine E, Flatland R, Langerman S, O’Rourke J, Pinciu V, Ramaswami S, Sacristán V, Wuhrer S (2011) Efficient constant-velocity reconfiguration of crystalline robots. Robotica 29(1):59–71CrossRefGoogle Scholar
  5. Becker F, Remila E, Rapaport I (2006) Self-assemblying classes of shapes, fast and with minimal number of tiles. In: Proceedings of the 26th Conference on Foundations of Software Technology and Theoretical Computer Science (FSTTCS 2006), vol 4337 of LNCS. Springer, pp 45–56Google Scholar
  6. Butler Z, Fitch R, Rus D (2002) Distributed control for unit-compressible robots: goal-recognition, locomotion, and splitting. IEEE/ASME Trans Mechatron 7:418–430CrossRefGoogle Scholar
  7. Cannon S, Demaine ED, Demaine ML, Eisenstat S, Patitz MJ, Schweller RT, Summers SM, Winslow A (2013) Two hands are better than one (up to constant factors): Self-assembly In the 2HAM vs. aTAM. In: STACS: 30th International Symposium on Theoretical Aspects of Computer, Science, pp 172–184Google Scholar
  8. Chandran H, Gopalkrishnan N, Reif J (2012) Tile complexity of approximate squares. Algorithmica 66(1):1–17CrossRefMathSciNetGoogle Scholar
  9. Condon A (1994) A theory of strict P-completeness. Comput Complex 4(3):220–241CrossRefzbMATHMathSciNetGoogle Scholar
  10. Dabby N, Chen H-L (2012) Active self-assembly of simple units using an insertion primitive. In: SODA: Proceedings of the 24th Annual ACM-SIAM Symposium on Discrete Algorithms, pp 1526–1536Google Scholar
  11. Demaine E, Demaine M, Fekete S, Ishaque M, Rafalin E, Schweller R, Souvaine D (2008) Staged self-assembly: nanomanufacture of arbitrary shapes with \({O}(1)\) glues. Nat Comput 7(3):347–370CrossRefzbMATHMathSciNetGoogle Scholar
  12. Demaine ED, Eisenstat S, Ishaque M, Winslow A (2011) One-dimensional staged self-assembly. In: DNA: 17th Intl Conf on DNA Computing & Molecular Programming, vol 6937 of LNCS. Pasadena, pp 100–114Google Scholar
  13. Demaine ED, Patitz MJ, Rogers TA, Schweller RT, Summers SM, Woods D (2013) The two-handed tile assembly model is not intrinsically universal. In: ICALP: 40th International Colloquium on Automata, Languages and Programming. Proceedings, part 1, vol 7965 of LNCS. Riga, Latvia, pp 400–412. arXiv:1306.6710 [cs.CG]
  14. Demaine ED, Demaine ML, Fekete SP, Patitz MJ, Schweller RT, Winslow A, Woods D (2014) One tile to rule them all: simulating any Turing machine, tile assembly system, or tiling system with a single puzzle piece. In: ICALP: Proceedings of the 41st International Colloquium on Automata, Languages, and Programming. arXiv:1212.4756 [cs.DS]
  15. Doty D (2010) Randomized self-assembly for exact shapes. SICOMP 39:3521CrossRefzbMATHMathSciNetGoogle Scholar
  16. Doty D, Lutz JH, Patitz MJ, Summers SM, Woods D (2009) Intrinsic universality in self-assembly. In: STACS: Proceedings of the 27th International Symposium on Theoretical Aspects of Computer, Science, pp 275–286Google Scholar
  17. Doty D, Lutz JH, Patitz MJ, Schweller RT, Summers SM, Woods D (2012) The tile assembly model is intrinsically universal. In: FOCS: Proceedings of the 53rd Annual IEEE Symposium on Foundations of Computer, Science, pp 439–446Google Scholar
  18. Fu B, Patitz M, Schweller R, Sheline B (2012) Self-assembly with geometric tiles. In: ICALP: The 39th International Colloquium on Automata, Languages and Programming, vol 7391 of LNCS. Springer, pp 714–725Google Scholar
  19. Gillespie D (1992) A rigorous derivation of the chemical master equation. Phys A 188(1):404–425CrossRefMathSciNetGoogle Scholar
  20. Greenlaw R, Hoover HJ, Ruzzo WL (1995) Limits to parallel computation: P-completeness theory. Oxford University Press, USAzbMATHGoogle Scholar
  21. Hendricks J, Patitz MJ (2013) On the equivalence of cellular automata and the tile assembly model. In: MCU: Proceedings of Machines, Computations and Universality. University of Zürich, Switzerland. September 9–12, Electronic Proceedings in Theoretical Computer Science, vol 128, pp 167–189Google Scholar
  22. Hendricks J, Padilla JE, Patitz MJ, Rogers TA (2013) Signal transmission across tile assemblies: 3D static tiles simulate active self-assembly by 2D signal-passing tiles. In: DNA19: The 19th International Conference on DNA Computing and Molecular Programming, vol 8141 of LNCS. Springer. arXiv:1306.5005 [cs.ET]
  23. Jonoska N, McColm GL (2009) Complexity classes for self-assembling flexible tiles. Theoret Comput Sci 410(4):332–346CrossRefzbMATHMathSciNetGoogle Scholar
  24. Jonoska N, Karpenko D (2012) Active tile self-assembly, self-similar structures and recursion. arXiv:1211.3085 [cs.ET]
  25. Kao M., Schweller R. (2006) Reducing tile complexity for self-assembly through temperature programming. In: SODA: Proceedings of the Seventeenth Annual ACM-SIAM Symposium on Discrete Algorithms, ACM, pp 571–580Google Scholar
  26. Kao M, Schweller R (2008) Randomized self-assembly for approximate shapes. In ICALP: Proceedings of the 35th International Colloquium on Automata, Languages and Programming, vol 5125 of LNCS. Springer, pp 370–384Google Scholar
  27. Keenan A, Schweller R, Sherman M, Zhong X (2014) Fast arithmetic in algorithmic self-assembly. In: UCNC : the 13th International Conference on Unconventional Computation and Natural Computation. arXiv:1303.2416 [cs.DS]
  28. Klavins E (2004) Directed self-assembly using graph grammars. Self Assembled Architectures and Devices, Snowbird, UT, In Foundations of NanoscienceGoogle Scholar
  29. Malchik C, Winslow A (2014) Tight bounds for active self-assembly using an insertion primitive. The 22nd European Symposium on Algorithms. arXiv:1401.0359 [cs.FL]
  30. Martin AC, Kaschube M, Wieschaus EF (2008) Pulsed contractions of an actin-myosin network drive apical constriction. Nature 457(7228):495–499CrossRefGoogle Scholar
  31. Meunier P-E, Patitz MJ, Summers SM, Theyssier G, Winslow A, Woods D (2014) Intrinsic universality in tile self-assembly requires cooperation. In: SODA: ACM-SIAM Symposium on Discrete Algorithms, pp 752–771. arXiv:1304.1679 [cs.CC]
  32. Murata S, Kurokawa H (2007) Self-reconfigurable robots. IEEE Robot Autom Mag 14(1):71–78CrossRefGoogle Scholar
  33. Murphy N, Woods D (2013) AND and/or OR: uniform polynomial-size circuits. In MCU: Machines, Computations and Universality, vol 128, pp 150–166, EPTCS. arXiv:1212.3282
  34. Murphy N, Naughton TJ, Woods D, Henley B, McDermott K, Duffy E, van der Burgt PJ, Woods N (2008) Implementations of a model of physical sorting. Int J Unconv Comput 4(1):3–12Google Scholar
  35. Neary T, Woods D (2006) P-completeness of cellular automaton rule 110. In: ICALP: The 33rd International Colloquium on Automata, Languages and Programming, vol 4051 of LNCS. Springer, pp 132–143Google Scholar
  36. Padilla J, Liu W, Seeman N (2011) Hierarchical self assembly of patterns from the Robinson tilings: DNA tile design in an enhanced tile assembly model. Nat Comput 11(2):323–338CrossRefMathSciNetGoogle Scholar
  37. Padilla J, Patitz M, Pena R, Schweller R, Seeman N, Sheline R, Summers S, Zhong X (2013) Asynchronous signal passing for tile self-assembly: fuel efficient computation and efficient assembly of shapes. In Unconventional Computation and Natural Computation, vol 7956 of LNCS. Springer, pp 174–185Google Scholar
  38. Papadimitriou CM (1994) Computational complexity. Addison-Wesley, New YorkzbMATHGoogle Scholar
  39. Patitz MJ (2012) An introduction to tile-based self-assembly. In: Unconventional Computation and Natural Computation, vol 7445 LNCS. Springer, pp 34–62Google Scholar
  40. Prusinkiewicz P, Lindenmayer A (1990) The algorithmic beauty of plants. Springer, New YorkCrossRefzbMATHGoogle Scholar
  41. Reif J, Slee S (2007) Optimal kinodynamic motion planning for 2D reconfiguration of self-reconfigurable robots. Robot Sci Syst 12(2):81–115Google Scholar
  42. Rothemund PWK, Winfree E (2000) The program-size complexity of self-assembled squares (extended abstract). In: STOC: Proceedings of the thirty-second annual ACM symposium on Theory of computing. ACM Press, pp 459–468Google Scholar
  43. Rus D, Vona M (2001) Crystalline robots: self-reconfiguration with compressible unit modules. Auton Robots 10(1):107–124CrossRefzbMATHGoogle Scholar
  44. Schultes D (2006) Rainbow sort: sorting at the speed of light. Nat Comput 5(1):67–82CrossRefzbMATHMathSciNetGoogle Scholar
  45. Soloveichik D, Cook M, Winfree E, Bruck J (2008) Computation with finite stochastic chemical reaction networks. Nat Comput 7(4):615–633CrossRefzbMATHMathSciNetGoogle Scholar
  46. Summers S (2012) Reducing tile complexity for the self-assembly of scaled shapes through temperature programming. Algorithmica 4:1–20Google Scholar
  47. Vollmer H (1999) Introduction to circuit complexity: a uniform approach. Springer, New YorkCrossRefGoogle Scholar
  48. Winfree E (1988) Algorithmic Self-assembly of DNA. Ph.D. thesis, California Institute of TechnologyGoogle Scholar
  49. Woods D (2005) Upper bounds on the computational power of an optical model of computation. In: Algorithms and Computation. Springer, pp 777–788Google Scholar
  50. Woods D (2013) Intrinsic universality and the computational power of self-assembly. In: MCU: Proceedings of Machines, Computations and Universality, vol 128. Univ. of Zürich, Switzerland. Sept 9–12, Electronic Proceedings in Theoretical Computer Science, pp 16–22Google Scholar
  51. Woods D, Naughton TJ (2008) Parallel and sequential optical computing. In: Optical supercomputing, vol 5172 of LNCS. Springer, pp 70–86Google Scholar
  52. Woods D, Chen H-L, Goodfriend S, Dabby N, Winfree E, Yin P (2013) Active self-assembly of algorithmic shapes and patterns in polylogarithmic time. In: ITCS’13: Proceedings of the 4th conference on Innovations in Theoretical Computer Science. ACM, pp 353–354. Full version: arXiv:1301.2626 [cs.DS]
  53. Yurke B, Turberfield AJ, Mills AP Jr, Simmel FC, Nuemann JL (2000) A DNA-fuelled molecular machine made of DNA. Nature 406:605–608CrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media Dordrecht 2014

Authors and Affiliations

  1. 1.California Institute of TechnologyPasadenaUSA

Personalised recommendations