Multi-Robot Persistent Surveillance With Connectivity Constraints

Mobile robots, especially unmanned aerial vehicles (UAVs), are of increasing interest for surveillance and disaster response scenarios. We consider the problem of multi-robot persistent surveillance with connectivity constraints where robots have to visit sensing locations periodically and maintain a multi-hop connection to a base station. We formally define several problem instances closely related to multi-robot persistent surveillance with connectivity constraints, i.e. connectivity-constrained multi-robot persistent surveillance (CMPS), connectivity-constrained multi-robot reachability (CMR), and connectivity-constrained multi-robot reachability with relay dropping (CMRD), and show that they are all NP-hard on general graphs. We introduce three heuristics with different planning horizons for convex grid graphs and combine them with a tree traversal approach, which can be applied to a partitioning of non-convex grid graphs (CMPS with tree traversal, CMPSTT). In simulation studies we show that a short horizon greedy approach, which requires parameters to be optimized beforehand, can outperform a full horizon approach, which requires a tour through all sensing locations, if the number of robots is larger than the minimum number of robots required to reach all sensing locations. The minimum number required is the number of robots necessary for building a relay chain to the farthest sensing location from the base station. Furthermore, we show that partitioning the area and applying the tree traversal approach can achieve a similar performance to the unpartitioned case up to a certain number of robots but requires less optimization time.


I. INTRODUCTION
M OBILE robots, especially unmanned aerial vehicles (UAVs), are of increasing interest in various application domains including surveillance.Examples for the deployment of robots for surveillance scenarios are disaster response [1], [2], [3], wildfire monitoring [4], security tasks [5], environmental monitoring [6], and exploration and mapping [7], [8].Persistent surveillance is the task of continuously monitoring an environment over a longer period of time.The potentially large area and the limited sensor view of robots requires a movement strategy such that every point of interest in the area gets visited periodically by the robots.In disaster response scenarios, it is also crucial that the mission operators are aware of the situation at any time during the mission, which implies that the robots have to continuously report the state of the mission and the captured data to the base station.Wireless transceivers enable the robots to exchange data over a limited distance only, and therefore it is necessary to transmit the data over multiple hops if a continuous connectivity to the base station is required and the area is larger than the communication range.A continuously connected network of robots and the base station further allows to track the state of the (aerial) robots for safety reasons.
In this paper we investigate in the problem of persistent surveillance with continuous connectivity constraints.Given a representation of the area, the number of robots, the positions of the points of interest (which we denote as sensing locations) and the base station, the problem is to find a path for each robot that minimizes the worst idleness for all sensing locations such that the network of robots and base station is connected throughout the mission.The idleness of a sensing location at a certain instant is defined as time that passed since the last visit by any robot, and the worst idleness is the maximum idleness over all sensing locations and over the whole mission duration.Since the duration of a persistence surveillance mission is potentially infinite, strategies are necessary that generate solutions for an infinite time horizon.Due to the connectivity constraint, the robots mutually restrict their possible movements and traditional patrolling strategies (e.g.[9], [10], [11]) cannot be directly applied because they do not coordinate the robots' movement in space and time for continuous connectivity.Online multirobot persistent surveillance algorithms often need the state of the whole environment to make a decision about the next action.Therefore, they rely implicitly on some communication mechanism allowing the robots to exchange information, but do not consider a limited communication range [12], [13].
Path planning for mobile robots is often based on an abstract representation of the environment obtained by some discretization technique.In this work we consider graphs [14] and grids [12].In a graph representation two types of edges describe whether a robot can move between two vertices and whether robots can communicate when placed at two different vertices at the same time.A grid represents a special type of graph where a robot can move between the neighboring cells.We study different problem instances related to connectivityconstrained multi-robot persistent surveillance.In particular, we define the problems connectivity-constrained multirobot persistent surveillance (CMPS), connectivity-constrained multi-robot reachability (CMR), and connectivity-constrained multi-robot reachability with relay dropping (CMRD).The latter two problems are concerned with reachability of vertices when all robots start at a dedicated base station vertex.We show that all these problems are NP-hard on graphs.
Figure 1 illustrates the different problems in a grid-based scenario composed by four convex partition around an obstacle.Sensing robots aim to cover the partitions while maintaining connectivity to the base station with the help of relay and release robots.The relay and release robots do not move while a partition is covered.Release robots are robots that stay at a release point.The release point is the starting position where the sensing robots start to cover the partition after they have moved together with the release robot to the release point.CMPS considers the movement planning within one convex area, CMR deals with the question which vertices/cells are reachable from the base station, and CMRD deals with the problem of placing relay robots.CMPSTT is concerned about the order of covering the partitions and the number of robots assigned to partitions.We assume that robots can change roles and can take on every role.Because of the complexity of finding feasible solutions, we do not attempt to solve CMPS on general graphs.In previous works [15], [16] we investigated in different strategies on grids where cells within a certain distance are within communication range.In contrast to our previous work we do not consider energy constraints in this work.These strategies can only be applied on convex grids without holes, which arise in the presence of obstacles.A tree traversal algorithm [17] with relay dropping can be applied to more general environments but does not perform as well as the suggested strategies in convex scenarios with many sensing locations.Therefore, we suggest a combination of tree traversal and coverage (CMPS with tree traversal, CMPSTT), which can be applied after a partitioning of an arbitrary shaped environment into convex partitions and ensures the connectivity constraint.We adapt the algorithm of [17] and show that determining the optimal order for visiting the partitions of a given partitioning to minimize the worst idleness is also NP-hard.Note that we have studied related patrolling problems of minimizing or constraining the delay between data generation at the robots and data arrival at the base station with relaxed connectivity constraints in [18] and [19].
The contributions of this work can be summarized as follows: (i) We define CMPS, CMR, CMRD on general graphs and prove that they are NP-hard, (ii) we propose strategies for convex grid areas, (iii) we combine tree traversal and area coverage for partitioned environments and show that CMPSTT is NP-hard, and (iv) we perform an extensive simulation study to assess the performance of the proposed strategies.
The remainder of the article is organized as follows: Section II discusses related work, Section III introduces the notation and investigates in the complexity on general graphs, Section IV describes the strategies on convex grid areas, Section V describes an extension to partitioned areas, Section VI presents the results of the simulation studies, and Section VII concludes the paper.

II. RELATED WORK
Multi-robot persistent surveillance is related to the multirobot patrolling problem.This problem is usually concerned with determining closed paths, which are continuously traversed by robots, or with controlling the robots along predefined paths to optimize for some performance metric [20],

