1 / 58

Pebble Game Algorithm Demonstration 2|V| - 3, 6|V| - 6

Pebble Game Algorithm Demonstration 2|V| - 3, 6|V| - 6. Adnan Sljoka. Recall (from last week) the 2|V| - 3 counting condition for (generic) rigidity in 2D …. This is basically saying is that we need |E|=2|V| – 3 independent Rows in the rigidity matrix.

jana
Download Presentation

Pebble Game Algorithm Demonstration 2|V| - 3, 6|V| - 6

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Pebble Game Algorithm Demonstration 2|V| - 3, 6|V| - 6 Adnan Sljoka

  2. Recall (from last week) the 2|V| - 3 counting condition for (generic) rigidity in 2D … This is basically saying is that we need |E|=2|V| – 3 independent Rows in the rigidity matrix Laman’s Theorem (1970):A graph G = (V, E) is minimally rigid (generically) in 2D if and only if |E|=2|V| – 3 and for every subgraph (V′ ,E′) with |V′| ≥ 2 vertices, |E′| ≤ 2|V′| − 3. (Generic) rigidity of the framework depends only on the graph - i.e. not concerned with positions of vertices, edge lengths Rigidity of a graph G = (V, E) |E|=2|V| – 3 Minimal number of edges needed Condition that edges are independent (well-distributed) No edges are wasted! |E′|≤2|V′| – 3 • Minimally rigid: flexible after any edge (but no vertices) is removed. |E′|>2|V′| – 3 (red subgraph has one extra (redundant) edge) Remember that first order rigidity and rigidity are the same if we consider generic frameworks |E|=2|V| – 3 |E|<2|V| – 3 |E′|≤2|V′| – 3 • (Generic) rigidity of the framework depends only on the graph • - i.e. not concerned with positions of vertices, edge lengths minimally rigid (all edges are independent) Flexible Not enough edges (constraints).

  3. Counting in 2D (2|V| - 3) |E|=2|V| – 3 |E′|≤2|V′| – 3 • 2|V| – 3 counting condition (Laman’s Theorem) taken literally leads to a poor (exponential time) algorithm  need to count edges in all subgraphs! • Several fast (polynomial time) and intuitive algorithms exist, based on counting degrees of freedom (tracking the 2|V| – 3 count) using some alternate form of Laman’s Theorem Note: 2|V| – 3 = 2(|V| –1) – 1 Add an edge and look for 2 trees

  4. 2|V| - 3 Pebble Game Algorithm Demonstration |E|=2|V| – 3 |E′|≤2|V′| – 3

  5. 2|V| - 3 Pebble Game Algorithm Demonstration |E′|≤2|V′| – 3 Assign 2 pebbles (degrees of freedom-DOF) to each vertex

  6. 2|V| - 3 Pebble Game Algorithm Demonstration |E′|≤2|V′| – 3 Pick any edge, and test it for independence (i.e. see if it removes a DOF) The idea is to match pebbles or DOF with edges according to some specific rules

  7. 2|V| - 3 Pebble Game Algorithm Demonstration |E′|≤2|V′| – 3 Need 4 pebbles on the ends! (3 pebbles (DOF) are always present in the graph) Pick any edge, and test it for independence (i.e. see if it removes a DOF)

  8. 2|V| - 3 Pebble Game Algorithm Demonstration |E′|≤2|V′| – 3 This vertex looses one free pebble Cover edge with any of the 4 free pebbles from endvertices, orienting the edge accordingly! Edge (constraint) removes a DOF.

  9. 2|V| - 3 Pebble Game Algorithm Demonstration |E′|≤2|V′| – 3 … Continue covering edges (one by one) with 4 pebble on the ends

  10. 2|V| - 3 Pebble Game Algorithm Demonstration |E′|≤2|V′| – 3 … Continue covering edges (one by one) with 4 pebble on the ends

  11. 2|V| - 3 Pebble Game Algorithm Demonstration |E′|≤2|V′| – 3 … Continue covering edges (one by one) with 4 pebble on the ends

  12. 2|V| - 3 Pebble Game Algorithm Demonstration |E′|≤2|V′| – 3 Need four pebbles on the ends. Have only 3.

  13. 2|V| - 3 Pebble Game Algorithm Demonstration |E′|≤2|V′| – 3 Found free pebble! Search for the 4th pebble by following the directed path

  14. 2|V| - 3 Pebble Game Algorithm Demonstration |E′|≤2|V′| – 3 Note: this edge remains pebbled Reverse pebble along the directed path Got four pebbles on ends!

  15. 2|V| - 3 Pebble Game Algorithm Demonstration |E′|≤2|V′| – 3

  16. 2|V| - 3 Pebble Game Algorithm Demonstration |E′|≤2|V′| – 3 Later stage …

  17. 2|V| - 3 Pebble Game Algorithm Demonstration |E′|≤2|V′| – 3 One more edge to test! Need four pebbles Later stage …

  18. 2|V| - 3 Pebble Game Algorithm Demonstration |E′|≤2|V′| – 3 Reversing pebbles

  19. 2|V| - 3 Pebble Game Algorithm Demonstration |E′|≤2|V′| – 3 Reversing pebbles …

  20. 2|V| - 3 Pebble Game Algorithm Demonstration |E′|≤2|V′| – 3 Reversing pebbles …

  21. 2|V| - 3 Pebble Game Algorithm Demonstration |E′|≤2|V′| – 3 Reversing pebbles …

  22. 2|V| - 3 Pebble Game Algorithm Demonstration |E′|≤2|V′| – 3 Reversing pebbles …

  23. 2|V| - 3 Pebble Game Algorithm Demonstration |E′|≤2|V′| – 3 Failed search Could not find fourth free pebble

  24. 2|V| - 3 Pebble Game Algorithm Demonstration |E′|≤2|V′| – 3 Edge is redundant (not independent) This region is overconstrained Graph is flexible: 4 free pebbles remaining (3 trivial DOF and 1 internal DOF) We now have all but four pebbles matched to edges. The entire graph is still flexible.

  25. Pebble Game Algorithm and other counts We can adapt the 2|V| - 3 pebble game algorithm for other interesting counts (3|V| - 3, 3|V| - 4, 6|V| - 6, …) Recall that Laman’s Theorem (counting) does not extend to graphs (bar and joint) in 3D! (3|V| - 6 count) Theorem: If a graph G = (V,E) is minimally rigid in 3D then |E|=3|V| – 6 and for all subgraphs (|V′| >2), |E′|≤3|V′| – 6. Converse is false! |V|=8 |E|=18 |E|=3|V| –6, |E′|≤3|V′| –6 Theorem: If a graph G = (V,E) is minimally rigid in 3D then |E|=3|V| – 6 and for all subgraphs |E′|≤3|V′| – 6. We don’t have any nice counting (combinatorial) characterizations for rigidity. In fact there are no no known polynomial-time algorithm for testing rigidity in 3-space

  26. 6|V| - 6 count has important applications • based on Theorems and Conjectures developed by Tay and Whiteley for Body-Bar, Body-Hinge structures Switch to a different structure(s) and nice counting condition (6|V| – 6 count) that works in 3-space COUNT on a multigraph for (generic) rigidity where bodies (vertices) have 6 DOF Body-bar / Body-hingestructures • Consider two rigid bodies joined on a linear hinge • 6 DOF (trivial motions) for each body: total 12 DOF • Hinge removes 5 DOF: 12 – 5 = 7 = 6 DOF + 1 DOF (rotation about the hinge) Just to make sure you have a better understanding of the pebble game let us look at the pebble game for this specific count hinge 6 6 • Hinges can be represented with 5 bars (body-bar structure) I am basically skipping a whole lot of theory, so I can illustrate this other pebble game • Extract a multigraph G* = (V, E)  vertices are bodies and 5 edges (bars) between pairs of vertices that share a hinge 5 bars It has nice combinatorial features, just like in the plane for bar and joint frameworks, count edges and vertices in the graph Theorem (Tay and Whiteley) (1984): hinge Minimally (generically) rigid iff |E| = 6|V| – 6 and for every nonempty subset E′ with vertices V′, |E′|≤6|V′| – 6. There are these other structures in 3-space which have a complete combinatorial characterization of generic rigidity, just like in 2 space bar and joint frameworks. The conjecture is that this count also works for molecules.

  27. 6|V| - 6 Pebble Game Algorithm Demonstration Minimally rigid 6-membered ring 30 = 6(6) – 6 |E| = 6|V| – 6 |E′|≤6|V′| – 6 Replace each hinge (bond) by five edges Multigraph G* = (V, E) Note: |E| = 6|V| - 6 = 6(|V| - 1) (look for 6 edge-disjoint spanning trees) 6|V| - 6 Pebble Game Algorithm is implemented in program FIRST (Floppy Inclusion Rigid Structure Topography) for flexibility/rigidity analysis of proteins http://flexweb.asu.edu Ok, let’s see how we play the 6|V| - 6 pebble game algorithm, it is essentially the same, but it is still worth doing.

  28. |E′|≤6|V′| – 6 6|V| - 6 Pebble Game Algorithm Assign 6 pebbles (degrees of freedom) to each vertex |E| = 6|V| – 6 |E′|≤6|V′| – 6

  29. |E′|≤6|V′| – 6 6|V| - 6 Pebble Game Algorithm Test an edge (constraint) for independence (i.e. see if it removes a DOF) Need seven pebbles on the ends!(6 pebbles (DOF) are always present) You could obviously have anywhere between 6 and 12 |E| = 6|V| – 6 |E′|≤6|V′| – 6

  30. 6|V| - 6 Pebble Game Algorithm |E′|≤6|V′| – 6 Cover edge with any of the 12 free pebbles from endvertices, orienting the edge accordingly! Edge (constraint) removes a DOF

  31. |E′|≤6|V′| – 6 Continue covering edges (one by one) with 7 pebble on the ends

  32. |E′|≤6|V′| – 6 … Continue covering edges (one by one) with 7 pebble on the ends

  33. |E′|≤6|V′| – 6 … Later stage Less than 7 free pebbles available at ends!

  34. |E′|≤6|V′| – 6 Found 7th free pebble Search for the 7th pebble by following the directed path

  35. |E′|≤6|V′| – 6 7 pebbles on the ends pebble is swapped Edge stays covered

  36. |E′|≤6|V′| – 6 Place pebble on the edge

  37. |E′|≤6|V′| – 6 … Later stage One more edge to test! Less than 7 free pebbles available at ends!

  38. |E′|≤6|V′| – 6 Found 7th free pebble Search for the 7th pebble by following the directed path

  39. |E′|≤6|V′| – 6 “Draw” (reverse) free pebble along the path (i.e. sequence of swaps)

  40. |E′|≤6|V′| – 6 “Draw” (reverse) free pebble back along the path (i.e. sequence of swaps)

  41. |E′|≤6|V′| – 6 “Draw” (reverse) free pebble back along the path (i.e. sequence of swaps)

  42. |E′|≤6|V′| – 6 We have 7 free pebbles on the ends Note: We have reversed the direction of the path Edges always remain covered (pebbled)

  43. All edges are successfully pebbled! 6 remaining free pebbles (6 trivial DOF) Isostatic (minimally rigid) |E| = 6|V| – 6 |E′|≤6|V′| – 6

  44. 6|V| - 6 Pebble Game Algorithm More interesting example … Multigraph G = (V, E)

  45. Test edges one by one

  46. … Later stage of the algorithm So far all edges are covered (pebbled) successfully One more edge to test

  47. Need seven free pebbles on ends

  48. Search for 7th free pebble: follow directed path

  49. Search for 7th free pebble: follow directed path

  50. Failed search: 7th free pebble is not found

More Related