Molecular Self-Assembly: Models and Algorithms

Similar documents
Combinatorial Algorithms and Computational Complexity for DNA Self-Assembly

Strict Self-Assembly of Discrete Sierpinski Triangles

On Times to Compute Shapes in 2D Tile Self-Assembly

DNA Computing by Self Assembly. Presented by Mohammed Ashraf Ali

DNA-Scaffolded Self-Assembling Nano-Circuitry

Active Tile Self Assembly:

Parallelism and time in hierarchical self-assembly

1. Introduction OPTIMAL TIME SELF-ASSEMBLY FOR SQUARES AND CUBES

Self-Assembly and Convergence Rates of Heterogeneous Reversible Growth Processes (Extended Abstract)

Strict Self-Assembly of Discrete Sierpinski Triangles

Programmable Control of Nucleation for Algorithmic Self-Assembly

Parallelism and Time in Hierarchical Self-Assembly

Goal: To use DNA self-assembly to overcome the challenges of optical and e-beam lithography in creating nanoscale circuits.

Solving NP-Complete Problems in the Tile Assembly Model

Integer and Vector Multiplication by Using DNA

Computers of the Future? Moore s Law Ending in 2018?

How Does Nature Compute?

arxiv: v1 [cs.cc] 12 Mar 2008

Week 2: Defining Computation

Self-Assembly. Lecture 2 Lecture 2 Models of Self-Assembly

Floating Point Representation and Digital Logic. Lecture 11 CS301

The domino problem for self-similar structures

Game Theory and Algorithms Lecture 7: PPAD and Fixed-Point Theorems

Foundations of Computation

Inorganic compounds that semiconduct tend to have an average of 4 valence electrons, and their conductivity may be increased by doping.

Contents. Counting Methods and Induction

How do scientists build something so small? Materials 1 pkg of modeling materials 1 piece of butcher paper 1 set of cards 1 set of markers

CSCI 2570 Introduction to Nanocomputing

Section 20: Arrow Diagrams on the Integers

NP-Completeness I. Lecture Overview Introduction: Reduction and Expressiveness

CSCI 2150 Intro to State Machines

arxiv: v1 [cs.et] 19 Feb 2015

MACHINE COMPUTING. the limitations

Computer Science 324 Computer Architecture Mount Holyoke College Fall Topic Notes: Digital Logic

arxiv: v1 [cs.cc] 7 Jul 2009

Limitations of Self-Assembly at Temperature 1

From Local to Global Behavior in Intelligent Self-Assembly

von Neumann Architecture

Mathematical Induction. EECS 203: Discrete Mathematics Lecture 11 Spring

Chemistry 1B Experiment 14 65

Lesson Overview The Structure of DNA

Toward Modular Molecular Composite Nanosystems

Chapter 2. Mathematical Reasoning. 2.1 Mathematical Models

MS&E338 Reinforcement Learning Lecture 1 - April 2, Introduction

A tricky node-voltage situation

One-Dimensional Staged Self-Assembly

Designing Information Devices and Systems I Fall 2018 Lecture Notes Note Introduction: Op-amps in Negative Feedback

CS1800: Strong Induction. Professor Kevin Gold

VLSI Design, Fall Logical Effort. Jacob Abraham

Logical AND. Logical XOR

Atoms, Molecules and Solids. From Last Time Superposition of quantum states Philosophy of quantum mechanics Interpretation of the wave function:

CSE370 HW3 Solutions (Winter 2010)

Prove that if not fat and not triangle necessarily means not green then green must be fat or triangle (or both).

Lecture 6: Logical Effort

Using DNA to Solve NP-Complete Problems. Richard J. Lipton y. Princeton University. Princeton, NJ 08540

Chapter 12 - Modern Materials

Channel Coding and Interleaving

Name: Answers. Mean: 38, Standard Deviation: 15. ESE370 Fall 2012

Binary addition example worked out

Parallel Solution to the Dominating Set Problem by Tile Assembly System

Gates and Logic: From switches to Transistors, Logic Gates and Logic Circuits

Lecture 8 : Structural Induction DRAFT

1 Boolean Algebra Simplification

Chaotic Modeling and Simulation (CMSIM) 2: , 2017

Stochastic Analysis of Reversible Self-Assembly

Great Theoretical Ideas in Computer Science. Lecture 7: Introduction to Computational Complexity

The living world has a hierarchy of organizational levels - from molecules to ecosystems

Fundamentals of Mathematics I

CS 173: Induction. Madhusudan Parthasarathy University of Illinois at Urbana-Champaign. February 7, 2016

EE 447 VLSI Design. Lecture 5: Logical Effort

Boolean circuits. Lecture Definitions

Nanotechnology? Source: National Science Foundation (NSF), USA

