290 likes | 364 Views
Spatial Semantic Hierarchy (SSH). What is it? How is it related to robot localization and mapping?. Presentation Structure. Overview of SSH Applications of SSH to robot localization and navigation Discussion. References.
E N D
Spatial Semantic Hierarchy (SSH) What is it? How is it related to robot localization and mapping? CMSC828F-Perceptual Robotics
Presentation Structure • Overview of SSH • Applications of SSH to robot localization and navigation • Discussion CMSC828F-Perceptual Robotics
References • [1] “The Spatial Semantic Hierarchy”, B. Kuipers, AI 119 (2000) pg 191-233 • [2] “An intellectual History of the Spatial Semantic Hierarchy”, B. Kuipers, in M. Jefferies and A. Yeap (Eds.), “Robot and Cognitive Approaches to Spatial Mapping”, Springer Verlag, 2006 • [3] “Local metrical and global topological maps in the Hybrid Spatial Semantic Hierarchy”, B. Kuipers, J. Modayil, P. Beeson, M. MacMahon, and F. Savell, ICRA 2004. • [4] “Towards Autonomous Topological Place Detection Using the Extended Voronoi Graph”, P. Beeson, N. K. Jong and B. Kuipers, ICRA 2005 CMSC828F-Perceptual Robotics
Types of spaces • Visual Space • Surrounding environment • Large-scale Space • Scale larger than the sensory horizon of the agent • Graphical (Diagrammatic) Space • Spatial layout and relations among symbols on paper CMSC828F-Perceptual Robotics
Overview of SSH • A hierarchical description of a cognitive map, consisting of four different levels • Each level defines its own ontology (i.e. types of objects+relations among them) • Each level is grounded in the ones below • Low to high level knowledge organization • Combines qualitative and quantitative information CMSC828F-Perceptual Robotics
SSH Structure (copied from “The Spatial Semantic Hierarchy” paper [1]) CMSC828F-Perceptual Robotics
Vertical Axis • Sensory Level • Control Level • Causal Level • Topological Level • Metrical Level CMSC828F-Perceptual Robotics
Horizontal Axis • Qualitative • Quantitative • Continuous valued variables • Analog models of space CMSC828F-Perceptual Robotics
Control Level • Provides an abstraction from the continuous sensory input and motor output to discrete states • Agent representation includes a set of control laws, a selection method and termination conditions for each control law • Agent, environment and control law form a continuous dynamical system CMSC828F-Perceptual Robotics
States • Locally distinctive state is a local maximum state with respect to a distinctiveness measure • Possible distinctiveness measures • equidistance from nearby obstacles (hill-climbing control law case) • sudden change in trajectory (trajectory-following control law case) CMSC828F-Perceptual Robotics
Control Laws • Hill-climbing control laws : bring the agent to a locally-distinctive state from any state within the local neighborhood • Trajectory-following control laws : bring the agent from one distinctive state to the neighborhood of the next CMSC828F-Perceptual Robotics
Control law selection • Many different strategies • Rule-based system • Decision-tree, based on sensory input • Combination of multiple laws using fuzzy control, potential field methods etc. • Smooth transitions between control laws can be implemented with weighted average of appropriateness measures. CMSC828F-Perceptual Robotics
Local 2-D geometry (1) • Different methods for map-building and localization • Occupancy grids • Split space into cells • Each cell holds a number containing the probability of being occupied • Sensory target map • Identify and localize objects • Size of the maps depends on the number of objects CMSC828F-Perceptual Robotics
Local 2-D geometry (2) • Model the path as a “generalized cylinder” • Different characteristics of the cylinder might be known with different accuracy/confidence • Good to incorporate weak metrical information with strong one CMSC828F-Perceptual Robotics
Guarantees at the control level • Alternating trajectory-following and hill-climbing control laws using the following closure criteria • For all states, there exist a trajectory-following control law (no dead ends) • For all trajectory-following control laws executed at an appropriate state, there exist at least one hill-climbing control law available CMSC828F-Perceptual Robotics
Causal Level • Action A: Sequence of control laws taking the agent from a distinctive state to another • View V: Description of the sensory input vector s(t) • Schema: A tuple (V,A,V’) • Declarative meaning/ Situation calculus • Procedural meaning/ Stimulus-response pair • Routine: Set of schemas CMSC828F-Perceptual Robotics
Situation Calculus (1): Overview • First-order language extended with an extra situation argument • Holds(V,s0) = view V is observed in situation s0 • “do” function applies an action to a situation to yield a new situation • “result(A, s0)” denotes the new situation after applying action A to situation s0 CMSC828F-Perceptual Robotics
Situation Calculus (2) • Action representation • Used in AI Planning • Resulting planners are efficient if domain specific search control knowledge is used CMSC828F-Perceptual Robotics
Action categorization • Two (rough) categories: turns and travels • Turn: Leaves the agent at the same place • Travel: Takes the agent from one place to another • Also depends on the motor and sensor capabilities of the agent CMSC828F-Perceptual Robotics
Topological Level • Describes the environment as a collection of • Places eq. to zero-dimensional points • Paths eq. To one-dimensional subspaces (lines) • Regions eq. two-dimensional subset of space, i.e. sets of places binded together • Also exist topological relations andaxioms • Abduction is used to find places and paths from views and actions CMSC828F-Perceptual Robotics
Hierarchy in Topological Level • There are multiple topological maps with different granularity. • Abstraction region represents the set of places that is abstracted to a single node in a higher level map • Upward mapping: Each node of the lower lvl corresponds to its abstraction region • Downward mapping: Inverse procedure CMSC828F-Perceptual Robotics
Topological relations • At(view, place) : view seen at place • Along(view, path, dir) : view seen along path in direction dir • On(place,path) : place on path • Order(path,place1, place2, dir) : order on path from place1 to place2 is dir • Right_of(path,dir, region)/left_of : path facing direction dir has region on its right/left • In(place, region) : place is in region CMSC828F-Perceptual Robotics
Metrical Level • A global 2-D analog representation of the world • Not necessary for the SSH to work • Can lead to more accurate global localization, when perceptual aliasing (i.e. distinct places appear similar) is present CMSC828F-Perceptual Robotics
Metrical Level Creation Problems • Useful states of knowledge might not be expressible as global coordinates • “around the block” and “walking in circles” problem • High requirements in space and time • Possible solution is to use a loosely-coupled collection of local “patch” maps CMSC828F-Perceptual Robotics
Extensions of SSH • Combine large and small-scale perceptual space • SSH treats perception as a black-box • Better definition of distinctive states • Hill-climbing is unnecessary in some cases • Connect SSH with SLAM CMSC828F-Perceptual Robotics
Hybrid Spatial Semantic Hierarchy • Create a local perceptual map based on SLAM methods • Use the local map for localization • Identify gateways, i.e. places where control shifts from motion between places to localization within a neighborhood • Identify path fragments connecting distinct places • Create a local topology that describes how directed path segments join at a place CMSC828F-Perceptual Robotics
Advantages of Hybrid SSH • Hill-climbing not required • More accurate identification of places using local topological and perceptual map CMSC828F-Perceptual Robotics
Questions? CMSC828F-Perceptual Robotics
Thank you CMSC828F-Perceptual Robotics