An Enhanced Multi-Objective Non-Dominated Sorting Genetic Routing Algorithm for Improving the QoS in Wireless Sensor Networks

In recent years, Wireless Sensor Networks (WSNs) have benefitted from their integration with Internet of Things (IoT) applications. WSN usage for monitoring and tracing applications shows massive acceleration, whether indoors or outdoors. WSN is constructed from interconnected sensors, limited resource (battery), which requires considerable importance on deployment and routing strategies, to improve the performance of Quality of Service (QoS) in WSNs. Many of the existing strategies are based on metaheuristics algorithms such as Genetic Algorithms to resolve the problem. This research proposes a new algorithm, Enhanced Non-Dominated Sorting Genetic Routing Algorithm (ENSGRA), to improve the QoS in WSNs. The proposed algorithm relies on Non-Dominated Sorting Genetic Algorithm 3 (NSGA-III), but adjusts reference points through the use of a dynamic weighted clustered scheduled vector to obtain new solutions. Moreover, ENSGRA can be used to find an integration between two parents crossover with multi-parent crossover (MPX), to produce multiple children and improve new offspring to obtain the optimal Pareto Fronts (PF). This algorithm excels when compared with the lagged multi-objective jumping particle swarm optimization, Non-dominated Sorting Genetic Algorithm–II and NSGA-III in terms of the QoS model (31% optimization percentage). Results show that the proposed ENSGRA is superior over other algorithms in evaluation measures for multi-objective algorithms.


I. INTRODUCTION
The importance of Wireless Sensor Networks (WSNs) come from using them in different applications, including monitoring various kinds of conditions such as temperature, humidity, pressure, vehicular movements and soil makeup. A WSN consists of a large number of low power wireless sensor nodes, which have limited transmission range and thus cannot directly send data to sink nodes that need multi-hop communication. Several communication techniques are used to connect sensor nodes with sink nodes, such as direct propagation, chain formation and cluster creation [1].
WSNs applications can be classified into two types; first for monitoring by analyzing or supervising a real-time system and second for tracking event change on a person or animal.
The associate editor coordinating the review of this manuscript and approving it for publication was Muhammad Zakarya .
A new important example of applications, known as IoT application based on WSNs, is a method used to extract big data from things, then mining the data to extract necessary information [2]. Hence, integrating WSNs with the Internet of Things (IoT) is considered an important and essential issue in the future.
Routing and deployment are crucial processes to consider in WSNs, especially when dealing with the performance of multiple Quality of Service (QoS) routing and deployment metrics [3]. Optimization problems are classified into two types, Single-Objective Problems (SOP) and Multi-Objective Problems (MOP). SOP aims to minimize or maximize one objective under various constraints. Selecting the most conspicuous performance metric to be optimized, SOP therefore may be improper and unreasonable for real WSN applications [2]. In MOP, the objects often conflict and clash, and the solution presents the best trade-off. This result is true as conflicts and clashes can be solved using two approaches, Classical and Multi-objective optimization algorithms. The classical method aggregates the weighted sums of all objectives [2] whilst multi-objective optimization algorithms use approaches that are sub-divided into three types: Aggregating functions, Population-based approaches and Pareto-based approaches. Aggregating functions combines all the objectives into one by any arithmetical operation. Population-based approaches use population to diversify the search, in which each generation sub-populations are generated by proportional selection. When using the Pareto approach, multiple objects are simultaneously optimized to find the non-dominated points of Pareto Front (PF).
The objectives are categorized into single ones by premultiplying each objective with a user-supplied weight [4]. The second approach is a Multi-objective algorithm, which is designed to solve black box objective optimization problems. These algorithms contain parts of optimization methods and Pareto search methods including: Strength Pareto Evolutionary Algorithm (SPEA) [5]; Multi-Objectives Particle Swarm Optimization (MOPSO) [6]; A Multi Objective Evolutionary Algorithm Based on Decomposition (MOEA/D) [7]; Non-dominated Sorting Genetic Algorithm-II (NSGA-II) [8]; and Non-dominated Sorting Genetic Algorithm-III (NSGA-III) [9].
As evidenced by previous literature [10], multi-objective algorithms are commonly used to optimize WSNs parameters. Limited research focus on multi-objective algorithms such as NSGA-III (with the exception of one study that uses NSGA-III at the deployment stage) [11]. Another weak point in this field is that only a few papers previously consider QoS and its metrics, such as coverage, reliability, delay and packet delivery. Furthermore, only a small number of studies employ performance indicators to evaluate PF solutions for multi-objectives algorithms.
Hence, the contribution of this research is to present a new algorithm named Enhanced Multi-objective Non-dominated Sorting Genetic Routing Algorithm (ENSGRA) based on NSGA-III with some changes in finding reference points, and crossover operation, this algorithm avoids the weaknesses in previous algorithms and improves the QoS in WSNs. This improvement can be achieved by optimizing three objectives in deployment and routing stage, namely, the number of active sensor nodes, energy consumption and network coverage. ENSGRA will work as a dynamic protocol in WSNs environment, Finally, considering computation time when comparing the proposed algorithm with others is highly important to avoid time complexity, so it taken in consideration when the proposed algorithm compared with other algorithms.
This paper is arranged as follows. In this Section 1, the introduction is presented. Section 2 illustrates related concepts of using multi-objective algorithms to improve performance of QoS in WSNs, and related work in this field In addition, this section describes the research problems. Section 3 displays the proposed algorithm and its framework. Section 4 discusses the results in comparison with other algorithms alongside the evaluation. Finally, Section 5 presents the conclusion and future works.