The Design and Fabrication of a Fully Addressable 8-tile DNA Lattice

Theoretical Computer Science. A comparison of graph-theoretic DNA hybridization models

Pr[X = s Y = t] = Pr[X = s] Pr[Y = t]

Bayes Nets. CS 188: Artificial Intelligence Fall Example: Alarm Network. Bayes Net Semantics. Building the (Entire) Joint. Size of a Bayes Net

Sample Project: Simulation of Turing Machines by Machines with only Two Tape Symbols

Chapter Finding parse trees

EECS150 - Digital Design Lecture 21 - Design Blocks

The Basics COPYRIGHTED MATERIAL. chapter. Algebra is a very logical way to solve

FIT100 Spring 01. Project 2. Astrological Toys

CPSC 506: Complexity of Computa5on

Numbers & Arithmetic. Hakim Weatherspoon CS 3410, Spring 2012 Computer Science Cornell University. See: P&H Chapter , 3.2, C.5 C.

On the Complexity of Graph Self-assembly in Accretive Systems

DYNAMICAL SYSTEMS

BME 5742 Biosystems Modeling and Control

We are here. Assembly Language. Processors Arithmetic Logic Units. Finite State Machines. Circuits Gates. Transistors

Gates and Logic: From Transistors to Logic Gates and Logic Circuits

Advanced Protein Models

EC-121 Digital Logic Design

Building a Nanofactory

School of Computer Science and Electrical Engineering 28/05/01. Digital Circuits. Lecture 14. ENG1030 Electrical Physics and Electronics

Modeling through self-assembly Jos Stam

Chapter Finding parse trees

A tricky node-voltage situation

Advanced Protein Models

BOOLEAN ALGEBRA INTRODUCTION SUBSETS

Lecture 6: September 22

Memory Elements I. CS31 Pascal Van Hentenryck. CS031 Lecture 6 Page 1

COSC 243. Introduction to Logic And Combinatorial Logic. Lecture 4 - Introduction to Logic and Combinatorial Logic. COSC 243 (Computer Architecture)

Transcription:

Molecular Self-Assembly: Models and Algorithms Ashish Goel Stanford University MS&E 319/CS 369X; Research topics in optimization; Stanford University, Spring 2003-04 http://www.stanford.edu/~ashishg

Self-Assembly Self-Assembly is the process by which simple objects autonomously assemble into complexes. Geometry, dynamics, combinatorics are all important Inorganic: Crystals, supramolecules Organic: Proteins, DNA, cells, organisms Goals: Understand self-assembly, design selfassembling systems A key problem in nano-technology, molecular robotics, molecular computation (Chen, Goel, Cheng)

What is Molecular Self-assembly? Self-assembly is the spontaneous formation of a complex by small (molecular) components under simple combination rules Geometry, dynamics, combinatorics are all important Inorganic: Crystals, supramolecules Organic: Proteins, DNA Goals: Understand self-assembly, design selfassembling systems A key problem in nano-technology, molecular robotics, molecular computation MS&E 319, Molecular self-assembly: models and algorithms. Stanford University, Spring 2003-04 3

A Matter of Scale Question: Why a mathematical study of molecular selfassembly specifically? Answer: The scale changes everything Consider assembling micro-level (or larger) structures such as robotic swarms. We can attach rudimentary computers, motors, and radios to these structures. Can now implement an intelligent distributed algorithm. In molecular self-assembly, we have nano-scale components. No computers. No radios. No antennas. We need self-assembly to make computers, radios, antennas, motors. Local rules such as attach to another component if it has a complementary DNA strand Self-assembly at larger scales is interesting, but is more a subdiscipline of distributed algorithms, artificial intelligence etc. MS&E 319, Molecular self-assembly: models and algorithms. Stanford University, Spring 2003-04 4

The Tile Model of Self-Assembly Oriented Tiles with a glue on each side Each glue is labeled by a strength a b b Single bar: strength 1 glue Double bar: strength 2 glue d Tiles floating on an infinite grid; Temperature τ A tile can add to an existing assembly if total strength of matching glues τ f a b c b b c d a [Wang 61] τ = 2 MS&E 319, Molecular self-assembly: models and algorithms. Stanford University, Spring 2003-04 5

Tiling Self-Assembly of Counter (Chen, Goel, Cheng) Counter made by self-assembly [Adleman, Cheng, Goel, Huang 01]

Synthesized Tile Systems I Styrene molecules attaching to a Silicon substrate Coat Silicon substrate with Hydrogen Remove one Hydrogen atom and bombard with Styrene molecules One Styrene molecule attaches, removes another Hydrogen atom, resulting in a chain Suggested use: Self-assembled molecular wiring on electronic circuits [Wolkow et al. 00] MS&E 319, Molecular self-assembly: models and algorithms. Stanford University, Spring 2003-04 7

