Skip to content

Real-time trajectory smoothing with bounded-acceleration shortcuts, based on "Fast Smoothing of Manipulator Trajectories using Optimal Bounded-Acceleration Shortcuts."

License

Notifications You must be signed in to change notification settings

cc299792458/bounded-accel-traj-shortcuts

Repository files navigation

Bounded-Accel-Traj-Shortcuts

This repository contains a Python implementation of a real-time trajectory smoothing algorithm based on the paper:
"Fast Smoothing of Manipulator Trajectories using Optimal Bounded-Acceleration Shortcuts", ICRA 2010.

It efficiently generates shortcut trajectories that satisfy velocity and acceleration constraints.

📌 Note: This implementation is a reproduction of the original paper. You can find the original implementation here.


✨ Example: RRT Path vs. Smoothed Path

The following example illustrates how the trajectory smoothing algorithm refines a raw RRT-generated path.

Original RRT Path Smoothed Path
RRT Path Smoothed Path

To better visualize the process of smoothing, see the GIF below:


🛠 Usage

Smoother integrates the trajectory smoothing algorithm by applying optimal bounded-acceleration shortcuts to smooth a given path. Its main idea is to continuously select two random points along the trajectory, using their positions and velocities as boundary conditions. Under the given velocity and acceleration constraints, it computes the optimal trajectory for that segment as a shortcut to replace the original path. The optimal solution for this problem is the trapezoidal velocity profile. The method computes the optimal trajectory by employing four motion modes: "P+P-", "P-P+", "P+L+P-", and "P-L-P+", as detailed in the original paper.

Some Core Components


This implementation carefully handles numerical precision issues to ensure robust performance.

🌟If you find this useful, please star it—thank you! If you have any questions, feel free to open an issue.

About

Real-time trajectory smoothing with bounded-acceleration shortcuts, based on "Fast Smoothing of Manipulator Trajectories using Optimal Bounded-Acceleration Shortcuts."

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages