Watched the first lecture of underactuated robotics by Prof Tedrake. It was great. His lecture note/book is available online. And the example code is directly available at colab.

So what is underactuated robotics? Consider a standard manipulator equation with state

where L.H.S. are the force terms, R.H.S. are the “Ma” terms, $M(q)$ is mass/inertia matrix and positive definite, is the control input, and maps the control input to .

We can rearrange the above to

Note that if has full row rank (or simply has full row rank since is positive definite and hence full-rank), then for any desired , we can achieve that by picking as

where is the pseudo-inverse of . We say such robotic system is **fully actuated**.

On the other hand, if does not have full row rank, the above trivial controller will not work. We then have a much more challenging and interesting scenario. And we say the robotic system is underactuated.