Upload
aviva
View
32
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Randomized Self-Assembly for Approximate Shapes. 35 th International Colloquium on Automata, Languages and Programming July 8, 2008. Robert Schweller University of Texas – Pan American In collaboration with Ming-Yang Kao Northwestern University. Outline. Assembly Model - PowerPoint PPT Presentation
Citation preview
1
35th International Colloquium on Automata, Languages and ProgrammingJuly 8, 2008
Randomized Self-Assembly for Approximate Shapes
Robert Schweller University of Texas – Pan American
In collaboration with
Ming-Yang Kao Northwestern University
2
Outline
• Assembly Model
• Basic Constructions
• Probabilistic Assembly Model
• Main Result
3
Tile Assembly Model(Rothemund, Winfree, Adleman)
T = G(y) = 2G(g) = 2G(r) = 2G(b) = 2G(p) = 1G(w) = 1
t = 2
Tile Set:
Glue Function:
Temperature:
S
Seed Tile:
x dc
baS
4
x dc
baST = G(y) = 2G(g) = 2G(r) = 2G(b) = 2G(p) = 1G(w) = 1
t = 2
S
Tile Assembly Model(Rothemund, Winfree, Adleman)
5
S a
x dc
baST = G(y) = 2G(g) = 2G(r) = 2G(b) = 2G(p) = 1G(w) = 1
t = 2
Tile Assembly Model(Rothemund, Winfree, Adleman)
6
S a
c
x dc
baST = G(y) = 2G(g) = 2G(r) = 2G(b) = 2G(p) = 1G(w) = 1
t = 2
Tile Assembly Model(Rothemund, Winfree, Adleman)
7
S a
c
d
x dc
baST = G(y) = 2G(g) = 2G(r) = 2G(b) = 2G(p) = 1G(w) = 1
t = 2
Tile Assembly Model(Rothemund, Winfree, Adleman)
8
S a b
c
d
x dc
baST = G(y) = 2G(g) = 2G(r) = 2G(b) = 2G(p) = 1G(w) = 1
t = 2
Tile Assembly Model(Rothemund, Winfree, Adleman)
9
S a b
c
d
x
x dc
baST = G(y) = 2G(g) = 2G(r) = 2G(b) = 2G(p) = 1G(w) = 1
t = 2
Tile Assembly Model(Rothemund, Winfree, Adleman)
10
S a b
c
d
x x
x dc
baST = G(y) = 2G(g) = 2G(r) = 2G(b) = 2G(p) = 1G(w) = 1
t = 2
Tile Assembly Model(Rothemund, Winfree, Adleman)
11
S a b
c
d
x x
x
x dc
baST = G(y) = 2G(g) = 2G(r) = 2G(b) = 2G(p) = 1G(w) = 1
t = 2
Tile Assembly Model(Rothemund, Winfree, Adleman)
12
S a b
c
d
x x
x x
x dc
baST = G(y) = 2G(g) = 2G(r) = 2G(b) = 2G(p) = 1G(w) = 1
t = 2
Tile Assembly Model(Rothemund, Winfree, Adleman)
13
How efficiently can you build an n x n square?
s
14
How efficiently can you build an n x n square?
s
n
15
How efficiently can you build an n x n square?
s
x
Tile Complexity:2n
n
How efficiently can you build an n x n square?
s
How efficiently can you build an n x n square?
s0 0 00
log n
-Use log n tile types to seedcounter:
How efficiently can you build an n x n square?
s0 0 00
log n
-Use 8 additional tile types capable of binary counting:
-Use log n tile types capable ofBinary counting:
How efficiently can you build an n x n square?
s0 0 00
log n
000
00
0 00
1 0 10
1 1 00
1 1 10
0 0 0
0 1
1 0
1
1
11
1
000 1
-Use 8 additional tile types capable of binary counting:
-Use log n tile types capable ofBinary counting:
How efficiently can you build an n x n square?
s0 0 00
log n
000
00
0 00
1 0 10
1 1 00
1 1 10
0 0 01
0 0 11
0 1 01
0 1 11
1 0 01
1 0 11
1 1 11
1 1 01
1
11
1
000 1
-Use 8 additional tile types capable of binary counting:
-Use log n tile types capable ofBinary counting:
How efficiently can you build an n x n square?
s0 0 00
000
000
00
0 00
1 0 10
1 1 00
1 1 10
0 0 01
0 0 11
0 1 01
0 1 11
1 0 01
1 0 11
1 1 11
1 1 01
1
1
11
1
0
0
0
0
1
0
0
0
0
1
0
0
1
1
0
0
0
0
1
0
1
0
1
0
0
1
1
0
1
1
1
0
0
0
0
1
1
0
0
1
0
1
0
1
1
1
0
1
0
0
1
1
1
0
1
1
0
1
1
1
1
1
1
1
-Use 8 additional tile types capable of binary counting:
-Use log n tile types capable ofBinary counting:
How efficiently can you build an n x n square?
s0 0 00
000
000
00
0 00
1 0 10
1 1 00
1 1 10
0 0 01
0 0 11
0 1 01
0 1 11
1 0 01
1 0 11
1 1 11
1 1 01
1
1
11
1
0
0
0
0
1
0
0
0
0
1
0
0
1
1
0
0
0
0
1
0
1
0
1
0
0
1
1
0
1
1
1
0
0
0
0
1
1
0
0
1
0
1
0
1
1
1
0
1
0
0
1
1
1
0
1
1
0
1
1
1
1
1
1
1
n – log n
log n
x
y
Tile Complexity:O(log n)
With optimalcounter:Tile Complexity:O(log n / loglog n)
Meets lower bound:(log n / loglog n)
(Rothemund, Winfree 2000)
(Adleman, Cheng, Goel, Huang 2001)
(Rothemund, Winfree 2000)
23
Outline
• Assembly Model
• Basic Constructions
• Probabilistic Assembly Model
• Main Result
24
aS
Assign Relative Concentrations:
Probabilistic Assembly Model
b c
xd %5
%5
%5
%60
%20
%5
(Becker, Remila, Rapaport)
25
Probabilistic Assembly Model
S
aS
Tileset =
b c
xd
G(y) = 2G(g) = 2G(r) = 2G(p) = 1G(w) = 1
t = 2
%5 %5
%5
%5
%60
%20
(Becker, Remila, Rapaport)
26
Probabilistic Assembly Model
S
d
aS
Tileset =
b c
xd
%5 %5
%5
%5
%60
%20
G(y) = 2G(g) = 2G(r) = 2G(p) = 1G(w) = 1
t = 2
(Becker, Remila, Rapaport)
27
Probabilistic Assembly Model
aS
d
aS
Tileset =
b c
xd
%5 %5
%5
%5
%60
%20
G(y) = 2G(g) = 2G(r) = 2G(p) = 1G(w) = 1
t = 2
(Becker, Remila, Rapaport)
28
Probabilistic Assembly Model
aS
xd
aS
Tileset =
b c
xd
%5 %5
%5
%5
%60
%20
G(y) = 2G(g) = 2G(r) = 2G(p) = 1G(w) = 1
t = 2
(Becker, Remila, Rapaport)
29
Probabilistic Assembly Model
aS
xd
S
d
aS
Tileset =
b c
xd
%5 %5
%5
%5
%60
%20
G(y) = 2G(g) = 2G(r) = 2G(p) = 1G(w) = 1
t = 2
(Becker, Remila, Rapaport)
30
Probabilistic Assembly Model
aS b
xd
S
d
aS
Tileset =
b c
xd
%5 %5
%5
%5
%60
%20
G(y) = 2G(g) = 2G(r) = 2G(p) = 1G(w) = 1
t = 2
(Becker, Remila, Rapaport)
31
Probabilistic Assembly Model
aS b c
xd
S
d
Two Terminal Shapes Produced
aS
Tileset =
b c
xd
%5 %5
%5
%5
%60
%20
G(y) = 2G(g) = 2G(r) = 2G(p) = 1G(w) = 1
t = 2
(Becker, Remila, Rapaport)
32
aS
Tileset =
Probabilistic Assembly Model
b c
xd
%5 %5
%5
%5
%60
%20
S
S
d
S S ba
.20/.85 = %23.5.60/.85 = %70.6
.05/.85 = %5.9
G(y) = 2G(g) = 2G(r) = 2G(p) = 1G(w) = 1
t = 2
(Becker, Remila, Rapaport)
33
aS
Tileset =
Probabilistic Assembly Model
b c
xd
%5 %5
%5
%5
%60
%20
S
S
d
S
S
d
a S
d
b
S ba
S
d
a S
d
b c
x
%23.5%70.6 %5.9
%75 %25
G(y) = 2G(g) = 2G(r) = 2G(p) = 1G(w) = 1
t = 2
(Becker, Remila, Rapaport)
34
Generic Tileset for all Squares
35
Generic Tileset for Approximate Squares
n(1-n (1+n
36
Generic Tileset for Approximate Squares
n(1- n (1+n
() – Approximate Square Assembly
Given:
- - integer n
Design:A probabilistic tile system that will assemble an n’ x n’ square with:
(1-)n < n’ < (1+)n
With probability at least:
1 -
37
High Level Idea
-Build random structure:-Dimensions are random-Internal pattern is random
38
High Level Idea
-Build random structure:-Dimensions are random-Internal pattern is random
-Incorporate arithmetic tiles to extracta binary number from the randompattern
10110110
39
Binary Counter
Bin
ary Co
un
ter
10110110
n
n
Finish off SquareOutput n approximation
40
X
S
Line Estimation of n
41
X
S
S
Line Estimation of n
42
X
S
S
Line Estimation of n
43
X
S
S
Line Estimation of n
44
X
S
S
Line Estimation of n
45
X
S
S
Line Estimation of n
46
X
S
S
Line Estimation of n
47
X
S
S
Line Estimation of n
48
X
S
S
Line Estimation of n
49
X
S
S
Line Estimation of n
50
X
S
S
Line Estimation of n
51
X
S
XS
Line Estimation of n
52
X
S
XS
% c
% c/n
% c(n-1)/n
Line Estimation of n
53
X
S
XS
% c
% c/n
% c(n-1)/n
Line Estimation of n
E[ Length ] = n
Length has Geometric distributionwith p = 1/n
54
X
S
XS
% c
% c/n
% c(n-1)/n
Line Estimation of n[Becker, Rapaport Remila, 2006]
E[ Length ] = n
55
X
S
XS
% c
% c/n
% c(n-1)/n
Line Estimation of n
- Assembles all n x n squares.
-Expected dimension specified by percentages.
-Geometric distribution:
Large variance
[Becker, Rapaport Remila, 2006]
E[ Length ] = n
56
X
S
Improved Estimation of n: Binomial Distribution
S X
Key Idea
57
X
S % c
% c/L
% c(L+1)(n-1)/Ln
Improved Estimation of n: Binomial Distribution
% c(L+1)/Ln
S X
Probability of placing a red tile given either a red or green tile is placed:
1/n
58
X
S % c
% c/L
% c(L+1)(n-1)/Ln
Improved Estimation of n: Binomial Distribution
% c(L+1)/Ln
S X
Probability of placing a red tile given either a red or green tile is placed:
1/n
To compute estimation of n:Compute LENGTH / REDS
59
X
S % c
% c/L
% c(L+1)(n-1)/Ln
Improved Estimation of n: Binomial Distribution
% c(L+1)/Ln
S X
1 0 0 1
1 0
1 1
1 0
0 1
0 0
1 0
1 1
0 0
1 0
0 0
1 1
1 0
1 0
1 1
1 0
0 1
0 1
0 0
1 1
0 1
0 0
1 0
0 1
1 1
0 0
1 0
1 1
1 1
0 0
1 0
0 1
0 1
1 0
1 0
1 0
0 0
1 1
1 0
0 0
1 0
1 1
1 0
Binary Counter Length: 10000Reds: 100
1 0
1 0
1 0
1 1
1 0
0 0
0 0
0 1
0 0
0 0
0 0
0 1
0 0
1 0 1 0
60
X
S % c
% c/L
% c(L+1)(n-1)/Ln
Improved Estimation of n: Binomial Distribution
% c(L+1)/Ln
S X
1 0 0 1
1 0
1 1
1 0
0 1
0 0
1 0
1 1
0 0
1 0
0 0
1 1
1 0
1 0
1 1
1 0
0 1
0 1
0 0
1 1
0 1
0 0
1 0
0 1
1 1
0 0
1 0
1 1
1 1
0 0
1 0
0 1
0 1
1 0
1 0
1 0
0 0
1 1
1 0
0 0
1 0
1 1
1 01 0
1 0
1 0
1 1
1 0
0 0
0 0
0 1
0 0
0 0 1 0
0 0
0 0
0 1
0 0
1 0 1 0
0
Length: 10000Reds: 100
Compute Length / Reds: 100
Division tiles
Estimate for n
61
Problem: Estimation Line too Long
S X
Length >> n :Too long for an n x n square…
Chernoff Bounds only yield high accuracy for Length >> n
62
S
Multiple lines = HEIGHT: Determined by Geometric Distribution
WIDTH: Determined by Geometric Distribution
Solution: Estimation Frame
Phase 1: Build dimensions of frame.
63
S
Multiple lines = HEIGHT: Determined by Geometric Distribution
WIDTH: Determined by Geometric Distribution
Solution: Estimation Frame
Phase 1: Build dimensions of frame.
Phase 2:Build Sampling Lines
64
S
01
01
1
Sum Reds
Sum Reds
Sum Reds
01Sum Reds
Multiple lines = HEIGHT: Determined by Geometric Distribution
WIDTH: Determined by Geometric Distribution
Solution: Estimation Frame
Phase 1: Build dimensions of frame.
Phase 2:Build Sampling Lines
Phase 3: Sum Reds and Length for each Line
65
S
01
01
1
Sum Reds
Sum Reds
Sum Reds
01Sum Reds
1 1 1
Su
m S
ub
tota
ls
Multiple lines = HEIGHT: Determined by Geometric Distribution
WIDTH: Determined by Geometric Distribution
Solution: Estimation Frame
Phase 1: Build dimensions of frame.
Phase 2:Build Sampling Lines
Phase 3: Sum Reds and Length for each Line
Phase 4: Sum subtotals
66
S
01
01
1
Sum Reds
Sum Reds
Sum Reds
01Sum Reds
1 1 1
Su
m S
ub
tota
ls
Divide: Length / Reds
1001
Multiple lines = HEIGHT: Determined by Geometric Distribution
WIDTH: Determined by Geometric Distribution
Solution: Estimation Frame
Phase 1: Build dimensions of frame.
Phase 2:Build Sampling Lines
Phase 3: Sum Reds and Length for each Line
Phase 4: Sum subtotals
Phase 5: Compute Length to Reds ratio
OUTPUTEstimation
67
HEIGHT
WIDTH
Solution: Estimation Frame
With high probability: HEIGHT < nWIDTH < n
Frame fits within n x n square
With high probability: HEIGHT x WIDTH >> n Chernoff Bounds imply:
Estimation is accurate with high probability:(1 - )n’ < n < (1 + ) n’
68
10110110
Finish off SquareOutput n approximation
69
Binary Counter
Bin
ary Co
un
ter
10110110
n
n
Finish off SquareOutput n approximation
70
We have a fixed size O(1) tileset that:
-For any given - n > C( )
We can assign percentages such that:
With probability at least 1- , a size n’ x n’
square is assembled with
( 1- )n < n’ < ( 1+ )n
Binary Counter
Bin
ary Co
un
ter
10110110
n
n
Result:
71
Probabilistic Results
• Generic size O(1) tileset that builds approximate squares.
• Approximation Frame has many potential applications– Encode arbitrary programs
• General shapes• Encode input of computational problems
• Simulation and experimental implementation• Extension to 3 dimensions
– Approximation accuracy increases for n x n x n cubes, possibly exact assembly of cubes with high probability
72
Thanks for Listening
Questions?
Robert Schweller Computer Science Department University of Texas Pan American Email: [email protected]
http://www.cs.panam.edu/~schwellerr/