mathematics & statistics | smith collegerhaas/pebbles-mathfest.pdfcreated date 7/19/2005 4:53:30...

94
Graphs, Trees Pebbles, Robots 1

Upload: others

Post on 28-Sep-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Graphs, Trees

Pebbles, Robots

1

Page 2: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Outline

I. Robot Arms.

II. Rigid Graphs.

III. Characterizations of minimally rigid graphs.

IV. Trees, Arboricity and Characterizations.

V. The Pebbling Algorithm.

VI. Applications: (a) Rigid Components.

2

Page 3: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

I. Robot arms and the Carpenter’s Rule Problem.

Can a robot arm be straightened?(bent?)

Given a planar embedding of a path can it be straightened

(without crossing)?

3

Page 4: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

What about moving one embedding of a graph to another?

Trees?

4

Page 5: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

5

Page 6: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Trees can Lock!

(Beidl, Demaine, Demaine, Lubiw, O’Rourke, Overmans,

Robbins, Streinu)

5

Page 7: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Can any planar embedding of Cn be convexified?

6

Page 8: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Can any planar embedding of Cn be convexified?

Yes! Connelly, Demaine, Rote; nicer algorithm by Streinu (2000).

6

Page 9: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

II. Rigidity of Graphs

u uuLLLLLL uu u

u#

##

##

!!!!! uu

uuu

uu

����

����

@ �

@

Construct the graph G in R2 using inflexible bars for the edges

and rotatable joints for the vertices. This immersion is rigid if the

only motions of this structure are trivial (rotations and

translations).

7

Page 10: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

A non-rigid object:

17

Examples of flexible structures

8

Page 11: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

A non-rigid object:

18

Examples of flexible structures

8

Page 12: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

A non-rigid object:

19

Examples of flexible structures

20

Examples of flexible structures

8

Page 13: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

A non-rigid object:

20

Examples of flexible structures

21

Examples of flexible structures

8

Page 14: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

A non-rigid object:

21

Examples of flexible structures

8

Page 15: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Intuition: How many edges are necessary to make a rigid body

with V vertices?

u-6 u-6u-6 u-6

u-6 u-6

Total degrees of freedom: 2V .

E.g. variables {xi , yi } for each vertex i.

9

Page 16: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Intuition: How many edges are necessary to make a rigid body

with V vertices?

u-6 u-6u-6 u-6

u- u-6�

��

Total degrees of freedom: 2V .

Adding an edge can remove a degree of freedom.

E.g. variables {xi , yi } for each vertex i.

Constraint√

(x j − xi )2 + (y j − yi )2 = c

9

Page 17: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Possible Positions

For each edge have an equation:√(x j − xi )2 + (y j − yi )2 = c

or (x j − xi )2+ (y j − yi )

2= c2

u uuu

������DDDDDDA

A�� u u

u

u������DDDDDD�

�AA

10

Page 18: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Possible Motions

Take the derivative:

ddt Position: d

dt

((x j − xi )

2+ (y j − yi )

2= c2

)

2(x j − xi )(x ′

j − x ′

i ) + 2(y j − yi )(y ′

j − y ′

i ) = 0

Solve for x ′

i and y ′

i .

Now have a system of equations with 2V variables and E

equations.

11

Page 19: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

In the end you will still be able to translate and rotate.

-

6

u uuLLLLLL

u uuLLLLLL

-

6

-

6

uu u!!!!!

Thus, if G is rigid in R2 then E ≥ 2V − 3.

12

Page 20: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

A graph is rigid in R2 if some embedding of it is.

Turns out, if some embedding is rigid then most are.

u uu uLLLLLL

HHH

H

u uu uLLLLLL

��

��

u uuu

������DDDDDDA

A��

So we can hope for COMBINATORIAL characterizations

13

Page 21: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Aside: When the vertices are not in general position, can get

non-rigid embedding. (rigid but not infinitesimally rigid)

We’ll be concerned with vertices in general position. (Generic

Rigidity)

14

Page 22: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

A graph is minimally rigid in R2 if removing any edge results in a

graph that is not rigid.

u uu uLLLLLL

HHH

H

��

��

u uu uLLLLLL

��

��

HHHH

u uuu

������DDDDDDA

A��

These are not minimally rigid.

15

Page 23: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Theorem (Laman, 1970) A graph is minimally rigid if and only if

EG = 2VG − 3 and for any subgraph H with at least 2 vertices,

EH ≤ 2VH − 3.