II. CONCEPTS, RELATED WORKS, AND PROBLEM DESCRIPTION
The goal of this research is to solve the MOP to achieve high performance in QoS for WSNs. Therefore, this section introduces the most relevant and pertinent concepts to the main ideas of the study.

A. QUALITY OF SERVICE (QoS)
Quality of Service (QoS) has no common or formal definition, but can be considered as the capability to provide assurance that the service requirements of applications are satisfied. However, this assurance depends on the type of application targeted. QoS in WSNs can be recommended for achieving reliability, timeliness, robustness, availability and security. Several QoS parameters can be used to measure the degree of satisfaction of these services, including throughput, delay, jitter and packet loss rate [12]. Other parameters for various applications, including optimizing energy consumption, coverage and connectivity to measure QoS [13], are factors being considered in this research.

B. PARETO FRONT (PF)
Pareto Front is generated by a specific set of solutions, where no multiple objectives can be improved without sacrificing the others [2]. The PF approach has the following goals [14]: 1. Convergence: To find a set of Pareto optimal solutions, these solutions more relevant to each other.
2. Diversity: To find a set of diverse solutions to prevent premature convergence and achieve a well-distributed trade-off PF; Note that diversity is symmetric in a two-dimensional space (two objectives) whilst more difficult to obtain in three-dimensional space (three objectives) [15].
In satisfying multiple objectives, using a 3D space is more realistic but it increases complexity [16], [17]. However Nondominated sorting, based on optimal PF as shown in Figure 1, represents a number of optimal solutions, with each front set between two objectives. Including several Pareto optimal solutions in the evaluation generation is beneficial [18].
This figure illustrate that dominated solutions which are in black dots are solutions that have other solution dominate on it as the solutions in blue dots.

C. RELATED WORKS
In table 1 represent the recent ones related work that concern in using multi-objective algorithms to optimize objectives in WSNs.

D. PROBLEM DESCRIPTION AND OBJECTIVE FUNCTIONS
In MOP, several objective functions simultaneously need optimisation (minimised or maximised). For example, m objective functions require VOLUME 9, 2021 FIGURE 1. Non-dominated sorting of a population Pareto front [19]. Minimise or maximise: This research aims to solve MOP that contain three objective functions: 1. To minimise the number of active sensors 2. To minimise the intersection between sensor nodes to reduce energy consumption 3. To maximise separation between sensor nodes to increase network coverage.

