Abstract
We address a task coverage problem to cover all given tasks with a given number of mobile sensors. In this context, we consider tasks as certain points or regions that should be probed by sensors. Our work is to find initial tasks to deploy sensors in advance, and find an efficient set of search paths from the initial tasks that completely covers all tasks and minimizes the maximum cost among paths. This is a challenging issue for various sensor applications, particularly those related to time-critical missions, such as search and rescue operations. We propose an algorithm that selects a set of all-pairs shortest paths with fewer duplicated tasks and extends each path using remaining tasks while covering all tasks and avoiding cost increases. Experimental results demonstrate that the proposed algorithm provides efficient solutions compared to existing algorithms in terms of coverage and maximum path costs.
Keywords
Introduction
As our lives are increasingly threatened by disasters and environmental pollutants, such as earthquakes, tsunami, airborne particulate matter, and chemical contaminants, the use of sensors to monitor real-world environments has become a popular research area. Sensors are widely used not only to detect abnormal changes (e.g. temperature sensors can detect a forest fire 1 ) but also to search an area to respond to a disaster (e.g. chemical sensors can find contaminated areas). Conventionally, when deploying sensors, the objective is to determine the optimal sensors for maximal coverage while minimizing energy costs. 2 In this scenario, sensors are positioned in static locations and can thus be deployed quickly to provide continuous information; however, such sensors have limited battery capacity. Due to difficulties associated with handling exhausted batteries and deploying sensors in appropriate locations to respond to unpredictable events, mobile sensors have been investigated.3–6 There has been active research in exploring, deploying, and covering a target environment; 7 where to deploy sensors; 8 and how to evolve sensor location over time. 9
Coverage is to cover all given locations, areas, or tasks with respective sensors. To achieve coverage, we consider a mobile sensing platform and focus on coordinated search strategies to select initial sensor locations and their movement trajectories. Specifically, our problem is motivated by the requirements of unexpected time-critical events, such as disaster rescue and detoxification missions. Our goal is to find the initial locations and trajectories (paths) of a set of given sensors that allow such missions to be accomplished as quickly as possible. Specifically, it is to (1) find initial tasks, that is, find locations where sensors are to be deployed in advance and begin sensing as required, and (2) find an efficient set of search paths from the initial tasks that completely covers all tasks and minimizes the maximum cost among paths. Min and Papanikolopoulos 10 suggested that a large number of robots (i.e. mobile sensors) do not always provide a quick solution to coordinated search coverage problems. They attempted to find the minimum coverage time assuming that each mobile platform is deployed from the same location. However, this assumption restricts some possibilities in terms of the coverage cost of multiple sensors. In contrast, we consider initially unfixed locations for sensors that must cover a set of target locations.
In a time-critical search with multiple coordinated sensors, it is most important to reduce the maximum search time among all sensors because such missions can only be completed after the last search has been performed by the mobile sensor with the maximum search time. Traditional coverage problems often deal with maximizing the coverage area and minimizing total coverage cost,2,3 in which the costs of mobile sensors can be power, time, bandwidth, and so on. In our work, we consider coverage cost as the sum of costs defined in two locations, which include general terms such as power and time. However, for parallel mobile sensors executing a mission, total coverage cost is less meaningful than the maximum coverage cost. Minimizing the total cost of all mobile sensors may help minimize energy consumption; however, it may not optimize mission completion time. For parallel multiple sensors, minimizing the maximum cost among all sensors is more important for time-critical missions.
Pursuing the minimal maximum cost is very challenging even for a known number of mobile sensors due to complexity and uncertainty. Figure 1 shows an example of representing different search costs according to the selection of initial sensor locations and their corresponding trajectories. In the graphs, the vertices (blue squares) indicate locations to be visited. Edges are represented as dashed lines, and the numbers indicate their connections with respective costs. Hereafter, we refer to a location to be searched as a task. As can be seen in Figure 1(a) and (b), even though the structure of the environment is the same, the maximum search costs with two mobile sensors differ. Figure 1(a) illustrates initial tasks D and E and their trajectories. Here, the maximum cost is 6. In Figure 1(b), where the initial tasks are A and B, the maximum search cost is 7. From these examples, it is evident that the initial tasks and their trajectories can significantly affect maximum search cost, that is, the time required to accomplish the search mission.