Sensing robot Connectivity
Obstacle

Release point
Fig. 1.Problem instances of multi-robot persistent surveillance with connectivity constraints depicted on a grid environment with four convex partitions around an obstacle.The lower left partition is currently not covered in the depicted scenario.In a potential solution for CMPSTT the robots in the upper left partition gather at the release robot and retreat together with the relay robot to the release point of the lower left partition to cover this partition.
[21], [22], [10].Tour planning is often tackled from the operations research perspective by solving a vehicle routing problem or a multi-traveling salesperson problem on a graph.In [23] tours for multiple agents are planned such that the visit frequency of targets is maximized and agents can refuel at refuel depots.Mersheeva and Friedrich [24] perform path planning for multiple UAVs that repeatedly visit targets with different priorities.UAVs change batteries at base stations, and the planning horizon is determined by the available number of batteries.Manyam et al. [25] consider also the data delivery latency to the base station.Keller et al. [26] present a tour planning approach taking into account turning radius constraints of gliders.In [27] trajectories are planned to estimate a spatio-temporal field in a dynamic environment.
A key difference to our work is that continuous connectivity of the robots to a base station has not been considered at all.Nigam et al. [12] introduce a control strategy where each UAV selects the next cell to visit based on the idleness of the cell, the distance between the UAV and the cell, and the distances between the other UAVs and the cell.The infinite horizon persistence surveillance problem is converted to a short horizon problem where the necessary parameters are determined by an offline optimization approach.Franco et al. [13] present a controller adjusting speed and direction to reach a desired long term coverage profile.Santos et al. [8] investigate in exploring a spatio-temporal field with different goal selection strategies for a single robot.If the motion planning is done online with the approaches in [12], [13], the robots need to know the state of the whole environment and of all other robots.This knowledge requires communication between the robots or the base station and the robots.However, the discussed related work does not consider limited communication range.
Maintaining connectivity while executing spatially dis-tributed tasks is a recurrent requirement in mobile-robot systems.Panterati et al. [28] present a swarm of robots that move in compact formation through a convex environment and stops at certain locations to visit multiple task locations simultaneously by building one chain of robots towards each task location.The order in which the tasks should be visited is determined by solving a mixed integer linear program (MILP).
A tree growing algorithm [29] arranges the robots into a starlike topology to visit multiple task locations.Ponda et al. [30] present an algorithm for allocation of data streaming and relaying tasks to maintain connectivity to a base station during task execution.Grøtli and Johansen [31] investigate in offline mission planning for multiple UAVs to visit targets and stream data to a base station by solving a MILP model and exploiting a radio propagation path loss simulator to take bandwidth requirements into account.Flushing et al. [32] present also a MILP model for joint task scheduling and data routing and transmission scheduling.Finally, Zavlanos et al. [33] present a distributed algorithm for maintaining communication requirements with fixed infrastructure.All these approaches focus on connectivity maintenance with or without explicit task allocation but without explicitly considering persistence visits of a given set of tasks.Solving MILPs for path planning problems is demanding due to the computational complexity of integer programming.The computational complexity of planning the robots' movement on graphs has been investigated in literature.Hollinger and Singh [34] investigate in the multi-robot path planning with connectivity constraints on graphs.They show that the problem of planning paths for multiple robots from start to goal positions while maintaining connectivity in every time step is NP-hard, but some details about how to construct the graph are missing.Tateo et al. [35] show that the related problem, which they call multi-agent connected path planning problem (MCPP), is PSPACE-complete.Anisi et al. [36] show that the related problem of planning a path in a visibility graph such that several targets can be observed is NP-hard.Banfi et al. [14] show that the problem of planning paths to reach a connected configuration on a graph in minimum time is NP-hard.In contrast to all these investigations we focus on persistent surveillance with the connectivity requirement to a base station.
As a summary, our work combines persistent surveillance with connectivity requirements and appropriate motion planning.While there is a lot of work on each of these areas, we are not aware of related work that can be directly applied to our problem.The considered exploration task in [17] represents the most relevant work on connectivity-constrained motion planning with goal selection, and we use it as a baseline for our simulation study.We employ the work in [12] on goal selection for persistent surveillance, and a comparison with other approaches for persistent surveillance has been provided in [12].Work that approach connectivity-constrained motion from a control-theoretic perspective (e.g.[33], [37], [38]) do often not consider a particular application and goal selection.As a consequence, goal selection and scheduling of the robots for persistent surveillance has to be incorporated into these approaches.

Symbol
Meaning

III. PROBLEM FORMULATION AND COMPLEXITY ANALYSIS
This section introduces the notation and provides formal definitions of the problems.The used symbols and abbreviations are summarized in Table I.A set R = {1, . . ., r} of robots is available for the surveillance of an environment, which is modeled with two graphs: the movement graph G M = (V, E M ) and the connectivity graph G C = (V, E C ).Both graphs share the same set of vertices V (with |V | = n), which describe possible positions of robots at discrete points in time.Time is divided into time steps, and the positions of the robots at time step t is denoted p t = (p t (1), . . ., p t (r)), with p t (i) ∈ V .A subset V S ⊆ V represents sensing locations.When there is an edge [v, w] ∈ E M , a robot can move from v to w within one time step.An edge [v, w] ∈ E C means that two robots, or a robot and the base station b ∈ V , are able to transfer data to each other when they are at positions v and w at the same time.We call the tuple (G M , G C , b, V S ) describing an environment simply "graph" and refer explicitly to the graphs G M and G C if necessary.
A patrolling solution π is a mapping from instants of time to vertices in V for every robot and describes when vertices are visited by the robots.At each time step an instantaneous idleness is associated with a vertex v ∈ V S .This value describes the time passed since the last visit of the vertex.The definition of the idleness criterion adheres to the definition in [11]: Definition 1 (Instantaneous idleness, instantaneous worst idleness, worst idleness criterion [11]).If the robots follow a solution π, the instantaneous idleness I π t (v) ∈ R ≥0 at time t of vertex v ∈ V S is the elapsed duration since the last visit of v by any robot.By convention, at initial time, I π 0 (v) = 0, for any solution π and each v ∈ V S .The worst idleness criterion W I π is defined as where W I π t is the instantaneous worst idleness and is defined as W I π t := max v∈V S I π t (v).A solution of a persistence surveillance problem can be described as a sequence of positions π := (p 0 , p 1 , . ..) with each p t+1 resulting from p t where each robot moves along an edge of E M (or stays at the same vertex).A valid solution for CMPS has the property that at each time step t the vertex induced subgraph G t C := G C {p t (i) : i ∈ R} ∪ {b} is connected, i.e. all robots are connected with the base station.It is allowed that multiple robots can move to the same vertex at the same time.
To analyze the complexity of the problem of finding a minimum W I solution, we define CMPS as decision problem (the problem of deciding whether a given tuple belongs to a set of tuples): ) where p 0 ∈ V r are the initial positions of the robots and T is a time bound.The elements of the set have the properties: (i) p 0 (i) = v ∈ V S for some robot i, (ii) there is a sequence (p 0 , . . ., p t ), t ≤ T such that p t = p 0 , each v ∈ V S is visited by some robot (i.e.there is a robot i with p t (i) = v for 0 ≤ t ≤ t ), and (iii) the vertex induced subgraph G t C is connected for 0 ≤ t ≤ t , and (iv) r < n.
In this definition 1 T is a string of 1s of length T .The reason for this definition is that we can provide a polynomial transformation from 3SAT 1 to d-CMPS to show that the problem is NP-hard (actually it is NP-complete).Using the definition (G M , G C , b, V S , p 0 , T ), a transformation would have to check a sequence of at most T positions to derive a solution for the 3SAT instance.Such a check would result in an exponential time transformation.Additionally, to verify whether a solution is a valid solution for an d-CMPS instance, it would be necessary to iterate over exponential many positions, and therefore, the problem would also not be in N P .

