|
Developing Spatial Sense in a 3D-Block-world |
||||||
Project Description | Previous Work | Algorithm | Discussion |
||||||
AlgorithmThe agent starts off from an arbitrary location and randomly walks around the block world. Every time it moves into a new location - 1) It assigns a label to it and adds it (node) to the exploration tree in its memory. 2) Assuming that it has sensory equiptments on it, checks for neighborhood conditions - possible paths and boundary conditions around the current location. Neighborhood conditions are saved in a consistent manner (clockwise) in its memory as a vector. (fig.2) 3) While doing so it also checks whether it has previously visited any of adjacent locations or not. If it has, makes a connection (edge) between the current and the visited locations or nodes in the exploration tree. 3) Everytime a new node is added to the memory, it runs as 'codimension analysis" of the nodes. Nodes which have least similarity with other nodes are marked as landmark. |
||||||
|
||||||
Details |
||||||
![]() |
||||||
fig. 1 The agents starts off in an arbitrary location. This start location is labeled as "0" is the exploration tree. |
||||||
fig. 2 Neighborhood Evaluation. The Label "-1" stands for not-visited possible paths, "-2" stands for obstacles (not shown in figure) and visited locations have previously assigned labels. |
||||||
fig. 3 The agent randomly walks through the block world sensing neighborhood data and constantly updating the exploration tree in its memory. |
||||||
fig. 4 The partial exploration tree generated by the random walk in the above figure.
|
||||||