the molecular programming projectcadlab.cs.ucla.edu/docs/mpp-2013-pi-meeting.pdf · the molecular...

26
THEMOLECULARPROGRAMMINGPROJEC T O I O IOIOI I I I O I O I O I O I I OIOI O I O TCEJORPGNIMMARGORPRALUCELOMEHT The Molecular Programming Project molecular-programming.org Expeditions in Computing PI Meeting May 14-16, 2013 PI: Erik Winfree co-PIs: Jehoshua Bruck, Eric Klavins, Richard Murray, Niles Pierce, Paul Rothemund California Institute of Technology and University of Washington

Upload: others

Post on 19-Oct-2020

5 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: The Molecular Programming Projectcadlab.cs.ucla.edu/docs/MPP-2013-PI-meeting.pdf · The Molecular Programming Project molecular-programming.org Expeditions in Computing PI Meeting

THEMOLECULARPROGRAMMINGPROJECTO I

OI

OI

OI

IIIOIO

IO

IO

I

I

OI

OI

O

IO

TCEJORPGNIMMARGORPRALUCELOMEHT

The Molecular Programming Project molecular-programming.org

Expeditions in Computing PI Meeting May 14-16, 2013

PI: Erik Winfree

co-PIs: Jehoshua Bruck, Eric Klavins, Richard Murray, Niles Pierce, Paul Rothemund

California Institute of Technology and University of Washington

Page 2: The Molecular Programming Projectcadlab.cs.ucla.edu/docs/MPP-2013-PI-meeting.pdf · The Molecular Programming Project molecular-programming.org Expeditions in Computing PI Meeting

2

Chemistry as an information technology

THEMOLECULARPROGRAMMINGPROJECTO I

OI

OI

OI

IIIOIO

IO

IO

I

I

OI

OI

O

IO

TCEJORPGNIMMARGORPRALUCELOMEHT

chemistry

computers

biology

synthetic biology

molecular programming

A + B à X + Y Y + Z ßà YZ �

Page 3: The Molecular Programming Projectcadlab.cs.ucla.edu/docs/MPP-2013-PI-meeting.pdf · The Molecular Programming Project molecular-programming.org Expeditions in Computing PI Meeting

3

The biological inspiration

THEMOLECULARPROGRAMMINGPROJECTO I

OI

OI

OI

IIIOIO

IO

IO

I

I

OI

OI

O

IO

TCEJORPGNIMMARGORPRALUCELOMEHT

1 micron3 volume 4 megabit genome

biochemical circuitry manufacturing plant atomic-level design

è deep physics & chemistry

Can we engineer molecular systems with life-like qualities?

grows from a single cell contains 1015 cells

1027 macromolecules spans atomic to macro scales

intelligent behavior è deep algorithmic issues

Page 4: The Molecular Programming Projectcadlab.cs.ucla.edu/docs/MPP-2013-PI-meeting.pdf · The Molecular Programming Project molecular-programming.org Expeditions in Computing PI Meeting

4

The challenge of programming chemical systems

THEMOLECULARPROGRAMMINGPROJECTO I

OI

OI

OI

IIIOIO

IO

IO

I

I

OI

OI

O

IO

TCEJORPGNIMMARGORPRALUCELOMEHT

♦  What kind of programming language do we need to build a fly? §  What are the programmable molecular and biochemical building blocks? §  New concepts for programming and analyzing such systems? §  Intrinsic fault-tolerance, adaptation, and learning conceptually built in? §  How to incorporate geometric and mechanical factors?

include gro!alpha := 0.75;!program p() := {! gfp := 0;! r := [ t := 0 ];! selected & just_divided : { ! print ( "At time ", r.t, ": ! After division, cell ", id, ! " has ", gfp, " gfp molecules" ) ! }! rate ( alpha * volume ) : {! gfp := gfp + 1! }! true : { ! r.t := r.t + dt! } !};!stemcell ( [], program p() );!

