Motion planning

On this page 7

Motion planning is the computation of a collision-free path through a robot’s configuration space that takes the robot from a start configuration to a goal configuration while respecting joint limits and task constraints. In robotic manipulation, motion planning decides how an arm moves its joints to reach, grasp and place objects without hitting itself, the workcell, people or the objects it carries.

Motion planning answers a geometric question: which sequence of joint configurations is feasible. It is usually followed by trajectory planning or time parameterization, which adds velocities and accelerations so the controller can execute the path smoothly. Inverse kinematics supplies the goal configuration, and collision checking tests every candidate state along the way.

How motion planning searches configuration space

A manipulator with n joints is described by a point in an n-dimensional configuration space, often called C-space, where each axis is one joint angle or displacement. A typical industrial arm has six degrees of freedom and a collaborative arm often has seven, so planning happens in six or seven dimensions rather than in the three-dimensional workspace.

Obstacles in the workspace map to forbidden regions in C-space that are too complex to compute explicitly. Planners therefore explore C-space by sampling configurations or optimizing paths, and they call a collision checker to test whether each configuration, and each short motion between configurations, is free.

ElementDescriptionTypical source
Start configurationCurrent joint positionsJoint encoders
GoalJoint configuration or end-effector poseInverse kinematics, grasp planner
Scene modelGeometry of robot, fixtures and objectsCAD models, depth cameras, octomaps
ConstraintsJoint limits, orientation or path constraintsTask specification
Output pathOrdered list of collision-free configurationsPassed to time parameterization
Inputs and outputs of a manipulation motion planner

Families of motion planning algorithms

Motion planning algorithms fall into three broad families: sampling-based planners, optimization-based planners and search-based planners. Each family trades speed, path quality and guarantees differently, and many practical systems combine them.

FamilyRepresentative algorithmsStrengthWeakness
Sampling-basedRRT, RRT-Connect, PRMFast in high dimensionsJerky paths that need smoothing
Asymptotically optimal samplingRRT*, BIT*, PRM*Path quality improves with timeSlower to converge
Optimization-basedCHOMP, STOMP, TrajOptSmooth, short pathsCan get stuck in local minima
Search-basedA* on discretized latticesRepeatable, bounded suboptimalityGrows quickly with dimensions
Learning-assistedLearned samplers or policiesFast in familiar scenesWeak guarantees in new scenes
Main motion planning approaches for manipulators

Sampling-based planners are probabilistically complete: if a solution exists, the probability of finding it approaches one as planning time grows. They cannot prove that no path exists, so a planner that fails after its time limit, commonly set between a fraction of a second and a few seconds, reports failure rather than impossibility.

Several neighboring terms describe parts of the same pipeline, and confusing them leads to misplaced debugging. Motion planning decides the geometric route, while its neighbors provide goals, checks and timing.

ConceptQuestion it answersRelationship to motion planning
Inverse kinematicsWhich joint values reach this poseProvides goal configurations
Grasp planningWhere and how to hold the objectDefines approach and grasp poses
Collision checkingIs this configuration freeCalled thousands of times per plan
Trajectory planningHow fast to move along the pathAdds timing after the path is found
Motion controlHow to track the trajectoryExecutes the result on the hardware
Motion planning and neighboring concepts

Frameworks such as MoveIt in ROS integrate these components: they load the robot description, maintain the planning scene, call planners such as those from the Open Motion Planning Library, and apply time parameterization before sending trajectories to controllers.

Practical choices when planning arm motions

The right planning setup depends on how structured the environment is and how often it changes. A fixed welding cell can use pre-taught or precomputed paths, while bin picking needs a fresh plan for every object.

SituationRecommended approachReason
Fixed cell, repeated motionsPrecomputed or taught pathsDeterministic cycle times
Cluttered, changing scenesRRT-Connect with smoothingFast, reliable feasibility
Smoothness matters, few obstaclesOptimization-based plannerShort, natural motions
Straight tool motion requiredCartesian path planningKeeps the tool on a line
Humans share the workspaceFast replanning with speed limitsReacts to new obstacles safely
Choosing a planning strategy

Collision padding of one to a few centimeters around the robot and obstacles compensates for model and perception errors, but excessive padding can make narrow but valid passages, such as reaching into a shelf, impossible to plan.

Common motion planning failures

Many planning failures originate outside the planner itself, in the scene model, the goal or the constraints passed to it.

  • Start in collision: noisy perception or a grasped object not attached to the robot model makes the planner reject the start state.
  • Unreachable goals: inverse kinematics returns a solution near a joint limit or singularity that leaves no feasible approach.
  • Narrow passages: random sampling rarely finds configurations in tight gaps, so planning times rise sharply.
  • Over-constrained requests: a strict orientation constraint across the whole path can shrink the feasible space to nothing.
  • Unsmoothed paths: raw sampling-based paths contain unnecessary detours that waste cycle time.

Robust applications therefore validate goals before planning, try several IK solutions, and fall back to alternative grasps when a plan fails within the time limit.

In everyday language

Reaching for a cup behind a vase is easy for a person, but a robot arm has to work out every joint movement in advance. Motion planning is how the robot finds a way to move its arm without bumping into anything.

It resembles finding a route through a crowded room while carrying something, except the robot must think about the position of its shoulder, elbow and wrist all at once. A good plan is safe first, then short and smooth.

Seen in the real world

A pharmacy distribution center uses a seven-axis collaborative arm to pick medicine boxes from crowded shelves and place them into order totes. Box positions change constantly, so the arm cannot repeat fixed paths, and shelf openings leave only a few centimeters of clearance.

For each box, a depth camera updates the planning scene, inverse kinematics proposes several grasp configurations, and RRT-Connect searches for a path with a time limit of about one second, followed by smoothing and time parameterization. When planning fails, the system tries the next grasp. Most picks are planned in well under a second, and the arm reaches into narrow shelves without contact, while operators only intervene for damaged or misplaced boxes.