The Balanced Cross-Layer Design Routing Algorithm in Wireless Sensor Networks Using Fuzzy Logic

Recently, the cross-layer design for the wireless sensor network communication protocol has become more and more important and popular. Considering the disadvantages of the traditional cross-layer routing algorithms, in this paper we propose a new fuzzy logic-based routing algorithm, named the Balanced Cross-layer Fuzzy Logic (BCFL) routing algorithm. In BCFL, we use the cross-layer parameters’ dispersion as the fuzzy logic inference system inputs. Moreover, we give each cross-layer parameter a dynamic weight according the value of the dispersion. For getting a balanced solution, the parameter whose dispersion is large will have small weight, and vice versa. In order to compare it with the traditional cross-layer routing algorithms, BCFL is evaluated through extensive simulations. The simulation results show that the new routing algorithm can handle the multiple constraints without increasing the complexity of the algorithm and can achieve the most balanced performance on selecting the next hop relay node. Moreover, the Balanced Cross-layer Fuzzy Logic routing algorithm can adapt to the dynamic changing of the network conditions and topology effectively.


Introduction
In recent years, the wireless sensor network routing protocol has been studied in widely. Many excellent routing protocols have been proposed, such as AODV [1], DSR [2], DSDV [3], etc. However, as the research moves along, more and more researchers realize that the traditional Open System Interconnect Reference Model (OSI) cannot meet the current quality of service (QoS) requirements of a wireless sensor network; even the OSI model simplifies the network design and improves the robustness. The reasons for this issue are, firstly, the wireless sensor network is a serious resource-constrained network [4], e.g., the limited bandwidth, the limited energy, the limited data processing capability, etc. Secondly, the OSI model only allows the communication between the adjacent layers, which cannot adapt to the dynamic changing of the wireless environment flexibly. Recently, the research proposes a cross-layer method for wireless sensor network communication protocol design, and many cross-layer methods have been proposed [5,6].
The cross-layer design allows the different layers to communicate with each other to coordinate the resource allocation between different layers, and allows the routing protocols to adapt to the wireless environment and the various applications. The core idea of the cross-layer design is to achieve the optimal resource allocation automatically in different layers. The cross-layer design is flexible due to its adaptive ability to adjust to meet the QoS requirements and the network constraints at the same time. Among various different developed policies, two important methods are the optimization-based routing algorithm and the fuzzy logic-based routing algorithm. For the optimization-based routing algorithm, e.g., in [7], the authors propose the Delay-Aware cross-layer design for network utility maximization in multi-hop networks; in [8], the authors introduce a new cross-layer design framework which join the scheduling and power control together; in [9], the authors show the optimization method in a cross-layer design of the wireless network; in [10], the authors present a survey of cross-layer solutions based on the nature of the adaptation using a systematic evaluation of existing approaches and identify critical criteria applicable to generic cross-layer framework design. In [11][12][13][14], the authors research the layering as optimization decomposition, in detail, including the problems, the current status, the open issues, the mathematics, the network architectures, and the framework; more recent works can be seen in [15][16][17][18]. For the fuzzy logic-based routing algorithm, e.g., in [19], the authors take the remaining battery reserve capacity, the link quality, and transmission power into consideration, by using the fuzzy logic inference system to determine the next hop relay node. In [20], the authors use the number of link breaks, the interface queue length, and the type of application as the inputs of the fuzzy logic system to enable each mobile node to separately switch between a reactive routing mode and a proactive routing mode. In [21], the authors use a fuzzy logic system to coordinate the physical layer, data-link layer, and application layer for cross-layer design; the ground speed, average delay, and packets successful transmission ratio are selected as antecedents for the fuzzy logic system. More related works can be found in [22][23][24][25][26].
However, the recent works also have some disadvantages. First, both of the two types of routing algorithms mentioned above will become extremely complex when the number of constraints increases, which is unacceptable in a wireless sensor network as the computation capability of a node is limited. Second, due to the complexity, they have limited ability to deal with the issue of multiple constraints. Third, they cannot adapt to the dynamic changing of the network conditions, i.e., when the constraint or the topology changes, the routing algorithm needs to be redesigned [27], which is not flexible in the mobile wireless network. Fourth, all these two types of routing algorithms are concentrated on the specific aspect of the network performance (such as the congestion, the energy consumption, or the throughput), so they cannot achieve the balanced performance of the network. Motivated by this, in this paper, we propose a new fuzzy logic-based routing algorithm, named the Balanced Cross-layer Fuzzy Logic (BCFL) routing algorithm To the best of our knowledge, BCFL is the first that introduces the dispersion into the fuzzy logic-based routing algorithm instead of the absolute cross-layer parameter values as the fuzzy logic inference system inputs (which is different with the traditional fuzzy logic-based routing algorithm, such as the routing algorithms discussed in [19][20][21], etc.), the first in setting every cross-layer parameter a dynamic weight, and also the first that proposes the dispersion formula. Based on these innovations, the BCFL will achieve better performance than the traditional routing algorithms mentioned above. We learn the properties of BCFL and compare the performance of BCFL with the traditional fuzzy logic-based routing algorithm (the algorithm used in [19,20]) and the optimization-based routing algorithm (the algorithm used in [9]). The simulation results also show that the BCFL has better performance on selecting the next hop relay node than the other two algorithms. Moreover, the complexity of BCFL is much less than the other two algorithms. Finally, we apply the BCFL in a multiple constraints scenario; the result shows that the BCFL can deal with the multiple constraints perfectly. The advantages of BCFL are: • the number of if-then rules will keep constant when the number of cross layer parameters increase; • the BCFL has the capability to handle multiple constraints without increasing the complexity of the algorithm; • we give each parameter a dynamic weight, which can dynamically change according to the network conditions; • as we use the dispersion of each cross-layer parameter as the input, when the network condition changes, the if-then rules will remain stable; therefore, we do not need redesign the if-then rules; • in BCFL, the large dispersion parameter has a small weight and the small dispersion parameter has a large weight, which can decrease the influence of the parameters whose dispersion are large and obtain a more balanced solution.
The rest of this paper assignment is as follows. In Section 2, we introduce the related works about the fuzzy logic-based cross layer routing algorithms. In Section 3, we will state the problem and introduce the notations and the definitions that we will use in this paper. In Section 4, we introduce the principle of the Balanced Cross-layer Fuzzy Logic routing algorithm. In Section 5, we compare the performance of the BCFL with the optimization-based algorithm and fuzzy logic-based routing algorithm, and talk about the performance in a multiple constraints scenario. In Section 6, we will discuss the conclusion and talk about the future development of BCFL.

