vamp: Accelerate Robot Motion Planning with SIMD

vamp: Accelerate Robot Motion Planning with SIMD

Summary

VAMP is a C++ motion-planning library that uses CPU SIMD instructions to speed up collision checking and forward kinematics. It offers several sampling-based planners and Python bindings for robotics research and applications.

At a glance

Language
C++
License
Apache-2.0
Stars
485
Forks
93
Added to OSRepos
June 12, 2026
Last analyzed
October 3, 2026
View on GitHub

Topics

Click on any tag to explore related repositories

Use at your own risk

OSRepos shares public repositories for knowledge and discovery only. Any installation, execution, configuration, or use of code from these repositories is the user's own responsibility. Always review the repository, source code, dependencies, licenses, and security implications before running or installing anything. OSRepos is not responsible for issues, damages, or losses resulting from third-party repositories.

Overview

VAMP is a C++ library for sampling-based robot motion planning. It applies CPU SIMD vector instructions to accelerate forward kinematics and collision checking, helping planners search robot configuration spaces with lower computational overhead.

It is aimed at robotics researchers and developers who need fast planning for supported robot models or want to build on its planning and collision-checking components. The project includes Python bindings as well as C++ and WebAssembly build paths.

Key Features

  • SIMD implementations for x86 AVX2 and ARM NEON, with a WebAssembly build using 128-bit SIMD.
  • RRT-Connect, PRM, FCIT*, and AORRTC planners, including support for planning to multiple goals.
  • Collision checking for supported robot models against primitive obstacles and pointclouds using CAPTs.
  • Robot forward kinematics and collision validation, with models for the Panda, UR5, Fetch, and Baxter, among others.
  • Python bindings and a C++ library interface.
  • Path simplification routines including shortcutting, B-spline smoothing, and randomized perturbation.
  • Tools for custom robot support, based on generated collision-checking code and spherical robot geometry.

Use Cases

  • Robotics researchers benchmarking sampling-based planners on robot motion-planning problems.
  • Developers building planning pipelines for supported robot models who need fast collision checking and forward kinematics.
  • Teams planning around pointcloud obstacles and seeking the included CAPT data structure for collision queries.
  • Researchers comparing RRT-Connect, PRM, and asymptotically optimal planning approaches in a shared library.

Project Facts

  • Language: C++
  • License: Apache-2.0
  • Stars: 485
  • Forks: 93
  • Topics: motion-planning, robotics, robotics-library, simd
  • Archived: false

Getting Started

Install the Python package from PyPI:

pip install vamp-planner

For system requirements, C++ builds, examples, and custom robot setup, see the README.

Considerations

  • Performance depends on compatible SIMD support and build settings. The README lists x86 AVX2 and ARM NEON support, and defaults to building for the machine's native architecture.
  • Source builds require CMake 3.16 or later, a supported C++ compiler, Python development headers for bindings, and Eigen 3.4 or later.
  • The bundled robot models are a finite set. Adding a custom robot requires generated code and a spherical approximation of its collision geometry, which may need tuning.
  • The README describes mesh collision checking as available, while its environment-representation overview emphasizes primitive models and pointclouds. Check the current API and examples for the specific collision geometry you need.
  • The project is research-oriented and implements algorithms described in academic papers. Assess planner behavior and suitability for your own application before relying on it in production.

Source repository

Open the original repository on GitHub.

17 counted GitHub visits

View on GitHub

Related repositories

Similar repositories that may be relevant next.

OS
OSRepos

Analysis and discovery of open source repositories. Find interesting projects and follow their updates.

Monitor your website with YourWebsiteScore

OSRepos shares public repositories for knowledge and discovery only. Any installation, execution, configuration, or use of third-party repository code is at your own risk. Always review source code, dependencies, licenses, and security implications before running anything.

© 2025 OSRepos. Built with Nuxt 3 and lots of ❤️