# Thread: What's redundancy of inverse kinematics?

1. Relay
Join Date
Jun 2012
Posts
14
Rep Power
29

## What's redundancy of inverse kinematics?

I found some kinematics tools that says 'Forward and inverse kinematics implementations for the PR2. It includes a fast inverse kinematics routine that can search through the redundancy.'.

For example pr2_kinematics

What's case will cause redundancy? What's that means?

Is there any simple picture or example?

Thank you~
Last edited by c2220333; 09-02-2012 at 12:30 PM.

2. ## Re: What's redundancy of inverse kinematics?

Sit at you desk and place you hand on your keyboard. Now, keeping your hand on the keyboard, rotate your shoulder so that your elbow is at or above shoulder height. Note that the end effector (your hand) is in the same goal position, but there is a second joint angle solutions that produce that same end effector position. That is redundancy. Except that there are actually far more than just two solutions, and they are limited only by the range of motion of each joint in the kinematic chain.

The suitability/practicality of a given solution will vary depending on the likelihood of physical interference/collision between segments in the chain as well as the strength of each joint in the chain and numerous other parameters. The 'pr2_kinematics' stack's 'pr2_arm_kinematics_constraint_aware' package will attempt to find a good solution without colliding with itself, but still requires some seed values estimating the joint angles of the solution (it will search for a suitable solution around these seed joint angles - an exhaustive search of all possible solutions to find an 'ideal' solution without using seed values would take a very long time for computation and comparison of the millions/billions+ of possible solutions. There are some algorithms/methods to somewhat reduce the computational requirements to find an 'ideal' solution, but I am too sleep deprived right now to recall any of their names or whether they still required seed values).

3. Relay
Join Date
Jun 2012
Posts
14
Rep Power
29

## Re: What's redundancy of inverse kinematics?

Thank you for detail and simple example of redundancy. You say that seed is important. Is every robot should find one seed for them? Or is there any simple example or pictures of important of seed. Thank you~

4. ## Re: What's redundancy of inverse kinematics?

With seeds, different seeds will find different joint solutions for the same query of end effector positions (some may find no solution even when one clearly exists). The simplest possible solution is to use the current joint angles as the seed, and try to query for some IK solution that is not "too far away" from the current end effector pose.

-Fergs

5. ## Re: What's redundancy of inverse kinematics?

IK is a pretty big research area in and of itself. It's also used in 3D animation for movies and games, etc. You may want to look into various inverse kinematic models and solvers used in those areas to get a feel for what the solution space looks like.
When it comes to "seeds," that's mostly important for "least delta" solvers, that figure out how to get where you want to go from where you are "now." There are other solvers that may optimize for other things, like keeping the envelope of the movement compact (don't "poke out" more than necessary while moving) etc.

There are currently 1 users browsing this thread. (0 members and 1 guests)