?

Page 5: The Molecular Programming Projectcadlab.cs.ucla.edu/docs/MPP-2013-PI-meeting.pdf · The Molecular Programming Project molecular-programming.org Expeditions in Computing PI Meeting

5

Design complexity in DNA nanotechnology

THEMOLECULARPROGRAMMINGPROJECTO I

OI

OI

OI

IIIOIO

IO

IO

I

I

OI

OI

O

IO

TCEJORPGNIMMARGORPRALUCELOMEHTN

ucle

otid

es D

esig

ned

Time 1980 1990 2000 2005 2010 1995 1985

10

100

1000

10000

DNA 4-arm junctions (Seeman, 1982)

100 nm

Folding

Machines

50 nm

Self-Assembly

Circuits

y21!

y20!

x31!

x40!

x41!

y10!

x30!

x21!x20!

x11!

x10!

y11!

�!

�!

�!

�!

�!�!

�!

�!!!

�!

�!

�!

�!doubles every 3 years

Page 6: The Molecular Programming Projectcadlab.cs.ucla.edu/docs/MPP-2013-PI-meeting.pdf · The Molecular Programming Project molecular-programming.org Expeditions in Computing PI Meeting

6

Implementation and applications

THEMOLECULARPROGRAMMINGPROJECTO I

OI

OI

OI

IIIOIO

IO

IO

I

I

OI

OI

O

IO

TCEJORPGNIMMARGORPRALUCELOMEHT

nucleic acids: DNA and RNA

protein enzymes: polymerase, ribosome, …

living cells

programmable molecular instruments for science

DNA origami

breadboard

molecular device fabrication by self-assembly

z=28µm

reprogramming cellular circuits and behavior THEMOLECULARPROGRAMMINGPROJECTO I

OI

OI

OI

IIIOIO

IO

IO

I

I

OI

OI

O

IO

TCEJORPGNIMMARGORPRALUCELOMEHT

Page 7: The Molecular Programming Projectcadlab.cs.ucla.edu/docs/MPP-2013-PI-meeting.pdf · The Molecular Programming Project molecular-programming.org Expeditions in Computing PI Meeting

7

Molecular programs and compilers

THEMOLECULARPROGRAMMINGPROJECTO I

OI

OI

OI

IIIOIO

IO

IO

I

I

OI

OI

O

IO

TCEJORPGNIMMARGORPRALUCELOMEHT

47

n 1

0 c 3

0

B a

folding

self-assembly

multicellular systems

reaction networks

4. Abstract Models(components and algorithms)

3. Chemical State Models(reaction mechanism)

2. Secondary Structure Models(structural mechanisms)

0. Molecular Execution(laboratory implementation)

A + B C

1. Primary Structure (DNA sequence) ...ACGTGGCCA...

analyzecompile

analyzecompile

analyzecompile

analyzecompile

Page 8: The Molecular Programming Projectcadlab.cs.ucla.edu/docs/MPP-2013-PI-meeting.pdf · The Molecular Programming Project molecular-programming.org Expeditions in Computing PI Meeting

8

The question when we started, five years ago…

THEMOLECULARPROGRAMMINGPROJECTO I

OI

OI

OI

IIIOIO

IO

IO

I

I

OI

OI

O

IO

TCEJORPGNIMMARGORPRALUCELOMEHT

Can  chemistry  be  programmed?    At  all?    Is  chemistry  a  genuine  informa9on  technology?      It  sounds  good,  but  what  does  it  mean?      

We  need  abstrac9ons  that  work.      We  need  systema9c  methods  to  design  molecules  and  systems.  We  need  “wet”  synthesis  and  analysis  methods  that  work  –  and  work  at  a  large  scale.    

Should  we  wait  for  the  biologists  and  bioengineers  to  give  us  working  scalable  molecular  technology?  Or  should  we  make  it  happen  ourselves?    

