Open Source Robotics

A curated collection of high-quality open source robotics projects, tools, and software to propel the robotics community forward.

Reduced Coordinates

  • Also called: minimal coordinates, joint coordinates
  • Category: Software & tooling › Simulation & twins
  • Tags: physics-simulation, rigid-body-dynamics, multibody-systems, kinematics, simulation

A way of describing a jointed mechanism by its joint variables only, so the joints hold together by construction instead of being enforced as constraints between free bodies.

Definition

A multibody system such as a robot arm can be simulated in two broad ways. In maximal coordinates, every link is a free rigid body with six degrees of freedom, and joints are added as constraints that the solver must enforce at every step. In reduced coordinates, the system is described only by its joint variables, such as joint angles and prismatic displacements, plus the pose of the base for a floating robot. Each link's pose is then computed from those variables by forward kinematics, so the joints cannot come apart: the constraints are satisfied by construction.

Reduced coordinates are the natural setting for the classic robot dynamics algorithms. The recursive Newton-Euler algorithm, the composite rigid body algorithm and Featherstone's articulated body algorithm all work directly on joint-space quantities and compute inverse or forward dynamics in time that grows linearly or close to linearly with the number of links. The equations of motion take the familiar form M(q) q̈ + C(q, q̇) q̇ + g(q) = τ, which maps directly onto robot control. Simulators that use this approach include MuJoCo, Drake, Pinocchio-based tools and the articulation types in PhysX and Bullet; Isaac Gym, for example, simulates every robot as a PhysX reduced-coordinate articulation.

The main advantages are accuracy and stability for long chains: there is no joint drift or joint stretching, joint limits and drives act on the actual joint variables, and there are fewer variables to integrate. The limitations are that the structure must be a kinematic tree, so closed loops such as four-bar linkages or parallel robots need additional loop-closure constraints, and that contacts with the environment still have to be handled as constraints or penalty forces. Maximal coordinates remain common in game physics and for loosely connected bodies because they are simple and parallelize easily.

Why it matters

How a simulator represents a robot affects whether joints stay together under high loads, how large a time step can be used, and how closely simulated joint dynamics match the controller's model. Knowing whether a tool uses reduced or maximal coordinates explains many differences in stability, performance and modeling options between physics engines.

Key applications

  • Physics simulation of robot arms, legged robots and humanoids
  • Rigid-body dynamics libraries for control and model predictive control
  • GPU-parallel simulation for reinforcement learning
  • Trajectory optimization with joint-space dynamics models
  • Differentiable simulation of articulated systems

In practice

An engineer imports a humanoid URDF into a GPU simulator for reinforcement learning. Loaded as a reduced-coordinate articulation, the robot's state is the base pose and velocity plus one position and velocity per joint, which map directly to the observation vector and to the joint PD targets the policy outputs. When the same model was earlier built from separate rigid bodies connected by joint constraints, the knees visibly separated during hard landings and needed many more solver iterations. The robot also has a closed-chain ankle linkage; since articulations must be trees, the engineer models it as a tree with one extra loop-closure constraint and checks that the resulting joint torque limits match the real mechanism.

Common misconceptions

  • Reduced and maximal coordinates model different physics — ideally both describe the same dynamics; the differences come from numerical solving, drift and constraint stiffness
  • Reduced coordinates can represent any mechanism directly — closed kinematic loops, as in parallel robots and linkages, need extra loop-closure constraints
  • Using reduced coordinates removes the need for a constraint solver — contacts, joint limits and loop closures are still constraints that must be solved

Who should know this

  • Simulation and physics engine developers
  • Robot learning engineers using GPU simulators
  • Controls engineers working with rigid-body dynamics libraries
  • Engineers preparing robot models such as URDF and MJCF files

Related technologies

  • PhysX Articulations
  • MuJoCo
  • Pinocchio
  • Drake
  • Recursive Newton-Euler Algorithm

Related terms

  • Articulated Body Algorithm
  • DOF
  • Configuration Space
  • URDF
  • Forward Kinematics
  • Differentiable Simulation

Related projects

  • GENESIS: World's fastest physics engine: 43M FPS for embodied AI learning
  • LeRobot: HuggingFace ML library for real-world robotics in PyTorch
  • PyBullet: Python physics simulator for robotics and RL research with fast CPU-based simulation
  • RLinf: Scalable infrastructure for post-training foundation models via RL
  • Webots: Cross-platform robot simulator with built-in models, sensors, and development environment
  • NVIDIA Isaac Sim: NVIDIA Omniverse app for AI-driven robot simulation and testing

This website requires JavaScript to function properly. Please enable JavaScript to explore our collection of open source robotics projects.