u uu uLLLLLL

HHHH

V = 4 then

E = 2 ∗ 4 − 3 = 5

16

Page 24: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Theorem (Laman, 1970) A graph is minimally rigid if and only if

EG = 2VG − 3 and for any subgraph H with at least 2 vertices,

EH ≤ 2VH − 3.

u uu uLLLLLL

HHHH

u uu uLLLLLL

HHHH

u�

��

V = 4 then V = 5 then

E = 2 ∗ 4 − 3 = 5 E = 2 ∗ 5 − 3 = 7

16

Page 25: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Theorem (Laman, 1970) A graph is minimally rigid if and only if

EG = 2VG − 3 and for any subgraph H with at least 2 vertices,

EH ≤ 2VH − 3.

u uu uLLLLLL

HHH

H

u uu uLLLLLL

HHHH

u�

��

u uu uLLLLLL

HHHH

u,

,,

,,

,

V = 4 then V = 5 then

E = 2 ∗ 4 − 3 = 5 E = 2 ∗ 5 − 3 = 7

16

Page 26: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Rigidity in 3-d.

Now every vertex has 3 degrees of freedom.

17

Page 27: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Rigidity in 3-d.

Now every vertex has 3 degrees of freedom.

There are 6 independent translations and rotations in R3

18

Page 28: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Rigidity in 3-d.

Now every vertex has 3 degrees of freedom.

There are 6 independent translations and rotations in R3

Theorem: If a graph is minimally rigid in R3 then EG = 3VG − 6

and for any subgraph H with at least 2 vertices, EH ≤ 3VH − 6.

19

Page 29: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Rigidity in 3-d.

Now every vertex has 3 degrees of freedom.

There are 6 independent translations and rotations in R3

Theorem: If a graph is minimally rigid in R3 then EG = 3VG − 6

and for any subgraph H with at least 2 vertices, EH ≤ 3VH − 6.

Converse is false...

20

Page 30: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

21

Page 31: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

III. Characterizations of minimally rigid graphs.

Theorem (Laman, 1970) A graph is minimally rigid if and only if

EG = 2VG − 3 and for any subgraph H with at least 2 vertices,

EH ≤ 2VH − 3.

uu

uuu

uu

����

����

@ �

@

Algorithm? Not very efficient...

22

Page 32: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Theorem (Laman, 1970) A graph is minimally rigid if and only if

EG = 2VG − 3 and for any subgraph H with at least 2 vertices,

EH ≤ 2VH − 3.

Trees

Trees are minimally connected graphs.

Theorem G is a tree if and only if EG = VG − 1 and for any

subgraph H with at least 2 vertices, EH ≤ VH − 1.

2V − 3 = 2(V − 1) − 1

23

Page 33: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Characterizations of minimally rigid graphs.

Theorem (Lovasz - Yemini, 1982) A graph is minimally rigid if

and only if adding any edge (including doubling an existing edge)

results in a graph that is two edge-disjoint spanning trees.

uu

uuu

uu

����

����

@ �

@ uu

uuu

uu

����

����

@ �

@��

��

Algorithm? Edmonds Matroid Partitioning Algorithm

-polynomial in V, E. Run it C(n,2) times!

24

Page 34: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Characterizations of minimally rigid graphs.

Theorem (Crapo, 1992) A graph is minimally rigid if and only if

its edges are the disjoint union of 3 trees such that each vertex is

incident with exactly 2 trees and in any subgraph the trees have

different spans.

uu

uuu

uu

����

����

@ �

@ uu

uuu

uu

����

����

@ �

@

This characterization can be tested in one application of a

modified Matroid partitioning algorithm.

25

Page 35: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Characterizations of minimally rigid graphs.

Theorem (Henneberg, 1860): A graph is minimally rigid if and

only if it can be constructed using a Henneberg 2-sequence.

26

Page 36: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Begin with the graph consisting of 2 vertices and a single edge.

1. Add a new vertex of degree 2.

27

Page 37: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Begin with the graph consisting of 2 vertices and a single edge.

1. Add a new vertex of degree 2.

27

Page 38: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Begin with the graph consisting of 2 vertices and a single edge.

1. Add a new vertex of degree 2.

27

Page 39: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Begin with the graph consisting of 2 vertices and a single edge.

1. Add a new vertex of degree 2.

27

Page 40: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Begin with the graph consisting of 2 vertices and a single edge.

1. Add a new vertex of degree 2.

27