Related Works
Due to the excellent properties of the fuzzy logic-based method, many fuzzy logic-based routing protocols have been proposed in recent years. In this section, we will introduce these routing algorithms briefly. The fuzzy logic-based method is effective in routing selection and cluster header selection, which is shown as follows.

The Fuzzy Logic-Based Algorithm Used in Routing Selection
In [19], the authors propose an energy-effective cross-layer routing protocol for wireless sensor networks based on fuzzy logic. In this protocol, for minimizing the consumed energy and maximizing the network lifetime, the algorithm takes the remaining battery reserve capacity, the link quality, and the transmission power of the neighbor nodes into consideration to select the next hop relay nodes, dynamically. In [20], for reducing the average end-to-end delay of the mobile ad hoc network, the authors propose a fuzzy logic-based adaptive cross-layer routing protocol for the delay-sensitive applications. In this algorithm, each node can switch between reactive routing mode and proactive routing mode based on the current node status separately. The algorithm uses the fuzzy logic controller to decide the routing model of each node. The inputs of the fuzzy logic controller are the number of link breaks, the interface queue length, and the type of application for each node. In [26], the authors introduce a new routing algorithm for the wireless sensor network to extend the network lifetime and balance the energy consumption by combining the fuzzy approach and the A-star algorithm together. In this algorithm, the remaining battery power, the number of hops to the destination node, and the traffic loads are taken into consideration to determine an optimal routing path from the source node to the destination node. In [28], to prolong the lifetime of the wireless sensor network, a fuzzy logic-based energy-optimization routing protocol is proposed. In this algorithm, the social welfare function is used to predict inequality of residual energy of neighbor nodes after selecting different next hop nodes. The algorithm computes the degree of energy balance based on the energy inequality. The fuzzy logic system uses the degree of node closeness to the shortest path, the degree of node closeness to sink, and the degree of energy balance to achieve the routing decision. Additionally, in [29], the node density, the delay, and the number of dead nodes are the inputs of the fuzzy logic system to select the next hop relay node to achieve the balanced energy consumption across all of the sensor nodes with minimum delay. More related works can also be found in [30][31][32][33].

