# The COMRADE System for Multirobot Autonomous Landmine Detection in Postconflict Regions

Authors: Prithviraj Dasgupta; José Baca; K. R. Guruprasad; Angélica Muñoz-Meléndez; Janyl Jumadinova
Journal: Journal of Robotics
 (2015)

---

## Abstract

We consider the problem of autonomous landmine detection using a team of mobile robots. Previous research on robotic landmine detection mostly employs a single robot equipped with a landmine detection sensor to detect landmines. We envisage that the quality of landmine detection can be significantly improved if multiple robots are coordinated to detect landmines in a cooperative manner by incrementally fusing the landmine-related sensor information they collect and then use that information to visit locations of potential landmines. Towards this objective, we describe a multirobot system called COMRADES to address different aspects of the autonomous landmine detection problem including distributed area coverage to detect and locate landmines, information aggregation to fuse the sensor information obtained by different robots, and multirobot task allocation (MRTA) to enable different robots to determine a suitable sequence to visit locations of potential landmines while reducing the time required and battery expended. We have used commercially available all-terrain robots called Coroware Explorer that are customized with a metal detector to detect metallic objects including landmines, as well as indoor Corobot robots, both in simulation and in physical experiments, to test the different techniques in COMRADES.


---

## Body

## 1. Introduction

Humanitarian demining is a crucial effort for the safety and sustenance of human lives in postconflict regions. Unfortunately, recent surveys on landmine monitoring report that humanitarian demining efforts are considerably lagging behind antipersonnel landmine planting activities due to several technological and economic reasons [1]. This results in enormous loss to human lives; for example, in 2010 alone, explosions of landmines and similar devices resulted in 4,191 casualties, with civilians accounting for 70% of the casualties. One the major technological challenges in humanitarian demining is to detect landmines rapidly and with reasonable accuracy, while reducing the number of false positives. We envisage that automating landmine detection operations using multiple, off-the-shelf autonomous robots will provide a reasonably accurate yet economical solution to the problem of detecting landmines. Towards this objective, we describe a multirobot system called COMRADE (Cooperative Multirobot Automated Detection) System for humanitarian demining. The central objective of COMRADES is to develop novel coordination techniques between multiple low cost, mobile robots, which enable them to autonomously and collaboratively detect landmines with high accuracy in postconflict regions. COMRADES includes techniques that allow each robot to explore an initially unknown region while searching for landmines, recognize landmine-like objects on its sensors, share and fuse the landmine-related sensor information with other robots, and coordinate its actions with other robots, so that multiple robots can converge on the object to analyze and confirm it as a landmine. In this paper, we present the description and experimental results from different techniques for coverage, task allocation, and multisensor information aggregation and sensor scheduling using multiple robots that we have developed as part of COMRADES. Specifically, we describe the following aspects of multirobot autonomous landmine detection in COMRADES.(i)
A distributed area coverage technique allows a set of robots to dynamically partition an initially unknown environment into a set of nonoverlapping regions and search for landmines within each region. The techniques are robust to individual robot failures and are able to scale with the number of robots and size of the environment.(ii)
A distributed information fusion technique aggregates landmine-related sensor information from different robots using a prediction market-based technique and a decision making technique that uses the fused information to allocate additional robots (sensors) to rapidly classify the object.(iii)
A multirobot task allocation (MRTA) technique uses a spatial queueing model that enables a set of robots to determine a suitable order or perform a set of landmine detection related tasks while reducing the time and energy spent in performing the tasks. To realize the above techniques, we have customized commercially available all-terrain robots called Coroware Explorer with a metal detector to enable them to detect metallic objects including landmines. We have also developed a user interface that allows shared autonomy between robots and humans. Humans can visualize information about the health and status of the robots and their progress in the landmine detection operation on a control station and selectively supersede their autonomous operations by remotely controlling the movement and some operations of the robots. We have verified the operation of the robots in different types of outdoor terrain and different operational conditions. We have also used indoor robots called Coroware Corobots, which have very similar features to the outdoor Explorer robots, both in simulation and within an indoor arena to test the different techniques used in COMRADES. Our results show that our proposed techniques offer suitable means to rapidly perform autonomous landmine detection with inexpensive robots.The rest of our paper is structured as follows. In the next section we provide an overview of existing research on robotic landmine detection. In Section3, we describe the main features of our proposed system, the robots and the landmine detector used, and the user interface. The specific algorithms, techniques, and results related to the three main technical aspects of COMRADES, distributed area coverage, distributed task allocation, and information fusion, are addressed in Section 4 and finally we discuss future directions of our work and conclude.


## 2. Related Work

Autonomous landmine detection using robotic systems has been an active research topic over the past decade. Excellent reviews of the state-of-the-art techniques in robotic landmine detection are available in [2, 3]. The research in this topic can be divided into three major directions: designing robots attached with suitable sensor devices to detect and possibly extract landmines, developing data and information fusion techniques to improve the accuracy of detecting landmines, and computational techniques to coordinate multiple robots and present the information collected by the robots in a structured and visualizable format to a human supervisor.Much of the recent research on autonomous landmine detection has been concentrated on developing robotic systems for detecting landmines; most of these systems consist of a single robot attached with appropriate sensors for landmine detection. For example, some of these robots include a mechanism mounted on small robot platforms to flail the ground and detonate landmines along with vegetation clearing tools [4]. Many deployed robotic systems for landmine detection rely on teleoperation rather than autonomy. Examples of such systems include a remote operated vehicle called MR-2, the enhanced teleoperated ordnance disposal system (ETODS), and TEMPEST robot. These robots benefit from the improved precision in detecting and neutralizing landmines due to a human’s presence in the loop, but they require humans to be in the vicinity of landmines to teleoperate the vehicle. Later improvements to some of these systems such as the MR-2 have added partial autonomy in navigation and increased the teleoperation range to 5km using feedback sensors. In contrast to these larger robots, researchers have also investigated smaller robots that are highly agile and have a small footprint and low weight, to reduce the risk of accidental explosion of a landmine. Examples of such robots are the Ares, Shrimps, Pemexs, Dervishs, and Tridem robots and legged robots such as the AMRU, Shadow Deminer, and COMET [3]. Despite their agility, smaller robots are limited in the weight of sensors that they can carry on board and are not suited for heavier, more robust sensors like ground penetrating radar (GPR) or large-coil metal detectors. To accommodate such sensors, robots such as the Titan [5], Gryphon [6], mine detection robot, and mine hunter vehicle (MHV) [3] have been developed. Most of the robots discussed above are for detecting and locating landmines. In contrast, the PEACE robot [7] and a mechanical hand called the Minehand [6] have been developed mainly to excavate detected landmines. Researchers have also proposed unmanned aerial vehicles (UAVs) in landmine detecting robotic systems to aid in terrain mapping before deploying ground robots [2] or to unobtrusively detect landmines using a conceptual system of sensors attached to cables suspended from UAVs [8].For detecting landmines, a wide variety of sensors including metal detectors (MD) [9], ground penetrating radar (GPR) [10, 11], infrared cameras [12], and chemical sensors for detecting plumes emanating from landmines [13] have been proposed. For most research as well as commercially deployed applications, metal detectors, either individually or in combination with GPR [6, 14], are the sensors of choice, as they provide reasonably accurate source localization and are relatively straightforward to acquire as off-the-shelf components and integrate on robots. For this reason, we have used metal detectors on the robots for detecting landmines in our system.Yet another important aspect of landmine detection is fusing sensor readings obtained by multiple sensors. The Joint Multisensor Mine-Signatures project was one of the earliest research efforts to collect landmine detection data using multiple sensors [15]. Bloch et al. [16] have proposed several sensor fusion techniques based on Dempster-Shafer theory including techniques for incorporating human confidence values with the data collected by sensors [17]. A multisensor demining robot consisting of metal detector, an infrared sensor, and a chemical sensor is described in [18]. In [11], the authors report that Bayesian inference techniques for fusing data using multiple sensors, metal detector, GPR, infrared camera, and magnetometer, can significantly improve the detection rate of landmines. The Advanced Landmine Imaging System (ALIS) uses signatures from metal detectors and GPR to more accurately locate deep mines, although the sensors are operated manually and their signatures are inspected manually as well. This idea has been extended to robotic landmine detection by collecting data from a metal detector array and GPR mounted on a single robot and using a combination of Bayesian inferencing and clustering algorithms depending upon the context of the collected data, to get improved detection rate of landmines [19]. Across the world, several recent projects for humanitarian demining using robots are also utilizing multiple sensors to perform landmine detection more accurately. The ongoing TIRAMISU project in the European Union [20] proposes to use multisensor data fusion techniques for combining information from a metal detector and a chemical sensor [21] to improve the location and detection accuracy of landmines. In [22], authors describe field tests with the ALIS and Gryphon systems while using only metal detectors and metal detectors along with GPR, for landmines buried in different types of soil in test mine-fields in Croatia. Similarly, in [23], the author describes a mechanical system equipped with nuclear detectors for measuring gamma radiation and backscattered thermal neutrons, which is planned to be deployed in Libya. The challenges reported in these projects include accurately localizing a landmine’s depth and mitigating the false alarm rate subject to the probability of detection of the sensor used to detect the landmine. Soil composition and clutter in the soil are also important factors affecting the accuracy of landmine detection [22].Recently, some researchers have proposed using multirobot systems for landmine detection [22, 24, 25]. The clear advantage afforded by multiple robots is the ability to include sensors of different types on different robot platforms and making the system robust against the failure of single or multiple robots. In this direction, the distributed field robot architecture (DFRA) [25] proposed a software framework for the coordinated operation of an aerial and a wheeled ground robot with visual and thermal sensors to detect landmines, while in [24], the authors included wheeled, legged, and aerial robots using a combination of GPR, metal detectors, and vapour sensors for landmine detection. Both these works are mentioned to be preliminary research and mainly focus on a suitable software architecture for integrating multiple robots into a single system for landmine detection. Our work in this paper is mainly along this direction of coordinating multiple robots to perform landmine detection with a focus on specific techniques and algorithms that can be used by the robots for performing various aspects of autonomous landmine detection.


## 3. Description of the COMRADE System

