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

Similar documents
Robotics. Chapter 25. Chapter 25 1

Robotics/Perception II

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

L10. PARTICLE FILTERING CONTINUED. NA568 Mobile Robotics: Methods & Algorithms

Particle Filter in Brief. Robot Mapping. FastSLAM Feature-based SLAM with Particle Filters. Particle Representation. Particle Filter Algorithm

Probabilistic Robotics

Artificial Intelligence for Robotics: A Brief Summary

ECE276A: Sensing & Estimation in Robotics Lecture 11: Simultaneous Localization and Mapping using a Particle Filter

Probabilistic Robotics

Practical Course WS12/13 Introduction to Monte Carlo Localization

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

Overview. EECS 124, UC Berkeley, Spring 2008 Lecture 23: Localization and Mapping. Statistical Models

IROS 05 Tutorial. MCL: Global Localization (Sonar) Monte-Carlo Localization. Particle Filters. Rao-Blackwellized Particle Filters and Loop Closing

Jane Li. Assistant Professor Mechanical Engineering Department, Robotic Engineering Program Worcester Polytechnic Institute

Particle Filters. CSE-571 Probabilistic Robotics. Dependencies. Particle Filter Algorithm. Fast-SLAM Mapping

Navigation methods and systems

EKF Localization and EKF SLAM incorporating prior information

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

CS 188: Artificial Intelligence Fall Announcements

AUTONOMOUS SYSTEMS. PROBABILISTIC LOCALIZATION Monte Carlo Localization

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

This chapter explains two techniques which are frequently used throughout

CSE 490R P1 - Localization using Particle Filters Due date: Sun, Jan 28-11:59 PM

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

Probabilistic Robotics

Humanoid Robotics. Monte Carlo Localization. Maren Bennewitz

Introduction to Mobile Robotics Bayes Filter Particle Filter and Monte Carlo Localization. Wolfram Burgard

Unit 5: Part 1 Planning

Planning: Part 1 Classical Planning

Autonomous Mobile Robot Design

Probabilistic Robotics. FastSLAM

Robotics. Haslum COMP3620/6320

Simulation. x i. x i+1. degrees of freedom equations of motion. Newtonian laws gravity. ground contact forces

Lecture 34: Curves defined by Parametric equations

Planning in Mobile Robotics

Probabilistic Robotics

Monte Carlo Localization using Dynamically Expanding Occupancy Grids. Karan M. Gupta

F1/10 th Autonomous Racing. Localization. Nischal K N

Introduction to robot algorithms CSE 410/510

Gaussian Processes, SLAM, Fast SLAM and Rao-Blackwellization

Lecture 18 Kinematic Chains

Introduction to Mobile Robotics SLAM Grid-based FastSLAM. Wolfram Burgard, Cyrill Stachniss, Maren Bennewitz, Diego Tipaldi, Luciano Spinello

Spring Localization II. Roland Siegwart, Margarita Chli, Juan Nieto, Nick Lawrance. ASL Autonomous Systems Lab. Autonomous Mobile Robots

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

(W: 12:05-1:50, 50-N202)

Spring 2010: Lecture 9. Ashutosh Saxena. Ashutosh Saxena

Robotics. Lecture 5: Monte Carlo Localisation. See course website for up to date information.

Robotics. CSPP Artificial Intelligence March 10, 2004

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

L17. OCCUPANCY MAPS. NA568 Mobile Robotics: Methods & Algorithms

Robotic Motion Planning: Review C-Space and Start Potential Functions

Announcements. Recap Landmark based SLAM. Types of SLAM-Problems. Occupancy Grid Maps. Grid-based SLAM. Page 1. CS 287: Advanced Robotics Fall 2009

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

Introduction to Mobile Robotics SLAM Landmark-based FastSLAM

Revising Stereo Vision Maps in Particle Filter Based SLAM using Localisation Confidence and Sample History

Table of Contents. Chapter 1. Modeling and Identification of Serial Robots... 1 Wisama KHALIL and Etienne DOMBRE

Computer Game Programming Basic Path Finding

Written exams of Robotics 2

Robot Art Competition Using HERB: Final Report

Spring Localization II. Roland Siegwart, Margarita Chli, Martin Rufli. ASL Autonomous Systems Lab. Autonomous Mobile Robots