The Fuzzy Logic-Based Algorithm Used in Cluster Head Selection
In [34], the author proposes an energy-aware distributed dynamic clustering protocol (ECPF). In ECPF, the non-probabilistic cluster head selection is implemented by introducing a delay inversely proportional to the residual energy of each node. Based on this, the cluster heads are selected according their remaining energy. The fuzzy logic is used to evaluate the fitness of a node to choose a final cluster head from the neighbor cluster heads. The inputs of the fuzzy logic system are the node degree and the node centrality. In [35], the authors propose a fuzzy logic-based energy-efficient multiple cluster head selection routing protocol for the wireless sensor networks. In this algorithm, the distance from the base station and the residual energy are the inputs of the fuzzy logic system to decide the possibility of the node to be the cluster head. In [25], considering the expected residual energy, the authors propose the fuzzy logic-based clustering approach with an extension to the energy predication to prolong the lifetime of the wireless sensor network. In this algorithm, the residual energy and the expected residual energy are the inputs of the fuzzy logic system, and the output is the chance of the node to be the cluster head. The new algorithm selects the cluster head considering the expected residual energy of the sensor nodes. More papers on the fuzzy logic-based cluster head selection algorithm can be found in [36][37][38][39].

Problem Statement
In this section, we will state the problem we need to solve in this paper and introduce the notations and the basic definitions that will be used throughout the paper.
Considering the disadvantages (which have been discussed in Section 1) in traditional cross-layer routing algorithms, for the new routing algorithm, the more cross-layer parameters we can get from other layers, the better the performance of the algorithm [6,40]. In addition, we should note the fact that highlighting one aspect of performance of the network may have impact on other aspects. Since the network constraints are not isolated, they can interact and influence each other. In the routing algorithm design, for getting a more balanced and effective solution, we should take as many cross-layer parameters into consideration as possible. To this issue, the new routing algorithm should have the ability to handle multiple constraints and, furthermore, not increase the complexity of the algorithm.
The main goal of this paper is to design a new routing algorithm which has the properties as follows: (1) the calculation will not seriously increase with the increased number of constraints; (2) the algorithm can handle as many cross-layer constraints as possible; (3) the algorithm should have the ability to adapt to the dynamic changing of the network conditions and topology, especially in the underwater wireless sensor network in which the network conditions and topology change frequently; and (4) the algorithm should achieve the balanced performance on selecting next hop relay node.
The notations and basic definitions that will be used throughout the paper are now introduced. , , , , n α = α α α α  (1)

Definition 2:
The cross-layer parameter matrix is the set of cross-layer parameters i n β that are obtained from node i , and can be expressed as: 1 2 3 , , , , Definition 3: The dispersion is used to decide the scatter of different cross-layer parameters; the dispersion matrix D ; n β is the mean of the cross-layer parameters from different nodes. n D and D can be expressed as: Definition 4: The utility of node i is used to decide the order of the neighbor nodes to be the next hop relay node, and can be expressed as: The object of BCFL is to calculate the value of i U and chose the most suitable next hop relay node according to i U .

