Announcements. CS 188: Artificial Intelligence Fall Robot motion planning! Today. Robotics Tasks. Mobile Robots

Similar documents
CS 188: Artificial Intelligence Fall Announcements

Local Search Methods. CS 188: Artificial Intelligence Fall Announcements. Hill Climbing. Hill Climbing Diagram. Today

Robotics Tasks. CS 188: Artificial Intelligence Spring Manipulator Robots. Mobile Robots. Degrees of Freedom. Sensors and Effectors

Today. CS 188: Artificial Intelligence Fall Example: Boolean Satisfiability. Reminder: CSPs. Example: 3-SAT. CSPs: Queries.

Announcements. CS 188: Artificial Intelligence Fall Reminder: CSPs. Today. Example: 3-SAT. Example: Boolean Satisfiability.

CS 188: Artificial Intelligence Fall 2008

CS 188: Artificial Intelligence Spring Today

CS 188: Artificial Intelligence Spring Announcements

CS 188: Artificial Intelligence

Announcements. CS 188: Artificial Intelligence Spring Production Scheduling. Today. Backtracking Search Review. Production Scheduling

K-Consistency. CS 188: Artificial Intelligence. K-Consistency. Strong K-Consistency. Constraint Satisfaction Problems II

CS 188: Artificial Intelligence

CS 188: Artificial Intelligence

What is Search For? CSE 473: Artificial Intelligence. Example: N-Queens. Example: N-Queens. Example: Map-Coloring 4/7/17

Announcements. CS 188: Artificial Intelligence Spring Today. A* Review. Consistency. A* Graph Search Gone Wrong

What is Search For? CS 188: Artificial Intelligence. Example: Map Coloring. Example: N-Queens. Example: N-Queens. Constraint Satisfaction Problems

CS 188: Artificial Intelligence. Recap: Search

CS 188: Artificial Intelligence Spring Announcements

Robotics. CSPP Artificial Intelligence March 10, 2004

Spring 2010: Lecture 9. Ashutosh Saxena. Ashutosh Saxena

ECE276B: Planning & Learning in Robotics Lecture 5: Configuration Space

Planning in Mobile Robotics

Introduction to Computer Science and Programming for Astronomers

Sung-Eui Yoon ( 윤성의 )

Lecture 3: Motion Planning 2

Robot Motion Planning

Probabilistic Methods for Kinodynamic Path Planning

Lecture 3: Motion Planning (cont.)

Visibility Graph. How does a Mobile Robot get from A to B?

CS 188: Artificial Intelligence Fall 2011

Hill Climbing. Assume a heuristic value for each assignment of values to all variables. Maintain an assignment of a value to each variable.

Local Search and Optimization Chapter 4. Mausam (Based on slides of Padhraic Smyth, Stuart Russell, Rao Kambhampati, Raj Rao, Dan Weld )

Local Search and Optimization Chapter 4. Mausam (Based on slides of Padhraic Smyth, Stuart Russell, Rao Kambhampati, Raj Rao, Dan Weld )

Robotics. Chapter 25. Chapter 25 1

CS 331: Artificial Intelligence Local Search 1. Tough real-world problems

Informed search algorithms. (Based on slides by Oren Etzioni, Stuart Russell)

Computational Geometry csci3250. Laura Toma. Bowdoin College

Local Search and Optimization Chapter 4. Mausam (Based on slides of Padhraic Smyth, Stuart Russell, Rao Kambhampati, Raj Rao, Dan Weld )

CS 188: Artificial Intelligence. Recap Search I

MEV 442: Introduction to Robotics - Module 3 INTRODUCTION TO ROBOT PATH PLANNING

CS 188: Artificial Intelligence Fall 2011

Announcements. CS 188: Artificial Intelligence Fall 2010

Last update: May 6, Robotics. CMSC 421: Chapter 25. CMSC 421: Chapter 25 1

Artificial Intelligence

Geometric Path Planning McGill COMP 765 Oct 12 th, 2017

Motion Planning. Howie CHoset

EE562 ARTIFICIAL INTELLIGENCE FOR ENGINEERS

Autonomous and Mobile Robotics Prof. Giuseppe Oriolo. Motion Planning 1 Retraction and Cell Decomposition

CS:4420 Artificial Intelligence

Robotics. Chapter 25-b. Chapter 25-b 1

Planning Techniques for Robotics Planning Representations: Skeletonization- and Grid-based Graphs

Computer Game Programming Basic Path Finding

Recap Hill Climbing Randomized Algorithms SLS for CSPs. Local Search. CPSC 322 Lecture 12. January 30, 2006 Textbook 3.8

Lesson 1 Introduction to Path Planning Graph Searches: BFS and DFS

DIT411/TIN175, Artificial Intelligence. Peter Ljunglöf. 23 January, 2018

Beyond Classical Search: Local Search. CMPSCI 383 September 23, 2011

Introduction to Information Science and Technology (IST) Part IV: Intelligent Machines and Robotics Planning

CMU-Q Lecture 4: Path Planning. Teacher: Gianni A. Di Caro

Inverse Kinematics. Given a desired position (p) & orientation (R) of the end-effector