The central objective of the COMRADE (COoperative Multi-Robot Automated DEtection) system for humanitarian demining is to develop novel coordination techniques between multiple low cost, autonomous, mobile robots which enable them to collaboratively detect landmines in postconflict regions. The robots used in the COMRADE system are off-the-shelf, relatively inexpensive, autonomous robots that are equipped with appropriate sensors for detecting landmines. We consider three main candidates for sensors: metal detectors (MD), IR-based multilocator device, and ground penetrating radar (GPR). The costs, accuracy, and capabilities of the different sensors are given in Table1. Because of the differences between sensors across these three factors, it is important to deploy the sensors in a region based on the possibility of existence of landmines and risks to human lives in that region. For example, in low-risk, low-incidence areas, more robots with low cost/low accuracy sensors (e.g., MD only) can be deployed using loosely coordinated robot teams that offer very coarse guarantees on the time required to confirm a detected object as a landmine. On the other hand, in a high-risk, high-incidence area, it would make sense to include more accurate and more expensive sensors, using tightly coupled robot teams so that a potential landmine could be confirmed rapidly. To achieve this in the COMRADE system, the area of interest (AOI) is classified by human experts into subareas based on landmine incidence possibility and risks to human life, and robots with appropriate sensors are deployed in each subarea. An example classification of an AOI is given in Table 2 and a diagram showing the deployment of robot teams based on the AOI classification is shown in Figure 1. As shown in Figure 1, for high-risk areas, the entire AOI is covered using all sensor types. For moderate-risk areas, as a trade-off between landmine detection costs (time and energy expended in detection) and accuracy, higher accuracy sensors are deployed at a certain location only when a lower accuracy sensor has detected a suspicious object at that location. If 100% detection is required, the entire AOI can be classified as high-risk area to ensure that it is covered at least once by every sensor. For the sake of legibility, in the rest of the paper, we refer to the subarea in which a team of robots is deployed as their environment and consider algorithms for coordinating the robots that are only within that subarea.Table 1
Costs of different types of landmine detection sensors in the COMRADE system.
Sensor Type
Cost (USD)
Prob. of Detection/Material Detected
Metal Detector (MD)
$100–$200
0.2–0.7/only metal
Infra-red based Multi Detector (IR)
$2,000–$5,000
0.4–0.8/metal and plastic
Ground Penetrating Radar (GPR)
$20,000–$30,000
0.5–0.1/metal and plasticTable 2
Classification of different types of AOI in COMRADES depending on risk to human lives.
Type of AOI
Risk Category
Number and Type of Robots
High Traffic, low chance of landmine
Low
Individually moving robots mainly with MD
Moderate traffic, high chance of landmine
High
Tightly coupled teams – most MD, some IR, few GPR
Low traffic, high chance of landmine
Moderate
Individually moving robots – some MD, some IR, few GPRFigure 1
General schematic of the COMRADE system for landmine detection using multiple, autonomous, and mobile robots.We consider an initially unknown environment whose boundaries are known, but the locations of obstacles within the environment are initially not known or known with inaccuracies. The environment contains landmines as well as nonlandmine objects that are buried underground and can be detected by the landmine detection sensors on the robots. These objects are together referred to as objects of interest and their locations are not knowna priori. When a robot is in the vicinity of an object of interest, we assume that the robot is appropriately positioned, so that the object’s signature can be registered on its detection sensor. We refer to the operations performed by a robot to determine the signature of a buried object of interest using its landmine detection sensor as a task. The objective of the robots is to search for landmines using their landmine detection sensors. When an object of interest is detected on a robot’s sensor, it calls other robots to the location at which the object was detected to analyse the object’s signature using the other robots’ sensors. Finally, the data collected from the object of interest by the robots has to be fused so that the object can be classified as a landmine or nonlandmine. To realize these activities, the robots in COMRADES have to perform three major functions. (1) Distributedly cover the free space in the environment to search for objects of interest. (2) For each robot, determine a schedule or order to perform tasks it is aware of, so that the cost of the overall schedule in terms of energy expended by the robots is reduced. The set of tasks can change dynamically as robots discover new objects of interest. (3) Fuse the information at an object of interest obtained by different robots to classify it as a landmine or nonlandmine. The algorithms for realizing these functionalities within COMRADES are described in Section 4.


### 3.1. COMRADES Robots

We have used two robots called the Explorer and Corobot, manufactured by Coroware Inc. Both robots are four-wheeled and use a skid-steer mechanism for maneuvering. The Explorer robot has rugged construction with a higher clearance and is suitable for outdoor navigation over rough terrains, while the Corobot robot is a lighter, scaled-down version of the Explorer robot and more suited for indoor usage and testing purposes. Photographs of the Explorer and Corobot robots used in COMRADES are shown in Figure2. Each robot is equipped with an on-board computer, an AMD Athlon Dual Core Processor 5050e running at 2.6GHz with 1.87GB of RAM under Windows XP. Both robots’ on-board sensors include a color VGA Webcam capable of 2 MP resolution, Wi-Fi to communicate with the control station, and a Hokuyo URG-04LX-UG01 laser rangefinder with a detection range of 2cm to 4m and a sweep angle of 240∘.Robots used in COMRADES along with their sensors. (a) Explorer robot, (b) Corobot robot.
(a)
(b)The Corobot robot is equipped with a Hagisonic Stargazer localization device that uses IR-based positioning using overhead markers to determine the location and heading of the robot with an accuracy of ±2 cm. To avoid obstacles at close proximity, the Corobot robot is also fitted with two cross-beam IR sensors mounted on the front bumper, one IR sensor on each side, oriented sixty degrees from the front of the vehicle; the IR sensors provide proximity measurements within a range of 10–80 cm. For the Corobot robots, we used their Webcams to detect specific objects or marks on the ground corresponding to virtual landmines due to the complications in using landmine detectors such as metal detectors in indoor environments (e.g., inside buildings with metal frames).Additional on-board sensors on the Explorer robot include an inertial measurement unit (IMU) and a Garmin GPS16x LVS differential GPS that provides localization with an accuracy of ±3 m. To localize the robot, a Kalman filtering technique was used to combine the GPS, IMU, and encoder readings, resulting in a localization accuracy of ±1 m. (Techniques to fuse localization data from multiple sensors [19] can be used to further improve the localization accuracy of detected landmines.) The Explorer robots were also customized with a metal detector attached with a fixed arm to the front of the robot, as described in Figure 2.


### 3.2. Metal Detector System

The metal detector (MD) system used in COMRADES consists of an Infinium LS Metal Detector manufactured by Garrett Inc. attached to a fixed, forward facing arm on the Explorer robot. The MD is designed to work in moist and heavily mineralized environments. The device has been customized and integrated on the Explorer robot via a USB interface to detect landmines over different environments such as grass, snow, and rock based surfaces, as shown in Figure3. The metal detector implements pulse induction (PI) technology which works by sending short (50 μs), high current (20 A) pulses to a search coil. It then listens for the “echo” from a metallic object. This echo is actually the residual magnetic field induced in an object near the coil and changes the decay rate from the natural decay of the coil. If there is no metal near the coil this pulse will decay rapidly and predictably. When metal is near the coil it will decay at a different rate than the natural decay. The difference between those two times indicates the presence of metal. The slope rate of the curve will indicate how strong the signal is from the metal. An advantage of the pulse induction technology over other comparable technologies is that it is affected very little by mineralization in soil and water which means it can be used in a broader range of soil types and locations.Figure 3
The Explorer robot searches for landmines in different types of environments. It is possible to scan areas covered by grass, snow, and rocks due to the characteristics of the MDS.To verify the operation of the MD, we conducted a simple experiment; we used a mockup landmine with a very little amount of metal in its construction, shown in Figure4(a). Figure 4(b) shows the metal detector coil placed on the landmine when it is placed on the surface and underground. Figures 4(c) and 4(d) show the signal strength from the metal detector and the standard deviation error when the mockup landmine is placed at different depths below ground ranging from 0 to 100 mm, directly under the coil of the MD. The strength of the signals shows that the MD used is able to detect the landmine and isolate it from nonmetallic material despite its low metal content.(a) A real action paintball mine is used to simulate mines made with few metallic parts. (b) Landmine has been buried 100 mm in soil with the purpose of mine detection analysis. (c) Metal detector raw data for different buried depths of the paintball mine. (d) Standard deviation error for different depths at which the paintball mine is buried.
(a)
(b)
(c)
(d)Controllers for a repertoire of low-level behaviors such as obstacle avoidance, wandering or random walk, boundary following (both physical and virtual boundaries), and mine avoidance were programmed in C++ on each robot. These behaviors are utilized for implementing more complex coordinated operations for coverage and task allocation on multiple robots, which are described later.


### 3.3. Graphical User Interface

A graphical user interface (GUI) has been designed using Java to interact with a team of physical robots during a mission of collective detection of landmines. The primary goal of the GUI is to visualize in real-time the state of a mission including the position and current status of the robots, their available battery power, and the location of potential landmines detected by robots, as shown in Figure5(a). The operator can also command robots to do specific actions through the GUI such as to abort its current operation and navigate to a specific location in the environment, recall robots to the base station, and stop and restart the robots. Figure 5(a) shows a snapshot of an experiment involving two physical robots deployed in an indoor environment of 3.5×5 square meters and the corresponding state of the GUI. The paths followed by robots are dynamically recorded and highlighted, and the landmine-like objects detected by robots are represented with red spots in the GUI.(a) Snapshot of the COMRADES graphical user interface. The image illustrates a panorama of the experimental environment using two Corobot robots. After5 minutes of exploration the robots have detected 4 landmines shown by red circles. The path followed by the robots is shown by the green trail. (b) Communication architecture of the COMRADE system. Dotted lines indicate wireless communication via Wi-Fi between the robots and the robot server at the control station.
(a)
(b)Every two seconds each robot transmits data such as its pose and battery state to the control station. When a landmine-like object is detected the robot sends the estimated position of such object. Landmine-like objects are represented in indoor experiments by red pieces of paper detectable by the robots’ camera. The communication between the robots’ server and the GUI is established through TCP ports. The robot server periodically updates the state of robots to the GUI. Each robot receives and transmits data to the robot server located at the control station via Wi-Fi, as shown in Figure5(b). Videos showing the operation of COMRADES along with its GUI are available at [26].


## 3.1. COMRADES Robots

