1 / 47

Two Finger Caging of Concave Polygon

This research paper discusses the problem of caging a rigid object using two fingers and finding maximal and minimal cage configurations. It presents a solution using graph representation and shortest path algorithms.

trosper
Download Presentation

Two Finger Caging of Concave Polygon

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. Two Finger Caging of Concave Polygon Peam Pipattanasomporn Advisor: Attawith Sudsang

  2. Outline • Objectives & Basic Concepts • Maximal Cage Problem • Minimal Cage Problem • Discussion & Conclusion

  3. Objectives & Basic Concepts

  4. Definition of Caging • Object is caged when it cannot escape to infinity w/o penetrating obstacles. • Our system: • Rigid Object, represented with simple polygons. • 2 Point Fingers. • On a plane, 2D problem.

  5. Objectives • “Determine sets of configurations that can cage the object with two fingers.”

  6. Objectives • Characterize ALL maximal cages & minimal cages.

  7. Previous Work • Rimon & Blake’s: Two 1-DOF finger caging • Largest cage that leads to a certain immobilizing grasp. • Topological change of Free (configuration) space.

  8. Our Work • Transform the Configuration space into a Search graph. • All largest possible cages. • Not cage that leads to a specified immobilizing grasp.

  9. Configuration Space • System of 7-DOF • 3-DOF rigid object orientation/position • 2x2-DOF positions of the fingers • However, whether the object is caged is independent from choice of coordinates (3-DOF ambiguity.)

  10. Configuration Space • Fix the rigid object’s orientation/position. • 2x2-DOF positions of the fingers (u, v). • Analyze motion of fingers relative to the object. • Object is not caged when two fingers are at the same point.

  11. Maximal Cage Problem

  12. Maximal Cage • A connected set containing every configuration (u, v) that can cage the object. • A maximal cage is associated with ONE critical distance d+.

  13. Critical Distance d+ • Least separation distance between fingers that allows object to escape. • d+(u,v) • Different d+impliesDifferentmaximal cage.

  14. Problem Definition • Characterize all Maximal Cages. • Set Description • Describe configurations in a maximal cage. • By a configuration in the maximal cage and its d+. • Point Inclusion • Which maximal cage a configuration (u, v) is in? • If so, what is d+ of the maximal cage?

  15. Determining d+(u, v) • To characterize a maximal cage, we need: • A configuration (u,v) inside a maximal cage. • d+ of such configuration. • How to determine d+(u,v), least upper-bound separation distance that allows the object to escape? • Consider an escape motion starting from (u,v). u v

  16. Upperbound Separation Distance

  17. Upperbound Separation Distance

  18. d+(u, v)

  19. d+(u, v) • Consider all possible escape motions starting from (u, v) for least separation distance. • Infinitely many motions.

  20. 5 8 P Solution Overview • R4 Config’ Space  Finite Graph • A Fingers’ Motion  A Path in the Graph • Configuration (u, v)  State P, (u,v)  P • Separation distance  Transition distance u v Upper-bound separation distance  Upper-bound Transition Distance

  21. R4 Config’ Space  Finite Graph A Fingers’ Motion  A Path in the Graph Configuration (u, v)  State P, (u,v)  P Separation distance  Transition distance d+(u, v)  d+P To determine d+ of a configuration is to determine d+ of a state. Solution Overview

  22. Graph Construction • States • Partition R4  Configuration Pieces Pi (States)

  23. Graph Construction • States’ Representatives: • Each representative is a certain configuration (u, v) inP, d+P = d+(u, v). • Finding d+ of all representatives (d+P for all P) is sufficient to characterize all maximal cages.

  24. Configuration Space Partitioning*** • Configuration that squeezes to the same pair of edges is in the same configuration piece. • State  Configuration Piece • State can be referred by an edge pair: {ei, ej} ei ej

  25. Piece’s Property • From any (u, v) in a piece P:{ei, ej}, there exists a “non-increasing separation distance” finger motion from (u, v) to a local minimum of P.

  26. Piece Property • FACT: Each piece partition this way is associated with at most ONE maximal cage. • FACT: If a configuration in piece is in a maximal cage, then its local minimum is as well.

  27. Piece Property • Use the state’s local minimum as state’s representative. • Consequently: Computing d+ of all representatives is sufficient for characterizing all maximal cages.

  28. Transitions • Two nearby pieces P, Q in R4 is linked with PQ. • Represents Fingers’ Motion from local minimum of P to that of Q with least upper-bound separation distance. • Transition distance [PQ] = Least upper-bound separation distance of such Motion.

  29. Transition Concatenation • Concatenating a series of transitions from P to a piece associated with {ek, ek} (k is a constant) to obtain an Escape Path. • An Escape Path implies An Escape Motion.

  30. d+ of Piece • d+P is obtained from an Escape Path with least upper-bound transition distance.

  31. Reduction to Shortest Path Prob. • Use Dijkstra’s Algorithm to solve this problem. • With an upper-bound fact: • d+P ≤ max(d+Q, [PQ]) • Instead of: • d+P ≤ d+Q + |PQ| • Start from any {ek, ek}

  32. Running Time Analysis • O(n2) states. (n = # edges) • Partitioning requires O(1) for each state  O(n2). • Dijkstra’s Algorithm takes: O(n2 lg n + t), t = number of transitions. • Only “basic transitions” should be included in the graph.

  33. Basic Transitions • At most 3 basic transitions for each distinct pair of edge ei and vertex v. • Link between edges sharing v (ej, ek). • Link between an edge w/ v as an end point and em. • x is a projection of v on ei

  34. Transition Distance • = |v – x| • Transition: Sliding fingers from one local minimum to the other. • Candidates: fingers’ motion on edges. • v must be included in the motion. • Transit between pieces at (v, x) is minimal. • Recall: “Piece’s Property”

  35. Basic Transitions are Sufficient • Possible non-basic transition (a). • Replace such with sequence of basic transitions w/ equal (or less) upper-bound separation distance.

  36. Basic Transitions • Require a ray-shoot for em . • O((√k) lg n) for each ray-shoot query. • Ray-shoot algorithm require O(n2) pre-computation time. • (k = # simple polygons.) • By Hershberger & Suri.

  37. Running Time Analysis • Total time required: O(n2 (√k) lg n) • O(n2 (√k) lg n) for pre-computation • O(n2 lg n) for d+ propagation w/ Dijkstra’s. • O((√k) lg n) for maximal cage query.

  38. Maximal Cage Query • If d+ of local minimum of P (d+P) is known. • Given (u, v) in piece P. • If |u-v| < d+P , (u, v) is in a maximal cage. • Squeeze (u,v) toan edge pair tofind (u,v)’s containing piece P. • O((√k) lg n)

  39. Minimal Cage

  40. Critical Distance d- • Greatest separation distance that allows object to escape. • d-(u,v)

  41. Problem Definition • Characterize all Minimal Cages. • Set Description • Describe configurations in a minimal cage. • By a configuration in the minimal cage and its d-. • Point Inclusion • Which minimal cage a configuration (u, v) is in? • If so, what is d- of the minimal cage?

  42. Grouping Configurations • Configuration that stretches to the same pair of vertices is in the same piece. • A piece P is associated with a vertex pair: {vi, vj}(the local maximum) • Every (u, v) in P can move to the local maximum of P with non-decreasing separation motion.

  43. Characterize Minimal Cages • After the graph construction • Piece - pair of vertices • Transitions - basic transitions • Solve all d- with Dijkstra’s Algorithm in the same manner.

  44. Discussion & Conclusion

  45. Algorithm • Combinatorial Search Algorithm. • n = # vertices, k = # simple polygons • O(n2 √k lg n) pre-computation time (characterize all maximal/minimal cages.) • O(√k lg n) optimal cage query time.

  46. (4.2) Improvement • In characterizing all Maximal Cages. • Partition free space (R2) into ‘r’ Convex Regions. • Pieces are cartesian product of a pair of convex regions.

  47. Improvement • O(n2 +r2 lg r), pre-computation time • O(lg n), maximal cage query time. • Can be applied to characterizing all maximal cages in 3D.

More Related