Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 35 th International Colloquium on Automata, Languages and Programming July 8, 2008 Randomized Self-Assembly for Approximate Shapes Robert Schweller University.

Similar presentations


Presentation on theme: "1 35 th International Colloquium on Automata, Languages and Programming July 8, 2008 Randomized Self-Assembly for Approximate Shapes Robert Schweller University."— Presentation transcript:

1 1 35 th International Colloquium on Automata, Languages and Programming July 8, 2008 Randomized Self-Assembly for Approximate Shapes Robert Schweller University of Texas – Pan American In collaboration with Ming-Yang Kao Northwestern University

2 2 Outline Assembly Model Basic Constructions Probabilistic Assembly Model Main Result

3 3 Tile Assembly Model (Rothemund, Winfree, Adleman) T = G(y) = 2 G(g) = 2 G(r) = 2 G(b) = 2 G(p) = 1 G(w) = 1 t = 2 Tile Set: Glue Function: Temperature: Seed Tile:

4 4 T = G(y) = 2 G(g) = 2 G(r) = 2 G(b) = 2 G(p) = 1 G(w) = 1 t = 2 Tile Assembly Model (Rothemund, Winfree, Adleman)

5 5 T = G(y) = 2 G(g) = 2 G(r) = 2 G(b) = 2 G(p) = 1 G(w) = 1 t = 2 Tile Assembly Model (Rothemund, Winfree, Adleman)

6 6 T = G(y) = 2 G(g) = 2 G(r) = 2 G(b) = 2 G(p) = 1 G(w) = 1 t = 2 Tile Assembly Model (Rothemund, Winfree, Adleman)

7 7 T = G(y) = 2 G(g) = 2 G(r) = 2 G(b) = 2 G(p) = 1 G(w) = 1 t = 2 Tile Assembly Model (Rothemund, Winfree, Adleman)

8 8 T = G(y) = 2 G(g) = 2 G(r) = 2 G(b) = 2 G(p) = 1 G(w) = 1 t = 2 Tile Assembly Model (Rothemund, Winfree, Adleman)

9 9 T = G(y) = 2 G(g) = 2 G(r) = 2 G(b) = 2 G(p) = 1 G(w) = 1 t = 2 Tile Assembly Model (Rothemund, Winfree, Adleman)

10 10 T = G(y) = 2 G(g) = 2 G(r) = 2 G(b) = 2 G(p) = 1 G(w) = 1 t = 2 Tile Assembly Model (Rothemund, Winfree, Adleman)

11 11 T = G(y) = 2 G(g) = 2 G(r) = 2 G(b) = 2 G(p) = 1 G(w) = 1 t = 2 Tile Assembly Model (Rothemund, Winfree, Adleman)

12 12 T = G(y) = 2 G(g) = 2 G(r) = 2 G(b) = 2 G(p) = 1 G(w) = 1 t = 2 Tile Assembly Model (Rothemund, Winfree, Adleman)

13 13 How efficiently can you build an n x n square? s

14 14 How efficiently can you build an n x n square? s n

15 15 How efficiently can you build an n x n square? s x Tile Complexity: 2n n

16 How efficiently can you build an n x n square? s

17 s 0000 log n -Use log n tile types to seed counter:

18 How efficiently can you build an n x n square? s 0000 log n -Use 8 additional tile types capable of binary counting: -Use log n tile types capable of Binary counting:

19 How efficiently can you build an n x n square? s 0000 log n 000 00 000 1010 1100 1110 000 01 10 1 1 11 1 0001 -Use 8 additional tile types capable of binary counting: -Use log n tile types capable of Binary counting:

20 How efficiently can you build an n x n square? s 0000 log n 000 00 000 1010 1100 1110 0001 0011 0101 0111 1001 1011 1111 1101 1 11 1 0001 -Use 8 additional tile types capable of binary counting: -Use log n tile types capable of Binary counting:

21 How efficiently can you build an n x n square? s 0000 000 000 00 000 1010 1100 1110 0001 0011 0101 0111 1001 1011 1111 1101 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 of Binary counting:

22 How efficiently can you build an n x n square? s 0000 000 000 00 000 1010 1100 1110 0001 0011 0101 0111 1001 1011 1111 1101 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 optimal counter: 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 23 Outline Assembly Model Basic Constructions Probabilistic Assembly Model Main Result

24 24 a S Assign Relative Concentrations: Probabilistic Assembly Model bc x d %5 %60 %20 %5 (Becker, Remila, Rapaport)

25 25 Probabilistic Assembly Model S a S Tileset = bcx d G(y) = 2 G(g) = 2 G(r) = 2 G(p) = 1 G(w) = 1 t = 2 %5 %60 %20 (Becker, Remila, Rapaport)

26 26 Probabilistic Assembly Model S d a S Tileset = bcx d %5 %60 %20 G(y) = 2 G(g) = 2 G(r) = 2 G(p) = 1 G(w) = 1 t = 2 (Becker, Remila, Rapaport)

27 27 Probabilistic Assembly Model a S d a S Tileset = bcx d %5 %60 %20 G(y) = 2 G(g) = 2 G(r) = 2 G(p) = 1 G(w) = 1 t = 2 (Becker, Remila, Rapaport)

28 28 Probabilistic Assembly Model a S x d a S Tileset = bcx d %5 %60 %20 G(y) = 2 G(g) = 2 G(r) = 2 G(p) = 1 G(w) = 1 t = 2 (Becker, Remila, Rapaport)

