A dynamic clustering mechanism with load­balancing for Flying Ad Hoc NETworks

Flying Ad Hoc NETworks (FANETs) are expected to have a signiﬁcant impact in several use-cases, from smart agriculture and cities, to mission critical scenarios. The recent surge in the use of FANETs is motivated by their adaptable and ﬂexible behaviour in different scenarios (e.g. disaster-hit locations) allowing the usage of services that require information from remote locations, such as for assessment of damages, checking for survivors, or providing onsite views to assist rescue teams. While FANETs have been developed to provide such critical services, disseminating data with proper performance faces challenges due to inherent properties of FANETs, namely frequent wireless disconnections, intermittent available nodes, and dynamic topologies, mostly when facing an increasing number of deployed unmanned aerial vehicles. Aiming to tackle these challenges, we propose a new Dynamic Clustering Mechanism with Load-Balancing able to support efﬁcient dissemination of data packets in FANETs while ensuring good reliability and scalability factors. The proposed solution is based on the combination of a new meta-heuristic optimization scheme, known as Political Optimizer, used to perform clustering while addressing limitations caused by topology changes, and a new Shannon entropy function implemented to address cluster fault tolerant and trafﬁc overloads. Simulation results show that by combining our proposed model with standard position-based routing protocols, a higher number of end-to-end transmissions are ensured, while supporting an average packet delivery ratio of 97 % , an average end-to-end delay of 0.225 seconds, and an average power consumption 37 % lower than other state-of-the-art clustering protocols.


I. INTRODUCTION
Flying Ad Hoc NETworks (FANETs) have emerged as a promising technology derived from Mobile Ad Hoc NETworks (MANETs) with a large set of applications [1].However, it is well known that the number of Unmanned Aerial Vehicles (UAV) encompassed in a FANET, as well as the way they are organized, have a direct impact on the usefulness of the FANET to deliver data with high probability, low latency, and low power consumption over large areas.
Moreover, independently of the number of UAVs, the operation of FANETs come with significant challenges due to the dynamic topology, three-dimensional movement of UAVs, and intermittent wireless links [2].Previous studies have shown that these challenges lead to network instability and high energy and communication overheads [3].Recent proposals aimed to tackle some of these challenges in isolation, such as trying to reduce energy consumption by predicting the trajectory of UAVs, or implementing bio-inspired routing protocols to improve the efficiency of data transmission [4].Yet, such approaches fail to address the overall challenge of ensuring efficient data transmission in large scale FANETs, while ensuring low levels of delay, packet loss and power consumption.
In such scenarios a cluster-based approach may allow the VOLUME 4, 2016 creation of large scale FANETs while reducing power and communication overheads, if such approach is able to adapt to the mobility patterns of UAVs and to properly balance traffic among suitable Cluster Heads (CH).Our claim in this paper is that such a clustering based approach may ensure a good end-to-end performance when associated with standard routing protocols [5].
Some cluster-based solutions were proposed where CHs are selected to ensure an efficient management of clusters [6].However, when the selection of CHs is done using Euclidean distance, research findings show poor performance mostly due to the noise associated with such measurements, thereby reducing the overall routing efficiency.In what concerns routing algorithms, several distribution-based optimization techniques have been deployed aiming to achieve good performance, e.g., routing based on movement awareness [7].However, the increased computation needs of such approaches introduced additional overheads in latency and networking costs [8].
Keeping in mind the drawbacks of the existing methods, we argue in this paper that the most suitable method to route packets with high performance and low cost in FANETs is based on a novel clustering and load balancing mechanisms between selected cluster nodes.Following that, we propose a new Dynamic Clustering Mechanism with Load-Balancing able to support large scale fault-tolerant FANETs by: (i) dynamically grouping nodes into clusters taking into account their mobility patterns, and (ii) balancing traffic between CHs taking into account buffer occupancy.The aim being to support standard routing protocols, within and between clusters, to achieve a high packet delivery probability, low end-to-end delay, and low power consumption via a clustering mechanism that can support large sums of successful transmissions between a large number of UAVs.
Therefore, the contributions of this article can be described as follows: • A new mobility aware dynamic clustering mechanism based on a socio-inspired meta-heuristic optimization algorithm aiming to support a stable and reliable operation of large scale FANETs, namely in what concerns data packet dissemination.• An entropy-based optimal load-balancing mechanism to provide fault-tolerant data dissemination inside and between clusters.• Through extensive simulations, we show that the proposed mechanisms can ensure a good end-to-end performance when simple position-based routing protocols are used within and between clusters.The used research methodology aimed to investigate the two major contributions (clustering and load balancing) in an intertwined way, encompassing the analysis of requirements, designing of a proper combined solution, implementation of all needed components on a simulator (NS-3), and analysis of experimental results.
This article is organized as follows: Section II provides a brief analysis of prior approaches aiming to support an efficient operation of FANETs.In section III, we provide a description of the optimization algorithms that are used to devise the proposed solution.Section IV provides a description of the different components of the proposed Dynamic Clustering Mechanism with Load-Balancing, namely the mobility aware dynamic clustering, and the entropy-based load balancing.Section IV also provides a brief description of the standard routing protocols that are used in this study to ensure end-to-end connectivity within and between clusters.In section V we describe the experimental setup and conducts a performance evaluation of the proposed mechanism.Finally, section VI summarizes our findings and provide pointers towards future research directions.

