Multi-robot Playground
RandomizedSocialWelfareNode.h File Reference
#include <vector>
#include <random>
#include "ros/ros.h"
#include "nav_msgs/OccupancyGrid.h"
#include "std_msgs/String.h"
#include "std_msgs/Int8MultiArray.h"
#include "multirobotsimulations/CustomPose.h"
#include "multirobotsimulations/Frontiers.h"
#include "visualization_msgs/Marker.h"
#include "Common.h"
Include dependency graph for RandomizedSocialWelfareNode.h:

Go to the source code of this file.

Classes

class  RandomizedSocialWelfareNode
 

Enumerations

enum  ExplorerState {
  state_select_frontier = 2, state_exploring = 3, state_idle = 11, state_exploration_finished = 12,
  state_back_to_base = 25, state_back_to_base_finished = 26, state_compute_centroids = 27, state_waiting_centroids = 28,
  state_set_back_to_base = 30, state_planning = 31, state_set_rendezvous_location = 55, state_navigating_to_rendezvous = 56,
  state_at_rendezvous = 57, state_updating_plan = 58, state_waiting_consensus = 59, state_waiting_centroids_for_plan = 60,
  state_select_new_rendezvous = 61, state_select_frontier = 2, state_exploring = 3, state_idle = 11,
  state_exploration_finished = 12, state_back_to_base = 25, state_back_to_base_finished = 26, state_compute_centroids = 27,
  state_waiting_centroids = 28, state_set_back_to_base = 30, state_planning = 31, state_select_frontier = 2,
  state_exploring = 3, state_idle = 11, state_exploration_finished = 12, state_back_to_base = 25,
  state_back_to_base_finished = 26, state_compute_centroids = 27, state_waiting_centroids = 28, state_set_back_to_base = 30,
  state_planning = 31
}
 

Enumeration Type Documentation

◆ ExplorerState

Enumerator
state_select_frontier 

state responsible to select which frontier cluster to explore.

state_exploring 

state responsible to explore a selected location.

state_idle 

in this state the robot waits for commands.

state_exploration_finished 

this states marks the end of the mission when all frontiers were explored.

state_back_to_base 

this state tells that the robot is going to the initial basestation location.

state_back_to_base_finished 

this state is used to identify when the robot reached the basestation.

state_compute_centroids 

used to wait for the FrontierDiscovery to return frontier clusters.

state_waiting_centroids 

in this state, the robot waits for frontier clusters.

state_set_back_to_base 

in this state, the robot navigates towards the basestation.

state_planning 

in this state, the robot asks for new frontier clusters and also selects which one to explore.

state_set_rendezvous_location 

in this state, the robot starts navigating towards its current sub-team rendezvous location.

state_navigating_to_rendezvous 

in this state, the robot simply navigate towards the assigned rendezvous location.

state_at_rendezvous 

in this state, the robot reached the rendezvous location and can start updating the plan or waiting for the consensus.

state_updating_plan 

in this state, the consensus robot updates the plan and send to the other robots.

state_waiting_consensus 

in this state, the other robots wait for the information from the consensus robot.

state_waiting_centroids_for_plan 

in this state the consensus robot waits for clusters to use as reference updates for new rendezvous locations.

state_select_new_rendezvous 

in this state, the consensus robot sends the new rendezvous locations to all other robots.

state_select_frontier 
state_exploring 
state_idle 
state_exploration_finished 
state_back_to_base 
state_back_to_base_finished 
state_compute_centroids 
state_waiting_centroids 
state_set_back_to_base 
state_planning 
state_select_frontier 
state_exploring 
state_idle 
state_exploration_finished 
state_back_to_base 
state_back_to_base_finished 
state_compute_centroids 
state_waiting_centroids 
state_set_back_to_base 
state_planning