The Principle of the Balanced Cross-Layer Fuzzy Logic Routing Algorithm
In this section, we will introduce the principle of the Balanced Cross-layer Fuzzy Logic routing algorithm in detail. The principle of BCFL is shown in Figure 1. First, the source node collects the cross-layer parameters n β from its neighbor nodes and calculates the dispersion n D of each parameter. When the source node gets the dispersion n D , n D will be inputted into the fuzzy logic inference system to decide the weights n α . Finally, as shown in Equation (5), α and n β will be used to calculate the utility of each node, which is the reference to decide which neighbor node will be the best next hop relay node.

The Calculation of the Dispersion
When the source node wants to send packets, it will collect the cross-layer parameters from its neighbor nodes. After that, the source node will begin the pre-processing for the cross-layer parameters. The reason why the source node needs to do pre-processing to the cross-layer parameters is shown as follows.
As we know, the cross-layer parameters of different layers are variable, i.e., the order-of-magnitudes are different. For instance, as discussed in Section 2, the distance to the base station is 1000 m, the number of link breaks is 5, the interface queue length is 20 , the remaining battery power is 50% , the number of hops to the destination node is 10 , etc. The orders of magnitude of these parameters are different; if we utilize these parameters directly, there will be some problems. Consider the parameters shown in Table 1. In Table 1, we can find that the parameter 1 β is much larger than others. By means of the Balanced Cross-layer Fuzzy Logic routing algorithm, we can get the weights of each parameter that is shown in Table 1; the weights are shown in Table 2.  Considering Equation (5), for the data in Table 1, the utilities of node 1, node 2, and node 3 are 518.848, 1022.936, and 1507, respectively. As a result, node 3 will be chosen as the next hop relay node. However, according the value of the parameters in Table 1, we can conclude that node 3 is not the best candidate as the next hop relay node. For proving this, we utilize the traditional fuzzy logic-based routing algorithm (used in [18,19]) to choose the best next hop relay node, with the result shown in Figure 2a. Figure 2a demonstrates that node 2 rather than node 3 is the best next hop relay node. The reason of this issue is that the parameters in Table 1 are not the same orders of magnitude, so the parameters whose orders of magnitude are much higher will have greater effects on the final result of BCFL. For addressing this problem, in the new algorithm, we transfer all the cross-layer parameters into the same orders of magnitude, which are shown in Table 3. The dispersions of the parameters in Table 2 are the same as that in Table 1 (this is also the reason why we use Equation (3) instead of the variance formula to calculate the parameters' dispersion, because the variances in Table 1 are different with that in Table 2; the result of Equation (3) has nothing to do with the order of magnitude), thus the parameters' weights are the same, too. Table 3. The data after pre-processing.  Figure 2b shows the result of the BCFL that uses the parameters shown in Table 2. Figure 2b illustrates that node 2 will be the best next hop relay node, which is the same with the traditional fuzzy logic based routing algorithm shown in Figure 2a.  [19,20]) with the raw data; (b) The result of the new routing algorithm with the data in Table 2.
Therefore, we can conclude that the idea that setting all the cross-layer parameters into the same order of magnitude is an appropriate and effective method. In terms of this conclusion, more generally, we can use the numbers between 0 and 1 to represent the cross-layer parameters.
Once the pre-processing of the cross-layer parameters is finished, we can apply Equation (3) to calculate the parameter dispersion. Furthermore, the dispersions will be used as the fuzzy inference system inputs.