II. RELATED WORK
Routing of data packets in FANETs is confronted with several challenges mainly due to the potential large network diameter, node dynamics, wireless intermittent links, and topology changes.As mentioned before, in this paper we argue that the best method to increase networking performance of FANETs, while reducing power cost, is by integrating suitable routing strategies with a clustering approach that is able to adjust considering node mobility and buffer occupancy on CHs.
Mindful of the significant envisioned role of UAV-FANET in future generation mobile networks and beyond, such as seamless and flexible provision of emergency communication coverage and information services [9], we find in the literature, barely few approaches that attempted to efficiently integrate clustering and optimization techniques to improve routing efficiency in FANETs.In one of such approaches, L. Ye et al. [3] propose a mechanism able to reduce endto-end delay and increased throughput, but at the expense of high communication overheads.Most of similar solutions fail to achieve high performance with low costs due to the clustering mechanisms that are not aware of the network and traffic dynamics.Some cluster-based routing solutions have been proposed aiming to address the dynamics found in FANETs.For example, Ali Khan et al. offered a bio-inspired clustering scheme aiming to provide efficient energy consumption and stable routing based on swarm optimization and a krill herd scheme to split the network nodes into several clusters [10].In this proposal, the choice of CHs is done based on the residual energy levels of nodes.The dynamics of the network is considered by providing coherent alignment of cluster nodes based on the social behavior of insects, such as change and movement.Nevertheless, results show that the cluster lifespan is short-changed due to the constant topology changes, which affect the overall performance.You et al. [11] proposed a UAV clustering scheme that optimizes both coverage areas and mobile edge computing for FANET.The scheme provides coverage extension, prompt computation, and low transmission delay but failed to account on how the clusters and overall network reacts to the frequent topology changes and node mobility.
While trying to cope with network scaling, a mobility prediction clustering algorithm for managing network stability is proposed [12].This algorithm explores the dictionary trie structure prediction scheme in sync with the link expiration time mobility model to manage the network cluster stability seamlessly.However, cluster formation is short lived causing more overheads mainly due to the frequent node dynamics and topology changes.S. Bhandari et al. [13] also proposed a mobility and location aware stable clustering scheme that estimate transmission efficiency by considering coverage probability and the size of clusters to cope with network scaling.In this case, the number of CHs is determined using a K-mean clustering formation scheme, and the maintenance of clusters is performed by considering the relative speed and distance of UAVs.But, this approach leads to buffer overflows and high overheads on energy and bandwidth spending, which may render the protocol unsuited for timecritical application scenarios that require sustained tasks' operations.To react to network topological changes, a selforganizing based clustering algorithm have been proposed for MANET aiming to aggregate node mobility based on zones in order to enhance network expansion and resilience [14].The formation and maintenance of clusters is motivated by bird flocking behavior.Cluster heads are elected and oversees overall performances of cluster members.Communication between cluster members of different clusters is via a gateway node, which is responsible for facilitating communication between clusters.This study shows that the usage of self-organised methods aiming to reduce energy expenses in order to prolong network lifespan come with an increase of communication overheads, a drawback that we aim to tackle with the proposed Dynamic Clustering Mechanism with Load-Balancing.
Having as an objective to reduce energy spending, an energy-aware clustering mechanism was proposed to address limitations of high energy consumption and unreliable routing in FANETs [15].In this approach, transmissions are adjusted to ensure optimal end-to-end packet transmissions resulting in reduced energy overheads.For this, a K-mean density clustering scheme is used to assist in selecting optimal CHs, thus increasing the lifespan of the CH while reducing operational overheads.However, the node mobility and link instability attributes of FANETs are not considered during the cluster formation process, hence adversely affecting the reliability of the proposed solution.A loadbalancing and energy efficient clustering scheme which is based on swarm intelligence is introduced [16] and meant to provide communication needs during emergency communication.The scheme relies on metrics such as UAV residual energy, geo-location and distances of inter-cluster and intra-clusters to decide on the cluster head selection.Limitations of energy expending, traffic loads, coverage and network lifespan are tackled but the scheme accrues excess communication overheads.
In recent times, the utilization of meta-heuristic optimization inspired by nature, social and biological behaviors, have variously been implemented for energy efficient clustering in wireless sensor networks (WSN).For instance, Mann et al. [17] proposed an improved meta-heuristic-based energyefficient clustering scheme aiming to enhance the resolution exploration equation on its exploitation abilities together with an increase in its global convergence rates.The scheme thus retains a good optimal load balance between intra-cluster member as well as inter-cluster heads for sustained communication while utilizing less memory and energy overheads and high throughput.Inhere, cluster head is responsible for the management of cluster members as well as serving as a gateway to enable communication between a cluster member and a different cluster group member in the network.Similar meta-heuristic clustering approaches implemented [18] and [19] also aim at resolving load balancing concerns by creating effective inter-cluster routing to extend the network lifespan, improve throughput as well as minimize the traffic loads on gateways.Nonetheless, these techniques have mostly been utilized in WSN.
Based on the performed literature analysis, it is observed that existing clustering mechanisms partially provided solutions to the challenges faced by large FANETs, which are mainly caused by unreliable link connections, network complexity, scaling and instability.We, therefore, propose the investigation of a new dynamic clustering mechanism with load balancing to mitigate these constraints in large FANETs.The proposed clustering mechanism is able to work with any standard routing protocol.
Over the past decade, there has been several efforts towards proposing efficient routing solutions to mitigate the challenges faced by FANETs.For instance, opportunisticbased routing approaches [20] implement store-carry-andforwarding schemes aiming to exploit nodes mobility to overcome the challenges imposed by intermittent wireless links in delay-tolerant networks as is the case of FANETS.However, since UAVs may follow a mobility pattern that may not be correlated with the social encounters assumed by opportunistic routing solutions, the efficiency of such routing protocols may be inconsistent [21].Other approaches try to reduce the dependencies from mobility models by implementing a movement-aware routing approach [7], but with a surge on computation and latency overheads.
Several other approaches look at the routing challenge in FANETs as a distributed optimization problem by combining power control, delay and rate allocation [22].However, such solutions do not consider the three-dimension factor of height and altitude, thus contributing to poor impacts on the overall efficiency of the schemes.Other proposals try to use fuzzy logic or learning processes to optimize routing in FANETs.Fuzzy logic schemes have been proposed to integrate the resource allocation and routing processes [23].Such schemes show good fault tolerance, especially when number of nodes are increased, but the deployment of fuzzy logic for fitness computation increased the associated latency as there are many rules to be checked, which impacts on the routing performance.Some learning based multi-purpose optimization solutions aim to select best neighbors by considering several factors such as geographic location, energy, mobility, and queuing delay [24].However, these routing schemes do not consider the altitude and location of nodes, hence, impacting on the efficiency of the protocol.
Independently of the overall performance of routing optimization solutions, their complexity and the time needed to take decisions, may not be suitable for FANETs, which are constraints in terms of energy and communication opportunities.Hence, the hypothesis that is investigated in this paper is that an efficient dynamic clustering mechanism with load balancing allows the usage of standard routing protocols within and between clusters.

