The Wake Up Robot problem
We define the wake up robot problem as follows:
The solution overviewIn order to solve this problem, the robot creates a forest of search trees that represent possible meetpoint locations and edge traversals. The robot then traverses any edge to its destination meetpoint. This destination meetpoint is used to eliminate those possible meetpoint locations in the search forest that do not match. Similarly, the traversed edge is used to eliminate non-matching edge possibilities. The remaining possible locations are expanded upon to make an additional row of the search forest. The robot traverses its second edge, making either a "right" or "left" turn relative to its arrival edge and driving to a second destination meetpoint. The second traversed edge and destination meetpoint are used to eliminate non-matching possibilities in the search forest. In addition, the robot can make use of the turn direction information to eliminate impossible paths in the search forest. The process of path traversing and search forest pruning and expansion is continued in a similar fashion to this second edge. If at any time the list of possible locations is reduced to one, and the robot has enough information to determine its environment frame's relation to the solution meetpoint's frame, then the localization is completed successfully. The obvious failing of this procedure is that its completeness relies entirely on the existence of some uniqueness in the environment such that the search forest pruning phase will eventually leave only one possible location. Therefore, it is important to detail explicitly that information which provides the uniqueness in the environment.
Uniqueness in the Hierarchical AtlasThe data encoded in the atlas can be categorized as feature map data and topological data. TopologyThe topological data stored at a meetpoint consists of a single value: the average of equidistant minima distances. Edge angle information is also available, and we plan to make use of that data in the future; for now, the edge angle information is not used. (See discussion here) The topological information for a given edge consists of the straight line coordinate and accumulated travel distances, both of which are derived from dead-reckoning.Feature MapsThe feature map information is stored as two directional edge maps for every GVG edge.
Definitions and datastructures
In order to describe the details of the process, some definitions are required:
The Algorithm
Building the search forest
|
A Simple Illustrative Example
Search Depth 0:The robot is placed in the environment represented by the atlas above, with nodes {0,1,2,3}. Nodes 0 and 1 are indistinguishable, as are nodes 2 and 3. The robot drives to node 0, is given the atlas, and is instructed to localize. The environment and initial state of the Match Subgraph and Search Forest are shown below. The robot drives out on edge 0 of node 0.
Search Depth 1:The robot arrives at edge 0 of node 1. Node matching is used to eliminate Search Nodes for candidates 2 and 3. Edge matching is used to eliminate Search Nodes for candidates 1 and 0, shown below with the mismatched distances marked.
The remaining active candidates at depth 1 are expanded upon, creating candidates at depth 2. The votes for turning left or right are collected from the active candidates at depth 1. For this example, let us say the result is to turn right (R). The robot departs on edge 1 of node 1.
Search Depth 2:The robot arrives on edge 2 of node 0. The node and edge matching eliminate candidates 3 and 2. The edge turn direction eliminates candidate 1. Since only one active candidate remains at depth 2, the robot is located at that candidate node (in this case 0). The robot now has the knowledge of the true nodes and edges that it has traversed from the beginning of the procedure. This knowledge can be used to update the Atlas.
|
Go back to: H-SLAM Experiments Page | H-SLAM page
Jump to: People | Robots | Research | Events | Projects | Education | Papers | Software | Links
© Copyright 2002 Sensor Based Planning Lab, Carnegie Mellon University. All Rights Reserved.
![]() |
![]() |
|