A. NP-hardness results
To show the NP-hardness of d-CMPS, we provide a transformation from a 3SAT instance to a d-CMPS instance.The transformation for the 3SAT instance {c 1 = {x 1 , x 2 , x 3 }, c 2 = 1 A 3SAT instance consists of a set W = {x 1 , . . ., xα} of Boolean variables, and a set C = {c 1 , . . ., c β } of clauses where each clause contains exactly three literals.The literals are of the form x i or x i where x i ∈ W .The question is, whether there is an assignment of values from {T rue, F alse} to the variables such that in every clause at least one literal evaluates to T rue.
The filled circles depict sensing locations, the solid lines depict edges from E M and the dashed lines depict edges from E C .When there is a dashed edge between two dashed boxes, then there is an edge from E C between all pairs of vertices.There is no edge from E C within a dashed box.
Proof.The transformation from an instance of 3SAT with variables W = {x 1 , . . ., x α }, and clauses C = {c 1 , . . ., c β } to an instance of d-CMPS with graphs G M and G C with n = 4α + β + 2 vertices is defined as: On one hand, a solution to the 3SAT instance gives a solution with W I = 2β − 1: A robot at vertex x i moves to x i or x i depending on the assignment of variable x i .Since all clauses c j are satisfied, robot 1 in v can move to c 1 and back to v. When the robot is in v, the other robots can move back to the x i vertices.
On the other hand, every solution that results in a W I = 2β − 1 must result in an assignment for the variables x i that satisfies all clauses c j .The only possibility to reach any z i is from the start position.If robot 1 moves to c β , a robot in x i has to move to a z i to keep robot 1 connected to the base station, and if robot 1 reaches c i , the positions of the other robots constitutes a satisfying assignment for the 3SAT instance.
The α vertices x i above the base station are not necessary to show the NP-hardness of d-CMPS.Nevertheless, the use of these vertices can show that the problem cannot be approximated with any constant factor unless P = N P .The structure of the vertices x i , x i and v prevents that multiple robots gather The filled circles depict sensing locations, the solid lines depict edges from E M , the dashed lines depict edges from E C .Only the path from b to f 6 is shown, the paths between b and f 1 through f 5 are indicted with a dotted line for better readability.
at some x i and move to some x i and x i simultaneously or let the robots change the assignment while robot 1 is commuting between c 1 and v, which would solve the problem without solving the 3SAT instance.No matter how large the time bound T is, commuting between c 1 and v can only be done by solving the 3SAT instance.
In practical scenarios a predefined number of robots starts at a base station, which raises two related questions: How many robots are at least necessary to reach a certain vertex, and can each sensing location be reached from the base station?We define the decision problem d-CMR to show that the problem of determining the minimum number of robots necessary to reach a single vertex (as well as determining the minimum number of time steps to do so), when all robots start at the base station, is NP-hard (NP-complete).The second question is treated in the following Subsection III-B.

Definition 4 (d-CMR).
Problem d-CMR is a set of tuples of the form (G M , G C , b, g, r, 1 T ) where g is the goal vertex and T is a time bound.The elements of the set have the following properties: (i) There is a sequence (p 0 , . . ., p t ), t ≤ T such that p 0 = (b, . . ., b), p t (i) = g for some robot i, (ii) the vertex induced subgraph G t C is connected for 0 ≤ t ≤ t , and (iii) r < n.
To show that d-CMR is NP-hard we provide a transformation from set cover2 (SC) to d-CMR.The transformation from an SC instance with elements S = {1, . . ., 5} and subset family 3.The general transformation is described in the proof of Proposition 5. d-CMR is NP-hard.
Proof.The transformation from an instance of SC with elements S = {s 1 , . . ., s α }, a subset family F = {f 1 , . . ., f β }, and a number k (the trivial case k ≥ β can be ignored) to an instance of d-CMR with n = 1 + (M + 2)β + 2M is defined as (with M := max {α, β}): A solution of the SC instance with S = f j1 ∪. ..∪f j l and l ≤ k results in the following solution for the instance of d-CMR: l robots are placed at vertices f j1 , . . ., f j l subsequently with help of M robots that build a chain along the vertices u j1 to u jM on a path to a vertex f j (j ∈ {j 1 , . . ., j l }) and return to b.The sequence for placing one robot at f 6 in the example in Figure 3 is given as follows.Note that only the positions for the M + 1 = 7 robots, which are required to reach f 6 , are shown: . . ) After l robots have been placed at f j1 , . . ., f j l , each vertex s i is connected to the base station (since the set S is covered) and can be occupied by a robot.In the last step all these M robots move to the vertices s i at the same time along the edges There are M robots necessary to place a robot at a vertex f j or to change the position of a robot from a vertex f j1 to another vertex f j2 .Therefore, at most k − 1 robots can be placed at vertices s 1 to s k−1 , and since k < M , the vertex s M cannot be reached by changing the positions of robots at vertices f j .This means that before the last robot can move to the goal s M = g, all vertices s 1 to s α must be connected to the base station.This is only possible if at most k robots have been placed at vertices f j1 , . . ., f j l , and a solution for the SC instance is determined by the occupied vertices f j1 , . . ., f j l at that moment when another robot reaches the goal vertex.
A natural strategy for the reachability problem when E M ⊆ E C is that a group of robots start at the base station and move on a path from the base station to the goal in G M until the connectivity to the base station would break when moving further.Every time when this happens, a relay robot stays at the current vertex and the remaining robots continue moving towards the goal [17].Determining the optimal relay positions such that a goal can be reached with a predefined number of robots on a predefined path to the goal is also NP-hard, which x' 4 x' 3 x' 2 x' 1 c 1 c 2 c 3 b Fig. 4. Example of a transformation from a 3SAT instance (same example as in Figure 2) to a d-CMRD instance.When there is a dashed edge between two dashed boxes, then there is an edge from E C between all pairs of vertices.There is also an edge from E C between the vertices in a dashed box (since we show with a transformation from 3SAT to d-CMRD (see Proposition 7 and Figure 4) defined in Definition 6 (d-CMRD).The problem d-CMRD is a set of tuples of the form (P, E C , r) where P := (b, v 1 , . . ., v n ) is a sequence of vertices that describe a movement path, E C denotes the connectivity edges between the vertices (at least ), and r is the number of robots.The elements of the set have the property that v n can be reached with placing r − 1 robots at relay positions at some v i .
Proof.The transformation from an instance of 3SAT with variables W = {x 1 , . . ., x α }, and clauses C = {c 1 , . . ., c β } to an instance of d-CMPS with graphs G M and G C with n = 3α + β + 1 vertices is defined as: A solution of the 3SAT instance defines the positions of the α relays such that the robot α + 1 can reach the goal vertex c β .
If a robot can reach c β , then the vertices x 1 , . . ., x α , c 1 , . . ., c β are connected to the base station, which is only possible if a relay is placed at each z i such that the 3SAT instance is satisfied.

B. Note on graph traversal
A precondition for the existence of a solution to a persistent surveillance problem (where the robots start at the base station) is that all sensing locations can be reached from the base station with the available number of robots.In the previous subsection we have shown that determining the minimum number of time steps to reach a goal vertex from the base station is NP-hard.In this subsection we argue that determining the minimum number of robots necessary to reach a  (a) goal vertex is also NP-hard.We do not attempt to determine a solution with the minimum number of robots but provide a necessary and sufficient condition for the existence of a solution with n − 1 robots, since there are graphs for which no solution exists even if G M and G C is connected.
We say that a graph can be traversed with r robots if there is a solution such that every sensing location can be visited with r robots starting at the base station.Although a graph cannot be traversed if sensing locations and the base station are at different connected components of G M or G C , the fact that G M and G C are connected, is not a sufficient condition for a graph to be traversable.Such an example is shown in Figure 5a where both G M and G C are connected but the graph cannot be traversed.If a robot moves from the base station to vertex v or w (because [b, v] ∈ E M and [b, w] ∈ E M ), it will be disconnected from the base station.The graph in Figure 5b can be traversed with two robots but not with one (although the distance in Algorithm 1 determines whether a graph can be traversed with n−1 robots.We show that it terminates with traverse = true if and only if the graph can be traversed with n−1 robots.Although using n − 1 robots is a trivial solution, determining a solution with the minimum number of robots such that a graph can be traversed also solves the SC instance of d-CMR.This is because a solution with a minimum number of r *   Proof.First we show that if v is marked, then v can be visited.This can be shown by induction with the assumption that every vertex v that is added is occupied by a robot i that started at the base station (i.e.p 0 (i) = b) and has connectivity to the base station (there is a path in G t C from b to v).For the first vertex v that is added there must be edges [b, v] ∈ E M and [b, v] ∈ E C , i.e. robots can move from b to v.For subsequently marked vertices v there is an edge [v, w] ∈ E M such that a subset of the robots that are at w can move to v. The connectivity is maintained by a robot at vertex u and the edge [v, u] ∈ E C .The traversal can be interpreted as a solution with n−1 robots: If a vertex v is marked, a number of robots (sufficient to visit all vertices that are marked in subsequent steps) move from w to v such that there is exactly one robot at each v that has been marked when the algorithm terminates.The number of robots that should move to a marked vertex can be determined by traversing the tree described by the parent function, which is not shown here.
To show that if a solution P with r robots traverses a graph, the algorithm terminates with traverse = true, a solution P with n−1 robots can be constructed with help of the following observation.From two subsequent positions p t and p t+1 from P , where k robots change their position, a sequence of at most k + 1 positions p t , . . ., p t +l with l ≤ k and {p t (1) ∪ . . .∪ p t (r)} ⊆ {p t (1) ∪ . . .∪ p t (n)} such that {p t+1 (1) ∪ . . .∪ p t+1 (r)} ⊆ {p t +l (1) ∪ . . .∪ p t +l (n)} can be constructed.Figure 6a shows two steps of a solution P with r = 3 where the robots move at the same time from the lower to the upper vertices.In Figure 6b four steps of a solution P with r = n − 1 = 6 are shown, which visits the same set of vertices as P .First, for a robot i 1 in P for which [p t+1 (i 1 ), b] ∈ E C , a robot j 1 in P can move from p t (j 1 ) = p t (i 1 ) to p t +1 (j 1 ) = p t+1 (i 1 ).In particular, p t+1 (i 1 ) is marked, and these are the robots that move to the upper left vertex in Figures 6 (a) and (b).Then, for a robot i 2 with [p t+1 (i 1 ), p t+1 (i 2 )] ∈ E C a robot j 2 can move in P such that p t +2 (j 2 ) = p t+1 (i 2 ).These are the robots that move to the upper middle vertex in Figure 6.This procedure can be continued to p t +l (j l ) = p t+1 (i l ).
We have to show that Algorithm 1 marks all vertices that can be visited by the solution P .Suppose that P traverses the graph but Algorithm 1 terminates with traverse = f alse.Then there must be two steps of P , p t and p t+1 , such that {p t (1)∪. ..∪p t (r)} ⊆ {v ∈ V : marked(v)} (this is certainly true for t = 0) and {p t+1 (1) ∪ . . .∪ p t+1 (r)} {v ∈ V : marked(v)}.However, this contradicts the observation above.

IV. PERSISTENT SURVEILLANCE ON CONVEX GRID AREAS
We consider a convex mission area without obstacles, which is divided into a two-dimensional grid of square cells with unit side length.A subset of these cells are sensing locations and the base station is located at a particular cell.A robot can move from a cell to one of the eight neighboring cells (except for cells at the boundary of the area) within one time step.The cells correspond to vertices of G M and G C , and E M contains the edges between neighboring cells.The edges in E C are defined by the communication range R com , which is measured in cells.For example, R com = 3 means that two cells are in communication range if the Euclidean distance between the center of the cells is smaller than or equal to 3. For the sake of completeness we recap the algorithms for short horizon (SH) and short horizon cooperative (SHC) movement planning [16].

A. Short horizon (SH) movement planning
The policy in [12] assigns a sensing location for each robot i at each time step t based on a weighted combination of the instantaneous idleness I t (v) of sensing location v, the distance between the robot and the sensing location dist G M (p t (i), v), and the minimum distance between v and any other robot j = i: Each robot gets assigned to the sensing location with the highest value A(i, v) individually.The weighting parameters ω 0 and ω 1 are determined by an offline optimization algorithm where the parameter space is sampled and the mission is simulated to get the objective value for a particular set of parameters.We adopt this approach to enforce the connectivity constraints by disallowing moves that would result in a disconnected network and denote it as short horizon (SH) movement planner (Algorithm 2).The algorithm calculates positions for the robots starting at the base station over a finite horizon of T time steps.After calculating the assignment return A matrix according to Equation 2 (line 4), the goal for each robot is determined (line 6).The position of a robot i at time t + 1 is the neighboring position of the position at time t that is closest to the goal and does not disconnect the network of the robots (line 7).N (p t (i)) denotes the set of neighbor positions of the current position p t (i) of robot i including the current position.The goals and new positions for time t are calculated for each robot consecutively in arbitrary order.

B. Short horizon cooperative (SHC) movement planning
Because the goals are approached independently by the robots in the SH algorithm, it can happen that robots block each other infinitely due to the connectivity constraint.To overcome this mutual blocking problem we developed an extension to SH based on graph matching and formation reconfiguration.SH assigns a goal to every robot, which then approach their goal individually.In contrast to that an iteration of SHC (Algorithm 3) consists of three phases: (i) goal selection, (ii) goal assignment and (iii) reconfiguration.
1) Goal selection: The goal selection phase starts with calculating an assignment matrix according to Equation 2(line 3).After that the sensing locations with the highest values together with the base station are selected as terminal vertices for a Steiner tree in G C .A Steiner tree is a vertex induced subgraph G C {b, v 1 , . . .v i } ∪ N containing the terminal vertices {b, v 1 , . . .v i } and possibly a set of non-terminal vertices N such that the tree is connected.The function calc_steiner_tree calculates an approximate solution T f for the NP-hard Steiner tree problem with minimum number of non-terminal vertices [39].The algorithms tries to include as many sensing locations into a Steiner tree that can be built with the available number of robots (lines 7 to 11).
2) Goal assignment: The goal assignment phase performs a matching between the desired final tree T f and the actual vertex induced subgraph G a = G C {p t (i) : i ∈ R} ∪ {b} containing the positions of the robots at time t and the base station with the aim to reduce the time to reach the final configuration.A prefix labeling is applied to the vertices of the final tree T f [40], which results in the labels L f (line 12).Then a tree T a is selected from G a [41], and a matching between T a and T f is calculated [42] (line 14).The labels for the vertices that could not be matched are determined (line 15).The extra and missing vertices [40] are computed in line 16.Extra vertices represent robots and are vertices with labels from L a that are not in L f (V e ).Missing vertices represent vertices from V (final robot positions) with labels in L f that are not in L a (V m ).Finally, a matching between extra and missing vertices is computed based on the distance in T a (line 17 to line 19).Figure 7 depicts an example for the prefix labeling and graph matching algorithm.
3) Reconfiguration: In this phase every extra robot i ∈ V e makes a move in G M towards the position M (i) according the matching M (line 25).Similar to SH, line 7, the next position is chosen such that the network does not get disconnected.When a robots reaches the goal position, the corresponding label in L a is updated to meet the label in L f , and the robot is removed from the set of extra vertices (line 26 to 28).If the tree T f with the labels L f is a subgraph of the actual connectivity graph G a with the labels L a , robot i with label L a (i) gets assigned to the sensing location v with the same label L f (v).Then the robot approaches its goal similar as in line 7 of SH, (line 29 to 32).Finally, if all sensing locations v 1 , . . ., v κ have been reached, the algorithm continues with the next goal selection phase (line 34).

