Currently, we provide three Movement Primitives, including Dynamic Movement Primitives(DMPs), Probablistic Movement Primitives(ProMPs) and Probablistic Dynamic Movement Primitives(ProDMPs). We also provide two Movement Primitives Interfaces(Dynamic based and Probablistic based), which can be used to define the custom Movement Primitives. You can register your custom MPs to the MPFactory and create the MP instance given configuration.
The main features of the MP Factory and MP Interfaces are as follows:
Classes | Main Functions | Description |
---|---|---|
MPFactory | MPFactory.init_mp |
Create an MP instance given configuration. |
MPInterface | Abstract Basic Class for Deterministic Movement Primitives | |
MPInterface.update_inputs |
Update MPs parameters | |
MPInterface.get_trajs |
Get movement primitives trajectories given flag | |
MPInterface.learn_mp_params_from_trajs |
Abstractmethod for learning parameters from trajectories | |
ProbabilisticMPInterface | Abstract Basic Class for Probablistic Movement Primitives | |
MPInterface.update_inputs |
Update MPs parameters | |
MPInterface.get_trajs |
Get movement primitives trajectories given flag, including trajectories mean and distribution | |
MPInterface.sample_trajectories |
Sample trajectories from MPs | |
MPInterface.learn_mp_params_from_trajs |
Abstractmethod for learning parameters from trajectories |
We provide a DMPs demo to show how to create a DMPs instance and visualize the corresponding result.
To run the demo, you can run the following code:
from mp_pytorch import demo
demo.test_dmp()
We provide a ProMPs demo to show how to create a ProMPs instance and visualize the corresponding result.
To run the demo, you can run the following code:
from mp_pytorch import demo
demo.test_promp()
demo.test_zero_padding_promp()
Probablistic Dynamic Movement Primitives(ProDMPs) is a recently presented Method, which combing the Dynamic and Probablistic properties of Movement Primitives from a unified perspective.
We provide a ProDMPs demo to show how to create a ProDMPs instance and visualize the corresponding result. To run the demo, you can run the following code:
from mp_pytorch import demo
demo.test_prodmp()