Page 41: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

2. Delete an edge {v1, v2}, and add a new vertex v adjacent to

each of {v1, v2} adjacent to any additional vertex.

28

Page 42: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

2. Delete an edge {v1, v2}, and add a new vertex v adjacent to

each of {v1, v2} adjacent to any additional vertex.

28

Page 43: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

2. Delete an edge {v1, v2}, and add a new vertex v adjacent to

each of {v1, v2} adjacent to any additional vertex.

28

Page 44: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

2. Delete an edge {v1, v2}, and add a new vertex v adjacent to

each of {v1, v2} adjacent to any additional vertex.

28

Page 45: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

2. Delete an edge {v1, v2}, and add a new vertex v adjacent to

each of {v1, v2} adjacent to any additional vertex.

28

Page 46: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

2. Delete an edge {v1, v2}, and add a new vertex v adjacent to

each of {v1, v2} adjacent to any additional vertex.

28

Page 47: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

2. Delete an edge {v1, v2}, and add a new vertex v adjacent to

each of {v1, v2} adjacent to any additional vertex.

28

Page 48: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

2. Delete an edge {v1, v2}, and add a new vertex v adjacent to

each of {v1, v2} adjacent to any additional vertex.

28

Page 49: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

The characterizations of minimally rigid graphs in the plane.

Theorem The following are equivalent.

1. EG = 2VG − 3 and every subgraph, H, with VH ≥ 2,

EH ≤ 2VH − 3 = 2(VH − 1) − 1

2. Adding any one edge to G results in a graph that can be

decomposed into 2 spanning trees.

3. G can be decomposed into 3 trees such that each vertex is

incident with exactly 2 trees.

4. G can be obtained from a single edge by Henneberg

construction.

5. G is minimally rigid in the plane.

29

Page 50: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

IV. Trees, Arboricity and Characterizations

• Trees are minimally connected graphs.

• Trees have n − 1 edges.

Given a (multi-)graph G, can the edges of G be partitioned into k

spanning trees? For what k?

Forests

• Forests are acyclic graphs with at most n − 1 edges.

Given a graph G, for what k can the edges of G be partitioned

into k forests?

Equivalently, if EG = k(VG − 1) − l does there exist l edges that

can be added to G to form a graph whose edges can be

partitioned into k spanning trees?

30

Page 51: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Nash-Williams defined:

The arboricity of the graph G is the minimum number of forests

into which the edges of G can be partitioned.

Theorem(Nash-Williams, Tutte ’64): A graph G, has arboricity

≤ k if and only if for all subgraphs H ⊂ G

EH ≤ k(VH − 1).

The Matroid Partitioning Algorithm (Edmonds) produces the k

forests or shows that k is not sufficient, in polynomial time.

31

Page 52: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Graphs for which adding some l edges results in k spanning trees.

Theorem The following are equivalent for a graph G, and

integers k > 0 and l ≥ 0.

1. EG = k(VG − 1) − l , and for subgraphs H ⊂ G with at least

2 vertices EH ≤ k(VH − 1).

2. There exist some l edges which when added to G results in a

graph that can be decomposed into k spanning trees.

3. G can be decomposed into k + l trees such that each vertex is

incident with exactly k trees.

4. G can be constructed using Henneberg type construction.

32

Page 53: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Graphs for which adding any l edges results in k spanning trees.

Theorem The following are equivalent for a graph G, and

integers k > 0 and 0 ≤ l < k.

1. EG = k(VG − 1) − l , and for subgraphs H ⊂ G with at least

2 vertices EH ≤ k(VH − 1) − l .

2. Adding any l edges to G results in k spanning trees.

3. G can be decomposed into k + l trees such that each vertex is

incident with exactly k trees, such that any subgraph H

contains at least k + l subtrees as well.

4. G can be constructed using Henneberg type construction.

33

Page 54: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Nice theorems, not so nice algorithms.

Best algorithm for determining if a graph is the union of k-trees

and some related problems.

Gabow and Westermann ’88 O((km)3/2)

34

Page 55: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

V. The Pebbling Algorithm.

First developed for basic rigidity problem by Hedrickson and

Jacobs ’97.

New version by Lee and Streinu. O((kn)2)

Determines if a given graph is the disjoint union of k trees.

(or related conditions)

35

Page 56: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Pebbling Algorithm (Streinu & Lee):

Basic algorithm to determine if a given graph is the disjoint

union of k trees.

• Place k pebbles on each vertex.