C. Full horizon (FH) movement planning
The full horizon approach requires a tour through all sensing locations.A leader robot traverses this path while the other robots maintain a chain in G C to the base station.When a relay robot is at a sensing location, it is considered visited and can be skipped from the leading robot's tour by taking a shortcut to the next unvisited sensing location on the tour.If a considerable proportion of the area consists of sensing T f ← calc_steiner_tree(GC , {b, v1, . . .vi}) (see [39]) L f ← label_trie(T f ) (see [40]) 13: (Ta, La) ← calc_graph_matching(Ga, T f , L f ) (see [41], [42]) 15: La ← complete_labels_trie(Ta, La) (see [40]) 16: (Ve, Vm) ← calc_extra_missing(La, L f ) (see [40]) 17: for i ∈ Ve, j ∈ Vm do 18: D(i, j) ← distT a (i, closest parent of j also in Ta) for i ∈ Ve do sp(i) ← shortest_pathT a (i, M (i)) La ← update_labels(La)

28:
Ve ← Ve \ {i} 29: if all v1 to vκ have been reached then break locations, it is beneficial that the tour visits sensing location first that are farther away from the base station and that the relaying robots maintain an equal distance between each other on the chain.Two possible tours are depicted in Figure 8.For persistent surveillance the tour traversal is repeated.