The Design of the Fuzzy Logic Inference System
Fuzzy logic has the advantages of easy implementation, robustness, and ability to approximate to any nonlinear mapping [41,42]. It is relatively simple to convert knowledge of domain experts to control algorithms. The design of a fuzzy-logic controller starts with constructing the membership functions for linguistic input/output and if-then rules. In BCFL, the input of the fuzzy logic inference system is the parameter dispersion and the output is the cross-layer parameter weight. The new fuzzy logic inference system is a single input-single output system, which is shown in Figure 3. In the rest of this section, we will introduce the membership functions and the if-then rules of BCFL in detail. The input and output membership functions are shown in Figure 4, and the if-then rules are shown in Table 4. The linguistic variables of input and output are: very small (vsmall), medium small (msmall), small, medium, large, medium large (mlarge), very large (vlarge), which are shown in Table 4.
As shown in Table 4, the large dispersion has small weight and the small dispersion has large weight. The reason is that the parameter whose dispersion is large will have a greater effect on the algorithm performance; however, in the BCFL, we intend to get the most balanced solution, so this situation should be avoided as much as possible. Therefore, in the new routing algorithm, the larger the dispersion is, the smaller value of n α .    Figure 4 and Table 4, we can conclude that the if-then rules and membership functions will keep constant even when the network condition and topology change; moreover, the if-then rules are very simple in this algorithm. The BCFL is easy to design and is robust. On the contrary, in the traditional fuzzy logic-based routing algorithm (the algorithm used in [18,19]), the if-then rules will become unacceptable with the increasing influence of the parameters. In addition, when the network condition or the topology changes, the if-then rules need to be redesigned, which is not flexible.
Once inputting the parameters' dispersion into the fuzzy logic system, the fuzzy logic inference will set the weights for each parameter based on the dispersion, which will be used to calculate the utility of each node.

The Calculation of the Utility of Each Node
The utility is used to decide the order of the neighbor nodes to be the next hop relay node. When we get the weights from the fuzzy logic inference system, we can use Equation (5) to calculate the utility of each node.
As defined in Section 2, the utility of node i can be expressed as: where i n β represents the cross-layer parameters (such as the distance to the base station, the number of link breaks, the interface queue length, the remaining battery power, the number of hops to the destination node, etc.) of node i ; n α is the different parameter weight, which can be obtained from

Performance Evaluation
In this section, we will discuss the properties and the performance of the BCFL in detail. During the simulation in Sections 5.1 and 5.2, generally, we do not specify the cross-layer parameters ( 1 β , 2 β , 3 β ,  , n β ) to the specific factors (such as the distance to the base station, the number of link breaks, the interface queue length, the remaining battery power, the number of hops to the destination node, etc.); we use the random number sequence (from 0 to 1) to represent the value of the cross-layer factors (which has been proven in Section 4.1 that this method is appropriate and effective). In Section 5.1, we will compare the performance of the BCFL with the traditional fuzzy logic-based routing algorithm and the optimization-based routing algorithm; in Section 5.2, we will show the performance of the BCFL under multiple constraints.

