Giter VIP home page Giter VIP logo

chirikjianlab / primp-matlab Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 107 KB

[T-RO] MATLAB implementation of PRobabilistically-Informed Motion Primitives (PRIMP), a learning-from-demonstration method on Lie group.

Home Page: https://chirikjianlab.github.io/primp-page/

License: BSD 3-Clause "New" or "Revised" License

MATLAB 97.09% C 2.31% Mathematica 0.05% Objective-C 0.55%
learning-from-demonstration lie-groups service-robot

primp-matlab's Introduction

PRobabilistically-Informed Motion Primitives (PRIMP)

MATLAB implementation of PRobabilistically-Informed Motion Primitives, a learning-from-demonstration method on Lie group. It is published in IEEE Transactions on Robotics (T-RO).

Authors

Sipu Ruan, Weixiao Liu, Xiaoli Wang, Xin Meng and Gregory S. Chirikjian

Dependency

Running instructions

Data preparation for LfD methods

All test files are located in /test folder. To run scripts for LfD methods:

  • Download the data from Google Drive. All the demonstrated datasets are locataed in /demonstrations folder.
  • Generate /data folder that stores all demonstration data
  • Copy all the demonstration sets into the /data folder (Only put folders inside /demonstrations into /data)
  • (Optional) To generate data trials for real-world experiments, please also download datasets from /experiments folder (Put the whole folder).
  • Run scripts in /test folder

After data preparation, the structure of /data folder should look like

.
└───data
│   └───panda_arm
|   |   └───real
|   |   |   └───trajectory
|   |   |   |   └───...
|   |   └───simulation
|   |   |   └───...
│   └───lasa_handwriting
|   |   |   └───pose_data
|   |   |   |   └───...
│   └───experiments
|   |   └───...

Source code for Orientation-KMP method

To run Orientation-KMP method,

addpath path-prefix/pbdlib-matlab/demos/m_fcts/
addpath path-prefix/robInfLib-matlab/fcts/

Mex DTW C-code

DTW is required to evaluate method performance. The source C code is /src/util/dtw_c.c, which needs to be generated as a .mex file.

  • Go to /src/util
  • Mex the C code for DTW
mex dtw_c.c

Demonstration scripts

Dataset

PRIMP

Orientation-KMP

Benchmark scripts

Ablation studies

Real-world experiments

Citation

S. Ruan, W. Liu, X. Wang, X. Meng and G. S. Chirikjian, "PRIMP: PRobabilistically-Informed Motion Primitives for Efficient Affordance Learning from Demonstration," in IEEE Transactions on Robotics, doi: 10.1109/TRO.2024.3390052.

BibTex

@ARTICLE{10502164,
  author={Ruan, Sipu and Liu, Weixiao and Wang, Xiaoli and Meng, Xin and Chirikjian, Gregory S.},
  journal={IEEE Transactions on Robotics}, 
  title={PRIMP: PRobabilistically-Informed Motion Primitives for Efficient Affordance Learning from Demonstration}, 
  year={2024},
  volume={},
  number={},
  pages={1-20},
  keywords={Trajectory;Robots;Probabilistic logic;Planning;Affordances;Task analysis;Manifolds;Learning from Demonstration;Probability and Statistical Methods;Motion and Path Planning;Service Robots},
  doi={10.1109/TRO.2024.3390052}}

primp-matlab's People

Contributors

ruansp avatar

Watchers

 avatar

primp-matlab's Issues

Better baselines

Add better baselines for benchmarks

  • Learn relative trajectory distributions
  • Tune the parameters: number of basis and width of bases

Ablation studies

Conduct ablation studies for submodules:

  • GORA
  • Workspace density

Quantitative comparisons

Conduct comparisons with quantitative results:

  • SE(3) v.s. PCG(3)
  • Extrapolation
  • Single demonstration
  • Equivariance on change-of-view

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.