Human-Oriented Robotics Prof. Kai Arras Social Robotics Lab Human-Oriented Robotics Robot Motion Planning Kai Arras Social Robotics Lab, University of Freiburg 1
Human-Oriented Robotics Robot Motion Planning Prof. Kai Arras Social Robotics Lab Contents • Introduction • Con fi guration space • Combinatorial planning • Sampling-based planning • Potential fi elds methods • A*, Any-Angle A*, D*/D* Lite • Dynamic Window Approach (DWA) • Markov Decision Processes (MDP) 2
Human-Oriented Robotics Robot Motion Planning Prof. Kai Arras Social Robotics Lab Introduction • Robot motion planning is a fundamental robotics problem since, by de fi nition, a robot accomplishes tasks by moving in the real world • For plan execution, motion planning is tightly coupled to control theory • The goal of motion planning is to enable a robot to reach a goal con fi guration (e.g. a goal location in its workspace) without collisions or self-collisions • Notice the di ff erence: • Perception, sensing, tracking and un/supervised learning are all estimation-related tasks where a robot sits still, observes the world and reasons about the state of the world or of itself • Motion planning, plan execution and control are planning and decision-related tasks where the robot actually moves and physically interacts with the world 3
Human-Oriented Robotics Robot Motion Planning Prof. Kai Arras Social Robotics Lab Introduction • The motion planning problem can be stated as follows : given • an initial con fi guration of the robot (e.g. a pose in 2D) • a desired goal con fi guration • a model of the robot (e.g. in terms of geometry, kinematics and dynamics) • A map of the environment with obstacles in the workspace, fi nd an admissible , collision-free path that moves the robot gradually from start to goal • There are two di ff erent criteria that a plan may need to satisfy: • Feasibility : fi nd a plan that causes arrival at the goal state, regardless of its e ffi ciency. For many interesting planning problems, feasibility is already very challenging • Optimality : in addition to arriving in a goal state, fi nd a feasible plan that is optimal in some sense (e.g. shortest/smoothest path, minimal time). Achieving optimality can be considerably harder than feasibility 4
Human-Oriented Robotics Robot Motion Planning Prof. Kai Arras Social Robotics Lab Introduction • Motion planning would be simple if robots were free- fl oating points in space without physical extension or constraints to their motion • But considering these rather simple wheeled mobile robots, we have • Physical extension : non-circular shape • Motion constraints : they can go anywhere but not by following any trajectory. This is an example of non-holonomic constraints • If these robots had very weak motors with limited acceleration, dynamic constraints would come into play (inertia, mass, torque etc.) • Let us consider some examples... 5
Human-Oriented Robotics Robot Motion Planning Prof. Kai Arras Social Robotics Lab Introduction • Examples Source [2] Mobile robots and intelligent vehicles Source [2] Robot manipulators 6
Human-Oriented Robotics Robot Motion Planning Prof. Kai Arras Social Robotics Lab Introduction • Examples l 3 l 2 m 1 l 1 ϕ 2 ϕ 1 Motion planning is also called piano mover’s problem θ ϕ 0 Source [5] Source [2] Trailer-truck trajectory optimization for Airbus A380 component transportation Alpha 1.0 3D puzzle 7
Human-Oriented Robotics Robot Motion Planning Prof. Kai Arras Social Robotics Lab Con fi guration Space • Although plans are executed in the Cartesian world (“the workspace”), motion planning lives in another space: the con fi guration space • A robot con fi guration q is a speci fi cation of the positions of all robot points relative to a fi xed coordinate system • Usually a con fi guration is expressed as a vector of positions and orientations reference • Rigid body examples direction reference direction with con fi guration reference reference point point 8
Human-Oriented Robotics Robot Motion Planning Prof. Kai Arras Social Robotics Lab Con fi guration Space • More complex examples q 2 q 1 9
Human-Oriented Robotics Robot Motion Planning Prof. Kai Arras Social Robotics Lab Con fi guration Space • The con fi guration space (also called C -space) is the space of all possible con fi gurations • The topology of this space is usually not that of a Cartesian space • The C -space is described as a topological manifold • Example: 2-joint revolute arm in the plane wraps around horizontally and vertically Source [5] 2-dimensional torus 10
Human-Oriented Robotics Robot Motion Planning Prof. Kai Arras Social Robotics Lab Con fi guration Space • Example: circular mobile robot in 2D • The C -space is obtained by sliding the robot along the edge of the obstacle regions, "blowing them up" by the robot radius workspace Workspace Source [3] C -space 11
Human-Oriented Robotics Robot Motion Planning Prof. Kai Arras Social Robotics Lab Con fi guration Space • Example: polygonal robot, translation only workspace C -space • The C -space is obtained again by sliding the robot along the edge of the obstacle regions 12
Human-Oriented Robotics Robot Motion Planning Prof. Kai Arras Social Robotics Lab Con fi guration Space • Example: polygonal robot, translation only reference point workspace C -space • The C -space is obtained again by sliding the robot along the edge of the obstacle regions 13
Human-Oriented Robotics Robot Motion Planning Prof. Kai Arras Social Robotics Lab Con fi guration Space • Example: polygonal robot, translation and rotation Source [1] workspace C -space • The C -space is obtained by sliding the robot along the edge of the obstacle regions in all orientations 14
Human-Oriented Robotics Robot Motion Planning Prof. Kai Arras Social Robotics Lab Con fi guration Space • Con fi guration spaces are made up of free space and obstacle regions • With being the workspace, the set of obstacles, the robot in con fi guration • We further de fi ne : initial con fi guration : goal con fi guration • Note that is de fi ned in the workspace and in the C -space 15
Human-Oriented Robotics Robot Motion Planning Prof. Kai Arras Social Robotics Lab Con fi guration Space • Then, motion planning amounts to fi nding a continuous path with such that no con fi guration in the path causes a collision between the robot and an obstacle • What do we gain? • Given this setting, we can do planning with the robot being a point in C -space! 16
Human-Oriented Robotics Robot Motion Planning Prof. Kai Arras Social Robotics Lab Con fi guration Space • Example: 2-joint revolute arm in the plane with obstacles workspace C -space C -space workspace C -space workspace robot obstacle Source [6] 17
Human-Oriented Robotics Robot Motion Planning Prof. Kai Arras Social Robotics Lab Con fi guration Space Discretizations • In practice, continuous spaces need to be discretized for path planning. There are two general approaches to discretize C -spaces: • Combinatorial planning Characterize C free explicitly by capturing the connectivity of C free into a graph. Such graphs are also known as roadmaps • Sampling-based planning Randomly probe and incrementally search C free for a solution. Construct a graph that consist of sampled con fi gurations • We will fi rst consider four combinatorial planning techniques • Visibility graphs • Exact and approximate cell decompositions • Voronoi diagrams 18
Human-Oriented Robotics Robot Motion Planning Prof. Kai Arras Social Robotics Lab Roadmap • The goal of all these approaches is to produce a roadmap RM • A roadmap RM is a concise representation of C free in form of a graph that captures its connectivity. Each vertex is a con fi guration in C free and each edge is a collision-free path through C free • For a roadmap, the following properties hold • There is a path from to some • There is a path from some to • There is a path in RM between and • Given a roadmap, a planner can plan paths between con fi gurations using graph-based search • Without loss of generality, we will now consider polygonal worlds in and a point robot that cannot rotate, that is: 19
Human-Oriented Robotics Robot Motion Planning Prof. Kai Arras Social Robotics Lab Visibility Graphs • Idea: construct a graph of all intervisible vertices of obstacles C obs and plan a path that connects q I with q G through those vertices • Obstacle edges also serve as edges in the graph, q I , q G are also vertices • Graph contains shortest path among polygonal obstacles in the plane • Best algorithm is O ( n 2 log n ) where n is the number of vertices • One of the earliest path planning methods (late 1970s) q G q G q I q I Source [1] 20
Recommend
More recommend