The Performance of BCFL Compared with the Traditional Routing Algorithm
In this part, we compare the performance of the BCFL with the traditional fuzzy logic routing algorithm (used in [19,20]) and the optimization-based routing algorithm (used in [9]), respectively. In view of that the traditional fuzzy logic routing algorithm, the optimization-based routing algorithm has limited capability to handle multiple constraints, so in the simulation of this part, we only consider three constraints in the algorithm. As discussed in Section 4, we use the function rand() in MATLAB to generate the cross-layer parameters. The parameters are shown in Table 5.   Figure 5a,b demonstrate that the new routing algorithm can come to the similar conclusion with the traditional fuzzy logic-based routing algorithm: the best next hop relay node is node 1; the performance of node 3, node 4, and node 5 are alike; and node 2 has the worst performance of these five nodes. The result also proves that the BCFL is effective and balanced. As shown in Figure 5a, the line graph of dispersion illustrates that the parameters in node 1 have the smallest dispersion; the dispersion of node 3 and node 5 are similar and all larger than node 1; node 2 and node 4 have the largest parameter dispersion. This line graph is consistent with the line graph of utility in Figure 5a (the node whose parameter dispersion is small will have large utility). For the utility in Figure 5a, node 1 is the largest, node 3 and node 5 are alike and they are the medium. Note that even node 2 and node 4 have the similar parameter dispersion, but since the parameters in node 2 are too small, then the utility of node 4 is greater than node 2. Therefore, the new routing algorithm can not only consider the balance but also the effectiveness of the network performance.
Note that the dispersion shown in Figure 5a is different with the dispersion that is expressed in Definition 3. The dispersion in Definition 3 means the difference between the same cross-layer parameters from different nodes, e.g., the parameters 1 2 3   1  1  1  1 , , , , i β β β β  (the parameter 1 from node 1, node 2,  , node i ). The dispersion shown in Figure 5a means the difference of different cross-layer parameters of the same node, e.g., the parameters 1 1 1   1  1  2  3 , , , , n β β β β  (the parameter 1, parameter 2,  , parameter n from node 1). Thus, the parameter dispersion shown in Figure 5a can represent the balance of nodes.  [19,20]); (c) The result of the optimization-based routing algorithm (the algorithm used in [9]).
In Figure 5b, the utility of node 4 is larger than node 5; however, as shown in Figure 5a, the parameter dispersion of node 5 is smaller than node 4. Considering the parameter's value and the parameter dispersion of these two nodes, we can conclude that node 5 is more appropriate as the next hop relay node than node 4. On this point, the Figure 5a,b prove that the BCFL can get a more balanced performance than the traditional fuzzy logic routing algorithm.
The Figure 5c shows the result of optimization-based routing algorithm. In Figure 5c, the node 3 has higher possibility to be the next hop relay node than node 1. However, as shown in Figure 5a,b, node 1 has a more balanced performance than node 3, thus node 1 is more suitable to be the next hop relay node than node 3. Furthermore, both in Figure 5b,c, the utility of node 4 is larger than node 5; but as discussed in Figure 5a, the node 5 has a more balanced performance than node 4. The reason for this issue is that in the optimization-based routing algorithm and traditional fuzzy logic-based routing algorithm, the large parameters will have a greater effect on the algorithm performance; and the nodes that these parameters belong to are easy to be chosen as the next hop relay node, which is consistent with the performance of node 4 and node 5 in Figure 5b,c, respectively.
The Figure 5 indicates that the BCFL and the traditional fuzzy logic-based routing algorithm (used in [19,20]) have the similar performance, and they are all better than the optimization-based routing algorithm (used in [9]). On the other hand, even the traditional fuzzy logic-based routing algorithm has similar performance on selecting the next hop relay node with the BCFL, but considering the number of the fuzzy if-then rules, the BCFL will have greater advantage than the traditional fuzzy-based routing algorithm. As shown in Figure 6, in the traditional fuzzy-based routing algorithm, the number of if-then rules increases sharply with the increasing of the linguistic variables and the number of cross-layer parameters; moreover, this increase is exponential. On the contrary, in the BCFL, the number of fuzzy rules will stay constant when the cross-layer parameters increase (Figure 6a), and even when the linguistic variables increase, the growing of the fuzzy if-then rules is linear (Figure 6b), which is much less compared to the traditional fuzzy logic-based routing algorithm. The Figure 6a,b demonstrate that the traditional fuzzy logic routing algorithm cannot handle multiple constraints. If the number of cross-layer parameters is large, the number of if-then rules will become too large to be acceptable. Moreover, the fuzzy rules have great effect on the fuzzy inference system performance, so an appropriate fuzzy rule is very important to the fuzzy logic system. For this point of view, the BCFL can reduce the complexity of the algorithm greatly; more importantly, the rules of the new algorithm are clear and fixed, which makes it easy to design and more accurate.