Example showing the significance of the selection of initial tasks for a given number of sensors (two). Tasks and their edges are represented by blue squares and dashed lines, respectively. We assume that the cost is the same in both directions: (a) a search from initial tasks D and E for two paths is compared with (b) a search from initial tasks A and B.
In this study, we investigate a task coverage problem (TCP) with mobile sensors in which sensors must completely cover (i.e. search and visit) all given tasks. Assuming a given number of mobile sensors and a set of predefined tasks, the goal is to find efficient paths that consist of the initial tasks and subsequent suitable tasks to solve the TCP with minimal maximum search cost. We propose a path-finding algorithm based on all-pairs shortest paths. For multiple mobile sensors, minimizing the maximum cost relies heavily on the selection of initial tasks. Therefore, the proposed algorithm selects the initial set of tasks from a pool of all-pairs shortest paths sorted in increasing order of path cost since the shortest paths usually cover more tasks with minimum costs. To avoid overlap in the initial set of tasks, we consider similarities among the visiting tasks for each path in the set. When the initial set of paths does not cover all tasks, we extend each path with the remaining shortest paths to include uncovered tasks. Since path selection may yield cost variations, that is, less than the maximum cost, we attempt to balance the cost by removing some tasks from the sensor with the maximum cost and assigning these tasks to other sensors with lower cost. The proposed algorithm minimizes the maximum cost to accomplish a time-critical search and guarantees that mobile sensors completely cover all given tasks.
Our contributions are as follows. (1) Compared to existing studies that focus on a single initial task for all sensors or multiple predefined initial tasks, the proposed task coverage algorithm provides trajectories and identifies initial tasks. (2) The proposed technique minimizes maximum cost; thus, a mission can be accomplished as quickly as possible, which is the most important goal for a time-critical mission. (3) We formally demonstrate that the proposed algorithm completely covers all tasks, and provide extensive experimental results to demonstrate that the proposed technique minimizes the maximum coverage cost.
TCP with mobile sensors
In our TCP, a task represents a position or a stationary object that a mobile sensor must cover. Tasks can be considered regions of interest, for example, regions suspected of containing bombs. They can also be considered the locations of stationary sensors, for example, a battery may need to be charged at a given location (i.e. task). In other words, with regard to deploying mobile sensors, the problem is to find a certain number of tasks where the tasks act as sensor’s start positions in order to traverse paths that minimize the maximum travel cost. Note that we assume that a predefined set of tasks is known a priori. We will discuss the k-task coverage problem (kTCP) for a k number of mobile sensors in the “Problem description” and “Objective” sections, respectively. We will then mention a real-world application for the target problem in the “Application” section.
Problem description
For simplicity and without loss of generality, we use a graph representation for our coverage problem. We consider a weighted graph
For a given set of nodes with their weighted edges, we attempt to minimize the maximum path cost (MPC) for k available sensors along paths that cover all tasks. Note that the k number of sensors varies depending on the number of sensors required to complete a given mission. kTCP finds the search paths of k sensors and is defined as follows.
Definition 1
The kTCP is to find a set
MPC is the search cost of the maximum (i.e. longest) path among the k paths and is defined as follows.
Definition 2
MPC: The maximum cost path denoted as
Note that tasks do not need to be visited more than once; however, multiple visits to the same tasks are allowed only if including them in a path reduces the respective path cost. We also assume that all edges have non-negative weights and the graph must be connected.
Objective
The objective is to find a solution for kTCP that minimizes the MPC when a graph
Here, k is the given number of sensors and
Application
Here, we introduce a real-world application suitable for our TCP. The proposed kTCP algorithm can be used for a team of mobile platforms with sensors. Here, a team of sensors gather information regarding tasks in an environment and a team of mobile search sensors cover the environment cooperatively. For example, consider an aerial vehicle flying in an environment in which moving platforms with sensors must execute a search mission. In such a mission, a team of fast aerial vehicles with appropriate resources can cooperate with mobile sensors. This type of cooperation is also applicable to underwater environments. One team of vehicles constructs an information map, including tasks and their edges, while another team of search sensors distributively controls along with the generated paths.
Figure 2 shows an example of map generation using an unmanned aerial vehicle, that is, a drone (Figure 2(a)). Here, assume that a bomb has been placed underneath a car. We must know where the car is in a certain parking lot and cover candidate cars to search for the bomb. Images are captured sequentially as the drone flies over the parking lot to generate images with identified search positions (red dot, Figure 2(b)). The tasks and their edges are shown in Figure 2(c). Here, we assume that fast and large platforms can generate an information map consisting of tasks and their edges. The proposed technique can be applied to generate a set of cost-efficient paths using known resources (i.e. k sensors) to search the bomb.