We have used two robots called the Explorer and Corobot, manufactured by Coroware Inc. Both robots are four-wheeled and use a skid-steer mechanism for maneuvering. The Explorer robot has rugged construction with a higher clearance and is suitable for outdoor navigation over rough terrains, while the Corobot robot is a lighter, scaled-down version of the Explorer robot and more suited for indoor usage and testing purposes. Photographs of the Explorer and Corobot robots used in COMRADES are shown in Figure2. Each robot is equipped with an on-board computer, an AMD Athlon Dual Core Processor 5050e running at 2.6GHz with 1.87GB of RAM under Windows XP. Both robots’ on-board sensors include a color VGA Webcam capable of 2 MP resolution, Wi-Fi to communicate with the control station, and a Hokuyo URG-04LX-UG01 laser rangefinder with a detection range of 2cm to 4m and a sweep angle of 240∘.Robots used in COMRADES along with their sensors. (a) Explorer robot, (b) Corobot robot.
(a)
(b)The Corobot robot is equipped with a Hagisonic Stargazer localization device that uses IR-based positioning using overhead markers to determine the location and heading of the robot with an accuracy of ±2 cm. To avoid obstacles at close proximity, the Corobot robot is also fitted with two cross-beam IR sensors mounted on the front bumper, one IR sensor on each side, oriented sixty degrees from the front of the vehicle; the IR sensors provide proximity measurements within a range of 10–80 cm. For the Corobot robots, we used their Webcams to detect specific objects or marks on the ground corresponding to virtual landmines due to the complications in using landmine detectors such as metal detectors in indoor environments (e.g., inside buildings with metal frames).Additional on-board sensors on the Explorer robot include an inertial measurement unit (IMU) and a Garmin GPS16x LVS differential GPS that provides localization with an accuracy of ±3 m. To localize the robot, a Kalman filtering technique was used to combine the GPS, IMU, and encoder readings, resulting in a localization accuracy of ±1 m. (Techniques to fuse localization data from multiple sensors [19] can be used to further improve the localization accuracy of detected landmines.) The Explorer robots were also customized with a metal detector attached with a fixed arm to the front of the robot, as described in Figure 2.


## 3.2. Metal Detector System

The metal detector (MD) system used in COMRADES consists of an Infinium LS Metal Detector manufactured by Garrett Inc. attached to a fixed, forward facing arm on the Explorer robot. The MD is designed to work in moist and heavily mineralized environments. The device has been customized and integrated on the Explorer robot via a USB interface to detect landmines over different environments such as grass, snow, and rock based surfaces, as shown in Figure3. The metal detector implements pulse induction (PI) technology which works by sending short (50 μs), high current (20 A) pulses to a search coil. It then listens for the “echo” from a metallic object. This echo is actually the residual magnetic field induced in an object near the coil and changes the decay rate from the natural decay of the coil. If there is no metal near the coil this pulse will decay rapidly and predictably. When metal is near the coil it will decay at a different rate than the natural decay. The difference between those two times indicates the presence of metal. The slope rate of the curve will indicate how strong the signal is from the metal. An advantage of the pulse induction technology over other comparable technologies is that it is affected very little by mineralization in soil and water which means it can be used in a broader range of soil types and locations.Figure 3
The Explorer robot searches for landmines in different types of environments. It is possible to scan areas covered by grass, snow, and rocks due to the characteristics of the MDS.To verify the operation of the MD, we conducted a simple experiment; we used a mockup landmine with a very little amount of metal in its construction, shown in Figure4(a). Figure 4(b) shows the metal detector coil placed on the landmine when it is placed on the surface and underground. Figures 4(c) and 4(d) show the signal strength from the metal detector and the standard deviation error when the mockup landmine is placed at different depths below ground ranging from 0 to 100 mm, directly under the coil of the MD. The strength of the signals shows that the MD used is able to detect the landmine and isolate it from nonmetallic material despite its low metal content.(a) A real action paintball mine is used to simulate mines made with few metallic parts. (b) Landmine has been buried 100 mm in soil with the purpose of mine detection analysis. (c) Metal detector raw data for different buried depths of the paintball mine. (d) Standard deviation error for different depths at which the paintball mine is buried.
(a)
(b)
(c)
(d)Controllers for a repertoire of low-level behaviors such as obstacle avoidance, wandering or random walk, boundary following (both physical and virtual boundaries), and mine avoidance were programmed in C++ on each robot. These behaviors are utilized for implementing more complex coordinated operations for coverage and task allocation on multiple robots, which are described later.


## 3.3. Graphical User Interface

A graphical user interface (GUI) has been designed using Java to interact with a team of physical robots during a mission of collective detection of landmines. The primary goal of the GUI is to visualize in real-time the state of a mission including the position and current status of the robots, their available battery power, and the location of potential landmines detected by robots, as shown in Figure5(a). The operator can also command robots to do specific actions through the GUI such as to abort its current operation and navigate to a specific location in the environment, recall robots to the base station, and stop and restart the robots. Figure 5(a) shows a snapshot of an experiment involving two physical robots deployed in an indoor environment of 3.5×5 square meters and the corresponding state of the GUI. The paths followed by robots are dynamically recorded and highlighted, and the landmine-like objects detected by robots are represented with red spots in the GUI.(a) Snapshot of the COMRADES graphical user interface. The image illustrates a panorama of the experimental environment using two Corobot robots. After5 minutes of exploration the robots have detected 4 landmines shown by red circles. The path followed by the robots is shown by the green trail. (b) Communication architecture of the COMRADE system. Dotted lines indicate wireless communication via Wi-Fi between the robots and the robot server at the control station.
(a)
(b)Every two seconds each robot transmits data such as its pose and battery state to the control station. When a landmine-like object is detected the robot sends the estimated position of such object. Landmine-like objects are represented in indoor experiments by red pieces of paper detectable by the robots’ camera. The communication between the robots’ server and the GUI is established through TCP ports. The robot server periodically updates the state of robots to the GUI. Each robot receives and transmits data to the robot server located at the control station via Wi-Fi, as shown in Figure5(b). Videos showing the operation of COMRADES along with its GUI are available at [26].


## 4. Robot Planning Techniques in COMRADES

Planning techniques form a central part of COMRADES to enable the deployed robots to navigate autonomously and reach objects of interests (potential landmines) while avoiding obstacles as well as other robots. We consider two categories of planning in COMRADES: coverage path planning to ensure that the robots cover the entire free space within the environment using their landmine detection sensors while searching for landmines and task planning or task allocation, to determine the order in which a robot will visit the locations at which objects of interests have been discovered by other robots.


### 4.1. Distributed Terrain Coverage in COMRADES

Coverage path planning [27] techniques enable robots to plan their paths so that they can cover the entire free space of their environment using their coverage sensors. Distributed coverage with multiple robots offers several advantages over using a single robot to perform coverage, such as reduced time to complete coverage and improved robustness against single or multiple robot failures. However, a challenging problem in distributed, multirobot coverage is to ensure that different robots do not impede each other’s movement or robots with the same set of sensors repeatedly cover the same region while leaving portions of the environment uncovered. Previous approaches to multirobot distributed coverage assume that the environment is decomposed into a cellular or grid-like structure before deploying the robots [28–31]. They then use graph traversal techniques to completely cover the environment. Robots send messages to each other with their coverage information to ensure that they cover disjoint regions. In our research, we have used Voronoi partitioning [32] to divide the free space in the environment into disjoint cells or regions. The robots’ initial positions are used as the sites for generating the partition. After partitioning, each robot is responsible for covering the Voronoi region it is situated in. This removes the overhead for avoiding repeated coverage and collision between robots. One issue with Voronoi partitioning is that the size of the Voronoi regions is dependent on the initial positions of the robots and a bad initial spatial distribution of the robots (e.g., robots being very close to each other) might result in disproportionate regions. To alleviate this situation, we propose to use simple dispersion strategies [33] between robots to achieve a well-spaced initial spatial distribution.


#### 4.1.1. Voronoi Partition Coverage (VPC) Algorithm

The main contribution of our research on coverage in COMRADES is an algorithm called Voronoi Partition-Based Coverage (VPC). The detailed description of the algorithm is available in [34]; here we provide an overview of the key aspects of the algorithm. In the VPC algorithm, each robot first partitions the environment into a set of disjoint regions given by the Voronoi partition of the environment, using the robots’ initial positions [35, 36]. The robots in the adjacent Voronoi regions of a robot are called its Voronoi neighbors. In [37], we have described a fully distributed technique for computing the Voronoi partition using communication between a set of robots. Once the partitions are determined, each robot proceeds to cover the region in which it is situated. For this, a robot decomposes the free space of its region using a grid-like cellular decomposition; each cell of the grid corresponds to four times footprint size of the robot’s coverage tool (landmine detection sensor).The robot then uses a cellular coverage technique called Spanning Tree Coverage (STC) [38] to cover the cells (although we have used STC for implementing our algorithm, any other single-robot coverage algorithm can be used in conjunction with VPC). The STC algorithm allows the robot to cover successive cells in its direction of motion. When an obstacle is encountered, the robot selects a previously uncovered cell from the neighbors of its current cell, while checking the neighbors in a clockwise direction from its current cell. If no free neighboring cell is found (e.g., robot is in a cave), the robot backtracks to the previous cell from which it had arrived at the current cell. The STC algorithm terminates when the robot reaches its start cell by backtracking. When the robot completes coverage of its Voronoi region, it broadcasts a coverage completion message to its Voronoi neighbors. We verified the operation of the VPC algorithm using Corobot robots on the Webots simulator. Figures 6(a) and 6(b) show snapshots from the simulation using 4 robots in a 20×20m2 environment with no obstacles and an X-shaped obstacle, respectively; the coverage paths followed by the different robots are marked with colored trails.4 robots marked by blue circles cover (a) a20m×20m square environment and (b) an X-shaped region within this environment using VPC algorithm. (c) One robot fails in the same setting as in scenario (a), and an operational robot takes over coverage of the failed robot’s Voronoi region.
(a)
(b)
(c)The VPC algorithm is also robust to failure of individual or a few robots. To ensure robustness, each robot periodically exchangesalive messages with its Voronoi neighbors. If a nonresponsive neighbor that has not completed its coverage is discovered, it is marked as a failed robot. The Voronoi regions are recomputed while discarding the failed robot and the Voronoi neighbors of the failed robot then proceed to cover their new Voronoi regions after excluding already covered portions in the region. Figure 6(c) shows when the robot with the purple trail fails, one of its Voronoi neighbors (robot with red trail) takes over and finishes coverage of its unfinished Voronoi region. This process ensures that the entire environment will be covered as long as at least one robot remains operational. We have also shown analytically that the VPC algorithm ensures complete, nonoverlapping coverage provided the single-robot coverage algorithm achieves complete nonoverlapping coverage [34].


#### 4.1.2. Repartitioning Coverage Algorithm