An Example Scenario for Multiple Constrains
The performance of the BCFL under multiple constraints will be shown in this section. From this scenario, we can find the greater advantage of the BCFL more directly.
In this simulation, we consider five nodes as the candidates of the next hop relay nodes and seven cross-layer parameters for each node. So the cross-layer parameter matrix is a 5 × 7 matrix. This matrix is generated by the function rand() in MATLAB. The parameters are shown in Table 6.  The result of this scenario is shown in Figure 7.  From Figure 7, we can find that node 5 has the best performance among all the candidate nodes; as shown in Table 6 and the line graph of dispersion in Figure 7, the cross-layer parameters of node 5 are more balanced than the other nodes. From the line graph of utility in Figure 7, we can conclude that the performance of node 3 is better than node 1, node 1 has the better performance than node 4, and the performance of node 2 is the worst in these nodes. The simulation result is consistent with the character of the cross-layer parameters in different nodes, which is shown in the histogram and the line graph of dispersion in Figure 7.
The Table 6 indicates that the parameters of node 5 are not always the highest among all of the nodes, but they are the most balanced, which can be found in the line graph of dispersion in Figure 7. The line graph of dispersion demonstrates that the node whose parameters dispersion is small will have high probability to be the next hop relay node, and vice versa, because the small dispersion leads to the balanced performance.
In this scenario, as the number of cross-layer parameter is seven, so for the optimization based routing algorithm, the unknown variables and the functions are at least seven, then the calculation will be extremely complex; for the traditional fuzzy logic-based routing algorithm, when there are seven parameters in the system, the number of if-then rules is 2187 (assuming that the number of linguistic variables is three), which is unacceptable. However, for the BCFL, the number of if-then rules is constant and the same with the number of the linguistic variables (in BCFL, the number of if-then rules is seven), which is much simpler than the other two algorithms. This example also illustrates the huge advantage of the new fuzzy logic-based routing algorithm.

Conclusions
In this paper, we propose a new fuzzy logic-based routing algorithm (the BCFL routing algorithm). The innovations of this algorithm are: (1) we use the parameter dispersion rather than the absolute parameter value as the input of the fuzzy logic inference system, which can reduce the complexity of the algorithm observably; (2) the dispersion formula can guarantee that when the order of magnitude changes. the dispersion will remain unchanged; (3) the parameter whose dispersion is large will have small weight and whose dispersion is small will have large weight. According this, the BCFL can achieve some noble properties that the traditional routing algorithms cannot obtain: • Simply, the if-then rules of the BCFL are very simple and they will stay constant with the increase in the constraints; • Efficiently, the BCFL has excellent capability to deal with the multiple constraints without increasing the complexity; • Adaptively, the BCFL can adapt to the changing of the network conditions and topology, especially in the underwater wireless sensor network in which the network conditions and topology change frequently; • Balanced, the BCFL can get a more balanced solution than the traditional algorithms.
The BCFL is compared with the optimization-based routing algorithm (the algorithm used in [9]) and the traditional fuzzy logic-based routing algorithm (the algorithm used in [19,20]) (in Section 5.1). In addition, we also discuss the performance of the BCFL under multiple constraints (in Section 5.2). The simulation results in Section 5.1 show that the BCFL and the traditional fuzzy logic-based routing algorithm have similar performance, and they all better than the optimization-based routing algorithm. Moreover, even the performance of BCFL is similar with the traditional fuzzy logic-based routing algorithm, however, when considering the fuzzy rules, the BCFL has greater advantage than the traditional fuzzy logic-based routing algorithm used in [19,20]. In Section 5.2, the simulation results demonstrate the excellent capability of the BCFL on dealing with the multiple constrains, which is balanced, simple, and efficient.
However, in this paper, we propose the routing algorithm and evaluate the algorithm performance by simulation without a real scenario. Therefore, in the future, we will propose the routing protocol based on this algorithm and investigate the performance in a real scenario. In addition, the performance-related parameters of the routing protocol, such as the energy consumption, the time delay, and the memory use, etc. will be evaluated in future work. Moreover, how the routing protocol can work with the IEEE standards (such as the 802.15.4, 802.15.1) also deserves to be investigated. As the BCFL has remarkable performance on adapting to the dynamic changing of the network conditions and topology, in the future the BCFL can be used in the dynamic topology network, such as the mobile wireless sensor network, the ad hoc network, or the underwater wireless sensor network. Furthermore, this algorithm also can be used to select the cluster head in the cluster-based routing protocol.