Last Time? Inverse Kinematics. Today. Keyframing. Physically-Based Animation. Procedural Animation

1. Introduction 1 2. Mathematical Representation of Robots

What is the SLAM problem?

Computer Vision 2 Lecture 8

Road Map Methods. Including material from Howie Choset / G.D. Hager S. Leonard

Prof. Fanny Ficuciello Robotics for Bioengineering Trajectory planning

Jacobian: Velocities and Static Forces 1/4

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

Final project: 45% of the grade, 10% presentation, 35% write-up. Presentations: in lecture Dec 1 and schedule:

Inverse Kinematics (part 1) CSE169: Computer Animation Instructor: Steve Rotenberg UCSD, Winter 2018

Simultaneous Localization and Mapping

Tracking Algorithms. Lecture16: Visual Tracking I. Probabilistic Tracking. Joint Probability and Graphical Model. Deterministic methods

Jane Li. Assistant Professor Mechanical Engineering Department, Robotic Engineering Program Worcester Polytechnic Institute

Manipulator trajectory planning

Robots are built to accomplish complex and difficult tasks that require highly non-linear motions.

ME5286 Robotics Spring 2015 Quiz 1

Zürich. Roland Siegwart Margarita Chli Martin Rufli Davide Scaramuzza. ETH Master Course: L Autonomous Mobile Robots Summary

Robot Mapping. TORO Gradient Descent for SLAM. Cyrill Stachniss

Mobile Robotics. Mathematics, Models, and Methods. HI Cambridge. Alonzo Kelly. Carnegie Mellon University UNIVERSITY PRESS

Localization and Map Building

Last Time? Animation, Motion Capture, & Inverse Kinematics. Today. Keyframing. Physically-Based Animation. Procedural Animation

Path Planning. Marcello Restelli. Dipartimento di Elettronica e Informazione Politecnico di Milano tel:

Exam in DD2426 Robotics and Autonomous Systems

Jane Li. Assistant Professor Mechanical Engineering Department, Robotic Engineering Program Worcester Polytechnic Institute

Survey: Simultaneous Localisation and Mapping (SLAM) Ronja Güldenring Master Informatics Project Intellgient Robotics University of Hamburg

Intermediate Desired Value Approach for Continuous Transition among Multiple Tasks of Robots

Dipartimento di Ingegneria Aerospaziale Politecnico di Milano

Sung-Eui Yoon ( 윤성의 )

Humanoid Robotics. Path Planning and Walking. Maren Bennewitz

Last Time? Animation, Motion Capture, & Inverse Kinematics. Today. Keyframing. Physically-Based Animation. Procedural Animation

Passive Differential Matched-field Depth Estimation of Moving Acoustic Sources

Adapting the Sample Size in Particle Filters Through KLD-Sampling

Optimization of a two-link Robotic Manipulator

ROBOTICS 01PEEQW. Basilio Bona DAUIN Politecnico di Torino

Planning, Execution and Learning Application: Examples of Planning for Mobile Manipulation and Articulated Robots

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

Lecture VI: Constraints and Controllers

Planar Robot Kinematics

Cecilia Laschi The BioRobotics Institute Scuola Superiore Sant Anna, Pisa

A simple example. Assume we want to find the change in the rotation angles to get the end effector to G. Effect of changing s

Transcription:

Robotics Chapter 25-b Chapter 25-b 1

Particle Filtering Particle filtering uses a population of particles (each particle is a state estimate) to localize a robot s position. This is called Monte Carlo Localization (MCL) 1. Start with a population of N samples taken from prior distribution at time 0: P(X 0 ). 2. The algorithm or user chooses an action a t, and then moves each particle based on the a t. 3. Propagate each particle sample forward by sampling P: x t+1 = sample(p(x t+1 x t,a t )) 3. Weight each sample by the likelihood that it assigns to the new evidence, P(e t+1 x t+1 ) 4. Resample the population, duplicating some samples. Mutate duplicated samples, or let later sampling spread them out. Chapter 25-b 2

Monte Carlo Localization Example Robot position At time t0, the robot does not know where it is, so it distributes particles throughout the environment. Chapter 25-b 3

Monte Carlo Localization Example Robot position After a few iterations, the robot has produced a bimodal distribution of its possible location. Chapter 25-b 4

Monte Carlo Localization Example Robot position After some more interaction, the robot is able to localize its position quite well. Chapter 25-b 5