III. BACKGROUND
Our proposed mobility aware approach is based on a metaheuristic optimization technique that has been very popular to solve global optimization problems.Generally speaking, meta-heuristic optimization procedures may be split into four groups: swarm-based, evolution-based, social-based, and physics-based algorithms [25].
Recently, Askari et al. [26] proposed a new meta-heuristic method called Political Optimizer (PO) that was inspired by the multi-staged process of politics and described a model to solve global optimization problems.The PO algorithm is the mathematical mapping of all the major stages of politics such as constituency allocation, party switching, election campaign, inter-party election, and parliamentary affairs.
It has been shown that the PO algorithm can solve classical engineering design problems, such as welded beam and speed reducer design [26].Furthermore, the algorithm has an outstanding convergence speed performance, and a good exploration proficiency in early iterations, which makes it suitable for the coordination of clustered networks.
The experimental evaluations of the PO algorithm [26] demonstrated that it outperformed the particle swarm optimization (PSO) [27] and Grey Wolf Optimizer (GWO) [28] algorithms in what concerns agents exploitative, and exploration and convergence capabilities.The PO algorithm is known to stimulate agents search discovery and utilization by offering the agents with multiple options to update their search positions by splitting the population into parties and constituencies, where each member has the privilege to hold double roles.In this sense, search agents can improve their positions while interacting with the two best constituency and party candidates.Secondly, most algorithms utilize global best position to update the outcome of search agents whereas it is proven that the PO algorithm employs two best solutions to explore for any possible update of the position of agents.Further, a distinctive property of the PO algorithm is that the best positions of the individual search agents are always saved and referenced for future position updating, allowing the utilization of the most recent positions of each agent to uncover best search space regions.Additionally, the experimental results also prove that PO has strong convergence to its global optima, as it retains its excellent routines when function shifting is applied in high dimensional functions.In Table 1, we present a comparison of position updating mechanisms and metric appraisal, which illustrate the advantages of the PO algorithm over other meta-heuristic methods.
Therefore, our dynamic clustering mechanism is based on the PO algorithm.The PO process assumes that politicians always seek to optimize two different approaches: (i) each candidate aims to optimize its goodwill to win the election; (ii) each party aims to garner enough parliamentary seats.The algorithm consists of five stages: party formation and constituency allocation, election campaign, party switching, inter-party election, and parliamentary affairs.Such five phases are further divided in the following eight steps: In a FANET scenario, the representatives of each constituency/cluster, i.e., cluster heads -CHs and substitute cluster head -SCHs, will divide the traffic load of their cluster.In the proposed solution, load balancing between CHs and SCHs is achieved by using a Shannon entropy algorithm.
The Shannon entropy is a widely known information theory concept used for providing insights into inferences of arbitrariness particularly in complex networks, physics, statistics, and dynamic systems [29].Entropy is projected as a measure of diversity, disorder and uncertainty.Its probability distribution can be realized as a measure of uncertainty or randomness.For instance, to decide on differences or variations in the population of a given entity, entropy defines and incorporate diversity information, which allows for a study to be conducted to filter out the differences in the multi-paired elements, on which foundation a trade off on collaboration can be reached.

