A Combined Optimization Method for Solving the Inverse Kinematics Problem of Mechanical Manipulators Roland Mai B659, Spring 2010 Indiana University.

Slides:



Advertisements
Similar presentations
COMP Robotics: An Introduction
Advertisements

Kinematic Synthesis of Robotic Manipulators from Task Descriptions June 2003 By: Tarek Sobh, Daniel Toundykov.
Inverse Kinematics Professor Nicola Ferrier ME 2246,
3-D Homogeneous Transformations.  Coordinate transformation (translation+rotation) 3-D Homogeneous Transformations.
Links and Joints.
Denavit-Hartenberg Convention
Least Squares example There are 3 mountains u,y,z that from one site have been measured as 2474 ft., 3882 ft., and 4834 ft.. But from u, y looks 1422 ft.
Forward and Inverse Kinematics CSE 3541 Matt Boggus.
CSCE 641: Forward kinematics and inverse kinematics Jinxiang Chai.
1Notes  Handing assignment 0 back (at the front of the room)  Read the newsgroup!  Planning to put 16mm films on the web soon (possibly tomorrow)
Function Optimization Newton’s Method. Conjugate Gradients
Inverse Kinematics Problem:
Methods For Nonlinear Least-Square Problems
Time to Derive Kinematics Model of the Robotic Arm
“Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006.
CSCE 641: Forward kinematics and inverse kinematics Jinxiang Chai.
Advanced Computer Graphics (Fall 2010) CS 283, Lecture 20: Inverse Kinematics Ravi Ramamoorthi Most slides courtesy.
Inverse Kinematics.
Introduction to ROBOTICS
CSCE 689: Forward Kinematics and Inverse Kinematics
Advanced Topics in Optimization
Inverse Kinematics (part 1) CSE169: Computer Animation Instructor: Steve Rotenberg UCSD, Winter 2005.
Introduction to ROBOTICS
An Introduction to Robot Kinematics
KINEMATICS ANALYSIS OF ROBOTS (Part 1) ENG4406 ROBOTICS AND MACHINE VISION PART 2 LECTURE 8.
More details and examples on robot arms and kinematics
INTRODUCTION TO DYNAMICS ANALYSIS OF ROBOTS (Part 5)
Web Enabled Robot Design and Dynamic Control Simulation Software Solutions From Task Points Description Tarek Sobh, Sarosh Patel and Bei Wang School of.

