motion-planning

A pythonic motion planning library

https://github.com/jiayuan-gu/motion-planning

Science Score: 44.0%

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

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.1%) to scientific vocabulary

Keywords

motion-planning robotics
Last synced: 10 months ago · JSON representation ·

Repository

A pythonic motion planning library

Basic Info
  • Host: GitHub
  • Owner: Jiayuan-Gu
  • License: mit
  • Language: Jupyter Notebook
  • Default Branch: main
  • Homepage:
  • Size: 4.84 MB
Statistics
  • Stars: 41
  • Watchers: 4
  • Forks: 7
  • Open Issues: 2
  • Releases: 3
Topics
motion-planning robotics
Created about 4 years ago · Last pushed almost 2 years ago
Metadata Files
Readme License Citation

README.md

Pythonic Motion Planning

PyPI version Open In Colab

Motion planning is a computational problem to find a sequence of valid configurations that moves the object from the source to destination.

This library is designed for robotic applications, especially sampling-based algorithms for high-dimension configuration spaces(e.g., robot arm).

  • pythonic: easy to debug, customize and extend
  • standalone collision checker (hpp-fcl): without relying on any physical simulator (e.g., mujoco, pybullet, sapien) to check collision
  • out-of-box: common motion planning algorithms (e.g., RRT-Connect) are implemented for robotic manipulation

Installation

This library has the following dependencies:

From pip:

bash pip install motion-planning

From source:

bash git clone https://github.com/Jiayuan-Gu/motion-planning.git pip install -e .

From Github directly:

bash pip install --upgrade git+https://github.com/Jiayuan-Gu/motion-planning.git

Usage

See example.py for basic usage. Note that the SRDF associated with the URDF is needed to remove self-collision.

Logging

The logging level can be specified by the environment variable PYMP_LOG.

```bash

Set the logging level to DEBUG for pymp

export PYMP_LOG=DEBUG ```

Base pose

We support specifying the pose of the base link during the initialization of the planner. We support many formats of pose (e.g., [x, y, z] for position, [w, i, j, k] for quaternion, [x, y, z, w, i, j, k] for SE(3), or a 4x4 rigid transformation matrix)

```python from pymp import Planner

planner = Planner( ... base_pose=[0, 0, 0], ) ```

Troubleshooting

ImportError: libboost_python38.so or undefined symbol

Try to force reinstall pinocchio: pip install pin --no-cache-dir --force-reinstall --upgrade.

Owner

  • Name: Jiayuan Gu
  • Login: Jiayuan-Gu
  • Kind: user
  • Location: United States
  • Company: University of California, San Diego

Ph.D. student at UCSD. Major in Computer Science.

Citation (CITATION.cff)

cff-version: 1.2.0
message: Thanks for using pymp. If you use this software, please cite it as below.
title: Pythonic Motion Planning
version: 0.1.4
authors:
  - family-names: "Gu"
    given-names: "Jiayuan"
    orcid: "https://orcid.org/0000-0002-3207-7921"
  - family-names: "Liu"
    given-names: "Xiqiang"
date-released: "2022-12-05"
url: "https://github.com/Jiayuan-Gu/pymp"

GitHub Events

Total
  • Issues event: 2
  • Watch event: 10
  • Issue comment event: 1
Last Year
  • Issues event: 2
  • Watch event: 10
  • Issue comment event: 1

Dependencies

.github/workflows/python-publish.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
  • pypa/gh-action-pypi-publish 27b31702a0e7fc50959f5ad993c78deac1bdfc29 composite
setup.py pypi
  • beautifulsoup4 *
  • lxml *
  • numpy *
  • pin >=2.6.13
  • toppra >=0.4.1
  • trimesh *
pyproject.toml pypi