IV. THE PROPOSED SOLUTION
This section details the two building blocks used to defined the Dynamic Clustering Mechanism with Load Balancing, namely the mobility aware dynamic clustering mechanism and the entropy-based load balancing mechanism.Towards the end of this section, we provide a brief description of the two standard routing algorithms that are considered in this study to drive the intra-and inter-cluster communication.
The overall goal is to keep the FANET network structured in a way that it allows an efficient routing of data packets between any pair of UAVs, or between UAVs and a base station in the ground, while improving performance parameters such as delivery probability, delay as well as power consumption.It is assumed that each UAV knows its position by means of a Global Positioning System (GPS), and is able of communicating by means of an omni-directional radio frequency system.
Figure 1, illustrates the architecture of our proposed solution, in which UAVs deployed in a certain geographical area are grouped into clusters.Each cluster has two representatives that are elected by means of a PO algorithm.Such representatives, CHs and SCHs share the traffic load in their cluster(s) by means of a Shannon entropy function, while serving as cluster gateways.The selected set of gateways (i.e., CHs) are able to communicate between them and with a set of base station(s) deployed in the ground and with the UAVs in their own clusters by means of an inter-and intracluster routing protocols, respectively.

A. MOBILITY AWARE DYNAMIC CLUSTERING
The proposed clustering mechanism aims to divide the network into separate groups of UAVs.In the current implementation, this algorithm is executed in a ground station based on information collected from each UAV, namely position (U p ), speed (U s ), moving direction (U d ), height variation (U h ), and link quality (U L ).Each deployed UAV is configured with the information about the geo-position of the ground station.Hence, throughout the lifespan of the network, the UAVs utilize a geo-position routing protocol to periodically update the ground station with information on their current position, speed, direction, height variation, and link quality.The usage of the proposed routing mechanism allows us to minimize used bandwidth, in comparison to using a simpler broadcast communication method.After providing this information, every individual UAV participates in the election process and a fitness value is computed for each UAV based on the number of votes that it gets by running the PO algorithm.The election process results in the election of a CH and an SCH per cluster is as shown in Figure 2, whilst in Table 2, we provide an index of the set of most used variables in this section.The Mobility Aware Dynamic Clustering mechanism periodically starts by collecting updated information from each UAV, as previously stated.That information is used to associate the population of UAVs to n different parties of ρ based on the similarities between them, which can be represented as Eq (1), Each party ρ i comprise of n members (i.e., UAVs) as shown in Eq. ( 2), Each j th party member denoted as p j i is considered as a potential solution consisting of a d-dimensional vector, where d is the number of input variables of the problem to be solved as expressed in Eq. ( 3), After this, the position information of each UAV is used to collocate the different parties in a set of 3D dimensional spaces, which correspond to n constituencies in the PO process, as expressed in Eq (4), Every party member plays dual roles, being a member and a potential candidate for an election.Thus, if the j th member of each party in the j th constituency (c j ) participate in an election, then the winner is expressed as, After the election, the fittest member of a party is selected as the party leader, as is expressed in Eq. (6), where p * i designates the leader of the i th party and f (p j i ) calculates the fitness of p j i expressed as, The collection of the group of all party leaders denoted by ρ * is as presented in Eq. (7), The winners from all constituencies are known as parliamentarians.The group of all parliamentarians of the different constituencies denoted as c * is expressed as, At this stage, denoted as election campaign phase, the party and constituency leaders seek to influence their performance in the next election by using Eq. ( 9) and Eq. ( 10), which are mathematically modeled based on a position updating strategy to give insights on the previously held election from which candidates can harness to further improve the positions of party and constituency leaders.These equations are interchangeably used by assessing current and previous fitness values of a candidate.For instance, if the current fitness of the candidate is f (p j i (t)) represents an improvement and its past fitness was f (p j i (t − 1)) represents a decline, first the position of the candidate is updated with reference to the party leader p * i and next with reference to the constituency winner c * j .Please note that Eq. ( 9) and Eq. ( 10) are used to compute the gain and lose of fitness, respectively.In these equations, r is a random variable number within the range of [0,1], while s * holds two values, namely the value of the k th dimension of the party leader p * i,k and that of c * j,k , which represents the constituency winner.
Therefore, to begin the process of updating positions on p * i and c * j , the current fitness of p j i is evaluated with respect to its previous fitness based on the following condition: ).If last condition holds, Eq. ( 9) is initially used to update the position with respect to the party leader p * i of the i th party, in which case we substitute p j i,k into s * , inputs for k and r effected, and then substitute p j i,k (t) into p j i,k to compute the position update on party leader.After that, Eq. ( 9) is used to update position with respect to winner of the j th constituency c * j expressed based on Eq. ( 13) where the winner of the j th constituency is the representative of the i th party.Hence, c i j,k is substituted into s * and values of r and k respectively effected, and the substitution of p j i,k into p j i,k (t + 1) accordingly made to compute position update on constituency winner.However, if the above mentioned condition of the evaluation with respect to the current and previous fitness values is false, Eq. ( 10) is used for the computation, following a similar set of considerations.
To form clusters for the election of stable and reliable CH and SCHs a fitness evaluation value is computed on the metrics.For dynamic scenarios such as UAV-based FANET, the fitness value is calculated based on the characteristic input parameters of position, speed, moving direction, height variation and link quality as shown in Eq. ( 11), The next step is party switching also known as balancing, exploring and exploitation.Here, an adaptive parameter γ is used, which is linearly decreasing from one to zero during the entire iterative process.This parameter is termed as the party switching rate, allowing every UAV selected with probability γ to exchange with the worst member of a randomly selected party, based on Eq. (12), In the election phase, the fitness of all constituency candidates participating in an election is evaluated.For instance, the fittest of all candidates participating in the j th constituency is evaluated, and the fitness value of the winner is expressed as, The party leader and constituency winner are respectively expressed based on Eq. ( 6) and Eq. ( 13).
Based on the winners of each of the constituencies, i.e., the representatives called members of parliament in the PO algorithm, clusters are formed and the first two winners in each constituency are selected as CH and SCH for each cluster.This election process is done based on several properties of each UAV, such as energy level (N e ), buffer state (N b ), distance towards a base station (N d ), distance towards representatives of other constituencies (N c ), and link quality (N l ), as expressed in Eq. ( 14).The distance from an UAV towards a base station can be obtained by using a probe mechanism, such as pinging the IP address of known base station(s), After the election, the selected SCHs are used to balance traffic load in their clusters in cooperation with the local CHs, using an entropy-based mechanism described in the next section.At the end of the election process, the base station broadcasts the election result to all network members.Algorithm 1, presents the pseudo-code for the mobilityaware clustering mechanism.

