Mordatch, I., de Lasa, M., & Hertzmann, A. (2010). Robust physics-based locomotion using low-dimensional planning. ACM Transactions On Graphics, 29(4). doi:10.1145/1778765.1778808

Summary

How does an agent produce realistic-looking motion? Mordatch et al. propose a way to produce motion for 3D characters by optimizing a low-dimensional physical model. This is in contrast to previous approaches which either were highly specific to the type of motion (and therefore brittle), and/or relied on recorded demonstrated trajectories. This approach seems to work pretty well and can produce multiple types of motion (walking, running, standing, etc.)

Methods

n/a

Algorithm

The general approach that they take is:

  1. Map the current state to a low-level physical model (e.g. an inverted pendulum)
  2. Compute a “preview optimization” of the optimal plan for the low-level model
  3. Convert the optimal plan to the full-body controller
  4. The full-body controller produces torques which animate the character

The “preview model” that they use is based on the Spring-Loaded Inverted Pendulum (SLIP) and divides the plan into 6 phases: double stance, left single-stance, flight, double stance, right single-stance, and flight. By omitting certain phases, different behaviors emerge (e.g. omitting flight leads to walking).

The optimization is then done with respect to a “set of user-specified energy terms”. These take the form of various parameters that the user can specify, such as step duration, step length, COM height, etc.

Takeaways

It is really cool to see a low-level physics model work so well to produce motion. However, it’s important to note that this is still fairly specific to locomotion for a humanoid (biped) character – the inverted pendulum model, for example, probably wouldn’t work for controlling a flying character. The authors have actually addressed this in a recent NIPS paper, in which they use a neural network to learn the appropriate dynamics for a range of characters:

http://www.eecs.berkeley.edu/~igor.mordatch/policy/index.html

It makes sense to me that motion planning should involve the use of a physical model of some sort. There’s evidence for the cerebellum using physical knowledge for motion planning in the brain – this is another one of my quals subtopics that I haven’t quite gotten to yet, but perhaps I will read those papers next!