Inverse Geometric Locomotion

Quentin Becker*, EPFL, Switzerland

Oliver Gross*, University of California, San Diego, USA and EPFL, Switzerland

Mark Pauly, EPFL, Switzerland


ACM Transactions on Graphics (SIGGRAPH), 2025

(* denotes equal contribution)


Our inverse geometric locomotion optimization enables the discovery of, e.g., optimal snake undulation patterns for efficient slithering locomotion from a starting position (red flag), passing through landmarks (yellow flags), and reaching a prescribed target position (checkered flag), all while avoiding obstacles.

Abstract

Numerous tasks in robotics and character animation involve solving combinations of inverse kinematics and motion planning problems that require the precise design of pose sequences to achieve desired motion objectives. Accounting for the complex interplay between body deformations and resulting motion, especially through interactions with the environment, poses significant challenges for the design of such pose sequences. We propose a computational framework to address these challenges in scenarios where the motion of a deformable body is entirely determined by dynamic changes of its shape. Complementing recent methods on the forward problem—mapping shape sequences to global motion trajectories based on a geometric formulation of locomotion—we address the inverse problem of optimizing shape sequences to achieve user-defined motion objectives. We demonstrate the effectiveness of our method through a diverse set of examples, producing realistic shape sequences that result in desired motion trajectories.

Supplementary Video

Cite Us

 @article{10.1145/3731187,
    author = "Becker, Quentin and Gross, Oliver and Pauly, Mark",
    title = "Inverse Geometric Locomotion",
    year = "2025",
    issue_date = "August 2025",
    publisher = "Association for Computing Machinery",
    address = "New York, NY, USA",
    volume = "44",
    number = "4",
    url = "https://doi.org/10.1145/3731187",
    doi = "10.1145/3731187",
    journal = "ACM Trans. Graph.",
    month = "August",
    numpages = "17",
    keywords = "inverse design, inverse kinematics, geometric locomotion, shape change, spacetime optimization, gait, character dynamics, animation"
}