Bayesian Robot Programming & Probabilistic Robotics Pavel Petrovič Department of Applied Informatics, Faculty of Mathematics, Physics and Informatics

Slides:



Advertisements
Similar presentations
Probabilistic Techniques for Mobile Robot Navigation
Advertisements

Mobile Robot Localization and Mapping using the Kalman Filter
State Estimation and Kalman Filtering CS B659 Spring 2013 Kris Hauser.
Monte Carlo Localization for Mobile Robots Karan M. Gupta 03/10/2004
Markov Localization & Bayes Filtering 1 with Kalman Filters Discrete Filters Particle Filters Slides adapted from Thrun et al., Probabilistic Robotics.
1 Slides for the book: Probabilistic Robotics Authors: Sebastian Thrun Wolfram Burgard Dieter Fox Publisher: MIT Press, Web site for the book & more.
Recursive Bayes Filtering Advanced AI Wolfram Burgard.
Bayes Filters Pieter Abbeel UC Berkeley EECS Many slides adapted from Thrun, Burgard and Fox, Probabilistic Robotics TexPoint fonts used in EMF. Read the.
Recursive Bayes Filtering Advanced AI
CS 547: Sensing and Planning in Robotics Gaurav S. Sukhatme Computer Science Robotic Embedded Systems Laboratory University of Southern California
1.Examples of using probabilistic ideas in robotics 2.Reverend Bayes and review of probabilistic ideas 3.Introduction to Bayesian AI 4.Simple example.
Autonomous Robot Navigation Panos Trahanias ΗΥ475 Fall 2007.
Challenges Bayesian Estimation for Autonomous Object Manipulation Based on Tactile Perception Anna Petrovskaya, Oussama Khatib, Sebastian Thrun, Andrew.
Particle Filters Pieter Abbeel UC Berkeley EECS Many slides adapted from Thrun, Burgard and Fox, Probabilistic Robotics TexPoint fonts used in EMF. Read.
Probabilistic Methods in Mobile Robotics. Stereo cameras Infra-red Sonar Laser range-finder Sonar Tactiles.
CS 547: Sensing and Planning in Robotics Gaurav S. Sukhatme Computer Science Robotic Embedded Systems Laboratory University of Southern California
Part 3 of 3: Beliefs in Probabilistic Robotics. References and Sources of Figures Part 1: Stuart Russell and Peter Norvig, Artificial Intelligence, 2.
CS 547: Sensing and Planning in Robotics Gaurav S. Sukhatme Computer Science Robotic Embedded Systems Laboratory University of Southern California
City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York A Taste of Localization.
Probability: Review TexPoint fonts used in EMF.
Part 2 of 3: Bayesian Network and Dynamic Bayesian Network.
Monte Carlo Localization
Probabilistic Robotics Introduction Probabilities Bayes rule Bayes filters.
CS 547: Sensing and Planning in Robotics Gaurav S. Sukhatme Computer Science Robotics Research Laboratory University of Southern California
HCI / CprE / ComS 575: Computational Perception
ROBOT MAPPING AND EKF SLAM
Bayesian Filtering for Robot Localization
Mobile Robot controlled by Kalman Filter
Probability in Robotics
Markov Localization & Bayes Filtering
Lab 4 1.Get an image into a ROS node 2.Find all the orange pixels (suggest HSV) 3.Identify the midpoint of all the orange pixels 4.Explore the findContours.
From Bayesian Filtering to Particle Filters Dieter Fox University of Washington Joint work with W. Burgard, F. Dellaert, C. Kwok, S. Thrun.
1 Robot Motion and Perception (ch. 5, 6) These two chapters discuss how one obtains the motion model and measurement model mentioned before. They are needed.
Mapping and Localization with RFID Technology Matthai Philipose, Kenneth P Fishkin, Dieter Fox, Dirk Hahnel, Wolfram Burgard Presenter: Aniket Shah.
Visibility Graph. Voronoi Diagram Control is easy: stay equidistant away from closest obstacles.
1 Robot Environment Interaction Environment perception provides information about the environment’s state, and it tends to increase the robot’s knowledge.
Computer Vision Group Prof. Daniel Cremers Autonomous Navigation for Flying Robots Lecture 6.1: Bayes Filter Jürgen Sturm Technische Universität München.
Computer Vision Group Prof. Daniel Cremers Autonomous Navigation for Flying Robots Lecture 5.2: Recap on Probability Theory Jürgen Sturm Technische Universität.
City College of New York 1 Dr. Jizhong Xiao Department of Electrical Engineering City College of New York Advanced Mobile Robotics.
The famous “sprinkler” example (J. Pearl, Probabilistic Reasoning in Intelligent Systems, 1988)
Computer Vision Group Prof. Daniel Cremers Autonomous Navigation for Flying Robots Lecture 5.3: Reasoning with Bayes Law Jürgen Sturm Technische Universität.
4 Proposed Research Projects SmartHome – Encouraging patients with mild cognitive disabilities to use digital memory notebook for activities of daily living.
Robotics Club: 5:30 this evening
Probability in Robotics Trends in Robotics Research Reactive Paradigm (mid-80’s) no models relies heavily on good sensing Probabilistic Robotics (since.
Probabilistic Robotics Introduction.  Robotics is the science of perceiving and manipulating the physical world through computer-controlled devices.
Probability in Robotics Trends in Robotics Research Reactive Paradigm (mid-80’s) no models relies heavily on good sensing Probabilistic Robotics (since.
Probabilistic Robotics
HCI/ComS 575X: Computational Perception Instructor: Alexander Stoytchev
CS 547: Sensing and Planning in Robotics Gaurav S. Sukhatme Computer Science Robotic Embedded Systems Laboratory University of Southern California
Probabilistic Robotics Introduction Probabilities Bayes rule Bayes filters.
CSE 473 Uncertainty. © UW CSE AI Faculty 2 Many Techniques Developed Fuzzy Logic Certainty Factors Non-monotonic logic Probability Only one has stood.
Probabilistic Robotics Introduction. SA-1 2 Introduction  Robotics is the science of perceiving and manipulating the physical world through computer-controlled.
10-1 Probabilistic Robotics: FastSLAM Slide credits: Wolfram Burgard, Dieter Fox, Cyrill Stachniss, Giorgio Grisetti, Maren Bennewitz, Christian Plagemann,
Probabilistic Robotics Probability Theory Basics Error Propagation Slides from Autonomous Robots (Siegwart and Nourbaksh), Chapter 5 Probabilistic Robotics.
General approach: A: action S: pose O: observation Position at time t depends on position previous position and action, and current observation.
Matching ® ® ® Global Map Local Map … … … obstacle Where am I on the global map?                                   
Probabilistic Robotics Bayes Filter Implementations Gaussian filters.
CSE 468/568 Deadlines Lab1 grades out tomorrow (5/1) HW2 grades out by weekend Lab 3 grades out next weekend HW3 – Probability homework out Due 5/7 FINALS:
Review of Probability.
Probabilistic Robotics
Probabilistic Robotics: Historgam Localization
Markov ó Kalman Filter Localization
Course: Autonomous Machine Learning
State Estimation Probability, Bayes Filtering
Particle Filter/Monte Carlo Localization
Probability Review 11/22/2018.
CSE-490DF Robotics Capstone
A Short Introduction to the Bayes Filter and Related Models
EE-565: Mobile Robotics Non-Parametric Filters Module 2, Lecture 5
Probability Review 2/24/2019.
Presentation transcript:

Bayesian Robot Programming & Probabilistic Robotics Pavel Petrovič Department of Applied Informatics, Faculty of Mathematics, Physics and Informatics July 11 th 2008

2 Bayesian and Probabilistic Robotics Robotics research challenges Why bother with probabilities Bayesian robot programming Probabilistic robotics  navigation,  localization  Mapping Where to go from here Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Robotics Today

4 Robotic tasks Deterministic and static environment, repeated operations → standard control theory and planning algorithms Example PID ControllerPID Unknown, unpredictable and dynamic environment → Requires different strategies, adaptation, reasoning, learning Example: NurseBot: assistant for elderlyNurseBot Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

5 Approaches to Robotics Technology/engineering – mechanization, automation, robotics Filosophy – artificial intelligence, artificial life, embedded intelligence Today: time for reflection and rapid development – traditional fields are being restructured Challenge: specialization Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

6 Nature of data – sensors Information obtained from real world has completely different nature than the discrete data stored in the computer: sensors provide noisy data and algorithms must cope with that! Sensors never provide a complete information about the state of the environment – only measure some physical variables / phenomena with a bounded precision and certainty Information from the sensors is not available at any time, obtaining the data costs time and resources Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

7 Why Probabilities Real environments imply uncertainty in accuracy of robot actions sensor measurements Robot accuracy and correct models are vital for successful operations All available data must be used A lot of data is available in the form of probabilities Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

8 What Probabilities Sensor parameters Sensor accuracy Robot wheels slipping Motor resolution limited Wheel precision limited Performance alternates based on temperature, etc. Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

9 What Probabilities These inaccuracies can be measured and modelled with random distributions Single reading of a sensor contains more information given the prior probability distribution of sensor behavior than its actual value Robot cannot afford throwing away this additional information! Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

10 What Probabilities More advanced concepts: Robot position and orientation (robot pose)‏ Map of the environment Planning and control Action selection Reasoning... Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Nature of Data Odometry Data Range Data Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Simple Example of State Estimation Suppose a robot obtains measurement z What is P(open|z)? Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Causal vs. Diagnostic Reasoning P(open|z) is diagnostic P(z|open) is causal Often causal knowledge is easier to obtain. Bayes rule allows us to use causal knowledge: count frequencies! Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Example P(z|open) = 0.6P(z|  open) = 0.3 P(open) = P(  open) = 0.5 z raises the probability that the door is open Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

15 Combining Evidence Suppose our robot obtains another observation z 2 How can we integrate this new information? More generally, how can we estimate P(x| z 1...z n ) ? Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Recursive Bayesian Updating Markov assumption: z n is independent of z 1,...,z n-1 if we know x. Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Example: Second Measurement P(z 2 |open) = 0.5P(z 2 |  open) = 0.6 P(open|z 1 )=2/3 z 2 lowers the probability that the door is open Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

A Typical Pitfall Two possible locations x 1 and x 2 P(x 1 )=0.99 P(z|x 2 )=0.09 P(z|x 1 )=0.07 Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Actions Often the world is dynamic since  actions carried out by the robot,  actions carried out by other agents,  or just the time passing by change the world. How can we incorporate such actions? Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Typical Actions The robot turns its wheels to move The robot uses its manipulator to grasp an object Plants grow over time… Actions are never carried out with absolute certainty. In contrast to measurements, actions generally increase the uncertainty. Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Modeling Actions To incorporate the outcome of an action u into the current “belief”, we use the conditional pdf P(x|u,x’)‏ This term specifies the pdf that executing u changes the state from x’ to x Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Example: Closing the door Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

State Transitions P(x|u,x’) for u = “close door”: If the door is open, the action “close door” succeeds in 90% of all cases Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Integrating the Outcome of Actions Continuous case: Discrete case: Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Example: The Resulting Belief

Pr(A) denotes probability that proposition A is true. Axioms of Probability Theory Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

A Closer Look at Axiom 3 B Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Using the Axioms Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Discrete Random Variables X denotes a random variable. X can take on a countable number of values in {x 1, x 2, …, x n }. P(X=x i ), or P(x i ), is the probability that the random variable X takes on value x i. P(X) is called probability mass function. E.g. Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Continuous Random Variables X takes on values in the continuum. p(X=x), or p(x), is a probability density function. E.g. x p(x) ‏ Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Joint and Conditional Probability P(X=x and Y=y) = P(x,y)‏ If X and Y are independent then P(x,y) = P(x) P(y)‏ P(x | y) is the probability of x given y P(x | y) = P(x,y) / P(y) P(x,y) = P(x | y) P(y)‏ If X and Y are independent then P(x | y) = P(x)‏ Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Law of Total Probability, Marginals Discrete caseContinuous case Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Bayes Formula Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Normalization Algorithm: Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Bayes Rule with Background Knowledge Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Bayes Filters: Framework Given:  Stream of observations z and action data u:  Sensor model P(z|x).  Action model P(x|u,x’).  Prior probability of the system state P(x). Wanted:  Estimate of the state X of a dynamical system.  The posterior of the state is also called Belief: Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Markov Assumption Underlying Assumptions Static world Independent noise Perfect model, no approximation errors Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Bayes Filters Bayes z = observation u = action x = state Markov Total prob. Markov

Bayes Filter Algorithm Algorithm Bayes_filter( Bel(x),d ):  0 If d is a perceptual data item z then For all x do For all x do Else if d is an action data item u then For all x do Return Bel’(x) Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Bayes Filters are Familiar! Kalman filters Discrete filters Particle filters Hidden Markov models Dynamic Bayesian networks Partially Observable Markov Decision Processes (POMDPs)‏ Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Summary Bayes rule allows us to compute probabilities that are hard to assess otherwise Under the Markov assumption, recursive Bayesian updating can be used to efficiently combine evidence Bayes filters are a probabilistic tool for estimating the state of dynamic systems. Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Dimensions of Mobile Robot Navigation mapping motion control localization SLAM active localization exploration integrated approaches Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Probabilistic Localization

What is the Right Representation? Kalman filters Multi-hypothesis tracking Grid-based representations Topological approaches Particle filters Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Mobile Robot Localization with Particle Filters Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

MCL: Sensor Update

PF: Robot Motion

Bayesian Robot Programming Integrated approach where parts of the robot interaction with the world are modelled by probabilities Example: training a Khepera robot (video) ‏ Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Bayesian Robot Programming Integrated approach where parts of the robot interaction with the world are modelled by probabilities Example: training a Khepera robot (video) ‏ Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Bayesian Robot Programming Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008

Further Information Bayesian Robot Programming and Probabilistic Robotics, July 11 th 2008 Recently published book: Pierre Bessière, Juan-Manuel Ahuactzin, Kamel Mekhnacha, Emmanuel Mazer: Bayesian Programming MIT Press Book (Intelligent Robotics and Autonomous Agents Series): Sebastian Thrun, Wolfram Burgard, Dieter Fox: Probabilistic Robotics ProBT library for Bayesian reasoning bayesian-cognition.org