In COMRADES, because the environment is initially unknown, we assume that the robots are not aware of the location and geometry of obstacles. A potential problem while using the VPC algorithm in such a scenario is that a robot might discover that a portion of its Voronoi region is occluded by obstacles, as shown in Figure7(a). The robot then has to use path planning techniques to find a path to reach the inaccessible portions of its Voronoi region; such path planning technique can involve complex computations [27] and increase the robots’ time and energy requirements. To avoid excessive path planning costs, we investigated an approach that adaptively repartitions regions where coverage is impeded by obstacles and reallocates the repartitioned portions to other robots that can complete the coverage, as shown in Figure 7(b).(a) The Voronoi cells of two robots are partially inaccessible due to obstacles. The blue solid arrows show the path taken by a robot to reach the inaccessible portions of its cell using a bug-like path planning algorithm. (b) Robots coordinate with each other to repartition the initial Voronoi cells so that each robot has a contiguous region to cover.
(a)
(b)At the core of our repartitioning approach is an algorithm called repartition coverage [39]. The main insight of this algorithm is that even if the Voronoi region that a robot is covering gets disconnected due to obstacles, because the free space is connected, the inaccessible portion of the region must be adjacent to at least one of the neighboring regions and accessible to the robot in that region. Consequently, the robot performing coverage in the adjacent neighboring region could be requested to augment its coverage with the inaccessible portion of the disconnected region, as shown in Figure 7(b). While using the VPC algorithm, if a robot determines that it cannot reach portions of its coverage region due to obstacles, it uses an auction-based protocol to systematically repartition and reallocate the inaccessible regions to other robots. We have shown analytically that the repartition coverage algorithm guarantees complete, nonoverlapping coverage and that it converges to termination within a finite number of steps, determined by the number of robots in the environment. The performance of the algorithm was also verified in Webots for different environments and different obstacle geometries to verify its completeness and coverage times for environments of different sizes and different obstacle geometries. Some of the results are shown in Figure 8.Snapshots from Webots showing repartition coverage by7 robots in a 3×6m2 environment with different obstacle features, (a) initial Voronoi partition, (b) robots performing boundary coverage on Voronoi cell, and black/light blue boundaries show inaccessible regions. (c) repartitioned cells and robots completing coverage of entire environment.
(a)
(b)
(c)


### 4.2. Multirobot Task Allocation in COMRADES

In COMRADES, when robots have detected objects of interest they request other robots, possibly with other types of sensors, to visit the location of the object and inspect it with their sensors. Consequently, each robot might receive requests to visit objects of interest at different locations from multiple robots. To avoid expending excessive energy and time to visit these locations and analyze the object, the robots need to determine a suitable itinerary for visiting the locations. Multirobot task allocation (MRTA) techniques provide a structured method to solve this problem: how to find a suitable assignment of tasks to robots so that the tasks performed by the robots can be completed in an efficient manner in terms of time and energy expended by the robots. We consider a category of MRTA problems called ST-MR-TA (single task robot, multirobot tasks, time-extended assignment) [40], where ST stands for single task robots, that is, each robot is able to execute at most one task at a time, MR means multirobot tasks, tasks that require multiple robots to be completed, and TA means time-extended assignment, problems where the information to allocate tasks to robots arrives over time. A task in the COMRADES scenario corresponds to a robot visiting the location of a potential landmine (not necessarily at the same time as other robots) to analyze the object using the robots’ sensors. The location of potential landmines arrives dynamically as they are detected using the coverage techniques described in Section 4.1. MRTA in such a scenario corresponds to the multiple traveling salesman problem (mTSP) that has been shown to be NP-hard [41]. Previous work in MRTA for ST-MR-TA problem considers local or market-based heuristics [42–44]. In COMRADES, we have used a stochastic queueing-based technique to address the MRTA problem [45, 46]. Using spatial queueing is attractive for our ST-MR-TA MRTA problem as it provides a formal framework for distributed decision making by the robots so that they can respond efficiently to dynamic changes in the task distribution. In the next section, we give an overview of a spatial queueing based MRTA algorithm used in COMRADES; details of the algorithm along with extensive simulation results are available in [47, 48].


#### 4.2.1. Spatial Queueing for Multirobot Task Allocation

To motivate our MRTA problem we consider an automated landmine detection scenario where a set of robots are deployed within a bounded 2D environment with potential landmines. The location of the landmines is not knowna priori. Robots are equipped with sensors that are capable of detecting landmine-like objects, albeit within a certain level of uncertainty due to sensor noise. Robots initially explore the environment and when a robot finds an object of interest that could potentially be a landmine, it requests other robots, possibly with different sensor types to visit the location of the detection and confirm the object on their sensors. Within this setting, a task corresponds to a set of robots visiting the location of an object of interest and recording the object’s signature on their sensors. For legibility, we have referred to each robot’s visit to the object’s location and taking its reading, as the robot performing its portion of the task. Robots can perform a task asynchronously by performing their portion of the task at different times. A task is considered to be complete when a desired number of robots have performed their portion of the task. Finally, tasks can arrive dynamically as robots explore the environment and find objects of interest. Within this context, the MRTA problem corresponds to finding a suitable allocation of tasks to robots so that the total time required to complete the tasks is reduced.The MRTA problem described above corresponds to the MR-ST-TA setting [42], where MR (multirobot task) denotes that multiple robots are required to complete a task, ST (single task robot) denotes each robot can perform a single task at a time, and TA (time-extended assignment) denotes that each robot can determine and update its schedule or order of tasks to perform over a finite time window, as opposed to determining the task schedule instantaneously.We consider a set of mobile robotsR={ri:i=1,2,…,m} that are deployed within a bounded environment E⊂R2. We assume that each robot is capable of localizing itself with respect to the environment and its pose at any instant is given by ρri. The environment also contains a set of tasks T={τi:i=1,2,…,n} that are distributed arbitrarily within the environment; the location of task τi is denoted by ρτi. Robot and task positions are initially shared between the robots and assumed to be common knowledge. The objective of the robots is to visit the location of each task and perform certain operations related to the task. We assume that task τi requires operations to be performed by dτi≤|R| distinct robots to be completed. Because the focus of this paper is on the task allocation algorithm, we assume that techniques for appropriately positioning the robots to perform operations at the locations of the tasks are already available. The distance between two tasks, τi and τj, is denoted by dij=ρτi-ρτj while the distance between robot ri and task τj is denoted by d^ij=ρri-ρτj. Also, we let ρi0 denote the initial position of robot ri and we let τri1 denote the first task selected by robot ri. Within this setting the MRTA problem can be formally defined as the following.Definition 1 (multirobot task allocation).
Given a set of robotsR and a set of tasks T find a suitable allocation A:2R→T such that ∀R⊆R:ri∈R:
(1)min⁡hhhhhh∑ri∈R‍ρri0-ρτri1+∑(τj,τk)∈A(R)‍ρτj-ρτk,subjectto:τj≠τk∀(τj,τk)∈A(R),hhhhhhhhhhhhh∀R⊆R:ri∈R,∀risubjectto:A(R)=dτiA(R)=τi,R⊆R,∀τi.
The above formulation of the MRTA problem attempts to find an allocation for each robot such that the distance traveled by the robots to perform the tasks is minimized. The two constraints of the problem ensure that the same task does not get allocated to the same robot more than once and the total number of robots allocated to perform a task equals the demand for the task.
The solution to the MRTA problem has been shown to be an instance of the dynamic traveling salesman problem and proven to be NP-hard [49]. In this paper, we propose a spatial queue-based [50] solution for the MRTA problem using a heuristic that represents the distances between robots and tasks as an ordered queue based on the robots’ locations and intertask distances. To achieve this is in a systematic manner, each robot utilizes the following four mathematical constructs.(1) Intertask Transition Matrix. Intertask distances form the basis of our method as the objective of the MRTA technique is to enable robots to find a suitable schedule or order of navigating between tasks so that the total distance traveled by them is reduced. The intertask distances are represented as a transition matrix. The transition matrix at time step t is denoted by M(t) and given by the normalized inverse Euclidean distances between every task pair, as shown in
(2)Mt=π11π12⋯π1nπ21π22⋯π2n⋯πn1πn2⋯πnn,
where πi,j=1/di,j/∑j≠i‍1/di,j.Each entryπij of M(t) represents the probability of a robot to select task τj following τi, based on the distance between the tasks’ locations. Note that πii=0 and therefore the diagonal elements of the matrix are zeros. The transition matrix values are calculated independently by all robots. Initially, the transition matrix is computed for all task pairs, but as time proceeds, each robot recalculates the matrix when it completes a task or when it receives information that a task has been completed by other robots. The transition probabilities of completed tasks are set to zero and the probability values in M(t) are renormalized.(2) Robot State Vector. The state vector of a robot comprises the inverse Euclidean distances between the robot and each task in the environment. The state vector for robot i, Vri, at time step t is given by
(3)Vrit=πi1^t,πi2^t,…,πin^t,
where πij^(t)=1/d^i,j(t) and d^i,j(t) is the distance between robot ri and task τj at time step t.(3) Task Proximity Vector. The task proximity vector of a robot ri represents its preference for each task τj in the environment based on performing task τj first followed by the remaining tasks. It is calculated as the product of the robot ri’s state vector and the intertask transition matrix. The task proximity vector for robot ri at time step t, V´ri(t), is given by
(4)V´rit=Vrit×Mt.(4) Robot Spatial Task Queue. The spatial task queue of a robot denotes the order in which the robot plans to perform the tasks in the environment. It is calculated by removing all tasks from the task proximity vector that are either occupied or completed and sorting the remaining tasks in descending order based on their proximity vector values. The task queue for robot ri at time step t, Qri(t), is given by
(5)Qrit=q1,q2,…,qn:qk≥qk+1,∀k,qk∈V´rit.Robots use the spatial queueing framework to select tasks using the spatial queueing MRTA (SQ-MRTA) algorithm. In the SQ-MRTA algorithm, each robot sorts the available tasks using (2)–(4). The robot then selects the task at the head of the spatial queue and announces a bid for that task based on its cost (distance) to perform that task. It then waits for a certain time period to receive bids for the same task from other robots. If it is the highest bidder and the task is still available, it proceeds to perform the task; otherwise it selects the next available task from its spatial queue and repeats the bidding process. When it finishes performing the task, the robot broadcasts a task performed message. When robots receive a task performed message from another robot that results in the task being completed (sufficient number of robots have visited the task), they rebuild their local copy of the transition matrix.We verified the performance of the SQ-MRTA (SQ) algorithm and compared it with three state-of-the-art MRTA algorithms: the Hungarian assignment (HA) based algorithm [51], a decentralized greedy (DG) allocation algorithm [47], and the repeated auctions (RA) algorithm [52]. As before, the algorithm was implemented on Corobot robots within the Webots simulator. We used 5, 10, 15, or 20 robots with 6, 12, 18, or 24 tasks within a 20×20m2 environment. Each task was required to be performed by 3–5 robots. All results were averaged over 10 simulation runs. We evaluated different metrics including the total time required to complete tasks and the average distance traveled per robot. Two illustrative graphs of our simulations are shown in Figures 9 and 10. In Figure 9 we see that the SQ-MRTA algorithm performs comparably with the repeated auctions (RA) algorithm. For more combinations of robots and tasks, Figure 10 shows that our SQ-MRTA algorithm performs very closely in comparison to the repeated auctions (RA) algorithm, with their simulation times lying ±10% of each other. On the other hand, the HA algorithm performs poorly as the numbers of robots and tasks increase because it assigns robots to tasks based on the initial placement of robots and tasks; delays in robots reaching tasks due to interrobot collision avoidance are not considered by it while determining the robot to task assignments. The DG algorithm is inefficient in terms of task completion times when the number of tasks greatly outweighs the number of robots as it allocates the closest task to a robot and is unable to calculate a suitable schedule when each robot needs to perform multiple tasks.Completion times with fixed task load of24 tasks for 5, 10, 15, and 20 robots (a) and with fixed number of 20 robots for 6, 12, 18, and 24 tasks (b) for the compared MRTA approaches.
(a)
(b)Figure 10
Competitive ratio of simulation times using the Hungarian method as the baseline. Different robot and task numbers’ combinations used are shown on thex-axis.


