# generalized inverse

### Generalized Jacobian inverses and Kinetic Energy Minimization

Posted on Updated on

In my last post, I discussed how one may obtain a unique solution while inverting control Jacobians by constraining the generalized inverse’s null space to correspond to a velocity and acceleration null space. The way to do this was to show that the $J^{\#T}$‘s null space filters any potential generalized forces that could induce an acceleration in a higher priority task. The proof used the Jacobian’s transpose, which corresponds to force projections.

Here, I will discuss an alternative approach that produces the same result but works with the dual, which corresponds to velocity projections. The approach is to compute the Jacobian inverse using Lagrange multipliers in a way that minimizes Kinetic Energy in the entire control space, which includes the task’s null space.

If the previous paragraph sounded like jargon, please read my control tutorial and learn about Lagrange multipliers.

Let’s dive in by specifying our original equation and the Lagrangian with a generalized kinetic energy term:

$\dot{x}\,=\,J\,\dot{q}\\ \\L\,=\,\frac{1}{2}\,\dot{q}^{T}\,M_{gc}\,\dot{q}+\lambda^T\,(\dot{x}-J\,\dot{q})$

A solution that extremizes the Lagrangian will have zero gradients with respect to both the generalized velocities and the lagrange multipliers:

$0\,=\,\frac{\delta L}{\delta\dot{q}}\,=\,M_{gc}\,\dot{q}\,-\,J^T\,\lambda\\ \\ 0\,=\,\frac{\delta\,L}{\delta\,\lambda}\,=\,\dot{x}-J\,\dot{q}$

In order to resolve the Lagrange multiplier, we have to substitute $\dot{q}$ in $\frac{\delta\,L}{\delta\,\lambda}$. This is because $M_{gc}$ is positive definite and invertible (it is an inertia after all; word to the wise, consider reading this) while $J$ is not.

$M_{gc}\,\dot{q}\,=\,J^T\,\lambda\\ \\ \dot{q}\,=\,M_{gc}^{-1}\,J^T\,\lambda$

Substituting this in our original equation, we have:

$\dot{x}\,=\,J\dot{q}\,=\,J\,M_{gc}^{-1}\,J^T\lambda\\ \\ \lambda=(J\,M_{gc}^{-1}\,J^T)^{-1}\,\dot{x}$

Which finally gives us

$\dot{q}=\,M_{gc}^{-1}\,J^T\,(J\,M_{gc}^{-1}\,J^T)^{-1}\,\dot{x}$

along with

$J^{\#}\,=\,M_{gc}^{-1}\,J^T\,(J\,M_{gc}^{-1}\,J^T)^{-1}$

You may double check that this is indeed the dynamically consistent generalized inverse that corresponds to the acceleration null space [1,2]. Deriving the dynamically consistent generalized inverse using Lagrange multipliers and the dual problem, help us state that it minimizes kinetic energy in the generalized coordinates. Or that this is the inertia regularized inverse. All three interpretations are correct.

References:

1. Samir’s control tutorial for RPP bot. [link].
2. Motion/Force Redundancy of Manipulators, Oussama Khatib, Japan-USA Symposium on Flexible Automation, 1990. [link]