B. ENTROPY-BASED STABLE LOAD BALANCING
Cluster members (CM) communicate with nodes outside the cluster through the CH.Each CH aggregates packets from member nodes and routes them to the CH of the cluster where the destination node is located.In situations in which  1) to Eq. ( 5) for every U AV do Compute U p , U s , U d , U h , U L , based on Eq. ( 11) Compute fitness of each member p j i based on Eq.( 6) Calculate the set of party leaders ρ * based on Eq. ( 7) Calculate the set of constituency winners c * based on Eq. ( 13) and ( 8) Party Switching (ρ, γ); Evaluate worse fitness values for each member based on Eq. ( 12) Calculate the set of constituency representatives c * based on Eq. ( 13) and (8) Parliamentary Affairs (c * , ρ); Compute N e , N b , N d , N c and N l , based on Eq. ( 14) Select CH Select SCH // substitute cluster head the cluster has a large number of nodes or when the existing nodes generate a large amount of traffic, there is the possibility of overloading the buffer of the CH, resulting in increased latency and unwanted re-transmission of packets.
In order to avoid such situation, a load balancing mechanism is implemented to split traffic between the CH and the SCH, as illustrated in Figure 3.The proposed load balancing mechanism is based on the Shannon entropy function.Shannon entropy gives the concept of information loss that is convex-linear and continuous.The function of Shannon entropy is expressed in Eq. (15), where S represents a measure of choice, c represents a constant random variable that is a

S(l)
Eq. ( 16) represents the improved form of the Shannon entropy to a random variable, where B represents the buffer state of the current CH.The Shannon entropy function generates the threshold value based on the current load and buffer state of the CH.Suppose the load and buffer exceed the threshold value.In this case, the extra load is shared with the SCH.This decision is broadcast in the cluster, allowing sources to diverted traffic and start sending packets to SCH, resulting in stable load balancing and reducing the overhead caused due to the buffer overload.

S(l, b)
The overall pseudo-code process to balance traffic load of a cluster between the CH and the SCH is as shown in Algorithm 2.

Algorithm 2: Load Balancing
Input: No. of cluster heads Compute threshold based on Eq. ( 16) if (L&&B > Threshold) then Load is shared with SCH

