Skip to main content

A pythonic motion planning library

Project description

Pythonic Motion Planning (pymp)

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

Dependencies

This library (pymp) depends on pinocchio to handle URDF and robot kinematics, hpp-fcl to check collision, toppra to do time parameterization.

Install pymp

From pip:

pip install motion-planning

From source:

git clone https://github.com/Jiayuan-Gu/pymp.git
pip install -e .

From Github directly:

pip install --upgrade git+https://github.com/Jiayuan-Gu/pymp.git

Usage

See example.py for basic usage. Note that pymp depends on SRDF associated with URDF to remove self-collision.

Logging

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

# Set the logging level to DEBUG for pymp
export PYMP_LOG=DEBUG

Base pose

pymp supports 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)

from pymp import Planner

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

Troubleshooting

  • ImportError: libboost_python38.so: try to force reinstall pinocchio, e.g., pip install pin --no-cache-dir --force-reinstall --upgrade.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

motion_planning-0.1.5.tar.gz (17.3 kB view hashes)

Uploaded Source

Built Distribution

motion_planning-0.1.5-py3-none-any.whl (20.9 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page