Motion planning (also known as the navigation problem or the piano mover’s problem) is a term used in robotics for the process of breaking down a desired movement task into discrete motions that satisfy movement constraints and possibly optimize some aspect of the movement.
For example, consider navigating an autonomous vehicle through a city to a distant waypoint. It should execute this task while avoiding obstacles and following driving rules. A motion planning algorithm would take a description of these tasks as input, and produce the speed and turning commands sent to the vehicle’s wheels. Motion planning algorithms might address different vehicles (e.g., cars, trucks, industrial vehicles), different constraints (e.g., a car that can only drive forward), and uncertainty (e.g. imperfect models of the environment or vehicle).