1) NUMBER OF ACTIVE SENSOR NODES
A function that finds the sum of sensor status is necessary to determine the minimum number of active sensors. This function [21] uses the following equation, where N is the number of sensors and f 1 (x) provides the minimum number of active sensors in WSN that is deployed randomly in the area of interest.

2) ENERGY CONSUMPTION OBJECTIVE FUNCTION
The function that minimises the intersection between sensors in its sensing area is used to conserve energy (As when density of sensors increase in some areas more than others. It will consume energy so reducing intersection between sensors will decrease energy consumption). This function [20] uses the following equation: where N is the number of sensors, Rs is sensing radius and f 2 (x) must be as minimised as possible. Without neglected transferring and receiving the packets to support communication between sensor nodes.

3) NETWORK COVERAGE OBJECTIVE FUNCTION
The function that maximises the separation between nodes is used to maximise network coverage. This function [1] uses the following equations, where dij is the distance between any two nodes and should be as maximised as possible.

III. ENHANCED NON-DOMINATED SORTING GENETIC ROUTING ALGORITHM (ENSGRA)
With the aim to overcome performance problems in QoS for WSNs, this research proposes an enhanced multi-objective algorithm called ENSGRA, which is based on clustering and scheduling. This algorithm can help avoid previous multi-objective algorithm problems such as premature convergence and negative effects of redundant solutions. In addition, ENSGRA also achieves more convergent and less divergent global solutions than other algorithms. The improvement is achieved in the NSGA-III algorithm using adjusted weighted clustered scheduled reference points, and multi-parent crossover (MPX) operation.

A. ENSGRA PROPOSED FRAMEWORK
This algorithm is proposed to enhance the QoS performance in WSNs. Figure 2 shows the framework block diagram of the WSN architecture with the proposed ENSGRA. Nodes are randomly deployed in the area of interest, then routing is achieved by clustering and scheduling operations. Initially, the algorithm deploys nodes and randomly selects a cluster head (the algorithm initialises the population). After using NSGA-III and updating genetic operations recombination (crossover), two parents crossover are integrated with multi-parent crossover (MPX). Then reference points are updated by the adjusted weighted clustered scheduled reference points to enhance non-dominated PF solutions. The fitness of each node is calculated based on the proposed multi-objective fitness function to achieve enhanced objectives, which include the number of active sensors, energy consumption and network coverage. Moreover, this method maintains path reliability, which is based on clustering, and node connectivity, which is grounded on radius, as constraints. Finally, the final WSN routing solutions (non-dominated PF solutions) are given to the decision maker. In these solutions, the new cluster heads are selected based on node energy, node sensing radius and node communication radius. In addition, in the final solutions, several deployed nodes turn off (become inactive) based on sensor scheduling, which increase energy efficiency, network coverage and network lifetime.

B. ORIGINAL INDIVIDUAL FORMATTED STRUCTURE WITHOUT CLUSTERING
All individuals (chromosomes) are represented by m × 2 matrix, where m is the number of nodes. The number in the first column of row i states to which cluster the node i belongs. The elements of the second column of the chromosome are selected randomly to determine if the node acts as a cluster head or as a natural sensor node [22]. Figure 3 shows the format of the original individual, which contains (k) as the amount of active sensor nodes and (s) as the number of genes. These two must be equal given that each sensor is considered as a gene that contains four parameters: x coordination, y coordination, sensing radius and communication radius for each sensor. In this case, sensors have two types of status, active or non-active node, as shown in Equation (6).
Node status = 0, if node non active 1, if node active (6)  As an example let a total of 64 active sensors from 100 sensors that are deployed in the area of interest are obtained after using NSGA-III, whilst the other sensors will go to sleep mode (inactive). Let the first sensor has id = 1, and the four parameters are presented as follows: x 1 = 301, y 1 = 59, Rs 1 = 110 and Rc 1 = 156.

