Range Only SLAM for Robots Operating Cooperatively with Sensor Networks

Similar documents
Mobile Robot FastSLAM with Xbox Kinect

Robotics. Chapter 25. Chapter 25 1

Understanding and Applying Kalman Filtering

A Reliability Point and Kalman Filter-based Vehicle Tracking Technique

ROBOTICS 01PEEQW. Basilio Bona DAUIN Politecnico di Torino

Static Environment Recognition Using Omni-camera from a Moving Vehicle

DATA ANALYSIS II. Matrix Algorithms

Kristine L. Bell and Harry L. Van Trees. Center of Excellence in C 3 I George Mason University Fairfax, VA , USA kbell@gmu.edu, hlv@gmu.

C# Implementation of SLAM Using the Microsoft Kinect

MAP ESTIMATION WITH LASER SCANS BASED ON INCREMENTAL TREE NETWORK OPTIMIZER

3D Arm Motion Tracking for Home-based Rehabilitation

Robotics. Lecture 3: Sensors. See course website for up to date information.

Wireless Networking Trends Architectures, Protocols & optimizations for future networking scenarios

VISION-BASED POSITION ESTIMATION IN MULTIPLE QUADROTOR SYSTEMS WITH APPLICATION TO FAULT DETECTION AND RECONFIGURATION

WE would like to build three dimensional (3D) geometric. Can Smart Devices Assist In Geometric Model Building?

Visual Vehicle Tracking Using An Improved EKF*

SIMULTANEOUS LOCALIZATION AND MAPPING FOR EVENT-BASED VISION SYSTEMS

Visual and Inertial Odometry for a Disaster Recovery Humanoid

Lecture 2 Linear functions and examples

CE801: Intelligent Systems and Robotics Lecture 3: Actuators and Localisation. Prof. Dr. Hani Hagras

Cluster Analysis: Advanced Concepts

Lecture 5 Least-squares

Kalman Filter Applied to a Active Queue Management Problem

Path Tracking for a Miniature Robot

Multi-Target Tracking with Partially Unresolved Measurements

Course 8. An Introduction to the Kalman Filter

Computational Foundations of Cognitive Science

Automatic Labeling of Lane Markings for Autonomous Vehicles

SAMOS Switching Antenna Monitoring System Applied on Tailings Reservoir On-Line Monitoring Project

Tracking in flussi video 3D. Ing. Samuele Salti

Social Media Mining. Network Measures

Vectors. Objectives. Assessment. Assessment. Equations. Physics terms 5/15/14. State the definition and give examples of vector and scalar variables.

Incremental PCA: An Alternative Approach for Novelty Detection

Effective Use of Android Sensors Based on Visualization of Sensor Information

8. Linear least-squares

Component Ordering in Independent Component Analysis Based on Data Power

Localization of Mobile Robots Using Odometry and an External Vision Sensor

Social network analysis with R sna package

P r oba bi l i sti c R oboti cs. Yrd. Doç. Dr. SIRMA YAVUZ sirma@ce.yildiz.edu.tr Room 130

VEHICLE TRACKING USING ACOUSTIC AND VIDEO SENSORS

Tracking of Moving Objects from a Moving Vehicle Using a Scanning Laser Rangefinder

Measuring large areas by white light interferometry at the nanopositioning and nanomeasuring machine (NPMM)

3D Vision An enabling Technology for Advanced Driver Assistance and Autonomous Offroad Driving

KVM Cable Length Best Practices Guide

A. OPENING POINT CLOUDS. (Notepad++ Text editor) (Cloud Compare Point cloud and mesh editor) (MeshLab Point cloud and mesh editor)

Estimation of Position and Orientation of Mobile Systems in a Wireless LAN

Linear Threshold Units

OPTIMAL DESIGN OF DISTRIBUTED SENSOR NETWORKS FOR FIELD RECONSTRUCTION

Bildverarbeitung und Mustererkennung Image Processing and Pattern Recognition

Methodology for Emulating Self Organizing Maps for Visualization of Large Datasets

TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAA

Data Mining. Cluster Analysis: Advanced Concepts and Algorithms

Data Mining: Algorithms and Applications Matrix Math Review

Manifold Learning Examples PCA, LLE and ISOMAP

A Matlab-based Simulator for Autonomous Mobile Robots

Feature Tracking and Optical Flow

Medical Information Management & Mining. You Chen Jan,15, 2013 You.chen@vanderbilt.edu

Coding and decoding with convolutional codes. The Viterbi Algor

An Introduction to the Kalman Filter

How To Get A Computer Engineering Degree

A Study on SURF Algorithm and Real-Time Tracking Objects Using Optical Flow

Raitoharju, Matti; Dashti, Marzieh; Ali-Löytty, Simo; Piché, Robert

A System for Capturing High Resolution Images

Blind Deconvolution of Barcodes via Dictionary Analysis and Wiener Filter of Barcode Subsections

Video-Rate Stereo Vision on a Reconfigurable Hardware. Ahmad Darabiha Department of Electrical and Computer Engineering University of Toronto

System Identification for Acoustic Comms.:

A Robust And Efficient Face Tracking Kernel For Driver Inattention Monitoring System

Robot Perception Continued

Online Constraint Network Optimization for Efficient Maximum Likelihood Map Learning

Definitions. A [non-living] physical agent that performs tasks by manipulating the physical world. Categories of robots

FastSLAM: A Factored Solution to the Simultaneous Localization and Mapping Problem With Unknown Data Association

Object tracking in video scenes

KALMAN Filtering techniques can be used either for

Cloud Based Localization for Mobile Robot in Outdoors

EECS 556 Image Processing W 09. Interpolation. Interpolation techniques B splines

USING SPECTRAL RADIUS RATIO FOR NODE DEGREE TO ANALYZE THE EVOLUTION OF SCALE- FREE NETWORKS AND SMALL-WORLD NETWORKS

Rotation: Moment of Inertia and Torque

Tracking based on graph of pairs of plots

3D Vision An enabling Technology for Advanced Driver Assistance and Autonomous Offroad Driving

Introduction to Robotics Analysis, Systems, Applications

ExmoR A Testing Tool for Control Algorithms on Mobile Robots

Implementation of kalman filter for the indoor location system of a lego nxt mobile robot. Abstract

Levels of Analysis and ACT-R

Force and Visual Control for Safe Human Robot Interaction

Robust and accurate global vision system for real time tracking of multiple mobile robots

WAN Wide Area Networks. Packet Switch Operation. Packet Switches. COMP476 Networked Computer Systems. WANs are made of store and forward switches.

Sequence. Liang Zhao and Chuck Thorpe. Robotics Institute, Carnegie Mellon University, Pittsburgh, PA flzhao,

Knowledge Discovery and Data Mining. Structured vs. Non-Structured Data

6.099, Spring Semester, 2006 Assignment for Week 13 1

FREE FALL. Introduction. Reference Young and Freedman, University Physics, 12 th Edition: Chapter 2, section 2.5

A Spectral Clustering Approach to Validating Sensors via Their Peers in Distributed Sensor Networks

E190Q Lecture 5 Autonomous Robot Navigation

Geometry of Vectors. 1 Cartesian Coordinates. Carlo Tomasi

Automated Model Based Testing for an Web Applications

What s Left in E11? Technical Writing E11 Final Report

jorge s. marques image processing

Interactive information visualization in a conference location

GOM Optical Measuring Techniques. Deformation Systems and Applications

Demo: Real-time Tracking of Round Object

Analysis of an Artificial Hormone System (Extended abstract)

Transcription:

Range Only SLAM for Robots Operating Cooperatively with Sensor Networs Authors: Joseph Djugash, Sanjiv Singh, George Kantor and Wei Zhang Reading Assignment 16 735: Robot Motion Planning Fall 2007 Presented by Michael Dille Umashanar Nagarajan

Introduction to Paper A mobile robot operating among beacons (ad hoc sensor networ) Robot has beacon too Pioneer I

Introduction to Paper A mobile robot operating among beacons (ad hoc sensor networ) Robot has beacon too Everything communicates using radio Measure range to other beacons using sonar No practical implementations of radio based ranging available The beacons can also move