• Accept an edge if there are at least k + 1 pebbles total at its

ends.

• Delete one pebble and orient edge away from that vertex.

• Pebbles can be moved against directed edges, and then edges

reversed.

• If can add all edges and end with k pebbles then YES k-trees.

36

Page 57: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

k = 3 example

• Place k pebbles on each vertex.

37

Page 58: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

k = 3 example

• Accept an edge if at least k + 1 pebbles at its ends.

• Delete one pebble and orient edge away from that vertex.

• Pebbles can move against directed edges, then edges reversed.

37

Page 59: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

k = 3 example

• Accept an edge if at least k + 1 pebbles at its ends.

• Delete one pebble and orient edge away from that vertex.

• Pebbles can move against directed edges, then edges reversed.

37

Page 60: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

k = 3 example

• Accept an edge if at least k + 1 pebbles at its ends.

• Delete one pebble and orient edge away from that vertex.

• Pebbles can move against directed edges, then edges reversed.

37

Page 61: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

k = 3 example

• Accept an edge if at least k + 1 pebbles at its ends.

• Delete one pebble and orient edge away from that vertex.

• Pebbles can move against directed edges, then edges reversed.

37

Page 62: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

k = 3 example

• Accept an edge if at least k + 1 pebbles at its ends.

• Delete one pebble and orient edge away from that vertex.

• Pebbles can move against directed edges, then edges reversed.

37

Page 63: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

k = 3 example

• Accept an edge if at least k + 1 pebbles at its ends.

• Delete one pebble and orient edge away from that vertex.

• Pebbles can move against directed edges, then edges reversed.

37

Page 64: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

k = 3 example

• Accept an edge if at least k + 1 pebbles at its ends.

• Delete one pebble and orient edge away from that vertex.

• Pebbles can move against directed edges, then edges reversed.

37

Page 65: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

k = 3 example

• Accept an edge if at least k + 1 pebbles at its ends.

• Delete one pebble and orient edge away from that vertex.

• Pebbles can move against directed edges, then edges reversed.

37

Page 66: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

k = 3 example

• Accept an edge if at least k + 1 pebbles at its ends.

• Delete one pebble and orient edge away from that vertex.

• Pebbles can move against directed edges, then edges reversed.

37

Page 67: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

k = 3 example

• Accept an edge if at least k + 1 pebbles at its ends.

• Delete one pebble and orient edge away from that vertex.

• Pebbles can move against directed edges, then edges reversed.

37

Page 68: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

k = 3 example

• Accept an edge if at least k + 1 pebbles at its ends.

• Delete one pebble and orient edge away from that vertex.

• Pebbles can move against directed edges, then edges reversed.

37

Page 69: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

k = 3 example

• Accept an edge if at least k + 1 pebbles at its ends.

• Delete one pebble and orient edge away from that vertex.

• Pebbles can move against directed edges, then edges reversed.

37

Page 70: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

k = 3 example

• Accept an edge if at least k + 1 pebbles at its ends.

• Delete one pebble and orient edge away from that vertex.

• Pebbles can move against directed edges, then edges reversed.

37

Page 71: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

k = 3 example

• Accept an edge if at least k + 1 pebbles at its ends.

• Delete one pebble and orient edge away from that vertex.

• Pebbles can move against directed edges, then edges reversed.

37

Page 72: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

k = 3 example

• Accept an edge if at least k + 1 pebbles at its ends.

• Delete one pebble and orient edge away from that vertex.

• Pebbles can move against directed edges, then edges reversed.

37

Page 73: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

k = 3 example

• Accept an edge if at least k + 1 pebbles at its ends.

• Delete one pebble and orient edge away from that vertex.

• Pebbles can move against directed edges, then edges reversed.

• If can add all edges and end with k pebbles then YES k-trees.

37

Page 74: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Add some s for k-trees Algorithm.

The (k, k + 1) pebble game.

• Place k pebbles on each vertex.

• Accept an edge if there are at least k + 1 pebbles total at its

ends.

• If can add all edges and end with k + s then YES.

Determines whether this is a graph for which adding some s

edges gives a graph that is the disjoint union of k spanning trees.

38

Page 75: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Rigidity Algorithm.

The (2, 4) pebble game.

• Place 2 pebbles on each vertex.

• Accept an edge if there are at least 4 pebbles total at its ends.

• If can add all edges and end with 3 pebbles then YES

minimally rigid.

Determines whether this is a graph for which

