Skip to main content

Autolife planning module

Project description

Autolife-Planning

PyPI Python Documentation Build Docs CI

Documentation | API Reference

rls_pick_place demo

↑ 5× sped-up preview — click for full-quality MP4

A planning library for the Autolife robot. It provides inverse kinematics (TRAC-IK and Pink), motion planning (VAMP), and collision-aware planning through a unified Python interface.

Features

  • Inverse Kinematics — TRAC-IK (unconstrained) and Pink (QP-based constrained) solvers with CoM stability, camera stabilization, and self-collision avoidance
  • Motion Planning — VAMP-based planner with collision checking, path validation, and subgroup planning
  • Time Parameterization — TOPP-RA by default, with legacy TOTG available, converts planned paths into executable trajectories with velocity/acceleration limits
  • Collision Geometry — Spherized URDF representations for efficient collision detection, pointcloud obstacle support

Quick Start

Platform: Linux, Python 3.11+ (see pixi.toml).

For inference — running the planners and IK solvers — just pip install:

git clone --recursive https://github.com/AdaCompNUS/Autolife-Planning.git
cd Autolife-Planning
pip install -e .

If you are using Python 3.8, install the robotics Pink package from conda-forge first:

conda install -n autolife -c conda-forge pink --solver=libmamba -y

For development — rebuilding URDFs, regenerating FK headers, running the C++ toolchain end-to-end — use the setup script, which also installs pixi and the conda-forge deps (pinocchio, orocos-kdl, eigen, boost, ...):

bash scripts/setup.sh

See the Getting Started guide for detailed installation options.

Usage

# Inverse kinematics
pixi run python examples/ik/basic.py
pixi run -e dev python examples/ik/basic_vis.py           # PyBullet visualization
pixi run -e dev python examples/ik/constrained_vis.py     # Pink QP with CoM stability

# Motion planning
pixi run python examples/planning/motion.py
pixi run python examples/planning/subgroup.py
pixi run -e dev python examples/planning/constrained/plane.py
pixi run -e dev python examples/planning/cost/orientation_lock.py

# Time parameterization
pixi run python examples/planning/time_parameterization.py

# End-to-end pick-and-place demo (the video above)
pixi run -e dev python examples/demos/rls_pick_place.py

# Tests
pixi run -e dev test

Project Structure

autolife_planning/     # Core Python package
  kinematics/          # TRAC-IK + Pink IK, FK, collision checking
  planning/            # VAMP motion planning, cost + constrained planners
  envs/                # Simulation environments (PyBullet)
  types/               # Shared dataclasses (Pose, JointState, ...)
  resources/           # Packaged URDFs and asset loaders
third_party/
  cricket/             # FK code generator
  foam/                # Collision geometry processing
  vamp/                # Motion planning (installed as editable PyPI dep)
examples/
  ik/                  # TRAC-IK + Pink examples
  planning/            # Motion, subgroup, cost, constrained planning demos
  demos/               # End-to-end scenarios (rls_pick_place, ...)
tests/                 # Pytest suite (CI)
scripts/
  render_videos/       # Docs/demo video pipeline
  ...                  # Setup, build, spherize, FK codegen
resources/             # Robot URDF and mesh files
assets/                # Scene pointclouds and env meshes
docs/                  # MkDocs site sources (GitHub Pages)

Acknowledgements

This project builds on several outstanding open-source libraries:

  • VAMP — SIMD-accelerated motion planning and collision checking (Kavrakilab, Rice University).
  • OMPL — The Open Motion Planning Library (Kavrakilab, Rice University).
  • TOPP-RA — Reachability-analysis-based time-optimal path parameterization, used as the default timing backend.
  • MoveIt 2 — The vendored TOTG (Time-Optimal Trajectory Generation) implementation in ext/time_parameterization/ is adapted from MoveIt 2's trajectory_processing module, originally by Tobias Kunz and Mike Stilman (Georgia Tech). See ext/time_parameterization/LICENSE.TOTG for the full BSD license.
  • TRAC-IK — Inverse kinematics solver (TRACLabs).

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

