preserves thesuperlevel set connectivity of the free c-space F,6 then construct a caging graph, G, that preserves the superlevel set connectivity ofU.
To ensure superlevel equivalence, contact space and the caging graph must be augmented with tunnel curves, this time associated with local maxima of dps1, s2q representing non-feasible equi- librium grasps. The caging graph G will have to be modified as follows. The nodes of Gremain the same, while two edge types will have to be removed from G. If a bounding line of a contact space rectangle,Rij, contains an interior critical point ofdps1, s2q, the caging graph edge connecting the vertex-vertex nodes at the line’s endpoints is removed from G. Similarly, edges that connect diagonally opposite corners ofRijare removed fromG(all other edges ofGremain intact). A prelim- inary analysis indicates that the modified caging graph satisfies the superlevel equivalence required for computing stretching cages. However, these ideas must be carefully evaluated and verified on real-world examples.
A third extension concerns caging with two disc fingers. As a preliminary step, the object B must be converted into a c-space object, CB, by expanding its boundary outward by the fingers’
radius. However,CBcontains straight line edges as well as circular arcs incurred by the object’s con- vex vertices. When contact space is used to parametrize such circular arcs, the critical points of the inter-finger distance function, dps1, s2q, no longer lie along the bounding lines of the contact space rectangle associated with such arcs. Rather than construct generalized caging graphs which account for such object boundaries, every circular arc on the boundary ofCBcan be approximated by a regular k-segment polygonal arc. The caging algorithm can then be executed on the polygo- nal approximation of CB. The resulting caging sets will closely approximate the exact caging sets (with the quality of approximation increasing with k), and will usually identify the exact object vertex-edge pairs associated with puncture grasps ofB.
edges ofBform segments of degenerate local minima, the endpoints of such segments also lie on the rectangles’ bounding lines.
These properties lead to the construction of a caging graph, G, in contact spaceU. The nodes of Gcontain all the critical points of dps1, s2q, while the edges of G are constructed so as to pre- serve the sublevel set connectivity of the function dps1, s2q in U. However, proper computation of the caging sets requires augmentation of U with tunnel curves, which form additional edges of the caging graph G. Every tunnel curve starts at a local minimum of dps1, s2qof a special type (a non-feasible equilibrium grasp ofB), and ends at at a node ofGhaving a lower value of dps1, s2q. This chapter established sublevel equivalence of the augmented caging graph with the hand’s free c-space, F, and thus laid the groundwork for a simple caging algorithm. Starting from the node ofG representing a desired immobilizing grasp, the caging algorithm searchesGfor saddles where dps1, s2qattains successively increasing values. The puncture grasps corresponding to these saddles determine the initial, intermediate, and maximal caging sets in contact space. The entire computa- tion takesOpn2lognqtime, wherenis the number of vertices and edges ofB. The caging algorithm has been fully implemented under DARPA’s Autonomous Robotic Manipulation program, and its output has been demonstrated on a real-world example.
The basic caging algorithm can be extended in several ways. First, objects with holes can be treated under the framework described in this chapter. Second, contact space seems to be equally useful for computingstretching cages. This chapter suggested a modified caging graph that preserves the superlevel connectivity ofU, such that its augmentation with tunnel curves satisfies superlevel equivalence withF. However, these ideas have to be carefully evaluated and validated on real-world examples. A third extension concerns caging with two disc fingers. In this caseBis first transformed into a c-space object, then a polygonal approximation of the c-space object can be processed by the caging algorithm described here. However, contact space can possibly be used to define a generalized caging graph which will allow computation of the caging sets associated with two disc fingers.
Chapter 3
Two Fingers in Three Dimensions
3.1 Introduction
This chapter extends the work from Chapter 2 to consider caging of 3D polyhedra, still using two point fingers. Many of the concepts and definitions are similar or identical to Chapter 2, but is written to be independent of that chapter. Analysis in the 2D case was done using Stratified Morse Theory. In contrast, this chapter utilizes simple geometric descriptions to perform similar functions.
Several works by Pipattanasomporn et al [27, 29] have examined caging of 3D polyhedra. The contact-space formulation presented in this chapter allows most of the computation to be done in the 4D contact space, rather than the object’s 6D configuration space. This approach leads to an algorithm which is simple to implement and has sound computation efficiency.
The algorithm presented in this chapter takes as starting input a 3D polyhedron and an initial immobilizing grasp. Starting with that grasp, it searches a graph composed of critical points of the inter-finger distance function. It reports the local, intermediate, and maximal caging sets related to this immobilizing grasp.
Note that two point fingers cannot immobilize a polyhedron, as it will always be able to rotate about a line passing through both fingers. However, the two-fingered hand is immobilizing relative to the object. In this chapter, immobilizing refers to this situation.
This chapter is organized as follows. Section 3.2 defines the problem and introduces the inter- finger distance function,dpsq. Section 3.3 reformulates the 6D caging problem into 4D contact space.
Section 3.4 introduces a discrete caging graph,G, whose nodes will be searched using the algorithm presented in Section 3.5. An example in Section 3.6 demonstrates the algorithm. Section 3.7 presents a geometric method to characterize all nodes of G, which results in a catalog of all squeezing, immobilizing, and puncture grasps, shown in Section 3.8. In certain cases, important information is lost when moving from configuration space to contact space. Section 3.9 shows when information is lost and how to restore it, such that the search algorithm is correct.