Extended Kalman Filter (Review) Noise corrupted process: Noise corrupted measurements: Predict (project state forward) Correct (incorporate measurements),0), ˆ ( ˆ 1 u f = T T W W Q A P A P 1 1 + = 1 ) ( + = T T T V R V H P H P H K,0)) ˆ ( ( ˆ ˆ 1 + = h y K = P H K I P ) ( ),, ( 1 1 = w u f ), ( v y = h,0), ˆ ( 1 ] [ ] [ ], [ j i j i u f A =,0), ˆ ( 1 ] [ ] [ ], [ j i j i u w f W =,0), ˆ ( ] [ ] [ ], [ j i j i u h H =,0), ˆ ( ] [ ] [ ], [ j i j i u v h V =

Introduction to SLAM Scenario Landmars & sensor to detect them Localization Landmar locations nown Use successive measurements to derive position Mapping Robot position nown Use successive measurements to determine landmar locations

Introduction to SLAM Simultaneous Localization & Mapping Know neither robot nor landmar locations Use successive measurements to derive position of robot and landmars

Range only SLAM In typical SLAM, get range & bearing (displacement vector) May only get range readings Often, no line of sight Underwater Inside buildings Emergency response: smoy, flame filled areas Sensors: radio, sonar, Range from signal strength, time of flight, etc.

Related: Bearing only SLAM Monocular structure from motion in computer vision Each point in camera image corresponds to a ray in space

EKF Localization (assuming landmar locations nown) Robot state: Position & orientation Motion model: System dynamics, control input, noise Measurement model: Sensing of relative landmar locations, noise In 2 D: ) ( ) ( ) ( 1 v u G F + + = + ) ( ) ( w H y + = + = M M ), atan2( ) ( ) ( 2 2 r i r i r i r i x x y y y y x x H

Extending EKF for SLAM Localize with Kalman filter as before Discover landmars while moving Add landmar locations to state estimate In 2 D: [ ] T = x y θ xl1 yl1... xln yln Need some initial estimate of landmar locations Dreaded data association problem Landmar measurement?

Paper Contribution Comparative study of five different algorithms Just range only localization EKF on robot measuring distances to nown beacon locations Basic range only SLAM Same EKF, beacon locations unnown Extensions Add beacon to beacon measurements to EKF Offline optimization of robot path & beacon locations Robot as virtual node, solve submaps with MDS, patch together

Range only Localization EKF model used in paper: θ Robot state (Position and Orientation): [ x y θ ] T Dynamics of the wheeled robot: x + D cos( θ ) y D θ + 1 = + sin( ) + ν θ + θ where ν is a noise vector, D is the odometric distance traveled is the orientation change Control input vector: u = θ [ ] T D =

Range only Localization EKF measurement model in paper: Range Measurement: rˆ = ( x x b + ( y where rˆ is the estimate of the range from the beacon to the current state, ( x b, yb) is the location of the beacon from which the measurement was received, is the zero mean Gaussian noise. η ) 2 y b ) 2 + η

Range only SLAM Same as general SLAM formalism, just no bearings Use same EKF as localization Add beacon locations to state State vector now: = [ x y θ x y... x y ] T Still need decent initial estimates! b1 b1 bn bn

Range only SLAM To find initial beacon location estimates Drive around a bit and build 2 D probability grid:

Adding Beacon to Beacon Measurements Extending SLAM Beacon to Beacon measurements are used to update the states of the beacons that create the measurement The measurement model is modified to include the beacon to beacon as well as robot to beacon measurements The estimation process then proceeds via a standard application of the EKF

Adding Beacon to Beacon Measurements Improving SLAM Map Uses a post processing step to improve the map that results from a SLAM run Finds the state that minimizes the cost function, which is Mahalanobis distance from SLAM map added to the sum of suares of beacon tobeacon range innovations

Adding Beacon to Beacon Measurements Improving SLAM Map Cost Function Mahalanobis Distance where, (, P) Kalman Filter SLAM estimate at the end of a run; P is the Kalman covariance matrix for the state ( M, P M ) portions of and P that correspond to the beacon locations M i r ij σ 2 b part of the state that corresponds to (x,y) location of the ith beacon range measurement between beacons i and j covariance of the error in range measurements

Adding Beacon to Beacon Measurements Self Localization with Virtual Nodes Adds virtual nodes (different robot locations) as a part of the beacon networ Distances between virtual nodes are calculated using robot odometry and they form edges in the networ

Self Localization If each beacon can obtain measurements to enough of its neighbors, then it is theoretically possible to build a map using only beacon to beacon measurements Self Localization techniues available in literature reuire cliues (fully interconnected subgraphs) of degree four or higher Multidimensional scaling (MDS) is used to determine the relative locations of the cliue nodes

Multidimensional Scaling (MDS) Set of related statistical techniues often used in data visualization for exploring similarities or dissimilarities in data An MDS algorithm starts with a matrix of item item similarities, then assigns a location of each item in a lowdimensional space, suitable for graphing or 3D visualization Applications include scientific visualization and data mining in fields such as cognitive science, information science, psychophysics, psychometrics, mareting and ecology

MDS (of our interest) Given n points in m D space (usually n > 3 for m = 2) distances between these Returns best estimate of locations of points (up to a rigid transformation) Even if some distances are unnown, it can still be applied by optimizing over these

Adding Beacon to Beacon Measurements Self Localization with Virtual Nodes The robot follows a path and the corners (places where it stops and turns) of the path are taen as virtual nodes First cliue appears at the third robot corner At the seventh robot corner, there is enough information in the graph to uniuely localize every beacon

Adding Beacon to Beacon Measurements Self Localization with Virtual Nodes

Results and Summary where, (All in meters) μ : Mean absolute Cross Trac Error (XTE) σ : Standard Deviation RMS : Root Mean Suare error Cross Trac Error : Distance off trac

Results and Summary Localization using Kalman Filter (KF) and the reference ground truth (GT) Location of the beacons is nown apriori

Results and Summary Kalman Filter (KF) SLAM and the reference ground truth (GT) Location of the beacons is unnown at the start of SLAM The path and beacon estimates shown include an affine transform that realigned the local solution into a global coordinate frame

Results and Summary Kalman Filter (KF) SLAM with inter beacon measurements and the reference ground truth (GT) Location of the beacons is unnown at the start of SLAM The path and beacon estimates shown include an affine transform that realigned the local solution into a global coordinate frame

Results and Summary Localization on a map from Kalman Filter (KF) SLAM after offline optimization step The map from Kalman Filter SLAM is used as initial conditions for the optimization process

Results and Summary Kalman Filter (KF) SLAM with beacons initialized through self localization method with virtual nodes The path and beacon estimates shown include an affine transform that realigned the local solution into a global coordinate frame The sudden jumps seen in the Kalman Filter result is an artifact that can be observed when the filter switches its behavior to not only use odometric information but also any range measurements it receives from any initialized beacon

Questions?