Natural Computing

, Volume 17, Issue 4, pp 693–707 | Cite as

DNA-templated synthesis optimization

  • Bjarke N. Hansen
  • Kim S. Larsen
  • Daniel MerkleEmail author
  • Alexei Mihalchuk


In chemistry, synthesis is the process in which a target compound is produced in a step-wise manner from given base compounds. A recent, promising approach for carrying out these reactions is DNA-templated synthesis, since, as opposed to more traditional methods, this approach leads to a much higher effective molarity and makes much desired (sequential) one-pot synthesis possible. With this method, compounds are tagged with DNA sequences and reactions can be controlled by bringing two compounds together via their tags. This leads to new cost optimization problems of minimizing the number of different tags or strands to be used under various conditions. We identify relevant optimization criteria, provide the first computational approach to automatically inferring DNA-templated programs, and obtain efficient optimal and near-optimal results, and also provide a brute-force integer linear programming approach for complete solutions to smaller instances.


DNA-templated synthesis Optimization Trees Graphs Cheminformatics 

Mathematics Subject Classification

68 92 68W40 92E10 


  1. Adleman LM (1994) Molecular computation of solutions to combinatorial problems. Science 5187:1021–1024CrossRefGoogle Scholar
  2. Andersen JL, Flamm C, Hanczyc MM, Merkle D (2015) Towards optimal DNA-templated computing. Int J Unconv Comput 11(3–4):185–203Google Scholar
  3. Benson E, Mohammed A, Gardell J, Masich S, Czeizler E, Orponen P, Högberg B (2015) DNA rendering of polyhedral meshes at the nanoscale. Nature 523:441–444CrossRefGoogle Scholar
  4. Cardelli L (2010) Two-domain DNA strand displacement. In: 6th workshop on developments in computational models, volume 26 of electronic proceedings in theoretical computer science, pp 47–61CrossRefGoogle Scholar
  5. de Werra D, Pasche C (1989) Paths, chains, and antipaths. Networks 19(1):107–115MathSciNetCrossRefGoogle Scholar
  6. Ershov AP (1958) On programming of arithmetic operations. Dokl Akad Nauk SSSR 118(3):427–430MathSciNetzbMATHGoogle Scholar
  7. Flajolet P, Raoult JC, Vuillemin J (1979) The number of registers required for evaluating arithmetic expressions. Theor Comput Sci 9(1):99–125MathSciNetCrossRefGoogle Scholar
  8. Goodnow RA Jr, Dumelin CE, Keefe AD (2017) DNA-encoded chemistry: enabling the deeper sampling of chemical space. Nat Rev Drug Discov 16:131–147CrossRefGoogle Scholar
  9. Gorska K, Winssinger N (2013) Reactions templated by nucleic acids: more ways to translate oligonucleotide-based instructions into emerging function. Angew Chem Int Ed 52(27):6820–6843CrossRefGoogle Scholar
  10. Hansen BN, Mihalchuk A (2015) DNA-templated computing. Master’s thesis, University of Southern Denmark, Denmark. Accessed 25 July 2018
  11. Hansen BN, Larsen KS, Merkle D, Mihalchuk A (2017) DNA-templated synthesis optimization. In: 23rd international conference on DNA computing and molecular programming (DNA), volume 10467 of Lecture Notes in Computer Science. Springer, pp 17–32Google Scholar
  12. He Y, Liu DR (2011) A sequential strand-displacement strategy enables efficient six-step DNA-templated synthesis. J Am Chem Soc 133(26):9972–9975CrossRefGoogle Scholar
  13. Hendrickson JB (1977) Systematic synthesis design. 6. Yield analysis and convergency. J Am Chem Soc 99:5439–5450CrossRefGoogle Scholar
  14. Li X, Liu DR (2004) DNA-templated organic synthesis: nature’s strategy for controlling chemical reactivity applied to synthetic molecules. Angew Chem Int Ed 43:4848–4870CrossRefGoogle Scholar
  15. Meng W, Muscat RA, McKee ML, Milnes PJ, El-Sagheer AH, Bath J, Davis BG, Brown T, O’Reilly RK, Turberfield AJ (2016) An autonomous molecular assembler for programmable chemical synthesis. Nat Chem 8:542–548CrossRefGoogle Scholar
  16. Nakata I (1967) On compiling algorithms for arithmetic expressions. Commun ACM 10(8):492–494CrossRefGoogle Scholar
  17. Phillips A, Cardelli L (2009) A programming language for composable DNA circuits. J R Soc Interface 6(Suppl 4):S419–S436CrossRefGoogle Scholar
  18. Sethi R, Ullman JD (1970) The generation of optimal code for arithmetic expressions. J ACM 17(4):715–728MathSciNetCrossRefGoogle Scholar
  19. Strahler AN (1952) Hypsometric (area-altitude) analysis of erosional topography. Bull Geol Soci Am 63:1117–1142CrossRefGoogle Scholar
  20. Wickham SFJ, Bath J, Katsuda Y, Endo M, Hidaka K, Sugiyama H, Turberfield AJ (2012) A DNA-based molecular motor that can navigate a network of tracks. Nat Nanotechnol 7:169–173CrossRefGoogle Scholar

Copyright information

© Springer Nature B.V. 2018

Authors and Affiliations

  1. 1.Department of Mathematics and Computer ScienceUniversity of Southern DenmarkOdense MDenmark

Personalised recommendations