A NAO robot playing tic-tac-toe Comparing alternative methods for Inverse Kinematics Renzo Poddighe Nico Roos Department of Knowledge Engineering, Maastricht University Abstract In this paper, two alternative methods to the Inverse Kinematics problem are compared to traditional methods regarding computation time, accuracy, and convergence rate. The test domain is the arm of the NAO humanoid robot. The results show that FABRIK, a heuristic iterative approximation algorithm outperforms the two traditional methods, which are both based on the Jacobian inverse technique, on all aspects. An artificial neural network vastly outperforms all algorithms regarding computation time, but lacks accuracy. To demonstrate the practical applicability, FABRIK has been used enable a NAO humanoid robot to play tic-tac-toe. Keywords: Humanoid robot, inverse kinematics, machine learning. 1 Introduction The Inverse Kinematics (IK) problem is a non-linear optimization problem which tries to optimize the posi- tion of the end effector of a robot’s kinematic chain with respect to a certain target position, by manipulating the intermediate joint configurations in the chain [7]. These joint configurations have to be calculated in a backwards manner from the Cartesian coordinates. Since not all points in Cartesian space map to a joint configuration, there is not always a solution. It is very exceptional for a kinematic chain to have a complete analytically derivable solution. Therefore, Inverse Kinematics solvers rely on numerical approaches. Traditional methods The most commonly used method is using the inverse of the Jacobian matrix, a matrix of first-order partial derivatives of the joint system, to make a linear approximation of the non-linear function that describes the Inverse Kinematics. Since the Jacobian is not always nonsingular, the inverse can be approximated by a number of methods [3], each of which has its drawbacks. The transpose of the Jacobian is proven to be a good replacement for the inverse [12]. However, the joint configurations are often unpredictable and many iterations are needed for convergence. The Moore-Penrose pseudoinverse of the Jacobian is a better estimate, but often performs poorly because of instability for configurations near singularities. The Damped Least Squares (DLS) method avoids the use of pseudoinverses and provides a more stable solution near singularities. A damping constant has to be chosen carefully: a larger constant makes the algorithm more numerically stable, but also lowers the convergence rate. Pseudoinverse DLS at- tempts to overcome this problem by applying Singular Value Decomposition. Pseudo-inverse DLS performs similar to regular DLS away from singularities, and smooths out the performance of regular DLS near sin- gularities. Selectively Damped Least Squares (SDLS) is an extension of Pseudoinverse DLS that also takes into account the relative positions of the end effector and the target position when choosing the damping constraint, resulting in fewer iterations needed for convergence, but a slower performance time. A general problem with all these methods is applying constraints, which is not at all straightforward to do using any Jacobian method. The existing methods do not guarantee optimal solutions and slow down performance times [4, 11]. When coping with computational limitations on a robot, it is therefore appealing to search for effective alternatives that have low on-line computational cost and are robust against singularities. In