Mobile robotics II Key points: • Topological and geometric maps • Varieties of spatial representations • Relating sensing to space • Localisation: determining and updating • Learning maps • Simultaneous localisation and mapping Grid representation • Can use ‘wave front’ to find route Voronoi diagram Geometric maps Topological maps • Can represent landmarks and the routes between them as nodes and edges in a graph • Edges can represent motor action needed to get from one node to the next, or direction, distance, path convenience etc. • Can then use standard AI graph search methods to find route from start to goal Advantages of topological maps: • Can describe location of robot and objects in its world as a configuration space • For mobile robots, usually collapse 6 d.o.f. to 2 d.o.f. – assumes robot moves on ground plane – can rotate on spot (so direction not important) – only obstacle location matters • Expand actual obstacles by robot size • Navigation then involves finding routes through freespace Topological Raw sensor Store few data locations • Only sparse data storage • Representation matches problem description: e.g. instruct robot to move between discrete locations • Convert free space to graph by e.g. skeletonisation – edges are equidistant locations from obstacles • Recognition only requires consistency, not accuracy • Can find routes using graph search, as for topological map • Can extrapolate between known locations Extract features Store continuous links Connect by raw motor action Connect with some metric information Make Nodes have Use sensor inferences global model between nodes position Advantages of metric maps • Can derive novel shortcuts Figures from Murphy (2000) Relating sensing to space • Some sensors provide metric information almost directly e.g. range finders • Others are good for distinctive landmarks but hard to convert to metric layout e.g. vision • Main problems are – aliasing (different places sometimes look the same) – variability (same place sometimes looks different) • Common representation to fuse sensor/motor data Metric Absolute Convert to Continuous spatial data representation metric Localisation Relating sensing to space • Tracking movement (commands or odometry) to know where you are can help against aliasing and variability problems • Recognising where you are from external cues can correct for the cumulative error of dead-reckoning • Note that metric approach fuses the two sources of data in common representation • ‘Lost robot problem’: can you recognise where you are when switched on? • Alternatively, given model of environment, what position or node is the most probable, based on the current sensory input? • Essentially same as visual recognition problem in previous lectures, and can use same Bayesian approach i.e. p( s | z ) = p( z | s) p( s) ∑ p( z | s) p( s) where s is robot location and z is sensor input and have been given or have learned p(z|s) and p(s) s Initial estimate of position and variance Updating the localisation estimate v1 Updating the localisation estimate s1 • Other methods maintain multiple location hypotheses with different probabilities Measured position • ‘Lost robot’ could also use active means to confirm location – i.e. does movement produce the expected sensory consequence? • More generally, current position estimate can be function of previous estimate, expected result from moving, and current input • Suggests a Kalman filter approach: estimate current state of system based on previous state, model and measurement, all of which are noisy New estimate of position and variance merging prediction and measurement vm2 v2 m2 s2 s2’ v2’ Predicted position after movement v3 vm3 m3 s3’ s3 • Suggested interpretation of ‘place cells’ found in the rat brain v3’ Learning the map E.g. Occupancy grid approach: Assuming robot knows where it is in grid, sensory input provides noisy information about obstacles, e.g. for sonar III I r R II probability of given sonar measurement (z) R − r β − α = + 2 if grid element in region I is occupied (O) R β p ( z | O) p (O) p ( z | O) p (O) + p ( z |~ O) p (~ O) where p(O) will depend on previous measurements Using Bayesian approach p (O | z ) = Variants on SLAM: Simultaneous localisation and mapping • Usually not true that robot knows (with certainty) its position while moving around to build the map • But map built so far can be used to help correct localisation estimate t Aim to merge all past sensor data: z = zt , zt −1 ,..., z0 t and movement data: u = ut ,ut −1 ,...,u0 to obtain both current position st and map m Use a Bayes filter sensor model motion model p ( st , m | z t , u t ) = p ( zt | st , m) ∫ p ( st | ut , st −1 ) p ( st −1 , m | z t −1 , u t −1 )dst −1 But – Only weak convergence result – Runs off-line, i.e. gather all data then process – Only maintains single maximum likelihood map Extended Kalman filter (e.g. Dissanayake et al 2001) – Proven theoretically to converge on true map – Maintains uncertainty estimates – Can be operated incrementally But – Assumes gaussian noise (which is unlikely) – Can’t deal with aliasing (which is common) – Only tractable with limited number of features normalisation factor Further reading Summary Expectation maximisation (e.g. Thrun et al 1998) – Deals explicitly with aliasing: uses hill-climbing to find the most likely map based on the possible paths of the robot given the sensor data – Makes no assumptions about noise distributions Variants on SLAM: • There are sound theoretical approaches to path planning, localisation, map building and SLAM • Problems lie in application to real, limited, noisy, dynamic robots and environments • Best approach is then dependent on task, sensors and actuators • ‘Hybrid’ solutions are often useful Murphy, R. (2000) Introduction to AI Robotics MIT Press Filliat, D. & Meyer, J-A (2003) Map-based navigation in mobile robots: I. A review of localization strategies Cognitive Systems Research 4:243-282 Thrun, S. (2002) Robotic Mapping: A survey http://www-2.cs.cmu.edu/~thrun/papers/thrun.mapping-tr.html Dissanayake, G. et al. (2001) A solution to the simultaneous localisation and map building (SLAM) problem. IEEE Transactions on Robotics and Automation 17:229-241 Thrun, S. Fox, D. and Burgard, W. (1998) A probabilistic approach to concurrent mapping and localization for mobile robots Autonomous Robots 5:253-271 Moser EI, Paulsen O (2001) New excitement in cognitive space: between place cells and spatial memory. Curr Opin Neurobiol. 11:745-51.