P

Path Planning

Definition

Path planning (also called motion planning) is the process of computing a collision-free trajectory for a robot to move from a start configuration to a goal configuration. It considers the robot's geometry, joint limits, and the obstacles in its environment to find a feasible and often optimal path.

Formula

f(n) = g(n) + h(n) \quad \text{(A* evaluation function)}

In-Depth Explanation

Path planning is a core capability of autonomous robots. It operates at two levels: 1. Global path planning: Computes an overall route from start to goal using a full map (run once or infrequently) 2. Local path planning: Dynamically avoids obstacles detected in real-time by sensors (run continuously) Configuration Space (C-space): Path planning operates in C-space, where each point represents a complete robot configuration (e.g., all joint angles for an arm, or (x, y, θ) for a mobile robot). Obstacles in the real world become regions in C-space that the planner must avoid. Classic planning algorithms: 1. Graph-based (discrete): - Dijkstra's algorithm: Finds shortest path in a weighted graph (optimal, but slow for large spaces) - A* (A-star): Dijkstra + heuristic → significantly faster, still optimal with admissible heuristic - D* Lite: Dynamic replanning as map updates 2. Sampling-based (continuous, high-DOF): - RRT (Rapidly-exploring Random Tree): Randomly samples C-space and grows a tree toward the goal - RRT* (RRT-star): Asymptotically optimal version of RRT - PRM (Probabilistic Roadmap Method): Builds a roadmap by sampling and connecting feasible configurations 3. Potential field methods: - Goal exerts attractive force, obstacles exert repulsive forces - Simple but susceptible to local minima 4. Optimization-based: - CHOMP, TrajOpt: Optimize trajectory quality (smoothness, clearance) - Used in robotic arm motion planning For mobile robots (ROS Nav2 stack): - Global planner: NavFn (Dijkstra/A*) or Smac Planner - Local planner: DWA (Dynamic Window Approach) or TEB (Timed Elastic Band) - Costmap: 2D or 3D occupancy grid used by planners A* heuristic: f(n) = g(n) + h(n) where g(n) = cost from start, h(n) = estimated cost to goal Practical example: A mobile robot in a hospital uses Nav2. The global planner (A*) computes a path from Room 101 to the pharmacy on an occupancy map. The local planner (DWA) continuously adjusts the velocity commands to follow the global path while dynamically avoiding staff and carts detected by the LiDAR. In robotic arm planning, MoveIt uses OMPL (Open Motion Planning Library), which includes RRT, RRT*, PRM, and many other algorithms, to plan collision-free joint trajectories.

Related Terms