Abstract
Grasping and fixturing are concerned with immobilizing objects. Most prior work in this area strives to minimize the number of contacts needed. However, for delicate objects or surfaces such as glass or bone (in medical applications), extra contacts can be used to reduce the forces needed at each contact to resist applied wrenches. We focus on the following class of problems. Given a polyhedral object model, set of candidate contacts, and a limit on the sum of applied forces at the contacts or a limit on any individual applied force, compute a set of k contact points that maximize the radius of the ball in wrench space that can be resisted. We present an algorithm, SatGrasp, that is guaranteed to find near-optimal solutions in linear time. At the core of our approach are (i) an alternate formulation of the residual radius objective, and (ii) the insight that the resulting problem is a submodular coverage problem. This allows us to exploit the submodular saturation algorithm, which has recently been derived for applications in sensor placement. Our approach is applicable in situations with or without friction.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
D. Kirkpatrick, B. Mishra, C.-K. Yap, Quantitative Steinitz’s theorems with applications to multifingered grasping. Discrete Comput. Geom. 7(1) (1992)
C. Ferrari, J. Canny, Planning optimal grasps, in Proceedings 1992 IEEE International Conference on Robotics and Automation (1992), pp. 2290–2295
B. Mishra, Grasp metrics: optimality and complexity, in Algorithmic Foundations of Robotics (1995)
M. Teichmann, B. Mishra, Probabilistic algorithms for efficient grasping and fixturing. Algorithmica 26(3–4), 345–363 (2000)
Ch. Borst, M. Fischer, G. Hirzinger, A fast and robust grasp planner for arbitrary 3D objects, in Proceedings 1999 IEEE International Conference on Robotics and Automation (Cat. No.99CH36288C), 3(May) (1999), pp. 1890–1896
R.C. Brost, K.Y. Goldberg, A complete algorithm for synthesizing modular fixtures for polygonal parts, in Proceedings of the 1994 IEEE International Conference on Robotics and Automation (1994), pp. 535–542
R.C. Brost, R.R. Peters, Automatic design of 3-D fixtures and assembly pallets. Int. J. Robot. Res. 17(12), 1243–1281 (1998)
M.Y. Wang, An optimum design for 3-D fixture synthesis in a point set domain. IEEE Trans. Robot. Autom. 16(6), 839–846 (2000)
S.P. Boyd, L. Vandenberghe, Convex optimization (Cambridge University Press, 2004)
B Gruünbaum, V. Klee, Convex Polytopes (Springer, 2003)
A. Krause, H. Brendan Mcmahan, Robust submodular observation selection. J. Mach. Learn. Res. 9, 2761–2801 (2008)
Mark Meckes (mathoverflow.net/users/1044). A min-max formula for depth of the origin in a convex set. MathOverflow
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Appendix
Appendix
Proof of Proposition 1
We use the fact that for two convex sets A and B, A ⊂ B if and only if \( h_{A} {\preceq} h_{B} \) (i.e., h A (x) ≤ h B (x) for all x). Let B r be the ball of radius r around the origin. If \( \hat{r} = r_{\text{res}} (C) \), then it follows that
On the other hand, let \( \tilde{r} = { \hbox{min} }_{\left\| y \right\| = 1} h_{C} (y) \). Then
Thus \( \min_{\left\| y \right\| = 1} h_{C} (y) = r_{\text{res}} \left( C \right) \) ⃞
1.1 Discretization Error in Formula for Residual Radius
We will consider a particular scheme for deterministically sampling the p-dimensional sphere (a subset of \( {\mathbb{R}}^{p + 1} \)) and bound the error that results when one evaluates the support function h C (y) at only the sampled points y to approximate its minimum. We take an n × n × · · · × n grid on every p-dimensional facet of the p + 1-dimensional hypercube. This requires (2p + 2)n p points.
Let y n = argmin h C (y i ) be the optimal sampled point, and let y * = argmin h c (y) be the exact optimal point. Let x n = argmax \( y_{n}^{T} x \).
where \( \theta_{{y^{n} ,x_{n} }} \le \tilde{\theta } \le \theta_{{y_{*} ,x_{n} }} \), and \( \varDelta \theta = \theta_{{y_{n} ,x_{n} }} {-}\theta_{{y_{*} ,x_{n} }} \). Next, note that \( h(y_{*} ) \ge y_{*}^{T} x_{n} \) so
The largest possible ∆θ occurs at the nearby part of each face, between the vector (1, 0,…, 0) and \( \left( {1,\frac{1}{2n}, \ldots ,\frac{1}{2n}} \right) \), where \( { \cos }(\varDelta \theta ) = \sqrt {1 + p/4n^{2} } \). It follows that
Thus
1.2 Submodular Saturation Algorithm
SATURATE finds solutions to problems where we are simultaneously trying to optimize a collection of submodular objectives.
If we run saturate and request a αk-element solution, it will give a solution that’s better than the optimal k-element solution, where
This bound applies when the functions F i take integer values. Thus to apply this result to a general problem of the form in Eq. (38), we must typically rescale and then round the objective functions. In the present problem, we can rescale and round the values \( h_{{FC_{i} }} (y_{j} ) \), or, in the frictionless case \( y_{j}^{T} w_{i} \). Now the αk-element solution found by SATURATE is no longer guaranteed to be better than the optimal k-element solution, however, the difference is small and due to rounding error.
Here we describe the SATURATE algorithm for self-containedness. The key idea is as follows: if the optimal value is c, then there is no benefit if an objective function exceeds c. Thus we define the truncated objective functions
If the original objectives F i are submodular, then the truncated versions are also submodular. Now our goal is to saturate all of the objective functions \( \widehat{F}_{i,c} (S) \), i.e., achieve the value c. The mean of the truncated functions, \( \overline{F}_{c} \), is also submodular, and it describes progress towards this goal.
To optimize \( \overline{F}_{c} \), we can use the greedy algorithm, which is guaranteed to give good solutions since it is submodular. (The greedy k-element solution is bested by the optimal k-element solution by at most a factor of 1 − 1/e).
We initially don’t the largest value of c that our greedy algorithm will successfully achieve (i.e., saturate all of the objective functions), so we use a binary search over the range of possible values. For each c, we greedily optimize \( \overline{F}_{c} \). If we saturate all of the \( \widehat{F}_{i,c} \), then we next try a larger c. If we fail to saturate them all, we next use a lower value of c.
SATURATE runs the greedy algorithm about 10 times with the transformed objective function. Thus the running time is roughly linear in |S| and k. It is actually somewhat faster than O(k) because we can use a “lazy greedy” algorithm that does not test elements that are guaranteed to give less improvement than some element that we’ve already tested.
Rights and permissions
Copyright information
© 2017 Springer International Publishing Switzerland
About this chapter
Cite this chapter
Schulman, J.D., Goldberg, K., Abbeel, P. (2017). Grasping and Fixturing as Submodular Coverage Problems. In: Christensen, H., Khatib, O. (eds) Robotics Research . Springer Tracts in Advanced Robotics, vol 100. Springer, Cham. https://doi.org/10.1007/978-3-319-29363-9_32
Download citation
DOI: https://doi.org/10.1007/978-3-319-29363-9_32
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-29362-2
Online ISBN: 978-3-319-29363-9
eBook Packages: EngineeringEngineering (R0)