**3.3 CPP research work**

The main components of the CPP process used in the work recently investigated in this article are summarized in **Figure 6**. **Figure 6** summarizes recent research on multi-robot CPP, which includes the evaluation metrics for the environment type, algorithm processing technique, viewpoint generation method, application path generation method, and application method. According to the researched

#### **Figure 6.**

*Summary of CPP research work [1]. It includes the evaluation metrics for the environment type, algorithm processing technique, viewpoint generation method, application path generation method, and application method.*

literature, there are many problems that block the progress of efficient multi-robot cooperative CPP. These issues include heterogeneity, prioritization, robustness, communication, adaptability, open systems, collective intelligence, and multi-robot scheduling.

## **4. Coverage for patrol robots**

With the development of robot technology, research and interest in unmanned patrol robots have been increasing in various fields that require monitoring and security, such as social safety and national defense [20–24]. In particular, research on multi-object systems consisting of two or more patrol robots in a wide area is being actively conducted [25, 26]. These systems were essentially trying to solve the problem of multi-robot patrols. The challenge is to find the optimal solution for given tasks, that is, monitoring, information gathering, object discovery, anomaly detection, and so on (**Figure 7**).

Several studies have been attempted to solve the monitoring and security problems of multi-agent systems, and through this, the necessary parts for an intelligent monitoring system are as follows. Given an environment map, we need to (1) extract nodes automatically to generate a robot roadmap. In particular, when generating nodes, it is necessary to obtain sophisticated node extraction results by reflecting the normal vector direction of the map and the sensing range of the sensor. (2) You need to solve the TSP to create a full patrol route. (3) In order to assign a patrol route to a multiagent system, it is necessary to represent the relation between the maximum number of robots, the maximum patrol period, and the maximum speed of the robots. As a result, the patrol paths assigned to each agent can be derived. (4) If the environment map or the obstacle probability map according to the density of obstacles other than the point of interest is given, it is necessary to change the maximum velocity of the robot in the corresponding area or to allocate a dedicated robot. A summary of this can be found in **Table 1**.

Among them, the study of P. Fazli [26] is shown in **Figure 8**. Several concepts are also represented. First, the path between robots should not overlap, and it is an approach that increases the frequency of visits by reducing the visit period. The method is done according to following process.

**Figure 7.** *The components of the multi-robot surveillance system [20]. (a) Multi-robot monitoring. (b) Multi-robot patrol mission.*


#### **Table 1.**

*Coverage techniques and conditions for intelligent surveillance systems.*

#### **Figure 8.**

*Schematic diagram of the path overlap problem and the visiting frequency problem [26].*


6.Finally, the path generation algorithm is performed using a double-minimum spanning tree or a linked Lin-Kernighan algorithm to create a path that traverses the start and end of the graph assigned to each robot.

### **4.1 Spanning tree-based coverage (STC)**

The input to the STC algorithm is a constrained planar environment, partially filled with smooth and stationary obstacles. The algorithm first subdivides the working area into 2D-sized cells and discards cells partially covered by obstacles. The graph structure G(V, E) is defined as a line segment that defines the center point of each cell as node V and the centers of adjacent cells with edge E. The following algorithm constructs a spanning tree for G and uses this tree to generate coverage paths as shown in **Figure 9**.

### **4.2 Cyclic coverage algorithm**

The cyclic coverage suggested by P. Fazli is similar to the cluster-based coverage algorithm, and the cyclic coverage approach finds the guards, builds a graph (VG), and then reduces the graph, named reduced Vis. It uses the Chained LinKernighan algorithm to generate a path for the entire reduced Vis. The proposed algorithm then distributes the robot equidistantly around the tour and moves it recursively. The cyclic coverage approach produces an optimal or near-optimal solution for a single robot in terms of full path length and total worst-case visit duration.

#### *4.2.1 Issues of cyclic coverage*

There are about seven issues that are mainly dealt with in the cyclic coverage problem as shown in **Table 2**. The goal can be reviewed as a problem of minimizing the worst-case frequency or maximizing a random patrol target. However, most coverage problems were handled by minimizing the worst visiting frequencies. The environment can be largely divided into an indoor environment (corridor space) and an outdoor environment (open space). The third is whether there are any restrictions on the sensor. In practice, it is necessary to approach the problem of limited detection range and deal with it in detail. Agents can be viewed in static or dynamic environments and


#### **Table 2.**

*Issues of cyclic coverage methods.*

are usually defined in a goal-oriented fashion, which can be different depending on the given problem. If there are no communication restrictions, centralized control can be conducted to the robots, and the patrol policy can be defined as an area patrol that

covers all areas. If it is a border patrol problem, then the method produces how agents approach the border. Since in most cases the exact solution is not known, the goal is to get near-optimal in terms of time and distance.

#### *4.2.2 Simulation result of cyclic coverage*

The cyclic coverage method [28] can be applied to various maps as shown in **Figure 10**. (SLAM data set published on Ref. [29]). Three robots were considered for three maps in this simulation. The first figure in **Figure 10** is the result of generating a graph (consisting of nodes marked in green and edges) considering the detection range of the robot. By creating a single robot path from this graph and removing redundant paths (leaving unique paths), the path can be represented piecewise. The final result is obtained by merging a number of paths equal to the number of robots and assigning those paths to each robot. From the simulation results in **Figure 10**, it can be seen that each robot's coverage area is properly allocated.

#### **5. Area-based coverage**

Path distribution techniques can give poor results depending on the presence and geographic location of overlapping paths. To solve this problem, the process of area allocation can be applied. One method is the DARP (region segmentation based on the robot's initial position) method [30]. This method divides the area based on Voronoi segmentation and the initial position of the robot. It also scales the area through the metric function. The method has been improved according to the form of versions, such as 0.5, 1.0, and so on.

#### **6. Conclusion**

In this chapter, coverage techniques have been reviewed in terms of the model, robot systems, and their purpose by showing their procedures and simulation results. Particularly, in surveillance systems, coverage techniques, such as spanning tree, cyclic coverage, and area-based coverage, were described specifically, which can be expanded for multi-robot patrol systems. In addition, several issues on coverage were described and considered.

#### **Acknowledgements**

This research was a part of the project titled "Research on Co-Operative Mobile Robot System Technology for Polar Region Development and Exploration," funded by the Korean Ministry of Trade, Industry and Energy (1525011633).

*Autonomous Mobile Mapping Robots*