UNCONSTRAINED MULTIVARIABLE
Point set alignment Closed-form solution of absolute orientation using unit quaternions Berthold K. P. Horn Department of Electrical Engineering, University.
Advanced Graphics (and Animation) Spring 2002
KINEMATICS ANALYSIS OF ROBOTS (Part 3). This lecture continues the discussion on the analysis of the forward and inverse kinematics of robots. After this.
Computer Animation Rick Parent Computer Animation Algorithms and Techniques Kinematic Linkages.
Inverse Kinematics.
Chapter 2 Robot Kinematics: Position Analysis
Inverse Kinematics.
Simulation and Animation
Optimization in Engineering Design Georgia Institute of Technology Systems Realization Laboratory 101 Quasi-Newton Methods.
Outline: 5.1 INTRODUCTION
Application of Differential Applied Optimization Problems.
KINEMATICS ANALYSIS OF ROBOTS (Part 4). This lecture continues the discussion on the analysis of the forward and inverse kinematics of robots. After this.
CSCE 441: Computer Graphics Forward/Inverse kinematics Jinxiang Chai.
559 Fish 559; Lecture 5 Non-linear Minimization. 559 Introduction Non-linear minimization (or optimization) is the numerical technique that is used by.
Quasi-Newton Methods of Optimization Lecture 2. General Algorithm n A Baseline Scenario Algorithm U (Model algorithm for n- dimensional unconstrained.
1cs426-winter-2008 Notes  Will add references to splines on web page.
Just a quick reminder with another example
Data Modeling Patrice Koehl Department of Biological Sciences National University of Singapore
Lecture 13. Geometry Optimization References Computational chemistry: Introduction to the theory and applications of molecular and quantum mechanics, E.
ECE 450 Introduction to Robotics Section: Instructor: Linda A. Gee 10/07/99 Lecture 11.
Robotics II Copyright Martin P. Aalund, Ph.D.
INTRODUCTION TO DYNAMICS ANALYSIS OF ROBOTS (Part 4)
KINEMATICS ANALYSIS OF ROBOTS (Part 5). This lecture continues the discussion on the analysis of the forward and inverse kinematics of robots. After this.
Euler Angles This means, that we can represent an orientation with 3 numbers Assuming we limit ourselves to 3 rotations without successive rotations about.
CSCE 441: Computer Graphics Forward/Inverse kinematics Jinxiang Chai.
Forward Kinematics Where is my hand ?. Examples Denavit-Hartenberg Specialized description of articulated figures (joints) Each joint has only one degree.
COMP322/S2000/L111 Inverse Kinematics Given the tool configuration (orientation R w and position p w ) in the world coordinate within the work envelope,
Manipulator Kinematics Treatment of motion without regard to the forces that cause it. Contents of lecture: vResume vDirect kinematics vDenavit-Hartenberg.
Numerical Methods for Inverse Kinematics Kris Hauser ECE 383 / ME 442.
Fundamentals of Computer Animation
Robotics Chapter 3 – Forward Kinematics
Velocity Propagation Between Robot Links 3/4 Instructor: Jacob Rosen Advanced Robotic - MAE 263D - Department of Mechanical & Aerospace Engineering - UCLA.
CSCE 441: Computer Graphics Forward/Inverse kinematics
Character Animation Forward and Inverse Kinematics
Introduction to manipulator kinematics
Mobile Robot Kinematics
CSCE 441: Computer Graphics Forward/Inverse kinematics
2-DOF Manipulator Now, given the joint angles Ө1, Ө2 we can determine the end effecter coordinates x and y.
Skeletal Motion, Inverse Kinematics
Chapter 4 . Trajectory planning and Inverse kinematics
Presentation transcript:

A Combined Optimization Method for Solving the Inverse Kinematics Problem of Mechanical Manipulators Roland Mai B659, Spring 2010 Indiana University

Outline Forward vs Inverse Kinematics Strategy of Method End-Effector Representation Review: The Newton-Raphson Method Cyclic Coordinate Descent Newton’s Method in High Dimensions BFGS Algorithm Performance and other considerations 2

Forward Kinematics ▫You know q 1 and q 2, find ( x m, x y ) ▫Generally:  Q   Inverse Kinematics ▫You know ( x n, y n ), find q 1 and q 2 ▫Generally:  -1 : M  Q ▫IK Problem: Find  -1 Q and M may not be homeomorphic or of the same dimensions. m ( x m, y m ) n ( x n, y n ) Forward vs Inverse Kinematics 3

Solving the IK Problem Consider the following robot arm with 3 DOF    c (x c, y c ) - current t (x t, y t ) - target     and   need to be such that end-effector reaches t. Idea: Iteratively minimize error to goal until some threshold. 4

Strategy of Method Modify the IK problem into an optimization problem where we try to minimize the error from current configuration to the goal configuration. Use Cyclic Coordinate Descent to find a good starting point for the Broyden-Feltcher- Goldfard-Shanno (BFGS) algorithm. Run BFGS algorithm to find the joint angles. 5

Description of End-Effector’s Goal P d are the Cartesian Coordinates. R d =[d 1 d 2 d 3 ] T where d i are unit vectors along x d, y d and z d axis. o d is the origin of the coordinate system. z1z1 x1x1 y1y1 zdzd xdxd ydyd d3d3 d1d1 d2d2 PdPd 6

Description of Current Position Generally: q = [q 1 q 2 … q n ] T where q i are the joint variables. P h (q) current position of coordinate system: (x h, y h, z h ) R h (q) = [h 1 (q) h 2 (q) h 3 (q)] T where h i (q) are unit vectors according to x h, y h, and z h axes. z1z1 x1x1 y1y1 zhzh xhxh yhyh h3h3 h1h1 h2h2 PhPh 7

Goal & Error/Objective Function Minimize Position Error (i.e. ||  P||):  P(q) =  P(q)   P(q) If o d = o h, then d i  h i (q) = 1. Minimize Orientation Error:  O(q) =  (d i  h i (q) – 1) 2 Total Error: E(q) =  P(q) +  O(q) z1z1 x1x1 y1y1 zdzd xdxd ydyd PdPd zhzh xhxh yhyh PhPh PP d3d3 d1d1 d2d2 h3h3 h1h1 h2h2 8

BFGS Algorithm BFGS ~ Broyden-Fletcher-Goldfard-Shanno A Quasi-Newtonian method. A directed heuristic search for minimizing an objective function. Starting point of the algorithm matters on stability of solution. ▫Cyclic Coordinate Descent provides a very good start for the BFGS algorithm. ▫Next: Review Newton-Raphson method.

Review: The Newton-Raphson Method It is an iterative method to quickly find good root approximations to a real valued function. 10

Review: The Newton-Raphson Method Problems: The derivates will keep oscillating. Starting at a good point is important. 11

Cyclic Coordinate Descent (CCD) 3 DOF arm reaching toward target. A full cycle of the iteration: The result is a good starting point for the BFGS algorithm. 12

Cyclic Coordinate Descent (CCD) For rotational joints it can be shown that minimizing E(q) is equivalent to maximizing: g(  ) = w p g 1 (  ) + w o g2(  ) where g 1 (  ) = P id  [R(z i,  )] P ih – how close to o d the rotation got us g 2 (  ) =  cos(  i (  )) =   d i  h i (  ) – rotational offset w p and w o are weighing factors g(  ) is called the objective function. It can then be shown, that g(  ) is maximized when: d g(  ) d  d 2 g(  ) d   = (k1 – k2) sin(  ) + k 3 cos(  ) = 0 and = (k1 – k2) cos(  ) - k 3 sin(  ) < 0 13

Newton’s Method in High Dimensions Where H is the Hessian matrix and  is called the gradient, and  is the step size. 14

Newton’s Method in High Dimensions If H was the identity I, Newton’s method would be the gradient descent. For this example the minima is found very quickly. 15

Newton in High Dimensions The Hessian matrix is expensive to compute. H -1 is even more expensive. Solution: BFGS Algorithm ▫It is a type of Quasi-Newton method because it estimates the value of H -1 instead of directly computing it. ▫It is preferred over the Davidon-Fletcher-Powel Formula; however a combination of these two may be used. 16

BFGS Algorithm Inputs: Objective Function, Step Size, Start Point Outputs: q = (q 1, q 2, …, q n ) Initialize H -1 = I and x 0 = Start Point,  = Step Size  x = -  k H -1  g(x k ) x k+1 = x k +  x Set y k =  g(x k+1 ) -  g(x k ) and H k+1 -1 = complex formula that depends on y k,  x and H k. Stop when some threshold  is reached. k 17

Performance Performs better than a very similar method by Kazerounian. Even though we talked only about rotational joints, it works well with translational joints. Experimental test show that the method works for various problems. Has the advantage to not be sensitive to the original position of the robot because of CCD. 18

References Li-Chun Tommy Wang and Chih Cheng Chen. “A Combined Optimization Method for Solving the Inverse Kinematics Probem of Mechanical Manipulators”. IEEE Transactions on Robotics and Automation., vol 7, no4. pp , Aug “Quasi-Newton Methods” edu/education/ME6103/Quasi-Newton.ppt Luenberger, David & Ye Yinyu “Linear and Nonlinear Programming” 3 rd Ed (Chapter 10) L.T. Wang and B. Ravani, “Recursive computations of kinematic and dynamic equations for mechanical manipulators” IEEE J. Robotic Automat., vol. RA-1, no. 3, pp , Sept