Map generation process: (a) drone, (b) map generated by the drone, and (c) tasks and their edges in a coordinate system.
Literature review
In sensor networks, coverage typically indicates the degree to which the sensing field is monitored by sensors. 11 Here, the sensing field can be areas (i.e. regions),12–14 points,15,16 or barriers17,18 that should be fully covered. However, these traditional coverage studies only deal with static sensors and primarily focus on maximizing coverage while minimizing energy to prolong a sensor network’s lifetime. 2
More recently, mobile sensor networks have become a popular research area because, with mobile sensors, it is possible to increase capabilities and reduce communication costs. 3 However, most mobile sensor network studies focus on increasing a network’s lifetime, 4 increasing channel capacity, 5 and enhancing coverage, 6 while our work handles trajectories and the work time of mobile sensors. Note that the mobile sink routing problem19,20 is similar to our problem. In sensor networks, sinks or base stations aggregate data from many sensor nodes and forward the results to a server. Sink mobility enhances the connectivity of sensor networks, reduces the number of hops in data routes, and provides load balancing among sensor nodes. However, most mobile sink studies only considered energy efficiency,21,22 network latency, 23 and reliability 24 when finding optimal moving paths for sinks. Another issue in sensor networks is the task allocation problem in crowdsensing. Task allocation in crowdsensing gathers sensing information from mobile sensors, such as sensors in mobile phones and vehicles.25,26 Here, a reward function is utilized for the problem’s objective, that is, maximizing the total reward of the system while assigning tasks to users/vehicles.
In robotics, the multi-robot coverage problem, which conducts given tasks using multiple robots, is closely related to our problem. Agmon et al. 27 proposed a spanning tree-based method for a multi-robot coverage problem. In addition, Even et al. 28 presented a min-max tree-based algorithm for robots to completely cover all given tasks and reduce the total path costs. Such algorithms have been exploited to address the multi-robot exploration problem, 29 which is based on a global optimization strategy for balanced exploration with K-means clustering in order to assign robots to an area divided by cells. However, the algorithms assume that the initial robot locations are predefined. Min and Papanikolopoulos 10 indicated that having a large number of robots is not always sufficiently fast to solve coverage problems, and attempted to determine minimum coverage time under the assumption that each robot starts from the same location.
In terms of finding a given number of paths, our problem can be considered an extension of the Traveling Salesman Problem, which has conventionally been solved using heuristic approaches.30,31 Rosenkrantz et al.
32
presented that a nearest neighbor (NN) method finding a tour provides the upper and lower bounds relative to the ratio of the obtained length to the minimal length; the upper bound is half of
Proposed algorithm
The proposed algorithm uses all-pairs shortest paths. Among the shortest paths, we select an initial set of paths and combine them to cover all given tasks. The all-pairs shortest-path algorithm provides optimal paths from each node to all available nodes. Rather than connecting between nodes, we employ a methodology to combine the shortest paths. The proposed algorithm efficiently selects an initial set of shortest paths while avoiding overlapped tasks and maintaining the current MPC. For complete coverage, we combine possible shortest paths with the initial path selections.
Let
Our motivation for the use of all-pairs shortest paths is as follows: (1) a shortest-path algorithm is well-studied and provides optimal paths from one node to another with minimum cost and (2) if
Our kTCP with the minimum MPC algorithm is given in Algorithm 1. For inputs, the algorithm only takes a graph
Algorithm 1 is described in detail as follows:
Each sensor is assigned to each task if the number of sensors
All-pairs shortest paths (
Select-Initial-Paths (
where
Assign-Remain-Sensors (
Extension-of-Paths (
(a)
(b)
With the chosen
Balancing-Paths (
Eliminate-Multi-nodes (
Proposition 1 addresses the result of Algorithm 1, that is,
Proposition 1: coverage
For
Proof
Let
For
For
If
The coverage problem that minimizes cost for multiple sensors and simultaneously finds initial tasks is NP-hard and our algorithm is a heuristic approach. Due to the reason, instead of formal analysis, we here provide a simple case study of the approximation ratio which is represented by the MPC over optimal path cost as shown in Table 1. We assumed that tasks are uniformly distributed with a certain edge cost
Performance ratio (coverage cost over optimal performance).
Experimental results
Setups
Experiments were performed to demonstrate the performance of the proposed algorithm. The experimental results indicate that the proposed algorithm fully covers all given tasks and finds search paths for mobile sensors with initial tasks that have smaller MPC than other competitive algorithms. For the weighted graph
For comparison, we include the kNN algorithm
30
and the parallel path coverage (PPC) algorithm.
10
Table 2 briefly describes the compared algorithms. The kNN algorithm is a simple greedy method to find the minimum traveling cost from
Compared algorithms.
We include kNN in our comparisons to demonstrate that the proposed algorithm finds paths with minimized MPCs that are comparable to the results of kNN, which finds minimized MPCs for a given set of initial tasks. In addition, we include kNN-random in our comparisons to demonstrate the importance of finding proper initial tasks to minimize MPCs. Note that choosing
First, the algorithms are applied to a graph (size,

MPC comparison. Each experiment is run on the same graph
Results
The experimental results demonstrate that the proposed method has acquired lower MPCs than kNN and much lower MPCs than kNN-random due to the choice of a seed set of paths depending on the dissimilarity and the shortest paths. The comparison with kNN-random shows the effect of selecting proper initial tasks relative to MPC. As seen in Figure 3, the MPCs acquired with the proposed method are 83.0%, 73.2%, 65.3%, and 34.9% of those obtained with kNN-random on average for
Note that the results obtained with the PPC algorithm are not shown in Figure 3 because this algorithm does not fix the number of sensors

Comparison of the number of sensors (blue circles) and MPCs (red crosses) for the PPC algorithm.
Second, we evaluate the effects of the dissimilarity threshold in the Select-Initial-Paths step (Algorithm 1) because selection of the initial task set is highly sensitive to this threshold (until now, the threshold has been set to 1.0). Here, we investigate the degree to which MPCs are influenced by this dissimilarity threshold. As a representative example to demonstrate this sensitivity, Figure 5 compares the MPCs acquired with complete dissimilarity (

Comparison of MPCs relative to the choice of dissimilarity. Blue diamonds, light-red squares, green triangles, and red crosses indicate MPCs acquired by the proposed algorithm (
Here, we demonstrate that the proposed algorithm can be applied to both open spaces and spaces with obstacles. For a space with obstacles, we utilize the office map acquired from the Player/State 35 robot simulator (Figure 6(a)). In such a space, the routes between tasks may not be straight if obstacles exist in the middle of the tasks; however, we represent all edges as straight lines with the corresponding cost (i.e. Euclidean distance) by appropriately connecting each task to a feasible route in order to move sensors (Figure 6(b)). Here, we utilize an office map with randomly generated tasks and their edges. 10

Randomly generated tasks and edges applied to a map from the Player/Stage 35 robot simulator: (a) office map with 19 randomly generated and intermediate tasks and (b) graph with 19 tasks and their edges.
For the space with obstacles, we compare the MPCs of the proposed, kNN, kNN-random, and PPC algorithms in Figure 7. Similar to the results obtained with open spaces, the proposed algorithm acquires the best MPC compared to the other algorithms. The proposed algorithm reduces the MPCs of the kNN, kNN-random, and PPC algorithms by 16.9%, 36.4%, and 34.1%, respectively.

Comparison of MPCs by the proposed algorithm to the best results of PPC, kNN, and kNN-random. The proposed algorithm reduces MPCs by 16.9%, 36.4%, and 34.1% compared to kNN, kNN-random, and PPC, respectively. Each method is applied to the graph (Figure 6(b)).
Figure 8 shows the coverage results of the proposed algorithm compared to kNN because the completeness of all tasks is an important goal in a TCP. As proved in Proposition 1, the proposed algorithm completes all tasks for each case, while kNN results in coverage of 81.4%, 90.7%, 94.9%, and 99.2%. Note that the average MPCs acquired by the proposed algorithm are still less than those of kNN while maintaining 100% coverage (225.1, 145.6, 70.6, and 24.5 compared to 277.3, 151.0, 81.6, and 25.6 for

Average completeness while covering entire tasks. The x- and y-axis represent the number of sensors and the ratio of covered tasks, respectively.
The experimental results demonstrate that the proposed method completely solves kTCP with lower MPCs than the existing methods.
Conclusion
In this article, we have presented kTCP to cover all given tasks with a given number of mobile sensors. The proposed method attempts to find an efficient set of paths, including initial tasks, in terms of minimizing the maximum cost. We expect that our research will inspire various mobile sensor applications, particularly those that deal with deploying moving sensor platforms in order to accomplish a search and rescue mission. Thus, the proposed algorithm selects a set of shortest paths with fewer duplicate tasks and extends each path with remaining tasks while covering all tasks and avoiding cost increases. We run our algorithm on various numbers of tasks in both an open space and an obstacle space, and showed the advantages of finding start locations from scratch as well as reducing coverage cost due to dissimilarity of the shortest paths. The experimental results demonstrate that the proposed algorithm provides efficient solutions compared to the well-known kNN and PPC algorithms in terms of coverage and MPC. In future, we will focus on timely changes and dynamics in tasks for kTCP.
Footnotes
Handling Editor: Pascal Lorenz
Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.
Funding
The author(s) disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: This material is based on the work supported by the BK21 plus program through the National Research Foundation (NRF) funded by the Ministry of Education of Korea. Hyo-Sang Lim was supported by the Institute for Information & Communications Technology Promotion (IITP) grant funded by the Korea government (MSIT; no. R7117-17-0214, Development of an Intelligent Sampling and Filtering Techniques for Purifying Data Streams).
