robotics//motion planning//configuration space

The configuration space of a robot is the set of all its possible configurations, one point for each complete description of its pose (a mobile robot's position and heading, an arm's joint angles), and it is the space a motion planner actually searches: obstacles in the room become forbidden regions in it, and the robot shrinks to a single point moving among them. Its dimension is the robot's number of degrees of freedom: three for a wheeled robot on a floor, six for the pose of a drone, seven for a typical industrial arm.


The configuration space of a robot is the set of all its possible configurations, one point for each complete description of its pose (a mobile robot's position and heading, an arm's joint angles), and it is the space a motion planner actually searches: obstacles in the room become forbidden regions in it, and the robot shrinks to a single point moving among them. Its dimension is the robot's number of degrees of freedom: three for a wheeled robot on a floor, six for the pose of a drone, seven for a typical industrial arm.

For a round robot of radius rrr on a floor the construction is visible. Grow every obstacle by rrr in all directions and treat the robot as a point; a path for the point in the grown map is a path for the robot in the real one. That is what the inflation layer of a navigation costmap does around walls and shelves (occupancy grid). For an arm the same idea becomes abstract: a box on a table maps to a curved, irregular region of joint space that nobody draws, so planners never build the space explicitly and instead ask a collision checker, one configuration at a time, whether a point is free.

Planning is a point moving through configuration space, and its difficulty grows with the dimension of that space far more than with the size of the room. A grid copes with three dimensions and drowns in seven, which is why arms are planned by sampling (RRT) and floors by searching a grid (A* search).

It is easy to confuse with the workspace, the physical space the robot moves in, and with the state space of a dynamic model (state-space model). The configuration holds positions only; planning that must respect speeds and accelerations (a drone that cannot stop instantly) searches the larger state space, twelve dimensions for a drone instead of six.

Its shape has traps. Angles wrap around, so a heading of 359 degrees sits next to 1 degree, and a distance that ignores this sends a robot the long way round; the nearest-neighbour searches of sampling planners must use a metric that respects the wrap.

A car-like vehicle has a three-dimensional configuration space but cannot move sideways, so not every short segment in that space is drivable; planners such as Hybrid A* in motion planning search only motions the vehicle can execute.