Autonomous Robot Navigation Panos Trahanias ΗΥ475 Fall 2007
Panos Trahanias: Autonomous Robot Navigation Mobile Robots - Examples The Mars rover Sojourner The museum tour-guide Minerva The RHex Hexapod The museum tour-guide Lefkos
Panos Trahanias: Autonomous Robot Navigation Typical Mobile Robot Setup Interaction Processing Power Motors Sensors Stereo vision Sonars Bump sensors Infrared sensors Laser scanner Bump sensors Sonars Odometry Communications
Panos Trahanias: Autonomous Robot Navigation Scope of the Course Mobile Robots – How to move and achieve motion target goals in (indoor) environments Hence Localization (where am I?) Mapping, simultaneous localization and mapping – SLAM (what is my workspace?) Path planning (how to get there?) Obstacle avoidance (… get there safely…)
Panos Trahanias: Autonomous Robot Navigation Given An environment representation - Map C G Knowledge of current position C A path has to be planned and tracked that will take the robot from C to G Target position G Autonomous Navigation- Research Directions
Panos Trahanias: Autonomous Robot Navigation During execution (run- time) Objects / Obstacles O may block the robot C G The planned path is no- longer valid The obstacle needs to be avoided and the path may need to be re- planned O X Autonomous Navigation- Research Directions
Panos Trahanias: Autonomous Robot Navigation Navigation Issues Important questions (Levitt et al ’91) Important navigation issues Where am I Where are other places relative to me Where are other places relative to me How do I get to other places from here How do I get to other places from here Robot localization Map building Path/motion planning
Panos Trahanias: Autonomous Robot Navigation Navigation Issues – Underlying HW Interaction Processing Power Motors Sensors Stereo vision Sonars Bump sensors Infrared sensors Laser scanner Bump sensors Sonars Odometry Communications Laser Scanner
Panos Trahanias: Autonomous Robot Navigation Range Sensor Model Laser Rangefinder Model range and angle errors.
Panos Trahanias: Autonomous Robot Navigation Need for Modeling Extremely Complex Dynamical System Need for Appropriate Modeling Robot Environment+
Panos Trahanias: Autonomous Robot Navigation Markov Assumption State depends only on previous state and observations Static world assumption Hidden Markov Model (HMM) Bayesian estimation: Attempt to construct the posterior distribution of the state given all measurements
Panos Trahanias: Autonomous Robot Navigation A Dynamic System Most commonly - Available: Initial State Observations System (motion) Model Measurement (observation) Model
Panos Trahanias: Autonomous Robot Navigation Inference - Learning Localization (inference task) Compute the probability that the robot is at pose z at time t given all observations up to time t (forward recursions only) Map building (learning task) Determine the map m that maximizes the probability of the observation sequence.
Panos Trahanias: Autonomous Robot Navigation Belief State Discrete representation –Grid (Dynamic)(Dynamic) Markov localization (Burgard98) –SamplesMonte Carlo localization (Fox99) Continuous representation –Gaussian distributionsKalman filters (Kalman60) How is the prior distribution represented? How is the posterior distribution calculated?
Panos Trahanias: Autonomous Robot Navigation Example: State Representations for Robot Localization Grid Based approaches (Markov localization) Particle Filters (Monte Carlo localization) Kalman Tracking Discrete RepresentationsContinuous Representations
Panos Trahanias: Autonomous Robot Navigation LOCALIZATION
Panos Trahanias: Autonomous Robot Navigation Markov Assumption Localization: determine the likelihood of robot’s state Given a sequence of observations Determine the probability
Panos Trahanias: Autonomous Robot Navigation Markov Assumption In practice: too difficult to determine the joint effect of all observations up to time K. Common assumption: hidden states obey the Markov assumption (static world assumption), so as we can factor as
Panos Trahanias: Autonomous Robot Navigation Markov Assumption
Panos Trahanias: Autonomous Robot Navigation Markov Assumption All information about past history is represented in Different approaches in this representation lead to different treatments of the problem. Integrate over all possible states
Panos Trahanias: Autonomous Robot Navigation Kalman Filtering Probabilistic estimation Simultaneously maintain estimates for both the state x and error covariance matrix P Equivalent to say: output of a Kalman filter is a Gaussian PDF (other methods can handle more general distributions)
Panos Trahanias: Autonomous Robot Navigation Kalman Filtering Crude localization method: integrate robot velocity commands Problem: info continuously lost, no new info added. Solution: add info from exterioreceptive sensors.
Panos Trahanias: Autonomous Robot Navigation Kalman Filtering Sensor measurements add new info – PDF in sensor space. Localization knowledge (prior to sensor measurement) is a PDF in state space. Probabilistic Estimation: merge the 2 PDFs Two step process: prediction update
Panos Trahanias: Autonomous Robot Navigation Kalman Filtering Simple observer update
Panos Trahanias: Autonomous Robot Navigation Kalman Filtering Prediction Update
Panos Trahanias: Autonomous Robot Navigation Kalman Filtering Observing with probability distributions
Panos Trahanias: Autonomous Robot Navigation Kalman Filtering Prediction Update where
Panos Trahanias: Autonomous Robot Navigation Kalman Filtering
Panos Trahanias: Autonomous Robot Navigation Kalman Filtering
Panos Trahanias: Autonomous Robot Navigation Kalman Filtering
Panos Trahanias: Autonomous Robot Navigation Kalman Filtering
Panos Trahanias: Autonomous Robot Navigation Bayesian Methods
Panos Trahanias: Autonomous Robot Navigation Bayesian Methods – Discrete Approximations
Panos Trahanias: Autonomous Robot Navigation Bayesian Methods – Discrete Approximations
Panos Trahanias: Autonomous Robot Navigation Bayesian Methods – Discrete Approximations Results
Panos Trahanias: Autonomous Robot Navigation Bayesian Methods – Discrete Approximations Results
Panos Trahanias: Autonomous Robot Navigation Bayesian Methods – Particle Filters
Panos Trahanias: Autonomous Robot Navigation Bayesian Methods – Particle Filters/Resampling
Panos Trahanias: Autonomous Robot Navigation Bayesian Methods – Particle Filters Motion Model
Panos Trahanias: Autonomous Robot Navigation Bayesian Methods – Particle Filters State Belief
Panos Trahanias: Autonomous Robot Navigation Bayesian Methods – Particle Filters Global Localization
Panos Trahanias: Autonomous Robot Navigation Bayesian Methods – Particle Filters Global Localization - Results
Panos Trahanias: Autonomous Robot Navigation Bayesian Methods – Sensor Models Typical Sonar Scan
Panos Trahanias: Autonomous Robot Navigation Bayesian Methods – Sensor Models Histograms
Panos Trahanias: Autonomous Robot Navigation PATH PLANNING
Panos Trahanias: Autonomous Robot Navigation Bug Algorithms Bug1
Panos Trahanias: Autonomous Robot Navigation Bug Algorithms Bug1
Panos Trahanias: Autonomous Robot Navigation Bug Algorithms Bug2
Panos Trahanias: Autonomous Robot Navigation Bug Algorithms Bug2
Panos Trahanias: Autonomous Robot Navigation Bug Algorithms Bug2
Panos Trahanias: Autonomous Robot Navigation POTENTIAL FUNCTIONS
Panos Trahanias: Autonomous Robot Navigation Potential Field Attractive – Repulsive Forces
Panos Trahanias: Autonomous Robot Navigation Potential Field Potential Function
Panos Trahanias: Autonomous Robot Navigation Potential Field Attractive Potential
Panos Trahanias: Autonomous Robot Navigation Potential Field Repulsive Potential
Panos Trahanias: Autonomous Robot Navigation Potential Field BrushFire Algorithm
Panos Trahanias: Autonomous Robot Navigation Potential Field Local Minima Problem
Panos Trahanias: Autonomous Robot Navigation Potential Field Wavefront Planner
Panos Trahanias: Autonomous Robot Navigation Navigation Functions
Panos Trahanias: Autonomous Robot Navigation Navigation Functions
Panos Trahanias: Autonomous Robot Navigation Value Iteration Value Iteration Algorithm Dynamic programming (fast) Creates potential field (run only once per target) Initialization rule Update rule
Panos Trahanias: Autonomous Robot Navigation Value Iteration - Results
Panos Trahanias: Autonomous Robot Navigation OBSTACLE AVOIDANCE
Panos Trahanias: Autonomous Robot Navigation Certainty Grid Representation
Panos Trahanias: Autonomous Robot Navigation VFF – Virtual Force Field
Panos Trahanias: Autonomous Robot Navigation VFF – Virtual Force Field
Panos Trahanias: Autonomous Robot Navigation Polar Histogram
Panos Trahanias: Autonomous Robot Navigation Polar Histogram
Panos Trahanias: Autonomous Robot Navigation Motion Candidate Directions
Panos Trahanias: Autonomous Robot Navigation Traveling Alongside an Obstacle
Panos Trahanias: Autonomous Robot Navigation Steering Reference
Panos Trahanias: Autonomous Robot Navigation VFH – Example Course
Panos Trahanias: Autonomous Robot Navigation CONFIGURATION SPACE
Panos Trahanias: Autonomous Robot Navigation Two-link Manipulator - Workspace
Panos Trahanias: Autonomous Robot Navigation Two-link Manipulator – Configuration Space
Panos Trahanias: Autonomous Robot Navigation Obstacles – Configuration Space
Panos Trahanias: Autonomous Robot Navigation Obstacles – Configuration Space
Panos Trahanias: Autonomous Robot Navigation Obstacles – Configuration Space
Panos Trahanias: Autonomous Robot Navigation Obstacles – Configuration Space
Panos Trahanias: Autonomous Robot Navigation Workspace – Configuration Space
Panos Trahanias: Autonomous Robot Navigation Workspace – Configuration Space
Panos Trahanias: Autonomous Robot Navigation Workspace – Configuration Space
Panos Trahanias: Autonomous Robot Navigation Planar Parallel Mechanism