[Documentation] [TitleIndex] [WordIndex


  1. Overview
  2. Usage


The dfs_explorer package implements the node explorer.py which is an explorer with depth-first-search-like algorithm for finite worlds for the Large Maps Framework (LaMa). It proceeds as follows:

  1. Go to the first crossing (for example, jockey nj_laser or nj_costmap).

  2. Get a new lama_msgs/Crossing descriptor (robot should be at crossing center), compare this descriptor with descriptors saved in the map, and add a new vertex in the case that the place is considered to be a place that was not already visited.

    • If, on the opposite, the vertex is an already visited one, add an edge to the map and associate as a descriptor, the angle of the exit that was taken to reach this node from the previous node.

      This implies using a localizing jockey (for example, jockey lj_laser or lj_costmap).

  3. Choose the next exit to visit with a preference to visiting an exit of the vertex at which the robot currently is.
  4. Move to that vertex, if necessary (for example, with a combination of nj_escape_crossing and either nj_laser or nj_costmap).

  5. Let the robot escape from the node in the chosen direction (for example with jockey nj_escape_crossing). The edge does not exists yet, set the direction through a topic.

  6. Move to the next crossing (for example, jockey nj_laser or nj_costmap).

  7. Repeat from step 1. until all vertices and all exits are visited.


A test launch file can be found in the lama_test package:

   1 roslaunch lama_test test_dfs_explorer.launch

2024-07-13 13:15