### 4.3. Information Aggregation Techniques in COMRADES

2 A central aspect of multirobot autonomous landmine detection is to combine the information about the characteristics of a potential landmine from different types of sensors and make a decision whether the object is indeed a landmine and identify its characteristics, if it is indeed one. Previous researchers [17] have considered this problem from a static viewpoint where all information about a landmine’s characteristics is assumed to be available and the main concept is to use statistical inference techniques to classify the landmine’s characteristics with accuracy. However, in COMRADES, the process of landmine detection is not an instantaneous one; it continues over a period of time during which robots with appropriate sensors, corresponding to a potential landmine’s initially perceived characteristics, need to be deployed to the potential landmine’s location so that the cumulative information gathered by the robots’ sensors can improve the accuracy of the landmine’s detection. Because of this dynamic nature of landmine detection, we consider the following multisensor information aggregation and sensor scheduling problem in COMRADES, given an initial signature perceived by a certain type of sensor from a potential landmine, which is an appropriate set of sensors (robots) to deploy additionally to the location of the potential landmine so that the landmine is detected with higher accuracy. Details of the operation of the information aggregation technique along with analytical and experimental results of its performance are given in [53]; we provide an overview of its main features and a few significant results in the next section.To solve the information aggregation and sensor scheduling problem in COMRADES, we have proposed a novel technique that uses a market-based information aggregation mechanism called aprediction market. Each robot participating in the landmine detection task is provided with a software agent that uses the sensory input of the robot from a potential landmine and performs the calculations of the prediction market technique. A schematic describing the technique is shown in Figure 11. When an agent records readings from a potential landmine on its sensors, it associates a probability value, called abelief, ba,t, to denote the agent’s confidence in identifying the sensed object as a landmine. The beliefs are conditioned over past belief values to prevent wide variations from the object’s previous readings due to sensor noise or ambient conditions using a Bayesian network. Each agent then strategically calculates a sensor report, ra,t, from its belief and expected rewards from making the report, using a utility maximization technique. It then submits this report to a central location called theaggregator or market maker agent. The information aggregation or fusion is implemented using the aggregation mechanism that uses a technique called a logarithmic market scoring rule (LMSR). This technique uses a utility-based formulation of the costs and value to each sensor (robot) for identifying an object of interest as a landmine. It then assigns a score or virtual reward to each sensor (robot) if it correctly reports the probability distribution over the different types of objects of interests such as landmine, metal but not landmine, and not landmine. The details of this technique are given in [53]. The aggregation mechanism outputs a single aggregated belief value, Bt. The aggregation mechanism also selectively includes weights of the sensor reports from a human expert about the accuracy of the sensors’ reports based on the ambient conditions of the sensors. The aggregated belief value is then passed on to a decision maker agent that makes decisions about which other robots (sensor types) should be deployed to the potential landmine’s location using a Bayesian inferencing based technique, so that the landmine can be confirmed rapidly and accurately [53].Figure 11
Weightage of sensor reports from human expert based on environment and operational conditions.We simulated our algorithm using three different types of sensors, MD, GPR, and IR-based multisensor device. We performed different experiments with data from different types of sources (metallic, low-metallic, and nonmetallic) collected by different sensors at different times. A few experimental results of our algorithm while using identical data distributions and settings are highlighted in Figures12–14. Figure 12 shows the relative costs of deploying the sensors and the corresponding root mean square errors (RMSE) from the readings when using one type of sensor. Figures 13(a)–13(d) show the effect of deploying multiple sensors of different types over time. For these experiments, the data was assumed to arrive from the same source object of interest. Different sets of sensors were deployed over 7 time steps. We notice that while using 5 MDs (in Figure 13(a)) the RMSE reduces to 20% in 4 time steps, but with a combination of MD, IR, and GPR (in Figure 13(d)) the combined RMSE from the fused data from these sensors is reduced much more, to around 6%. Finally, Figures 14(a)–14(c) illustrate the comparison of our proposed prediction market-based techniques for information aggregation with two techniques. The results show that the information fusion performed using our technique reduces the RMSE by 5–13% as compared to a previously studied technique for landmine data fusion using the Dempster-Shafer theory [17] and by 3–8% using distributed data fusion technique [54]. We also conducted several experiments to test the effect of various parameters in our model, and we found that using the combination of different sensors in the environment gives the best accuracy for the object’s type identification.(a) Cost to classify different types of objects, mines and metal but not mine and nonmetal, using different types of sensors. Relative costs of sensing using MD, IR, and GPR were assumed to be in the ratio of 1 : 2 : 4. (b) Root mean square error from different types of sensors when used individually over time at the same object of interest. Note that although using MDs along has a low cost, their RMSE is higher (accuracy is lower).
(a)
(b)Average RMSE in the environment with 5 MD sensors (a), 5 MD and 1 GPR sensor (b), 5 MD, 1 IR, and 1 GPR sensors (c), and 2 MD, 2 IR, and 2 GPR sensors (d).
(a)
(b)
(c)
(d)Comparsion between our prediction market-based information aggregation and Dempster-Shafer theory based fusion (DS) and distributed fata fusion (DDF); (a) root mean square error; (b) normalized root mean square error; and (c) information gain. The results show that, over time, the PM-based technique is able to perform better than the compared techniques.
(a)
(b)
(c)


## 4.1. Distributed Terrain Coverage in COMRADES

Coverage path planning [27] techniques enable robots to plan their paths so that they can cover the entire free space of their environment using their coverage sensors. Distributed coverage with multiple robots offers several advantages over using a single robot to perform coverage, such as reduced time to complete coverage and improved robustness against single or multiple robot failures. However, a challenging problem in distributed, multirobot coverage is to ensure that different robots do not impede each other’s movement or robots with the same set of sensors repeatedly cover the same region while leaving portions of the environment uncovered. Previous approaches to multirobot distributed coverage assume that the environment is decomposed into a cellular or grid-like structure before deploying the robots [28–31]. They then use graph traversal techniques to completely cover the environment. Robots send messages to each other with their coverage information to ensure that they cover disjoint regions. In our research, we have used Voronoi partitioning [32] to divide the free space in the environment into disjoint cells or regions. The robots’ initial positions are used as the sites for generating the partition. After partitioning, each robot is responsible for covering the Voronoi region it is situated in. This removes the overhead for avoiding repeated coverage and collision between robots. One issue with Voronoi partitioning is that the size of the Voronoi regions is dependent on the initial positions of the robots and a bad initial spatial distribution of the robots (e.g., robots being very close to each other) might result in disproportionate regions. To alleviate this situation, we propose to use simple dispersion strategies [33] between robots to achieve a well-spaced initial spatial distribution.


### 4.1.1. Voronoi Partition Coverage (VPC) Algorithm

The main contribution of our research on coverage in COMRADES is an algorithm called Voronoi Partition-Based Coverage (VPC). The detailed description of the algorithm is available in [34]; here we provide an overview of the key aspects of the algorithm. In the VPC algorithm, each robot first partitions the environment into a set of disjoint regions given by the Voronoi partition of the environment, using the robots’ initial positions [35, 36]. The robots in the adjacent Voronoi regions of a robot are called its Voronoi neighbors. In [37], we have described a fully distributed technique for computing the Voronoi partition using communication between a set of robots. Once the partitions are determined, each robot proceeds to cover the region in which it is situated. For this, a robot decomposes the free space of its region using a grid-like cellular decomposition; each cell of the grid corresponds to four times footprint size of the robot’s coverage tool (landmine detection sensor).The robot then uses a cellular coverage technique called Spanning Tree Coverage (STC) [38] to cover the cells (although we have used STC for implementing our algorithm, any other single-robot coverage algorithm can be used in conjunction with VPC). The STC algorithm allows the robot to cover successive cells in its direction of motion. When an obstacle is encountered, the robot selects a previously uncovered cell from the neighbors of its current cell, while checking the neighbors in a clockwise direction from its current cell. If no free neighboring cell is found (e.g., robot is in a cave), the robot backtracks to the previous cell from which it had arrived at the current cell. The STC algorithm terminates when the robot reaches its start cell by backtracking. When the robot completes coverage of its Voronoi region, it broadcasts a coverage completion message to its Voronoi neighbors. We verified the operation of the VPC algorithm using Corobot robots on the Webots simulator. Figures 6(a) and 6(b) show snapshots from the simulation using 4 robots in a 20×20m2 environment with no obstacles and an X-shaped obstacle, respectively; the coverage paths followed by the different robots are marked with colored trails.4 robots marked by blue circles cover (a) a20m×20m square environment and (b) an X-shaped region within this environment using VPC algorithm. (c) One robot fails in the same setting as in scenario (a), and an operational robot takes over coverage of the failed robot’s Voronoi region.
(a)
(b)
(c)The VPC algorithm is also robust to failure of individual or a few robots. To ensure robustness, each robot periodically exchangesalive messages with its Voronoi neighbors. If a nonresponsive neighbor that has not completed its coverage is discovered, it is marked as a failed robot. The Voronoi regions are recomputed while discarding the failed robot and the Voronoi neighbors of the failed robot then proceed to cover their new Voronoi regions after excluding already covered portions in the region. Figure 6(c) shows when the robot with the purple trail fails, one of its Voronoi neighbors (robot with red trail) takes over and finishes coverage of its unfinished Voronoi region. This process ensures that the entire environment will be covered as long as at least one robot remains operational. We have also shown analytically that the VPC algorithm ensures complete, nonoverlapping coverage provided the single-robot coverage algorithm achieves complete nonoverlapping coverage [34].


### 4.1.2. Repartitioning Coverage Algorithm