adding any edge results in a graph that is the disjoint union of 2

spanning trees.

39

Page 76: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

General Algorithm.

The (k, k + 1 + r ) pebble game.

• Place k pebbles on each vertex.

• Accept an edge if there are at least k + 1 + r pebbles total at

its ends.

• If can add all edges and end with k + r then YES.

Determines whether this is a graph for which

adding any r edges results in a graph that is the disjoint union of

k spanning trees.

40

Page 77: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

General Algorithm.

The (k, k + 1 + r ) pebble game.

• Place k pebbles on each vertex.

• Accept an edge if there are at least k + 1 + r pebbles total at

its ends.

• If can add all edges and end with k + r + s then YES.

Determines whether this is a graph for which

adding some s edges gives a graph for which

adding any r edges results in a graph that is the disjoint union of

k spanning trees.

40

Page 78: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

VI. Applications: (a)Rigid Components.

If a graph does not represent a rigid body, what motions does it

allow? The pebble game can find rigid components.

41

Page 79: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

In a rigid component for each pair of vertices can have 2 pebbles

on one and 1 on the other and no more.

These are in the same rigid component.

42

Page 80: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

In a rigid component for each pair of vertices can have 2 pebbles

on one and 1 on the other and no more.

These are NOT in the same rigid component.

(The algorithm updates the components as edges are added so is

efficient.)

43

Page 81: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

In a rigid component for each pair of vertices can have 2 pebbles

on one and 1 on the other and no more.

The rigid components.

44

Page 82: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

In a rigid component for each pair of vertices can have 2 pebbles

on one and 1 on the other and no more.

The rigid components.

45

Page 83: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

In a rigid component for each pair of vertices can have 2 pebbles

on one and 1 on the other and no more.

The rigid components.

46

Page 84: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

VI(b) Protein Folding (in 3-d)

Bonds between pairs of atoms often provide a stronger constraint

(lengths, angles).

Join together bodies not just points in space.

47

Page 85: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Body and bar frameworks

Theorem (Tay) A body and bar framework in d space is

generically minimally rigid if the corresponding graph

decomposes into d(d-1)/2 edge disjoint spanning trees.

Theorem(Tay) A body and hinge framework is generically

minimally rigid if the corresponding graph satisfies

E = k(V − 1) − 1 and EH ≤ k(VH − 1) − 1 . (For

k = d(d + 1)/2 − 1)

-The pebble game tests for these.

48

Page 86: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Basic Rigidity:

Graver, Jack; Servatius, Brigitte; Servatius, Herman Combinatorial rigidity.

Graduate Studies in Mathematics, 2. AMS 1993.

Robot Arms and Carpenters Rule:

Ileana Streinu, A Combinatorial Approach to Planar Non-Colliding Robot Arm

Motion Planning in Proc. 41st ACM (FOCS) 2000, pp. 443-453.

Arboricity and Trees

R Haas, Characterizations of arboricity of graphs. Ars Combinatorica, 63:129 -

137, 2002.

Pebble Games

Audrey Lee, Ileana Streinu, Pebble Game Algorithms or Body-and-Bar Rigidity

preprint Smith College.

Application to Protein Flexibility

Donald J. Jacobs, A.J. Rader, M.F. Thorpe, and Leslie A. Kuhn. Protein flexibilty

predictions using graph theory. Proteins 44, 150-165, 2001.

49

Page 87: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Convexification Problem:

Add extra edges so that the object has restricted motion.

Use pseudotriangles.

50

Page 88: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

A pseudotriangle has 3 convex corners:

51

Page 89: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

A pseudotriangulation is an embedding of a planar graph in

which all interior faces are pseudotriangle. The exterior face is

convex.

52

Page 90: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Theorem: Minimal pseudotriangulations are minimally rigid.

Pseudotriangulations provide stucture to convexify embedded

cycles.

53

Page 91: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Algorithm for Convexifying:

54

Page 92: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Algorithm for Convexifying:

Pseudotriangulate the polygon, including hull edges.

55

Page 93: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Remove one hull edge. Now have one-degree of freedom and its

an expansive motion.

Open the object.

56

Page 94: Mathematics & Statistics | Smith Collegerhaas/pebbles-mathfest.pdfCreated Date 7/19/2005 4:53:30 PM

Repeat.

http://cs.smith.edu/ streinu/Research/Motion/motion.html

http://cs.smith.edu/ streinu/Research/Motion/Animation/mech1a.html

57