7
$\begingroup$

Are inverse kinematics and reinforcement learning techniques contending techniques to solve the same problem viz. movement of robotic manipulators or arm?

By a glance through the wikipedia article, it appears that inverse kinematics seems to attempt to achieve a solution as opposed to reinforcement learning which attempts to optimizes the problem. Have I misunderstood anything?

$\endgroup$

2 Answers 2

10
$\begingroup$

From what I understand of your question, you'd like to know if inverse kinematics and reinforcement learning are trying to solve the same problem in the particular case of robotic manipulation. Of course both of these techniques can be applied outside of this particular realm, but let's focus on robot manipulation for now.

You're right that inverse kinematics is trying to find a solution, although this can be a family of solutions. You'd like to pose the end effector of your manipulator in a particular position and you have to find out the state of the rest of the arm in order to perform the motions that will achieve your goal.

Reinforcement learning is also trying to find a solution to the problem, and it's trying to optimize its solution with respect to a cost function. Imagine, for example, that there's a minimal set of movements that would get your end effector in the required position (e.g. by attaching a cost to actuating each of the manipulator's joints, you could learn the optimal way of achieving your goal with respect to power consumed).

Instead of considering the techniques to be at odds with each other, you could use inverse kinematics to find the family of solutions to your problem and reinforcement learning to search this space and find an optimal solution with respect to some cost/reward criteria of your choosing.

If you're intent on choosing one technique over the other, by posing the reinforcement learning problem as an optimization that rewards, say, how fast you reach the goal state of the end effector, you could still find a solution. However, there's a chance that you'd like to use some notion of the manipulator's kinematics to inform how you search the space of its movements.

$\endgroup$
2
$\begingroup$

If you consider e.g. a robotic arm, the inverse kinematics tell you how to choose the arm's joint angles to move the arm to some position and orientation where you want it to be.

In contrast to determining the forward kinemactics of some mechanism, determining it's inverse kinematics is usually hard and sometimes, there isn't even an analytic solution. Industrial robots, however, are often designed in such a way that they have an analytic solution for the inverse kinematics. This can be achieved by e.g. clever alignment of joint axes.

Reinforcement Learning, on the other hand, is a machine learning technique. Like any other machine learning technique or algorithm, it can be used to determine a function which you don't know - given that you choose a good reward function that is related to the problem you want to solve.

So, in a nutshell: you can use Reinforcement Learning to determine the inverse kinematics of a robot (if there is no analytical solution or determining one would be ridiculously hard).

$\endgroup$
1
  • $\begingroup$ Reading your answer one can have the strong impression that RL is preferable over standard IK: that's not true, definitively. RL yields very slow convergence and produces inaccurate outcomes, while IK relying on nonlinear optimization techniques are fast and robust and used in industrial so as research domains. Then, to compensate for uncertainties in the CAD model of the manipulator used by IK (we do that in research not in industrial settings) we tend to rely on different ML approaches rather than RL (e.g. SVM, GP ...). $\endgroup$ Jan 24, 2015 at 8:20

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.