In COMRADES, because the environment is initially unknown, we assume that the robots are not aware of the location and geometry of obstacles. A potential problem while using the VPC algorithm in such a scenario is that a robot might discover that a portion of its Voronoi region is occluded by obstacles, as shown in Figure7(a). The robot then has to use path planning techniques to find a path to reach the inaccessible portions of its Voronoi region; such path planning technique can involve complex computations [27] and increase the robots’ time and energy requirements. To avoid excessive path planning costs, we investigated an approach that adaptively repartitions regions where coverage is impeded by obstacles and reallocates the repartitioned portions to other robots that can complete the coverage, as shown in Figure 7(b).(a) The Voronoi cells of two robots are partially inaccessible due to obstacles. The blue solid arrows show the path taken by a robot to reach the inaccessible portions of its cell using a bug-like path planning algorithm. (b) Robots coordinate with each other to repartition the initial Voronoi cells so that each robot has a contiguous region to cover.
(a)
(b)At the core of our repartitioning approach is an algorithm called repartition coverage [39]. The main insight of this algorithm is that even if the Voronoi region that a robot is covering gets disconnected due to obstacles, because the free space is connected, the inaccessible portion of the region must be adjacent to at least one of the neighboring regions and accessible to the robot in that region. Consequently, the robot performing coverage in the adjacent neighboring region could be requested to augment its coverage with the inaccessible portion of the disconnected region, as shown in Figure 7(b). While using the VPC algorithm, if a robot determines that it cannot reach portions of its coverage region due to obstacles, it uses an auction-based protocol to systematically repartition and reallocate the inaccessible regions to other robots. We have shown analytically that the repartition coverage algorithm guarantees complete, nonoverlapping coverage and that it converges to termination within a finite number of steps, determined by the number of robots in the environment. The performance of the algorithm was also verified in Webots for different environments and different obstacle geometries to verify its completeness and coverage times for environments of different sizes and different obstacle geometries. Some of the results are shown in Figure 8.Snapshots from Webots showing repartition coverage by7 robots in a 3×6m2 environment with different obstacle features, (a) initial Voronoi partition, (b) robots performing boundary coverage on Voronoi cell, and black/light blue boundaries show inaccessible regions. (c) repartitioned cells and robots completing coverage of entire environment.
(a)
(b)
(c)


## 4.1.1. Voronoi Partition Coverage (VPC) Algorithm

The main contribution of our research on coverage in COMRADES is an algorithm called Voronoi Partition-Based Coverage (VPC). The detailed description of the algorithm is available in [34]; here we provide an overview of the key aspects of the algorithm. In the VPC algorithm, each robot first partitions the environment into a set of disjoint regions given by the Voronoi partition of the environment, using the robots’ initial positions [35, 36]. The robots in the adjacent Voronoi regions of a robot are called its Voronoi neighbors. In [37], we have described a fully distributed technique for computing the Voronoi partition using communication between a set of robots. Once the partitions are determined, each robot proceeds to cover the region in which it is situated. For this, a robot decomposes the free space of its region using a grid-like cellular decomposition; each cell of the grid corresponds to four times footprint size of the robot’s coverage tool (landmine detection sensor).The robot then uses a cellular coverage technique called Spanning Tree Coverage (STC) [38] to cover the cells (although we have used STC for implementing our algorithm, any other single-robot coverage algorithm can be used in conjunction with VPC). The STC algorithm allows the robot to cover successive cells in its direction of motion. When an obstacle is encountered, the robot selects a previously uncovered cell from the neighbors of its current cell, while checking the neighbors in a clockwise direction from its current cell. If no free neighboring cell is found (e.g., robot is in a cave), the robot backtracks to the previous cell from which it had arrived at the current cell. The STC algorithm terminates when the robot reaches its start cell by backtracking. When the robot completes coverage of its Voronoi region, it broadcasts a coverage completion message to its Voronoi neighbors. We verified the operation of the VPC algorithm using Corobot robots on the Webots simulator. Figures 6(a) and 6(b) show snapshots from the simulation using 4 robots in a 20×20m2 environment with no obstacles and an X-shaped obstacle, respectively; the coverage paths followed by the different robots are marked with colored trails.4 robots marked by blue circles cover (a) a20m×20m square environment and (b) an X-shaped region within this environment using VPC algorithm. (c) One robot fails in the same setting as in scenario (a), and an operational robot takes over coverage of the failed robot’s Voronoi region.
(a)
(b)
(c)The VPC algorithm is also robust to failure of individual or a few robots. To ensure robustness, each robot periodically exchangesalive messages with its Voronoi neighbors. If a nonresponsive neighbor that has not completed its coverage is discovered, it is marked as a failed robot. The Voronoi regions are recomputed while discarding the failed robot and the Voronoi neighbors of the failed robot then proceed to cover their new Voronoi regions after excluding already covered portions in the region. Figure 6(c) shows when the robot with the purple trail fails, one of its Voronoi neighbors (robot with red trail) takes over and finishes coverage of its unfinished Voronoi region. This process ensures that the entire environment will be covered as long as at least one robot remains operational. We have also shown analytically that the VPC algorithm ensures complete, nonoverlapping coverage provided the single-robot coverage algorithm achieves complete nonoverlapping coverage [34].


## 4.1.2. Repartitioning Coverage Algorithm

In COMRADES, because the environment is initially unknown, we assume that the robots are not aware of the location and geometry of obstacles. A potential problem while using the VPC algorithm in such a scenario is that a robot might discover that a portion of its Voronoi region is occluded by obstacles, as shown in Figure7(a). The robot then has to use path planning techniques to find a path to reach the inaccessible portions of its Voronoi region; such path planning technique can involve complex computations [27] and increase the robots’ time and energy requirements. To avoid excessive path planning costs, we investigated an approach that adaptively repartitions regions where coverage is impeded by obstacles and reallocates the repartitioned portions to other robots that can complete the coverage, as shown in Figure 7(b).(a) The Voronoi cells of two robots are partially inaccessible due to obstacles. The blue solid arrows show the path taken by a robot to reach the inaccessible portions of its cell using a bug-like path planning algorithm. (b) Robots coordinate with each other to repartition the initial Voronoi cells so that each robot has a contiguous region to cover.
(a)
(b)At the core of our repartitioning approach is an algorithm called repartition coverage [39]. The main insight of this algorithm is that even if the Voronoi region that a robot is covering gets disconnected due to obstacles, because the free space is connected, the inaccessible portion of the region must be adjacent to at least one of the neighboring regions and accessible to the robot in that region. Consequently, the robot performing coverage in the adjacent neighboring region could be requested to augment its coverage with the inaccessible portion of the disconnected region, as shown in Figure 7(b). While using the VPC algorithm, if a robot determines that it cannot reach portions of its coverage region due to obstacles, it uses an auction-based protocol to systematically repartition and reallocate the inaccessible regions to other robots. We have shown analytically that the repartition coverage algorithm guarantees complete, nonoverlapping coverage and that it converges to termination within a finite number of steps, determined by the number of robots in the environment. The performance of the algorithm was also verified in Webots for different environments and different obstacle geometries to verify its completeness and coverage times for environments of different sizes and different obstacle geometries. Some of the results are shown in Figure 8.Snapshots from Webots showing repartition coverage by7 robots in a 3×6m2 environment with different obstacle features, (a) initial Voronoi partition, (b) robots performing boundary coverage on Voronoi cell, and black/light blue boundaries show inaccessible regions. (c) repartitioned cells and robots completing coverage of entire environment.
(a)
(b)
(c)


## 4.2. Multirobot Task Allocation in COMRADES

In COMRADES, when robots have detected objects of interest they request other robots, possibly with other types of sensors, to visit the location of the object and inspect it with their sensors. Consequently, each robot might receive requests to visit objects of interest at different locations from multiple robots. To avoid expending excessive energy and time to visit these locations and analyze the object, the robots need to determine a suitable itinerary for visiting the locations. Multirobot task allocation (MRTA) techniques provide a structured method to solve this problem: how to find a suitable assignment of tasks to robots so that the tasks performed by the robots can be completed in an efficient manner in terms of time and energy expended by the robots. We consider a category of MRTA problems called ST-MR-TA (single task robot, multirobot tasks, time-extended assignment) [40], where ST stands for single task robots, that is, each robot is able to execute at most one task at a time, MR means multirobot tasks, tasks that require multiple robots to be completed, and TA means time-extended assignment, problems where the information to allocate tasks to robots arrives over time. A task in the COMRADES scenario corresponds to a robot visiting the location of a potential landmine (not necessarily at the same time as other robots) to analyze the object using the robots’ sensors. The location of potential landmines arrives dynamically as they are detected using the coverage techniques described in Section 4.1. MRTA in such a scenario corresponds to the multiple traveling salesman problem (mTSP) that has been shown to be NP-hard [41]. Previous work in MRTA for ST-MR-TA problem considers local or market-based heuristics [42–44]. In COMRADES, we have used a stochastic queueing-based technique to address the MRTA problem [45, 46]. Using spatial queueing is attractive for our ST-MR-TA MRTA problem as it provides a formal framework for distributed decision making by the robots so that they can respond efficiently to dynamic changes in the task distribution. In the next section, we give an overview of a spatial queueing based MRTA algorithm used in COMRADES; details of the algorithm along with extensive simulation results are available in [47, 48].


### 4.2.1. Spatial Queueing for Multirobot Task Allocation