V. EXTENSION FOR PARTITIONED AREAS
The strategies presented in Section IV work best when the area is convex and free of obstacles.In arbitrary shaped environments the concurrent tree traversal (TT) approach from [17] can be used.In this approach a Steiner tree is generated that contains all sensing locations.The robots start at the root (base station) and traverse the edges placing relays when necessary.Branches are traversed concurrently if possible, i.e. robots split into groups at branching points.After the leaves of a branch have been visited, the robots retreat to the branching point and wait for other groups traversing other branches to recombine the groups if a split happened.It is shown in [17], that the problem of determining how to split to explore the tree as fast as possible is NP-hard, and different heuristic strategies for determining when (splitting strategy) and how (selection strategy) to split are discussed.The early split strategy splits the group at a branching point as soon as all leaves in subsequent branches, that have not been traversed yet, can be reached with the available number of robots.The late split strategy splits the robots when all leaves in the subsequent branches, that have not been traversed yet, can be visited concurrently.When no split happens, the next branch has to be selected at a splitting point.The far selection strategy selects the branch with the farthest leaf, and the near selection strategy selects the branch with the nearest leaf.In total there are four different combinations of strategies to traverse a tree.The direct application of the tree traversal approach requires a tree that contains all sensing location.To combine the advantages of the tree traversal with convex area coverage we consider a partitioning of the area into convex partitions where the areas are the vertices of the tree, and we assume that a partitioning of the area is given (e.g.determined by some algorithm described in [43], [44]).For each partition a cell is defined which is the release point for the robots covering that partition.The release points are connected with edges that form a tree (to be determined after partitioning), and two numbers are associated with each edge: how many relays are necessary to build a chain between the release points (which is the number of cells on the shortest path in G C and an optimal solution of CMRD on a grid), and how long it takes to travel between the release points (which is the number of cells on the shortest path in G M ).
The problem in [17] is different from the problem discussed here in two aspects.First, we consider partitions and not only single vertices.Each release point is considered as own branch to which a number of robots has to be assigned for covering the partition.To cover a partition, a certain minimum number of robots is necessary due to the limited communication range.Second, since we consider persistent surveillance, the groups do not have to retreat to the base station and recombine there if all partitions up to a certain depth in the tree are already covered concurrently.
Our strategy works as follows.The robots start at the base station and move along an edge to a release point, dropping relays when necessary.When the robots reach a release point, one relay stays at the release point and a the remaining robots are split into subgroups according to the same rules described above.The robots assigned to a partition start to cover the area according to one of the algorithms described in Section IV and return to the release point after all sensing locations have been visited.Here, they cover the area again, wait and recombine with other groups to move to the next release point, or retreat to a lower release point in the tree.We formally define the problem as: Definition 9 (d-CMPSTT).The problem d-CMPSTT is defined by a set of tuples of the form (A, B, Γ, ∆, b, r, T ).We denote V P the set of partitions, A : V P → N ≥0 is the minimum number of robots necessary to cover a partition, B : (V P × V P ) → N ≥0 is the number of relays necessary between two release points, Γ : (V P × N >0 ) → N ≥0 is the time it takes to cover a partition with a certain number of robots, ∆ : (V P × V P ) → N ≥0 is the travel time between two release points.The vertex b ∈ V P is the partition containing the base station.The tree is given by the functions B and ∆.The number of robots is r, and T is a time bound for W I.
A solution of a CM P ST T instance is the information about how the robots should split at each release point, which includes the branches visited concurrently, the order of the branches in the case not all can be visited concurrently, and how many robots are assigned to each branch.An example is shown in Figure 9 With r = 6 a possible solution would be a splitting ((v 1 , v 4 )) at the base station with the assigned number of robots ((4, 2)).This means, that branch v 1 and v 4 get visited concurrently and that 4 robots are assigned to branch v 1 , and 2 robots are assigned to branch v 4 .Since there are no more branches at the base station, (v 1 , v 4 ) is the only tuple in this splitting.A splitting in v 1 could be ((v 1 , v 2 ), (v 1 , v 3 )), where branches v 1 and v 2 are visited concurrently before the robots recombine at v 1 and then visit v 1 and v 3 concurrently.After recombination at v 1 , this cycle starts again.The number of robots assigned to the branches are ((2, 2), (2, 2)).In this solution the robots assigned to v 1 and v 4 at the base station do not have to retreat and combine at the base station, since the branches v 1 and v 4 are visited concurrently and there are no sensing locations in the base station partition, which results in W I = 6 (which is the idleness for v 2 and v 3 ).In this notation of a splitting it is allowed that a branch occurs multiple times in a splitting (e.g. at splitting point v 1 ).To be able to enumerate a splitting explicitly and prevent an infinite sequence of tuples in a splitting, we restrict the occurrences of branches in a splitting to the number of branches at the splitting point.
In [17] it is shown by a reduction from multi-processor scheduling that the problem of determining the order in which the branches should be visited is NP-hard.Since this is a special case of CMPSTT (with A(p) = 1, ∀p ∈ V P ), CMPSTT it is NP-hard as well.Nevertheless, we can show that CMPSTT with A(p) > 1 for some p is also NP-hard.We show this with a reduction from the number partition problem 3 .The details of the reduction are shown in the proof of Proposition 10. d-CMPSTT is NP-hard.
Proof.An instance of a number partition problem can be transformed into an instance of d-CMPSTT (the edges E A of the tree are enumerated explicitly for convenience) A solution to the number partition problem gives a solution to d-CMPSTT with W I = 6: Let the subsets be ordered such that i=1,...,k s i = r = 1/2 i=1,...,α s i with k < α.Then, the robots visit the partitions v 1 , . . .v k concurrently starting at the base station, retreat to the base station and visit the partitions v k+1 , . . ., v α .After the robots retreat again, this cycle starts from the beginning.The number of robots assigned to each partition is determined by A(v i ) = s i , i = 1, . . ., α.
Assume that there is a solution to d-CMPSTT that results in W I = 6, i.e. each partition gets visited once or twice in each cycle since r < i=1,...,α A(v i ), and the idleness of each partition is smaller or equal to 6. Assume also that this solution cannot be converted to a solution to the number partition problem.Then the following two situations can occur: (i) W I = 3 for some partitions, i.e. it gets visited twice in each cycle, or (ii) the number of robots assigned to a branch v i is larger than A(v i ) = s i .
In the first case v 1 , . . .v k are the partitions that get visited only in the first half of the cycle, v k+1 , . . .v l are the partitions that get visited only in the second half of the cycle, and v l+1 , . . .v α are the partitions that get visited twice in each cycle.It follows that A(v i ) ≤ r, and therefore which can only be the case if the second sum in the last equation is zero, which is a contradiction to the definition of the number partition problem, or there are no partitions which get visited twice, which is a contradiction to the assumption.
In the second case, a similar argument holds: A(v i ) + r 2 ≤ r, and therefore where r 1 and r 2 are the surplus robots assigned to the branches.According to the assumption, more robots are assigned to the branches than necessary, and these robots are the surplus robots.From the last equation follows that r 1 and r 2 must be zero, which is a contradiction to the assumption.Therefore, a splitting for the d-CMPSTT instance has the form ((v 1 , . . ., v k ), (v k+1 , . . ., v α )), which constitutes a solution for the number partition problem.