Page 9: The Molecular Programming Projectcadlab.cs.ucla.edu/docs/MPP-2013-PI-meeting.pdf · The Molecular Programming Project molecular-programming.org Expeditions in Computing PI Meeting

9

NUPACK: nucleic acid system design and analysis

THEMOLECULARPROGRAMMINGPROJECTO I

OI

OI

OI

IIIOIO

IO

IO

I

I

OI

OI

O

IO

TCEJORPGNIMMARGORPRALUCELOMEHT

♦  Rigorous thermodynamic sequence design for structures

5  nm  

material = rna !temperature[C] = 23.0!sodium[M] = 1.0!!structure stickfigure = ! U2D8(U2D6(D6(U3+! )D3U9D6(U2+U1))U2D8(U2+U1))U1!!domain a = AUGC N23!domain b = N29!domain c = N20 GCGCU!domain d = N18!!stickfigure.seq = a b c d!

�G(�, s) =�

loop�s

�G(loop)

sequence   structure  

p(�, s) =1

Q(�)e��G(�,s)/kBT Q(�) =

s⇥�

e�⇥G(�,s)/kBT

n(⇥, s) =⇤

�⇥�

p(⇥, �)d(�, s)

= N �⇤

�⇥�

�p(⇥, �)

1 � i � N1 � j � N + 1

Si,j(�)Si,j(s)⇥

= N �⇤

1 � i � N1 � j � N + 1

�⇤

�⇥�

p(⇥, �)Si,j(�)⇥Si,j(s)

= N �⇤

1 � i � N1 � j � N + 1

Pi,j(⇥)Si,j(s)

n(⇥, s) =⇤

�⇥�

p(⇥, �)d(�, s)

= N �⇤

�⇥�

�p(⇥, �)

1 � i � N1 � j � N + 1

Si,j(�)Si,j(s)⇥

= N �⇤

1 � i � N1 � j � N + 1

�⇤

�⇥�

p(⇥, �)Si,j(�)⇥Si,j(s)

= N �⇤

1 � i � N1 � j � N + 1

Pi,j(⇥)Si,j(s)

Equilibrium  probability  

Average  number  of  incorrectly  paired  nucleo9des,  given  target  s

Par99on  func9on  

⇥(N3)Dynamic  programming:  

Zadeh, Steenberg, Bois, Wolfe, Pierce, Khan, Dirks, Pierce, J Comp Chem, 2011

Page 10: The Molecular Programming Projectcadlab.cs.ucla.edu/docs/MPP-2013-PI-meeting.pdf · The Molecular Programming Project molecular-programming.org Expeditions in Computing PI Meeting

10

DNA seesaw circuits: in vitro biomolecular circuitry

THEMOLECULARPROGRAMMINGPROJECTO I

OI

OI

OI

IIIOIO

IO

IO

I

I

OI

OI

O

IO

TCEJORPGNIMMARGORPRALUCELOMEHT

C G

T A

Qian, Winfree, Royal Society Interface, 2011

Page 11: The Molecular Programming Projectcadlab.cs.ucla.edu/docs/MPP-2013-PI-meeting.pdf · The Molecular Programming Project molecular-programming.org Expeditions in Computing PI Meeting

11

DNA seesaw circuits: in vitro biomolecular circuitry

THEMOLECULARPROGRAMMINGPROJECTO I

OI

OI

OI

IIIOIO

IO

IO

I

I

OI

OI

O

IO

TCEJORPGNIMMARGORPRALUCELOMEHT

C G

T A

Qian, Winfree, Royal Society Interface, 2011

Page 12: The Molecular Programming Projectcadlab.cs.ucla.edu/docs/MPP-2013-PI-meeting.pdf · The Molecular Programming Project molecular-programming.org Expeditions in Computing PI Meeting

12

DNA seesaw circuits: in vitro biomolecular circuitry