Announcements. CS 188: Artificial Intelligence Spring Advanced Applications. Robot folds towels. Robotic Control Tasks

CS 188: Artificial Intelligence Spring Announcements

Informed Search. Dr. Richard J. Povinelli. Copyright Richard J. Povinelli Page 1

Path Planning. Jacky Baltes Dept. of Computer Science University of Manitoba 11/21/10

Algorithmic Robotics and Motion Planning

Lecture 18 Kinematic Chains

Lecture 11 Combinatorial Planning: In the Plane

Robot Motion Control Matteo Matteucci

INF Biologically inspired computing Lecture 1: Marsland chapter 9.1, Optimization and Search Jim Tørresen

CS 188: Artificial Intelligence Fall 2008

Configuration Space of a Robot

Announcements. CS 188: Artificial Intelligence Fall Large Scale: Problems with A* What is Search For? Example: N-Queens

Robot Motion Planning and (a little) Computational Geometry

Non-holonomic Planning

video 1 video 2 Motion Planning (It s all in the discretization) Digital Actors Basic problem Basic problem Two Possible Discretizations

Planning: Part 1 Classical Planning

CS 343: Artificial Intelligence

Path Planning for Point Robots. NUS CS 5247 David Hsu

Lecture VI: Constraints and Controllers. Parts Based on Erin Catto s Box2D Tutorial

ARTIFICIAL INTELLIGENCE. Informed search

Announcements. Homework 4. Project 3. Due tonight at 11:59pm. Due 3/8 at 4:00pm

Outline for today s lecture. Informed Search. Informed Search II. Review: Properties of greedy best-first search. Review: Greedy best-first search:

Unit 5: Part 1 Planning

Navigation and Metric Path Planning

Assignment 1 is out! Due: 9 Sep 23:59! Can work in a group of 2-3 students.! NO cheating!!!! Submit in turnitin! Code + report!

Robotics/Perception II

Humanoid Robotics. Inverse Kinematics and Whole-Body Motion Planning. Maren Bennewitz

Sampling-Based Motion Planning

Motion Planning 2D. Corso di Robotica Prof. Davide Brugali Università degli Studi di Bergamo

Informed search algorithms. Chapter 4

Trajectory Optimization

Artificial Intelligence

Lecture Schedule Week Date Lecture (W: 3:05p-4:50, 7-222)

Local Search (Greedy Descent): Maintain an assignment of a value to each variable. Repeat:

3.6.2 Generating admissible heuristics from relaxed problems

Case-Based Reasoning. CS 188: Artificial Intelligence Fall Nearest-Neighbor Classification. Parametric / Non-parametric.

CS 188: Artificial Intelligence Fall 2008

CSCI 446: Artificial Intelligence

CS 4700: Artificial Intelligence

Mobile Robots: An Introduction.

Autonomous Mobile Robots, Chapter 6 Planning and Navigation Where am I going? How do I get there? Localization. Cognition. Real World Environment

Transcription:

CS 188: Artificial Intelligence Fall 2007 Lecture 6: Robot Motion Planning 9/13/2007 Announcements Project 1 due (yesterday)! Project 2 (Pacman with ghosts) up in a few days Reminder: you are allowed to work with a partner! If you need a partner, come up to the front after class Mini-Homeworks Dan Klein UC Berkeley Many slides over the course adapted from either Stuart Russell or Andrew Moore Today Robot motion planning! Robot motion planning Local search Robotics Tasks Mobile Robots Motion planning (today) How to move from A to B Known obstacles Offline planning Localization (later) Where exactly am I? Known map Ongoing localization (why?) Mapping (much later) What s the world like? Exploration / discovery SLAM: simultaneous localization and mapping High-level objectives: move around obstacles, etc Low-level: fine motor control to achieve motion Why is motion planning hard? Start Configuration Immovable Obstacles Goal Configuration 1

Manipulator Robots High-level goals: reconfigure environment Low-level: move from configuration A to B (point-to-point motion) Why is this already hard? Also: compliant motion Sensors and Effectors Sensors vs. Percepts Agent programs receive percepts Agent bodies have sensors Includes proprioceptive sensors Real world: sensors break, give noisy answers, miscalibrate, etc. Effectors vs. Actuators Agent programs have actuators (control lines) Agent bodies have effectors (gears and motors) Real-world: wheels slip, motors fail, etc. Degrees of Freedom Example The degrees of freedom are the numbers required to specify a robot s configuration the dimensionality Positional DOFs: (x, y, z) of free-flying robot 2 DOFs direction robot is facing Effector DOFs Arm angle Wing position Static state: robot shape and position 3 DOFs Dynamic state: derivatives of static DOFs (why have these?) Question: How many DOFs for a polyhedron free-flying in 3D space? How many DOFs? What are the natural coordinates for specifying the robot s configuration? These are the configuration space coordinates What are the natural coordinates for specifying the effector tip s position? These are the work space coordinates Example Holonomicity Holonomic robots control all their DOFs (e.g. manipulator arms) Easier to control Harder to build How many DOFs? How does this compare to your arm? How many are required for arbitrary positioning of end-effector? Non-holonomic robots do not directly control all DOFs (e.g. a car) 2

