Open Source Robotics

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

Constraint Manifold

  • Also called: constraint surface
  • Category: Planning & manipulation › Trajectory optimisation
  • Tags: motion-planning, configuration-space, constrained-planning, bimanual-manipulation, sampling-based-planning

The set of robot configurations that satisfy one or more equality constraints, such as keeping a tray level; usually a lower-dimensional surface inside configuration space.

Definition

A constraint manifold is the subset of configuration space made up of all configurations q that satisfy an equality constraint F(q) = 0. Typical constraints fix part of the end-effector pose: keeping a cup upright, holding a pen against a whiteboard, keeping a gripper on a door handle as the door swings, or maintaining a fixed transform between two hands that hold the same object. When the k constraint equations are independent, the implicit function theorem says the solution set is locally a smooth (n − k)-dimensional manifold inside the n-dimensional configuration space. Because it has lower dimension than the space around it, it has zero volume: a randomly sampled configuration satisfies the constraint with probability zero.

That property is what makes constrained motion planning difficult. Sampling-based planners such as PRM and RRT draw random configurations and connect them with straight segments, and both steps break down on a manifold, since samples miss it and a straight segment between two points on a curved manifold leaves it. Constrained planners use a few main strategies. Projection methods take an off-manifold sample and pull it onto the manifold, often with Newton iterations using the constraint Jacobian. Continuation or atlas methods build local charts on the tangent space and grow the search along them. Relaxation methods accept a small tolerance band around the manifold, which turns it into a thin region of nonzero volume. Parameterization methods, where they are available, describe the manifold directly with a smaller set of free coordinates, for example by using analytic inverse kinematics to compute one arm's joints from the other arm's joints in a bimanual grasp.

In closed kinematic chains, including two arms holding one rigid object and parallel mechanisms, the constraint manifold is the set of configurations in which the loop stays closed. Trajectory optimization handles the same constraints as equality constraints in the optimization problem rather than as a set to sample from. The structure of the manifold matters for both: it can be split into separate components by joint limits or by different inverse-kinematics branches, and no continuous motion can cross between them.

Why it matters

Many useful tasks are constrained: carrying open containers, moving objects with two arms, opening doors and drawers, and drawing or wiping on surfaces. Planners that ignore the zero-volume structure of the constraint manifold either fail to find paths or return paths that violate the constraint between waypoints, so how a planner handles the manifold explains much of its speed and reliability.

Key applications

  • Bimanual manipulation of a shared rigid object
  • Carrying objects that must stay upright, such as open containers
  • Opening doors, drawers and valves along a hinge or slide
  • Planning for closed-chain mechanisms and parallel robots
  • Tool motion on surfaces, such as writing, wiping or polishing
  • Humanoid and legged planning with fixed hand or foot contacts

In practice

Two seven-joint arms carry a long box, with both grippers rigidly holding it. The combined configuration space has fourteen dimensions, but the fixed transform between the hands imposes six equality constraints, so valid configurations lie on an eight-dimensional constraint manifold. A projection-based RRT samples a random configuration, applies Newton steps with the constraint Jacobian to pull it onto the manifold, and checks short steps along each edge for both collisions and constraint error. An alternative, used when analytic inverse kinematics is available, plans over the joints of one arm plus the redundancy parameter of the other and computes the second arm's joints in closed form, so every sample satisfies the constraint by construction. The team compares how often each approach fails near joint limits, where neither the projection nor the closed-form solution may have a valid answer.

Common misconceptions

  • Constrained planning just needs more samples — the manifold has zero volume, so random samples almost never land on it however many are drawn
  • If every waypoint satisfies the constraint, the whole path does — straight-line interpolation between two valid configurations generally leaves a curved manifold, so edges must be checked or projected too
  • The constraint manifold is one connected surface — joint limits and separate inverse-kinematics branches can split it into components that no continuous motion can join

Who should know this

  • Motion-planning engineers
  • Bimanual and mobile-manipulation researchers
  • Engineers building constrained trajectory optimizers
  • Robotics students studying configuration space

Related technologies

  • Projection-Based Constrained Planning
  • Atlas-Based Planning
  • Constraint Jacobian
  • Newton–Raphson Method
  • Implicit Function Theorem

Related terms

  • Configuration Space
  • Kinematic Redundancy
  • Inverse Kinematics
  • Rapidly-exploring random tree
  • Probabilistic Roadmap
  • Graph of Convex Sets

Related projects

  • OMPL: Sampling-based motion planning library powering MoveIt and countless robotics applications
  • MoveIt 2: Motion planning framework for ROS 2 robot arms, with kinematics and collision checking
  • PyRoki: Modular Python toolkit for kinematic optimization across CPU, GPU, and TPU via JAX
  • mink: Python inverse kinematics library built on MuJoCo supporting 20+ robot platforms
  • Ruckig: Real-time jerk-constrained time-optimal trajectory generation for robots and machines
  • NeuPAN: Real-time end-to-end planner that maps raw lidar points directly to robot actions

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