C. ROUTING
As previously stated, this work investigates the hypothesis that the proposed Dynamic Clustering Mechanism with Load Balancing can be used with standard routing protocols within and between clusters.Here, we provide a brief description on how to route packets within and between clusters following a position-based routing approach.The basic assumption is that UAVs know their own geographical position and periodically exchange information with their neighbours.Elected CHs and SCHs identify themselves as such in these periodic broadcasts.In our study, it is also assumed that nodes have updated information about the geographic position of destination nodes.Please note that this is a basic assumption of position based routing protocols.Nonetheless, being out of scope of this paper, several proposals define a system able of keeping geo-position information up to date [30].
Here, intra-cluster routing is facilitated by a simple rankbased algorithm used to allow nodes to broadcast data packets towards a destination node.Such data packets include the position of the destination node, CH or SCH.After receiving data packets, nodes calculate their ranking based on the quality of their wireless link L q , the length of their packet queue Q l , their speed N s , location N l , direction N d , the minimum of their distance towards the CH/SCH D c , and the destination D d .The computed rank is used to configure a random time interval after which the node transmit the packet, if no other transmission is overheard.This process helps to reduce bandwidth usage.Higher reliability is easily achieved by allowing a certain number of nodes to transmit packets even after overhearing a configured number of transmissions.
If the destination is in another cluster (i.e., the destination is faraway than the closest CH), packets are sent to the CH or SCH.At this point a position-based routing protocol is used to forward packets between CHs, until they reach the CH that is closest from the destination node.In this paper, we consider a Geographic Perimeter Stateless Routing (GPSR) based protocol, since it is widely adopted for vehicular networks [31].In the operation of this protocol, every node maintains the knowledge of its one hop neighbors.Each node (i.e., CHs and SCHs) participating in the routing process selects as next-hop hop, the CH or SCH that is nearest to the destination.The locations of neighbors are obtained by exchanging periodic messages among nodes, as mentioned before.
When packets reach the CH or SCH that is closest to the destination, as a results of the inter-cluster routing process, they are routed inside the destination cluster towards the position of the destination based on the ranking algorithm.

V. PERFORMANCE EVALUATION
In this section, an evaluation of the proposed Dynamic Clustering Mechanism with Load-Balancing (DCM with Load-Balancing) is performed, aiming to demonstrate its effectiveness in terms of increasing the percentage of covered UAVs as well as the number of end-to-end transmissions over a set of created clusters.While the former aims to express the efficiency of the proposed PO based clustering method, the latter aims to show the efficiency of balancing load between the CH and SCH based on the entropy based mechanism.The performance of the proposed mechanism is compared with the Stable Clustering Scheme (SCS) [13].The SCS algorithm is a location-based K-means clustering mechanism integrated with the mobility and relative locations of UAVs to enhance performance.First, the location and mobility of UAVs are used to optimize deployment for maximum coverage performance by ensuring no UAV fields are overlapped with another while making sure that each UAV is attached to an identified CH.Cluster creation and maintenance is performed using K-means clustering approach followed by election of CHs.The overall goal is to strengthen the network performance and reliability.
Even if a clustering mechanism is able to cover a large percentage of deployed UAVs, the characteristic of the created clusters (e.g., diameter, density, and the average distance between UAVs) has a significant impact on data transmission in the FANET.Hence, besides evaluating the performance of the proposed DCM with Load-Balancing mechanism, our aim is also to assess the usefulness of the created clusters, i.e., the elected CHs and SCHs, in supporting a successful routing in terms of packet delivery probability, end-to-end delay and power consumption.
To analyze how efficient clusters are created and maintained by the proposed DCM with Load-Balancing mechanism in support of the process of routing packets end-toend, we compare the performance of an intra-and intercluster position-based routing scheme (c.f.Section IV-C) with state-of-the-art routing solutions, namely the Energy-Efficient Opportunistic Routing Protocol (EEOR) [32] and the Smart IoT Control-Based Nature Inspired Energy Efficient Routing Protocol NIEEOR [33].Whereas, the EEOR algorithm considers the prediction of UAV location based on node trajectory metrics before performing routing aiming to reduce packets' re-transmissions and energy spending.The NIEEOR algorithm introduced an energy stabilizing limit with the goal to select only nodes with higher energy levels than the identified threshold as relay nodes aiming to improve network quality of service.
The performance evaluation is done based on simulations carried out in the NS-3 simulator to analyse various performance metrics.Communications were performed using the 2.4 GHz frequency range of the IEEE 802.11n standard [34] under the Rayleigh channel model, used to calculate the channel fading characteristics.The simulation area is set to 1000m × 1000m × 880m with one ground base station for bi-direction communication, while UAVs are placed in 3D spaces.Their mobility is based on random way point (RWP) movement model.To get the most realistic setting for nodes progressive speed variations and direction, the JAVA code for RWP model was imported to enable the setting of moving parameters on the UAVs [32].The simulation area was chosen to reflect the performed scenario of an increasing number of UAVs between 10 and 100.Our assumption is that the benefits of clustering are not so evident for smaller networks.The packet size is set to 600 bytes with an overall simulation time of 100 seconds.We provide a summary of the system configuration, as well as the parameters used in the simulations in Table 3 and Table 4, respectively.