VI. SIMULATION RESULTS
A first simulation is conducted on a grid of 30×30 cells with the base station at the lower left corner and four sensing locations: s 1 at cell coordinates (30, 1), s 2 at (30, 30), s 3 at (1, 30) and s 4 at (15,15).The communication range R com is half of the diagonal diameter of the grid, and the number of robots r = 3.The results are shown in Figure 10.In this simple scenario SHC shows the optimal behavior resulting in the best possible W I of 60 (twice the side length of the area): One robot acts as relay for the other two and visits s 4 , while another robot is commuting between s 1 and s 2 and the third robot between s 2 and s 3 .SH and FH visit one sensing location after the other.Because the robots start at the base station, the instantaneous worst idleness W I t grows until all sensing locations have been visited for the first time before dropping to W I. The optimal behavior of SHC does not sustain on larger scenarios as can be seen in subsequent simulations.
We conduct the remaining simulation studies on a grid of 30×30 cells with 900 sensing locations and with the base station at the lower left corner.The parameters ω 0 and ω 1 are determined with the pattern search algorithm provided by the Global Optimization Toolbox from Matlab.This algorithm systematically samples the parameter space and converges to a local minimum [45].For each pair (ω 0 , ω 1 ) polled by the pattern search algorithm, SH (Algorithm 2) or SHC (Algorithm 3) is executed for a predefined number of time steps T O (optimization horizon), and the objective for the resulting solution π = (p 0 , . . ., p T O ) is evaluated.The objective value of a solution π is the smallest time step when all sensing locations have been visited at least once or T O if not all sensing locations have been visited within the optimization horizon.This objective value is denoted as coverage time CT and formally defined as CT := min{arg min 0≤τ ≤T O {S τ : V S ⊆ S τ } ∪ {T O }}, with S τ := 0≤t≤τ {p t (i) : i ∈ R}.
To reduce the optimization time, SH and SHC are aborted in each run in the course of the optimization as soon as all sensing locations have been visited at least once.We set the optimization horizon T O to 1800 time steps.Pattern search uses a mesh grid to poll points around a current center in each iteration [46].We set the start point of the search to x 0 = (0, 0), and pattern search polls the points x 0 , x 0 + (1, 0), x 0 + (0, 1), x 0 + (−1, 0), x 0 + (0, −1) in the first iteration with an initial mesh of size 1.The point x 1 with the lowest objective value is the center of the new mesh in the second iteration.If x i is different from x i−1 , the mesh size is multiplied by 2, and the points x 1 + 2(1, 0), x 1 + 2(0, 1), x 1 + 2(−1, 0), x 1 + 2(0, −1) are polled in the second iteration.If none of the polled points has a better objective value than x i , x i becomes the center of a new mesh, which has the size of the old mesh multiplied by 0.5.This procedure continues until a user defined stopping criterion is met.We set the stopping criterion to a mesh tolerance of 0.01.This procedure can be parallelized, and we use 4 cores to evaluate polls around a mesh center in parallel.
In the following experiment we evaluate the performance of SH, SHC, FH and TT with an increasing number of robots r and a decreasing communication range R com .The communication range has been chosen such that all r robots are necessary to reach the upper right sensing location in the area.Figure 11 shows the coverage time CT , which is the objective value of the parameter optimization for SH and SHC as described above.CT can serve as an estimate of W I for comparing the different algorithms.Figure 11 shows that SH benefits from an increasing number of robots up to r = 10 but suffers from the low communication range with r = 15 and is not able to visit all sensing location within the time horizon.For the TT algorithm a tree has been chosen that is the union of all the shortest paths from each sensing location to the base station.All four combinations of strategies described in Section V are tried and the best value is recorded.This tree is traversed basically in a depth-first order without any concurrency, resulting in a CT that is twice the number of sensing locations because in a tree traversal each cell in the tree is visited at least twice.
In the next experiment we set the communication range to a constant value of a quarter of the diameter of the area, such that 4 robots are necessary to reach all sensing locations.The results are shown in Figure 12.It shows that SH benefits  most from an increasing number of robots and CT approaches the lower bound |V S |/r.The reason for the drop of TT at r = 8 is the splitting and selection strategy.There are three branches originating at the base station, one which covers mainly the lower one the diagonal, and one the upper right proportion of the area.With 6 and 8 robots all branches are visited subsequently, which results in a lower CT for 8 robots.With 10 robots the diagonal (which contains a small number of sensing locations) and lower right (which contains a larger number of sensing locations) branches are visited concurrently, which results in the situation that the robots visiting the diagonal proportion finish earlier and stay idle while waiting for recombination of the split group.Figure 14 shows CT for an increasing number of robots r and a decreasing communication range R com , where a number of robots are used as relays with fixed positions between the base station and a release point near the center of the area.The scenario for r = 5 (3 sensing robots) is shown in Figure 13a.The remaining robots start to cover the area from the release point.The purpose is to assess whether the release point for a partitioning should be at the center or at the corner closest to the base station of a partition.The number of robots in total and the communication range is the same as in Figure 11.The numbers on the x-axis in Figure 14 are the numbers of robots that are available for coverage of the area.Having a longer chain of relays to shift the release point closer to the The number of robots in total and the communication range is the same as in Figure 11 for each scenario.The numbers on the x-axis are the numbers of robots that are available for coverage of the area.
center results in a decreased number of robots available for visiting sensing locations and the expected behavior with a worse performance can be observed.Next, we investigate in W I for area partitioning.We do not consider an non-convex area with obstacles explicitly, but a regular partitioning of the convex area into convex subareas.This allows us to compare the performance on the unpartitioned case with the performance on the partitioned case, and we do not rely on an algorithm for dividing a nonconvex polygon into a set of convex polygons.For non-cyclic algorithms W I can only be estimated over a limited time horizon.Figure 15 shows the results for the unpartitioned area for a time horizon of 3000 time steps.W I is calculated as the maximum time between two consecutive visits within the time window after the first and before the last visit of a sensing location in the horizon and over all sensing locations.For comparison with the tree traversal of partitions (CMPSTT), the area is partitioned into 2 × 2 (Figure 16) and 3 × 3 (Figure 17) rectangular partitions of equal size and traversed with different algorithms (SH, SHC, FH) for convex partitions.The release point for each partition is the lower left corner of the partition (the base station is the release point of the lower left partition).The trees for CMPSTT are shown in Figure 13b and Figure 13c.The parameters for SH and SHC have been determined for the whole area for the case of an unpartitioned area and for a single partition in the case of a partitioning.The optimization times for determining (ω 0 , ω 1 ) have been recorded for each scenario and are shown in Figure 18 for SH.For the partitioning, the optimization times for the different number of robots assigned to a partition are summed up, e.g. if the different number of robots assigned to any partition are r 1 , . . ., r k , then the optimization times for r 1 , . . ., r k robots are summed up (since all these different parameters (ω 0 , ω 1 ) for different number of robots are required).Although the performance is comparable between the unpartitioned and partitioned scenario up to 20 robots for SH, optimizing for smaller areas can greatly reduce the optimization time.As the number of robots gets larger, the number of robots assigned to partitions get smaller because the partitions are covered concurrently, and therefore the optimization time decreases for an increasing total number of robots.The performance of SHC and FH can even be improved by partitioning the area.For these approaches using a smaller number of robots on a smaller area is more effective, because the performance improvement is smaller as compared to SH with an increasing number of robots (cp. Figure 12 and Figure 15).

