cuRobo: CUDA Accelerated Robot Library
[Research] [Code] [Arxiv] [PDF]
This is a Preview Release highlighting the results obtained in our Technical Report
For business inquiries, please submit this form: NVIDIA Research Licensing
Updates
Nov 2023: Added support for Isaac Sim 2023.1.0, x86, aarch64, and isaac sim dockerfiles.
Oct 2023: Released cuRobo Technical Report and Source Code.
Overview
cuRobo is a CUDA accelerated library containing a suite of robotics algorithms that run significantly faster than existing implementations leveraging parallel compute. cuRobo currently provides the following algorithms: (1) forward and inverse kinematics, (2) collision checking between robot and world, with the world represented as Cuboids, Meshes, and Depth images, (3) numerical optimization with gradient descent, L-BFGS, and MPPI, (4) geometric planning, (5) trajectory optimization, (6) motion generation that combines inverse kinematics, geometric planning, and trajectory optimization to generate global motions within 30ms.
cuRobo generates motions for a UR10 within 100ms on a NVIDIA Jetson Orin.
cuRobo performs trajectory optimization across many seeds in parallle to find a solution. cuRobo’s trajectory optimization penalizes jerk and accelerations, encouraging smoother and shorter trajectories.
Comparison of cuRobo’s motion generation on the left to a BiRRT planner for the motion planning phases in a pick and place task.
Example motions generated by cuRobo on the motionbenchmaker and motion policy networks datasets.
cuRobo leverages nvblox for collision avoidance with obstacles from a Depth camera.