A. PERCENTAGE OF COVERED UAVS
The percentage of covered UAVs is an important metric for measuring the efficiency of a clustering process, since it is influenced by the parameters considered for the formation of clusters.In this context Figure 4 shows the results of a comparison of DCM with Load-Balancing and SCS with respect to the number of clusters that are created when facing an increasing number of UAVs.As showed in Figure 4 the proposed DCM with Load-Balancing mechanism covers a higher number of UAVs than SCS, being able to cover all the deployed UAVs with twenty clusters, while with SCS the same number of clusters only cover 80% of all UAVs.The better performance of the DCM with Load-Balancing scheme is due to its mobility awareness based on the factors such as position, speed, moving direction, height variation, and link quality.Table 5 presents the numerical comparison between the the DCM with Load-Balancing and the SCS clustering mechanism in what regards the percentage of UAVs that are covered by the formed clusters.The DCM with Load-Balancing approach covers an average of 70% of UAVs, whereas the SCS approach covers only 57% of UAVs.The main reason for this differential is the fact that the SCS approach implements a Kmeans clustering approach in which the number of clusters needs to be determined a priori.This makes SCS unable to react swiftly to the dynamic topology of UAVs resulting in inefficient clustering.

B. NUMBER OF END-TO-END TRANSMISSIONS
The number of supported end-to-end transmissions is an essential metric used to determine the efficiency of a clustering process.A higher number of end-to-end transmissions reflects the efficiency of the clustering process in supporting the forwarding of data packets from source to destination, in what concerns potential bottlenecks between clusters.As illustrated in Figure 5 a higher number of end-to-end transmissions are achieved when clustering the network based on the DCM with Load-Balancing approach, when compared to SCS.This higher number of transmissions is due not only to the PO clustering process, but mostly to the election of CHs and the usage of the entropy-based scheme to balance the load between the elected CH and SCH.The proposed entropybased load balancing mechanism helps to ease the limitations brought by network instability and by the potential congestion of CHs.On the other hand, the SCS approach performed K-means clustering, which does not address the dynamic topology of flying networks, resulting in congestion, which further reduces the number of transmissions.Table 6 provides the numerical comparison of the number of transmissions achieved when the DCM with Load-Balancing and SCS approaches are used.The former is able of supporting an increased number of transmissions up to an average of 1046 transmissions, whereas the SCS approach is able to sustain only an average of 895 transmissions, mostly due to its incapability of balancing loads between clusters.The higher number of successful end-to-end transmissions supported by the DCM with Load-Balancing approach contributes to the efficiency of the routing process as shown in the analysis of packet delivery ratio, end-to-end delay and power expending performed in the following subsections.

C. PACKET DELIVERY RATIO
The packet delivery ratio is the ratio between the total number of packets received by the destinations and the total number of packets transmitted by the sources.A higher packet delivery ratio denotes a good routing performance.Load-Balancing mechanism, in comparison with the EEOR and NIEEOR routing protocols.Figure 6 shows that while the EEOR and NIEEOR routing protocols have a similar performance when facing an increasing number of UAVs (with a differential of circa 10%), routing packets based on the DCM with Load-Balancing mechanism is able of achieving a higher percentage of delivered packets, even with a small number of deployed UAVs: from 90% with only 10 UAVs to close to 100% with 70 UAVs.These results show that an efficient clustering and local balancing procedure can support a good performance of simple routing protocols, such as the ranking intra-cluster and the geographical inter-cluster routing used in this study.On the other hand, performing routing over the complete network, by using the EEOR and NIEEOR routing protocols, results in a reduced packet delivery ratio, mostly due to the inefficient convergence, which implies an scalability issue, that is shown to be mitigated by clustering the network.

Technique
Average packet delivery ratio ERROR 0.79± 0.05 NIEEOR 0.887± 0.03 DCM with Load-Balancing 0.968± 0.02 Table 7 provides the numerical comparison of the average packet delivery ratio when the routing process is based on the proposed DCM with Load-Balancing mechanism, as well as when the EEOR and NIEEOR routing protocols are used to route packets, in respect to number of UAVs.Table 7 shows that with a network varying from 10 to 100 UAVs, routing based on the proposed DCM with Load-Balancing mechanism achieves an average packet delivery ratio of 97%, which is 9% and 18% higher than using the NIEEOR and the EEOR routing protocols, respectively.

