Skip to main content

Autolife planning module

Project description

Autolife-Planning

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 — Time-optimal trajectory generation (TOTG) 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/H-tr/Autolife-Planning.git
cd Autolife-Planning
pip install -e .

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).
  • 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.2.0-cp313-cp313-manylinux_2_34_x86_64.whl (9.7 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.34+ x86-64

autolife_planning-0.2.0-cp312-cp312-manylinux_2_34_x86_64.whl (9.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ x86-64

autolife_planning-0.2.0-cp311-cp311-manylinux_2_34_x86_64.whl (9.7 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ x86-64

autolife_planning-0.2.0-cp310-cp310-manylinux_2_34_x86_64.whl (9.7 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.34+ x86-64

File details

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

File metadata

File hashes

Hashes for autolife_planning-0.2.0-cp313-cp313-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 2cb5ea0dda2a525d6a60330532ce3d059ab17a8ab363847cc6e541a0a9d98fde
MD5 5217433b33b5d39e6c715a15faa80541
BLAKE2b-256 73660646faf322c62a2d978edb283d4ed0aeb477116b7a4725d1dcbf5b358bbb

See more details on using hashes here.

Provenance

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

Publisher: release.yml on H-tr/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.2.0-cp312-cp312-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for autolife_planning-0.2.0-cp312-cp312-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 aef43d4bd5d614bfbac5c2a03d6c5eec70c6d2aa501b2526b1776c75900fd4fc
MD5 f3f08e155209af01e3bcbc51e64e22ec
BLAKE2b-256 8c03bca390eb15e534f9c0afd621b9785a28006589daa46a442417a9d2f7c729

See more details on using hashes here.

Provenance

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

Publisher: release.yml on H-tr/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.2.0-cp311-cp311-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for autolife_planning-0.2.0-cp311-cp311-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 e3d9cd272502d542f6d93f5c735068e5e0fbcbdad685ed87ab89cc449507e0d4
MD5 aa86fa7fcf0387e614cdddb9c08478a0
BLAKE2b-256 3229525886d795e85d4e3672b25b24710b93c1fec601149f2e2c8095d459995a

See more details on using hashes here.

Provenance

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

Publisher: release.yml on H-tr/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.2.0-cp310-cp310-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for autolife_planning-0.2.0-cp310-cp310-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 250e866c2da53434b5d08edd4784fbad57d3b800178db71bb4293138d946c833
MD5 fd61f2c0c10e16552f0755ca08455e68
BLAKE2b-256 bde34bd293adb403446e9769387f5275717994763c75f7b9166c074eb1500500

See more details on using hashes here.

Provenance

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

Publisher: release.yml on H-tr/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