Robot Motion Planning Robotics meet Computer Science Motion Planning Information required • Knowledge of spatial arrangement of wkspace. E.g., location of obstacles • Full knowledge • Partial knowledge and execution full motion planning combine planning motion planning = collection of problems Motion problem • The Problem: – Given an initial position POinit – Given a goal position POgoal – Generate: continuous path t from POinit to POgoal • t is a continuous sequence of Pos’ Work Space and Configuration Space A robot R is moving in 2 , called work space, consisting of a set S P1 , , Pt of obstacles. R 9,7 R 9,7, 45 45 Reference Point R 0,0 2 Degrees of freedom R 0,0,0 3 Degrees of freedom 5 Components of the problem • A: single rigid object - the robot - moving in Euclidean space W (the wkspace). W = RN, N=2,3 • Bi , I=1,…,q. Rigid objects in W. The obstacles B1 A B2 The Environment of Motion Planning and Obstacle Avoidance Configuration Space Idea 1. represent robot as point in space 2. map obstacles into this space 3. transform problem from planning object motion to planning point motion B1 A B2 Obstacles in C (cont.) • Def: Connected Component q1, q2 belong to the same connected component of Cfree iff they are connected by a free path Objective of Motion Planning: generate a free path between 2 configurations if one exists or report that no free path exists. Classic Path Planning Approaches • Roadmap – Represent the connectivity of the free space by a network of 1-D curves • Cell decomposition – Decompose the free space into simple cells and represent the connectivity of the free space by the adjacency graph of these cells • Potential field – Define a potential function over the free space that has a global minimum at the goal and follow the Slide 10 steepest descent of the potential function Planning Approaches 1- Roadmap Captures connectivity of Cfree in a network of 1-D curves called “the roadmaps.” Once a roadmap is constructed: use a standard path. Roadmap Construction Methods: 1) Visibility Graph, 2) Voronoi Diagram, 3) Freeway Net and 4) Silhouette. Roadmaps Examples qgoal qinit qinit qgoal Visibility graph in 2D CS. Nodes: initial and final config + vertices of C-obstacles. Voronoi diagram with polygonal C-obstacles Roadmap • Visibility graph Shakey Project, SRI [Nilsson, 1969] • Voronoi Diagram Introduced by computational geometry researchers. Generate paths that maximizes clearance. Applicable mostly to 2D configuration spaces. Cell Decomposition • Decompose the free space into simple regions called cells • Construct a non-directed graph representing adjacencies: the conectivity graph • Search for a path forming a “channel” • Two variations: – Exact: union of cells is exactly the free space – Approximate: union included in the free space Cell Decomposition: Example 6 3 4 8 5 2 11 12 9 1 7 10 6 qinit 3 1 qgoal 2 4 7 5 8 10 9 1 1 12 Trapezoidal Decomposition Adjacency Graph • Nodes: cells • Edges: There is an edge between every pair of nodes whose corresponding cells are adjacent. Quadtree Decomposition Octree Decomposition Approximation Cell Decomposition • Full cell Configuration Space full mixed • Empty cell • Mixed cell – Mixed – Uncertain empty Potential Fields • Initially proposed for real-time collision avoidance [Khatib 1986]. Hundreds of papers published. • A potential field is a scalar function over the free space. • To navigate, the robot applies a force proportional to the negated gradient of the potential field. • A navigation function is an ideal potential field that – has global minimum at the goal – has no local minima – grows to infinity near obstacles Slide 21 – is smooth Attractive & Repulsive Fields Slide 22 A* Algorithm “I believe this is this way takes me shortest to the destination…. Lets give it a try” “Hey I got struck… I’ll choose another path” • Add all possible moves in an open list. • Make the best move as per open list status • Add all executed moves in the closed list Chromosome - representation • Chromosome – An encoded expression of potential solutions. (usually in the form of string) • Path representation – Encode the order of visiting points as a string • Example – 0-1-2-6-9-11-15-17-22-25-26 – 0-4-8-10-15-20-23-26 Chromosome - population • Population – a set of chromosomes • Chromosomes are generated randomly. i.e. the population contains a set of random solutions • Each robot is equipped with one population 0-1-2-6-9-11-15-1722-25-26 0-4-8-10-15-20-23-26 Operator - Crossover • Exchange information from two selected chromosomes – Crossover point: the first identical node in both parents – Example: Parent1: 0-1-2-6-9-11-15-17-22-25-26 Parent2: 0-4-8-10-15-20-23-26 Child1: 0-1-2-6-9-11-15-20-23-26 Child2: 0-4-8-10-15-17-22-25-26 Operator - Mutation • Mutation rate is low (for escaping local optimum) 1. Randomly selects one gene (node) to mutate 2. Its following nodes are picked randomly from sequentially connected nodes Evaluation - Fitness • Fitness = Tour Length + Waiting Time (Static) (Dynamic) ANN with Back Propagation Algorithm “Whenever this type of situation arrives… Always make this move” “Hey rules failed… I’m struck… OK make random moves till you are out” • Frame input/output pairs for every situation comprising of robot position, goal position and environment • Learn these and use them in decision making • Make random moves when position deteriorates Genetic Algorithms “Show me some random paths so that I may decide” “OK this path is the best to go till a point and this path the best for the other part of the journey… Let me mix them both…” • Generate random complete and incomplete solutions: source to nowhere, nowhere to goal and source to goal • Try to mix paths to attain optimality Problem Formulation for Point Robot • Input – Robot represented as a point in the plane – Obstacles represented as polygons – Initial and goal positions • Output – A collision-free path between the initial and goal positions Breadth-First Search Breadth-First Search Breadth-First Search Breadth-First Search Breadth-First Search Breadth-First Search Breadth-First Search Breadth-First Search Path Non-existence Problem Robot Initial Obstacle Obstacle Goal Slide 40 Find planning path from o to x initial position (1, 1), goal symbol * and obstacles are marked by boxes
© Copyright 2026 Paperzz