Next Article in Journal
Optimizing the Parameters of Long Short-Term Memory Networks Using the Bees Algorithm
Next Article in Special Issue
Illegal Domain Name Generation Algorithm Based on Character Similarity of Domain Name Structure
Previous Article in Journal
Study on Shock Initiation Randomness of Energetic Materials on a Macroscopic Scale
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

EETO-GA: Energy Efficient Trajectory Optimization of UAV-IoT Collaborative System Using Genetic Algorithm

1
Department of Computer Networks & Communications, CCSIT, King Faisal University, Al Ahsa 31982, Saudi Arabia
2
Department of Computer Applications, Kalyani Government Engineering College, Maulana Abul Kalam Azad University of Technology, Kalyani 741235, India
3
Department of Computer Science, University of Gour Banga, Malda 732103, India
*
Author to whom correspondence should be addressed.
Appl. Sci. 2023, 13(4), 2535; https://doi.org/10.3390/app13042535
Submission received: 26 December 2022 / Revised: 8 February 2023 / Accepted: 11 February 2023 / Published: 16 February 2023

Abstract

:
Unmanned aerial vehicle (UAVs) is capable of adding significant potential to the internet of thing (IoT) devices and hence smart UAV–IoT collaborative system has attracted the attention of many researchers. This system has to be energy efficient for its nature and functionalities. Optimized trajectory planning is a significant area of research for any automatic movable device. In this article, we propose a technique, called EETO-GA for energy-efficient trajectory optimization of UAV–IoT using a genetic algorithm (GA). This technique prescribes each device of: (i) the next timestamp of arrival on the present cluster of IoT devices, at which the task queue of its header contains the highest possible number of tasks, and (ii) the minimum amount of energy that requires to complete all the tasks present in task queue of the IoT device. This technique uses a GA for optimization where the fitness function is designed by optimizing objectives: (i) the total number of tasks that can be completed, (ii) minimization of consumed energy, and (iii) the number of devices that could be served. A GA is applied here to accommodate a large number of IoT devices. A binary method of encoding is applied and methods like cross-over and mutation are used to arrive at the optimal solution. Through a simulation study, the proposed technique shows significant improvement in terms of UAV energy saved (UAVE), energy saving in IoT devices (IoTDEC), the average delay in execution of the task (ADET), and the percentage of tasks that could be completed (PTSK). Proposed EETO-GA improved average UAVE: 43%, IoTDEC: 56%, PTSK: 7.5%, and ADET: 38% over the state of the art.

1. Introduction

There have been numerous applications of unmanned aerial vehicles(UAVs) in the last decade in the fields of wireless ad hoc and sensor networks, vehicular networks, and the internet of thing (IoT) devices [1,2,3,4]. The applications encapsulated various fields including civilian purposes, military, disaster management, surveillance, source localization, task execution, products delivery, agriculture, etc. [5,6,7,8,9]. The reason is that UAVs are fast, lightweight, and cheap. If their trajectories are planned properly then a lot of tasks can be completed through energy-efficient UAVs and less energy consumption means a lot of money is saved [10,11,12,13,14]. This is entirely necessary from the perspective of the scarcity of energy resources and the sustainability of mother earth [15,16,17,18,19].
The target in this context is energy optimization in UAV-controlled IoT-monitored big agricultural fields, surveillance areas, etc., through energy efficient trajectory planning and properly suggesting the IoT devices about the timestamp of submitting the next task to the clusterhead (CH). Although many UAV trajectory deciding algorithms exist in the literature as discussed in Section 2, to the best of the authors‘ knowledge, the issue of arrival of the UAV over a CH when its task queue is approximately full, has been inadequately addressed in UAV–IoT systems. But it is extremely important for efficient task execution and resource utilization. It is always better and energy-saving for the UAV to come to a CH and execute the set of tasks in the completely full task queue than coming to the same CH twice and executing the set of tasks in its half-filled task queue. This saves propulsion energy in the UAVs. Energy in non-CH ordinary devices is saved by the CH IoT device as it prescribes the next timestamp of submitting the next task by this particular ordinary IoT device so that the chance of this task being dropped, becomes much less. The job of the CH is to collect the tasks of the individual IoT devices and under it and arrange them in a suitable sequence. This is extremely important because each retransmission of a task from the source IoT device to CH doubles the consumption of energy by ordinary members. The scheduling process has been made energy efficient because tasks are executed in order of priority and starving tasks, especially those that have short lengths are assigned a higher priority. This is an optimization problem where the optimal trajectory to be followed by UAV changes dynamically with a number of tasks that are generated at each individual IoT device, their length, the starvation status, predecessor, etc., until the history is developed, we rely on the initial solution which is the trajectories suggested by the Dijkstra’s shortest path algorithm [20]. Iterative improvements take place on existing solutions based on the history that gradually develops in CH IoT devices. This matches with the nature of genetic algorithm (GA) [21,22] and so we have used it in the proposed technique.
In this paper, we propose a GA-based trajectory optimization strategy that will optimize the objectives including the number of distinct IoT devices served, the number of tasks that are successfully completed, and the amount of energy consumed which includes propulsion energy as well as the energy required to execute the task submitted by several different IoT devices. Energy is saved not only in the UAVs but also in the IoT devices by avoiding the resubmission of tasks as much as possible. Here we have considered the constraints like time of use, tariff, etc., because the system has been implemented here using a simulator.

1.1. Highlights of this Article

