PARC: Physics-based Augmentation with Reinforcement Learning for Character Controllers
ACM SIGGRAPH 2025
Michael Xu (1)Yi Shi (1)KangKang Yin (1)Xue Bin Peng (1, 2)
(1) Simon Fraser University(2) NVIDIA
Abstract
Humans excel in navigating diverse, complex environments with agile motor
skills, exemplified by parkour practitioners performing dynamic maneuvers,
such as climbing up walls and jumping across gaps. Reproducing these agile
movements with simulated characters remains challenging, in part due to
the scarcity of motion capture data for agile terrain traversal behaviors
and the high cost of acquiring such data. In this work, we introduce PARC
(Physics-based Augmentation with Reinforcement Learning for Character
Controllers), a framework that leverages machine learning and physicsbased
simulation to iteratively augment motion datasets and expand the
capabilities of terrain traversal controllers. PARC begins by training a motion
generator on a small dataset consisting of core terrain traversal skills. The
motion generator is then used to produce synthetic data for traversing new
terrains. However, these generated motions often exhibit artifacts, such as
incorrect contacts or discontinuities. To correct these artifacts, we train a
physics-based tracking controller to imitate the motions in simulation. The
corrected motions are then added to the dataset, which is used to continue
training the motion generator in the next iteration. PARC’s iterative process
jointly expands the capabilities of the motion generator and tracker, creating
agile and versatile models for interacting with complex environments.
PARC provides an effective approach to develop controllers for agile terrain
traversal, which bridges the gap between the scarcity of motion data and
the need for versatile character controllers.
@inproceedings{
xu2025parc,
author = {Xu, Michael and Shi, Yi and Yin, KangKang and Peng, Xue Bin},
title = {PARC: Physics-based Augmentation with Reinforcement Learning for Character Controllers},
year = {2025},
booktitle = {SIGGRAPH 2025 Conference Papers (SIGGRAPH '25 Conference Papers)}
}