Skip to main content

MuJoCo motion planning library.

Project description

mjpl

Build Coverage Status pre-commit.ci status PyPI - Version

MuJoCo motion planning library.

[!Note] This project is under active development. APIs may change, and features are still a work in progress.

Features:

  • Joint-space planning via bi-directional RRT, with support for constraints
  • Cartesian-space planning
  • Interfaces for constraints, inverse kinematics, and trajectory generation

Limitations:

  • This library is designed for manipulator models that are composed of hinge/slide joints, and will not work with models that have ball/free joints.

Installation

pip install mjpl

Development

For local development, clone the repository and install the developer dependencies:

pip install -e ".[dev]"

This project uses Ruff for linting and formatting. Unit tests are written via the unittest framework.

To run the linter, formatter, and tests locally:

# Check for linter errors
ruff check .
# Apply lint fixes
ruff check --fix .

# Check for format errors
ruff format --diff .
# Apply format fixes
ruff format .

# Run unit tests
python3 -m unittest -v

Pre-commit hooks are also available which run the linter, formatter, and unit tests. To trigger the hooks automatically on commit, install the pre-commit hooks:

pre-commit install

To trigger the hooks manually:

pre-commit run --all-files

To bypass installed pre-commit hooks on commit:

git commit --no-verify -m "your message"

Acknowledgements:

Thank you Sebastian Castro for the guidance and support that has been offered throughout the early stages of this project. If you find this library useful or interesting, consider checking out Sebastian's pyroboplan, which offers similar features via Pinocchio!

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

mjpl-0.0.1.tar.gz (13.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mjpl-0.0.1-py3-none-any.whl (26.7 kB view details)

Uploaded Python 3

File details

Details for the file mjpl-0.0.1.tar.gz.

File metadata

  • Download URL: mjpl-0.0.1.tar.gz
  • Upload date:
  • Size: 13.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.7

File hashes

Hashes for mjpl-0.0.1.tar.gz
Algorithm Hash digest
SHA256 ec50b3e3da1dcbe1492f32494b761fd62e6bdcfff1f9820162596a19cc00d082
MD5 e178dfaa55745699caf02e9b3b6d5cd2
BLAKE2b-256 b4bcaeb9cf6028fe8e916d6c6f15a8fc9ed6e7f6edad162b18ad6d761012b122

See more details on using hashes here.

File details

Details for the file mjpl-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: mjpl-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 26.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.7

File hashes

Hashes for mjpl-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 68c97e2220d2f11c55a7c352f3cd4ac046e07855d0e6e48bdbdd6c68065bee18
MD5 fe7db68300f40d4bb0f4d10fbb002dde
BLAKE2b-256 84b56d0a098414bc17ffa553ed3c296f4b49f9a3e0a39f13ef7112b588f20858

See more details on using hashes here.

Supported by

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