The main highlights of our article are as follows:
  • The IoT devices in our system are divided into multiple clusters with each cluster having a CH. A UAV flies over these CHs in such a trajectory that optimizes the number of tasks executed, the number of devices served, along with consumption of energy. Here we have avoided the round-robin mode of task execution because tasks are generally scheduled according to priority.
  • Each CH maintains two tables, one corresponding to IoT devices under itself and the other corresponding to other CHs. Information about IoT devices is required to compute the priority of the current task submitted by one particular IoT device whereas cluster information is required to compute the credibility of the CH to be visited next. This trajectory planning of UAV is completely dynamic and with every traversal of CH, training data is refined with the most recent experiences(that is, made updated with the most recent records), so that the next CH to visit can be computed efficiently. Dynamic planning of energy-conserving UAV trajectory is an important contribution of this article.
  • Energy is preserved not only during trajectory planning of UAVs but also during task propagation from a non-CH IoT device to its CH. When submitting the next task, this information is supplied to an IoT device by the CH so that its chance of being dropped becomes lower. This preserves the energy that would have been required otherwise for resubmitting the task. This is accomplished using the ARMA model [23] and decision tree [24].
  • Use of GA enables incorporating a large number of clusters of IoT devices providing a scalability feature of the system.
  • Simulation results demonstrate that our proposed scheme EETO-GA outperforms other state-of-the-art UAV trajectory optimization algorithms in terms of performance Metrics like UAV energy saved (UAVE), energy saving in IoT devices (IoTDEC), the average delay in execution of the task (ADET), and the percentage of tasks that could be completed (PTSK). Proposed EETO-GA improved average UAVE: 43%, IoTDEC: 56%, PTSK: 7.5%, and ADET: 38% over the state of the art.

1.2. Organization of the Article and Description of Used Symbols

The rest of the paper is organized as: Section 2 illustrates literature on this topic. Section 3 illustrates the proposed model (method) including computation of task priority, predicting the time of submission of the next task, and GA-assigned trajectory planning. Simulation experiments, results, and discussion appear in Section 4 whereas Section 5 concludes the paper with leftover a few immediate future scopes.
The paper presents many symbols and abbreviations that are tried to explain the location where they are used. But Table 1 presents a brief description of each symbol and abbreviations together.

2. Related Work

These days a huge amount of research works are being carried out in the domain of UAVs and drones in connection with wireless sensor networks, vehicular networks as well as IoT devices because of the possibilities of huge applications expected to enhance the performance of those systems [2,3,4,25]. When the number of such networks, nodes, or IoT devices increases up to a great extent, these nodes or devices are generally clustered and UAVs have to hover on these CHs. Cluster members submit their tasks to their own CHs which are received by the UAVs that execute those tasks by hovering over the CHs. This hovering costs a huge amount of energy, especially if the CHs are traversed in a zigzag manner [10,26]. Therefore, for energy-efficient operation of the system, the trajectories of the UAVs should be planned properly [4,16]. Additionally, in multi-UAV systems, there may be the intersection of trajectories of different UAVs, leaving a nonzero probability of collision. This collision must be avoided at any cost for which proper trajectory planning is extremely necessary [27,28,29].
A deep reinforcement learning best trajectory design is presented in [16] where energy efficiency is ensured through minimizing residual energy, safe distance between multiple UAVs, and minimizing the application of age information in the current context. This technique is especially applicable for a multi-UAV system where the authors have given special attention to reducing dependencies of testing data on the training data.
The comprehensive energy consumption (CEC) model is studied in [18,19] where energy consumed by a UAV consists of two components: propulsion energy and communication energy. Communication energy is due to the transmission of tasks from network nodes to UAV and returning back the results from UAV to nodes. Propulsion energy is because of the hovering of UAVs on nodes. However, a lot of propulsion energy is wasted if the task queue is not full (or approximately full) when the UAV arrives over one particular network node for task execution of a collection of nodes under it. The minimization of propulsion energy(PEM) of fixed-wing UAVs is considered by authors in [19] where the communication energy part of UAV’s energy consumption is ignored.
These days, gradually, applications of UAV-assisted systems have started to become processing intensive; additionally, the number of real-time tasks has increased for which delay has become an important performance metric along with energy, as proposed in [30]. In order to finish all the tasks within a specific time duration, hovering decisions of UAVs have to be based on recent information; therefore, age-of-information needed to be considered these days as an important criterion [31]. The recency of information is considered by authors of [4] where trajectory planning(AoI-IP) is based on dynamic programming. However, the communication energy part is ignored in this paper as well.
Various learning algorithms have been presented in the literature some of which are limited to only trajectory optimization of single or multiple UAVs [32,33,34] whereas some others consider trajectory optimization along with scheduling [10,35]. In this article, IoT devices are not clustered, but rather all these devices apply Time Division Multiple Access (TDMA) to get served on the UAV. However, interference is a big problem in this case, and the time quantum will be small if a huge number of IoT devices are grouped together. Hence, TDMA-based task execution will not be efficient in this scenario.

3. Proposed Method EETO-GA

3.1. Model Architecture

In the proposed EETO-GA, the set of IoT devices is divided into certain clusters and each cluster has a CH as shown in Figure 1. The IoT devices send their tasks to their CH where they get stored in a task queue in descending order of priority. The task with the highest priority gets placed in the front end of the queue whereas the one with the least priority is placed in the rear end. Whenever the queue is full, no further tasks are accepted and inserted in the task queue until the UAV arrives on the CH and executes all those.

3.2. Selection of Clusterhead (CH)

Suppose in cluster C, IoT devices are denoted as d e v ( 1 ) , d e v ( 2 ) , . . . , d e v ( n u m ( C ) ) where n u m ( C ) is the number of devices in cluster C. Assuming that ( h i , k i ) be location of d e v ( i ) , where i i n u m ( c ) then centroid of the cluster will be denoted as ( X _ c e n , Y _ c e n ) as formulated in (1) and (2).
X _ c e n = { i = 1 n u m ( c ) h i } / n u m ( c )
Y _ c e n = { i = 1 n u m ( c ) k i } / n u m ( c )
Eligibility of a device d e v ( i ) as a CH is governed by the function c l s _ e l g ( i ) as in (3), where ( R E i ) is residual energy of the ith device.
c l s _ e l g ( i ) = R E i { ( h i X _ c e n ) 2 + ( k i Y _ c e n ) 2 }
The above mathematical expression is based on the fact that if a node has high residual energy and geographical closeness to the centroid of the cluster then its eligibility increases to become a CH.

3.3. Assigning Priority to Tasks