THEMOLECULARPROGRAMMINGPROJECTO I

OI

OI

OI

IIIOIO

IO

IO

I

I

OI

OI

O

IO

TCEJORPGNIMMARGORPRALUCELOMEHT

C G

T A

Qian, Winfree, Royal Society Interface, 2011

Page 13: The Molecular Programming Projectcadlab.cs.ucla.edu/docs/MPP-2013-PI-meeting.pdf · The Molecular Programming Project molecular-programming.org Expeditions in Computing PI Meeting

13

DNA seesaw circuits: in vitro biomolecular circuitry

THEMOLECULARPROGRAMMINGPROJECTO I

OI

OI

OI

IIIOIO

IO

IO

I

I

OI

OI

O

IO

TCEJORPGNIMMARGORPRALUCELOMEHT

C G

T A

Qian, Winfree, Royal Society Interface, 2011

Page 14: The Molecular Programming Projectcadlab.cs.ucla.edu/docs/MPP-2013-PI-meeting.pdf · The Molecular Programming Project molecular-programming.org Expeditions in Computing PI Meeting

14

DNA seesaw circuits: in vitro biomolecular circuitry

THEMOLECULARPROGRAMMINGPROJECTO I

OI

OI

OI

IIIOIO

IO

IO

I

I

OI

OI

O

IO

TCEJORPGNIMMARGORPRALUCELOMEHT

Qian, Winfree, Royal Society Interface, 2011

Page 15: The Molecular Programming Projectcadlab.cs.ucla.edu/docs/MPP-2013-PI-meeting.pdf · The Molecular Programming Project molecular-programming.org Expeditions in Computing PI Meeting

15

DNA seesaw circuits: in vitro biomolecular circuitry

THEMOLECULARPROGRAMMINGPROJECTO I

OI

OI

OI

IIIOIO

IO

IO

I

I

OI

OI

O

IO

TCEJORPGNIMMARGORPRALUCELOMEHT

Qian, Winfree, Science, 2011

y21!

y20!

x31!

x40!

x41!

y10!

x30!

x21!x20!

x11!

x10!

y11!

�!

�!

�!

�!

�!�!

�!

�!!!

�!

�!

�!

�!

Page 16: The Molecular Programming Projectcadlab.cs.ucla.edu/docs/MPP-2013-PI-meeting.pdf · The Molecular Programming Project molecular-programming.org Expeditions in Computing PI Meeting

16

DNA seesaw circuits: in vitro biomolecular circuitry

THEMOLECULARPROGRAMMINGPROJECTO I

OI

OI

OI

IIIOIO

IO

IO

I

I

OI

OI

O

IO

TCEJORPGNIMMARGORPRALUCELOMEHT

Qian, Winfree, Bruck, Nature, 2011

? ? 1 0" 0 1 1 0"

? 1 ? 1" 1 1 1 1"

Page 17: The Molecular Programming Projectcadlab.cs.ucla.edu/docs/MPP-2013-PI-meeting.pdf · The Molecular Programming Project molecular-programming.org Expeditions in Computing PI Meeting

17

gro: a programming language for growing cells

THEMOLECULARPROGRAMMINGPROJECTO I

OI

OI

OI

IIIOIO

IO

IO

I

I

OI

OI

O

IO

TCEJORPGNIMMARGORPRALUCELOMEHT

Egbert, Klavins, PNAS, 2012

Page 18: The Molecular Programming Projectcadlab.cs.ucla.edu/docs/MPP-2013-PI-meeting.pdf · The Molecular Programming Project molecular-programming.org Expeditions in Computing PI Meeting

18

gro: a programming language for growing cells

THEMOLECULARPROGRAMMINGPROJECTO I

OI

OI

OI

IIIOIO

IO

IO

I

I

OI

OI

O

IO

TCEJORPGNIMMARGORPRALUCELOMEHT

Jang, Oishi, Egbert, Klavins, ACS Synthetic Biology, 2012