C. UPDATED INDIVIDUAL FORMATTED STRUCTURE WITH CLUSTERING
In the binary method [1], an individual (chromosome) is represented as a string of 0s and 1s, where 0 indicates that the node is a non-cluster head/member and a 1 indicates that the node is a cluster head. Figure 4 shows the format of an updated individual, which contains (k) as the amount of sensor nodes and (s) as the number of genes. The two must be equal given that each sensor is considered as a gene that contains four parameters: x coordination, y coordination, sensing radius and communication radius for each sensor (as in Section 3.2). In addition, this format considers clustering by adding a number of cluster heads, with (m) PF and each PF solution has a number of cluster heads c i , then i = {1, . . . , m} and ci is 2 ≤ c i ≤ k 10 . For example, for (100) sensors, the minimal number of cluster heads is (2) and the maximum number of cluster heads is (10). In clustering, two additional parameters (Wc) are the sensor node in any cluster and node status (Ns) that is a natural active or non-active node or cluster head.

D. AN INTEGRATED CROSSOVER OPRATION IN ENSGRA
A new crossover operator, called Random Multi-point Crossover Operator (RMX) [23], is proposed to solve the variable ordering problem. RMX is used for probabilistic VOLUME 9, 2021 graphical models that have directed arcs. This operator can avoid premature convergence to determine good solutions in a reasonable number of generations.
In this research, the proposed algorithm uses the integration between two parents crossover with multi-parent crossover (MPX). Moreover, a Random Integrated Multi-point Crossover (RIMX) is proposed. Figure 5 shows RIMX in algorithm 1, how this operator works based on the RMX algorithm and represents the integration operation between two parents crossover with multi-parent crossover (MPX).
Let m represent the number of parents that are chosen randomly, which may be two or four parents. When RIMX receives two chromosomes (parents), p 1 and p 2 are recombined to create two new chromosomes (child), ch 1 and ch 2 , based on p 1 and p 2 recombination. However, if RIMX receives four chromosomes, p 1 , p 2 , p 3 and p 4 are recombined and returns four new chromosomes, ch 1 , ch 2 , ch 3 and ch 4 based on p 1 , p 2 , p 3 and p 4 recombination. Random sets of numbers n of cut points (cp) are to be used. Use n = 4, as an example. Next, n positions of cut (cp 1 , cp 2 , . . . , cp n ) are randomly chosen. Then, the selected chromosomes are recombined p1, p 2 , p 3 and p 4 , according to positions selected to generate ch 1 , ch 2 , ch 3 and ch 4 . The recombination of genes occurs as follows: specific gene sequences are exchanged between four parents. The first sequence (from cp 1 to cp 2 ) and the second (from cp 2 to cp 3 ), then the third (from cp 3 to cp 4 ) and so on. Figure 5 presents four individuals to be recombined: p1, p 2 , p 3 and p 4 . Consider that four cut points are randomly set: cp 1 , cp 2 , cp 3 and cp 4 , genes before cp 1 without any changes. The first sequence cp 1 to cp 2 is exchanged between p 1 and p 2 and between p 3 and p 4 . The second sequence cp 2 to cp 3 is exchanged between p 1 and p 3 and between p 2 and p 4 . The third sequence cp 3 to cp 4 is exchanged between p 1 and p 4 and between p 2 and p 3 . The sequence after cp 4 does not change. These operations are repeated with other genes to the end. if m == 2 5: Select p 1 , p 2 randomly 6: ch 1 and ch 2 = recombination (positions, p 1 , p 2 ) / * two parent crossover 7: else / * m == 4 8: Select p 1 , p 2 , p 3 , and p 4 randomly 9: ch 1 , ch 2 , ch 3 , and ch 4 = recombination (positions, p 1 , p 2 , p 3 , p 4 ) / * multi parent crossover  individual ability to evolve through new differential evolution strategies, while dynamically adjusting the weight vector [24]. The original structured reference point Z s with W value in generation procedure is replaced, followed by call weight adjustment function as the following pseudo code in algorithm 2.
The distribution of weighted vectors is important when all individuals are indistinguishable from one other. The weight vectors are adjusted by comparing the density of the entire objective space and subspace [24], based on this principle Algorithm 2 ENSGRA Based on Weighted Clustered Scheduled Adjustment Procedure Input: N structured reference points W vlue , P t Output: Offspring population P t+1 1: Initialization (P t , W value ) 2: gen = 1 3: Select Number of clusters randomly based on number of population (N c ) 4: Select cluster head for each cluster randomly (CH ) 5: While gen ≤ gen_max do 6: Q_t = Crossover(using RIMX algorithm) +Mutation(P_t) 7: R t = P t ∪ Q t 8: (F 1 , F 2 , . . . ) = Non-dominated-sort (R t ) 9: Repeat 10: S t = S t ∪ F i and i = i + 1 11: until |S t | ≥ N 12: Last front to be included: ENSGRA divided into two situations as the following equations.
When the cluster density is less than the population density, whether the cluster density is too low must be determined. Then let t min is the minimum threshold to adjust cluster density. If the cluster density is less than the minimum population density t min d 0 , then the cluster density is too low. In this case, the weighted clustered scheduled vector should be deleted, otherwise the two closest neighbour weighted clustered scheduled vectors are adjusted using equations (7) and (8), where: t min = 1.5 minimum threshold to give the best result (proved by experiment). d 0 : density of population. d i : cluster density VOLUME 9, 2021  If d i (clus) < d 0 (pop) 5: If d i (clus) < t min × d 0 (pop) 6: Delete a weighted clustered scheduled vector 7: else 8: Adjustment using weighted clustered scheduled vectors by equations (7) and (8)  9: end If 10: Adjustment using weighted clustered scheduled vectors by equations (9)  2. When the cluster density is greater than the population density, whether the cluster density is too large must be determined. Then let t max is the maximum threshold to adjust density. If the cluster density is greater than the maximum population density t max d 0 , then the cluster density is too high. In this case, the weighted clustered scheduled vector should be considered, otherwise the two furthest neighbour weighted clustered scheduled vectors must be adjusted using the following equations (9) and (10), where: t max = 2.5 maximum threshold to give the best result (proved by experiment).
W value (m) and W value (n): furthest weight vectors. dist max : maximum distance between two furthest neighbour weighted vectors.
Algorithm 3 illustrates the pseudo code for weighted clustered scheduled adjustment procedure. Figure 6 shows the flowchart of the proposed algorithm ENSGRA as MPX is added to two-parent crossover and integrated using RIMX. Then, the adjusted weighted clustered scheduled vector is used to find W value and increase the number of reference points to find new associated PF solutions.

