https://github.com/ami-iit/amp-rsl-rl
π AMP-RSL-RL: Adversarial Motion Priors for robotic RL (PPO + motion imitation)
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
Repository
π AMP-RSL-RL: Adversarial Motion Priors for robotic RL (PPO + motion imitation)
Basic Info
Statistics
- Stars: 162
- Watchers: 9
- Forks: 12
- Open Issues: 5
- Releases: 12
Topics
Metadata Files
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:
Clone the repository:
bash git clone https://github.com/<your-username>/amp_rsl_rl.git cd amp_rsl_rlInstall 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:
numpyscipytorchrsl-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,), whereNis 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 inxyzwformat (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
- Giulio Romualdi β @GiulioRomualdi
- Giuseppe L'Erario β @Giulero
π License
BSD 3-Clause License Β© 2025 Istituto Italiano di Tecnologia
Owner
- Name: Artificial and Mechanical Intelligence
- Login: ami-iit
- Kind: organization
- Location: Italy
- Website: https://ami.iit.it/
- Repositories: 111
- Profile: https://github.com/ami-iit
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
Top Committers
| Name | 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
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.
- Homepage: https://github.com/ami-iit/amp-rsl-rl
- Documentation: https://amp-rsl-rl.readthedocs.io/
- License: bsd-3-clause
-
Latest release: 0.2.8
published 7 months ago