VII. CONCLUSION
In this work we have investigated path planning for multiple robots for persistent surveillance with connectivity constraints.We introduce the problem and related problem instances on graphs, which have not been considered yet in literature, and show that they are NP-hard.We propose several strategies on grids that can be applied to convex areas.On one hand, the simple short horizon (SH) strategy, which selects the next goal of a robot greedily without considering the anticipated goals of other robots, achieves the best performance when the number of robots is larger than the minimum number of robots required to reach all sensing locations.In this case the additional robots can be used more effectively than in the short horizon cooperative (SHC) and full horizon (FH) approaches.On the other hand, if all robots are required to reach all sensing locations, SHC and FH perform better.Although FH performs better than SHC in most cases, SHC does not require a preplanned tour through all sensing locations.
The short horizon approaches SH and SHC rely on parameters that have to be optimized before the mission execution.To apply these strategies on more general environments, which arise from discretization of real world scenarios, we propose a combination with a tree traversal approach.The simulation results on the considered scenarios indicate that the combination with tree traversal on a partitioned area does not impair the performance considerably up to a certain number of robots but reduces the optimization time substantially.With a larger number of robots the trade-off between performance and optimization time is revealed for SH.Partitioning can increase the performance for the other approaches, because using a smaller number of robots on smaller areas is more effective.
The presented algorithms can be used to compute paths that have to be followed by the robots, which requires a central entity for computation and synchronization among all robots at each time step.This approach has several limitations, which can be subject of future extensions.If a robot fails, the network gets disconnected and the remaining robots can continue the mission only after failure recovery measures.Furthermore, synchronization among all robots (at least among the robots within a partition) requires a reliable network connection that ensures a timely delivery of the state of each robot through the network to the central entity.Other possible extensions are algorithms for the presented problems that can be applied to general or other special types of graphs (e.g.where E M ⊆ E C ).

