Rooted Cycle Bases David Eppstein , J. Michael McCarthy, and Brian E. - - PowerPoint PPT Presentation

rooted cycle bases
SMART_READER_LITE
LIVE PREVIEW

Rooted Cycle Bases David Eppstein , J. Michael McCarthy, and Brian E. - - PowerPoint PPT Presentation

Rooted Cycle Bases David Eppstein , J. Michael McCarthy, and Brian E. Parrish 14th Algorithms and Data Structures Symp. (WADS 2015) Victoria, BC, August 2015 Linkages Systems of rigid bodies connected by hinges Often with designated ground body


slide-1
SLIDE 1

Rooted Cycle Bases

David Eppstein, J. Michael McCarthy, and Brian E. Parrish 14th Algorithms and Data Structures Symp. (WADS 2015) Victoria, BC, August 2015

slide-2
SLIDE 2

Linkages

Systems of rigid bodies connected by hinges Often with designated ground body (fixed in place) and input body (where force input causes system to move)

Gd In A B C D E F H J Gd In A C F J B D H E

Connectivity may be described by a graph with vertices = bodies and edges = hinges Simplifying assumptions: system lies in R2 (crossings allowed); input is attached to ground (so its motion is purely rotational)

slide-3
SLIDE 3

Complex linkages can have complex motions

CC-BY-SA image of Amanda Ghassaei Walker by diehart, http://www.thingiverse.com/thing:264726

Applications include walking robots, fold-away sofabeds, vehicle suspensions, low-clearance doors, therapeutic exoskeletons, . . .

slide-4
SLIDE 4

Our piece of a larger puzzle

Goal: design linkage that achieves some desired motion Sub-goal: Analyze motion of a linkage Sub-sub-goal: Set up independent equations for the motion of a linkage Combinatorial abstraction: Find independent input–ground paths in the graph of a linkage

CC-BY image “Close up of Hand Cut Jigsaw Puzzle” by Charles Hamm on Wikimedia commons

slide-5
SLIDE 5

Independence of cycles in graphs

Cycle space: a vector space over Z2 Elements = sets of edges with even degree at all vertices Vector sum = symmetric difference of edge sets Scalar product = trivial

Based on CC-BY-SA image “Cycle space addition” by Kilom691 on Wikimedia commons

slide-6
SLIDE 6

Cycle bases

Cycle basis = basis of the cycle space = maximal independent set of cycles Fundamental cycle basis: cycles are spanning tree paths + one edge In planar graphs, bounded faces form a cycle basis

slide-7
SLIDE 7

Greed is good

Avarice, from The Dunois Hours, France, ca. 14401450. Public domain image “The Dunois Hours Avarice” on Wikimedia commons.

Independence in a vector space forms a matroid ⇒ minimum weight cycle bases can be found by a greedy algorithm For each candidate cycle, sorted by weight, test if independent and, if it is, include in basis The difficult part: finding a small set of candidate cycles When all weights positive, possible in polynomial time

slide-8
SLIDE 8

What kind of cycle basis do we need?

Paths from linkage input to ground ⇔ cycles that all pass through a “root edge” incident to input and ground Rooted graph: undirected graph + one chosen root edge Rooted cycle basis: all cycles in the basis include the root edge Higher cycle length gives more complex equations to solve, so we want a minimum weight rooted cycle basis

Plate to: H. J. Ruprecht, wand-atlas,

  • ed. 3, Dresden, c. 1850, no. 15. Public

domain image “A plant root cut to show growth rings, wood cells in longitu Wellcome V0044550” on Wikimedia commons.

slide-9
SLIDE 9

Warm-up result

Rooted cycle basis exists if and only if graph has one non-trivial 2-vertex-connected component and it contains the root edge Proof uses ear decomposition:

◮ Sequence of simple paths ◮ First path = root edge ◮ Endpoints of remaining

paths lie on earlier paths

◮ Interior vertices of each

path are disjoint from earlier paths Proof idea: Extend each ear to rooted cycle through previous ears

slide-10
SLIDE 10

The main result

Polynomial-time construction of min-weight rooted cycle basis Main idea: new edges of each greedy basis cycle form one path; these paths form an ear decomposition

t1 Q1 Q2 t2 Ai – 1 Ci P f v s

Part of case analysis showing that a cycle with > 1 new-edge paths cannot be the greedy choice

Corollary: shortest rooted cycles through each edge form a valid candidate set Use Suurballe’s algorithm to find these cycles

slide-11
SLIDE 11

Breaking ties

Correctness proof is only valid when all cycle lengths are distinct Small random perturbation works but requires randomness Perturbation by small powers of two works but requires too many bits of numerical precision Data structure for simulating power-of-two perturbation incurs only logarithmic slowdown

a b c d e f g h a b c d e f g h 3 4 5 6 1 2 3 ab 3 b 4 d 5 f 6 gh 6 g 1 abd 1 bd 1 ab 2 f 2 gh 2 fg 0 abdf 0 bdgh 0 abfg

slide-12
SLIDE 12

Additional results

Finding a fundamental rooted cycle basis is NP-complete (planar dual of finding a rooted Hamiltonian cycle) But can be solved in fixed-parameter time for (nonplanar) graphs

  • f small treewidth or clique-width using Courcelle’s theorem
slide-13
SLIDE 13

Conclusions

New type of cycle basis Motivated by applications in linkage analysis With a polynomial time optimization algorithm Also useful for other applications?