IV. RESULTS AND DISCUSSION
A synthetic dataset [25] is used to conduct an experiment of the proposed algorithm. The properties of this dataset are represented as sensors and sink nodes that are placed on the same 2D-surface of size Dx x Dy. Sensors regularly and simultaneously capture information packets from its environment with a sensibility radius Rs on a basis. Sensors provided by the dataset and sink node coordinates are provided by the optimisation algorithm. Both devices (sink and sensors) can communicate within a communication radius Rc. Assuming it will be used MAC Centralized Routing Protocol (MCRP) to avoid packet collision and wormhole attack problem [26]. Other assumption is the sensor nodes are deployed randomly in the area of interest to ensure that, there are well in a dynamic network environment. Tables 2 and 3 show two types of assumed parameters, WSN and multi-objective algorithms, respectively. This experiment is carried out using Windows 10 Operating System, Intel Core (TM) i5-6200U, 2.4 GHz processor, 8 GB memory (RAM) and MATLAB 2014 as software. The code validated and verificated by programing each part alone using MATLAB code, then testing these parts before do integration between it to know if it give the exact result or not, using different case studies from the synthetic dataset. Table 3 represents parameters that are used to carry out experiments through LMOJPSO, NSGA-II, NSGA-III and ENSGRA. Several parameters are commonly used for all algorithms, special parameters are exclusive for evolutionary algorithms such as genetic algorithm and other parameters are used for particle swarm algorithms.

