Introduction to Modeling Algorithmic Self- Assembling Systems Jacob Hendricks University of Wisconsin – River Falls Dagstuhl Seminar: Algorithmic Foundations of Programmable Matter
Self-assembly • Self-assembly: the process by which relatively simple components in a disorganized state autonomously combine to form more complex objects • Natural self-assembling systems span the spectrum of complexity • From crystals (passive components with simpler geometries) • To biology (active components with more complex geometries, properties, and behaviors) • We try to mimic these using artificially developed/modeled systems • Algorithmic self-assembly • Based on computational theory • Design of components forces the self-assembly process to follow prescribed algorithms
Self-assembly in Nature From: https://cheerioseffect.ca/ Photographer: Richard Ling Virus from: https://micro. magnet.fsu.edu/cells/virus.html
DNA Self-assembly
Tile Assembly Model A highly abstracted representation of DNA motifs which can be treated logically as 2-dimensional squares Ned Seeman Erik Winfree Schematic view with extended ‘sticky ends’ Molecular structure of a Holliday junction (Image courtesy of Wikipedia) With the ‘sticky ends’ treated as glues, these molecules can be thought of as square ‘tiles’
Abstract Tile Assembly Model (aTAM) • • Fundamental components are 2-D An infinite supply of each tile type square tiles • Abutting sides of tiles bind if both • Each side has an associated glue, glue strengths and values match with: • Those sides bind with that shared • A type (usually represented by a strength string value) • A tile can bind to an assembly if • An integer-valued strength the sum of binding strengths is at (usually 0, 1, or 2) least equal to the “temperature” • Tiles can also have labels (non- value of the system (usually 1 or functional, for convenience) 2) • Tiles cannot be rotated • Assembly begins from a “seed” tile or assembly and grows 1 tile at a time • Finite number of different tile types
Tile Assembly System in the aTAM Tile set: S Temperature value = 2 Seed = (S, (0,0))
Tile Assembly System in the aTAM Tile set: S Temperature value = 2 Seed = (S, (0,0)) Producible Assembly: S
Tile Assembly System in the aTAM Tile set: S Temperature value = 2 Seed = (S, (0,0)) Producible Assembly: This system is directed . S Terminal Assembly
Tile Assembly System in the aTAM Tile set: Temperature value = 2 Seed = (S, (0,0))
Tile Assembly System in the aTAM Tile set: Attachment by 2 strength-1 bonds is a form of “cooperation” between multiple tiles that gives the model great power Temperature value = 2 Seed = (S, (0,0))
Tile Assembly System in the aTAM Tile set: Temperature value = 2 Seed = (S, (0,0))
Tile Assembly System in the aTAM Tile set: Temperature value = 2 Seed = (S, (0,0))
Tile Assembly System in the aTAM Tile set: Temperature value = 2 Seed = (S, (0,0))
Tile Assembly System in the aTAM Tile set: Θ 𝑂 Θ log 𝑂 tile types Temperature value = 2 Seed = (S, (0,0)) Θ log 𝑂
DNA Binary Counters [Evans, 2014]
Tile Assembly System in the aTAM Tile set: Temperature value = 2 Seed = (S, (0,0))
Tile Assembly System in the aTAM Tile set: Temperature value = 2 Seed = (S, (0,0))
Tile Assembly System in the aTAM Tile set:
DNA Sierpinski Triangle [Papadakis, Rothemund, Winfree 2004] scale bars = 100 nm
Sierpinksi’s Triangle
Strict vs. Weak Self-Assembly There are two main notions of the self-assembly of a set of points (defining a shape or pattern) Strict self-assembly Weak self-assembly Every point in the set, and no other Every point in the set, and no other point, receives a tile. point, receives a tile of a type from a specially defined subset of tile (Note that this means that the shape types (e.g. `red’ tile types). Other must be connected.) points may receive tiles of the other tile types.
Strict vs. Weak Self-Assembly There are two main notions of the self-assembly of a set of points (defining a shape or pattern) Strict self-assembly Weak self-assembly Every point in the set, and no other Every point in the set, and no other point, receives a tile. point, receives a tile of a type from a specially defined subset of tile (Note that this means that the shape types (e.g. `red/blue’ tile types). must be connected.) Other points may receive tiles of the other tile types.
Sierpinksi’s Triangle Sierpinski Triangle: • Easy to weakly self- assemble: only 7 tile types • Impossible to strictly self-assemble [Lathrop, Lutz, Summers, TCS 2009 ] • Approximation is possible [Patitz, Summers, DNA 14 ] • “Similar” shape • Same fractal dimension (1.58)
Fibered Sierpinski Triangle [Patitz and Summers 2010]
Algorithmic Self-assembly • Goals of algorithmic self-assembly include: Binary counter • Embedding computations which control the dimensions, shapes, and compositions of assemblies • Discovering powers and limitations of self- assembling systems Barish, Shulman, Rothemund, and Winfree, PNAS, 106 (2009) • Information theoretic lower bounds (e.g. an n x n square requires log(n)/log(log(n)) unique tile types) [Rothemond, Winfree, STOC 2000 ] Self-similar fractal • Impossibility of self-assembling some structures (e.g strict version of Sierpinski triangle [Lathrop, Lutz, Summers, CiE 2007 ] • Designing systems which are robust to errors • Model a variety of different phenomena Fibered Sierpinski Carpet Fujibayashi, Hariadi, Park, Winfree, [Patitz and Summers, Natural Computing & Murata, ACS NanoLetters, 8-7 (2007) 2010 ]
Tile Assembly Model • Design concerns for a tile assembly system (TAS) • Tile complexity : How many unique tile types are required? • Scale factor : Does it form a scaled version of the desired shape? If so, what is the scaling factor? • It is directed – meaning that despite nondeterministic assembly sequences, it always produces the same thing X 2 3 8 2 X X 1 4 7 1 X X S 0 5 6 0 3 4 9 tile types 6 tile types! Scale factor = 2
Self-assembly Models • Variations on models [Hendricks, Patitz, Rogers DNA 21] • Differing dynamics • Hierarchical self-assembly • Staged self-assembly • Varying temperatures and concentrations • Allow tile rotation, reflection, etc. • Cooperative vs. non-cooperative [Cannon et al. 2013] • Allowing errors [Cook et al. SODA 2011] • [Patitz et al. DNA 17] Differing components [Doty et al. FOCS 2010] • Polyominoes and polygons • Repulsive “glues” • Active, signal-passing tiles [Meunier UCNC 2014] [Padilla et al. UCNC 2013] [Staged Self-Assembly, Demain et al. 2008] [Kao, Schweller 2006; Summers 2009 (figure)] [Kao, Schweller 2008; Doty 2010 (figure)] [Demaine et al. ICALP 2014] [SODA 2015] [Fekete et al, SODA 2014]
Benchmarks of a self-assembly model • Universal computation • Algorithmic behavior is possible • aTAM is universal [Winfree 1998] • Efficient assembly of NxN square • Algorithmic behavior is useful • Fewer tile types = more efficient
Benchmarks of a self-assembly model • Universal computation • Algorithmic behavior is possible • aTAM is universal [Winfree 1998] • Efficient assembly of NxN square • Algorithmic behavior is useful • Fewer tile types = more efficient
Turing Machines Simulation by a Zig-Zag Tile Assembly System Temperature 2
Turing Machines Simulation by a Zig-Zag Tile Assembly System Temperature 2
Turing Machines Simulation by a Zig-Zag Tile Assembly System Temperature 2
Turing Machines Simulation by a Zig-Zag Tile Assembly System
Turing Machines Simulation by a Zig-Zag Tile Assembly System
Turing Machines Simulation by a Zig-Zag Tile Assembly System
Benchmarks of a self-assembly model • Universal computation • Algorithmic behavior is possible • aTAM is universal [Winfree 1998] • Efficient assembly of NxN square • Algorithmic behavior is useful • Fewer tile types = more efficient
Efficient assembly of NxN square Temperature 1 N N
Efficient assembly of NxN square Temperature 1 2N – 1 Tile Types N N
Efficient assembly of NxN square Temperature 2 Tile types: Θ 𝑂 Θ log 𝑂 log 𝑂 Ω log log 𝑂 Θ 𝑂 [Rothemund, Winfree 2000] [Adleman, Cheng, Goel, Huang, STOC 2001]
Non-Cooperative Self-Assembly • Only one glue needs to match for a tile to attach • Example: Temperature-1 aTAM
Tile Assembly System in the aTAM Tile set: S Temperature value = 1 Seed = (S, (0,0)) Producible Assembly:
Non-Cooperative Self-Assembly • Conjectured to be “weak” in the general TAM [Doty, Patitz, Summers, Theoretical Computer Science, 2011 ] • Computation impossible • Cannot be algorithmically directed • Huge numbers of (sometimes exponentially more) unique tile types required to self-assemble basic shapes • Pierre-Etienne Meunier showed that tile sets of n tile types can create assemblies of diameter 2n+o(n) [ UCNC 2015 ]
Recommend
More recommend