Inverse Kinematics in Robotics using Neural Networks

The inverse kinematics problem in robotics requires the determination of the joint angles for a desired position of the end-effector. For this underconstrained and ill-conditioned problem we propose a solution based on structured neural networks that can be trained quickly. The proposed method yields multiple and precise solutions and it is suitable for real-time applications. © 1999 Elsevier Science Inc. All rights reserved. I . I n t r o d u c t i o n Modern robot manipulators, and kinematic mechanisms in general, are typically constructed by connecting different joints together using rigid links. A number of links are attached serially by a set of actuated joints. The kinematics of a robot manipulator describes the relationship between the motion of the joints of a manipulator and resulting motion of the rigid bodies that form the robot. Most of the modern manipulators consist of a set of rigid links connected together by a set of joints. Although any type of joint mechanism can be used to connect the links of a robot, traditionally the joints are chosen from revolute, prismatic, helical, cylindrical, spherical and planar joints. This paper looks at manipulators with revolute and prismatic joints. * Corresponding author. E-mail: kak@ee.lsu.edu t E-mail: sreeni@avanticorp.com 0020-0255/99/$20.00 © 1999 Elsevier Science Inc. All rights reserved. PII: S 0 0 2 0 0 2 5 5 ( 9 8 ) 100981 148 S. Tejomurtula, S, Kak / hlformation Sciences 116 (1999) 147-164 The different techniques used for solving inverse kinematics can be classified as algebraic [6,17,14,4,12,18], geometric [10,1,7] and iterative [8]. The algebraic methods do not guarantee closed form solutions. In case of geometric methods, closed form solutions for the first three joints of the manipulator must exist geometrically. The iterative methods converge to only a single solution and this solution depends on the starting point. The most common neural networks used to solve the problem of inverse kinematics are error-backpropagation and Kohonen networks. The error-backpropagation algorithm takes a very long time for forward training. We have proposed a variant of the error-backpropagation algorithm to solve this problem. This new approach has the advantage of accuracy over the error-backpropagation algorithm. 2. Background and notation The forward kinematics of a robot determines the configuration of the endeffector (the gripper or tool mounted on the end of the robot), given the relative configuration of the robot. This paper is restricted to open-chain manipulators in which the links form a single serial chain and each pair of links is connected either by a revolute joint or a prismatic (sliding) joint. The joint space of a manipulator consists of all possible values of the joint variables of the robot. Specifying the joint angles specifies the location of all the links of the robot. For revolute joints, the joint variables are given by an angle q E [a, b) where a and b are angles in radians. All joint angles are measured using a left-handed coordinate system, so that angle about a directed axis is positive if it represents an anti-clockwise rotation as viewed along the direction of the axis. Prismatic joints are described by a linear displacement along a directed axis. The number of degrees of freedom of an open-chain manipulator is equal to the number of joints in the manipulator. For simplicity, all joint variables are referred to as angles, although both angles and displacements are allowed, depending on the type of joint. Given a set of joint angles, the determination of the configuration of the end-effector relative to the base is called forward kinematics. The workspace of a manipulator is defined as the set of all end-effector configurations that can be reached by some choice of joint angles. The workspace is used when planning a task for a manipulator to execute; all desired motions of the manipulator must remain within the workspace. In this paper, the range of the possible angles is fixed in advance and the reachable workspace is calculated. Given the desired end-effector position, the problem of finding the values of the joint variables in order for the manipulator to reach that position is inverse S. Tejomurtula, S. Kak I Information Sciences 116 (1999) 147-164 149 kinematics. This problem may have multiple solutions, a unique solution or no solution. 2.1. A planar example To illustrate some of the issues in inverse kinematics, consider the inverse kinematics of the planar two-link manipulator shown in Fig. 1. The forward kinematics can be determined using plane geometry. p, = L, cos(q,) + L2cos(q, + q2), (1) P2 = L1 sin (ql) + Lzsin(ql + q2). (2) The inverse problem is to solve for joint variables ql and q2, given the endeffector coordinates pl and Pz.