self avoiding walks
play

Self-avoiding walks Length doubling Implementation Results - PowerPoint PPT Presentation

Introduction Self-avoiding walks Length doubling Implementation Results Conclusion Rob Bisseling Mathematical Institute, Utrecht University Mathematics colloquium, Utrecht April 19, 2012 1 Joint work Introduction Length doubling


  1. Introduction Self-avoiding walks Length doubling Implementation Results Conclusion Rob Bisseling Mathematical Institute, Utrecht University Mathematics colloquium, Utrecht April 19, 2012 1

  2. Joint work Introduction Length doubling Implementation Results Conclusion Gerard Barkema (Theoretical Physics) ◮ Raoul Schram (student mathematics/physics) ◮ 2

  3. Contents Introduction Introduction self-avoiding walks Length doubling Implementation Results New method: length doubling Conclusion Implementation Results Conclusion 3

  4. Curiosity-driven walks Introduction Length doubling Implementation Results Conclusion Source: my-new-york.com, nyc-architecture.com 4

  5. Definition self-avoiding walks Introduction Length doubling Implementation Results ◮ A self-avoiding walk (SAW) is a walk on a regular lattice Conclusion that never returns to a position already visited. ◮ We start in the origin. ◮ The length of a walk is the number of steps, N . 5

  6. A self-avoiding walk of length 0 in 2D Introduction Length doubling Implementation Results Conclusion 6

  7. A self-avoiding walk of length 1 in 2D Introduction Length doubling Implementation Results Conclusion 7

  8. A self-avoiding walk of length 2 in 2D Introduction Length doubling Implementation Results Conclusion 8

  9. A self-avoiding walk of length 3 in 2D Introduction Length doubling Implementation Results Conclusion 9

  10. A self-avoiding walk of length 4 in 2D Introduction Length doubling Implementation Results Conclusion 10

  11. A self-avoiding walk of length 5 in 2D Introduction Length doubling Implementation Results Conclusion 11

  12. A self-avoiding walk of length 6 in 2D Introduction Length doubling Implementation Results Conclusion 12

  13. A self-avoiding walk of length 7 in 2D Introduction Length doubling Implementation Results Conclusion 13

  14. A self-avoiding walk of length 8 in 2D Introduction Length doubling Implementation Results Conclusion 14

  15. A self-avoiding walk of length 9 in 2D Introduction Length doubling Implementation Results Conclusion 15

  16. A self-avoiding walk of length 10 in 2D Introduction Length doubling Implementation Results Conclusion 16

  17. A self-avoiding walk of length 11 in 2D Introduction Length doubling Implementation Results Conclusion 17

  18. A self-avoiding walk of length 12 in 2D Introduction Length doubling Implementation Results Conclusion 18

  19. A self-avoiding walk of length 13 in 2D Introduction Length doubling Implementation Results Conclusion 19

  20. A self-avoiding walk of length 14 in 2D Introduction Length doubling Implementation Results Conclusion 20

  21. A self-avoiding walk of length 15 in 2D Introduction Length doubling Implementation Results Conclusion 21

  22. A self-avoiding walk of length 16 in 2D Introduction Length doubling Implementation Results Conclusion 22

  23. A self-avoiding walk of length 17 in 2D Introduction Length doubling Implementation Results Conclusion 23

  24. A self-avoiding walk of length 18 in 2D Introduction Length doubling Implementation Results Conclusion 24

  25. Why are self-avoiding walks useful? Introduction Length doubling Implementation Results Conclusion (Roiter and Minko 2007) Poly(2-vinylpyridine) observed by Atomic Force Microscope. ◮ The walk models a polymer, a long molecule, based on a carbon chain C–C–C–C · · · C. ◮ A prime motivation is the DNA polymer. ◮ Self-avoiding because 2 carbon atoms cannot exist at the same location (the excluded-volume property). 25

  26. How many self-avoiding walks are there? Introduction Length doubling Implementation Results Conclusion ◮ In 2D: Z 1 = 4 walks. 26

  27. How many self-avoiding walks of length 2? Introduction Length doubling Implementation Results Conclusion ◮ Z 2 = 4 × 3 = 12 walks. 27

  28. How many self-avoiding walks of length 3? Introduction Length doubling Implementation Results Conclusion ◮ Z 3 = 4 × 3 × 3 = 36 walks. 28

  29. How many self-avoiding walks of length 4? Introduction Length doubling Implementation Results Conclusion ◮ There are 4 × 3 × 3 × 3 = 108 possible walks, not all self-avoiding. ◮ In 8 cases, we return to the origin. So Z 4 = 108 − 8 = 100. ◮ Question: can you give an upper bound for Z 8 ? 29

  30. How many self-avoiding walks of length 8? Introduction Length doubling Implementation Results Conclusion ◮ There are 4 × 3 7 = 8748 possible walks, not all self-avoiding. So Z 8 ≤ 8748. ◮ In general: 2 N ≤ Z N ≤ 4 × 3 N − 1 . 30

  31. How many self-avoiding walks of length 8? Introduction Length doubling Implementation Results Conclusion ◮ We can concatenate two self-avoiding walks of length 4: Z 8 ≤ Z 2 4 = 10000 . ◮ A sharper upper bound: the first red step cannot be the reverse of the last black step: Z 8 ≤ 3 4 Z 2 4 = 7500 . ◮ Z 8 = 5916. 31

  32. Recursive 2D SAW algorithm SAW( i , N ) i = number of steps made, 0 ≤ i ≤ N Introduction N = desired length of the walk. Length doubling ( x 0 , y 0 ) , ( x 1 , y 1 ) , . . . , ( x i − 1 , y i − 1 ) is self-avoiding. Implementation Results if not visited ( x i , y i ) then Conclusion if i = N then print ”( x 0 , y 0 ) , . . . ( x N , y N ) is a SAW” else visited( x i , y i ) = true ; x i +1 = x i + 1; y i +1 = y i ; SAW( i + 1 , N ); x i +1 = x i − 1; y i +1 = y i ; SAW( i + 1 , N ); x i +1 = x i ; y i +1 = y i + 1; SAW( i + 1 , N ); x i +1 = x i ; y i +1 = y i − 1; SAW( i + 1 , N ); visited( x i , y i ) = false ; 32

  33. Bound for Z M + N Introduction Length doubling ◮ A self-avoiding walk of length M + N can be cut into walks Implementation of lengths M and N , so Results Conclusion Z M + N ≤ Z M · Z N . ◮ For M = N , we get Z 2 N ≤ ( Z N ) 2 . ◮ So Z N ≥ ( Z 2 N ) 1 / 2 for all N , giving Z 1 ≥ ( Z 2 ) 1 / 2 ≥ ( Z 4 ) 1 / 4 ≥ ( Z 8 ) 1 / 8 ≥ · · · 33

  34. Convergence in 2D Introduction Length doubling ◮ In the limit case for the 2D square lattice: Implementation Results N →∞ ( Z N ) 1 / N = µ ≈ 2 . 638 , so Z N ∼ µ N lim Conclusion ◮ Z 71 = 4 , 190 , 893 , 020 , 903 , 935 , 054 , 619 , 120 , 005 , 916 (Jensen 2004). √ � ◮ For 2D hexagonal lattice, µ = 2 + 2 ≈ 1 . 848 (Duminil-Copin and Smirnov 2010). 34

  35. The world is 3D Introduction Length doubling Implementation Results ◮ Clisby, Liang, Slade (2007): Conclusion Z 30 = 270 , 569 , 905 , 525 , 454 , 674 , 614 ◮ Nathan Clisby’s animation of a self-avoiding walk of length N = 1 , 048 , 575. 35

  36. Three self-avoiding walks of length 18 in 3D Introduction Length doubling Implementation Results Conclusion ◮ Self-avoiding walks of length 18: red, orange, blue. ◮ How many pairs of self-avoiding walks can be glued together to give a self-avoiding walk of length 36? 36

  37. Counting method based on intersection sets Introduction Length doubling Implementation Results Conclusion ◮ Intersections a = (2 , 0 , 0), b = (2 , 3 , 1) : red/orange. ◮ Intersection c = (0 , − 2 , 0) : blue/orange. ◮ There are 3 pairs of walks v / w with v � = w . ◮ There are 3 intersections: remove the corresponding pair. ◮ Correct for over-removal: red/orange was removed twice, so 3-3+1 = 1 pair remains, blue/red. 37

  38. Counting pairs of walks Introduction Length doubling Implementation i Results w Conclusion v ◮ A i = set of pairs of self-avoiding walks ( v , w ) of length N that both pass through lattice point i . ◮ The lattice points have been numbered (excluding 0). ◮ The set � n i =1 A i contains all pairs that intersect. 38

  39. Length doubling Introduction ◮ There is a bijection between: Length doubling • the self-avoiding walks of length 2 N Implementation • the non-intersecting pairs of walks of length N Results Conclusion because we can concatenate two walks. ◮ So we have: � � � � � Z 2 N = Z 2 N − A i � . � � � � � i ◮ We can compute Z 2 N efficiently by looking only at walks of length N . 39

  40. Principle of inclusion–exclusion � n � Introduction � � � � � � A i = | A i | − | A i ∩ A j | + | A i ∩ A j ∩ A k | + · · · Length doubling � � � � Implementation � � i =1 i i < j i < j < k Results · · · + ( − 1) n +1 | A 1 ∩ A 2 · · · ∩ A n | , Conclusion 1 7 6 A B 2 3 5 9 C 40

  41. Length-doubling formula Introduction Length doubling Implementation ◮ We obtain Results Conclusion � ( − 1) | S | Z 2 Z 2 N = Z 2 N + N ( S ) . S � = ∅ ◮ Z N ( S ) is the number of self-avoiding walks of length N that pass through a subset S of lattice sites. 41

  42. Computational complexity Introduction ◮ To compute Z N ( S ), we create all walks of length N . Length doubling ◮ For each walk, we create all 2 N subsets of its N lattice Implementation Results sites and add 1 to their counter in a global data structure. Conclusion ◮ Overall complexity O (2 N · Z N ) = O (2 N µ N ) = O ((2 µ ) N ) . Much less than O ( µ 2 N ) = O (( µ 2 ) N ), provided µ > 2. ◮ 3D cubic lattice: µ = 4 . 68, for 2 N = 36 savings of factor ( µ/ 2) 18 ≈ 4 . 4 × 10 6 . 42

Recommend


More recommend