protomotions.agents.masked_mimic package

MaskedMimic implementation for versatile motion control.

This package implements the MaskedMimic algorithm which learns to reconstruct expert tracker actions from partial observations. Trains on data from a full-body motion tracker while randomly masking observations.

Key Components:
  • MaskedMimic: Main MaskedMimic agent

  • MaskedMimicModel: Model with optional VAE

  • MaskedMimicAgentConfig: Configuration

Training Process:
  1. Phase 1: Train expert full-body tracker (separate)

  2. Phase 2: Train MaskedMimic to imitate expert with masked observations

Example

>>> from protomotions.agents.masked_mimic.agent import MaskedMimic
>>> config.expert_model_path = "results/expert_tracker/"
>>> agent = MaskedMimic(fabric, env, config)
>>> agent.train()
Reference:

Tessler et al. “MaskedMimic: Unified Physics-Based Character Control Through Masked Motion Inpainting” (2024)

Submodules