Suppose I have a robot arm with $n$ linkages of fixed length and equal density whose motion constrained within a 2D plane. I want the end effector to reach a particular pose $(x^*,y^*,\theta^*)$.

I know that in general, there can be multiple solutions that can reach this pose. For my particular application, I'm interested in a solution that minimizes the maximum torque exerted over any joint under the influence of the weights of all the linkages, combined.

Is there a way I can reformulate the inverse kinematics problem as a minimization problem over the joint loads? Can I formulate my objective function to be differentiable (i.e. so that I can use traditional optimization techniques)? Would this yield an unique solution (in a least squares sense) for the 2D planar motion problem?

  • 1
    $\begingroup$ I'd deeply rephrase your problem in terms of dynamic control. Minimizing the effort (joint torque) has generally nothing to do with inverse kinematics. Rather, take a look at the discipline of optimal control: Hamilton's principle, Pontryagin's minimum principle ... Further, do not confuse joint torques with joint loads. $\endgroup$ – Ugo Pattacini Dec 30 '14 at 14:06
  • $\begingroup$ @ugopattacini: That makes more sense. I'll probably close this question and rephrase it appropriately as a control question. $\endgroup$ – Paul Dec 30 '14 at 14:47

Kawato M. Developped the technique called the Minimum Commanded Torque and Minimum Commanded Torque Change to optimize joint torques (see article from Kaneko Y., Kawato M. and al., 2005).

A similar approach in the kinematics domain is the Minimum Jerk (MJ) model. It have been proven to be the domain in which humans plan movements, see article from Flash T. and Hogan N., 1985 (not to mention it is also simpler to plan trajectories in the kinematics domain). Details of implementation can be found on Shadmehr R. website. It consist of 5th degree polynomials combined together and minimize the jerk (derivative of acceleration) over the whole trajectory, thus minimizing acceleration changes.

MJ in the articular coordinate system yield a unique trajectory in the articular space, that depends on the choice of the configuration for the robot at the intermediate passage points. MJ model in the Cartesian coordinate system yield a unique trajectory in the Cartesian space, thus multiple possible solution in the articular space.

Using traditional optimization techniques with the MJ model is possible. Using the Resolved Motion Rate (RMR) technique after having computed the result of a pure MJ trajectory, the optimization function is

$z_{MJ}= \frac{1}{2}(q-q_{MJ})^TK^TK(q-q_{MJ})$

with $z_{MJ}$ the function to minimize, $K$ the gain coefficients, $q$ the articular position, and $q_{MJ}$ the MJ articular position. Computing the gradient $h$ of such function will allow you to find $\Delta \theta$ (see Huo, L. and Baron, L., 2008, for similar technique for joint limit avoidance).

| improve this answer | |
  • $\begingroup$ As per my comment I'd avoid talking about kinematics in this context. To a certain extent, minimum-jerk profile can serve as link though, since this specific polynomial comes out from the application of the variational principle (as it happens with Pontryagin theorem in the end). Nonetheless, we don't have to minimize the jerk, but rather the acceleration, as the equation $\ddot{\theta}=\tau$ maps joint acceleration into joint torque (neglecting many other components). $\endgroup$ – Ugo Pattacini Dec 30 '14 at 14:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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