Pebble games for rigidity Overview. The game of pebbling was first suggested by Lagarias and Saks, as a tool for solving a particular problem in number.

Slides:



Advertisements
Similar presentations
Covers, Dominations, Independent Sets and Matchings AmirHossein Bayegan Amirkabir University of Technology.
Advertisements

22C:19 Discrete Math Graphs Fall 2014 Sukumar Ghosh.
A survey of some results on the Firefighter Problem Kah Loon Ng DIMACS Wow! I need reinforcements!
NP-Completeness: Reductions
Approximative Kernelization: On the Trade-off between Fidelity and Kernel Size joint with Michael Fellows and Frances Rosamond Charles Darwin University.
1 Routing and Wavelength Assignment in Wavelength Routing Networks.
Lecture 16: DFS, DAG, and Strongly Connected Components Shang-Hua Teng.
Parallel Scheduling of Complex DAGs under Uncertainty Grzegorz Malewicz.
Geometric reasoning about mechanical assembly By Randall H. Wilson and Jean-Claude Latombe Henrik Tidefelt.
Graph Algorithms: Minimum Spanning Tree We are given a weighted, undirected graph G = (V, E), with weight function w:
Geometric Reasoning About Mechanical Assembly Randall H. Wilson and Jean-Claude Latombe Andreas Edlund Romain Thibaux.
Covering Trains by Stations or The power of Data Reduction Karsten Weihe, ALEX98, 1998 Presented by Yantao Song.
Rigidity and Persistence of Directed Graphs
Approximation Algorithms
Greedy Algorithms Reading Material: Chapter 8 (Except Section 8.5)
Network Localization CPSC 436/EENG 460 Guest Lecture David Goldenberg Oct 7, 2004.
The Equivalence between Static (rigid) and Kinematic (flexible, mobile) Systems through the Graph Theoretic Duality Dr. Offer Shai Tel-Aviv University.
Michael Bender - SUNY Stony Brook Dana Ron - Tel Aviv University Testing Acyclicity of Directed Graphs in Sublinear Time.
1 Global Rigidity R. Connelly Cornell University.
Computability and Complexity 24-1 Computability and Complexity Andrei Bulatov Approximation.
Greedy Algorithms Like dynamic programming algorithms, greedy algorithms are usually designed to solve optimization problems Unlike dynamic programming.
Complexity ©D.Moshkovitz 1 Paths On the Reasonability of Finding Paths in Graphs.
Chapter 5: Computational Complexity of Area Minimization in Multi-Layer Channel Routing and an Efficient Algorithm Presented by Md. Raqibul Hasan Std No.
Rigidity of 2d and 3d Pinned Frameworks and pebble game". Dr. Offer Shai Department of Mechanics Materials and Systems, Tel Aviv University, Israel
1 Refined Search Tree Technique for Dominating Set on Planar Graphs Jochen Alber, Hongbing Fan, Michael R. Fellows, Henning Fernau, Rolf Niedermeier, Fran.
Graphs, relations and matrices
Pebble Game Algorithm Demonstration
Translation – movement along X, Y, and Z axis (three degrees of freedom) Rotation – rotate about X, Y, and Z axis (three degrees.
Nattee Niparnan. Easy & Hard Problem What is “difficulty” of problem? Difficult for computer scientist to derive algorithm for the problem? Difficult.
APPROXIMATION ALGORITHMS VERTEX COVER – MAX CUT PROBLEMS
GRAPHS CSE, POSTECH. Chapter 16 covers the following topics Graph terminology: vertex, edge, adjacent, incident, degree, cycle, path, connected component,
MCS 312: NP Completeness and Approximation algorithms Instructor Neelima Gupta
Lecture 22 More NPC problems
Edge-disjoint induced subgraphs with given minimum degree Raphael Yuster 2012.
Pebble game extensions- Detecting relevant regions, protein hinge motions, allostery … Adnan Sljoka, York University Work with Walter Whiteley.
Adnan Sljoka KGU/CREST, Japan How to inductively construct floating body-hinge / molecular Assur graphs?
EMIS 8373: Integer Programming NP-Complete Problems updated 21 April 2009.
Techniques for Proving NP-Completeness Show that a special case of the problem you are interested in is NP- complete. For example: The problem of finding.
Sports Scheduling Written by Kelly Easton, George Nemhauser, Michael Trick Presented by Matthew Lai.
Data Structures & Algorithms Graphs
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
Conjectures Resolved and Unresolved from Rigidity Theory Jack Graver, Syracuse University SIAM conference on DISCRETE MATHEMATICS June 18-21, Dalhousie.
NP-Complete Problems. Running Time v.s. Input Size Concern with problems whose complexity may be described by exponential functions. Tractable problems.
1/24 Introduction to Graphs. 2/24 Graph Definition Graph : consists of vertices and edges. Each edge must start and end at a vertex. Graph G = (V, E)
Role of Rigid Components in Protein Structure Pramod Abraham Kurian.
EMIS 8373: Integer Programming Combinatorial Relaxations and Duals Updated 8 February 2005.
Graph Theory and Applications
Graphs A graphs is an abstract representation of a set of objects, called vertices or nodes, where some pairs of the objects are connected by links, called.
GRAPHS. Graph Graph terminology: vertex, edge, adjacent, incident, degree, cycle, path, connected component, spanning tree Types of graphs: undirected,
CSE 421 Algorithms Richard Anderson Winter 2009 Lecture 5.
Information and Control Architectures for Formation Maintenance Swarming in Natural and Engineered Systems Workshop Brian DO Anderson (work involves others)
Computational Algorithm for Determining the Generic Mobility of Floating Planar and Spherical Linkages Offer Shai Mechanical Engineering School, Tel-Aviv.
The geometric GMST problem with grid clustering Presented by 楊劭文, 游岳齊, 吳郁君, 林信仲, 萬高維 Department of Computer Science and Information Engineering, National.
TU/e Algorithms (2IL15) – Lecture 12 1 Linear Programming.
Proceedings of the ASME 2012 International Design Engineering Technical Conferences & Computers and Information in Engineering Conference IDETC/CIE 2012.
Theory of Computational Complexity Probability and Computing Chapter Hikaru Inada Iwama and Ito lab M1.
CHECKING MOBILITY AND DECOMPOSITION OF LINKAGES
Graph theory Definitions Trees, cycles, directed graphs.
A Unified Concept for the Graph Representation of
Graph Theory and Algorithm 01
ICS 353: Design and Analysis of Algorithms
Intro to NP Completeness
On the effect of randomness on planted 3-coloring models
Richard Anderson Winter 2009 Lecture 6
CSE 6408 Advanced Algorithms.
Complexity Theory in Practice
Richard Anderson Lecture 5 Graph Theory
Richard Anderson Winter 2019 Lecture 5
Instructor: Aaron Roth
Locality In Distributed Graph Algorithms
Presentation transcript:

Pebble games for rigidity Overview

The game of pebbling was first suggested by Lagarias and Saks, as a tool for solving a particular problem in number theory. The algorithm can be used for analyzing the rigidity and flexibility of a variety of structures (mechanisms, molecules exc. ) Introduction

Rigidity in 2D – Bar and Joint Introduced by Jacobs & Hendrickson 1997, based on Laman conditionJacobs & Hendrickson 1997 Laman graph of n vertices (1970)  The whole graph has exactly 2n − 3 edges  For all k, every k-vertex subgraph has at most 2k − 3 edges  The graph describes a minimally rigid systems of rods (edges) and joints (vertices) in the plane.

What does Laman mean? For the whole graph |e|=2|v|-3 For subgraphs |e|≤2|v|-3 |e|+3=2|v| Number of edges (constrains) Trivial DOFs of a body in 2D Number of vertices x 2 DOFs of a point in 2D The edges (constrains) are well distributed

Laman condition Taking Laman condition literally leads to exponential time complexity ◦ Every sub-graph must be tested for the number of vertices vs. edges Alternate Laman condition: ◦ The edges in G are independent in 2D if and only if for each edge (a, b), the graph formed by quadrupling (a, b) has no induced subgraph of k nodes and >2k edges => Building the graph from sub-graph and testing each new edge for independence leads to polynomial time complexity

Example Let’s take the 2D undirected graph and run pebble game in 2D Corresponds to 2D bar & joint floating framework

Example Let’s take a floating bar and joint framework in 2D Each vertex is given two pebbles, corresponding to the two degrees of freedom of a point in 2D A vertex can use its pebbles to cover any two edges which are incident to that vertex. Starting point is arbitrary.

Building directed graph We will build directed edges by extending independent sub-group ◦ Quadrupling each new edge to test independence with the sub-group we already have Begin with a single vertex (clearly independent) Quadruple the edge

Direct an edge move In case 2 pebbles cannot be found at the ends of that constraint after an exhaustive search, the constraint is redundant (and therefore can to be directed). General direct an edge move If i and j are vertices with two pebbles on each (corresponding to independent constraint), add the edge ij (oriented toward j) and pick up one of the pebbles from i.

Pebble slide move Pebble slide move If ij is an edge in the pebble game's graph and there is a pebble on j, reverse ij and move the pebble from j to i.

Result The algorithm ends when all the edges have been processed. Result : 3 pebbles (only trivial DOFs)

Redundant edge What happens to over constraints ? example with SS : Any edge that can’t be directed corresponds to redundant constraint. This happens when the length between it’s end point is already set by other constrains. Inside the rigid region any edge can be redundant.

DOF number The resulting number of pebbles after all edges were processed, gives the number of DOFs of the corresponding mechanism. ◦ For floating mechanism there are 3 trivial DOFs => 3 remaining pebbles is an indicator for rigidity ◦ For grounded mechanism 0 pebbles indicate rigidity (edges linked to gnd vertices are directed in the end, with any free pebble) Actually this is the number of non preset vertices (that have pebbles = DOFs)

Partition to Assur graphs A directed cut defines a partition to Assur graphs.

Algorithm summary Find a subset of independent edges. Use an incremental algorithm: pick an edge, test if it’s independent of the current subset. Alternate Laman theorem: The edges in G are independent in 2D if and only if for each edge (a, b), the graph formed by quadrupling (a, b) has no induced subgraph of k nodes and >2k edges Grow a maximal set of independent edges one at a time. New edge is added if it is independent of existing set. ◦ Quadruple the new edge and test the Laman condition. If Laman failed, then output “not rigid”. If 2n-3 independent edges are found, then graph is rigid (n = number of vertices). Testing an edge for independence takes O(n) time: we do 3 depth-first search in a graph with O(n) edges. At most m edges will be tested. The total running time is O(nm)

Rigidity in 2D – Body & Bar Body & Bar – subgroup of Bar & Joint Graph representation: ◦ Every rigid body = vertex ◦ The rest are bars

Laman for Body & Bar in 2D Laman graph for this case: ◦ The whole graph has exactly 3n − 3 edges ◦ For all k, every k-vertex subgraph has at most 3k − 3 edges |e|+3=3|v| Number of edges (constrains) Trivial DOFs of a body in 2D Number of vertices x 3 DOFs of a body in 2D

Pebble game for Body & Bar 2D Every vertex is given 3 pebbles The condition to direct an edge is to have ≥ 4 pebbles on the incident vertices The rest is the same (example follows)

Example Bb 2D Grounded mechanism with 1 DOF Partition to Assur groups : 4 can be analyzed as stand alone (dyad) Grounded body (vertex)

Rigidity in 3D – Body and bar Introduced by Tay and Whiteley ◦ Vertices -> rigid bodies ◦ Edges -> bars ◦ Hinge = 5 bars Laman graph for this case: ◦ The whole graph has exactly 6n − 6 edges ◦ For all k, every k-vertex subgraph has at most 6k − 6 edges Need at least 7 pebbles to direct an edge

Examples Minimally rigid Flexible with 1 DOF

Thank You !