Ruckig

Motion Generation for Robots and Machines


Motion Planning

Ruckig is a next-generation motion planning library for robotic applications. We're focusing on:
  1. Real-time calculation times of below 1ms.
  2. Highly time-optimized trajectories. Often, Ruckig is able to find a time-optimal motion.
  3. Simple APIs for straightforward integration into your projects.

Online Trajectory Generation

Ruckig generates trajectories on-the-fly, and therefore allows robots and machines to react instantaneously to sensor input. This makes Ruckig a perfect fit for visual servoing, collision avoidance, or CNC machining. In particular, Ruckig is the first algorithm able to calculate time-optimal motions from any initial state to an arbitrary target state.

Key Features

  • Jerk-constrained. Ruckig calculates trajectories with constrained velocity, acceleration, and jerk.
  • Real-time. Ruckig integrates into cycle times as low as 250µs, and optimizes complex motions in 1ms.
  • Time-optimal. Ruckig guarantees a time-optimal solution for state-to-state motions. For all others, it improves on world-leading planners by up to 10%.

used by

Features

  • Current State of Motion
  • Optional Intermediate Waypoints
  • Target State of Motion
  • Motion Constraints
Ruckig
in less than 1ms
  • New State of Motion
  • Trajectory

The core Ruckig algorithm calculates a trajectory to a target state (with position, velocity, and acceleration) starting from any initial state limited by velocity, acceleration, and jerk constraints. This calculation is done within the real-time control loop of the robot or machine, enabling it to instantaneously react to sensor input and replan its motion accordingly. Moreover, Ruckig allows for obstacle environments or intermediate waypoints to calculate complex trajectories on-the-fly, even surpassing offline approaches for motion planning in terms of trajectory duration. Ruckig is the first trajectory generator for arbitrary target states and supports directional velocity and acceleration limits, minimum trajectory durations, and many more features.

Ruckig

Community Version

Ruckig

Pro Version

Recommended for Research Education Prototyping Commercial products Industrial deployments
Arbitrary initial and target states

Start and target are each given by position, velocity, and acceleration. Non-zero target velocities let a robot move through a state without stopping, e.g. for blending or handovers.

Jerk limitation

Limits on jerk in addition to velocity and acceleration produce smooth motions. This reduces vibrations, mechanical wear, and tracking errors, and lets machines run closer to their limits.

Synchronization of multiple axes

Works with any number of axes, from a single motor to multi-robot systems. All axes reach the target at the same time, or follow a straight line through phase synchronization.

Velocity control interface

Switch any axis from position to velocity control at runtime. Use it to bring the system to a safe, jerk-limited stop, or for jogging and manual guidance.

Hard real-time capability

Bounded worst-case calculation times for guaranteed performance in time-critical control loops.

Increased reliability

Numerically robust and extensively tested for the most demanding production environments.

Position limitation

Set minimum and maximum positions per axis. The trajectory stays within joint limits or the allowed workspace.

Intermediate waypoints

Pass through a sequence of waypoints, e.g. a collision-free path from a motion planner, in a single time-optimized trajectory.

Tracking

Follow a continuously moving target signal with minimal lag while respecting all kinematic limits. Ideal for conveyor tracking, teleoperation, and commands from VLA models.

Support & integration

Direct contact with the developers, help with integration into your control architecture, and long-term support.

Codebase

Pro also compiles with older standards, for legacy controllers, embedded toolchains, and microcontrollers.

≥ C++20 ≥ Python 3.10 ≥ C++03 ≥ Python 3.8
Software license Open Source (MIT) Individual 30-day trial
GitHub Request Evaluation
Documentation

Which version is right for you?

The Community Version is the final state of the original research project. It is no longer actively developed and has known open issues. For commercial products and industrial applications, we strongly recommend Ruckig Pro, which is continuously maintained, tested, and supported.

Applications

About

Ruckig is developed by Griffig Robotics GmbH, a company founded and led by Lars Berscheid. The algorithm originates from his research at the Karlsruhe Institute of Technology (KIT), where he developed the first method for computing time-optimal, jerk-limited motions to arbitrary target states, published as "Jerk-limited real-time trajectory generation for arbitrary target states" at Robotics: Science and Systems (RSS) 2021. He subsequently continued his research at the University of California, Berkeley.

Since publication, the Ruckig Pro version has been integrated into production systems across multiple industries worldwide. Griffig Robotics provides consulting, integration, and long-term support for professional deployments.

Looking to advance your robot motions?

We're happy to answer your questions and discuss how Ruckig can help you.
Send us a short note about your application, and we'll set you up with an evaluation license.

30-day trial license available
Contact Us

or write us an email at hello@ruckig.com