DNA Tiles [Winfree] Glues = sticky ends Tiles = molecules (Chen, Goel, Cheng)

Temperature: A positive integer. Tile System: A set of tile types: Each tile is an oriented square with glues on its edges. Each glue has a non-negative strength. An initial assembly (seed). [Rothemund, Winfree, 2000] A tile can attach to an assembly iff the combined strength of the matchings glues is greater or equal than the temperature. (Chen, Goel, Cheng)

Example of a tile system Temperature: 2 Set of tile types: Seed: (Cheng, Goel, Cheng)

Example of a SA process Temperature: 2 Set of tile types: Seed: (Cheng, Goel, Cheng)

Example of a SA process Temperature: 2 Set of tile types: Seed: (Cheng, Goel, Cheng)

Example of a SA process Temperature: 2 Set of tile types: Seed: (Cheng, Goel, Cheng)

Synthesized Tile Systems - II A DNA rug assembled using DNA tiles The rug is roughly 500 nm wide, and is assembled using DNA tiles roughly 12nm by 4nm (false colored) (Due to Erik Winfree, Caltech) MS&E 319, Molecular self-assembly: models and algorithms. Stanford University, Spring 2003-04 14

Applications of Self-Assembly Self-assembly can be used to create small electrical devices such as FLASH memory. [Black et. Al. 03] Self-assembly can create nanostructures which steer light in the same way computer chips steer electrons. [Percec et. Al. 03] n DNA strands can self-assemble into tiles and those tiles can further self-assemble into larger structures. This has many potential applications. [Winfree 96] (Chen, Goel, Cheng) DNA rug by Winfree

Toy Tile Systems in the Lab Performing XOR using self-assembling tiles (Square tiles floating on oil with glues on each side) (Due to Paul Rothemund, USC) MS&E 319, Molecular self-assembly: models and algorithms. Stanford University, Spring 2003-04 16

Abstract Tile Systems Tile: the four glues and their strengths Tile System Г: K tiles Infinitely many copies available of each tile Temperature τ A seed tile s Accretion Model: Assembly starts with a single seed tile, and proceeds by repeated addition of single tiles e.g. Crystal growth Are interested primarily in tile systems that assemble into a unique terminal structure [Rothemund and Winfree 00] [Wang 61] MS&E 319, Molecular self-assembly: models and algorithms. Stanford University, Spring 2003-04 17

Is Self-Assembly Just Crystallization? No. Crystals do not grow into unique terminal structures! A sugar crystal does not grow to precisely 20nm Crystals are typically made up of a small number of different types of components Two types of proteins; a single Carbon molecule Crystals have regular patterns Computer circuits, which we would like to self-assemble, don t Self-assembly = combinatorics + crystallization Can count, make interesting patterns Nature doesn t count too well, so molecular self-assembly is a genuinely new engineering paradigm. Think engines. Think semiconductors. MS&E 319, Molecular self-assembly: models and algorithms. Stanford University, Spring 2003-04 18

A Roadmap for This Course Self-assembly as a combinatorial process The computational power of self-assembly Self-assembling interesting shapes and patterns, efficiently Automating the design process? Analysis of design complexity, experiment complexity, and assembly time Self-assembly as a chemical reaction Entropy, Equilibria, and Error Rates Reversibility Review of experimental progress, interesting applications Self-assembly at larger scales Ant colony optimization; assembling autonomous robots MS&E 319, Molecular self-assembly: models and algorithms. Stanford University, Spring 2003-04 19

DNA Self-Assembly We will tacitly assume that the tiles are made of DNA strands woven together, and that the glues are really free DNA strands DNA is combinatorial, i.e., the functionality of DNA is determined largely by the sequence of ACTG bases. Can ignore geometry to a first order. Trying to count using proteins would be hell proteins have a complicated geometry and it is hard to predict what shape a single protein will take, let alone an entire assembly Proof-of-concept from nature: DNA strands can attach to combinatorially matching sequences DNA tiles have been constructed in the lab, and DNA computation has been demonstrated Can simulate arbitrary tile systems, so we do not lose any theoretical generality, but we get a concrete grounding in the real world The correct size (in the nano range) MS&E 319, Molecular self-assembly: models and algorithms. Stanford University, Spring 2003-04 20

1-D, 2-D, and 3-D Linear self-assemblies are very different from 2-D self-assemblies 2-D and 3-D are essentially identical in terms of the theory Will focus on 2-D in this course, and will passingly refer to 1-D MS&E 319, Molecular self-assembly: models and algorithms. Stanford University, Spring 2003-04 21