29 29 Probabilistic Assembly Model a S x d S d a S Tileset = bcx d %5 %60 %20 G(y) = 2 G(g) = 2 G(r) = 2 G(p) = 1 G(w) = 1 t = 2 (Becker, Remila, Rapaport)

30 30 Probabilistic Assembly Model a S b x d S d a S Tileset = bcx d %5 %60 %20 G(y) = 2 G(g) = 2 G(r) = 2 G(p) = 1 G(w) = 1 t = 2 (Becker, Remila, Rapaport)

31 31 Probabilistic Assembly Model a S bc x d S d Two Terminal Shapes Produced a S Tileset = bcx d %5 %60 %20 G(y) = 2 G(g) = 2 G(r) = 2 G(p) = 1 G(w) = 1 t = 2 (Becker, Remila, Rapaport)

32 32 a S Tileset = Probabilistic Assembly Model bcx d %5 %60 %20 SS d SS ba.20/.85 = %23.5.60/.85 = %70.6.05/.85 = %5.9 G(y) = 2 G(g) = 2 G(r) = 2 G(p) = 1 G(w) = 1 t = 2 (Becker, Remila, Rapaport)

33 33 a S Tileset = Probabilistic Assembly Model bcx d %5 %60 %20 SS d SS d a S d b S ba S d a S d bcx %23.5 %70.6 %5.9 %75%25 G(y) = 2 G(g) = 2 G(r) = 2 G(p) = 1 G(w) = 1 t = 2 (Becker, Remila, Rapaport)

34 34 Generic Tileset for all Squares

35 35 Generic Tileset for Approximate Squares n (1-  n (1+  n

36 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 37 High Level Idea -Build random structure: -Dimensions are random -Internal pattern is random

38 38 High Level Idea -Build random structure: -Dimensions are random -Internal pattern is random -Incorporate arithmetic tiles to extract a binary number from the random pattern 10110110

39 39 Binary Counter 10110110 n n Finish off Square Output n approximation

40 40 X S Line Estimation of n

41 41 X S S Line Estimation of n

42 42 X S S Line Estimation of n

43 43 X S S Line Estimation of n

44 44 X S S Line Estimation of n

45 45 X S S Line Estimation of n

46 46 X S S Line Estimation of n

47 47 X S S Line Estimation of n

48 48 X S S Line Estimation of n

49 49 X S S Line Estimation of n

50 50 X S S Line Estimation of n

51 51 X S XS Line Estimation of n

52 52 X S XS % c % c/n % c(n-1)/n Line Estimation of n

53 53 X S XS % c % c/n % c(n-1)/n Line Estimation of n E[ Length ] = n Length has Geometric distribution with p = 1/n

54 54 X S XS % c % c/n % c(n-1)/n Line Estimation of n [Becker, Rapaport Remila, 2006] E[ Length ] = n

55 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 56 X S Improved Estimation of n: Binomial Distribution SX Key Idea

57 57 X S % c % c/L % c(L+1)(n-1)/Ln Improved Estimation of n: Binomial Distribution % c(L+1)/Ln SX Probability of placing a red tile given either a red or green tile is placed: 1/n

58 58 X S % c % c/L % c(L+1)(n-1)/Ln Improved Estimation of n: Binomial Distribution % c(L+1)/Ln SX 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 59 X S % c % c/L % c(L+1)(n-1)/Ln Improved Estimation of n: Binomial Distribution % c(L+1)/Ln SX 1 00 1 1 0 1 1 0 0 1 0 1 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 0 0 1 1 0 1 0 1 0 1 0 0 1 1 0 0 1 1 0 0 1 0 1 1 0 Binary CounterLength: 10000 Reds: 100 1 0 1 1 0 0 0 1 0 0 1 0 1 0

60 60 X S % c % c/L % c(L+1)(n-1)/Ln Improved Estimation of n: Binomial Distribution % c(L+1)/Ln SX 1 00 1 1 0 1 1 0 0 1 0 1 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 0 0 1 1 0 1 0 1 0 1 0 0 1 1 0 0 1 1 0 0 1 0 1 1 0 1 1 0 0 0 1 0 0010 0 1 0 1 0 0 Length: 10000 Reds: 100 Compute Length / Reds: 100 Division tiles Estimate for n

61 61 Problem: Estimation Line too Long SX Length >> n : Too long for an n x n square… Chernoff Bounds only yield high accuracy for Length >> n

62 62 S Multiple lines = HEIGHT: Determined by Geometric Distribution WIDTH: Determined by Geometric Distribution Solution: Estimation Frame Phase 1: Build dimensions of frame.

63 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 64 S 0 1 0 1 1 Sum Reds 0 1 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 65 S 0 1 0 1 1 Sum Reds 0 1 111 Sum Subtotals 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 66 S 0 1 0 1 1 Sum Reds 0 1 111 Sum Subtotals Divide: Length / Reds 1 0 0 1 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 OUTPUT Estimation

67 67 HEIGHT WIDTH Solution: Estimation Frame With high probability: HEIGHT > n Chernoff Bounds imply: Estimation is accurate with high probability: (1 -  )n’ < n < (1 +  ) n’

68 68 10110110 Finish off Square Output n approximation

69 69 Binary Counter 10110110 n n Finish off Square Output n approximation

70 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 10110110 n n Result:

71 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 72 Thanks for Listening Questions? Robert Schweller Computer Science Department University of Texas Pan American Email: schwellerr@gmail.comschwellerr@gmail.com http://www.cs.panam.edu/~schwellerr/


Download ppt "1 35 th International Colloquium on Automata, Languages and Programming July 8, 2008 Randomized Self-Assembly for Approximate Shapes Robert Schweller University."

Similar presentations


Ads by Google