[Documentation] [TitleIndex] [WordIndex

Only released in EOL distros:  


PPExplorer is a an odor oriented exploration algorithm that builds on top of the odor mapping package particle_plume.

The PPE algorithm is in charge of odor oriented exploration and plume tracking. This is accomplished in four steps. (1) Initially a circle of radius r is drawn around the robot and divided into n slices. (2) Next the slices which overlap with obstacles are removed. (3) The slices which contain a percentage of explored area over a certain threshold are then also removed. (4) Finally the cost of each remaining slice is calculated using a cost function. The slice with the lowest cost is chosen and the goal is set. The variables used fore the cost function are the amount of explored area, the angular distance to the odor gradient and the angular distance to the current heading of the robot.




pp_explorer_node is an odor oriented exploration and plume tracking algorithm.

Subscribed Topics

odom (nav_msgs/Odometry) /map (nav_msgs/OccupancyGrid) /map_metadata (nav_msgs/MapMetaData) /visited_cells (nav_msgs/GridCells) /plume (sensor_msgs/PointCloud2) move_base/local_costmap/obstacles (nav_msgs/GridCells) move_base/local_costmap/inflated_obstacles (nav_msgs/GridCells)

Published Topics

debug_cells (nav_msgs/GridCells) pp_goal (visualization_msgs/Marker)


~global_frame_id (string, default: map) ~max_visited_cells_coef (double, default: 0.35) ~max_odor_visited_cells_coef (double, default: 0.50) ~pie_radius (double, default: 0.60) ~pie_slices (int, default: 16) ~find_clearing_sim_steps (int, default: 3) ~visited_cells_weight (double, default: 1.00) ~current_heading_weight (double, default: 0.01) ~odor_weight (double, default: 0.10) ~bubble_radius (double, default: 0.10) ~min_particle_count_difference (int, default: 5) ~move_base/local_costmap/inflation_radius (double, default: 0.20) ~debug_slices (bool, default: false)


Coming soon...

2020-01-11 12:55