Fig. 5 .
Fig. 5. Simple examples for graph traversals.The graph in (a) cannot be traversed although G M and G C are connected.The graph in (b) can be traversed with two but not with one robot.

Fig. 6 .
Fig.6.Illustration for the proof of Proposition 8.The graph in (a) is traversed by three robots in two time steps (from top to bottom), which move from the bottom to the top vertices simultaneously.This sequence corresponds to solution P in the text.In (b) the order in which the vertices are marked by Algorithm 1 are shown in four steps from top to bottom, which can be interpreted as traversal with 6 robots.This sequence corresponds to solution P in the text.The numbers in the vertices indicate the number of robots that are at a vertex at a particular time step.

Proposition 8 .
17: traverse ← |{v ∈ VS : marked(v)}| = |VS| robots corresponds to a set cover of cardinality r * − M : If the goal s M can be reached with r * robots, then M robots are necessary for the chain s 1 , . . ., s M , and r * − M robots are at vertices f i such that all s 1 , . . ., s M are connected to b. Algorithm 1 terminates with traverse = true if and only if the graph can be traversed with n − 1 robots.

Fig. 7 .
Fig. 7. Outcome of the prefix labeling and graph matching algorithm for a grid area and 6 robots.The actual graph (a) models the state of the robots and the base station (node '0') at a particular time step with a line between two vertices if they are within communication range.A dashed line indicates the communication link and a solid line indicates the selected tree Ta in the actual graph Ga.The graph (b) models the final desired robot configuration T f , where each robot is assigned a relay position or a sensing location.Assume for example, that robots labeled with '011', '012', and '0211' are assigned to sensing locations (terminal vertices in the Steiner tree) but can reach them only with help of relays labeled with '01', '02', and '021' (nonterminal vetices).The shaded vertices are the extra vertices in (a) and the missing vertices in (b), respectively.

Fig. 8 .
Fig.8.Two possibles coverage tours for a convex area when the base station is at a corner (a), or when the base station is near the center of the area (b).The tours start at the base station, pass through the upper right sensing location before continuing to cover the area towards the base station.

Fig. 10 .
Fig. 10.Comparison of the instantaneous idleness W It over time for a simple example with 4 sensing locations and 3 robots.

Fig. 12 .
Fig. 12.Comparison of CT with increasing number of robots r and fixed communication range R com (a quarter of the diameter of the area).

Fig. 13 .Fig. 14 .
Fig. 13.(a) Illustration of the scenario with 5 robots (3 sensing robots) for the results in Figure 14 (see Figure 1 for the meaning of the symbols).The numbers show the x and y-coordinates of the cells of the base station and the release point.(b) Tree for CMPSTT for the results in Figure 16, and (c) Figure 17, respectively.The numbers in the vertices and next to the base station (the base station is release point of the lower left partition) define A, and the numbers next to the edges define B/∆ of the CMPSTT instances.

Fig. 15 .Fig. 16 .
Fig. 15.Comparison of W I with an increasing number of robots r and constant communication range R com = 5.8 over a time horizon of 3000 time steps.

Fig. 17 . 3 Fig. 18 .
Fig.17.Comparison of W I with an increasing number of robots r and constant communication range R com = 5.8 for the tree traversal of partitions (CMPSTT) of the area partitioned into 3 × 3 equally sized rectangular partitions and for different algorithms for the convex partitions (SH, SHC, FH).In this scenario it is not possible to reach all sensing locations with 8 robots.