{'fraction_non_alphanumeric': 0.02351820087669144, 'fraction_numerical': 0.003659233847913093, 'mean_word_length': 5.03253621522189, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Implementing an emerging mobility model for a fleet of UAVs based on a fuzzy logic inference system

HAL is a multi-disciplinary open access archive for the deposit and dissemination of scientific research documents, whether they are published or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers. L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires publics ou privés. Implementing an emerging mobility model for a fleet of UAVs based on a fuzzy logic inference system Mohamed-Ayoub Messous, Hichem Sedjelmaci, Sidi-Mohammed Senouci


Introduction
The wide spread use of drones, also known as UAVs (Unmanned Aerial Vehicles) or UAS (Unmanned Aerial Systems), has attracted the interest of many research groups in recent years. These flying aircrafts can be controlled, without a human pilot onboard, either remotely or autonomously. While relatively large platforms are playing increasingly prominent roles in strategic and defense programs, recent technological advances have led to the emergence of smaller and cheaper UAVs. This fact made the UAV technology easier to acquire, maintain and handle. Consequently, their potential usage was increased considerably and they have known a large expanse in different applications fields. Indeed, drones proved to be quite useful, not only in military applications, such as search and destroy missions [1], but also in civilian application, as in surveillance stable connectivity while converging as much as possible an area of interest is rather challenging. Besides, the energy requirement is of major importance for a UAV network. Therefore, we tackle the problem of achieving an efficient mobility model through a decentralized mechanism in which each drone locally decides its next orientation. The main novel contributions of the present paper are as follow: • Besides connectivity and coverage, energy is used as a third decision metric for the proposed Alpha-based mobility model.
• Design and implementation of a Fuzzy Inference System to compute the values of a weighting parameter offering an optimal tradeoff between the three previous decision metrics.
• Finally, proposition of a decentralized mobility model algorithm where decisions are made locally at each UAV, without the need of a centralized entity.
The remainder of the paper is organized as follows. Section 2 presents the background for our study and points out the research works that inspired the most our work. The particularities related to the novel contributions of this paper are presented in details in Section 3. It starts with a general description of the proposed algorithm for our mobility model. Then, the underlying details about the FIS adopted for selecting the best neighbor are presented before explaining how this choice would influence the future movement of each UAV. Section 4 provides the experimental analysis, simulation results and a discussion, before concluding the paper in Section 5.

Related works
Mobility models first use was to simulate realistic mobile wireless systems, and eventually for performances evaluation of new algorithms and protocols. Two types have been used in this context, traces representing logs from deployed systems and synthetic models based on mathematical equations [26]. A mobility model is defined through numerous properties in order to exhibit different characteristics. Therefore, it is quite expected to behave rather differently and influence network performances in many ways [27]. As a consequence, designing a suitable mobility model for a specific span of applications, has a very important influence on the achieved performances. Thus, it is essential to study and analyze mobility models specifications and their induced effect on the overall performances. We focus, throughout this work, on mobility models that are most adapted to fleets of small UAVs in which mobility models are used mainly to describe each UAV sole movement in a given environment. Many previous approaches have dealt with maintaining network connectivity while performing an area exploration mission via a fleet of drones. Each proposal was intended for a specific range of applications and was constrained with particular requirements. These latter are related primarily to the UAVs hardware on hand, which can have a direct impact on mission duration, transmission range, onboard sensors and available processing capability. Other considerations would be related to the mission restrictions and the designated region boundaries. In order to improve network performances, the design and analysis of mobility models has been a key feature for researchers. The research papers that have influenced the most our contributions, are referred with more details in the following subsections, throughout which, we present a background analysis of recent research works on mobility models for UAVs networks that focus on: (i) area-coverage problem, (ii) network connectivity problem, and (iii) other considerations and features. The main focus in the first category is on optimizing of the area-coverage and the way to achieve the best coverage rate possible; whereas the second category are more focused on maintaining connectivity amongst the fleet components and for the UAVs to be inter-connected at all time; the third subsection brings together other kinds of models that have influenced our proposal and regrouping all those models that consider some kind of hybridization between two different requirements.

Coverage oriented mobility models
The prime objective for this first category of mobility models is to achieve the best area coverage. The main idea is to disperse UAVs as far as possible from each other throughout the designated area in order to maximize the covered area. In this context, several mobility models have been developed based on relatively simple heuristics. Nodes, which are too close, repel each other to avoid collisions and to cover as much area as possible. However, to maintain communication, they attract each other when they are spread out more than a certain distance. The objective is to maximize the dispersion while maintaining connectivity. This is implemented using attraction and repulsion forces between the nodes constituting the UAVs network. Some of the several synthetic mobility models, which have been proposed recently for autonomous UAVs, are implemented based on randomized functions for direction and/or velocity, while others are more realistically implemented based on some heuristic approaches [28]. The authors in [28] have investigated deterministic versus probabilistic path planning strategies for an autonomous UAVs network. The assigned objective is to explore and eventually provide an overview image for a given area with obstacles. Their results show that the deterministic approach, on one hand, can provide a solution with minimum number of pictures to be taken; however, it requires more knowledge and time to generate a plan. On the other hand, probabilistic approaches are flexible and adaptive. Nevertheless, they can only provide probabilistic guarantees for the goal achievement. Since the goal in this category is to improve coverage, the authors in [29] and in [30] craved to reduce the overlap between the covered areas by different mobile nodes, thus using a limited number of mobile nodes efficiently. More precisely, they assumed that there is a force between mobile nodes that causes them to repel each other. The magnitude of such force, that each node applies to others, is inversely proportional to the distance between the nodes. This means that the closer the nodes get from each other the stronger they push each other back. Furthermore, to avoid the retracing of an already covered region, an additional force with a magnitude inversely proportional to the node's transmission range is applied in the direction of its movement. At each iteration and in order to figure out its next direction change, the nodes are required to compute the resultant force vector acting on them by themselves and their respective neighbors (the nodes within their transmission range) [29]. The resultant vector would give the next direction to be undertaken.

Connectivity oriented mobility models
This second class of mobility models is mostly focused on maintaining, and subsequently improving, connectivity measurements amongst the network's nodes. Some research works have shown how one or more UAVs can be used to improve the connectivity between a set of nodes in a Mobile Ad-hoc Network (MANET) [10,11]. Moreover, the authors dealt with the optimal deployment of a single UAV in order to improve the network connectivity in this MANET. The problem was formulated as minimizing some specific connectivity measurements, which they previously defined, with respect to the UAV position. The authors also proposed an algorithm to achieve optimal UAV movements with respect to one of the following connectivity requirements: (i) Global message connectivity, (ii) Worst case connectivity, (iii) Bisection connectivity and (iv) K-connectivity. Another idea for connectivity-based mobility models were proposed in [31], where the authors take communication requirements into account and the proposed algorithm is said to be self-organizing in the sense that UAVs use only local information. Exchanged information between them contains the current location and direction. The UAVs can be heterogeneous with different capabilities; they can enter and leave the area of interest at will. The designated area can also be dynamic and the proposed model can adapt to it. The goal was to sense a designated area, while the UAVs maintain connectivity to a base station and to their neighbors. Three main cases are considered in the previous algorithm: (i) if an UAV is connected to the base station, (ii) if an UAV is not connected to the base station but it has at least one neighbor, and (iii) if an UAV has no neighbors at all. In the two primer cases, the UAV would predict the future positions of its neighbors according to their current directions and it would eventually adjust its own movements. The direction to be taken would allow it to stay connected to the best of its neighbors. In the third case, where the UAV has no neighbors, it would keep his current direction until running into another neighbor.

Hybrid mobility models
In this subsection, we bring together other proposals that have influenced our work. In contrast to the two previous subsections, we regroup herewith all those contributions that considered some kind of hybridization between two different requirements. The authors in [32] dealt with the problem of balancing two competing surveillance tasks, using multiple UAVs to monitor multiple moving targets, while maintaining a network communication between the assets. This problem is presented as multiple UAVs equipped with cameras tracking several groups of moving vehicles, with a network modeled as a proximity graph. Another idea for hybrid-oriented mobility models were proposed in [33], where the authors make use of the local physical information to control the mobility of a fleet of UAVs performing a surveillance mission over a designated area. One of their guidelines for their work is to always be able to contact any UAV at any moment in case of an emergency. To such purpose, they developed an approach that maintains the connectivity of the network while exploring a designated region. They also used Ant Colony Optimization technique for the exploration process. A pheromone-based system was proposed to guide the UAVs to the places that have been less covered. The connectivity was maintained via a tree-based overlay network, which was constructed with the base station as root and the prediction of the future positions of one-hop neighbors. The selection of the best neighbor, between all the other viable alternatives, is performed according to the coverage rate information offered by a pheromone based mechanism.
The mobility models, discussed in the previous sections, are envisioned for specific cases, if not for particular missions. Most of them only consider coverage and/or connectivity measurements. Moreover, UAVs are solely required to achieve an optimal area-coverage rate while maintaining connectivity with their neighboring UAVs and the base station. Nevertheless, combining these two aforementioned requirements with others, such as energy consumption, was not covered. In this work, we consider the use of a new decision criterion that combines energy level joint with connectivity requirements and area coverage. In a previous work [25], we presented a distributed mobility model for autonomous fleet of UAVs performing an area-coverage mission. The UAVs, being equipped with wireless ad hoc capabilities, are required to achieve an optimal area-coverage rate while maintaining connectivity with their adjacent UAVs and eventually a base station. A followship weight was introduced in order to decide whether to follow or not a neighboring drone. The calculation of this parameter was based on rather simplified empirical algorithm. Ever since, significant improvements have been accomplished, not only in the process of computing the followship parameter, but even in the way of using it to decide the next movement to be undertaken. In the following section, we develop further these ideas and we dissect the new specifications of our novel contributions, in which the process of computing the followship parameter was implemented through, a more refined appropriate, fuzzy logic based system.

Alpha-based mobility model specifications
As stated in the previous section, most of the mobility models presented in the literature take into consideration sustaining network communication while trying to achieve the best area-coverage (Fig. 1). The problem is addressed as finding the right tradeoff, depending on envisioned application, between these two objectives. However, energy is a scarce resource, especially for UAVs, and its wise management is quite beneficial for the network lifetime and subsequently mission success rate. To this extent, the main contribution of our proposal, compared to existing approaches, resides in using the remaining energy level of the adjacent UAVs to determine the next movement to be undertaken. As far as we know, this work is the first to ever consider energy requirement, combined with communication and area-coverage measurements, as a joint decision criterion. Furthermore, the proposed model is based on the tuning of a specific weighting parameter, we call Alpha (α), to decide which neighboring UAV is the most suitable to be followed. The following subsections put into perspective the notable novel contributions of this paper. First, we start with a general description of the distributed algorithm implemented within each UAV in the fleet. We provide the details related to the required inputs and the resulting output at each iteration of the proposed algorithm. After that, the procedure of tuning the weighting parameter α based on a fuzzy logic scheme is presented. The membership functions and the linguistic variables involved in the process of fuzzification, defuzzification and the inference system are investigated. Finally, we summarize the whole scheme for our mobility model through a synaptic flow chart and we outline the different dedicated use cases upon which it needs to cope with.

Alpha-based general description
Our prime goal is to study and use energy constraint, along with coverage and connectivity, in order to efficiently deploy and move a fleet of UAVs. While designing the mobility model, our approach is intended to be as generic as possible, thus it can easily adapted to any application that requires exploration tasks. Furthermore, for its implementation, no special prerequisites are needed other than the physical local data held by each UAV and a compatible ad hoc wireless interface. In each UAV, a decentralized decision-making algorithm is executed where the decision regarding its future movements is based only on its local information and the information received from its immediate neighbors. The latter represent all UAVs within its radio range. Therefore, no central entity with global knowledge is necessary to synchronize and coordinate the work of the whole fleet. Each UAV is required to broadcast, within a specific period of time to all its neighboring nodes, the information that are susceptible to be used in their mutual decision-making process. Some of these data are intended primarily to optimize the area-coverage, while others are more linked to maintaining connectivity. Nevertheless, data related to the available energy level is rather used as a classification criterion regarding the neighbors to be followed.
The mobility model we propose is summarized in Algorithm 1 executed by each UAV periodically. The required Inputs are: (i) the delimitations of the area of interest, (ii) the number of UAVs, N, (iii) T UpDate , representing the algorithm running period, (iv) the UAV radio range, Tr Range , (v) the coverage range, Cv Range , representing the field of coverage for each single UAV at a given period of time, (vi) the base station address, sink_ID, (vii) Neighbors table (N_tab UAVi t ) and (viii) the current direction, θ t , i.e. the current orientation where the UAV is heading. For each iteration, the output is the next orientation, θ UAVi t+1 , where the UAVi will head to.
The goal is to cover the area of interest while maintaining connectivity between UAVs. At each iteration, every UAV running the algorithm is required to broadcast to all its immediate neighbors a set of data including its position, current direction, θ t and other fields detailed in the next sections. Every T_UpDate seconds, each UAV computes its next direction, θ t+1 , based on the collected data. As shown in Algorithm 1, the Alpha-Based Mobility Model compromises four main steps.
First, Each UAV collects data from its neighbors. Then, it proceeds to update its local Neighbors Table. Each entry in this latter will be used afterward to compute the followship weights values α, related to each neighboring node. The information required to compute α are: (i) Hop count to the base station represents the number of nodes relaying messages between the neighboring node and the base station, (ii) Number of neighbors represents the neighbors' count that each neighboring node has, (iii) Energy level of the neighboring nodes is taken into account to determine whether to follow or not this neighboring UAV. Finally, for an efficient exploration, the next direction for each node is calculated based on the followship weights. At the end of every iteration, each UAV informs its neighbors of its current state, which includes its position, its current orientation and all the other relevant information.
The third step, in the previously shown algorithm, emphasizes the process of followship weight Alpha computation. A Fuzzy Logic Systems is used as an implementation mean. Throughout the following subsection, we justify this choice and give all the details related to the proposed fuzzy-based cognitive scheme for tuning the followship weight values.

Fuzzy-based tuning of the followship weight alpha
Fuzzy logic is considered as one of the most used techniques to design sophisticated decision-making systems. This is mostly due to its resemblance to human cognitive process while being able to generate precise solutions from uncertain or imprecise inputs. Fuzzy Inference Systems fit in-between purely mathematical approaches and purely logic-based approaches [34]. While classical reasoning approaches require precise equations to model real-world behaviors, fuzzy based systems are known to handle inputs data ambiguities. Being inspired by the human decision making process, fuzzy logic offers an intuitive scheme to represent a problem in linguistic variables, and subsequently, automate the reasoning process through an inference engine powered by an if-else style rules base [35]. Tuning the right values for the followship weight α is rather a challenging task. Bearing in mind the diverse nature for the previous three variables involved (energy level, hop-count, neighbors count), computing such a parameter is pretty puzzling.
We have chosen fuzzy logic technique for tuning the values of the followship parameter, α. Nevertheless, this choice is not arbitrary, in the contrary it is justified by the many advantages that fuzzy based approaches have over conventional techniques, such as its relatively simple mathematical concepts and tolerance to imprecise data. The other benefits are their flexibility and the intuitiveness behind their cognitive process. For tuning the weighting parameter α for each neighboring UAV, we need three information, namely: Energy value, Neighbors count and minimal hop count to reach the base station. These three values represent the required inputs of the Fuzzy Inference System. The given result is a weight parameter, chosen between 1 and 10, representing the system output. The proposed system is represented throughout Fig. 2 where three levels are illustrated. The first level is the Fuzzification process, where the numerical inputs, called crisp values, are matched with the corresponding linguistic variables. The second level, Inference System, represents the core of any fuzzy logic system. It is the step in which the Fuzzy Inference Engine solicits the Rules' Base in order to compute the fuzzy values of the outputs (in our case, the values of the weighting parameter α). The third and last step is Defuzzification, which represents the reverse process of fuzzification. The linguistic variables values of the output are projected according to their membership functions in order to determine once more a crisp numerical value for the weighting parameter α. The underlying details for all these three levels are described in the following subsections.

Fuzzification
In fuzzy sets theory, fuzzification is defined as the process of transforming crisp quantities into fuzzy values (crisp to fuzzy). This conversion is based on the membership functions, which are used to associate a grade to each linguistic variable. It represents also the first level of any fuzzy inference system, in which the real scalar values of the system's inputs are changed into fuzzy values. Our fuzzy system design consists of three different inputs. Consequently, we define three corresponding membership functions depicted in Fig. 3. In practice, different methods are used to determine the number of linguistic variables required and how to assign them to their corresponding membership functions. This process can rather be done by intuition or by using some heuristic or logical procedures such as neural networks or genetic algorithms [35]. Fig. 3(a) represents the membership function for the first input, namely Energy level. Its corresponding linguistic variables are: Low, Medium and High. Likewise, Fig. 3(b) shows the membership function for the second input, which is Neighbors Count. It consists of the three linguistic variables: One, Low and High. Finally, Fig. 3(c)

Inference system
Decision-making process is the most crucial part of the entire system. In fuzzy logic based systems, this process is achieved through a decisive fuzzy inference engine, in which the decision is made over a suitable predefined rule base. Each entry in this rule base has an IF-THEN statement, with ''AND'' or ''OR'' connectors to make the necessary links amongst the fuzzy variables. The latter is built, most of the time, based on the human experts experience because there is often no obvious connection between the inputs and the outputs. As for the rule base for our model (presented in  (a) Individual effect of each input on the output α.  In contrast to other black-box like techniques, such as neural networks, which take training data and generate opaque impenetrable models, fuzzy logic relies on the human experience and understanding of a system. The rule base that we used needs 18 different entries to implement all the 36 possible cases showed in the previous table. The graphical depiction in Fig. 4 offers a visual representation for the input/output correlation. The impact that each one of the three inputs (Energy Level, Hop Count to base Station and Neighbors Count) has on the output α are depicted in Fig. 4(a). Whereas, part (b) of the same figure, gives the induced combined effect by each pair of inputs on the output. This 3D projection is quite interesting because it shows the joint impact of the inputs two-by-two on the system output. Details are given in the following: -The nodes with critical low energy level and inversely those with a pretty high level have a very low followship weight, because the nodes in first case are more likely to fail, so it is very probable to lose them as neighbors very soon. Whereas, in the second case, nodes with high energy levels are expected to last for longer time thus they do have a good chance to encounter other nodes. This double standard measure affects both the network connectivity and the area coverage. Contrary, the nodes with fairly average energy level are the most favorable to be followed.
-For the second input used to compute the weighting parameter, the smaller the values of neighbors count the much better followship weight provided. Additionally, when a node has more than five neighbors, we estimated that it would be better to not follow it, because this would mean that the region is already well covered. Furthermore, when the nodes' density in the same region is high, it would consequently increase packet exchange thus network overhead.
-Hop count required to attain the base station shows a rather different behavior. This can be explained through the different values that this third input can take. The nodes that are within a critical five hops from the base station are the most suitable to be followed, the ideal distance being three hops. Moreover, if this distance is less than two hops, the nodes' energy risks to be drained through packet forwarding up to base station, because it is commonly known that the immediate neighbors of the base station handle most of the traffic in ad hoc networks. Contrariwise, if the distance is more than five hops, the packets undertaken path are judged too long.

Defuzzification
In fuzzy logic scheme, it is necessary to have a crisp output; hence a specific method is adopted to evaluate a crisp value that best represents a linguistic term. This process, called defuzzification, is the last stage in a fuzzy based system. It represents the process of producing a quantifiable value based on the corresponding fuzzy logic variable and its corresponding membership degrees. It offers a mean for the fuzzy to crisp conversions. Since, the fuzzy results generated by the inference engine cannot be used as such in their environment, they need to be converted into numerical quantities. Defuzzification is thus a natural and necessary process because the output to any practical system cannot be given using the linguistic variables: High, Medium and Low. This process is implemented through the membership function described in Fig. 5.
After computing, for each neighboring UAV, its corresponding followship weight value, the fourth and last step in Algorithm 1, is to select the next orientation to be undertaken (θ t+1 ). In the following subsection, we describe how the previously computed values are used and how they would dictate the next movement direction.

Next orientation selection based on best neighbor
Computing the α value for each neighboring UAV is performed locally, based on the respective information received in the previous step in the proposed algorithm. The following step would be to select the best neighbor using the computed values as a decision criterion. Consequently, nodes with higher α values have more effect on their adjacent UAVs than those with smaller values. Every iteration, the future orientation is decided through the following process depicted in the flow chart of Fig. 6: -Once the best neighbor is selected, the current UAV calculates the Cartesian distance between them. This is simply done by the UAV since it already detains all the adjacent UAV positions.
-Depending on the distance spreading between the two UAVs, the current UAV chooses its next orientation with rather different behaviors. Three possible cases, which are: Far, Close and Very Close, are distinguished, with rather different outcomes: (a) IF distance IS Far: which means the distance value is more than a critical upper threshold. In this first case scenario, the current UAV decides whether it keeps its current orientation or changes it in order to get closer from its best neighbor, thus reducing the distance in-between, (b) IF distance IS Very Close: i.e. less than a critical lower threshold. Using the same analogy as the previous case, the current UAV keeps his current orientation unchanged if it is getting him away from its best neighbor. Otherwise, it changes it in order to get a little bit far and rises the distance among them, (c) IF distance IS Close: in this case the distance is in-between the upper and lower thresholds. Unlike to the two previous behaviors, the current UAV in this case takes the orientation of its best neighbor, so that it upkeeps the same distance in-between them.

Experimental analysis
Through this section, the performance of Alpha-mobility model is evaluated and compared to two other models via simulation work: Random Mobility Model and Forces-based Mobility Model. The Random Mobility Model, where each UAV choses its next orientation based on some randomized functions, is rather simple to implement for generating a new orientation each iteration. Several different variants are proposed, namely: Random Walk Mobility Model, Random Direction Mobility Models and Random Way Point Mobility Model. In this type of models, the nodes do not require information regarding their neighbors to decide their future movements. So individual movements are somewhat independent from each other; thus there is no need to message exchange mechanism between UAVs be implemented. However, for the Forces-based approach, we opted for a coverage oriented model similar to that presented in [36], where repulsion and attraction forces were created between neighboring UAVs, so that they try to spread as far as possible from each other, thus covering as much area as possible. Moreover, repulsion and attraction forces, applied in this model to move around the designated region, are proportional to the distance separating two neighboring UAVs.

Simulation assumptions
UAVs are assumed to operate in an obstacle-free environment and the designated area is assumed to be clear. Obstacle avoidance mechanism is not the scope of the current study. Our proposal for a generic mobility model is more suitable for civilian exploration application and is intentionally adapted to small platform of UAVs that are capable of performing holonomic movements such as quadrotors. Although, for adapting our mobility model to fixed-wing UAV platforms, an adaptation middleware is to be developed in order to translate higher abstraction level commands, as orientation and speed of movements, to lower level commands. Because only relatively small number of UAV is considered, we assume that UAVs fly in different altitudes to avoid collision with each other. However, the vertical distance amongst them is neglected compared to the horizontal distance and the wireless range. Consequently, we only considered a projection of the UAVs movements in a 2D environment. To implement our mobility model and for simulation work, we used NS3 (Network Simulator 3) [37]. Furthermore, we have used OLSR (Optimized Link State Routing) [38] protocol to implement the message exchange part and for the construction of the routing tables. Details about simulation parameters are summarized below in Table 2. The experimentations specifications are as follow: in order to investigate the impact that changing the number of UAVs has on our approach, different scenarios, with 5 up to 30 UAVs, were considered. We also noticed, through the primary tests, that the initial positioning of UAVs has a quite sizeable impact on the results and the three different mobility models showed some quite different behaviors. That is why, to improve the confidence scale, five different scenarios for starting points were implemented, changing every time the density and distance between UAVs. Moreover, the three mobility models were run, for each one of the five positioning scenarios, 30 times. Consequently, we obtained for each mobility model 150 use cases (5 scenarios * 30 runs) for each one of the six settings of UAVs (5,10,15,20,25 and 30 UAVs). Additionally, for the details related to the UAVs physical characteristics, we have considered a radio range up to 400 m, with a maximum speed of 10 m/s. Each UAV can cover a surface equivalent to 20*20 square meter at each iteration.

Performance metrics
For the performance evaluation and comparison study, between the proposed mobility model and other models, different quality measures have been considered. In order to cover the various aspects, related to different features, we have considered two types of performance metrics: coverage-oriented and connectivity-oriented. These two categories respectively describe the evaluation of area-coverage and network connectivity: Coverage-oriented metrics: performance metrics for this first category have an emphasis on the aspects related to area coverage, such as the amount of achieved coverage, the coverage speed and the coverage fairness. Choosing one of these evaluation metrics depends mainly on the targeted application and the mission requirements. Throughout this work, we have defined the following metrics: • Coverage Exhaustiveness: shows the rate of the global coverage achieved at the end of the simulation time. This first metric represents the percentage of the region that has been covered, within the same amount of time, by each mobility model. It symbolizes a coverage-oriented metric related to the exhaustiveness of coverage. The study of the instantaneous coverage evolution is another variant of this metric. The latter is influenced, not only by the density of the fleet, but mostly by the overlapping in the fields of coverage between adjacent UAVs. This changing factor shows the progress of the covered surface at each iteration throughout a simulation run. The study of this second parameter is a must for applications where the instantaneous coverage achieved is a prerequisite for mission success, • Coverage Speed: represents the evolution of global coverage for each approach throughout the simulation time. It shows also the different behaviors of the considered models in terms of the coverage pace, • Coverage Fairness: describes the equity and regularity of the coverage between all the scanned cells. This performance metric is defined as the dispersion of the number of scans for all the cells within the designated area. Different methods can be used to give an overview about this important criterion.
Connectivity-oriented metrics: this second class of performance metrics concentrates mostly on assessing the quality of parameters related to the UAV network. The considered measurements which fall in this category are: • Number of UAVs Connected to the Base Station: reveals the behavior of the network produced by the interconnected UAVs. It is quite crucial for the UAVs to be connected and to maintain connection to the base station, particularly when emergency or important messages are to be sent or received, • Average Neighbors Count Evolution: this is yet another important metric, which unfold a different analysis angle for the network structure shifting and changing during time.

Simulation results
In this subsection, we present an evaluation for the different performance metrics depicted in the previous sections. First, we investigate the coverage exhaustiveness metric, which describes the global coverage rate of Alpha-based Mobility Model compared to the Random and Forces-based mobility models. Fig. 7, which reveals a coverage-oriented performance metric, shows that the Alpha-based Mobility Model offers comparable results to Forces-based Mobility Model, and much better results than the Random Mobility Model. Nevertheless, it should be noted that the Alpha-based Mobility Model achieves better global coverage rate in scenarios with smaller numbers of UAVs (less than 10). Whereas, with higher number of drones, the Forcesbased model yields better coverage rates due to the higher network density. Yet, the main reason is that in the Forces-based model, each drone tries to get as far as possible from its neighbors in order to cover as much area as possible. However, with the Alpha-based model, UAVs are required to find the best tradeoff between coverage and connectivity. Therefore, maintaining a stable connectivity with their neighbors and the base station will results in some lost in coverage.
In exploration missions, it is usually expected from a fleet of UAVs to cover the designated region as fast as possible. Nevertheless, reducing the amount of time required to achieve this task is quite important. To this extent, a time-oriented performance metric is necessary in order to determine the coverage speed achieved over time for the different considered mobility models. We put this metric into perspective through Fig. 8, where the evolution of the global coverage rate throughout simulation time is shown. The depicted scenario is realized by 30 UAVs, in which Alpha-based model reached 81% of covered region, Forces-based and Random-based model respectively achieved 77,52% and 76,23% from the designated area. It is shown, through this figure, that the three mobility models starting speed was quite similar in the first 100 s of simulation time. After that, the Forces-based model performed better than the Random based model, while Alpha-based model outperforms both previous models throughout the rest of simulation time.
To further investigate the impact of node density on the regularity of coverage, Fig. 9 shows a five-number summary for the global coverage percentiles values. This figure details global coverage rates disparities between Forces-based mobility model and Alpha-based mobility model, for each use case, through the median value, the minimum and maximum values, and also the first and third quartiles. This graphical depiction shows yet another view for the dispersion of the obtained results throughout all the considered scenarios. It can be stated that Forces-based model reaches the maximum global coverage rate (that is around 80%) with just 15 UAVs, whereas Alpha-based model needs 20 UAVs to attain this threshold.  Accordingly, the worst case coverage obtained (minimum values) through Forces-based model in scenarios with more than 15 UAVs is always well above than 20%. However, for Alpha-based model, the minimum graph never reaches 20%. This means that, although, the average global coverage rate achieved through Alpha-based mobility model is slightly higher than Forces-based model, some scenarios are quite unfortunate. In these latter cases, the UAVs stocked together and did not optimally spread throughout the designated region. This is the reason for which the achieved global coverage was so slim. Moreover, the curves representing the first and third quartile shows a more similar behavior for both mobility models with a quite close values range. As for interquartile range, which is the distance spreading between the first and third quartiles, it represents a dispersion measure for the global coverage values around their respective average values. More specifically, the first quartile delimits the smallest 25% values, while the third quartile depict the 75% mark. Therefore, the interquartile range regroups 50% of the results.
In order to quantify the number of times a region has been scanned, generally, the area that needs to be covered is dissected into smaller identical cells. Then, each time an UAV passes through a particular cell, we increment the scan count number. However, if the same UAV passes over the same cell yet again, it is also considered as another scan, increasing one more the scan count. Consequently, at the end of simulation time, the cells that have not been scanned at all would have a scan count equal to zero. This process is intended to give an insight about the fairness of the coverage process throughout the designated region. To put this into perspective, for each simulation scenario, we need to evaluate the average value for scanned cells which illustrates the mean number of times each cell has been covered. Yet again, this information provided by itself would not offer a clear outlook about the overall dispersion of the scan count throughout the region of choice. An appropriate performance metric would consider, in addition to average scan number, the standard deviation value. For all this reasons, we decided to calculate the average scan number jointly with its corresponding standard deviation for all the use cases at hand. Fig. 10 shows a depiction of the average values of these two measurements. As for average scan numbers, Forces-based mobility model achieved the lowest mean values in most of simulations. This is due to the spreading of UAVs as far as possible from each other, thus, keeping a low density of nodes throughout the region. Whereas, in the Alpha-based model, the UAVs try to always upkeep some connection with their neighbors, therefore, increasing the nodes' density which will consequently increase the number of scans in the adjacent cells.
The evaluation of the average values by themselves is not of a great importance, because it does not show how the actual values are distributed. Hence, always in Fig. 9, the inflection in standard deviation values are depicted in order to show how the scan numbers are spread around the average values. The results show that Forces-based model outperforms the two other models, achieving the best standard deviation values, since lower values of standard deviation correspond to closer dispersion of results to their respective average scan number. This can be justified through the tendency of UAVs in Forces-based mobility model to spread from each other, due to repelling forces, thus achieving a more uniform scans all over the designated area. Whereas, UAVs in Alpha-based mobility model tend to stay together, forming multiple clusters, while covering their respective region. Consequently, cells in the regions that have been covered with larger clusters of UAVs are more likely to have more scan numbers than those with smaller clusters, which eventually explain the higher deviation compared to Force based model.
As for placing the coverage fairness metric into perspective, we drew a graphical representation for the number of scans per cell. Since each use case has given a different representation, because the UAVs followed different paths throughout simulation scenarios, we have selected just one scenario, the same as in Fig. 8. The representation in Fig. 11 depicts a scenario with 30 UAVs, in which Alpha-based model reached 81% of coverage rate, Forces-based and Random-based model respectively covered 77,52% and 76,23% from the designated area. This figure shows how, in Random Mobility Model, the UAVs strayed all over the region with some high concentration, while in Forces-based Mobility Model, UAVs covered a more important area with lower concentration, thus achieving better coverage regularity. Nonetheless, Alpha-based Mobility Model shows acceptable results regarding the coverage fairness, where UAVs stayed close to each other within the same clusters. They also moved together as a whole thanks to an emergent global behavior resulting from their local response. However, this also explains the very high scan concentration in the upper-right side of the region.
All previous results deal with the evaluation of coverage rate metrics; therefore, they are considered as surfaceoriented. Nevertheless, to see the bigger picture, it is most suitable to also consider other performance metrics that cover connectivity aspects. To this extent, all the following results starting with Fig. 12, represent depictions for connectivityoriented measurements. Fig. 12 represents the percentage of UAVs connected to the base station throughout simulation time. It should be stated that in order to keep accordance with the previous figures, we once more chose the same use case scenario with 30 UAVs. It can be made clear, through this figure, that the alpha mobility model gave the best results. Throughout the progress in simulation time, more and more UAVs kept connected with base station, until achieving more than 80% of the total UAVs. This is primarily due to the fact that our approach obliges the UAVs to stay within a critical distance from each other while taking into account the hop count to the base station. Nonetheless, the two other mobility models showed a rather different behavior. For the random based model on the one hand, no more than 30% of connections was achieved, which is primarily due to the network density. On the other hand, in Forces-based mobility model, after a first peak, the UAVs strayed all over the covered region, which causes them to lose connection to the base station. Fig. 13 shows the evolution of the average neighbors count throughout simulation time. It can give a broad view regarding the structure of the UAVs network. This figure states the supremacy of the Alpha-based model over the two other models, where UAVs average number of neighbor constantly increased over time, reaching its peak towards the end of simulation. Whereas, the average neighbors count for the Forces-based and Random-based models kept more or less the same values throughout the whole scenario. Moreover, Fig. 13 clearly announces Alpha-based model as the most suitable choice for the upkeep of connection amongst neighboring drones while exploring a region of choice. Nevertheless, the average values presented do not provide the whole picture regarding the neighbors count, only a small portion is depicted, other parameters should be invested to present a broader vision. We try to answer to this need in the following figures through the depiction of minimum and maximum values and also by evaluating the standard deviation values.
In Fig. 14, which illustrates yet another neighbors count evaluation graphs for the three considered approaches, the red line represents the average number of neighbors that each UAV has, while the two green lines represent respectively the maximum and minimum values at each iteration. Having a minimum value equal to zero means that at least one UAV does not have any neighbors. The blue bars give an idea about the dispersion of the neighbors count at a given time. They are represented based on the standard deviation values. Smaller bars signify that most of the UAVs have a neighbors count closer to the average value. While longer bars indicate that the values are spread out over a wider range of values. Alpha-based mobility model shows a stable behavior in contrast to the two other approaches. Each UAVs had at least two neighboring UAVs, with more than 4 neighbors as a stable average value. Whereas, the average line was decreasing in the Forces-based chart, and even the minimum line reached zero, which again means that at least one UAV did not have any neighbor.

Discussion
We summarize in this subsection the simulation results shown above. The extensive experimentation study proved the effectiveness of our Alpha-based model compared to the Random-based and Forces-based models. Here is a summary for our performance evaluation: First, we considered Coverage-oriented metrics. We started with the evaluation of coverage exhaustiveness in (Fig. 7). Even though, the Alpha-based model achieved better results in terms of global coverage rate with smaller number of UAVs,  the Forces-based model outperforms our model in scenarios with higher number of UAVs. Likewise, Forces-based model realized better coverage speed over simulation time (Fig. 8) compared to the Random-based and the Alpha-based models. However, the Alpha-based model granted the best coverage-fairness. Figs. 9-11 all demonstrate the effectiveness of our model compared to the two other models in terms of coverage-fairness.
Second, we focused on Connectivity-oriented metrics. The Alpha-based model achieved greater number of connections to the base station over simulation time compared to the Forces-based model and the Random-based model (Fig. 12). Moreover, our model also realized better performances in terms of average neighbors count (Fig. 13). Specifically, with the Alpha-based model the average number of neighbors improved throughout simulation time, whereas, in the Forces-based model the average neighbors count regressed. Finally, Fig. 14 provide even better view to the overall connectivity status represented with minimum, maximal and average neighbors' count for each model. This last figure shows the efficiency of the Alphabased model in terms of connectivity maintenance compared to the two other models. (Each UAV had between two to eight neighbors.)

Conclusion
An UAVs network represents a network involving multiple UAVs communicating with each other through compatible wireless interfaces. One of the major challenges, in this field of study, is to deliver data from or to areas where there is no predefined infrastructure. Recently, these networks have witnessed a fast growth period and are more likely to attract an ever increased attention from academia and industry sectors in the future. However, as such systems are brought to carry out increasingly complex tasks, the design and evaluation of their mobility model is crucial to ensure a successful deployment and mission success. Throughout this paper, we proposed a distributed algorithm for controlling the mobility of a fleet of interconnected UAVs while performing an exploratory mission. Based on the information received from its neighbors, each UAV determines locally its next movement to be undertaken. The overall emerging behavior for the whole fleet is intended to maintain network connectivity amongst the UAVs while achieving the best area-coverage possible. One of the novelties of our approach resides in using a combined decision criterion which for the first time joints adjoining UAVs energy level with network connectivity and area-coverage requirements. The distributed scheme, based on local information, decides  the next orientation for each UAV to take. The cognitive system was implemented through a Fuzzy Inference System, with three inputs and one output. The latter pronounces a weighting parameter that is used to decide the best neighbor to be followed depending on the value of the three inputs: Energy level, Neighbors count and Hop count to base station. For validation purposes of our proposals, we led rigorous simulation work, with different performance metrics covering various significant quality measures. The thorough investigations, to assess the quality of our mobility model with regards to other models, show very satisfying results. The proposed model achieved comparable area-coverage to the Forces-based model and it outperformed the other models in terms of network connectivity. As for the perspectives of our work, we intend to embed our approach into a real UAV platform, such as Parrot drones [39]. In addition, as shown in [40], a promising research direction would be the integration of cognitive radio [41] technology with UAV systems. Another future enhancement would be incorporating an optimization study to determine the optimal number of drones needed as function of the application requirements and the explored region.