D. END-TO-END DELAY
The end-to-end delay corresponds to the total time needed to transmit a packet between a source and a destination.Figure 7 illustrates the average end-to-end delay achieved when routing packets based on our proposed mechanism, as well as the NIEEOR and the EEOR routing protocols.As shown, the average end-to-end delay increases linearly with the number of UAVs when the NIEEOR and the EEOR routing protocols are used.This is mostly due to the fact that such approaches perform routing by considering only the energy and speed without considering hop count, resulting in increased end-to-end delay.
When using the proposed DCM with Load-Balancing mechanism, the average end-to-end delay increases with the number of deployed UAVs, but with a smaller factor than when the NIEEOR and the EEOR routing protocols are used.On the one hand, this is due to the execution of a mobility-aware clustering and the selection of CHs based on link quality.On the other hand, the good performance of routing based on the proposed DCM with Load-Balancing  The numerical comparison of the end-to-end delay obtained with a routing protocol incorporated with the proposed mechanism, as well as the NIEEOR and EEOR routing protocols is presented in Table 8.The average end-to-end delay of our approach is as low as 0.225 seconds, whereas the NIEEOR and EEOR protocols may reach average endto-end delays exceeding 0.55 seconds.

E. POWER CONSUMPTION
The power consumption of UAVs is an important metric to be considered to validate the energy efficiency of a clustering approach.Therefore, an efficient clustering approach should be able of creating clusters that allow UAVs to communicate without spending a lot of energy, for instance, by grouping UAVs that are at a close distance from the CH.In this context, Figure 8 shows the power consumption encompassed in data transmission activities with an increasing number of UAVs.Here, the position-based routing scheme incorporated with the proposed DCM with Load-Balancing mechanism is also compared with the EEOR and NIEEOR routing protocols.
The power consumption involved in data transmissions in a network clustered with the DCM with Load-Balancing mechanism is much lower than when using the the EEOR and NIEEOR routing protocols.The major reason for the higher power consumption of the EEOR and NIEEOR protocols is related to the higher usage of re-transmissions due to a low packet delivery ratio and a high packet drop count.On the other hand, the DCM with Load-Balancing mechanism  supports routing with a lower number of re-transmissions due to its awareness of UAVs mobility.Moreover, the increased power consumption of EEOR and NIEEOR protocols reduces the network lifetime, hence its usefulness.Table 9 presents the numerical comparison of the average power consumption of our approach, and the EEOR and NIEEOR routing protocols.The average power consumption when the DCM with Load-Balancing mechanism is used is of about 103 J.In contrast, the EEOR and NIEEOR routing protocols consume an average of 151J and 131J, respectively.These findings show that our approach can support data transmission in FANETs with a higher energy-efficiency than just applying existing routing protocols over the complete network.

VI. CONCLUSIONS AND FUTURE WORK
In this paper we propose a new Dynamic Clustering Mechanism with Load-Balancing aiming to tackle the challenges faced by FANETs, namely intermittent available wireless links and dynamic topologies.The proposed solution guarantees efficient dissemination of data packets in FANETs by dynamically grouping UAVs into clusters by means of a Political Optimizer algorithm that takes into account the mobility patterns of UAVs, and by means of balancing traffic between cluster heads and secondary cluster heads based on a Shannon entropy function that takes into account transmission queues and network load.The proposed solution is capable of providing sufficient support for efficient dissemination of data packets in large FANETs while ensuring exceptional wireless reliability and scalability factors.Simulation results show that the proposed Dynamic Clustering Mechanism with Load-Balancing ensures an efficient clustering process by covering in average 70% of UAVs.Also, experimental results show that by combining the proposed mechanism with standard position based routing protocols, we can achieve better performances than prior art in terms of energy consumption, guaranteed high packet delivery ratios and reduced network transmission delay.
As future work, we aim to perform the validation of the proposed clustering mechanism on a real-world testbed.

( 1 )
Population initialization, with the creation of different political parties and different constituencies; (2) Members of different political parties conduct activities within their constituency; (3) Party leaders and constituency winners are determined; (4) The positions of party members is updated according to the constituency winners; (5) The positions of party members is updated according to the party leaders; (6) The resultant positions are synthesized according to the position of the constituency winners and the party leaders; (7) Switching of parties between constituencies; (8) Election phase and reassign party leaders and constituency winners.

FIGURE 1 .
FIGURE 1. Architecture of proposed solution

Algorithm 1 :
Mobility Aware dynamic clustering Input: (U p , U s , U d , U h , U L ), Population (ρ) Output: Clusters Initialize ← U p , U s , U d , U h , U L , and ρ based on Eq. (

FIGURE 4 .
FIGURE 4. Number of clusters vs. Percentage of covered UAVs

FIGURE 5 .
FIGURE 5. Number of clusters vs. Number of transmissions

FIGURE 6 .
FIGURE 6. Number of UAVs vs. Packet delivery ratio

FIGURE 7 .
FIGURE 7. Number of UAVs vs. Average end-to-end delay

FIGURE 8 .
FIGURE 8. Number of UAVs vs. Power consumption

TABLE 1 .
Comparison of position updating mechanisms and metric appraisals

TABLE 3 .
System Configuration

TABLE 5 .
Analysis of Percentage of covered UAVs

TABLE 6 .
Analysis of Number of transmissions

TABLE 8 .
Analysis of Average end-to-end delay

TABLE 9 .
Analysis of Power consumption