leader election & chemical signaling

Page 19: The Molecular Programming Projectcadlab.cs.ucla.edu/docs/MPP-2013-PI-meeting.pdf · The Molecular Programming Project molecular-programming.org Expeditions in Computing PI Meeting

19

Theoretical questions in molecular programming

THEMOLECULARPROGRAMMINGPROJECTO I

OI

OI

OI

IIIOIO

IO

IO

I

I

OI

OI

O

IO

TCEJORPGNIMMARGORPRALUCELOMEHT

Computation and construction decisions, control, fabrication, memory

Program correctness equivalence of high & low level specs

Abstraction hierarchy programming languages and compilers

Complexity theory time, space, program size, energy

Exploiting randomness designing stochastic behavior

Fault-tolerance error correction, self-repair

à YES NO

à

Page 20: The Molecular Programming Projectcadlab.cs.ucla.edu/docs/MPP-2013-PI-meeting.pdf · The Molecular Programming Project molecular-programming.org Expeditions in Computing PI Meeting

20

Theoretical questions in molecular programming

THEMOLECULARPROGRAMMINGPROJECTO I

OI

OI

OI

IIIOIO

IO

IO

I

I

OI

OI

O

IO

TCEJORPGNIMMARGORPRALUCELOMEHT

Computation and construction decisions, control, fabrication, memory

Program correctness equivalence of high & low level specs

Abstraction hierarchy programming languages and compilers

Complexity theory time, space, program size, energy

Exploiting randomness designing stochastic behavior

Fault-tolerance error correction, self-repair

= ?

S + F + C à C + OP + SP

Page 21: The Molecular Programming Projectcadlab.cs.ucla.edu/docs/MPP-2013-PI-meeting.pdf · The Molecular Programming Project molecular-programming.org Expeditions in Computing PI Meeting

21

Theoretical questions in molecular programming

THEMOLECULARPROGRAMMINGPROJECTO I

OI

OI

OI

IIIOIO

IO

IO

I

I

OI

OI

O

IO

TCEJORPGNIMMARGORPRALUCELOMEHT

Computation and construction decisions, control, fabrication, memory

Program correctness equivalence of high & low level specs

Abstraction hierarchy programming languages and compilers

Complexity theory time, space, program size, energy

Exploiting randomness designing stochastic behavior

Fault-tolerance error correction, self-repair

High-level languages!

Chemical Reaction Networks!

Domain-Level Specification!

DNA Sequences!

Sequence designer

Low-level compiler

Synthesis

DNA Molecules!

High-level compiler

Page 22: The Molecular Programming Projectcadlab.cs.ucla.edu/docs/MPP-2013-PI-meeting.pdf · The Molecular Programming Project molecular-programming.org Expeditions in Computing PI Meeting

22

Theoretical questions in molecular programming

THEMOLECULARPROGRAMMINGPROJECTO I

OI

OI

OI

IIIOIO

IO

IO

I

I

OI

OI

O

IO

TCEJORPGNIMMARGORPRALUCELOMEHT

Computation and construction decisions, control, fabrication, memory

Program correctness equivalence of high & low level specs

Abstraction hierarchy programming languages and compilers

Complexity theory time, space, program size, energy

Exploiting randomness designing stochastic behavior

Fault-tolerance error correction, self-repair

Size n shape S, computed by g(n) state TM in time f(n) : …can be self-assembled from O(f(n)) passive tile types in time O(n f(n)) with scale-up factor O(f(n)). …or can be constructed by molecular robots with O(g(n) + log n) states, in time O(f(n) log n + log2 n), with scale-up factor 1.

Page 23: The Molecular Programming Projectcadlab.cs.ucla.edu/docs/MPP-2013-PI-meeting.pdf · The Molecular Programming Project molecular-programming.org Expeditions in Computing PI Meeting

23

Theoretical questions in molecular programming