autolife_planning-0.3.4-cp313-cp313-manylinux_2_34_x86_64.whl (10.5 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.34+ x86-64

autolife_planning-0.3.4-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (10.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

autolife_planning-0.3.4-cp312-cp312-manylinux_2_34_x86_64.whl (10.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ x86-64

autolife_planning-0.3.4-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (10.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

autolife_planning-0.3.4-cp311-cp311-manylinux_2_34_x86_64.whl (10.5 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ x86-64

autolife_planning-0.3.4-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (10.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

autolife_planning-0.3.4-cp310-cp310-manylinux_2_34_x86_64.whl (10.5 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.34+ x86-64

autolife_planning-0.3.4-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (10.4 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

autolife_planning-0.3.4-cp39-cp39-manylinux_2_34_x86_64.whl (10.5 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.34+ x86-64

autolife_planning-0.3.4-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (10.4 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

autolife_planning-0.3.4-cp38-cp38-manylinux_2_34_x86_64.whl (10.5 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.34+ x86-64

autolife_planning-0.3.4-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (10.4 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

File details

Details for the file autolife_planning-0.3.4-cp313-cp313-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for autolife_planning-0.3.4-cp313-cp313-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 ae294e798d320a764c5d548684201d399c123a8cdfa3c3555ce9b4e9c38a00b0
MD5 c88015222a762aa9b488a806567b3dff
BLAKE2b-256 71c4d6d274174878a855460435356c6e2fc117e938790898ef9740a24b97bc2b

See more details on using hashes here.

Provenance

The following attestation bundles were made for autolife_planning-0.3.4-cp313-cp313-manylinux_2_34_x86_64.whl:

Publisher: release.yml on AdaCompNUS/Autolife-Planning

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file autolife_planning-0.3.4-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for autolife_planning-0.3.4-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 7f5c4af3ee993098b8f9cdad323c5ebd4131e6a5ce9dfc6b60c79164d59d0531
MD5 b78c1ae31bec86baa6e381cdc04696e0
BLAKE2b-256 651637c4392a3c08a4d010de10fac04118602d4cfa4a7cf64f8f4bbc71e36cb8

See more details on using hashes here.

Provenance

The following attestation bundles were made for autolife_planning-0.3.4-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on AdaCompNUS/Autolife-Planning

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file autolife_planning-0.3.4-cp312-cp312-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for autolife_planning-0.3.4-cp312-cp312-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 8469121f778716fa69285f847a3d58ebe1fd8cc93941c12343f4e01ec47294a2
MD5 2a37c5ccb10c95e1094fb3666cae2f70
BLAKE2b-256 afb2d86e071824d3aa831856f4893d4f99d56dc5c47425b2f858ae8a766b6f2b

See more details on using hashes here.

Provenance

The following attestation bundles were made for autolife_planning-0.3.4-cp312-cp312-manylinux_2_34_x86_64.whl:

Publisher: release.yml on AdaCompNUS/Autolife-Planning

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file autolife_planning-0.3.4-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for autolife_planning-0.3.4-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 752824b0c10d30a580ce00e3297943fdb8a1a7c828d5361652bfe08886bf9b7f
MD5 ac961567d6c8de0252df824b9f025a18
BLAKE2b-256 22c4ece4f30355e2c8d72e2e1a4c3825dc68509cb1796bcdc15807dd33c2620a

See more details on using hashes here.

Provenance

The following attestation bundles were made for autolife_planning-0.3.4-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on AdaCompNUS/Autolife-Planning

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file autolife_planning-0.3.4-cp311-cp311-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for autolife_planning-0.3.4-cp311-cp311-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 443b5541c99d741081013b0f86fa4807aa580bfafb127f4b15e9bc9cb42d9c0f
MD5 055caf79d911fd242e6c41c842faa51e
BLAKE2b-256 5c26553e5b242d6d5f753604905ec1e959482aaadbea933f8430358766d0c89d

See more details on using hashes here.

Provenance

The following attestation bundles were made for autolife_planning-0.3.4-cp311-cp311-manylinux_2_34_x86_64.whl:

Publisher: release.yml on AdaCompNUS/Autolife-Planning

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file autolife_planning-0.3.4-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for autolife_planning-0.3.4-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0ff8b9a10f22c26b1457500bcd6ef81889359b24582828b0e4c789d911d74461
MD5 60662ab80994dccafc89995f3e83b693
BLAKE2b-256 de87a58b0fb42c50ac702c5521547575bcb599b517377d11c19f32ed96e9cd21

See more details on using hashes here.

Provenance

The following attestation bundles were made for autolife_planning-0.3.4-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on AdaCompNUS/Autolife-Planning

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file autolife_planning-0.3.4-cp310-cp310-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for autolife_planning-0.3.4-cp310-cp310-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 b4f38a5ae76fcba3cd301279b0b94d8098109dc0857f1af3e6db7d5e8c446102
MD5 e5cb57f03b07ca218270278cc9d2cd7d
BLAKE2b-256 a27438730882661c31c32c8d44996d829835019c70f46d4f7518dba2e83bdb1b

See more details on using hashes here.

Provenance

The following attestation bundles were made for autolife_planning-0.3.4-cp310-cp310-manylinux_2_34_x86_64.whl:

Publisher: release.yml on AdaCompNUS/Autolife-Planning

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file autolife_planning-0.3.4-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for autolife_planning-0.3.4-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 89cafda11a6732f1fc9817fa068b1089d99da600bc01596af9f76267ae808315
MD5 ef2e2100656eee2bd5ba83b255853169
BLAKE2b-256 e4e72a569374593fffad01335b8437f6df60e2318c7cf387bb2f53a396974f34

See more details on using hashes here.

Provenance

The following attestation bundles were made for autolife_planning-0.3.4-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on AdaCompNUS/Autolife-Planning

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file autolife_planning-0.3.4-cp39-cp39-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for autolife_planning-0.3.4-cp39-cp39-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 0a6e5c4f03f7a71cc3ccdef36a208afa1d7d514e5198a995293231c9355dbdbf
MD5 1c898cbdbca3c1d5d4249efe64362662
BLAKE2b-256 2a109450e2196732fa2fd9be01b12b1ca2c7176e6127c264ceee29cce2b3fa6c

See more details on using hashes here.

Provenance

The following attestation bundles were made for autolife_planning-0.3.4-cp39-cp39-manylinux_2_34_x86_64.whl:

Publisher: release.yml on AdaCompNUS/Autolife-Planning

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file autolife_planning-0.3.4-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for autolife_planning-0.3.4-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 89f43cb25638d690ebbde8bb5794fd2e8c415ca049fe618d2ad0cc27131cca0c
MD5 25f11578346656ba35ce9fb7655e1823
BLAKE2b-256 41d6c872413f5f960257c2cc196e1c7ee96386b983c91b721c470688b1b2608d

See more details on using hashes here.

Provenance

The following attestation bundles were made for autolife_planning-0.3.4-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on AdaCompNUS/Autolife-Planning

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file autolife_planning-0.3.4-cp38-cp38-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for autolife_planning-0.3.4-cp38-cp38-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 f9d14b9d1325f900fdf951999625d3d5bbebd2ccb865b5b87ddcd987c5d915c0
MD5 98abcdcac025d2a50c45c542677e385e
BLAKE2b-256 1e0715bd140346fb5b6b67bbd76838d4d1ef9aede9276a98e009c42fd5610aef

See more details on using hashes here.

Provenance

The following attestation bundles were made for autolife_planning-0.3.4-cp38-cp38-manylinux_2_34_x86_64.whl:

Publisher: release.yml on AdaCompNUS/Autolife-Planning

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file autolife_planning-0.3.4-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for autolife_planning-0.3.4-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1a2b91b90609d33a088fb326ddfc9f0a1735773c8bd81501db86c84135217736
MD5 2875c7427606993e768fbc74fcdbd69d
BLAKE2b-256 90a717867253d3a6c10162bd8de841dd1e24fb23997c7fbea5a4849bb0288216

See more details on using hashes here.

Provenance

The following attestation bundles were made for autolife_planning-0.3.4-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on AdaCompNUS/Autolife-Planning

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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