Each CH maintains a history of task propagation from its member IoT devices to it. The attributes of this information are as follows:
i.
t s k _ i d —Unique identification number of the task.
ii.
t s k _ g e n _ i d —Unique identification number of the cluster member that has generated the task.
iii.
t m _ g e n —Timestamp of generation of the task.
iv.
t m _ e x e c —Timestamp of completing execution of the task. If the task is not executed so far this field is set to −1. That is, for ongoing tasks, tm-exec is set to −1.
v.
p r _ t s k —Priority assigned by the task.
vi.
l e n _ t s k —Length of the task.
vii.
s t a r v _ t s k —Starvation status of the task. An IoT device is termed as starving provided it was inserted at least three times in the task queue and subsequently got retrieved from it to give place to higher priority tasks.
At least thirty tasks are required in the history of computing priority of subsequent tasks and participation of all IoT devices, and cluster members, within the history, is considered mandatory in this article to arrive at a close-to-accurate task priority computation priority of a new task τ ( j ) submitted by the device d e v ( i ) of cluster C, is formulated in (4).
p r ( τ ( j ) , d e v ( i ) ) = M i n ( c o m p _ p r i o r i t y ( τ ( j ) , d e v ( i ) ) , M a x _ p r ) , if Ø ( j ) is predicted not to starve M i n ( f ( c o m p _ p r i o r i t y ( τ ( j ) , d e v ( i ) ) ) , M a x _ p r ) , otherwise
where,
c o m p _ p r i o r i t y ( τ ( j ) , d e v ( i ) ) = m u l t i _ r e g r e s s ( t m _ g e n ( j ) , l e n _ t s k ( j ) , ( τ ( k ) Γ j ( i ) ( t m _ e x e c ( k ) t m _ g e n ( k ) ) / | Γ j ( i ) | ) , | S j ( i ) | )
f ( p r t y ) = p r t y × M a x _ p r M i n _ p r ( t ) p r t y M i n _ p r ( t )
M a x _ p r is the maximum possible priority in the system. Through the decision tree, it is predicted whether the new task τ ( j ) generated by the IoT device dev(i) is expected to starve or not. It is predicted not to starve, then it is assigned the priority which is the minimum of its normally computed priority using c o m p _ p r i o r i t y function and M a x _ p r . c o m p _ p r i o r i t y applies multiple regression function m u l t _ r e g r e s s where priority of the current task τ ( j ) is computed based upon timestamp of its generation ( t m _ g e n ( j ) ) , length of the task ( l e n _ t s k ( j ) ) , waiting time of predecessors of τ ( j ) who served. By predecessors of τ ( j ) we mean a set of all tasks τ ( k ) generated by the same device dev(i), s.t., t m _ e x e c ( k ) 1 , i.e., the task τ ( k ) has already been completed before the current time t. For a task τ ( k ) Γ ( i ) , ( t m _ e x e c ( k ) t m _ g e n ( k ) ) is the sum of its waiting time in the task queue and processing time by the UAV. Therefore,
{ τ ( k ) Γ j ( i ) ( t m _ e x e c ( k ) t m _ g e n ( k ) ) } / | Γ j ( i ) |
is the average time required for completion of all predecessors of τ ( i ) . If this computed priority of dev(i) is higher than M a x _ p r , then it is set to M a x _ p r otherwise the computed priority requires. On the other hand, if the decision tree predicts starvation of the task, then its priority is ignored a bit from computed priority within the state of M a x _ p r which is the maximum possible priority in the system and, M i n _ p r ( f ) which is the minimum priority of a task present in the task queue at current time t. Please note that irrespective of the currently computed priority p r t y , M a x _ p r M i n _ p r ( f ) is always greater than p r t y or equal to ( p r t y M i n _ p r ( f ) ) and therefore multiplying p r t y with the fraction ( M a x _ p r M i n _ p r ( f ) ) / ( p r t y M i n _ p r ( f ) ) using f‘ function will increase the priority value. However, this increased value cannot cross M a x _ p r because we are taking the minimum of the output priority generated by f and M a x _ p r .

Implementation Details of the Decision Tree

A decision tree is a powerful supervised learning algorithm that we have used in our research article for predicting the starvation status of the task. Available data is sliced as 80% and 20%, where 80% is training data and 20% is testing data. “Information Gain (IG)” in (6) is applied to select that particular attribute that will be placed at the top or as a root node, computation of information gain is based on the concept of entropy or “measure of uncertainty” as shown in (7). Certain accuracy, precision, and recall are used to calculate the efficiency of the trained classifier as shown in (8)–(10). The parameters of the decision tree appear in Table 2.
I G = E n t r o p y ( p a r e n t ) E n t r o p y ( c h i l d r e n )
Here IG specifies information gain, and as the name specifies, Entropy(parent) and Entropy(children) denote the entropy of the parent node and the average of entropies of all its children. The formula for entropy appears in (7).
E n t r o p y = i = 1 N p . log 2 p i
where p i is the probability of the random selection of an element in class i.
Like any other prediction, for the prediction of task starvation also, there are provisions for true positive, true negative, false positive, and false negative. Based on this accuracy, precision and recall are calculated below using (8)–(10).
a c c u r a c y = t r u e p o s i t i v e + t r u e n e g a t i v e t r u e p o s i t i v e + t r u e n e g a t i v e + f a l s e p o s i t i v e + f a l s e n e g a t i v e
p r e c i s i o n = t r u e p o s i t i v e t r u e p o s i t i v e + f a l s e p o s i t i v e
r e c a l l = t r u e p o s i t i v e t r u e p o s i t i v e + f a l s e n e g a t i v e
The values of these metrics should be high enough (at least 80 % ) in order to increase the efficiency of the prediction.

3.4. Prediction Next Timestamp of Task Submission

From the history of task propagation, a CH can predict the timestamp of the next intended submission for a device dev(i). Suppose, a set of task submission sessions of dev(i) till current time t’ is denoted as ST(i, t’). From this set, some sessions starved where as others did not starve. Let S T s t a r v e ( i , t ) be the subset of ST(i, t’), which consists of only the nonstarving tasks. For each task τ S T s t a r v e ( i ) let t m _ g e n ( τ ) be the time of generation of τ , we apply the ARMA model to predict the next suitable value of generation of the next task in t m _ g e n _ n e x t ( i , t ) of device i at current time t’, as shown in (11).
t m _ g e n _ n e x t ( i , t ) = A R M A _ p r e d n e x t ( t m _ g e n ( τ ) τ S T s t a r v e ( i , t ) )
A R M A _ p r e d n e x t is the function that applies the ARMA model for predicting the next task that is expected not to starve.