THEMOLECULARPROGRAMMINGPROJECTO I

OI

OI

OI

IIIOIO

IO

IO

I

I

OI

OI

O

IO

TCEJORPGNIMMARGORPRALUCELOMEHT

Computation and construction decisions, control, fabrication, memory

Program correctness equivalence of high & low level specs

Abstraction hierarchy programming languages and compilers

Complexity theory time, space, program size, energy

Exploiting randomness designing stochastic behavior

Fault-tolerance error correction, self-repair

Page 24: The Molecular Programming Projectcadlab.cs.ucla.edu/docs/MPP-2013-PI-meeting.pdf · The Molecular Programming Project molecular-programming.org Expeditions in Computing PI Meeting

24

Theoretical questions in molecular programming

THEMOLECULARPROGRAMMINGPROJECTO I

OI

OI

OI

IIIOIO

IO

IO

I

I

OI

OI

O

IO

TCEJORPGNIMMARGORPRALUCELOMEHT

Computation and construction decisions, control, fabrication, memory

Program correctness equivalence of high & low level specs

Abstraction hierarchy programming languages and compilers

Complexity theory time, space, program size, energy

Exploiting randomness designing stochastic behavior

Fault-tolerance error correction, self-repair

à

Page 25: The Molecular Programming Projectcadlab.cs.ucla.edu/docs/MPP-2013-PI-meeting.pdf · The Molecular Programming Project molecular-programming.org Expeditions in Computing PI Meeting

25

What if there were no Expedition, what then?

THEMOLECULARPROGRAMMINGPROJECTO I

OI

OI

OI

IIIOIO

IO

IO

I

I

OI

OI

O

IO

TCEJORPGNIMMARGORPRALUCELOMEHT

♦  The Molecular Programming Project built a community §  Highly interdisciplinary – physics, chemistry, biology, computer science §  Not yet recognized as “computer science” by many computer science departments §  Having a strong, rich, enthusiastic distributed “department” helps recruit & educate students §  The Expedition award provides moral support that the area is legitimate §  Annual MPP workshops have helped coalesce a broader community

Page 26: The Molecular Programming Projectcadlab.cs.ucla.edu/docs/MPP-2013-PI-meeting.pdf · The Molecular Programming Project molecular-programming.org Expeditions in Computing PI Meeting

26

Education, Outreach, and Knowledge Transfer

THEMOLECULARPROGRAMMINGPROJECTO I

OI

OI

OI

IIIOIO

IO

IO

I

I

OI

OI

O

IO

TCEJORPGNIMMARGORPRALUCELOMEHT

MPP annual workshops, 2009-2012 ~40 MPP members, ~30 external DNA Comp. & Molec. Prog., 2011 genelet wet lab tutorial, 2011 gro workshop, 2012 YouTube presentations: 68,000+ views

Courses,  books,  teams   Workshops,  tutorials,    conferences,  tutorials  

Tools  and  technologies  Ar9s9c  collabora9ons  

People  •  Biomolecular Computation (Caltech) •  Biomolecular Engineering (Caltech) •  Systems Biology (Caltech) •  Information and logic (Caltech) •  Feedback Systems (Caltech) •  Mathematical Synthetic Biology (UW) •  Synthetic Biology Design Lab (UW) Book: Biomolecular Feedback Systems by Murray & Del Vecchio (on line) Undergraduate competitions: BIOMOD, iGEM

2 high school students 33 undergraduates 25 graduate students 11 postdocs 3 programmers 8 alumni hired as faculty MIT, Harvard, Caltech, Rice, JHU, UW, … (50% women)

Local  high  school  visi9ng  days  

THEMOLECULARPROGRAMMINGPROJECTO I

OI

OI

OI

IIIOIO

IO

IO

I

I

OI

OI

O

IO

TCEJORPGNIMMARGORPRALUCELOMEHT

www.annerpino.com