https://github.com/ami-iit/amp-rsl-rl

πŸ” AMP-RSL-RL: Adversarial Motion Priors for robotic RL (PPO + motion imitation)

https://github.com/ami-iit/amp-rsl-rl

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • β—‹
    CITATION.cff file
  • βœ“
    codemeta.json file
    Found codemeta.json file
  • βœ“
    .zenodo.json file
    Found .zenodo.json file
  • β—‹
    DOI references
  • β—‹
    Academic publication links
  • β—‹
    Committers with academic emails
  • β—‹
    Institutional organization owner
  • β—‹
    JOSS paper metadata
  • β—‹
    Scientific vocabulary similarity
    Low similarity (12.3%) to scientific vocabulary

Keywords

amp isaaclab pytorch rl rls-rl
Last synced: 5 months ago · JSON representation

Repository

πŸ” AMP-RSL-RL: Adversarial Motion Priors for robotic RL (PPO + motion imitation)

Basic Info
  • Host: GitHub
  • Owner: ami-iit
  • License: bsd-3-clause
  • Language: Python
  • Default Branch: main
  • Homepage:
  • Size: 103 KB
Statistics
  • Stars: 162
  • Watchers: 9
  • Forks: 12
  • Open Issues: 5
  • Releases: 12
Topics
amp isaaclab pytorch rl rls-rl
Created 11 months ago · Last pushed 6 months ago
Metadata Files
Readme License

README.md

AMP-RSL-RL

AMP-RSL-RL is a reinforcement learning library that extends the Proximal Policy Optimization (PPO) implementation of RSL-RL to incorporate Adversarial Motion Priors (AMP). This framework enables humanoid agents to learn motor skills from motion capture data using adversarial imitation learning techniques.


πŸ“¦ Installation

The repository is available on PyPI under the package name amp-rl-rsl. You can install it directly using pip:

bash pip install amp-rsl-rl

Alternatively, if you prefer to clone the repository and install it locally, follow these steps:

  1. Clone the repository: bash git clone https://github.com/<your-username>/amp_rsl_rl.git cd amp_rsl_rl

  2. Install the package: bash pip install .

For editable/development mode:

bash pip install -e .

If you want to run the examples, please install with:

bash pip install .[examples]

The required dependencies include:

  • numpy
  • scipy
  • torch
  • rsl-rl-lib

These will be automatically installed via pip.


πŸ“‚ Project Structure

amp_rsl_rl/ β”‚ β”œβ”€β”€ algorithms/ # AMP and PPO implementations β”œβ”€β”€ networks/ # Neural networks for policy and discriminator β”œβ”€β”€ runners/ # Training and evaluation routines β”œβ”€β”€ storage/ # Replay buffer for experience collection β”œβ”€β”€ utils/ # Dataset loaders and motion tools


πŸ“ Dataset Structure

The AMP-RSL-RL framework expects motion capture datasets in .npy format. Each .npy file must contain a Python dictionary with the following keys:

  • joints_list: List[str]
    A list of joint names. These should correspond to the joint order expected by the agent.

  • joint_positions: List[np.ndarray]
    A list where each element is a NumPy array representing the joint positions at a frame. All arrays should have the same shape (N,), where N is the number of joints.

  • root_position: List[np.ndarray]
    A list of 3D vectors representing the position of the base (root) of the agent in world coordinates for each frame.

  • root_quaternion: List[np.ndarray]
    A list of unit quaternions in xyzw format (SciPy convention), representing the base orientation of the agent for each frame.

  • fps: float
    The number of frames per second in the original dataset. This is used to resample the data to match the simulator's timestep.

Example

Here’s an example of how the structure might look when loaded in Python:

python { "joints_list": ["hip", "knee", "ankle"], "joint_positions": [np.array([0.1, -0.2, 0.3]), np.array([0.11, -0.21, 0.31]), ...], "root_position": [np.array([0.0, 0.0, 1.0]), np.array([0.01, 0.0, 1.0]), ...], "root_quaternion": [np.array([0.0, 0.0, 0.0, 1.0]), np.array([0.0, 0.0, 0.1, 0.99]), ...], "fps": 120.0 }

All lists must have the same number of entries (i.e. one per frame). The dataset should represent smooth motion captured over time.


πŸ“š Supported Dataset

For a ready-to-use motion capture dataset, you can use the AMP Dataset on Hugging Face. This dataset is curated to work seamlessly with the AMP-RSL-RL framework.


πŸ§‘β€πŸ’» Authors


πŸ“„ License

BSD 3-Clause License Β© 2025 Istituto Italiano di Tecnologia

Owner

  • Name: Artificial and Mechanical Intelligence
  • Login: ami-iit
  • Kind: organization
  • Location: Italy

GitHub Events

Total
  • Create event: 20
  • Issues event: 5
  • Release event: 7
  • Watch event: 121
  • Delete event: 13
  • Issue comment event: 13
  • Push event: 36
  • Public event: 1
  • Pull request review comment event: 22
  • Pull request review event: 49
  • Pull request event: 28
  • Fork event: 5
Last Year
  • Create event: 20
  • Issues event: 5
  • Release event: 7
  • Watch event: 121
  • Delete event: 13
  • Issue comment event: 13
  • Push event: 36
  • Public event: 1
  • Pull request review comment event: 22
  • Pull request review event: 49
  • Pull request event: 28
  • Fork event: 5

Committers

Last synced: 9 months ago

All Time
  • Total Commits: 25
  • Total Committers: 2
  • Avg Commits per committer: 12.5
  • Development Distribution Score (DDS): 0.08
Past Year
  • Commits: 25
  • Committers: 2
  • Avg Commits per committer: 12.5
  • Development Distribution Score (DDS): 0.08
Top Committers
Name Email Commits
Giulio Romualdi g****i@g****m 23
Filippo Luca Ferretti 1****i 2

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 5
  • Total pull requests: 39
  • Average time to close issues: about 3 hours
  • Average time to close pull requests: 3 days
  • Total issue authors: 3
  • Total pull request authors: 4
  • Average comments per issue: 0.6
  • Average comments per pull request: 0.44
  • Merged pull requests: 28
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 5
  • Pull requests: 39
  • Average time to close issues: about 3 hours
  • Average time to close pull requests: 3 days
  • Issue authors: 3
  • Pull request authors: 4
  • Average comments per issue: 0.6
  • Average comments per pull request: 0.44
  • Merged pull requests: 28
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • GiulioRomualdi (3)
  • traversaro (1)
  • KaydenKnapik (1)
Pull Request Authors
  • GiulioRomualdi (26)
  • Giulero (7)
  • flferretti (4)
  • KingBright (2)
Top Labels
Issue Labels
bug (1)
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 138 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 10
  • Total maintainers: 1
pypi.org: amp-rsl-rl

Adversarial Motion Prior (AMP) reinforcement learning extension for PPO based on RSL-RL.

  • Versions: 10
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 138 Last month
Rankings
Dependent packages count: 9.4%
Average: 31.1%
Dependent repos count: 52.8%
Maintainers (1)
Last synced: 6 months ago