3.5. Traversal of UAV- on the Set of Clusterhead (CH)

Let the set of CHs under one UAV, is denoted as c l s ( 1 ) , c l s ( 2 ) , . . . . , c l s ( α ) . For any CH c l s ( α ) s . t . 1 u α . Let, (lat(u), long(u)) denote the geographical position of the CHs in terms of latitude and longitude. Initially, the UAV starts traversal with cls(v) provided, and the following two conditions are satisfied.
1 v α , a n d
( x _ U A V l a t ( v ) ) 2 + ( y _ U A V l o n g ( v ) ) 2 ( x _ U A V l a t ( u ) ) 2 + ( y _ U A V l o n g ( u ) ) 2 f o r a l l u s . t . 1 u α
The conditions are self-explanatory. Here, cls(u) specifies the CH closest to the UAV. As soon as the UAV arrives on the first CH, it executes all of its tasks in the task queue and insets the information in a table TASK-EXEC, where the attributes are as bellow:
i.
C L S _ I D —This specifies the unique identification number of the CH whose task in the task queue has recently been executed by the UAV.
ii.
L A T T I T U D E —Geographical latitude of the current CH is located by the UAV.
iii.
L O N G I T U D E —Geographical longitude of the current CH is located by the UAV.
iv.
T S K _ D I S T I N C T _ D E V —Number of distinct IoT devices whose tasks have been executed by the UAV.
v.
T S K _ N U M —This specifies the number of tasks that were submitted.
vi.
T S K _ N U M —This specifies the number of tasks successfully completed.
vii.
E N R G _ C O N S U M E D —The amount of energy spent by the UAV in the execution of these tasks, is given by this attribute.
For the second CH, the entire T A S K _ E X E C of the first CH is carried by the UAV to the second cluster and is ultimately inserted in T A S K _ E X E C table of the second one. Then all tasks in the task queue of the second CH will be executed and the corresponding entry is also inserted in T A S K _ E X E C of the second CH. Please note that the task of the first CH contains only task execution information of its own whereas the same table of the second CH contains task execution information of both the first and second CH. Like this, T A S K _ E X E C of the third CH will contain task execution information of all three of the first, second, and third CHs. In general, we can say that T A S K _ E X E C table of u-th CH where 1 u α will contain information about executed tasks in all CHs 1 to (u-1). This will continue for m number of rounds, where m is the minimum number such that every CH has every other CHs task execution information and at least thirty observations exist in T A S K _ E X E C of every CH. At this point, the UAV changes its strategy of traversing always the nearest CH unvisited in the current round. Rather it asks the current CH to know the identification number of the next CH to visit and the current CH applies a GA to answer that question. This GA applied for task execution (GATE) is illustrated in Section 3.5.

Details of Genetic Algorithm for Task Execution (GATE)

Flowchart of GA for Task Execution (GATE) appears in Figure 2. In this example, the identification numbers of CHs are in binary to form individual solutions which are called chromosomes. So, chromosomes are binary numbers whose values between 1 and α , therefore the number of bits present in each chromosome is log 2 α . The fitness function of chromosome C S depends on the factors like the average number of tasks that could be successfully computed, the average number of IoT devices that could be served, the energy consumed in each task execution session, and the physical distance of C S from the immediate previously visited CH. The mathematical expression of fitness function f n ( C S ) of chromosome CS, appears in (12).
f n ( C S ) = f 1 ( C S ) f 2 ( C S ) | t a s k _ s e s ( C S ) | 2 f 3 ( C S ) f 4 ( C S ) | t a s k _ s e s ( C S ) |
where,
f 1 ( C S ) = ρ t a s k _ s e s ( C S ) n u m _ o f _ t a s k s ( ρ ) f 2 ( C S ) = ρ t a s k _ s e s ( C S ) n u m _ o f _ d e v ( ρ ) ) f 3 ( C S ) = ρ t a s k _ s e s ( C S ) e n e r g y _ c o n s u m e d ( ρ ) f 4 ( C S ) = { ( l a t ( C S ) l a t ( c u r C S ) ) 2 + ( l o n g ( C S ) l o n g ( c u r C S ) ) 2 }
Here n u m _ o f _ t a s k s ( ρ ) and n u m _ o f _ d e v ( ρ ) specify the number of tasks successfully completed in ρ -th task execution session and the number of different IoT devices served in the same ρ -th session. t a s k _ s e s ( C S ) is the set of all task execution sessions in the TASK-EXEC table of CS. The average number of tasks served is ρ t a s k _ s e s ( C S ) n u m _ o f _ t a s k s ( ρ ) | t a s k _ s e s ( C S ) | .
Similarly average number of IoT device is ρ t a s k _ s e s ( C S ) n u m _ o f _ d e v ( ρ ) ) | t a s k _ s e s ( C S ) | .
Average energy consumed in each session is ρ t a s k _ s e s ( C S ) e n e r g y _ c o n s u m e d ( ρ ) | t a s k _ s e s ( C S ) | .
curCS is the current CH and CS is a probable next solution i.e., C S [ ( i = 1 α C L S ( i ) ) { c u r C S } ] .
Therefore Cartesian distance from current CH is given by
( l a t ( C S ) l a t ( c u r C S ) ) 2 + ( l o n g ( C S ) l o n g ( c u r C S ) ) 2 .
Selection of the next generation suitable chromosome for crossover and mutation is performed using Roulette Wheel Selection. Based on the efficiency of individual chromosomes as a percentage of contribution to the fitness of the overall population, chromosomes are propagated to the next generation after mating.

4. Simulation Experiments, Results, and Discussion

The simulation environment is discussed in Section 4.1, whereas results are appeared in Section 4.2.

4.1. Simulation Environment

