1. Introduction
Aerial Drones or Unmanned Aerial Vehicles (UAVs), which were initially used in military applications, have now been applied widely in various civilian tasks [
1], such as infrastructure inspection [
2], wireless communication support [
3], parcel delivery [
4,
5,
6,
7], traffic monitoring [
8], surveillance [
9], and 3D surface reconstruction of large-scale elements which is of interest in different fields including topography, archaeological research and reconstruction of urban textures or industrial installations [
10,
11,
12,
13]. An important class of problems is the deployment of aerial drones for coverage of a certain ground area. In some such problems, drones are deployed to provide communications to users in either disaster areas or during occasional events attracting a lot of participants [
3,
14,
15,
16,
17,
18]. In other problems, the aim is to ensure monitoring of the ground area [
19,
20,
21,
22,
23,
24].
In surveillance and monitoring applications, aerial drones are equipped with some specific sensors, such as video cameras. They fly into the sky and monitor ground targets of interest, such as humans, buildings, pipelines, roads, vehicles, landmarks, and animals, for the purpose of surveillance, security, etc. [
20,
21,
22,
25]. A common scenario is when each drone is equipped with a ground facing video camera with some visibility angle. The video camera can see a circular area on the ground and the radius of this area depends on the altitude and the visibility angle. If a point is within this circle, it is considered to be covered by the drone. The altitude of each drone must be in a given range. A typical problem is to deploy the minimal number of drones necessary to cover a given ground area. A well-studied scenario is using a fleet of drones to monitor a given ground area and a general approach is to partition the area first and then plan paths for drones in the sub-areas [
26]. A shortcoming of this partition-based method is that it does not guarantee the coverage of any point of the area at any time. Once the motion pattern of the drones is learned, intruders may be able to avoid the monitoring. Thus, a stronger requirement of monitoring applications is to ensure that any point of the area is seen from some drone and a very difficult and practically important extension of this problem is deployment of aerial drones over very uneven terrains, rather than ground areas. Uneven terrains are geometrically complex environments that cannot be approximated with a sufficient accuracy by a plane. In such environments, the visibility cones of drones’ video cameras may be occluded by buildings, walls, mountains, hills, etc. Very uneven terrains are quite typical for dense urban areas with tall buildings and narrow streets [
18,
27]. This problem will get especially important in the future with the use of small low flying drones [
27]. One approach to this problem is to first find a set of positions such that every point on the terrain can be seen from at least one of the positions in the set [
28,
29] and then construct a tour for the drone to visit these positions such that every position is visited exactly once and the tour completion time is minimized. In contrast to [
28,
29], this paper focuses on the scenario where any point on the terrain must be monitored all the time. To achieve this, a constructive solution of this UAV deployment problem that may be called a drone version of the three-dimensional (3D) Art Gallery Problem is presented. The Art Gallery Problem is a well-known problem of combinatorial/computational geometry that deals with determining the minimal number of observers necessary to cover an art gallery room such that every point is seen by at least one observer. This problem was formulated by Victor Klee in 1973 [
30] and is well studied, especially for the two-dimensional case [
30,
31,
32]. In [
33], the Art Gallery Theorem was published that gives an upper bound on the minimal number of observers in the 2D Art Gallery Problem. The proof of [
33] was later simplified in [
34] via a so-called 3-coloring method. In [
35], a 3D version of the Art Gallery Problem was considered where observers are to be placed on uneven terrain modelled as a non-convex polytope. In this paper, a drone version of the 3D Art Gallery Problem in which observers (aerial drones) are to be placed above uneven terrain in a certain range of altitudes (not on the terrain as in [
35]) is considered. Moreover, unlike [
35], visibility cone constraints should be satisfied. An upper estimate of the minimal number of drones necessary together with an algorithm of calculating drone locations is given. This approach uses 3-coloring method of [
34].
The remainder of the paper is organized as follows. The model of very uneven terrains and the problem statement are presented in
Section 2. The proposed deployment algorithm together with the main result are given in
Section 3.
Section 4 presents simulations of the developed drone deployment algorithm. Finally,
Section 5 provides a brief conclusion together with some possible directions of future research.
2. Problem Statement
Let
be Cartesian coordinates on the ground plane and
z be the coordinate axis perpendicular to the ground plane. A terrain is a graph of a function
that assigns to every point
on the ground plane an elevation
. The case
for all
corresponds to a perfectly flat (even) terrain. Moreover, let
be a given bounded subset of the ground plane
. The objective is to deploy several aerial drones to monitor the corresponding area of the terrain that is the set
where
. Also, let
and
be given minimum and maximum altitudes for drone deployment,
. Assume that each drone can be deployed only at some points
such that
Furthermore, let
be the distance between the drones
i and
j, and
be the minimum distance between the drone
i and the terrain. The following safety constraints should hold:
where
and
are some given safety margins. The requirements (
2) allow the avoidance of collisions of drones with the terrain and each other, which is very important in navigation and deployment, see e.g., [
36,
37,
38,
39].
Moreover, drones have a given observation angle
, which defines the visibility cone of each drone, so that a drone with the coordinates
can only see points
of the terrain that are inside of the circle of radius
centered at
where
. A point
P on the terrain is visible from a drone located at the point
D if
P is inside of the visibility cone of the drone, and there is not any other point of the terrain on the straight line segment
, see
Figure 1.
Definition 1. Deployment of several drones is said to be covering if the constraints (1), (2) are satisfied and every point on the terrain region is visible to at least one of the drones. Terrain Model: This paper considers the following class of very uneven terrains. First it is assumed that the set
is a polygon with
n vertices. Furthermore, let
be some non-overlapping polygons inside
with
vertices, respectively. These polygons represent very uneven areas inside
such as buildings, hills, mountains, walls, etc. These areas are modelled as polytopes as follows. Let
be some other polygons inside the polygons
, respectively. It is assumed that each polygon
has the same number
of vertices with the polygon
. It should be pointed out that
and
may be non-convex. Each
represents the “base” face of the polytope modelling the corresponding very uneven area whereas
represents its “top” face. Furthermore, it is assumed that this polytope has
“side” faces. Each “side” face is a convex quadrilateral with one side that is a side of
and with the opposite side that is a side of
, see
Figure 2. These quadrilaterals are called side quadrilaterals. Notice that the case when some side of
is a subinterval of
means that the corresponding side face is a vertical wall. Also, the planes of the “top” faces are not assumed to be parallel to the ground plane
, see
Figure 2. However, they are assumed to be not orthogonal to it. For example, a standard rectangular building is modelled by two identical rectangles
and
. Moreover, it is assumed that the rest of polygon
that is outside of the very uneven areas
, is "relatively even". More precisely, suppose that the following assumption holds.
Assumption 1. Any point of the terrain outside the "very uneven" areas satisfieswhere is some given constant. Moreover, any two such points outside of the very uneven areas of the terrain satisfy the following constraint: the angle between the straight line connecting these two pints and the ground plane is less than . It is also assumed need the following technical assumptions that usually hold in practice.
Assumption 2. The inequality holds.
Assumption 3. The altitude of any point corresponding to any vertex of any satisfies .
The problem studied in this paper that may be called the drone version of the 3D Art Gallery Problem can be stated as follows.
Problem Statement: What is the minimum number of aerial drones for which covering deployment exists and where should they be deployed? Moreover, it is preferred not only to deploy the minimum number of drones but also deploy the drones at as low altitudes as possible to make them closer to the observed region of the terrain.
3. Deployment Algorithm
The deployment algorithm requires some geometric constructions. Let be the polygon that is obtained from the polygon with all the interior points of the polygons taken away. It is a non-convex polygon with k “holes” and vertices. The proposed algorithm consists of the following steps.
Step A1: Choose
k non-intersecting diagonals of the polygon
that cut it into a polygon
without “holes”. More precisely, each of the
k diagonals connects either two vertices of
and
for some
or two vertices of
and
. Now consider each of the
k diagonals as two different sides of the polygon
and each vertex of this diagonal as two different vertices of the polygon
, see
Figure 3. Hence the polygon
is a polygon without “holes” with
vertices.
Step A2: Make some triangulation
of the polygon
. It means that
is cut into triangles of vertices of which are vertices of the polygon
, and all sides are either sides of
or its non-intersecting diagonals, see
Figure 4. Since
has
vertices and no “holes”, the number of triangles in any such a triangulation
is
.
Step A3: Build a triangulation
by enlarging the triangulation
by adding some triangles as follows. For any
i, add all the vertices
of
to
. So
vertices have been added to the triangulation.
new triangles as added as follows. For any added vertex
, add the triangle
where
are the corresponding vertices of
, see
Figure 5.
Step A4: Paint the vertices of the triangulation into three different colors so that any triangle of the triangulation has vertices of three different colors. The following is to prove that such three-coloring exists and give a method to build it. First, build the so-called dual graph of the triangulation in which the vertices correspond to the triangles of the triangulation , and two vertices are connected by an edge if and only if the corresponding triangles have a common side. It is obvious that this dual graph is a tree. Indeed, if it is not a tree, then it has a cycle, hence there exists a hole inside of this cycle in the polygon , which contradicts to the fact that has no holes. Furthermore, since this dual graph is a tree, it should have a hanging vertex (a vertex with only one edge). Let denote this vertex and take it away from the graph. The remaining graph is a tree again, hence it has a hanging vertex. Let denote this vertex and take it away from the graph. this operation is done step by step until last vertex of the dual graph is got. Now, paint all the vertices of the triangulation into three colors as follows. First, paint three vertices of the triangle corresponding to into three different colors. Then for , if all the vertices of all the triangles corresponding to have been painted, take the triangle corresponding to . By the above construction, this triangle has a common side with one of the triangles corresponding to and no common sides with all other of these triangles. The two vertices corresponding to the common side have already been painted (they are vertices of the triangle corresponding to some where . Now paint the third vertex into the third remaining color. So, step by step all the vertices of the triangulation have been painted.
Step A5: The set of vertices of the triangulation is now divided into three non-intersecting subsets corresponding to three different colors. Among these three subsets, take the one with the minimum number of vertices. Place the drones at points with coordinates corresponding to the vertices of this subset. If some vertex is a vertex of a cutting diagonal, which now corresponds to two vertices of the polygon , only one drone is placed at that vertex.
Step A6: Select the altitude of each drone as follows. If the corresponding vertex is not a vertex of any polygons
, let
be the maximum of the lengths of all the triangulation triangles sides for which this vertex is one of the two end points. Then place a drone at this vertex at the altitude
If the corresponding vertex is a vertex of some polygons
, let
be the maximum of the lengths of all the triangulation triangles sides for which this vertex is one of the two end points and the distances to all the vertices of the two side quadrilaterals for which this point is a vertex. Moreover, let
a be the maximum altitude of all the terrain points corresponding to the vertices of the two side quadrilaterals for which this point is a vertex. Furthermore, let
be the maximum distance from this vertex to the vertices of the corresponding top side polygon
, and
b be the maximum altitude of all the terrain points corresponding to the vertices of
and the two corresponding side quadrilaterals. Also, let
. Then for each
i, select one vertex that is a vertex of some polygon
or
and place a drone at this vertex at the altitude
For all other selected vertices that are vertices of either polygon
or
, place a drone at this vertex at the altitude
Remark 1. It should be pointed out that in the proposed algorithmA1–A6, this approach always considers triangulations on the ground plane . So, all vertices of triangulations are projections of the points on the actual uneven terrain, and the lengths of triangulations sides and quadrilaterals diagonals are also taken on the plane, not on the actual terrain.
Remark 2. In the case when two selected vertices on the triangulation correspond to the same point of the actual terrain, which can happen when either there are two vertices from one which is the end point of a cutting diagonal inA1or a vertex of coincides with a vertex of , place just one drone at the point corresponding these two vertices.
Remark 3. StepA4of the algorithm is based on the 3-coloring method of [34]. For the main result, the following assumptions are needed.
Assumption 4. The drone altitudes defined by (5)–(7) satisfy . Assumption 5. The length d of any side of any triangle of the triangulation satisfies .
The following notation is also needed. For any number , denotes the integer part of x, i.e., the maximal integer i such that .
Now it is the position to state the main result of the paper.
Theorem 1. A number N of drones are deployed by the algorithmA1–A6. Suppose that Assumptions 1–5 hold. This deployment is covering and Proof of Theorem 1. It is obvious that the number of vertices in the constructed triangulation
is
. Since all these vertices are painted into three colors and take a color with the minimum number of vertices, the number of these vertices
N satisfies (
8). Now prove that this deployment of drones is covering. Indeed, by the construction, any triangle of
has a drone deployed at one of its three vertices. Furthermore, any point outside of the very uneven areas belongs to one of the triangles of the triangulation
, and the drone altitudes (
5)–(
7) and Assumption 1 guarantee that this point is visible from the drone that is located at one of the three vertices of this triangle. Moreover, it obviously follows from the construction that for any side face of any very uneven area, there is a drone deployed at one of its four vertices. The drone altitude selection rules (
6) and (
7) guarantee that any point of the side face is visible from a drone located at one of these four vertices. Furthermore, it is obvious that any point of the top face of any very uneven area is visible from the drone with altitude selected by (
7). Moreover, for any drone location
, by the construction
, it follows from (
5)–(
7) that
, and Assumption 4 guarantees that
. Therefore, the requirements (
1) hold. Finally, (
5)–(
7) and Assumptions 2–5 imply that the requirements (
2) are satisfied. This completes the proof of Theorem 1. □
4. Simulation Results
This section demonstrates how the proposed approach works through a case study using MATLAB. Consider a 20 m by 20 m square area of interest shown in
Figure 6a with
very uneven area (a 3D view of them is available in
Figure 6f). It can be seen from the top view in
Figure 6a that
,
,
. The parameters are set as
m,
m,
m,
m, and
. Firstly,
non-intersecting diagonals are added to construct the polygon
, see
Figure 6b. It is worth pointing out that there is more than one option to insert this kind of diagonals and only one option is demonstrated here. Clearly, according to the proposed constructed, these diagonals build a
with no holes. Then, following Step
A2 and
A3, the triangulation
is constructed as shown in
Figure 6c. This triangulation has 34 (
) vertices and 32 (
) triangles. By selecting a starting triangle, all the triangles are numbered in
Figure 6c. Then, the dual graph of the triangulation
is constructed as shown in
Figure 6d. The dual graph has 32 vertices corresponding to the 32 triangles of the triangulation
. Following Step A4, all the vertices of the dual graph are numbered from 1 to 32 and they are painted in three colors (red, green, and blue). The numbers of vertices with these colors are 13, 10, and 11, respectively, see
Figure 6e. Hence, the subset of vertices with the color of green is selected. Obviously,
This also shows that the estimate of Theorem 1 is quite close. Finally, the altitudes of the drones are computed by (
5)–(
7), and the deployment of the aerial drones is shown in
Figure 6f.