A. CONFIGURATIONS RESULTS
Each algorithm is experimented upon with a different number of scenarios (configurations) and of iterations. In each scenario, the number of solutions are changed to 10, 20, 30, 40, 50, 60, 70, 80, 90 and 100. The same is applied for the different number of iterations, using 25, 50, 75 and 100 iterations. These experiments are repeated with different numbers of sensor nodes, including 100, 200, 300, 400 and 500 sensor nodes, deployed in the region of interest. Figure 7 shows the results of the density of final PF solutions for each algorithm and its distribution in the 3D objective space. The X-axis shows the number of active sensors, Y-axis shows percentage of node intersections (leads to energy consumption) and the Z-axis shows node separation (leads to network coverage). This figure is concerned with taking only one scenario (configuration) from 10, when using 100 sensor nodes and 50 population using 25, 50, 75 and 100 iterations. Figures 7-a) Figure 7 shows that ENSGRA is in between LMOJPSO, NSGA-II and NSGA-III. The PF obtained from ENSGRA enables the decision maker to select the best compromise solution. In turn, the best routing for sensing nodes can be obtained after deployment to achieve QoS for WSN.
The QoS model is used to combine the three conflicting objects, which are number of active sensors, energy consumption, and network coverage. Therefore, at the start, each objective is given weight based on application and determined based on experience about its importance [27], [28]. The weight and coverage threshold are adjusted [29] to obtain the optimum allocation of different business requirements. The results prove that energy consumption and coverage require consideration over (given a greater weight than) any other parameters.
In the present research, the result of the objectives used for each algorithm is calculated using dynamic weights (based on the ranking for each objective, from 1 to 4, with 1 as the lowest and 4 as the highest). Then, this ranking is converted to their respective weights (0.1-0.4), which must be dynamic, based   on an objective ranking value. Table 4 shows that, if energy consumption in LMOJPSO algorithm has the lowest value, then it takes a 0.4 weight value. If ENSGRA has the second rank value, then it takes a 0.3 weight and so on. Computation times are also used as a factor that affects the results for each algorithm. Therefore, computation time is added and given a weight as other parameters to avoid time complexity for the proposed algorithm. Subsequently, the Resultant of Multi-objectives by Dynamic Weights (RMDW) equations are created for each algorithm. In addition, let (j) stand for the number of objectives from 1 to 4 given the four algorithms. Therefore, the RMDW equation for any algorithm is: where the objective weights are supposed (EW = 0.3, CW = 0.3, SW = 0.2, TW = 0.2).
Using an example from Table 4    complexity in the proposed algorithm vs. number of iterations, which are 25, 50, 75 and 100 iterations using 100, 200, 300, 400 and 500 sensing nodes in the RMDW combinations. The calculated results show that the proposed algorithm ENSGRA is superior over the other algorithms and given the highest value, followed by NSGA-II, LMOJPSO and NSGA-III in order. This finding signifies that ENSGRA has the capability to overcome the other algorithms, even though the computation time is added to the combination model (QoS).