Coordinate Systems Workspace: The world s (x, y) system Obstacles specified here Kinematics Kinematics The mapping from configurations to workspace coordinates Generally involves some trigonometry Usually pretty easy Configuration space The robot s state Planning happens here Obstacles can be projected to here Inverse Kinematics The inverse: effector positions to configurations Usually non-unique (why?) Forward kinematics Configuration Space Obstacles in C-Space What / where are the obstacles? Remaining space is free space Configuration space Just a coordinate system Not all points are reachable / legal Legal configurations: No collisions No self-intersection More Obstacles Topology You very quickly get into tricky issues of topology: Point robot in 3D: R 3 Directional robot with fixed position in 3D: SO(3) Two rotational-jointed robot in 2D: S 1 xs 1 For the present purposes, we ll just ignore these issues In practice, you have to deal with it properly 3

Example: 2D Polygons Example: Rotation Workspace Configuration Space Example: A Less Simple Arm Summary Degrees of freedom Legal robot configurations form configuration space Even simple obstacles have complex images in c-space [DEMO] Motion as Search Decomposition Methods Motion planning as path-finding problem Problem: configuration space is continuous Problem: under-constrained motion Problem: configuration space can be complex Why are there two paths from 1 to 2? Break c-space into discrete regions Solve as a discrete problem 4

Exact Decomposition? Approximate Decomposition With polygon obstacles: decompose exactly Problems? Doesn t scale at all Doesn t work with complex, curved obstacles Break c-space into a grid Search (A*, etc) What can go wrong? If no path found, can subdivide and repeat Problems? Still scales poorly Incomplete* Wiggly paths S G Hierarchical Decomposition Actually used in some real systems But: Not optimal Not complete Still hopeless above a small number of dimensions Skeletonization Methods Decomposition methods turn configuration space into a grid Skeletonization methods turn it into a set of points, with preset linear paths between them Visibility Graphs Voronoi Decomposition Shortest paths: No obstacles: straight line Otherwise: will go from vertex to vertex Fairly obvious, but somewhat awkward to prove Visibility methods: All free vertex-to-vertex lines (visibility graph) Search using, e.g. A* Can be done in O(n 3 ) easily, O(n 2 log(n)) less easily Problems? Bang, screech! Not robust to control errors Wrong kind of optimality? q start q goal Voronoi regions: points colored by closest obstacle R G Voronoi diagram: borders between regions Can be calculated efficiently for points (and polygons) in 2D In higher dimensions, some approximation methods B Y 5

Voronoi Decomposition Algorithm: Compute the Voronoi diagram of the configuration space Compute shortest path (line) from start to closest point on Voronoi diagram Compute shortest path (line) from goal to closest point on Voronoi diagram. Compute shortest path from start to goal along Voronoi diagram Problems: Hard over 2D, hard with complex obstacles Can do weird things: Probabilistic Roadmaps Idea: just pick random points as nodes in a visibility graph This gives probabilistic roadmaps Very successful in practice Lets you add points where you need them If insufficient points, incomplete, or weird paths Roadmap Example Potential Field Methods So far: implicit preference for short paths Rational agent should balance distance with risk! Idea: introduce cost for being close to an obstacle Can do this with discrete methods (how?) Usually most natural with continuous methods Potential Fields Cost for: Being far from goal Being near an obstacle Go downhill What could go wrong? Local Search Queue-based algorithms keep fallback options (backtracking) Local search: improve what you have until you can t make it better Generally much more efficient (but incomplete) 6

Hill Climbing Simple, general idea: Start wherever Always choose the best neighbor If no neighbors have better scores than current, quit Why can this be a terrible idea? Complete? Optimal? What s good about it? Hill Climbing Diagram Random restarts? Random sideways steps? Simulated Annealing Idea: Escape local maxima by allowing downhill moves But make them rarer as time goes on Simulated Annealing Theoretical guarantee: Stationary distribution: If T decreased slowly enough, will converge to optimal state! Is this an interesting guarantee? Sounds like magic, but reality is reality: The more downhill steps you need to escape, the less likely you are to every make them all in a row People think hard about ridge operators which let you jump around the space in better ways Beam Search Genetic Algorithms Like hill-climbing search, but keep K states at all times: Greedy Search Beam Search Variables: beam size, encourage diversity? The best choice in MANY practical settings Complete? Optimal? Why do we still need optimal methods? Genetic algorithms use a natural selection metaphor Like beam search (selection), but also have pairwise crossover operators, with optional mutation Probably the most misunderstood, misapplied (and even maligned) technique around! 7

Example: N-Queens Continuous Problems Placing airports in Romania States: (x 1,y 1,x 2,y 2,x 3,y 3 ) Cost: sum of squared distances to closest city Why does crossover make sense here? When wouldn t it make sense? What would mutation be? What would a good fitness function be? Gradient Methods How to deal with continous (therefore infinite) state spaces? Discretization: bucket ranges of values E.g. force integral coordinates Continuous optimization E.g. gradient ascent Image from vias.org 8