Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News NVIDIA Open-Sources Robot Learning Framework Orbit

NVIDIA Open-Sources Robot Learning Framework Orbit

A team of researchers from NVIDIA, ETH Zurich, and the University of Toronto open-sourced Orbit, a simulation-based robot learning framework. Orbit includes wrappers for four learning libraries, a suite of benchmark tasks, and simulation for several robot platforms, as well as interfaces for deploying trained agents on physical robots.

Orbit is built on NVIDIA's Isaac Sim simulation platform, which provides tools for designing environments along with an engine for photorealistic rendering and physics simulation. Out of the box, Orbit includes models of several sensors, robot actuators, and both rigid and deformable objects, such as dishwashers and cloth. It also includes pre-built simulation environments for nearly two dozen learning tasks, such as stacking blocks or folding a cloth; the framework supports several learning paradigms, including reinforcement learning (RL) and imitation learning. Orbit can also run control policies on a physical robot, either by using ZeroMQ to send joint commands or by exporting the policy to hardware that runs ROS. According to the NVIDIA team:

By open-sourcing this framework, we aim to reduce the overhead for developing new applications and provide a unified platform for future robot learning research. While we continue improving and adding more features to the framework, we hope that researchers contribute to making it a one-stop solution for robotics research.

RL is a common technique for developing control systems for robots. However, training a pure RL controller using the physical robot in the real world could take a long time, so researchers often train virtual agents that interact with a simulated environment, taking advantage of the availability of physics-based computer game engines and high-quality image rendering. InfoQ has covered several of these systems, such as Meta's Habitat environment and MIT's ThreeDWorld (TDW).

Orbit is based on Isaac Sim, a "scalable robotics simulation application and synthetic data-generation tool," which is itself built on NVIDIA's Omniverse 3D simulation platform. Omniverse uses the Universal Scene Description (USD) format, originally developed by Pixar, as its basis for defining 3D environments. Orbit's key contribution is its abstraction layer, which simplifies environment design and transfer of trained policies to real-world robots.

The top level abstractions in Orbit are the world, which represents every object in the simulated environment, including the simulated robot hardware; and the agent, which represents the robot control software, and is responsible for reading robot sensor data and controlling robot actuators. An additional abstraction, the task, includes the world, a subset of the agent, and a task logic component, which provides goals, metrics, and episode control for learning.

Orbit Architecture
Orbit Abstractions. Image Source:

To demonstrate Orbit's ability to train agents for physical robots, the team used Orbit to control a Franka Emika robot manipulator via ZeroMQ. The robot performed teleoperation as well as waypoint tracking with obstacle avoidance. The researchers also trained a locomotion policy for an ANYmal-D quadruped robot using Orbit's simulated environment, then deployed the trained agent onto a physical robot.

In a Twitter thread about the work, several users asked questions about how Orbit relates to NVIDIA's other RL platforms, such as Isaac Gym. Orbit project advisor Prof. Animesh Garg replied:

IsaacGym was built to showcase the GPU based TensorAPI based physX. Omni IsaacGym is built as an example to showcase the [IsaacGym] capability in IsaacSim. Orbit is the IsaacSim interface for environment design and unified examples library. [IsaacGym] users can migrate to IsaacSim or Orbit.

The Orbit source code is available on GitHub.

About the Author

Rate this Article