B. MULTI-OBJECTVE ALGORITHM EVALUATION
This research adopts the most used evaluation metrics, which are Hyper Volume (HV), Delta ( ) and Number of other Non-dominated Solution (NDS) indicators. HV is used to evaluate convergence and diversity (distribution). This indicator is the volume of the objective space dominated by the PF approximation and delimited from above by a reference point. Computation requires a bounded space by the PF and a user defined as a reference point [30], [31].
Whenever the Delta ( ) Indicator is used to measure diversity, by obtaining the distribution and spread of solutions, the number of PF solutions is taken and sorted according to the first fitness values. Subsequently, the Euclidean distance between consecutive solutions and the average of the consecutive distances are calculated. Other calculations such as Euclidean distance between the extreme solutions and boundary solutions must be considered to find the diversity metric. This value must be as small as possible because this indicator specifies a uniform distribution [32].
The third indicator is NDS, which is considered a capacity metric that finds the number of optimal solution sets obtained by the optimiser. This indicator, also called Overall Non-Dominated Vector Generation, is easy to use given its low computational complexity [33]. Figure 9 represents the average evaluation of the HV indicator for the used algorithms. The first row shows the HV indicator for 100 nodes using 25, 50, 75 and 100 iterations. The second row shows the HV for 200 nodes using the same number of iterations as in the first row. The third row shows the HV for 300 nodes. The fourth row shows the HV for 400 nodes and the fifth row shows the HV for 500 nodes. Figure 10 represents the average evaluation for the NDS indicator for 100, 200, 300, 400, 500 nodes in each row. Figure 11 follows the above system to represent the average evaluation of the Delta indicator for 100, 200, 300, 400, 500 nodes, respectively. But we use Delta to evaluate two objectives (energy consumption, and network coverage) as Delta is unsuitable in multi-objective problems with more than two objectives. In these figures illustrate the evaluation     for the four algorithms that are used to improve the QoS in WSNs based in three well know indicators Hypervolume (HV), Number of Solutions (NDS), and Delta. Table 5 shows the average values for HV, NDS and Delta for 100, 200, 300, 400 and 500 nodes using 25, 50, 75 and 100 iteration for ENSGRA, NSGA-III, LMOJPSO and NSGA-II algorithms. Figures 9 and 10 show that ENSGRA is superior over LMOJPSO, NSGA-II and NSGA-III in terms of HV and NDS in most of the evaluation results. This finding means that the proposed algorithm ENSGRA provides greater convergence, less diversity (distribution) for PF solutions and higher capacity as represented by NDS.
Lastly, Figure 11 shows that the ENSGRA has lower Delta in most of its subfigures than NSGA-II and NSGA-III. However, LMOJPSO overcomes ENSGRA in terms of low Delta. This finding indicates that LMOJPSO provides the lowest distributed solutions. The second in lowest diversity (distribution spread) is ENSGRA, and this result relates to creating equilibrium between convergence and diversity. Diverse solutions are needed to prevent premature convergence and achieve a well-distributed trade-off PF. Table 5 shows this result that ENSGRA comes first in terms of HV and NDS but second in terms of Delta as illustrated in bold font.

V. CONCLUSION AND FUTURE WORKS
Achieving QoS for WSNs applications, has evolved and become an important and urgent issue to improve WSN performance. Until now, due to the diverse differences in WSN infrastructure, improving these network parameters in deployment and routing have prevailed in most of relevant literature. Nowadays, researches mainly aim to improve multi-object parameters (two or more objects) and solve the MOP, which are considered an NP-hard problem, using meta-heuristic multi-objective optimization algorithms for obtaining solutions for conflicting multi-objectives. In this area, NSGA-II and NSGA-III are considered to be the most popular algorithms to supply Pareto Fronts (PF) solutions, which are provided to the decision maker to determine the best decision.
The need to improve WNS performance is the catalyst behind the idea of proposing an enhanced, non-dominated, sorting genetic routing algorithm. ENSGRA achieves greater convergence and less diversity (spread and distributed) solutions than other algorithms, thereby providing more choices for decision makers. This work proposed the ENSGRA algorithm, which in principle, is based on the NSGA-III algorithm. The ENSGRA allows the proposal of a new QoS model to find a combination between WSNs parameters, followed by adding the computation time. The results are proven to be fruitful, as the proposed algorithm outperforms others in terms of WSN performance metrics parameters with computation time. The multi-objective algorithms evaluation metrics indicate that when compared with NSGA-II and NSGA-III, ENSGRA is superior in terms of Hyper Volume (HV) and Number of Non-Dominated Solution (NDS) indicators. But when Delta ( ) is considered, the ENSGRA comes in second place after LMOJPSO; see Table 6 However, when all parameters are combined together, the ENSGRA comes first; Table 6 presents the details of these combination percentage (optimisation percentage) for the proposed scenarios.
Also, observations reveal that most of the previous studies depend on two or three objectives, whilst considering four or more objectives are less likely occurred. Therefore, we plan in the future to consider four-objective to study their performance and add other indicators to evaluate the proposed algorithm.