Design Complexity of a Tile System Suppose the tile system has k different tiles Assume that we have θ(k) different glues Assume for simplicity that all glues are represented by DNA strands of the same length, L How many different glues can we have? Each position can be one of the bases A, C, T, or G. An A pairs with T on the complementary strand, and a C pairs with G. So we can think of each position as corresponding to an AC base pair or a CG base pair. Two choices ) Binary encoding Number of glues 2 L Total length of all the DNA strands in all the distinct tiles = θ(k log k). We will refer to k log k as the design complexity Does not depend on the size of the final structure. This is how much time and expertise and resources you would have to invest into designing the components (like program complexity) MS&E 319, Molecular self-assembly: models and algorithms. Stanford University, Spring 2003-04 22

Notes 1. We will sometimes informally use the quantity k to refer to the design complexity. 2. The rules of assembly are easy to code up in a simulator. Thus if a tile system of k tiles can assemble into a certain shape, then there is a computer program of size θ(k log k) which generates that shape. 3. Design complexity is only interesting for assembling larger and larger shapes of a particular type, eg. squares, lines, spirals. Design complexity of an infinite line, infinite square etc. is just 1. MS&E 319, Molecular self-assembly: models and algorithms. Stanford University, Spring 2003-04 23

Three Exercises 1. Suppose we did not assume that the number of glues is θ(k). Can you still prove that the total length of all the strands in all the tiles is θ(k log k)? 2. We assumed that our tiles are oriented, i.e., east is always east and north is always north, and the tiles are not allowed to rotate. Show how an oriented tile system can be simulated using a system where tiles can rotate by +/- 90 degrees. 3. Now use the fact that the glues are really DNA strands to show how an oriented tile system can be simulated using a system where tiles can rotate by +/- 90 as well as 180 degrees. MS&E 319, Molecular self-assembly: models and algorithms. Stanford University, Spring 2003-04 24

Some Lower Bounds on Design Complexity Consider assembling a line of length n Need at least n different tiles (high design complexity) A B C D E B F C G D H E I Suppose tiles B and F are the same.then we can pump the line segment BCDE into an infinite line Are we doomed? No. Can assemble thicker rectangles more efficiently Consider assembling an n x n square The average Kolmogorov complexity (the smallest program size to produce a desired output) is log n bits Thus, k log k = Ω(log n), or k = Ω(log n/log log n) B C D E MS&E 319, Molecular self-assembly: models and algorithms. Stanford University, Spring 2003-04 25

Tile Systems and Running Time τ = 2 B C Seed A MS&E 319, Molecular self-assembly: models and algorithms. Stanford University, Spring 2003-04 26

Tile Systems and Running Time B A: 50%, B:30%, C: 20% 0.3 Seed 0.5 Seed 0.5 0.3 B Seed A 0.2 B Seed C A Seed A MS&E 319, Molecular self-assembly: models and algorithms. Stanford University, Spring 2003-04 27

Tile Systems and Running Time Define a continuous time Markov chain M State space S: set of all structures that a tile system can assemble into Tiles of type T i have concentration c i Σ i c i = 1 Unique terminal structure => unique sink in M Seed tile is the unique source state Assembly time: the hitting time for the sink state from the source state in the Markov Chain MS&E 319, Molecular self-assembly: models and algorithms. Stanford University, Spring 2003-04 28

Old Example: Assembling Lines Very simple Markov Chain. Average time for the i th tile to attach is 1/c i Assembly time = i 1/c i For fastest assembly, all tiles must have the same concentration of 1/(n-1) Expected assembly time is ¼ n 2 Can assemble thicker rectangles much faster and with much fewer different tiles MS&E 319, Molecular self-assembly: models and algorithms. Stanford University, Spring 2003-04 29

A Pretty Picture: Sierpinski Triangles Consider the four XOR tiles, where the south side is labeled either 0 or 1, and the east side is labeled either 0 or 1, and the west and north sides are labeled e XOR s where e and s are the bits on the east and south sides Assume τ = 2, and all glue strengths are 1 Given the appropriate inputs (i.e. seeds), these tiles can do some very interesting things like Computing the parity Assembling into a very pretty fractal They have already been designed in a lab setting MS&E 319, Molecular self-assembly: models and algorithms. Stanford University, Spring 2003-04 30

Theoretical and Algorithmic Issues Efficiently assembling basic shapes with precisely controlled size and pattern Constructing N X N squares with Ω(log n/log log n) tiles [Adleman, Cheng, Goel, Huang, 01] Perform universal computation by simulating BCA [Winfree 99] Library of primitives to use in designing nanoscale structures [Adleman, Cheng, Goel, Huang, 01] Automate the design process [Adleman, Cheng, Goel, Huang, Kempe, Moisset de espanes, Rothemund 01] Robustness (Cheng, Goel, Cheng)