A Two Phase Multi Objective Metaheuristic For A Green UAV Grid Routing Problem
A Two Phase Multi Objective Metaheuristic For A Green UAV Grid Routing Problem
A Two Phase Multi Objective Metaheuristic For A Green UAV Grid Routing Problem
https://doi.org/10.1007/s11590-023-02013-9
ORIGINAL PAPER
Abstract
This paper deals with Unmanned Aerial Vehicle (UAV) routing in dynamic grid sce-
narios with limited battery autonomy and multiple charging stations. Inspired by a
multi-criteria view of real systems, we consider different objective functions, while
respecting the navigation over forbidden areas and also a real-time flight autonomy.
A multi-objective variant of Variable Neighborhood Search is considered for find-
ing sets of non-dominated solutions. Twelve neighborhood structures were devel-
oped in order to explore the solution space, including learning techniques. The latter
stores known routes in order to speed up the search. A case of study was developed
where UAVs have to serve clients spread throughout a grid, representing a map.
Each UAV starts in a given grid point with a given battery charge, where the grid is
composed by four different kinds of points: a regular one and three special (prohib-
ited, recharge and client). Any update can happen on the routes on real-time, so the
metaheuristic should handle real-time information and update the plan and graphics
user interface accordingly. Any sequence of valid adjacent points forms a route, but
since this yields a huge number of combinations, a preprocessing technique is pro-
posed to pre-compute distances in a given dynamic scenario. Computational results
demonstrate the performance of different variants of the proposed algorithms.
1 Introduction
Smart cities are cities that incorporate information and communication technolo-
gies (ICT) to improve the quality and performance of urban services like com-
munication, governance, safety, energy, sustainability and transport.Thanks to the
13
Vol.:(0123456789)
E. L. Marques Jr. et al.
13
A two‑phase multi‑objective metaheuristic for a green UAV…
This paper is organized as follows. Section 2 describes the proposed model of the
MOGRDGP while Sect. 3 contains the methodology employed to solve the prob-
lem. In Sect. 4, one can find the computational experiments comparing the differ-
ent implementations, instances, variables and results. Finally, Sect. 5 concludes the
work and presents future research directions.
2 Problem description
The proposed MOGRDGP consists of an airspace divided into horizontal and verti-
cal bands, organized as a grid of points in two-dimensional space. Each UAV can
move following the Chebyshev distance [7], where the distances between any adja-
cent points are the same. This distance metric was chosen to simplify the calcula-
tions, without loss of generality, and without prejudice to the construction of the
routes.
Power stations are scattered around the routing area and accessed by the drone
to recharge its batteries. To represent prohibited areas, the grid is also composed of
prohibited points that the UAV cannot access, otherwise, this invalidates the route.
Figure 1 illustrates a solution for a MOGRDGP instance.
As a routing problem, the vehicle must serve/visit clients that are spread across
the grid. For this, the point corresponding to the client must be part of the final
route. This means that the clients’ x and y coordinates must be part of the matrix that
represents the solution.
In Sect. 3, we discuss an alternative to preprocess shorter distances and store
them in an auxiliary data structure, so that only the points of origin and destination
need to be considered between client and recharge points.
In order to model the problem computationally, we mapped three main objectives
that satisfactorily summarize how the realistic system should behave. It is desirable
to end the route with the maximum possible charge rate (final charge-O1), ensuring
that the drone is prepared for a future route, since the current work has a dynamic
nature where the instances already consider the initial location and battery charge.
This means that a drone can start a new route at the end of an old one. The total
route must be completed in the shortest possible time (O2). Also, it is desirable that
during the route, the vehicle consumes (consumption-O3) as little battery / fuel as
possible.
If we compare the objective functions of this work with the ones explored in [4],
it can be related O1 with toFull, O2 with time and O3 is combination of time, dis-
tance and maxvel in a certain way. The number of drones was not seen as an objec-
tive function that should be minimized but as a parameter of the instances to test the
methods developed.
Since our focus was to elaborate a model so it could fit to different applica-
tions involving drones, constraints and objectives exclusively related to deliv-
ery problems - such as makespanC and makespanD, respectively indicating the
maximum period of time that a package was collected and delivered, weight of
the products, capacity of the UAVs - were not taken into consideration in this
work.
13
E. L. Marques Jr. et al.
The following parameters were defined and considered for the models:
Parameters
13
A two‑phase multi‑objective metaheuristic for a green UAV…
Parameters
Zx Length of the map to be considered by the model
Zy Width of the map to be considered by the model
C Set of clients, containing the following information for each client
c
Cx,c x Coordinate for c ∈ C
Cy,c y Coordinate for c ∈ C
E Set of energy stations
Ex,e x Coordinate for e ∈ E
Ey,e y Coordinate for e ∈ E
P set of map points that the vehicle cannot pass through.
Px,p x Coordinate for p ∈ P
Py,p y Coordinate for p ∈ P
U Set of available UAVs of predetermined size in the instance
Ix x Coordinate of UAVs at the beginning of the route ( t = 1)
Iy y Coordinate of UAVs at the beginning of the route ( t = 1)
Ucount Number of UAVs to be used in the solution
Vmax Maximum speed/velocity of UAVs
Furthermore, additional auxiliary variables were needed to update the battery rate
of the UAV at each t interval, as well as checking whether the UAVs are running at
each t time.
13
E. L. Marques Jr. et al.
The route must be carried out in the shortest possible time, thus we have to mini-
mize the total travelled time and reduce the time spent at base stations (Obj2). The
Eq. 1 represents this goal.
∑ onu,t ∑∑
time ≥
vu,t
+ DOR ⋅ rechargeRateu,e,t ∀u ∈ U (1)
t∈T e∈E t∈T
cons (Obj3): it is desirable that during the route, the vehicle consumes as little
battery/fuel as possible. Equation (2) measures the consumption of all vehicles.
The clarification of the variables is presented in the Sect. 2.4.
∑ vu,t
cons ≥ VEV ⋅
Vmax
+ onu,t ⋅ FEV ∀u ∈ U (2)
t∈T
The cons variable is composed by two parts, the first one responsible for rep-
resenting the velocity-dependent element (a greater speed on the stretch, causes
greater vehicle consumption) and the other one representing the fixed portion.
finalCharge (Obj1): it is interesting to end the route with the maximum possible
charge rate, ensuring that the drone is prepared for a future route, since the cur-
rent work has a dynamic nature where the instances already consider the initial
location and capacity of the drone to be arbitrary, which means that a drone can
start a new route at the end of an old one, as well as in an arbitrary point. Equa-
tion (3) measures the minimum amount of energy that UAVs will have at the end
of the route.
finalCharge ≤ batRateu,tmax ∀u ∈ U (3)
We then have the structure of the objective function demonstrated by Eq. (4). The 𝜆i
parameters indicate the weights for each objective.
13
A two‑phase multi‑objective metaheuristic for a green UAV…
Fig. 3 Invalid movements
Fig. 4 Dock constraint
finalCharge
f .o. = min(−𝜆1 ⋅ + 𝜆2 ⋅ time + 𝜆3 ⋅ cons) (4)
100
UAVs can only move to points adjacent to each shift. If a client is visited, a drone
passes through its coordinates. All clients must be visited by at least one UAV.
Another constraint is concern on the ban on the passage of drones at points reported
as prohibited. If the route contains these points, the solution will be invalid.
Examples of invalid routes can be seen in Figs. 3 and 4. Figure 1 also represents a
invalid solution since one client is not visited by any UAV.
The speed in the section influences not only the total time of the route, but also the
consumption, the higher the speed (v), the greater the consumption. The fuel/battery
13
E. L. Marques Jr. et al.
Fig. 5 UAV from route 2 does not recharge unlike the one from route 1
level at the end of the stretch is a result of the fuel/battery level at the start of the
stretch decreased by the fixed consumption ( cf ) and the speed multiplied by the vari-
able consumption coefficient as shown in Eq. (5).
The time spent at the power station also influences. If the vehicle spends more
time, it can accumulate more fuel/energy for its battery. The fuel/battery level at the
end of the stretch is a result of the fuel/battery level at the beginning of the stretch,
increased by the amount of fuel/energy recharged.
vu,t
batRateu,t = batRateu,t−1 − VEV ⋅ − onu,t ⋅ FEV+
Vmax
∑ (5)
rechargeRateu,e,t ∀u ∈ U, t ≥ 2, t ∈ T
e∈E
A UAV can recharge if it passes through the coordinates of the power stations as
shown in Fig. 5 in which the UAV from route 1 can recharge unlike the one from
route 2.
13
A two‑phase multi‑objective metaheuristic for a green UAV…
3 Methodology
3.1 G‑VND
3.1.1 Construction
The GRASP, proposed by [25], was used to find an initial solution to the problem
addressed in this work. In a greedy construction of this problem, we iteratively
choose the client closest to the current position.
The construction phase is a greedy procedure with random and adaptive compo-
nents, which means that instead of always choosing the closest one, we select from
a set of k clients closest to the current position. After, we choose a client randomly
from this set (restricted candidate list) to be inserted in the initial solution. Speed
and recharge rate on all routes are set to maximum.
3.1.2 Local search
The inter-routes neighborhoods used are swap (1,1) and shift (1,0). The set of the
intra-route ones is composed of 10 NS (neighborhoods search), which are exchange,
remove recharge, closest recharge, remove repeated, speed section increase, speed
section decrease, speed random increase, speed random decrease, recharge random
increase and recharge random decrease.
As exchange is the most costly intra-route neighborhood, other versions were
implemented, so that it was possible to compare the one that provides better results
during computational experiments. The difference between the versions was that,
instead of exchanging a client on the route with each other (E1), the exchange only
occurs with the k nearest clients (E2), more distant (E3) or random (E4).
Remove Recharge neighborhood is responsible for remove possible recharge
points in each subpath (path between clients) and verify if it improves the current
solution. After we remove unnecessary recharge points, we try to add other ones that
could improve the current solution with the closest recharge neighborhood.
1
The G-MOVND and G-VND code can be currently accessed at https://github.com/eliaslawrence/uvrp-
vnd.
2
BRKGA implementation is available at https://github.com/eliaslawrence/uvrp-vnd.
13
E. L. Marques Jr. et al.
3.1.3 Acceptance criterion
After generating a neighbor of the current solution, the current route is evaluated
and compared to the routes in the pool of solutions. It will be inserted if it is not
dominated by any other one present in the pool. If the new route dominates any
other, the latter is removed from the set of solutions.
In this case study, we limit the number of non-dominated solutions, thereby, lim-
iting the number of operations (local search). If the set is full, the new route will
only be inserted if at least one solution from the current pool is strongly dominated.
All strongly dominated solutions are removed from the pool.
A mono-objective variant has also been implemented. The difference consists of
the fixed size of the pool in a solution and the comparison criteria,where the domi-
nance criteria is not applied, but an objective function, explained in Eq. (4).
3.1.4 MOVND
The algorithm receives as input a pool (localPool) with the initial solution
generated by the constructor, in addition to a array with the neighborhood struc-
tures. LocalPool is used as a temporary pool and when it is empty, the execution
13
A two‑phase multi‑objective metaheuristic for a green UAV…
3.2 BRKGA
To solve the MOGRDGP, another heuristic algorithm proposed to solve the problem
in this work, was the BRKGA [12], metaheuristic based on genetic algorithms as
can be inferred from its name. The concept of genetic algorithms integrated with
random keys was introduced by Bean [3] for sequential problems.
A random key is a random real number in the continuous range [0.1). Solutions to
optimization problems can be encoded by random keys. An array of size equal to the
size of the individuals is generated and at each position, a random key is generated.
A decoder is a deterministic algorithm that receives an array of random keys as
input and returns a solution to the optimization problem. Bean [3] proposed decod-
ers that sort the array of random keys to produce a sequence.
The metaheuristic takes as input population size (n), chromosome (c), elite popu-
lation (e), mutant population (m), maximum number of generations (G) and 𝜌 , which
refers to the factor of choice of the elite individual.
The initial population consists of n vectors with c random keys each. The rank
method uses the fitness value of each individual to do the sorting. A loop is per-
formed until the maximum number of generations is reached. With each iteration,
the first e individuals are kept in the population, as well as other random m individu-
als (mutation).
The crossover is the cross between a solution of the elite population (factor 𝜌 )
with another solution of the population to generate a child. Parents are chosen at
random. (N − e − m) crosses are performed and the children generated are inserted
in the remaining positions of the population.
At the end of each iteration, the population is ranked. The first comparison cri-
terion is the number of times the vehicle has a battery charge less than or equal to
zero. The second comparison criterion is a fitness function itself, explained in the
Eq. 4. Same function used in G-VND, facilitating later comparison of the methods.
The following weights were empirically adopted 𝜆1 = 5, 𝜆2 = 1, 𝜆3 = 1.
3.2.1 Implementation
The algorithm was divided into two stages. In the first one, the metaheuristic
observed the problem as a problem of routing in simple graphs (where only the order
of visit matters), so it was not necessary to calculate the path between each node,
using only the Euclidean distance for this. The idea of this initial stage (Fig. 6) is
13
E. L. Marques Jr. et al.
13
A two‑phase multi‑objective metaheuristic for a green UAV…
maxValue = 10.0
What changes, in the metaheuristic, in practice, is only the decoding, that is inte-
grated into the A* method to generate a valid solution.
Each individual is represented by three arrays of random keys: visit order, speed
and vehicle recharge rate. The arrays have a dimension equal to the number of cli-
ents plus number of recharge stations in the instance. The end of the route is deter-
mined by the position of the last client represented in the first array. The speed
between two special points (client/client, client/recharge point) A and B is constant
and equal to the value represented in the second array, in the same position as point
A, in the visit order. The recharge rate at point C of the route follows the same pat-
tern, where it will be determined by the third array at the same position as point C,
in the order of visit.
The random keys representing the visit order follow the basic principle of RKGA
applied to routing. In this way, encoding and decoding is performed by sorting the
keys. After decoding, we get the visited client order.
The speed and recharge rate arrays follow the same idea. Decoding works by
multiplying the value of the random key by the maximum value of the variable, as
we can see as an example in Fig. 8. Thus, at the end of decoding, we have an array
of speeds and recharge rates for each segment of the route.
4 Computational experiments
Our experiments were performed with a virtual machine with 2 GB of virtual RAM
running a 64-bit version of Ubuntu 18.04 on the VirtualBox 5.0.10 hypervisor with
Windows 10 as the host operating system. The host hardware configuration consists
of an Intel Core i5-6400 CPU with 16 GB of RAM.
To the best of our knowledge, as there is no well-established library of instances
for the problem addressed in this work, three well-known TSP instances in 2D
Euclidean format were used as the basis for the tests: Christofides/Eilon eil51,
eil101 and rat195. These instances have 51, 101 and 195 clients, respectively. From
these, arrays were generated representing the area that comprises all clients. After
the array is generated, points in it are chosen at random and defined as recharge
points and prohibited points.
13
E. L. Marques Jr. et al.
For both the G-MOVND and the G-VND methods, the different implementations
of the intra-route exchange method were taken into account for comparative criteria
as described in the Sect. 3.1.2. In the case of experiments, we use the value of k = 3 .
The E2-E3 method means that both the E2 and E3 methods were used as neighbor-
hood structures. The same applies to E2-E4.
Three sizes of instances were considered (51, 101 and 195). For each size, were
generated two different formations obeying the percentages of 5% of prohibited
points and 1% of recharge points (ex: eil51a and eil51b). For each formation, two
different and random drone origin points were chosen (ex: eil51a1 and eil51a2).
The number of drones (1 or 2, ex: eil51a1_1d or eil51a1_2d), pre-processing (with
or without, ex: eil51a1_pp or eil51a1) were other parameters taken into considera-
tion. As well as, the variable consumption ( cv ) where higher the speed, greater the
consumption, but shorter the duration of the route. Two values were used in the
experiments (0.05 and 0.1, ex: eil51a1_pp_2d_005 or eil51a1_pp_2d_010). The last
parameter was the metaheuristic execution timeout:
• Instances of 51 clients: 5 s, 10 s, 30 s, 60 s, 120 s and 300 s (default)
• 101 clients: 10 s, 30 s, 60 s, 120 s, 300 s and 600 s (default)
• 195 clients: 900 s (default) and 1800 s
4.1 Heuristics comparisons
In order to compare the results obtained during the experiments, two solution qual-
ity indicators were used: hypervolume and coverage.
According to [27], hypervolume is an indicator associated with an approximation
given by the volume of the portion of the objective space that is weakly dominated
by a set. This indicator needs the specification of a Z reference point that denotes
an upper limit on all objectives. In this problem, the normalized objective function
was used in Eq. (6). The hypervolume calculation code is provided by [10] and as
default it deals with minimization models, then minPoints is represented by the vec-
tor [ −100 , 0, 0], the best values possible for final charge (multiplied by −1 ), time
and consumption respectively. The vector refPoints is composed by the worst values
in the current pool of solutions.
z[o] + minPoints[o]
z[o] = (6)
refPoints[o] + minPoints[o]
The other measure refers to the number of solutions in the Pareto reference (PRef)
generated by a specific method. Coverage, represents the number of solutions in the
weakly dominated set of pareto divided by the total number of solutions in the set
of pareto. The Pareto reference is generated from the solutions of all executions of
all methods for each instance. Non-dominated solutions, then, integrate this set of
pareto.
13
A two‑phase multi‑objective metaheuristic for a green UAV…
100
80
Final Charge
60
40
20
0
30 60 120 300
Metaheuristic time limit (s)
1,200
6,000
1,000
Consumption
800
4,000
Time
600
2,000 400
200
0
0
30 60 120 300 30 60 120 300
Metaheuristic time limit (s) Metaheuristic time limit (s)
Fig. 9 Variation of objective values for eil51b2 instance due to the duration of the metaheuristic:
BRKGA (blue), GMOVND (black) and GVND (red)
On Fig. 9, it is easy to notice that although G-VND generates the best solu-
tions, it takes time to generate valid solutions. The opposite happens with
BRKGA, which can generate valid solutions much faster than other methods, but
it takes time to arrive at solutions as good as other methods.
With the simplest instances (smaller grids and cv and/or fewer drones), the
multiobjective method, as it contains a pool of solutions, manages to generate
good solutions that attend each objective separately, which can be seen in Table 1,
because when it finds valid solutions, it manages to win over the other methods
in O1 (final charge), O3 (consumption) and get closer to the results of G-VND in
O2 (time).
The mono-objective version, on the other hand, works on just one solution and
therefore finds a little more difficulty in the variability of its solution, losing in O1
and O3 in most of the instances and in O2 in the most difficult instances like Table 1.
However, precisely because it works with only one solution, it manages to be better
(in terms of dominance) than each one, individually, generated by the multiobjective
method.
BRKGA, although not outstanding for the quality of its solutions, has merits for
generating valid solutions much faster than the other two methods. This statement
is validated by the most complex instances, such as those based on rat195 and in
instances with cv equal to 0.1.
13
Table 1 Comparison of the values of the objective functions in the eil51 instances with 2 drones and cv equals to 0,1 (60 s, 30 s, 10 s and 5 s)
Final charge Time Consumption
Instance BRKGA G-VND G-MOVND BRKGA G-VND G-MOVND BRKGA G-VND G-MOVND
13
eil51a1_pp_2d_010_60 74 99 95 2466 339 338 526 366 288
eil51a2_pp_2d_010_60 73 92 92 3703 375 313 639 590 201
eil51b1_pp_2d_010_60 48 97 99 3071 344 319 549 556 263
eil51b2_pp_2d_010_60 66 95 98 1087 349 370 835 558 214
eil51a1_pp_2d_010_30 70 – 96 171691 – 344 574 – 245
eil51a2_pp_2d_010_30 82 – 76 3254 – 312 869 – 525
eil51b1_pp_2d_010_30 67 – 97 1925 – 359 841 – 385
eil51b2_pp_2d_010_30 50 – 97 1788 – 347 1111 – 282
eil51a1_pp_2d_010_10 83 – – 3694 – – 960 – –
eil51a2_pp_2d_010_10 61 – – 46142 – – 889 – –
eil51b1_pp_2d_010_10 42 – – 3104 – – 1145 – –
eil51b2_pp_2d_010_10 44 – – 3249 – – 1077 – –
eil51a1_pp_2d_010_5 86 – – 5612 – – 1055 – –
eil51a2_pp_2d_010_5 72 – – 12997 – – 1178 – –
eil51b1_pp_2d_010_5 18 – – 6813 – – 1110 – –
eil51b2_pp_2d_010_5 10 – – 6642 – – 1142 – –
eil101a1_pp_2d_010_600 75 – – 4275 – – 1279 – –
eil101a2_pp_2d_010_600 77 – – 3327 – – 13882 – –
eil101b1_pp_2d_010_600 94 – – 2844 – – 1298 – –
eil101b2_pp_2d_010_600 88 – – 3382 – – 1485 – –
eil101a1_pp_2d_010_300 70 – – 3415 – – 1538 – –
eil101a2_pp_2d_010_300 70 – – 5681 – – 1591 – –
eil101b1_pp_2d_010_300 80 – – 2602 – – 1826 – –
eil101b2_pp_2d_010_300 – – – – – –
E. L. Marques Jr. et al.
83 5456 1599
Table 1 (continued)
Final charge Time Consumption
Instance BRKGA G-VND G-MOVND BRKGA G-VND G-MOVND BRKGA G-VND G-MOVND
Lower the time and consumption and higher the final charge, the better. Wins/draws represent the number of best results of each method (values in bold)
13
13
Table 2 Comparison of the hypervolume values
G-VND G-MOVND
Instância S1 S2 S2–S3 S2–S4 S4 S1 S2 S2–S3 S2–S4 S4
eil51a1_pp_1d_005_300 0.020795 2e–06 0.030861 0.023091 0.016475 0.134317 0.061298 0.091998 0.15867 0.211702
eil51a2_pp_1d_005_300 0.010786 0.000325 0.005431 0.057932 0.013954 0.149194 0.020133 0.101524 0.077179 0.18835
eil51b1_pp_1d_005_300 0.025811 0.004155 0.019824 0.010168 0.06474 0.108522 0.049915 0.107278 0.167067 0.220386
eil51b2_pp_1d_005_300 0.025261 0.001832 0.007746 0.078744 0.058592 0.239336 0.133163 0.115436 0.169022 0.29454
eil101a1_pp_1d_005_600 0 0.154562 0.128263 0.174743 0.159414 0.079605 0.441809 0.172888 0.255015 0.2897
eil101a2_pp_1d_005_600 1e–06 0.057373 0.009536 0.081314 0.105031 0.03035 0.20937 0.136948 0.332207 0.372734
eil101b1_pp_1d_005_600 0.004005 0.059317 0.025549 0.175163 0.196375 0.002264 0.190141 0.209588 0.388912 0.380655
eil101b2_pp_1d_005_600 8e–06 0.132503 0.20232 0.190885 0.239937 0.002315 0.350836 0.298897 0.403424 0.40505
Wins/Draws 0 0 0 4 4 0 1 0 1 6
E. L. Marques Jr. et al.
Table 3 Comparison of the hypervolume values in the instances eil51 with 2 drones and cv equals to 0,1 (300 s, 120 s, 60 s, 30 s, 10 s and 5 s)
G-VND G-MOVND
Instância S1 S2 S2–S3 S2–S4 S4 S1 S2 S2–S3 S2–S4 S4
eil51a1_pp_2d_010_300 0.069485 0.021716 0.015454 0.062854 0.000548 0.131346 0.281926 0.149923 0.199639 0.110301
eil51a2_pp_2d_010_300 0.099269 0.06019 0.079028 0.030441 0.000709 0.025053 0.124247 0.132469 0.245771 0.213089
eil51b1_pp_2d_010_300 0.065252 0.081112 0.039958 0.020731 0.044003 0.268067 0.290394 0.223338 0.284001 0.299283
eil51b2_pp_2d_010_300 0.06844 0.065438 0.06374 0.054796 0.026421 0.253256 0.095927 0.158712 0.154838 0.230625
eil51a1_pp_2d_010_120 0.057691 0.039874 0.028219 0.004429 0.011841 0.249306 0.097837 0.387598 0.304051 0.257775
eil51a2_pp_2d_010_120 0 0.003552 0.000195 0.014564 0.020997 0.502308 0.330587 0.161815 0.50082 0.400457
eil51b1_pp_2d_010_120 0.022257 0.007968 0.010326 0.038498 1e–06 0.255684 0.24811 0.18098 0.184642 0.241851
eil51b2_pp_2d_010_120 0.069421 0.015079 0.020671 0.004019 1e–06 0.488216 0.231857 0.137772 0.37673 0.244011
A two‑phase multi‑objective metaheuristic for a green UAV…
eil51a1_pp_2d_010_60 0.200294 0.24779 0.122142 0.150754 0.136076 0.141028 0.213526 0.162016 0.15151 0.167547
eil51a2_pp_2d_010_60 0.234699 0.170401 0.105089 0.003862 0 0.44086 0.431543 0.37044 0.128351 0.355009
eil51b1_pp_2d_010_60 0.005943 0.052966 0.051464 0.059508 0.001448 0.313255 0.111483 0.17727 0.038938 0.15267
eil51b2_pp_2d_010_60 0.083241 0.122473 2e–06 0.118052 0.000142 0.020816 0.054042 0.144838 0.159713 0.311948
eil51a1_pp_2d_010_30 – – – – – 0 0.092966 0.028953 0 0.073083
eil51a2_pp_2d_010_30 – – – – – 0.049724 0.027657 0.023998 0.018424 0.0079
eil51b1_pp_2d_010_30 – – – – – 0 0.03002 0.061249 0.036549 0.000435
eil51b2_pp_2d_010_30 – – – – – 0.37616 0.365801 0.369478 0.398487 0.159026
Vitórias/Empates 6 3 0 3 0 7 3 2 2 2
13
E. L. Marques Jr. et al.
4.2 Two‑phase procedure
According to Michie et al. [20], it would be useful if computers could learn from
past experiences and thus automatically improve the efficiency of their own pro-
grams during execution. Inspired by this concept of machine learning and regarding
the results of the computational experiments, we developed techniques where the
program could benefit from each method.
The core mechanism of our technique is to first run the BRKGA, then save the
routes generated and use them as initial solutions (construction phase) for the other
methods (VND and MOVND) to speed-up their optimization. This way, the program
would take advantage of the speed in finding valid solutions of the BRKGA and use
the other methods to improve the solutions generated. We called these new methods
B-VND and B-MOVND. As shown by [23] and [17], this 2-stage approach can be
very efficient if the methods start from a population of good quality, in the place of
using only one random solution as starting solution. Similar hybrid approaches have
been recently explored on machine learning field as ablation studies, specially for
neural networks [11].
In terms of experiments, instances considered difficult were used to verify if the
hybrid technique would provide better results. The Table 4 refer to the instances with
101 clients, 2 drones and cv equals to 0.1. Without this, G-VND and G-MOVND
can’t find valid solutions on less or equals to 60 s.
The values of the objective functions (O1, O2, O3) generated by the BRKGA at
the first stage were, respectively, (74, 13474, 2765) for a1 and (15, 14838, 29118)
for b1. It couldn’t find valid solutions for the instances a2 and b2.
We could verify that VND and MOVND were able to improve the solutions gen-
erated by the BRKGA in the first stage, and with smaller timeouts (10 s and 30 s)
the objective values were better than the 1-stage BRKGA. On the other hand, when
the solutions generated at the first stage are not valid (due to timeout constraints),
they also can’t generate valid solutions from invalid ones. For this reason, B-VND
and B-MOVND couldn’t find solutions for both instance packs a2 and b2.
13
A two‑phase multi‑objective metaheuristic for a green UAV…
Table 4 Comparing the simple metaheuristics (BRKGA, G-VND and G-MOVND) with the 2-stage ones
(B-VND and B-MOVND)
Objectives Methods Instances ( eil101 − ... − pp_2d_010 − ...)
a1_60 b1_60 a1_30 b1_30 a1_10 b1_10
Number indicates the objective values achieved by the best solution according to guiding function
5 Conclusions
In this work, we approach the MOGRDGP, considering a novel and rich range
of constraints, in addition to using a model with several objective functions. The
multi-objective, grid, restrictions of prohibited areas (docking constraint), the
concern with consumption (Green Computing) and the dynamism of this problem
shows a practical approach for real applications.
The instances considered arbitrary drone initial positions and also variable ini-
tial battery charge, so it is possible to integrate this tool in an online solver that
solves a series of instances considering changes in the dynamic characteristics of
the scenario (due to wind conditions, logistics and other operational restrictions).
To solve the problem addressed, we propose three algorithms (BRKGA, G-VND
and G-MOVND) and through the computational experiments carried out, we can
conclude that for MOGRDGP, BRKGA, despite generating viable solutions very
quickly, their generated solutions lose in quality compared to the other methods. In
the comparison between G-VND (mono-objective) and G-MOVND (multi-objec-
tive), we can see that G-VND generates the best solutions but it takes time to find
13
E. L. Marques Jr. et al.
valid solutions. In this way, G-MOVND, transits between the other two methods in
terms of advantages and disadvantages, being faster than the mono-objective method
to find valid solutions and generating better solutions than BRKGA.
We visualize future work taking into account more vertical layers in the grid,
heterogeneous drones and prohibited temporary points. Next steps for this work
could also require a study of exact methods for this problem, consisting of math-
ematical formulations and hybrid methods combining metaheuristics with exact
methods (such as columns generation) for the case of multiple drones. Problem
solving methods based on neural networks are also in our plans with sensors and
IoT equipment for guiding them on real-time operation.
Data Availability Statement The datasets generated during and/or analysed during the current study are
available from the corresponding author on reasonable request.
References
2. Adabo, G.J.: Long range unmanned aircraft system for power line inspection of Brazilian electrical
system. J. Energy Power Eng. 8, 2 (2014)
3. Agatz, N., Bouman, P., Schmidt, M.: Optimization approaches for the traveling salesman problem
with drone. Transp. Sci. 52(4), 965–981 (2018)
4. Bean, J.C.: Genetic algorithms and random keys for sequencing and optimization. ORSA J. Comput.
6(2), 154–160 (1994)
5. Coelho, B.N., Coelho, V.N., Coelho, I.M., Ochi, L.S., Zuidema, D., Lima, M.S., da Costa, A.R.,
et al.: A multi-objective green uav routing problem. Comput. Oper. Res. 88, 306–315 (2017)
6. Coelho, V.N., Grasas, A., Ramalhinho, H., Coelho, I.M., Souza, M.J., Cruz, R.C.: An ils-based algo-
rithm to solve a large-scale real heterogeneous fleet vrp with multi-trips and docking constraints.
Eur. J. Oper. Res. 250(2), 367–376 (2016)
7. Deng, C., Wang, S., Huang, Z., Tan, Z., Liu, J.: Unmanned aerial vehicles for power line inspection:
a cooperative way in platforms and communications. J. Commun. 9(9), 687–692 (2014)
8. Deza, M.M., Deza, E.: Encyclopedia of distances. In: Encyclopedia of distances, pp. 1–583.
Springer (2009)
9. Duarte, A., Pantrigo, J.J., Pardo, E.G., Mladenovic, N.: Multi-objective variable neighborhood
search: an application to combinatorial optimization problems. J. Global Optim. 63(3), 515–536
(2015). https://doi.org/10.1007/s10898-014-0213-z
1. Everything you need to know about iiot|ge digital. https://www.ge.com/digital/blog/what-industrial-
internet-things-iiot
10. Fonseca, C.M., Paquete, L., López-Ibánez, M.: An improved dimension-sweep algorithm for the
hypervolume indicator. In: 2006 IEEE International Conference on Evolutionary Computation, pp.
1157–1163. IEEE (2006)
11. Girshick, R., Donahue, J., Darrell, T., Malik, J.: Rich feature hierarchies for accurate object detec-
tion and semantic segmentation. In: Proceedings of the IEEE Conference on Computer Vision and
Pattern Recognition, pp. 580–587 (2014)
12. Gonçalves, J.F., Resende, M.G.: Biased random-key genetic algorithms for combinatorial optimiza-
tion. J. Heuristics 17(5), 487–525 (2011)
13. Haala, N., Cramer, M., Weimer, F., Trittler, M.: Performance test on uav-based photogrammetric
data collection. Proc. Int. Arch. Photogram. Remote Sens. Spat. Inf. Sci. 38(1/C22), 7–12 (2011)
13
A two‑phase multi‑objective metaheuristic for a green UAV…
14. Harris, A., Sluss, J.J., Refai, H.H., LoPresti, P.G.: Alignment and tracking of a free-space optical
communications link to a uav. In: The 24th Digital Avionics Systems Conference, DASC 2005,
vol. 1, pp. 1–C. IEEE (2005)
15. Irizarry, J., Gheisari, M., Walker, B.N.: Usability assessment of drone technology as safety inspec-
tion tools. J. Inf. Technol. Construct. (ITcon) 17(12), 194–212 (2012)
16. Li, L., Ota, K., Dong, M.: Deep learning for smart industry: efficient manufacture inspection system
with fog computing. IEEE Trans. Ind. Inf. 14(10), 4665–4673 (2018)
17. Lust, T., Teghem, J.: Two-phase pareto local search for the biobjective traveling salesman problem.
J. Heuristics 16(3), 475–510 (2010)
18. Máthé, K., Buşoniu, L.: Vision and control for uavs: a survey of general methods and of inexpensive
platforms for infrastructure inspection. Sensors 15(7), 14887–14916 (2015)
19. Metni, N., Hamel, T.: A uav for bridge inspection: visual servoing control law with orientation lim-
its. Autom. Constr. 17(1), 3–10 (2007)
20. Michie, D., Spiegelhalter, D.J., Taylor, C., et al.: Neural and statistical classification. Mach. Learn.
13(1994), 1–298 (1994)
21. Nigam, N., Kroo, I.: Persistent surveillance using multiple unmanned air vehicles. In: Aerospace
Conference, 2008 IEEE, pp. 1–14. IEEE (2008)
22. Palossi, D., Loquercio, A., Conti, F., Flamand, E., Scaramuzza, D., Benini, L.: A 64-mw dnn-based
visual navigation engine for autonomous nano-drones. IEEE Internet Things J. 6(5), 8357–8371
(2019)
23. Paquete, L., Chiarandini, M., Stützle, T.: Pareto local optimum sets in the biobjective traveling
salesman problem: an experimental study. In: Metaheuristics for Multiobjective Optimisation, pp.
177–199. Springer (2004)
24. Plastiras, G., Terzi, M., Kyrkou, C., Theocharidcs, T.: Edge intelligence: challenges and opportuni-
ties of near-sensor machine learning applications. In: 2018 IEEE 29th International Conference on
Application-Specific Systems, Architectures and Processors (asap), pp. 1–7. IEEE (2018)
25. Resende, M.G., Ribeiro, C.C.: Grasp: greedy randomized adaptive search procedures. In: Search
Methodologies, pp. 287–312. Springer (2014)
26. Schermer, D., Moeini, M., Wendt, O.: A Variable Neighborhood Search Algorithm for Solving the
Vehicle Routing Problem with Drones. Technical Report Technische Universität Kaiserslautern,
Technical report (2018)
27. Talbi, E.G.: Metaheuristics: From Design to Implementation, vol. 74. Wiley, New York (2009)
28. Wang, X., Poikonen, S., Golden, B.: The vehicle routing problem with drones: several worst-case
results. Optim. Lett. 11(4), 679–697 (2017)
29. Wu, H., Lyu, F., Zhou, C., Chen, J., Wang, L., Shen, X.: Optimal uav caching and trajectory in
aerial-assisted vehicular networks: a learning-based approach. IEEE J. Sel. Areas Commun. 38(12),
2783–2797 (2020)
30. Zeng, L., Li, E., Zhou, Z., Chen, X.: Boomerang: on-demand cooperative deep neural network infer-
ence for edge intelligence on the industrial internet of things. IEEE Netw. 33(5), 96–103 (2019)
31. Zhang, J., Letaief, K.B.: Mobile edge intelligence and computing for the internet of vehicles. Proc.
IEEE 108(2), 246–261 (2019)
Publisher’s Note Springer Nature remains neutral with regard to jurisdictional claims in published maps
and institutional affiliations.
Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under
a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted
manuscript version of this article is solely governed by the terms of such publishing agreement and
applicable law.
13
E. L. Marques Jr. et al.
13