To motivate our MRTA problem we consider an automated landmine detection scenario where a set of robots are deployed within a bounded 2D environment with potential landmines. The location of the landmines is not knowna priori. Robots are equipped with sensors that are capable of detecting landmine-like objects, albeit within a certain level of uncertainty due to sensor noise. Robots initially explore the environment and when a robot finds an object of interest that could potentially be a landmine, it requests other robots, possibly with different sensor types to visit the location of the detection and confirm the object on their sensors. Within this setting, a task corresponds to a set of robots visiting the location of an object of interest and recording the object’s signature on their sensors. For legibility, we have referred to each robot’s visit to the object’s location and taking its reading, as the robot performing its portion of the task. Robots can perform a task asynchronously by performing their portion of the task at different times. A task is considered to be complete when a desired number of robots have performed their portion of the task. Finally, tasks can arrive dynamically as robots explore the environment and find objects of interest. Within this context, the MRTA problem corresponds to finding a suitable allocation of tasks to robots so that the total time required to complete the tasks is reduced.The MRTA problem described above corresponds to the MR-ST-TA setting [42], where MR (multirobot task) denotes that multiple robots are required to complete a task, ST (single task robot) denotes each robot can perform a single task at a time, and TA (time-extended assignment) denotes that each robot can determine and update its schedule or order of tasks to perform over a finite time window, as opposed to determining the task schedule instantaneously.We consider a set of mobile robotsR={ri:i=1,2,…,m} that are deployed within a bounded environment E⊂R2. We assume that each robot is capable of localizing itself with respect to the environment and its pose at any instant is given by ρri. The environment also contains a set of tasks T={τi:i=1,2,…,n} that are distributed arbitrarily within the environment; the location of task τi is denoted by ρτi. Robot and task positions are initially shared between the robots and assumed to be common knowledge. The objective of the robots is to visit the location of each task and perform certain operations related to the task. We assume that task τi requires operations to be performed by dτi≤|R| distinct robots to be completed. Because the focus of this paper is on the task allocation algorithm, we assume that techniques for appropriately positioning the robots to perform operations at the locations of the tasks are already available. The distance between two tasks, τi and τj, is denoted by dij=ρτi-ρτj while the distance between robot ri and task τj is denoted by d^ij=ρri-ρτj. Also, we let ρi0 denote the initial position of robot ri and we let τri1 denote the first task selected by robot ri. Within this setting the MRTA problem can be formally defined as the following.Definition 1 (multirobot task allocation).
Given a set of robotsR and a set of tasks T find a suitable allocation A:2R→T such that ∀R⊆R:ri∈R:
(1)min⁡hhhhhh∑ri∈R‍ρri0-ρτri1+∑(τj,τk)∈A(R)‍ρτj-ρτk,subjectto:τj≠τk∀(τj,τk)∈A(R),hhhhhhhhhhhhh∀R⊆R:ri∈R,∀risubjectto:A(R)=dτiA(R)=τi,R⊆R,∀τi.
The above formulation of the MRTA problem attempts to find an allocation for each robot such that the distance traveled by the robots to perform the tasks is minimized. The two constraints of the problem ensure that the same task does not get allocated to the same robot more than once and the total number of robots allocated to perform a task equals the demand for the task.
The solution to the MRTA problem has been shown to be an instance of the dynamic traveling salesman problem and proven to be NP-hard [49]. In this paper, we propose a spatial queue-based [50] solution for the MRTA problem using a heuristic that represents the distances between robots and tasks as an ordered queue based on the robots’ locations and intertask distances. To achieve this is in a systematic manner, each robot utilizes the following four mathematical constructs.(1) Intertask Transition Matrix. Intertask distances form the basis of our method as the objective of the MRTA technique is to enable robots to find a suitable schedule or order of navigating between tasks so that the total distance traveled by them is reduced. The intertask distances are represented as a transition matrix. The transition matrix at time step t is denoted by M(t) and given by the normalized inverse Euclidean distances between every task pair, as shown in
(2)Mt=π11π12⋯π1nπ21π22⋯π2n⋯πn1πn2⋯πnn,
where πi,j=1/di,j/∑j≠i‍1/di,j.Each entryπij of M(t) represents the probability of a robot to select task τj following τi, based on the distance between the tasks’ locations. Note that πii=0 and therefore the diagonal elements of the matrix are zeros. The transition matrix values are calculated independently by all robots. Initially, the transition matrix is computed for all task pairs, but as time proceeds, each robot recalculates the matrix when it completes a task or when it receives information that a task has been completed by other robots. The transition probabilities of completed tasks are set to zero and the probability values in M(t) are renormalized.(2) Robot State Vector. The state vector of a robot comprises the inverse Euclidean distances between the robot and each task in the environment. The state vector for robot i, Vri, at time step t is given by
(3)Vrit=πi1^t,πi2^t,…,πin^t,
where πij^(t)=1/d^i,j(t) and d^i,j(t) is the distance between robot ri and task τj at time step t.(3) Task Proximity Vector. The task proximity vector of a robot ri represents its preference for each task τj in the environment based on performing task τj first followed by the remaining tasks. It is calculated as the product of the robot ri’s state vector and the intertask transition matrix. The task proximity vector for robot ri at time step t, V´ri(t), is given by
(4)V´rit=Vrit×Mt.(4) Robot Spatial Task Queue. The spatial task queue of a robot denotes the order in which the robot plans to perform the tasks in the environment. It is calculated by removing all tasks from the task proximity vector that are either occupied or completed and sorting the remaining tasks in descending order based on their proximity vector values. The task queue for robot ri at time step t, Qri(t), is given by
(5)Qrit=q1,q2,…,qn:qk≥qk+1,∀k,qk∈V´rit.Robots use the spatial queueing framework to select tasks using the spatial queueing MRTA (SQ-MRTA) algorithm. In the SQ-MRTA algorithm, each robot sorts the available tasks using (2)–(4). The robot then selects the task at the head of the spatial queue and announces a bid for that task based on its cost (distance) to perform that task. It then waits for a certain time period to receive bids for the same task from other robots. If it is the highest bidder and the task is still available, it proceeds to perform the task; otherwise it selects the next available task from its spatial queue and repeats the bidding process. When it finishes performing the task, the robot broadcasts a task performed message. When robots receive a task performed message from another robot that results in the task being completed (sufficient number of robots have visited the task), they rebuild their local copy of the transition matrix.We verified the performance of the SQ-MRTA (SQ) algorithm and compared it with three state-of-the-art MRTA algorithms: the Hungarian assignment (HA) based algorithm [51], a decentralized greedy (DG) allocation algorithm [47], and the repeated auctions (RA) algorithm [52]. As before, the algorithm was implemented on Corobot robots within the Webots simulator. We used 5, 10, 15, or 20 robots with 6, 12, 18, or 24 tasks within a 20×20m2 environment. Each task was required to be performed by 3–5 robots. All results were averaged over 10 simulation runs. We evaluated different metrics including the total time required to complete tasks and the average distance traveled per robot. Two illustrative graphs of our simulations are shown in Figures 9 and 10. In Figure 9 we see that the SQ-MRTA algorithm performs comparably with the repeated auctions (RA) algorithm. For more combinations of robots and tasks, Figure 10 shows that our SQ-MRTA algorithm performs very closely in comparison to the repeated auctions (RA) algorithm, with their simulation times lying ±10% of each other. On the other hand, the HA algorithm performs poorly as the numbers of robots and tasks increase because it assigns robots to tasks based on the initial placement of robots and tasks; delays in robots reaching tasks due to interrobot collision avoidance are not considered by it while determining the robot to task assignments. The DG algorithm is inefficient in terms of task completion times when the number of tasks greatly outweighs the number of robots as it allocates the closest task to a robot and is unable to calculate a suitable schedule when each robot needs to perform multiple tasks.Completion times with fixed task load of24 tasks for 5, 10, 15, and 20 robots (a) and with fixed number of 20 robots for 6, 12, 18, and 24 tasks (b) for the compared MRTA approaches.
(a)
(b)Figure 10
Competitive ratio of simulation times using the Hungarian method as the baseline. Different robot and task numbers’ combinations used are shown on thex-axis.


## 4.2.1. Spatial Queueing for Multirobot Task Allocation