Monte Carlo Localization Questions (Q) How many particles are needed? (Q) How to estimate the actual robot position from the particles? (Q) How do we balance exploration and exploitation? (Q) How accurate do our probabilities really need to be? (Q) What is needed to implement Monte Carlo localization for the assignment? Chapter 25-b 6

Localization and Mapping Problem Variants Localization: given map and observed landmarks, update pose distribution The robot is given the map. Mapping: given pose and observed landmarks, update map distribution The robot is trying to make the map, but knows where it is. SLAM (Simultaneous Localization and Mapping): The robot must both make the map and determine where it is! Chapter 25-b 7

SLAM Most SLAM methods use an extended Kalman Filter (EKF). - Robot pose and landmark positions are tracked. - Landmarks added as the robot explores the environment. The space is represented as a single, high-dimensional Gaussian: - Contains convariances between pose and landmark variables: Σ t = Σ XX Σ XM Σ T XM Σ MM Σ XX = robot pose covariance (just localization) Σ MM = covariance between landmark positions Σ XM = covariance between landmarks and robot pose. (Q) Draw a picture and indicate covariance by drawing ellipses. Chapter 25-b 8

Motion Planning Plan in configuration space defined by the robot s DOFs conf-2 conf-3 conf-1 conf-2 conf-1 conf-3 elb shou Solution is a trajectory in free C-space (avoiding occupied space) (Q) Sketch a robot setup and configuration space for it. (Q) Why do we want to plan in configuration space rather than world space? Chapter 25-b 9

Motion Planning Definitions Point-to-point motion planning - simply move robot or its effector from one point to another Conformant motion - Move while in contact with physical obstacle (screw in light bulb) Configuration Space - the space defined by robot s DOF - location, orientation, joint angles, etc. Path Planning - Finding a path from one point of configuration space to another. (Forward) Kinematics - Transform configuration space to workspace. Inverse Kinematics - Find a configuration to place effector in specific workspace coords. Chapter 25-b 10

Configuration space planning Basic problem: d states! Convert to finite state space. Cell decomposition: divide up space into simple cells, each of which can be traversed easily (e.g., convex) Skeletonization: identify finite number of easily connected points/lines that form a graph such that any two points are connected by a path on the graph Chapter 25-b 11

Cell decomposition example goal start start goal Because of discretization, there may be no path in pure freespace cells - Recursive decomposition of mixed (free+obstacle) cells - Exact polygonal decomposition Keeping away from obstacles obstacles: - Repelling potential field. Chapter 25-b 12

Skeletonization: Voronoi diagram Voronoi diagram: locus of points equidistant from obstacles Problem: doesn t scale well to higher dimensions! (Q) Does cell decomposition scale better? Chapter 25-b 13

Robot Controllers Issues with following C space plans - Robots cannot follow arbitrary paths in configuration space! - Most robots exert forces rather than directly changing position. Controllers can be used to keep the robots on track - Must take into account both kinematic and dynamic state - Must work within the constraints of the robot s effectors Chapter 25-b 14

P Controller P Controllers provide a correction force proportional to robot error (how far it is off the path): a t = K P (y(t) x t ) a t = force applied x t = robot state at time t y(t) = the desired point on the path at time t. K P = gain parameter (how strong the force is) Unfortunately, this is essentially a spring equation! Thus, it oscillates about the true path. Reducing K P slows the oscillation, but doesn t remove it. P Controllers may be VERY unstable! We want STABLE controllers! Chapter 25-b 15

PD Controller PD Controller - Modify P Controller by a Derivative term: a t = K P (y(t) x t )+K D (y(t) x t ) t (y(t) x t )/ t = derivative of error over time. K D = derivative gain term (Q) What happens if the robot is moving towards the goal (y(t))? (Q) What happens if the robot is moving away from the goal? Chapter 25-b 16

PID Controller PID Controller - Add a new Integration term that pushes harder the longer we have been off the path: a t = K P (y(t) x t )+K I (y(t) xt )dt+k D (y(t) x t ) t (y(t) x t )dt = the integral of the error over time K I = gain for the integration term PID Controllers often used in industry. Chapter 25-b 17

PD controller for inverted pendulum (Q) How do we create a PD controller for an inverted pendulum? Chapter 25-b 18