Table 3 summarize values of all simulation parameters. The number of UAVs is 1, 3, 5, 7 and 9 in five different simulation runs and here we have not considered the possibility of the intersection of multiple-UAV except in the first simulation run where the number of UAVs is 1. As our system transmits from single UAV to multiple-UAV systems and the number of UAVs also increases in various simulation runs, they are able to serve more and more IoT devices improving the scalability of the entire system. That is why the number of IoT devices has also increased in different simulation runs. Our proposed technique EETO-GA is compared with other state-of-art trajectory optimization protocols, such as “comprehensive energy consumption (CEC)”, “propulsive energy minimization (PEM)” and “Age of information based tragedy planning (AoI-IP)”. Metrics of performance are UAV-Energy-Consumed(UAVE), IoT Device-Energy-Consumed(IoTDEC), Average Delay (AD), and Percentage of Successfully Completed Tasks (PSTK).

4.2. Formulation of Metrics and Results

We have formulated four metrics for the measurement of results that are briefly mentioned below:
UAV-Energy Consumption(UAVE): UAVE is the summation of the energy consumption of all UAVs throughout the simulation period. Consumed energy is the difference between the initial energy of a UAV and its residual energy after the simulation period. So,
U A V E = Σ C u r _ U A V U A V _ S e t ( i n i t _ e n e r g y ( c u r _ U A V ) f i n a l _ e n e r g y ( c u r _ U A V ) )
here Cur_UAV denotes the current UAV that is being considered. UAV_Set is the set of all UAVs applied in the current simulation scenario. init_energy(cur_UAV) and final_energy(curUAV) specify initial and final powers of the UAV named cur_UAV, after the end of the simulation process. Using the formula in (13), UEC has been measured in other state-of-the-art related to EETO-GA. However, in EETO-GA, we maintain a table TASK_EXEC in each UAV where the last column is mentioned as ENRG_CONSUMED which specifies the amount of energy spent by the current UAV in the execution of these tasks (it is also specified in Section 3.5). So, big summing this column, we get the total energy consumption of the current UAV throughout the simulation period summing over all UAVs, we get UEC as shown in (14).
U A V E = Σ C u r _ U A V U A V _ S e t Σ ( E N R G C O N S U M E D i n T A S K E X E C ( c u r U A V ) )
IoT Device Energy Consumed (IoTDEC):
In state-of-the-art related to EETO-GA, energy consumption in IoT devices was not separately considered, So, for those algorithms, we have measured energy consumption as the difference between initial energy and residual energy, as shown in (15).
I o T D e v i c e = Σ c u r d e v I o T D e v i c e s e t ( i n i t _ e n e r g y ( c u r d e v ) f i n a l _ e n e r g y ( c u r _ d e v ) )
Here, init_energy(cur_dev and final energy cur_dev denote the initial and final power of the current IoT device cur_dev. IoTDevice_set is the total number of IoT devices in the network. On the other hand, in EETO-GA, each IoT device maintains energy consumption information C-Ei where C-Ei is the energy consumed so far by the ith device which was discussed in Section 3.2, so, it can be formulated as in (16).
I o T D e v i c e = Σ c u r _ d e v I o T D e v i c e _ s e t ( C E c u r _ d e v )
Average Delay in Execution of the Task (ADET):
Average delay, for all the algorithms calculated as in (17). This is nothing but the difference between timestamps of initiation of a task and its execution, averaged over all the tasks for all CHs.
A D E T = Σ c u r _ c s i = 1 t o C L S ( i ) Σ ρ t a s k _ s e s ( c u r _ c s ) ( t m _ e x e c ( ρ ) t m _ g e n ( ρ ) )
Here, cur_CS is current CH, p is a task submitted to it tm_exec(p) and tm_gen(p) are execution completion time and task generation time for the task ρ .
Percentage of tasks that could be completed (PTSK): As per Section 3.5, it can be formulated in (18).
We experimented with proposed EETO-GA, and other state-of-the-art, namely CEC, PEM, and AoI-IP in the summation setup mentioned in Table 3. Comparative results are presented in graph formats in Figure 3, Figure 4, Figure 5 and Figure 6. In this simulation scenario, if we considered highest results of CEC, PEM, and AoI-IP in each setup as standard system performance indicator, then proposed EETO-GA improved average UAVE: 43%, IoTDEC: 56%, PTSK: 7.5%, and ADET: 38%. The performance improvements are explained in the next Subsection.
P S T K = Σ C u r _ U A V U A V _ S e t ( c u r _ U A V ) Σ C u r _ U A V U A V _ S e t T S K _ S U B ( C U R _ U A V ) × 100 %

4.3. Explanation

In CEC and PEM, only the propulsion energy consumption in UAVs is considered, whereas in EETO-GA, propulsion energy in UAVs as well as energy spent in task propagation (submission and series of subsequent resubmission in case of starvation) is considered. In the fitness function of the GA in our proposed scheme, we have included a number of tasks that could be successfully completed, and an increased number of tasks means, the opportunity of arrival of UAV has been utilized close to the fullest. Otherwise, another arrival from UAE would have been required to complete those pending tasks and those tasks would have to be resubmitted from member IoT devices to the respective CHs requiring more energy consumption in those devices. This would not only lead to an increased amount of energy consumption in UAVs, as well as IoT devices. Therefore, energy consumption in both UAV and IoT devices in our proposed scheme EETO-GA, is far lesser than than state of the art, namely, CEC, PEM, and AoI-TP, as shown in Figure 3 and Figure 4.
High energy consumption means a lesser lifetime for devices and exhausted IoT devices would not be able to submit all the jobs they intended to submit to the CH for possible execution by the UAV. Hence lesser the number of tasks that will be submitted in CEC, PEM, and AoI-TP compare to proposed EETO-GA. That is, more tasks will be executed by the EETO-GA than its competitors as shown in Figure 5. Another reason for the improvement of our proposed scheme EETO-GA is that it considers the criteria of starvation of tasks. Based on timestamps of generation of nonstarved tasks, an ARMA-model-based prediction of timestamps of generating a new task is prescribed by CH to its members in EETO-GA, so that the probability of starving is reduced. Reduction in starvation also contributes to energy saving in IoT devices otherwise tasks would have to be resubmitted again and again, especially when the number of IoT devices is as high as 700 or 900. For this reason, as the number of IoT devices increase, the improvement of EETO-GA in terms of energy consumption, over its competitors, become bigger and bigger as shown in Figure 3 and Figure 4.
The average delay in the execution of a task is also an important performance parameter. As the number of starving tasks and their serving times has been consciously reduced in EETO-GA, by increasing their priorities (maximum up to M a x _ p r ), so the average time required for the execution of each of these tasks, is reduced as shown in Figure 6. Tasks are submitted at suitable times prescribed by autoregressive moving average on the ARMA model, for which chances of their starvation get reduced, decreasing their average delay. Although the proposed technique is not real-time, but it tried to minimize the average delay as much as possible, however, for this particular simulation study maximum acceptable delay was set to 20 s.
Combining together all the Figure 3, Figure 4, Figure 5 and Figure 6, we can emphatically say that EETO-GA outperforms all its above-mentioned competitors as far as the matrices like energy and delay concerned.

5. Conclusions and Future Scopes

This article concentrates on two things energy efficient trajectory planning and proper scheduling of tasks generated by IoT devices so that amount of starvation can be reduced and the average time required for the execution of a task can be decreased. This makes the system efficient both from an energy and delay perspective although energy has been specifically highlighted because propulsion energy in UAVs as well as energy consumed by IoT devices have both been considered in this scheme. In order to predict the possibility of starvation have implemented a decision tree and the priority of starving task are increased so that delay is reduced in our system. However, the limitation of our proposed work is that it has been implemented in the simulator and therefore, in the future, should be implemented in real-life physical situations so that performance metrics can be computed and evaluated in a more reliable manner in alignment with the standard system performance indicator.
In this research work, we have implemented EETO-GA and the state of the art in a simulator. In the future, we would like to implement all these using real-life infrastructure. In that case, practical issues like rate, time of use, etc. will be considered. Obtaining good results during the current simulation work encourages us to proceed further toward procuring a real-life experimental setup, which is justified by performance enhancement produced by EETO-GA in the simulated environment.

Author Contributions

Conceptualization, A.B. and A.S.; Methodology, M.M.H.R.; Validation, M.A.-N.; Investigation, M.M.H.R., A.B. and A.S.; Data curation, A.B. and A.S.; Writing—original draft, A.B. and A.S.; Writing—review & editing, M.M.H.R. and M.A.-N.; Project administration, M.A.-N.; Funding acquisition, M.M.H.R. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported through the Deputyship for Research & Innovation, Ministry of Education in Saudi Arabia through the project number INST026. The authors extend their appreciation to the Deputyship for Research and Innovation, Ministry of Education in Saudi Arabia, for funding this research work (Project number INST026).

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable.

Acknowledgments

The authors of the papers acknowledge the editor and anonymous reviewers for giving valuable comments and suggestions on the initial submission. Of such comments and suggestions, the paper got this present shape.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Mohsan, S.A.H.; Khan, M.A.; Noor, F.; Ullah, I.; Alsharif, M.H. Towards the unmanned aerial vehicles (UAVs): A comprehensive review. Drones 2022, 6, 147. [Google Scholar] [CrossRef]
  2. Liu, Y.; Dai, H.N.; Wang, Q.; Shukla, M.K.; Imran, M. Unmanned aerial vehicle for internet of everything: Opportunities and challenges. Comput. Commun. 2020, 155, 66–83. [Google Scholar] [CrossRef] [Green Version]
  3. Nazib, R.A.; Moh, S. Routing protocols for unmanned aerial vehicle-aided vehicular ad hoc networks: A survey. IEEE Access 2020, 8, 77535–77560. [Google Scholar] [CrossRef]
  4. Jia, Z.; Qin, X.; Wang, Z.; Liu, B. Age-based path planning and data acquisition in UAV-assisted IoT networks. In ICC Workshops, Proceedings of the 2019 IEEE International Conference on Communications Workshops, Shanghai, China, 20–24 May 2019; IEEE: New York, NY, USA, 2019; pp. 1–6. [Google Scholar]
  5. Maddikunta, P.K.R.; Hakak, S.; Alazab, M.; Bhattacharya, S.; Gadekallu, T.R.; Khan, W.Z.; Pham, Q.V. Unmanned aerial vehicles in smart agriculture: Applications, requirements, and challenges. IEEE Sensors J. 2021, 21, 17608–17619. [Google Scholar] [CrossRef]
  6. Hildmann, H.; Kovacs, E. Using unmanned aerial vehicles (UAVs) as mobile sensing platforms (MSPs) for disaster response, civil security and public safety. Drones 2019, 3, 59. [Google Scholar] [CrossRef] [Green Version]
  7. Kumar, N.; Puthal, D.; Theocharides, T.; Mohanty, S.P. Unmanned aerial vehicles in consumer applications: New applications in current and future smart environments. IEEE Consum. Electron. Mag. 2019, 8, 66–67. [Google Scholar] [CrossRef]
  8. Chaturvedi, S.K.; Sekhar, R.; Banerjee, S.; Kamal, H. Comparative review study of military and civilian unmanned aerial vehicles (UAVs). INCAS Bull. 2019, 11, 183–198. [Google Scholar] [CrossRef]
  9. Li, X.; Savkin, A.V. Networked unmanned aerial vehicles for surveillance and monitoring: A survey. Future Internet 2021, 13, 174. [Google Scholar] [CrossRef]
  10. Banerjee, A.; Sufian, A.; Paul, K.K.; Gupta, S.K. EDTP: Energy and Delay Optimized Trajectory Planning for UAV-IoT Environment. Comput. Netw. 2022, 202, 108623. [Google Scholar] [CrossRef]
  11. Li, B.; Na, Z.; Lin, B. UAV Trajectory Planning from a Comprehensive Energy Efficiency Perspective in Harsh Environments. IEEE Netw. 2022, 36, 62–68. [Google Scholar] [CrossRef]
  12. Aggarwal, S.; Kumar, N. Path planning techniques for unmanned aerial vehicles: A review, solutions, and challenges. Comput. Commun. 2020, 149, 270–299. [Google Scholar] [CrossRef]
  13. Zhang, H.; Xin, B.; Dou, L.h.; Chen, J.; Hirota, K. A review of cooperative path planning of an unmanned aerial vehicle group. Front. Inf. Technol. Electron. Eng. 2020, 21, 1671–1694. [Google Scholar] [CrossRef]
  14. Cabreira, T.M.; Brisolara, L.B.; Paulo R, F.J. Survey on coverage path planning with unmanned aerial vehicles. Drones 2019, 3, 4. [Google Scholar] [CrossRef] [Green Version]
  15. Goh, C.Y.; Leow, C.Y.; Nordin, R. Energy Efficiency of Unmanned Aerial Vehicle with Reconfigurable Intelligent Surfaces: A Comparative Study. Drones 2023, 7, 98. [Google Scholar] [CrossRef]
  16. Li, X.; Li, J.; Liu, D. Energy-Efficient UAV Trajectory Design with Information Freshness Constraint via Deep Reinforcement Learning. Mob. Inf. Syst. 2021, 2021, 1430512. [Google Scholar] [CrossRef]
  17. Debnath, S.K.; Omar, R.; Latip, N.B.A. A review on energy efficient path planning algorithms for unmanned air vehicles. In Proceedings of the Computational Science and Technology: 5th ICCST 2018, Kota Kinabalu, Malaysia, 29–30 August 2018; pp. 523–532. [Google Scholar]
  18. Zeng, Y.; Xu, J.; Zhang, R. Energy minimization for wireless communication with rotary-wing UAV. IEEE Trans. Wirel. Commun. 2019, 18, 2329–2345. [Google Scholar] [CrossRef] [Green Version]
  19. Dong, F.; Li, L.; Lu, Z.; Pan, Q.; Zheng, W. Energy-efficiency for fixed-wing UAV-enabled data collection and forwarding. In ICC Workshops, Proceedings of the 2019 IEEE International Conference on Communications Workshops, Shanghai, China, 20–24 May 2019; IEEE: New York, NY, USA, 2019; pp. 1–6. [Google Scholar]
  20. Johnson, D.B. A note on Dijkstra’s shortest path algorithm. JACM 1973, 20, 385–388. [Google Scholar] [CrossRef]
  21. Forrest, S. Genetic algorithms. ACM Comput. Surv. CSUR 1996, 28, 77–80. [Google Scholar] [CrossRef]
  22. Mirjalili, S. Genetic algorithm. In Evolutionary Algorithms and Neural Networks; Springer: Berlin/Heidelberg, Germany, 2019; pp. 43–55. [Google Scholar]
  23. Ljung, G.M.; Box, G.E. The likelihood function of stationary autoregressive-moving average models. Biometrika 1979, 66, 265–270. [Google Scholar] [CrossRef]
  24. Quinlan, J.R. Generating production rules from decision trees. In Proceedings of the IJCAI, Milan, Italy, 23–28 August 1987; Volume 87, pp. 304–307. [Google Scholar]
  25. Ueyama, J.; Freitas, H.; Faiçal, B.S.; Geraldo Filho, P.; Fini, P.; Pessin, G.; Gomes, P.H.; Villas, L.A. Exploiting the use of unmanned aerial vehicles to provide resilience in wireless sensor networks. IEEE Commun. Mag. 2014, 52, 81–87. [Google Scholar] [CrossRef]
  26. Arafat, M.Y.; Moh, S. A survey on cluster-based routing protocols for unmanned aerial vehicle networks. IEEE Access 2018, 7, 498–516. [Google Scholar] [CrossRef]
  27. Huang, S.; Teo, R.S.H.; Tan, K.K. Collision avoidance of multi unmanned aerial vehicles: A review. Annu. Rev. Control. 2019, 48, 147–164. [Google Scholar] [CrossRef]
  28. Yasin, J.N.; Mohamed, S.A.; Haghbayan, M.H.; Heikkonen, J.; Tenhunen, H.; Plosila, J. Unmanned aerial vehicles (uavs): Collision avoidance systems and approaches. IEEE Access 2020, 8, 105139–105155. [Google Scholar] [CrossRef]
  29. Wu, J.; Zou, L.; Zhao, L.; Al-Dubai, A.; Mackenzie, L.; Min, G. A multi-UAV clustering strategy for reducing insecure communication range. Comput. Netw. 2019, 158, 132–142. [Google Scholar] [CrossRef]
  30. Sun, Y.; Uysal-Biyikoglu, E.; Yates, R.D.; Koksal, C.E.; Shroff, N.B. Update or Wait: How to Keep Your Data Fresh. IEEE Trans. Inf. Theory 2017, 63, 7492–7508. [Google Scholar] [CrossRef]
  31. Talak, R.; Karaman, S.; Modiano, E. Optimizing information freshness in wireless networks under general interference constraints. In Proceedings of the Eighteenth ACM International Symposium on Mobile Ad Hoc Networking and Computing, Los Angeles, CA, USA, 26–29 June 2018; pp. 61–70. [Google Scholar]
  32. Zhang, L.; Celik, A.; Dang, S.; Shihada, B. Energy-efficient trajectory optimization for UAV-assisted IoT networks. IEEE Trans. Mob. Comput. 2021, 21, 4323–4337. [Google Scholar] [CrossRef]
  33. Qadir, Z.; Zafar, M.H.; Moosavi, S.K.R.; Le, K.N.; Mahmud, M.P. Autonomous UAV Path-Planning Optimization Using Metaheuristic Approach for Predisaster Assessment. IEEE Internet Things J. 2021, 9, 12505–12514. [Google Scholar] [CrossRef]
  34. Cui, J.; Ding, Z.; Deng, Y.; Nallanathan, A.; Hanzo, L. Adaptive UAV-trajectory optimization under quality of service constraints: A model-free solution. IEEE Access 2020, 8, 112253–112265. [Google Scholar] [CrossRef]
  35. Li, Y.; Zhang, H.; Long, K.; Jiang, C.; Guizani, M. Joint resource allocation and trajectory optimization with QoS in UAV-based NOMA wireless networks. IEEE Trans. Wirel. Commun. 2021, 20, 6343–6355. [Google Scholar] [CrossRef]
Figure 1. Model Architecture of an UAV–IoT Collaborative System.
Figure 1. Model Architecture of an UAV–IoT Collaborative System.
Applsci 13 02535 g001
Figure 2. Flowchart of the GATE.
Figure 2. Flowchart of the GATE.
Applsci 13 02535 g002
Figure 3. UAV -Energy-Consumed (UAV-E) in Proposed EETO-GA and Other State-of-the-art.
Figure 3. UAV -Energy-Consumed (UAV-E) in Proposed EETO-GA and Other State-of-the-art.
Applsci 13 02535 g003
Figure 4. IoT Device Energy Consumed (IoTDEC) in EETO-GA and Other State-of-the-art.
Figure 4. IoT Device Energy Consumed (IoTDEC) in EETO-GA and Other State-of-the-art.
Applsci 13 02535 g004
Figure 5. Percentage of successfully completed tasks (PTSK) in proposed EETO-GA and other state-of-the-art.
Figure 5. Percentage of successfully completed tasks (PTSK) in proposed EETO-GA and other state-of-the-art.
Applsci 13 02535 g005
Figure 6. Average delay in execution of task (ADET) in proposed EETO-GA and other state-of-the-art.
Figure 6. Average delay in execution of task (ADET) in proposed EETO-GA and other state-of-the-art.
Applsci 13 02535 g006
Table 1. Symbols, Abbreviation, and their Descriptions.
Table 1. Symbols, Abbreviation, and their Descriptions.
Symbol/AbbreviationBrief Description
X _ c e n X co-ordinate centroid of the cluster C.
Y _ c e n Y co-ordinate centroid of the cluster.
n u m ( c ) Number of devices in cluster C.
d e v ( i ) ith device of IoT devices.
h i Denotes x latitude point of dev(i) location.
k i Denotes y longitude point of dev(i) location.
c l s _ c l g ( i ) This function denotes Eligibility of the ith device dev(i) as head of its cluster.
( R E i ) Residual energy of the ith device.
τ ( j ) Denotes new task.
P r ( τ ( j ) , d e v ( i ) ) Possible priority of a new task τ ( j ) submitted by the device dev(i) of cluster C.
I G Information Gain.
C o m p _ p r i o r i t y Computation priority.
E n t r o p y ( P a r e n t ) The entropy of the parent node.
E n t r o p y ( c h i l d r e n ) The average of entropies of all its children.
p i Probability of the random selection of an element in class i.
M a x _ p r The maximum possible priority in the the system.
M i n _ p r ( f ) The minimum priority of a task present in the task queue at current time t.
m u l t i _ r e g r e s s Denotes multiple regression function.
f This function denotes increase the priority value.
t m _ g e n ( j ) Timestamp of its generation based on current task τ ( j ) .
t m _ e x e c ( j ) Timestamp of completing execution of the task τ ( j ) .
l e n _ t s k ( j ) Length of the task where priority of the current task τ ( j ) .
S T ( i , t ) A set of task submission sessions of dev(i) till current time t .
P r t y Currently computed priority.
P T S K Percentage of task that could be completed.
I o T E Average energy saving in IoT devices.
U A V E UAV energy saved.
A D E T Average delay in execution of the task.
U A V Unmanned aerial vehicles.
E E T O G A Energy-Efficient Trajectory Optimization using Genetic Algorithm.
C E C Comprehensive energy consumption.
ST ~ starve(i, t‘) The subset of ST(i, t‘), which consists of only the nonstarving tasks.
P E M The minimization of propulsion energy.
T D M A Time Division Multiple Access.
P r e d n e x t Predict the next suitable value.
t m _ g e n _ n e x t ( i , t ) Generation of the next task of device I at current time t .
c l s ( u ) The CH closest to the UAV.
l a t ( u ) Denotes the geographical position of the CHs in terms of latitude.
l o n g ( u ) Denotes the geographical position of the CHs in terms of longitude.
G A T E Genetic algorithm applied for task execution.
Table 2. Parameters of Decision Tree and Its Values.
Table 2. Parameters of Decision Tree and Its Values.
Name of the ParameterValue
max_depth
(maximum number of levels permitted)
8
(Selection based on all attributes is permitted)
min_samples_leap
(minimum number if samples
stable in a leap node)
1
(least number of sample is 1)
min_sample_split
(minimum number of samples
a node must have before splitting)
2
( this is the minimum requirement
in line with least number
of samples per leaf is 1)
Table 3. Names and Values of Various Simulation Parameters.
Table 3. Names and Values of Various Simulation Parameters.
Name of the ParameterValue
Coverage Area300 × 300 m2
Number of IoT devices100, 300, 500, 700, 900
Number of UAVs1, 3, 5, 7, 9
Min no. of devices in a cluster3
Max no. of devices in a cluster20
Hovering altitude of UAV6 m
No. of CPU cycles/s in an UAV0.5G cycles/s
Channel gain−20 dB
UAV speed20 m/s
Noise power−50 dBm
Transmission bandwidth150 khz
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Rahman, M.M.H.; Al-Naeem, M.; Banerjee, A.; Sufian, A. EETO-GA: Energy Efficient Trajectory Optimization of UAV-IoT Collaborative System Using Genetic Algorithm. Appl. Sci. 2023, 13, 2535. https://doi.org/10.3390/app13042535

AMA Style

Rahman MMH, Al-Naeem M, Banerjee A, Sufian A. EETO-GA: Energy Efficient Trajectory Optimization of UAV-IoT Collaborative System Using Genetic Algorithm. Applied Sciences. 2023; 13(4):2535. https://doi.org/10.3390/app13042535

Chicago/Turabian Style

Rahman, M M Hafizur, Mohammed Al-Naeem, Anuradha Banerjee, and Abu Sufian. 2023. "EETO-GA: Energy Efficient Trajectory Optimization of UAV-IoT Collaborative System Using Genetic Algorithm" Applied Sciences 13, no. 4: 2535. https://doi.org/10.3390/app13042535

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop