TRAC-IK: An open-source library for improved solving of generic inverse kinematics

The Inverse Kinematics (IK) algorithms implemented in the open-source Orocos Kinematics and Dynamics Library (KDL) are arguably the most widely-used generic IK solvers worldwide. However, KDL's only joint-limit-constrained IK implementation, a pseudoinverse Jacobian IK solver, repeatedly exhibits false-negative failures on various humanoid platforms. In order to find a better IK solver for generic manipulator chains, a variety of open-source, drop-in alternatives have been implemented and evaluated for this paper. This article provides quantitative comparisons, using multiple humanoid platforms, between an improved implementation of the KDL inverse Jacobian algorithm, a set of sequential quadratic programming (SQP) IK algorithms that use a variety of quadratic error metrics, and a combined algorithm that concurrently runs the best performing SQP algorithm and the improved inverse Jacobian implementation. The best alternative IK implementation finds solutions much more often than KDL, is faster on average than KDL for typical manipulation chains, and (when desired) allows tolerances on each Cartesian dimension, further improving speed and convergence when an exact Cartesian pose is not possible and/or necessary.

[1]  Oussama Khatib,et al.  A unified approach for motion and force control of robot manipulators: The operational space formulation , 1987, IEEE J. Robotics Autom..

[2]  Tsuneo Yoshikawa,et al.  Manipulability of Robotic Mechanisms , 1985 .

[3]  Yoshihiko Nakamura,et al.  Advanced robotics - redundancy and optimization , 1990 .

[4]  O. Khatib TASK-ORIENTED CONTROL OF HUMANOID ROBOTS THROUGH PRIORITIZATION , 2004 .

[5]  Jean Charles Gilbert,et al.  Numerical Optimization: Theoretical and Practical Aspects , 2003 .

[6]  Stephen Hart,et al.  Natural task decomposition with intrinsic potential fields , 2007, 2007 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[7]  Sanjeev Kumar,et al.  AN OPTIMIZATION APPROACH TO SOLVE THE INVERSE KINEMATICS OF REDUNDANT MANIPULATOR , 2010 .

[8]  Oussama Khatib,et al.  Control of Free-Floating Humanoid Robots Through Task Prioritization , 2005, Proceedings of the 2005 IEEE International Conference on Robotics and Automation.

[9]  Zexiang Li,et al.  Kinematic control of free rigid bodies using dual quaternions , 2008, Int. J. Autom. Comput..

[10]  Ben Kenwright,et al.  A Beginners Guide to Dual-Quaternions: What They Are, How They Work, and How to Use Them for 3D Character Hierarchies , 2012, WSCG 2012.

[11]  Stephen L. Chiu,et al.  Kinematic characterization of manipulators: an approach to defining optimality , 1988, Proceedings. 1988 IEEE International Conference on Robotics and Automation.

[12]  Scott Kuindersma,et al.  An Architecture for Online Affordance‐based Perception and Whole‐body Planning , 2015, J. Field Robotics.

[13]  S. Chiu,et al.  Control of redundant manipulators for task compatibility , 1987, Proceedings. 1987 IEEE International Conference on Robotics and Automation.