To motivate our MRTA problem we consider an automated landmine detection scenario where a set of robots are deployed within a bounded 2D environment with potential landmines. The location of the landmines is not knowna priori. Robots are equipped with sensors that are capable of detecting landmine-like objects, albeit within a certain level of uncertainty due to sensor noise. Robots initially explore the environment and when a robot finds an object of interest that could potentially be a landmine, it requests other robots, possibly with different sensor types to visit the location of the detection and confirm the object on their sensors. Within this setting, a task corresponds to a set of robots visiting the location of an object of interest and recording the object’s signature on their sensors. For legibility, we have referred to each robot’s visit to the object’s location and taking its reading, as the robot performing its portion of the task. Robots can perform a task asynchronously by performing their portion of the task at different times. A task is considered to be complete when a desired number of robots have performed their portion of the task. Finally, tasks can arrive dynamically as robots explore the environment and find objects of interest. Within this context, the MRTA problem corresponds to finding a suitable allocation of tasks to robots so that the total time required to complete the tasks is reduced.The MRTA problem described above corresponds to the MR-ST-TA setting [42], where MR (multirobot task) denotes that multiple robots are required to complete a task, ST (single task robot) denotes each robot can perform a single task at a time, and TA (time-extended assignment) denotes that each robot can determine and update its schedule or order of tasks to perform over a finite time window, as opposed to determining the task schedule instantaneously.We consider a set of mobile robotsR={ri:i=1,2,…,m} that are deployed within a bounded environment E⊂R2. We assume that each robot is capable of localizing itself with respect to the environment and its pose at any instant is given by ρri. The environment also contains a set of tasks T={τi:i=1,2,…,n} that are distributed arbitrarily within the environment; the location of task τi is denoted by ρτi. Robot and task positions are initially shared between the robots and assumed to be common knowledge. The objective of the robots is to visit the location of each task and perform certain operations related to the task. We assume that task τi requires operations to be performed by dτi≤|R| distinct robots to be completed. Because the focus of this paper is on the task allocation algorithm, we assume that techniques for appropriately positioning the robots to perform operations at the locations of the tasks are already available. The distance between two tasks, τi and τj, is denoted by dij=ρτi-ρτj while the distance between robot ri and task τj is denoted by d^ij=ρri-ρτj. Also, we let ρi0 denote the initial position of robot ri and we let τri1 denote the first task selected by robot ri. Within this setting the MRTA problem can be formally defined as the following.Definition 1 (multirobot task allocation).
Given a set of robotsR and a set of tasks T find a suitable allocation A:2R→T such that ∀R⊆R:ri∈R:
(1)min⁡hhhhhh∑ri∈R‍ρri0-ρτri1+∑(τj,τk)∈A(R)‍ρτj-ρτk,subjectto:τj≠τk∀(τj,τk)∈A(R),hhhhhhhhhhhhh∀R⊆R:ri∈R,∀risubjectto:A(R)=dτiA(R)=τi,R⊆R,∀τi.
The above formulation of the MRTA problem attempts to find an allocation for each robot such that the distance traveled by the robots to perform the tasks is minimized. The two constraints of the problem ensure that the same task does not get allocated to the same robot more than once and the total number of robots allocated to perform a task equals the demand for the task.
The solution to the MRTA problem has been shown to be an instance of the dynamic traveling salesman problem and proven to be NP-hard [49]. In this paper, we propose a spatial queue-based [50] solution for the MRTA problem using a heuristic that represents the distances between robots and tasks as an ordered queue based on the robots’ locations and intertask distances. To achieve this is in a systematic manner, each robot utilizes the following four mathematical constructs.(1) Intertask Transition Matrix. Intertask distances form the basis of our method as the objective of the MRTA technique is to enable robots to find a suitable schedule or order of navigating between tasks so that the total distance traveled by them is reduced. The intertask distances are represented as a transition matrix. The transition matrix at time step t is denoted by M(t) and given by the normalized inverse Euclidean distances between every task pair, as shown in
(2)Mt=π11π12⋯π1nπ21π22⋯π2n⋯πn1πn2⋯πnn,
where πi,j=1/di,j/∑j≠i‍1/di,j.Each entryπij of M(t) represents the probability of a robot to select task τj following τi, based on the distance between the tasks’ locations. Note that πii=0 and therefore the diagonal elements of the matrix are zeros. The transition matrix values are calculated independently by all robots. Initially, the transition matrix is computed for all task pairs, but as time proceeds, each robot recalculates the matrix when it completes a task or when it receives information that a task has been completed by other robots. The transition probabilities of completed tasks are set to zero and the probability values in M(t) are renormalized.(2) Robot State Vector. The state vector of a robot comprises the inverse Euclidean distances between the robot and each task in the environment. The state vector for robot i, Vri, at time step t is given by
(3)Vrit=πi1^t,πi2^t,…,πin^t,
where πij^(t)=1/d^i,j(t) and d^i,j(t) is the distance between robot ri and task τj at time step t.(3) Task Proximity Vector. The task proximity vector of a robot ri represents its preference for each task τj in the environment based on performing task τj first followed by the remaining tasks. It is calculated as the product of the robot ri’s state vector and the intertask transition matrix. The task proximity vector for robot ri at time step t, V´ri(t), is given by
(4)V´rit=Vrit×Mt.(4) Robot Spatial Task Queue. The spatial task queue of a robot denotes the order in which the robot plans to perform the tasks in the environment. It is calculated by removing all tasks from the task proximity vector that are either occupied or completed and sorting the remaining tasks in descending order based on their proximity vector values. The task queue for robot ri at time step t, Qri(t), is given by
(5)Qrit=q1,q2,…,qn:qk≥qk+1,∀k,qk∈V´rit.Robots use the spatial queueing framework to select tasks using the spatial queueing MRTA (SQ-MRTA) algorithm. In the SQ-MRTA algorithm, each robot sorts the available tasks using (2)–(4). The robot then selects the task at the head of the spatial queue and announces a bid for that task based on its cost (distance) to perform that task. It then waits for a certain time period to receive bids for the same task from other robots. If it is the highest bidder and the task is still available, it proceeds to perform the task; otherwise it selects the next available task from its spatial queue and repeats the bidding process. When it finishes performing the task, the robot broadcasts a task performed message. When robots receive a task performed message from another robot that results in the task being completed (sufficient number of robots have visited the task), they rebuild their local copy of the transition matrix.We verified the performance of the SQ-MRTA (SQ) algorithm and compared it with three state-of-the-art MRTA algorithms: the Hungarian assignment (HA) based algorithm [51], a decentralized greedy (DG) allocation algorithm [47], and the repeated auctions (RA) algorithm [52]. As before, the algorithm was implemented on Corobot robots within the Webots simulator. We used 5, 10, 15, or 20 robots with 6, 12, 18, or 24 tasks within a 20×20m2 environment. Each task was required to be performed by 3–5 robots. All results were averaged over 10 simulation runs. We evaluated different metrics including the total time required to complete tasks and the average distance traveled per robot. Two illustrative graphs of our simulations are shown in Figures 9 and 10. In Figure 9 we see that the SQ-MRTA algorithm performs comparably with the repeated auctions (RA) algorithm. For more combinations of robots and tasks, Figure 10 shows that our SQ-MRTA algorithm performs very closely in comparison to the repeated auctions (RA) algorithm, with their simulation times lying ±10% of each other. On the other hand, the HA algorithm performs poorly as the numbers of robots and tasks increase because it assigns robots to tasks based on the initial placement of robots and tasks; delays in robots reaching tasks due to interrobot collision avoidance are not considered by it while determining the robot to task assignments. The DG algorithm is inefficient in terms of task completion times when the number of tasks greatly outweighs the number of robots as it allocates the closest task to a robot and is unable to calculate a suitable schedule when each robot needs to perform multiple tasks.Completion times with fixed task load of24 tasks for 5, 10, 15, and 20 robots (a) and with fixed number of 20 robots for 6, 12, 18, and 24 tasks (b) for the compared MRTA approaches.
(a)
(b)Figure 10
Competitive ratio of simulation times using the Hungarian method as the baseline. Different robot and task numbers’ combinations used are shown on thex-axis.


## 4.3. Information Aggregation Techniques in COMRADES

2 A central aspect of multirobot autonomous landmine detection is to combine the information about the characteristics of a potential landmine from different types of sensors and make a decision whether the object is indeed a landmine and identify its characteristics, if it is indeed one. Previous researchers [17] have considered this problem from a static viewpoint where all information about a landmine’s characteristics is assumed to be available and the main concept is to use statistical inference techniques to classify the landmine’s characteristics with accuracy. However, in COMRADES, the process of landmine detection is not an instantaneous one; it continues over a period of time during which robots with appropriate sensors, corresponding to a potential landmine’s initially perceived characteristics, need to be deployed to the potential landmine’s location so that the cumulative information gathered by the robots’ sensors can improve the accuracy of the landmine’s detection. Because of this dynamic nature of landmine detection, we consider the following multisensor information aggregation and sensor scheduling problem in COMRADES, given an initial signature perceived by a certain type of sensor from a potential landmine, which is an appropriate set of sensors (robots) to deploy additionally to the location of the potential landmine so that the landmine is detected with higher accuracy. Details of the operation of the information aggregation technique along with analytical and experimental results of its performance are given in [53]; we provide an overview of its main features and a few significant results in the next section.To solve the information aggregation and sensor scheduling problem in COMRADES, we have proposed a novel technique that uses a market-based information aggregation mechanism called aprediction market. Each robot participating in the landmine detection task is provided with a software agent that uses the sensory input of the robot from a potential landmine and performs the calculations of the prediction market technique. A schematic describing the technique is shown in Figure 11. When an agent records readings from a potential landmine on its sensors, it associates a probability value, called abelief, ba,t, to denote the agent’s confidence in identifying the sensed object as a landmine. The beliefs are conditioned over past belief values to prevent wide variations from the object’s previous readings due to sensor noise or ambient conditions using a Bayesian network. Each agent then strategically calculates a sensor report, ra,t, from its belief and expected rewards from making the report, using a utility maximization technique. It then submits this report to a central location called theaggregator or market maker agent. The information aggregation or fusion is implemented using the aggregation mechanism that uses a technique called a logarithmic market scoring rule (LMSR). This technique uses a utility-based formulation of the costs and value to each sensor (robot) for identifying an object of interest as a landmine. It then assigns a score or virtual reward to each sensor (robot) if it correctly reports the probability distribution over the different types of objects of interests such as landmine, metal but not landmine, and not landmine. The details of this technique are given in [53]. The aggregation mechanism outputs a single aggregated belief value, Bt. The aggregation mechanism also selectively includes weights of the sensor reports from a human expert about the accuracy of the sensors’ reports based on the ambient conditions of the sensors. The aggregated belief value is then passed on to a decision maker agent that makes decisions about which other robots (sensor types) should be deployed to the potential landmine’s location using a Bayesian inferencing based technique, so that the landmine can be confirmed rapidly and accurately [53].Figure 11
Weightage of sensor reports from human expert based on environment and operational conditions.We simulated our algorithm using three different types of sensors, MD, GPR, and IR-based multisensor device. We performed different experiments with data from different types of sources (metallic, low-metallic, and nonmetallic) collected by different sensors at different times. A few experimental results of our algorithm while using identical data distributions and settings are highlighted in Figures12–14. Figure 12 shows the relative costs of deploying the sensors and the corresponding root mean square errors (RMSE) from the readings when using one type of sensor. Figures 13(a)–13(d) show the effect of deploying multiple sensors of different types over time. For these experiments, the data was assumed to arrive from the same source object of interest. Different sets of sensors were deployed over 7 time steps. We notice that while using 5 MDs (in Figure 13(a)) the RMSE reduces to 20% in 4 time steps, but with a combination of MD, IR, and GPR (in Figure 13(d)) the combined RMSE from the fused data from these sensors is reduced much more, to around 6%. Finally, Figures 14(a)–14(c) illustrate the comparison of our proposed prediction market-based techniques for information aggregation with two techniques. The results show that the information fusion performed using our technique reduces the RMSE by 5–13% as compared to a previously studied technique for landmine data fusion using the Dempster-Shafer theory [17] and by 3–8% using distributed data fusion technique [54]. We also conducted several experiments to test the effect of various parameters in our model, and we found that using the combination of different sensors in the environment gives the best accuracy for the object’s type identification.(a) Cost to classify different types of objects, mines and metal but not mine and nonmetal, using different types of sensors. Relative costs of sensing using MD, IR, and GPR were assumed to be in the ratio of 1 : 2 : 4. (b) Root mean square error from different types of sensors when used individually over time at the same object of interest. Note that although using MDs along has a low cost, their RMSE is higher (accuracy is lower).
(a)
(b)Average RMSE in the environment with 5 MD sensors (a), 5 MD and 1 GPR sensor (b), 5 MD, 1 IR, and 1 GPR sensors (c), and 2 MD, 2 IR, and 2 GPR sensors (d).
(a)
(b)
(c)
(d)Comparsion between our prediction market-based information aggregation and Dempster-Shafer theory based fusion (DS) and distributed fata fusion (DDF); (a) root mean square error; (b) normalized root mean square error; and (c) information gain. The results show that, over time, the PM-based technique is able to perform better than the compared techniques.
(a)
(b)
(c)


## 5. Conclusions and Future Direction

In this paper, we have described our experience with the COMRADE system for autonomous landmine detection using multiple robots. We have customized a Coroware Explorer robot with a metal detector to detect landmines and performed tests with it on different terrains. We have also addressed various aspects of landmine detection such as multirobot search and coverage, multirobot task allocation, and multisensor data fusion using different algorithms and validated our results using simulated indoor Corobot robots.As future work, we are looking at several directions to improve our proposed techniques. Integration of a wider suite of sensor devices such as thermal sensors, GPRs, and chemical sensors on outdoor robot platforms and test of the correct combination of sensors for different ambient conditions such as ambient temperature, sunlight, depth of landmines is an ongoing work in our research. We are also investigating ways to improve our coverage algorithm by sharing maps between robots, planning coverage paths based on expected information gain about landmines, and improved information fusion techniques for combining data from multiple sensors. Finally, we are also looking at using aerial robots to help ground moving robots navigate more intelligently in the environment. Overall, we envisage that our research will lay the foundation for further research and proliferation of multirobot systems for landmine detection, nuclear source detection, unmanned search and rescue, emergency response services, and other high-risk applications.



---

*Source: 921370-2015-02-15.xml*