A parallel evolutionary solution for the inverse kinematics of generic robotic manipulators

This paper is an improvement of our previous work [1]. It provides a robust, fast and accurate solution for the inverse kinematics problem of generic serial manipulators - i.e. any number and any combination of revolute and prismatic joints. Here, we propose further enhancements by applying an evolutionary approach on the previous architecture and explore the effects of different parameters on the performance of the algorithm. The algorithm only requires the Denavit-Hartenberg (D-H) representation of the robot as input and no training or robot-dependent optimization function is needed. In order to handle singularities and to overcome the possibility of multiple paths in redundant robots, our approach relies on the computation of multiple (parallel) numerical estimations of the inverse Jacobian while it selects the current best path to the desired configuration of the end-effector using an evolutionary algorithm. But unlike other iterative methods, our method achieves submillimeter accuracy in 20 iterations in average. The algorithm was implemented in C/C++ using POSIX threads, and it can be easily expanded to use more threads and/or many-core GPUs. We demonstrate the high accuracy and real-time performance of our method by testing it with five different robots including a 7-DoF redundant robot. Results show that the evolutionary implementation of the algorithm is able to reduce the number of iterations compared to the previous method significantly, while also finding the solution within the specified margin of error.

[1]  George G. Lendaris,et al.  Linear Hopfield networks and constrained optimization , 1999, IEEE Trans. Syst. Man Cybern. Part B.

[2]  Wu,et al.  Modeling and Analysis of a Micromotor with an Electrostatically Levitated Rotor , 2009 .

[3]  Tsuneo Yoshikawa,et al.  Dynamic Manipulability of Robot Manipulators , 1985 .

[4]  Donald Lee Pieper The kinematics of manipulators under computer control , 1968 .

[5]  K. Kreutz-Delgado,et al.  Inverse Kinematics of Dextrous Manipulators , 1997 .

[6]  Yoshihiko Nakamura,et al.  Inverse kinematic solutions with singularity robustness for robot manipulator control , 1986 .

[7]  B. Roth,et al.  Inverse Kinematics of the General 6R Manipulator and Related Linkages , 1993 .

[8]  M. Husty,et al.  A new and efficient algorithm for the inverse kinematics of a general serial 6R manipulator , 2007 .

[9]  Stefan Schaal,et al.  Inverse kinematics for humanoid robots , 2000, Proceedings 2000 ICRA. Millennium Conference. IEEE International Conference on Robotics and Automation. Symposia Proceedings (Cat. No.00CH37065).

[10]  D.T. Pham,et al.  Learning the inverse kinematics of a robot manipulator using the Bees Algorithm , 2008, 2008 6th IEEE International Conference on Industrial Informatics.

[11]  David E. Goldberg,et al.  Inverse kinematics of redundant robots using genetic algorithms , 1989, Proceedings, 1989 International Conference on Robotics and Automation.

[12]  S. Qiao,et al.  Inverse kinematic analysis of the general 6R serial manipulators based on double quaternions , 2010 .

[13]  Lorenzo Sciavicco,et al.  Robust Control of Robotic Manipulators , 1984 .

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

[15]  Stefan Schaal,et al.  Learning inverse kinematics , 2001, Proceedings 2001 IEEE/RSJ International Conference on Intelligent Robots and Systems. Expanding the Societal Role of Robotics in the the Next Millennium (Cat. No.01CH37180).

[16]  Ian D. Walker,et al.  Adaptive non-linear least squares for inverse kinematics , 1993, [1993] Proceedings IEEE International Conference on Robotics and Automation.

[17]  Amar Ramdane-Cherif,et al.  Kinematic inversion , 2002, IEEE/RSJ International Conference on Intelligent Robots and Systems.

[18]  Axel Gräser,et al.  Resolving Redundancy of Series Kinematic Chains through Imaginary Links , 1998 .

[19]  A. A. Maciejewski,et al.  Obstacle Avoidance , 2005 .

[20]  Chih-Cheng Chen,et al.  A combined optimization method for solving the inverse kinematics problems of mechanical manipulators , 1991, IEEE Trans. Robotics Autom..

[21]  Norman I. Badler,et al.  Inverse kinematics positioning using nonlinear programming for highly articulated figures , 1994, TOGS.

[22]  Stefano Chiaverini,et al.  Singularity-robust task-priority redundancy resolution for real-time kinematic control of robot manipulators , 1997, IEEE Trans. Robotics Autom..

[23]  Dinesh Manocha,et al.  Efficient inverse kinematics for general 6R manipulators , 1994, IEEE Trans. Robotics Autom..

[24]  Hong Y. Lee,et al.  Displacement analysis of the spatial 7-link 6R-P linkages , 1987 .

[25]  Charles W. Wampler,et al.  Manipulator Inverse Kinematic Solutions Based on Vector Formulations and Damped Least-Squares Methods , 1986, IEEE Transactions on Systems, Man, and Cybernetics.

[26]  Guilherme N. DeSouza,et al.  From D-H to inverse kinematics: A fast numerical solution for general robotic manipulators using parallel processing , 2013, 2013 IEEE/RSJ International Conference on Intelligent Robots and Systems.

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

[28]  Nak Young Chong,et al.  Inverse kinematics learning by modular architecture neural networks with performance prediction networks , 2001, Proceedings 2001 ICRA. IEEE International Conference on Robotics and Automation (Cat. No.01CH37164).

[29]  Dinesh Manocha,et al.  Real time inverse kinematics for general 6R manipulators , 1992, Proceedings 1992 IEEE International Conference on Robotics and Automation.

[30]  Joel C. Huegel,et al.  Inverse Kinematics Solution for Robotic Manipulators Using a CUDA-Based Parallel Genetic Algorithm , 2011, MICAI.

[31]  Zafer Bingul,et al.  Applying Neural Network to Inverse Kinematic Problem for 6R Robot Manipulator with Offset Wrist , 2005 .

[32]  P. B. Mahapatra,et al.  An evolutionary approach for solving the multimodal inverse kinematics problem of industrial robots , 2006 .

[33]  Ronan Boulic,et al.  Task-priority formulations for the kinematic control of highly redundant articulated structures , 1998, Proceedings. 1998 IEEE/RSJ International Conference on Intelligent Robots and Systems. Innovations in Theory, Practice and Applications (Cat. No.98CH36190).

[34]  John Baillieul,et al.  Kinematic programming alternatives for redundant manipulators , 1985, Proceedings. 1985 IEEE International Conference on Robotics and Automation.

[35]  Rasit Köker,et al.  A genetic algorithm approach to a neural-network-based inverse kinematics solution of robotic manipulators based on error minimization , 2013, Inf. Sci..

[36]  Daniel E. Whitney,et al.  Resolved Motion Rate Control of Manipulators and Human Prostheses , 1969 .

[37]  Ishak Aris,et al.  Artificial neural network-based kinematics Jacobian solution for serial manipulator passing through singular configurations , 2010, Adv. Eng. Softw..

[38]  A. Liegeois,et al.  Automatic supervisory control of the configuration and behavior of multi-body mechanisms , 1977 .

[39]  W. Wolovich,et al.  A computational technique for inverse kinematics , 1984, The 23rd IEEE Conference on Decision and Control.

[40]  William W. Melek,et al.  A Genetic Algorithm Approach to solve for Multiple Solutions of Inverse Kinematics using Adaptive Niching and Clustering , 2006, 2006 IEEE International Conference on Evolutionary Computation.