Skip to main content

Cross layer resource allocation for fault-tolerant topology control in wireless mesh networks based on genetic algorithm

Abstract

Optimal topology control is an essential factor for efficient development of wireless mesh networks. For this purpose, a set of available tools can be exploited including power control, rate adaptation, channel assignment, channel selection, scheduling and routing. In most recent studies, only some of these tools are applied for throughput maximization. In this paper, we first propose a comprehensive cross-layer resource allocation modelĀ for topology control in which a complete set of available tools are exploited in order to guarantee the fairness, balancing and robustness, in addition to throughput maximization. This leads to an NP-complete problem; therefore, we propose a four steps heuristic method based on problem decomposition to reduce the computational complexity. In first step, the best K potential paths with disjoint vertices are extracted between each pair of nodes. In second step, a method based on the genetic algorithm is proposed in order to assign frequency channels to the links of these paths. This assignment procedure must preserve the essential links and must reduce the potential interference of the network. In third step, best compatible configurations are extracted on each frequency channel using power control and rate adaptation. It must be performed such that minimizes the power consumption, maximizes the transmission rate and provides the transmission rate balancing on the links. In last step, a cross-layer method is proposed for selecting the best path between each pair of nodes such that throughput maximization, fairness, and balancing on nodes and frequency channels are met. Validation in terms of numerical results demonstrates the efficiency of our proposed method for topology control in wireless mesh networks.

1 Introduction

Recently, there is a growing interest in providing multimedia and wideband services on wireless networks. In this regard, wireless mesh networks have attracted much attention. These networks are classified as multi-hop networks and provide significant benefits including low-cost deployment, robustness and simple configuration [1,2,3]. In order to guarantee the quality of service in wireless mesh networks, the optimal resource allocation and topology control is essential [4, 5]. To this end, extensive research has been performed to modify the existing algorithms and to develop the novel algorithms.

1.1 Motivation

A wireless mesh network is composed of wireless mesh routers connected to each other by wideband connections. Mesh routers are fixed nodes that play both the role of data routing and providing access points for network clients. With the development of technology, wireless mesh routers are equipped with several radio interfaces capable of rate and power adjustment. Although, increasing the transmission power leads to the increasing transmission rate, it increases the interference and therefore, reduces the number of simultaneous transmissions [3]. Moreover, several non-overlapping channels are available in these networks where the efficient assignment of these channels to the radio interfaces results in throughput improvement [6, 7]. Consequently, the problem of trade-off between power control and rate adaptation and efficient channel assignment must be addressed in wireless mesh networks. This procedure may result in more than one common channel between two nodes producing a multi-graph topology for the network. Therefore, the proper selection of frequency channels is essential for increasing the network performance [8].

Since the number of frequency channels is limited, the simultaneous transmission on some links with the same channel is impossible. In order to reduce the co-channel interference, the power control and rate adjustment must be used. Moreover, the interfering transmissions can be scheduled on different time slots using a time-based scheduling algorithm. As a result, the optimal allocation of transmissions to the time slots along with the power control and rate adaptation is another problem that should be considered. Finally, the cross-layer routing together with the layer-2 tools including channel assignment and selection, scheduling, power control and rate adaptation are essential for performance improvement. In most studies [4, 5, 9,10,11,12,13,14,15,16,17], only some of the available tools are exploited for efficient allocation of resources. Our proposed method includes a comprehensive set of tools to improve the network operation.

Based on the application of wireless mesh network, the objectives like throughput maximization, fairness between traffic demands, balancing of frequency channels utilization, and node utilization balancing must be considered. However, only throughput maximization has been investigated in most researches [9,10,11,12,13,14,15,16,17]. This can result in some serious problems in the network. Firstly, because of the imbalance in resource utilization, the network congestion is occurred in some areas while the other areas carry low volume of traffic. Secondly, the fairness between traffic demands is not established and therefore, some traffic demands are not satisfied. Thirdly, the density of mesh routers is usually low and the traffic volumes are high; therefore, the failure of a router, even for a moment, greatly increases the packet losses. For this reason, in addition to the above-mentioned objectives, the robustness of the network against failures should also be considered. According to the definition provided in [18], if the network graph is K-Connected, the network will remain connected even after the failure of fewer than K nodes. Therefore, wireless mesh networks must be designed such that the K-Connectivity feature of the graph is guaranteed.

1.2 Methods

In this paper, we first introduce the problem of Fault-Tolerant Topology Control with Throughput Maximization, Balancing and Fairness (FTTC-TMBF) in which a comprehensive cross-layer resource allocation problem is modeled for topology control. In this model, a complete set of topology control tools are used including power control, rate adaptation, channel assignment, channel selection, scheduling and routing. Here, we define the objective function with the aims of throughput maximization, frequency channel utilization balancing, node utilization balancing, fairness and robustness against failures.

As it has been pointed out in [13, 14], the power control in wireless mesh network is NP-complete. This issue is a subset of the topology control problem that has been studied in this paper; therefore, FTTC-TMBF is NP-complete and the computational complexity of FTTC-TMBF increases exponentially with any increase in the network size. In this paper, we propose the Heuristic FTTC-TMBF (HFTTC-TMBF) method that is composed of four steps. In first step, we suggest an appropriate objective function to select the best K disjoint paths between each pair of nodes. This function minimizes the number of hops and the consumed power and also takes into account the node utilization balancing. In next step, the Genetic-Based Link Channel Assignment (GB-LCA) algorithm is proposed for assigning channels to links such that potential interference is minimized. In third step, we use the Genetic-Based Compatible Set Formation (GB-CSF) algorithm for extracting the set of common-channel links with minimum interference. For this purpose, power control and rate adaptation tools are employed and the cost function is minimized by using the genetic algorithm for each compatible set of links. Finally, we introduce the Genetic Based Cross Layer Paths Selection (GB-CLPS) algorithm, in which the best paths between each pair of nodes are selected by considering throughput maximization, fairness and balancing on frequency channels and nodes. The proposed algorithms of this paper is implemented in a centralized manner. Since the topology of wireless mesh networks are nearly fixed, the centralized implementation is a proper choice.

The rest of the paper is organized as follows. Related studies are reviewed in section 2. Section 3 defines the model and assumptions of the study. The cross-layer topology optimization problem is formulated in section 4. The details of HFTTC-TMBF solution are provided in section 5. The simulation results are analyzed in section 6. Finally, the paper is concluded in Section 7.

2 Related work

In recent years, extensive research has been performed on cross-layer design of wireless mesh networks. In [9], the authors exploited the Mixed-Integer Linear Programming (MILP) to model throughput optimization in wireless mesh networks based on all available tools including power control, rate adaptation, channel assignment and routing. For this reason, it is a suitable choice to be compared with our proposed approach. In [9], the optimization process is divided in two phases. In the first phase, the authors find an optimum time-slot assignment for a scenario with a single shared channel, taking into consideration the routing. In the second one, starting from the first phase solution, a complete solution is built up for the multi-channel multi-radio scenario. Since this problem is NP-complete, a heuristic method based on the compatible configurations is proposed in which all the links that are feasible to transmit on the same channel at the same time are extracted. The advantage of the model presented in [9] is its completeness because it considers all available tools and is the first complete model introduced in this field. However, its disadvantage is that its objective is only throughput maximization and it does not consider the balancing, fairness and robustness against failures that are very important in WMNs. In our proposed model FTTC-TMBF, we have added the balancing, fairness and K-connectivity feature to themodel introduced in [9]. In addition, we presented a four-step solution where in first step, a heuristic method and in second to forth ones, a solution based on the genetic algorithm are used. In summary, we have proposed a comprehensive model in FTTC-TMBF to optimize the wireless mesh networks in which the objectives of throughput maximization, balancing, fairness and K-connectivity is considered, in addition to using all available tools; while, the model introduced in [9], only have considered the objective of throughput maximization. Moreover, in comparison to [9], we have proposed HFTTC-TMBF in which a heuristic method and genetic algorithm is used for solving the problem.

In 2010, Luo et al. [10] developed two computational tools for joint optimization of rate control, power control, scheduling and routing. Moreover, they studied the relationship between frequency reuse and network performance as well as the benefits of multi-hop against single-hop. The tools developed by Luo et al. are based on the column generation and series solution of the problem, which produces the suboptimal solution in an acceptable time. In [9, 10], objectives such as fairness, balancing and robustness against failures are not considered.

In [11, 12], the authors exploited the MILP and formulated the problem of gateway nodes selection along with the power control, routing and time slot assignment to maximize the service level of the nodes. They proposed a heuristic method to solve the problem in a serial manner, which is composed of several steps. The issues of rate adaptation and channel assignment/selection are not considered in these references.

Hedayati et al. [13], proposed a centralized approach to optimize the power consumption and rate adaptation with the aim of throughput maximization. They proposed a distributed version of their algorithm in [14] where useful tools such as channel assignment and routing are not used. In [15], the problem of robust topology control in multi-channel multi-radio wireless mesh networks is investigated. The authors formulated the problem in the form of a Mixed-Integer Non-Linear Program (MINLP) to maximize the end-to-end rate by considering the constraints of routing, co-channel interference and frequency channel switching. In order to reduce the computational complexity of the problem, the authors proposed a heuristic method, which decomposes the problem, and then a binary search algorithm is used to find the sub-problem solution. However, some objectives like fairness and balancing are not considered in any of the discussed references.

In [16, 17], the fairness objective is investigated in addition to the throughput maximization. The authors in [16], developed a model and then solved it by using the serialization method. In this reference, the network is assumed to be single-radio single-channel and single-rate; hence, the channel assignment and rate adaptation problems are ignored. In [17], differentiation among traffic flows is investigated such that the minimum fairness among different flows is guaranteed. This leads to the efficient distribution of bandwidth between clients. However, the effect of power control, rate adaptation and channel assignment are not considered in this work.

In [19], we proposed a cross layer framework for the optimal topology control where different tools such as power control, rate adaptation, scheduling, channel assignment and routing tools have been used to achieve the goals such as throughput improvement and balancing. In this paper, robustness against failure and node utilization have not been modeled appropriately. Moreover, the issue of fairness is not considered. In [20], we have represented a heuristic method for topology control. However, some objectives like fairness and balancing have not been considered implicitly in this reference.

In [21, 22], the throughput maximization and balancing objectives are investigated. The authors in [21] proposed a heuristic method by using the channel selection and rate adaptation tools. In [22], the authors indicated that the ad hoc routing methods are not appropriate for wireless mesh networks. They proposed a novel routing method with the aim of balancing improvement. However, none of these references has considered the complete set of tools and objectives.

Due to the computational complexity of the cross-layer optimization problem, various meta-heuristic methods have been proposed in recent studies [23,24,25]. In [23], a new routing method named MNSGA-II is proposed in which a Genetic Algorithm (GA) procedure is used to extract the best paths with the aims of minimizing the number of transmissions and delay. However, the other objectives and tools are not considered. In [24], we proposed a GA-based method for power and rate control along with scheduling in the wireless mesh networks. The objective function of this method only includes the minimization of the number of time slots. Moreover, the routing and channel assignment are not considered. The authors in [25] investigated multicast routing and channel assignment problems simultaneously using a GA-based method in which power control and rate adaptation tools are ignored. In this method, the multicast trees are determined at first using differential evolution technique and then the channel assignment is performed by using a GA-based method. While the throughput maximization and fairness are considered in this reference, the balancing factor is not considered.

In [26,27,28], various methods of topology modification have been proposed in order to preserve the network robustness against failures. The authors in [26] proposed a new protocol for topology control in wireless mesh network of hand-held devices. They selected a dominant set of interconnected nodes where the routing function is active in these nodes. This protocol results in the reduction of collision, overhead, interference and energy consumption. However, the network is assumed single-channel, in which each node has a simple radio interface with no rate and power adjustment capability. In [27], Peng et al. proposed a linear network coding based fault-tolerant routing, which can recover the lost packets by the source. This method, by using multi-path routing and random linear network coding improves the conventional node selection methods. Another topology control method is investigated in [28], where the authors have created a K-Connected graph based on the channel assignment and routing. In these references, the authors have studied only some of the objectives which does not include the fairness and balancing.

Reviewing the previous references, it seems that proposing a comprehensive model for optimum resource allocation and topology control is still an open issue in wireless mesh networks. In this paper, we investigate the problem of topology control in wireless mesh networks which includes the following contributions,

  • A comprehensive cross-layer model for topology control problem is developed in which tools including power control, rate adaptation, channel assignment and selection, scheduling and routing are used.

  • A complete set of objectives such as throughput maximization, balancing and fairness is considered.

  • A decomposition-based heuristic method is proposed in order to reduce the computational complexity of the problem.

  • A new routing metric is introduced to determine the best K potential individual paths between node pairs based on the K-Connectivity feature

  • A channel assignment method based on the genetic algorithm is proposed to reduce the potential interference while preserves the K-Connectivity feature of the network

  • Genetic algorithm is used for power control and rate adaptation in order to determine the compatible links.

  • A heuristic method based on genetic algorithm is introduced for selecting the best path in order to provide fairness and balancing.

3 Network model and assumptions

In this paper, we model the network with a directed graph Gā€‰=ā€‰(V,ā€‰E) where Vā€‰=ā€‰{v1,ā€‰v2,ā€‰v3,ā€‰ā€¦,ā€‰vn}represents n nodes (wireless mesh routers) placed in a given area and E denotes the set of links between the nodes. In order to determine E, the interference model should be defined. In [29], two different interference models are introduced including the protocol interference model and physical interference model. The first model is specified with transmission range and interference range parameters in which all nodes in the transmission range of a given node can receive its messages correctly. In this model, if all messages are transmitted on the same frequency channel, the transmission on a given link can lead to interference on all links placed in the interference range of the transmitting node. The sufficient condition for the existence of a link between nodes i and j in the physical interference model can be written as SINRijā€‰ā‰„ā€‰Ī³(Ļ) in which Ī³(Ļ) represents a threshold level dependent on transmission rate and SINR that is defined as,

$$ {SINR}_{ij}=\frac{p_{ij}\;{G}_{ij}}{N_0+\sum \limits_{\forall {e}_{mn}\in E\backslash {e}_{ij}}{p}_{mn}{G}_{mj}} $$
(1)

Here N0 is the thermal noise power, pijis the transmission power from node i to j, and Gij is the propagation gain, such that Gijā€‰=ā€‰(1/dij)Īµ, where Īµ is a parameter dependent on the shadowing and fading phenomena and dij is the geometric distance between two nodes i and j. Moreover, eij represents the link between two nodes i and j. The second term of the denominator represents the interference resulting from simultaneous transmission of other links with the transmission from i to j over the same frequency channel. It is clear that for successful reception at receiver node j with rate Ļ, the SINRij must be greater than or equal to Ī³(Ļ). In order to calculate the denominator of SINRij, we ignore the effect of links that the receiver j is placed outside the interference range of their transmitters [20].

Here, we assume that node i is equipped with Iniradio interfaces each has an omnidirectional antenna. Each node transmits with one of the available rates Rā€‰=ā€‰{Ļ1,ā€‰Ļ2,ā€‰ā€¦,ā€‰ĻM|Ļ1ā€‰<ā€‰Ļ2<. ā€¦ā€‰<ā€‰ĻM}, and selects its transmission power continuously from [0,ā€‰Pmax]. Moreover, one of the available non-overlapping frequency channels Ī©ā€‰=ā€‰{Ļ‰i|1ā€‰ā‰¤ā€‰iā€‰ā‰¤ā€‰H}is assigned to each radio interface. In order to prevent the intra-node interference, different channels must be assigned to radio interfaces of each node; this means that each node can simultaneously transmit on all of its radio interfaces. In this paper, we assume a schedule-based MAC protocol according to the TDMA with the maximum number of time slots in a time frame is represented by Tmax. If Q is the set of node pairs which have the traffic request for transmission, then each traffic flow associated to the source and destination pair (u,ā€‰v)ā€‰āˆˆā€‰Q is assumed to be unicast, where TDuv represents the amount of traffic demand.

As mentioned before, robustness against failures requires the network graph to be K-Connected. In [30], Penrose proved that if the minimum degree of a network graph is K, the network is K-Connected with high probability. Therefore, the minimum transmission power of each node i with degree degiis,

$$ {P}_{\mathrm{i}}^{min}=\mathit{\min}\left(P\in \left[0,{P}^{\mathrm{max}}\right]\kern0.24em \left|\;{\mathit{\deg}}_i\right.\ge K\right)\kern0.6em ;\forall i\in \boldsymbol{V} $$
(2)

In this paper, it is assumed that the network graph is potentially K-Connected in the condition of minimum transmission rate and single frequency channel. Mengerā€™s theory says that there should be K paths with distinct vertices between each pair of the nodes to guarantee the K-Connectivity feature of the network [31].

4 Fault-tolerant topology control with throughput maximization, balancing and fairness (FTTC-TMBF)

In this section, a comprehensive cross-layer model for topology control named FTTC-TMBF is introduced. In order to model the problem, some variables are defined as follows:

  • \( {X}_{ijk}^{\omega t} \) is a binary variable which is equal to 1 if at least one packet in time slot t and frequency channel Ļ‰ is transmitted from node i to node j with rate Ļk.

  • \( {P}_{ij}^t \) is a real number from [0,ā€‰Pmax] which shows the transmission power of link eijin time slot t .

  • \( {f}_{ijt}^{uv} \)represents the amount of traffic on link eijthat belongs to the traffic session (u,ā€‰v)ā€‰āˆˆā€‰Q in time slot t.

Table 1 summarizes all notations that will be used in this section. By defining these variables, problem is formulated as follows.

Table 1 List of some notations used in this paper

In FTTC-TMBF, the objectives are throughput maximization, fairness, balancing and robustness against failures; therefore, the objective function is:

$$ \kern2.17em \mathbf{\operatorname{Minimize}}\kern0.84em {\alpha}_1\frac{\sum \limits_{\forall {e}_{ij}\in \boldsymbol{E}}\sum \limits_{\forall \omega \in \boldsymbol{\varOmega}}\sum \limits_{k=1}^M\sum \limits_{t=1}^{T_{\mathrm{max}}}{X}_{ij k}^{\omega t}}{TN_a^{\mathrm{max}}}+{\alpha}_2\left(\frac{\sigma_{SF}^2}{\sigma_{SF}^{2,\max }}\right)+{\alpha}_3\left(\frac{\sigma_n^2}{\sigma_n^{2,\max }}\right)+{\alpha}_4\left(\frac{\sigma_c^2}{\sigma_c^{2,\max }}\right) $$
(3)

In the objective function (3), throughput maximization, fairness, nodes utilization balancing and frequency channel utilization balancing are represented by four terms.

A- Throughput maximization - Since the matrix of traffic demands is specified, the throughput maximization is equivalent to minimizing the number of time slots in which the links are transmitting the data and is considered in first term of (3). In this equation, \( {TN}_a^{\mathrm{max}} \)is the maximum number of time slots in which the links are transmitting data.

B- Fairness between traffic flows - If only maximizing the total throughput is considered in the objective function, some sessions may receive the maximum service rate while the others get much less. In this paper, to provide fairness between traffic sessions, a satisfaction factor for each traffic session (u,v) is defined as (4),

$$ {SF}_{uv}=\frac{C_{uv}}{TD_{uv}}\kern11.51999em ;\forall \left(u,v\right)\in \boldsymbol{Q} $$
(4)

In order to provide fairness, the variance of satisfaction factor should be minimized. In (4), Cuv is the average capacity per time slot for the flow from u to v that is defined as (5),

$$ {C}_{uv}=\frac{1}{TN_{uv}}\sum \limits_{t=1}^{T_{\mathrm{max}}}\sum \limits_{\forall {e}_{ij}\in \mathbf{E}}\sum \limits_{\forall \omega \in \boldsymbol{\Omega}}\sum \limits_{k=1}^M{Z}_{ij t}^{uv}\times {X}_{ij k}^{\omega t}\times \upsilon \left({\rho}_k\right)\kern1.92em ;\forall \left(u,v\right)\in \boldsymbol{Q} $$
(5)

when TNuv is the maximum number of time slots in which the flow from u to v is active. In (3), parameter \( {\sigma}_{SF}^{2,\max } \) is the maximum variance of satisfaction factor and \( {\sigma}_{SF}^2 \) is the variance of satisfaction factor as defined by (6),

$$ {\sigma}_{SF}^2=\frac{1}{\left|\boldsymbol{Q}\right|}\sum \limits_{\forall \left(u,v\right)\in \boldsymbol{Q}}{\left({SF}_{uv}-\overset{\_}{SF}\right)}^2 $$
(6)

where, |Q| represents the number of traffic demands in the network and \( \overset{\_}{SF} \) is the average of satisfaction factor between different traffic demands resulting from \( \overset{\_}{SF}={\sum}_{\forall \left(u,v\right)\in \boldsymbol{Q}}{SF}_{uv}/\left|\boldsymbol{Q}\right| \).

C- Channel utilization balancing - When the objective function only includes the fairness and throughput factors, the balancing in frequency channel utilization is severely affected. In other words, congestion may occur in one frequency channel, while the others carry a low volume of traffic. Therefore, minimizing the variance of channel utilization (\( {\sigma}_c^2 \)) must also be considered in the objective function. For this purpose, we first define the amount of channel utilization as follows,

$$ {U}_c^{\omega }=\sum \limits_{t=1}^{T_{\mathrm{max}}}\sum \limits_{\forall {e}_{ij}\in E}\sum \limits_{k=1}^M\upsilon \left({\rho}_k\right)\times {X}_{ij k}^{\omega t}\kern7.079995em ;\forall \omega \in \boldsymbol{\Omega} $$
(7)

The variance of \( {U}_c^{\omega } \)is calculated from (8),

$$ {\sigma}_c^2=\frac{1}{\left|\boldsymbol{\Omega} \right|}\sum \limits_{\forall \omega \in \boldsymbol{\Omega}}{\left({U}_c^{\omega }-{\overline{U}}_c\right)}^2\kern0.24em $$
(8)

where, \( {\overline{U}}_c={\sum}_{\forall \omega \in \boldsymbol{\Omega}}{U}_c^{\omega }/\left|\boldsymbol{\Omega} \right| \)is the average of frequency channel utilization.

D- Node utilization balancing - Similar to the balancing of frequency channel utilization, minimizing the variance of node utilization (\( {\sigma}_n^2 \)) is also considered in the objective function. The purpose of node utilization balancing is distributing traffic eventually across different nodes, but channel balancing means distributing traffic on different frequency channels. By defining the node utilization as (9), its variance is calculated from (10),

$$ {U}_n^i=\frac{1}{In_i}\sum \limits_{t=1}^{T_{\mathrm{max}}}\sum \limits_{\forall \omega \in \boldsymbol{\Omega}}\left(\sum \limits_{\forall {e}_{ij}\in \boldsymbol{E}}\sum \limits_{k=1}^M\upsilon \left({\rho}_k\right)\times {X}_{ij k}^{\omega t}\;\right.\left.+\sum \limits_{\forall {e}_{qi}\in \boldsymbol{E}}\sum \limits_{k=1}^M\upsilon \left({\rho}_k\right)\times {X}_{qi k}^{\omega t}\right)\kern1.56em ;\forall i\in \boldsymbol{V} $$
(9)
$$ {\sigma}_n^2=\frac{1}{n}\sum \limits_{\forall i\in \boldsymbol{V}}{\left({U}_n^i-{\overline{U}}_n\right)}^2 $$
(10)

where, \( {\overline{U}}_n={\sum}_{\forall i\in \boldsymbol{V}}{U}_n^i/n \)shows the average of node utilization for all nodes in the network. To adjust the importance of each of the four objective factors in (3), we use the coefficients Ī±i; iā€‰=ā€‰1, ā€¦, 4, where āˆ‘iā€‰=ā€‰1, ā€¦, 4Ī±iā€‰=ā€‰1. It is important to note that all of these objective factors must be normalized before summation.

The constraints of FTTC-TMBF are shown below in eqs. (11) to (23). These constraints can be categorized in three classes: second layer constraints, third layer constraints and cross-layer constraints. The second layer constraints are provided in (11) to (14). Eq. (11) shows the constraint of SINR for transmission on link eij in frequency channel Ļ‰ and time slot t given that some other links are active at the same frequency channel and the same time slot. The lower bound of transmission power on each link is shown in (12). This quantity should be higher than the minimum power required for transmitter node to be K-degree. Moreover, it should be higher than the minimum power required for a successful reception assumed no other link is active with the same frequency channel. The half-duplex property of each radio interface is represented in (13). According to (14), the maximum number of concurrent connections in a node is restricted to the number of its radio interfaces.

$$ {P}_{ij}^t\;{G}_{ij}\ge \gamma \left({\rho}_k\right)\times {X}_{ij k}^{\omega t}\times \left({N}_0+\sum \limits_{\forall {e}_{mn}\in E\backslash {e}_{ij}}\sum \limits_{h=1}^M{P}_{mn}^t{G}_{mj}{X}_{mn h}^{\omega t}\right)\kern0.72em ;\forall {e}_{ij}\in \boldsymbol{E},\forall t\in \left\{1,2,\dots, {T}_{\mathrm{max}}\right\},\forall k=1,2,\dots, M,\forall \omega \in \boldsymbol{\Omega} $$
(11)
$$ {P}_{ij}^t\ge \max \left(\;\left(\frac{\gamma \left({\rho}_k\right)\times {N}_0\times {X}_{ij k}^{\omega t}}{G_{ij}}\right),{P}_i^{\mathrm{min}}\right)\kern4.559998em ;\forall {e}_{ij}\in \boldsymbol{E},\forall t\in \left\{1,2,\dots, {T}_{\mathrm{max}}\right\},\forall k=1,2,\dots, M,\forall \omega \in \boldsymbol{\Omega} $$
(12)
$$ \sum \limits_{\forall {e}_{ij}\in \boldsymbol{E}}\sum \limits_{k=1}^M{X}_{ij k}^{\omega t}+\sum \limits_{\forall {e}_{jq}\in \boldsymbol{E}}\sum \limits_{k=1}^M{X}_{jq k}^{\omega t}\le 1\kern6.479996em ;\forall t\in \left\{1,2,\dots, {T}_{\mathrm{max}}\right\},\forall j\in \boldsymbol{V},\forall \omega \in \boldsymbol{\Omega} $$
(13)
$$ \sum \limits_{\forall \omega \in \boldsymbol{\Omega}}\left(\sum \limits_{\forall {e}_{ij}\in \boldsymbol{E}}\sum \limits_{k=1}^M{X}_{ij k}^{\omega t}+\sum \limits_{\forall {e}_{jq}\in \boldsymbol{E}}\sum \limits_{k=1}^M{X}_{jq k}^{\omega t}\right)\le {In}_j\kern3.839998em ;\forall j\in \boldsymbol{V},\forall t\in \left\{1,2,\dots, {T}_{\mathrm{max}}\right\} $$
(14)

For third layer, the constraints of packet delivery in end-to-end traffic flows are considered by (15)ā€“(18). Constraint (15) represents that the total traffic flow exported from the source node (or imported to the destination node) in every session must be equal to the amount of traffic demand at that session. As mentioned before, there should be K disjoint paths between each node pair of set Q to guarantee the K-Connectivity feature of the network. This constraint is showed in (16)ā€“(18), where \( {Z}_{ijt}^{uv} \)is a binary parameter which is equal to 1 if \( {f}_{ijt}^{uv}>0 \). Constraint (16) shows that the output traffic of each source node routes to the K individual paths. Similarly, (17) shows that the input traffic to each destination node is delivered from K distinct paths. Finally, (18) describes that the traffic between u and v passes from a middle node no more than once. These constraints guarantee the distinction of paths of each traffic flow.

$$ \sum \limits_{t=1}^{T_{\mathrm{max}}}\left(\sum \limits_{\forall j\in V}{f}_{ijt}^{uv}-\sum \limits_{\forall q\in V}{f}_{qit}^{uv}\right)=\left\{\begin{array}{l}{TD}_{uv}\kern1.56em ;i=u\\ {}-{TD}_{uv}\kern1.2em ;i=v\\ {}0\kern1.92em ; otherwise\end{array}\right.\kern2.759999em ;\forall i\in V,\forall \left(u,v\right)\in \boldsymbol{Q} $$
(15)
$$ \sum \limits_{\forall j\in \boldsymbol{V}}{Z}_{ujt}^{uv}\ge K\kern11.39999em ;\forall \left(u,v\right)\in \boldsymbol{Q}, $$
(16)
$$ \sum \limits_{\forall i\in \boldsymbol{V}}{Z}_{ivt}^{uv}\ge K\kern11.51999em ;\forall \left(u,v\right)\in \boldsymbol{Q}, $$
(17)
$$ \sum \limits_{\forall i\in \boldsymbol{V}\setminus u,v}{Z}_{ijt}^{uv}\le 1,\sum \limits_{\forall m\in \boldsymbol{V}\setminus u,v}{Z}_{jmt}^{uv}\le 1\kern7.199995em ;\forall j\in \boldsymbol{V}\setminus u,v, $$
(18)

The cross-layer constraints between network and MAC layers are expressed in (19) and (20). Constraint (19) represents the relationship between variables of second and third layers. It implies that the total traffic transmitted on a link cannot be more than the maximum capacity of that link regarding the transmission rate, where Ļ…(Ļk) represents the amount of transmitted traffic in one time slot at rate Ļk. Constraint (20) indicates that if some traffic demands pass through a link, it should be active on at least one time slot with the assigned frequency channel and transmission rate. Finally, the variations of decision variables are given in (21)ā€“(23).

$$ \sum \limits_{\forall \left(u,v\right)\in \boldsymbol{Q}}{f}_{ij t}^{uv}\le \sum \limits_{\forall \omega \in \boldsymbol{\Omega}}\sum \limits_{k=1}^M\upsilon \left({\rho}_k\right)\times {X}_{ij k}^{\omega t}\kern4.559998em ;\forall {e}_{ij}\in \boldsymbol{E},\forall t\in \left\{1,2,\dots, {T}_{\mathrm{max}}\right\} $$
(19)
$$ {Z}_{ij t}^{uv}\le \sum \limits_{\forall \omega \in \boldsymbol{\Omega}}\sum \limits_{k=1}^M{X}_{ij k}^{\omega t}\kern10.07999em ;\forall {e}_{ij}\in \boldsymbol{E},\forall \left(u,v\right)\in \boldsymbol{Q},\forall t\in \left\{1,2,\dots, {T}_{\mathrm{max}}\right\} $$
(20)
$$ {P}_{ij}^t\le {P}^{\mathrm{max}}\kern12.47999em ;\forall {e}_{ij}\in \boldsymbol{E},\forall t\in \left\{1,2,\dots, {T}_{\mathrm{max}}\right\} $$
(21)
$$ {X}_{ij k}^{\omega t}\in \left\{0,1\right\};\kern0.36em \forall {e}_{ij}\in \boldsymbol{E},\forall t\in \left\{1,2,\dots, {T}_{\mathrm{max}}\right\}\kern4.319998em ;\forall k=1,2,\dots, M,\forall \omega \in \boldsymbol{\Omega} $$
(22)
$$ {f}_{ij t}^{uv}\ge 0\kern13.07999em ;\forall t\in \left\{1,2,\dots, {T}_{\mathrm{max}}\right\},\forall \left(u,v\right)\in \boldsymbol{Q},\forall {e}_{ij}\in \boldsymbol{E} $$
(23)

5 The proposed heuristic solution for FTTC-TMBF problem

As mentioned before, the computational complexity of the proposed topology control problem is high. In order to reduce this complexity, we introduce HFTTC-TMBF which is based on decomposing the problem to four sub-problems including KPBP, GB-LCA, GB-CSF and GB-CLPS. The implementation of HFTTC-TMBF algorithm is shown in Fig. 1. In this section, the implementation of these sub-problems is presented. Table 2 summarizes all notations that will be used in this section.

Fig. 1
figure 1

The steps of HFTTC-TMBF

Table 2 List of notations used in HFTTC-TMBF

5.1 First step- K-potential best paths selection (KPBP)

With respect to the Menger theory, if a network graph is K-Connected, then the graph should have K paths with distinct vertices between each pair of nodes. To this end, we have proposed KPBP in [20] which finds the best K disjoint paths between each node pair of set Q such that the traffic delivery is guaranteed in the case of K-1 failures. In brief, the initial graph is formed based on the transmission with maximum power and minimum rate. Next, all of the vertices-disjoint paths between each node pair of set Q are extracted. To this end, the shortest path between the two nodes is obtained and all of the vertices and links of this path are removed. Then the second path is determined and removed from the graph. This procedure is continued until all paths are extracted. Finally using eq. (24) for each path, the best K paths between nodes are obtained. Since in this step, no traffic demand is on the links, the proposed metric has potentially find K disjoint paths. This metric is a combination of the hop counts, power consumption for transmission on the links of the path and amount of usage from each node in different paths. If the number of disjoint paths and indices of nodes on the lth path between two nodes u and v are shown by NoPuv and Pathuv, l ā€‰ā€‰; lā€‰=ā€‰1, ā€¦, NoPuv, respectively, then proposed cost function for choosing the best K potential paths is formulated in (24),

$$ {RCF}_{uv,l}={\alpha}_1{\widehat{H}}_{uv,l}+{\alpha}_2{\widehat{P}}_{uv,l}+{\alpha}_3{\widehat{B}}_{uv,l}\kern0.48em ,{\alpha}_1+{\alpha}_2+{\alpha}_3=1\kern2.879999em ;\forall u,v\in \mathbf{Q},l=1,2,\dots, {NoP}_{uv} $$
(24)

The first term of the cost function represents a generic routing measure which lead to the minimization of the number of hop counts. In (24), \( {\widehat{H}}_{uv,l} \) is the normalized value of the number of hops on the lth path between nodes u and v as defined in (25),

$$ {\widehat{H}}_{uv,l}=\frac{\left|{\boldsymbol{Path}}_{uv,l}\right|-1\;}{{\mathit{\operatorname{Max}}}_{\forall {1}^{\prime }=1,\dots, {NoP}_{uv}}\left({H}_{uv,{l}^{\prime }}\right)}\kern7.559995em ;\forall u,v\in \mathbf{Q},l=1,\dots, {NoP}_{uv} $$
(25)

Here,|Pathuv, l| indicates the dimension of the set Pathuv, l, and the denominator shows the maximum number of hops on different paths between two nodes used to normalize the number of hops.

If only the minimization of hop counts is considered, the paths with long hops are selected for data transmission, which lead to increasing the power consumption of transmitters and consequently more interference. Therefore, power minimization must be considered in defining routing measure. If we show the total potential power consumption of all links on the lth path between u and v with \( {P}_{uv,l}^{sum} \), and the maximum potential power consumption of these links with\( {P}_{uv,l}^{max} \), then \( {\widehat{P}}_{uv,l} \)is defined according to (26),

$$ {\widehat{P}}_{uv,l}=\frac{1}{2}\times \frac{P_{uv,l}^{sum}}{{\mathit{\operatorname{Max}}}_{\forall {l}^{\prime}\in \left\{1,2,\dots, {NoP}_{uv}\right\}}\left({P}_{uv,{l}^{\prime}}^{sum}\right)}+\frac{1}{2}\times \frac{P_{uv,l}^{max}}{{\mathit{\operatorname{Max}}}_{\forall {l}^{\prime}\in \left\{1,2,\dots, {NoP}_{uv}\right\}}\left({P}_{uv,{l}^{\prime}}^{max}\right)}\kern0.72em ;\forall u,v\in \mathbf{Q},l=1,\dots, {NoP}_{uv} $$
(26)

In order to determine \( {P}_{uv,l}^{sum} \)and \( {P}_{uv,l}^{max} \), the minimum transmission power on each link must be calculated from (1), assuming no other link is active simultaneously and the transmission is performed using the minimum rate. In eq. (26), the denominators of the first and second terms show the maximum value of total power consumption for different available paths and the maximum power consumption of links for different paths, respectively.

In order to balance the node utilization, we prefer to use the paths that their vertices are less used on other paths. In this way, the normalized balance factor \( {\widehat{B}}_{uv,l} \) is defined in (27),

$$ {\widehat{B}}_{uv,l}=\frac{1}{2}\times \frac{B_{uv,l}^{max}}{{\mathit{\operatorname{Max}}}_{\forall {l}^{\prime}\in \left\{1,2,\dots, {NoP}_{uv}\right\}}\left({B}_{uv,{l}^{\prime}}^{max}\right)}+\frac{1}{2}\times \frac{B_{uv,l}^{sum}}{{\mathit{\operatorname{Max}}}_{\forall {l}^{\prime}\in \left\{1,2,\dots, {NoP}_{uv}\right\}}\left({B}_{uv,{l}^{\prime}}^{sum}\right)}\kern0.36em ;\forall u,v\in \mathbf{Q},l=1,\dots, {NoP}_{uv} $$
(27)

For node nx on the lth path between two nodes u and v, if we show the number of its usage on other paths by\( {B}_{uv,l}^{n_x} \), then \( {B}_{uv,l}^{max} \) and \( {B}_{uv,l}^{sum} \) are defined as (28) and (29),

$$ {B}_{uv,l}^{max}={\mathit{\operatorname{Max}}}_{\forall {n}_x\in {\boldsymbol{path}}_{uv,l}}\left({B}_{uv,l}^{n_x}\right)\kern8.039994em ;\forall u,v\in \mathbf{Q},l=1,\dots, {NoP}_{uv} $$
(28)
$$ {B}_{uv,l}^{sum}=\sum \limits_{\forall {n}_x\in {\boldsymbol{path}}_{uv,l}}{B}_{uv,l}^{n_x}\kern9.599993em ;\forall u,v\in \mathbf{Q},l=1,\dots, {NoP}_{uv} $$
(29)

By applying the cost function (24) and extracting the K paths between each pair of nodes, the set of required links are achieved and stored in Ī“FTL.

5.2 Second step- genetic based links channel assignment (GB-LCA)

In section 5ā€“1, the set of essential links for preserving the K-connectivity feature of the graph is extracted and stored in Ī“FTL. In order to establish the transmission/reception on each link of the set Ī“FTL, there should be a common channel between two end nodes of the link. In this section, the genetic algorithm is used for assigning a channel to these links considering the limited number of radio interfaces in each node. In other words, if the end node i belongs to several links from set Ī“FTLand the number of radio interfaces of i are Ini, the total number of frequency channels assigned to this node cannot be greater than Ini. In the following, required elements for implementing GB-LCA are presented.

5.2.1 Genes, chromosome and population

In GB-LCA, the genes are assumed to be binary and represented by \( {X}_{ij\omega}^{g\tau} \). In each chromosome Ļ„from generation g, a gene takes the value of 1 if channelĻ‰ is assigned to the link eij. Chromosome is a set of genes that is defined as\( {\mathbf{C}}^{g\tau}=\left\{{X}_{ij\omega}^{g\tau}\left|\forall {e}_{ij}\in {\boldsymbol{\Gamma}}^{FTL},\forall \omega \in \boldsymbol{\Omega} \right.\right\} \). Each chromosome has nvā€‰=ā€‰|Ī“FTL|ā€‰Ć—ā€‰|Ī©| genes in which |Ī“FTL| and |Ī©| are dimension of set Ī“FTLand number of available frequency channels, respectively. Moreover, population is the set of np chromosomes that are produced in each generation of the algorithm implementation. The population of generation g is shown by Ggā€‰=ā€‰ć€ˆCgĻ„|Ļ„ā€‰=ā€‰1,ā€‰ā€¦,ā€‰np怉.

5.2.2 Cost function of GB-LCA

For each chromosome, the fitness function F(CgĻ„) is,

$$ F\left({\mathbf{C}}^{g\tau}\right)={\alpha}_1\frac{PI^{g\tau}}{PI^{g\max }}+{\alpha}_2\frac{\sigma_{PI}^{2, g\tau}}{\sigma_{PI}^{2,g\max }}\kern6.839995em ;\forall \tau =1,2,\dots, {n}_p $$
(30)

where, PIgĻ„is the potential interference on each chromosome Ļ„from generation g, which is defined as,

$$ {PI}^{g\tau}=\sum \limits_{\forall {e}_{ij}\in {\boldsymbol{\Gamma}}^{FTL}}\sum \limits_{\forall {e}_{mn}\in {\boldsymbol{\Gamma}}^{FTL}\operatorname{}{e}_{ij}}\sum \limits_{\forall \omega \in \boldsymbol{\Omega}}{P}^{\mathrm{max}}{G}_{mj}{X}_{ij\omega}^{g\tau}{X}_{mn\omega}^{g\tau} $$
(31)

This function is the total potential interference on receivers of all links in Ī“FTL. Moreover, \( {\sigma}_{PI}^{2, g\tau} \) in (30) represents the variance of potential interference on frequency channels in each chromosome. If potential interference on each frequency channel is defined as (32),

$$ {PI}_{\omega}^{g\tau}=\sum \limits_{\forall {e}_{ij}\in {\boldsymbol{\Gamma}}^{FTL}}\sum \limits_{\forall {e}_{mn}\in {\boldsymbol{\Gamma}}^{FTL}\operatorname{}{e}_{ij}}{P}^{\mathrm{max}}{G}_{mj}{X}_{ij\omega}^{g\tau}{X}_{mn\omega}^{g\tau}\kern4.079998em ;\forall \omega \in \boldsymbol{\Omega}, $$
(32)

then the variance of potential interference would be,

$$ {\sigma}_{PI}^{2, g\tau}=\frac{1}{\left|\boldsymbol{\Omega} \right|}\sum \limits_{\forall \omega \in \boldsymbol{\Omega}}{\left({PI}_{\omega}^{g\tau}-{\overline{P}\overline{I}}^{g\tau}\right)}^2\kern7.559995em ;\forall \tau =1,2,\dots, {n}_p $$
(33)

where \( {\overline{P}\overline{I}}^{g\tau}={\sum}_{\forall \omega \in \boldsymbol{\Omega}}{PI}_{\omega}^{g\tau}/\left|\boldsymbol{\Omega} \right| \) is the average potential interference on all frequency channels. In (30), the terms are normalized by using appropriate maximum values. In other words, denominators of first and second terms show maximum potential interference and maximum variance of interference between all chromosomes of a generation, which can be obtained using (34) and (35), respectively.

$$ {PI}^{g\max }={\max}_{\forall {\tau}^{\prime }=1,\dots, {n}_p}\left({PI}^{g{\tau}^{\prime }}\right) $$
(34)
$$ {\sigma}_{PI}^{2,g\max }={\max}_{\forall {\tau}^{\prime }=1,\dots, {n}_p}\left({\sigma}_{PI}^{2,g{\tau}^{\prime }}\right) $$
(35)

To adjust the effect of each of the two objectives, we use the coefficients Ī±i; iā€‰=ā€‰1, 2 whereāˆ‘iā€‰=ā€‰1, 2Ī±iā€‰=ā€‰1.

The constraints of GB_LCA are defined in (36) and (37). Equation (36) shows that a channel should be assigned to each link of set. āˆ€eijā€‰āˆˆā€‰Ī“FTL. Limitation on the number of radio interfaces are given in (37).

$$ \sum \limits_{\forall \omega \in \boldsymbol{\Omega}}{X}_{ij\omega}^{g\tau}=1\kern3.99999em ;\forall {e}_{ij}\in {\boldsymbol{\Gamma}}^{FTL},\forall \tau =1,\dots, {n}_p $$
(36)
$$ \sum \limits_{\forall {e}_{ij}\in {\boldsymbol{\Gamma}}^{FTL}}\sum \limits_{\forall \omega \in \boldsymbol{\Omega}}{X}_{ij\omega}^{g\tau}+\sum \limits_{\forall {e}_{qi}\in {\boldsymbol{\Gamma}}^{FTL}}\sum \limits_{\forall \omega \in \boldsymbol{\Omega}}{X}_{qi\omega}^{g\tau}\le {In}_i\kern1.559998em ;\forall i\in \boldsymbol{V},\forall \tau =1,2,\dots, {n}_p $$
(37)

According to the definition of objective function (30) and constraints (36), (37), the cost function is defined as (38),

$$ COST\left({\mathbf{C}}^{g\tau}\right)=\left\{\begin{array}{l}F\left({\mathbf{C}}^{g\tau}\right)\kern1.32em ;\mathrm{if}\kern0.34em \mathrm{constraints}\ (36)\ \mathrm{and}\ (37)\ \mathrm{are}\ \mathrm{met}\\ {}\infty \kern2.879999em ;\mathrm{otherwise}\end{array}\right. $$
(38)

If the constraints (36) and (37) are established for each chromosome, COST(CgĻ„)becomes equal toF(CgĻ„); otherwise the cost of the assumed chromosome becomes infinity. After introducing the concept of gene, population and generation, now the implementation steps of GB-LCA are described below. These steps include the production of initial population, production and selection of next generation population, and the termination condition.

5.2.3 Production of the initial population

In order to produce the first-generation population G1, Genes of each chromosome should be initialized with respect to constraints (36) and (37). For this purpose, a common channel is assigned to one of the radio interfaces of each node. We assign channels randomly to the remaining radio interfaces such that different radios on each node have different channels. By assigning frequency channels to the end nodes of each link of set Ī“FTL, the genes of all chromosomes belonging to the first generation are initialized.

5.2.4 Next generation population

The potential population is produced by combining the chromosomes of the current generation, the children chromosomes, and the mutated chromosomes.

Children chromosomes

An important part of the genetic algorithm is to create a new solution called children. In order to produce the children chromosomes, the chromosomes of the parents are extracted through tournament selection mechanism. In this method, a set of nfa chromosomes from the current generation are chosen and the best one is selected as the first parent [32]. This parent is called father and denoted by Cgfa. The second parent (Cgma) is called mother and is obtained similarly. If we show the two chromosomes of ensuing children with \( {\mathbf{C}}_c^{g{\tau}_1} \) and \( {\mathbf{C}}_c^{g{\tau}_2} \), then each gene of these chromosomes is produced using crossover operator according to (39),

$$ {\displaystyle \begin{array}{l}{\overset{\frown }{X}}_{ij\omega}^{g{\tau}_1}=\left(1-{\vartheta}_{ij}\right){X}_{ij\omega}^{gfa}+{\vartheta}_{ij}{X}_{ij\omega}^{gma}\kern1.56em \\ {}\kern14.87999em ;\forall {e}_{ij}\in {\boldsymbol{\Gamma}}^{FTL},\forall \omega \in \boldsymbol{\Omega} \kern3.479999em \\ {}{\overset{\frown }{X}}_{ij\omega}^{g{\tau}_2}={\vartheta}_{ij}{X}_{ij\omega}^{gfa}+\left(1-{\vartheta}_{ij}\right){X}_{ij\omega}^{gma}\end{array}} $$
(39)

The coefficient Ļ‘ij is randomly selected as zero or one. In addition, \( {X}_{ij\omega}^{gfa} \) and \( {X}_{ij\omega}^{gma} \)are genes of the selected parents Cgfaand Cgma, respectively. This equation describes that the channel assigned to link eij(gene \( {\overset{\frown }{X}}_{ij\omega}^{g{\tau}_1} \)) is selected randomly among channels assigned to this link in parent chromosomes. Each time the crossover operator is run, two chromosomes are produced. In this problem, the number of children chromosomes is considered equal to nc.

Chromosomes resulting from mutation

Random variations of the chromosomes can decrease the time for achieving optimal solution. The mutation operator implements these random variations in GB-LCA. The resulting chromosome from the mutation is shown by \( {\mathbf{C}}_m^{g\tau} \). If the number of given chromosomes for mutation is denoted by nm, these chromosomes are selected randomly among the chromosomes of the current generation.

In order to implement the mutation operator in each selected chromosome, the genes are first categorized based on the corresponding links. The set of genes related to link eijare denoted as \( {X}_{ij\omega}^{g\tau}\kern0.84em ;\forall \omega \in \boldsymbol{\Omega} \). Therefore, the number of sets of genes is equal to |Ī“FTL| . If we denote the required mutation rate with Ī¼, nĪ¼ā€‰=ā€‰āŒˆĪ¼ā€‰Ć—ā€‰|Ī“FTL|āŒ‰ sets must be selected randomly. Then in each set and for each link eij, one of the genes \( {X}_{ij\omega}^{g\tau}\kern0.84em ;\forall \omega \in \boldsymbol{\Omega} \) is randomly set to 1 such that constraint (37) is satisfied.

Choosing the population of next generation

The next generation population includes three sets of current generation, the children chromosomes and the mutated chromosomes. Figure 2 shows how population of next generation is selected. If np, nc and nm represent the number of current generation, children and mutants, respectively, then the number of potential members of the next generation population is equal tonpā€‰+ā€‰ncā€‰+ā€‰nm. The number of chromosomes in each generation is equal to np; therefore, some parts of the potential population should be removed. To select the population of next generation, the described three sets of chromosomes are merged, and then np members with less cost are selected according to the cost function (38).

Fig. 2
figure 2

Next generation selection in GB-LCA

5.2.5 Termination condition

We propose the following condition to stop execution,

(40)

According to this equation, if the absolute value of the difference between minimum costs of the current and previous generations is less than , the algorithm is stopped. Then, the chromosomes with lower costs are chosen as the solution of the channel assignment problem. Thus, by executing the GB-LCA algorithm, frequency channels are assigned to the links of set Ī“FTL . This process can minimize the potential interference on each frequency channel, while at the same time satisfies the constraints (36) and (37).

5.3 Third step- genetic based compatible sets formation (GB-CSF)

In this section, we introduce the GB-CSF method for extracting all compatible sets. In each compatible set, the links can be active simultaneously without having interference on each other, such that minimizing the total transmission power and maximizing the total transmission rate is guaranteed. Moreover, the balancing of transmission rate between links is considered. GB-CSF algorithm is only implemented on the links with similar frequency channels; because other links with different frequency channels can be activated simultaneously without interfering with each other. If the links having frequency channelā€‰Ļ‰ā€‰āˆˆā€‰Ī© are represented with\( {\boldsymbol{\Gamma}}_{\omega}^{LCA} \), GB-CSF is executed on each set of \( {\boldsymbol{\Gamma}}_{\omega}^{LCA} \)iteratively. In each execution on \( {\boldsymbol{\Gamma}}_{\omega}^{LCA} \), a set of links with lower cost are determined. Then these links are eliminated from \( {\boldsymbol{\Gamma}}_{\omega}^{LCA} \)and the algorithm is executed again on the remained links. This procedure continues until no other link is remained in \( {\boldsymbol{\Gamma}}_{\omega}^{LCA} \). In the following, the execution procedure of GB-CSF for a specific set \( {\boldsymbol{\Gamma}}_{\omega}^{LCA} \)is described. For other frequency channels, the same procedure is repeated.

5.3.1 Genes, chromosome and population

In this problem, genes are represented with \( {P}_{ij}^{g\tau} \)which shows the transmission power of each link eijbelonging to \( {\boldsymbol{\Gamma}}_{\omega}^{LCA} \). Therefore, gene is a continues variable that can take a value in the interval [0,ā€‰Pmax]. As mentioned before, a chromosome is a set of nv genes which is defined as \( {\boldsymbol{S}}^{g\tau}=\left\{{P}_{ij}^{g\tau}\left|\forall {e}_{ij}\in {\boldsymbol{\Gamma}}_{\omega}^{LCA}\right.\right\} \). The number of members of each chromosome is equal to \( {n}_v=\left|{\boldsymbol{\Gamma}}_{\omega}^{LCA}\right| \)where \( \left|{\boldsymbol{\Gamma}}_{\omega}^{LCA}\right| \)is the dimension of set \( {\boldsymbol{\Gamma}}_{\omega}^{LCA} \). Moreover, the set of np chromosomes is produced in each generation g of the algorithm implementation. This set is shown by Ggā€‰=ā€‰ć€ˆSgĻ„|Ļ„ā€‰=ā€‰1,ā€‰ā€¦,ā€‰np怉.

5.3.2 Cost function of GB-CSF

In this problem, the fitness function F(SgĻ„) is defined as (41),

$$ F\left({\mathbf{S}}^{g\tau}\right)={\alpha}_1{\left(\sum \limits_{\forall {e}_{ij}\in {\boldsymbol{\Gamma}}_{\omega}^{LCA}}\frac{P_{ij}^{g\tau}}{P^{g\max }}\right)}^{-1}+{\alpha}_2\sum \limits_{\forall {e}_{ij}\in {\boldsymbol{\Gamma}}_{\omega}^{LCA}}\frac{\rho_{ij}^{g\tau}}{\rho^{g\max }}+{\alpha}_3{\left(\frac{\sigma_{\rho}^{2, g\tau}}{\sigma_{\rho}^{2,g\max }}\right)}^{-1}\kern0.72em ;\forall \tau =1,2,\dots, {n}_p $$
(41)

In this equation, the first to third terms are related to the total transmission power, the total transmission rate on the links, and the transmission rate balancing in a chromosome, respectively. For every gene of a chromosome, the corresponding transmission rate is determined using (42),

$$ {\rho}_{ij}^{g\tau}={\max}_{\forall k=1,\dots, M}\left({\rho}_k\kern0.36em \left|{SINR}_{ij}^{g\tau}=\frac{P_{ij}^{g\tau}\;{G}_{ij}}{\left({N}_0+\sum \limits_{\forall {e}_{mn}\in {\boldsymbol{\Gamma}}_{\omega}^{LCA}\backslash {e}_{ij}}{P}_{mn}^{g\tau}\;{G}_{mj}\right)}\ge \gamma \left({\rho}_k\right)\right.\right)\kern1.68em ;\forall {e}_{ij}\in {\boldsymbol{\Gamma}}_{\omega}^{LCA} $$
(42)

which is the maximum rate of each link eijto satisfy the SINR constraint. If this constraint is not satisfied for minimum transmission rate Ļ1, the given link cannot be activated simultaneously along with other links. If the only objective is to maximize the transmission rate, some links might have the maximum transmission rate, while the others receive the minimum rate. For providing the balancing, variance of transmission rate should be as small as possible. In (41), \( {\sigma}_{\rho}^{2, g\tau} \)is the transmission rate variance of links in the chromosome SgĻ„ of generation g defined as,

$$ {\sigma}_{\rho}^{2, g\tau}=\frac{1}{\left|{\boldsymbol{\Gamma}}_{\omega}^{LCA}\right|}\sum \limits_{\forall {e}_{ij}\in {\boldsymbol{\Gamma}}_{\omega}^{LCA}}{\left({\rho}_{ij}^{g\tau}-{\overline{\rho}}^{g\tau}\right)}^2 $$
(43)

in which, \( {\overline{\rho}}^{g\tau}={\sum}_{\forall {e}_{ij}\in {\boldsymbol{\Gamma}}_{\omega}^{LCA}}{\rho}_{ij}^{g\tau}/\left|{\boldsymbol{\Gamma}}_{\omega}^{LCA}\right| \)is the average transmission rate for all links of the chromosome Ļ„. All terms of (41) are normalized and then linearly combined using appropriate coefficients Ī±i ā€‰; iā€‰=ā€‰1, ā€¦, 3such that āˆ‘iā€‰=ā€‰1, ā€¦, 3Ī±iā€‰=ā€‰1 . The valuesPgmax, Ļgmax and \( {\sigma}_{\rho}^{2,g\max } \) represent the maximum values of transmission power, transmission rate and variance of transmission rate, respectively. These values are obtained using (44) and (45), respectively,

$$ {\displaystyle \begin{array}{c}{P}^{g\max }={\max}_{\forall {\tau}^{\prime }=1,\dots, {n}_p}\left({\max}_{\forall {e}_{ij}\in {\boldsymbol{\Gamma}}_{\omega}^{LCA}}\left({P}_{ij}^{g{\tau}^{\prime }}\right)\right)\\ {}{\rho}^{g\max }={\max}_{\forall {\tau}^{\prime }=1,\dots, {n}_p}\left({\max}_{\forall {e}_{ij}\in {\boldsymbol{\Gamma}}_{\omega}^{LCA}}\left({\rho}_{ij}^{g{\tau}^{\prime }}\right)\right)\end{array}} $$
(44)
$$ {\sigma}_{\rho}^{2,g\max }={\max}_{\forall {\tau}^{\prime }=1,\dots, {n}_p}\left({\sigma}_{\rho}^{2,g{\tau}^{\prime }}\right) $$
(45)

According to the definition of F(SgĻ„), the cost function is defined in (46),

$$ COST\left({\mathbf{S}}^{g\tau}\right)=\frac{1}{F\left({\mathbf{S}}^{g\tau}\right)}\kern0.6em $$
(46)

The implementation steps of GB-CSF include the production of initial population, production and selection of next generation population, and the termination condition.

5.3.3 Production of the initial population

In order to initialize the first generation, the transmission power of genes that are available in all chromosomes of the first generation should be determined. This power is selected randomly in the range \( \left[{P}_{ij}^{g\tau, \min },{P}^{\mathrm{max}}\right] \), where \( {P}_{ij}^{g\tau, \min } \)represents the minimum power required for transmission with the minimum possible rate on link eij assumed no other link is active. This value is obtained as (47),

$$ {P}_{ij}^{g\tau, \min }=\frac{\;{N}_0\times \gamma \left({\rho}_1\right)}{G_{ij}}\kern9.479993em ;\forall {e}_{ij}\in {\boldsymbol{\Gamma}}_{\omega}^{LCA},\forall \tau =1,\dots, {n}_p $$
(47)

5.3.4 Next generation population

As mentioned before, the potential population is produced by combining the chromosomes of the current generation, the children chromosomes, and the mutated chromosomes. In the following, production of children chromosomes and mutated chromosomes are presented which are represented by \( {\mathbf{S}}_c^{g\tau} \) and \( {\mathbf{S}}_m^{g\tau} \), respectively.

Children chromosomes

In order to produce the children chromosomes, parent chromosomes Sgfa and Sgmashould be selected first. To have a better search in the solution space, the parent chromosomes must be selected randomly [33]. For this purpose, we use a roulette wheel mechanism based on the normalized fitness function,

$$ P\left({\mathbf{S}}^{g\tau}\right)=\frac{F\left({\mathbf{S}}^{g\tau}\right)}{\sum \limits_{\tau =1}^{n_p}F\left({\mathbf{S}}^{g\tau}\right)}\kern9.719993em ;\forall \tau =1,2,\dots, {n}_p\kern0.84em $$
(48)

In this method, a line with unit length is considered, and each segment of this line is assigned to each current chromosome according to the value of P(SgĻ„). In order to select each parent chromosome, a random number with uniform distribution is produced in the range [0, 1]. Then the chromosome corresponding to the generated random number is selected as the parent chromosome. For instance, Fig. 3 shows how parent chromosome is selected. In this figure, the values of P(SgĻ„) for chromosomes 1 to 10 is considered as 0.19, 0.16, 0.13, 0.12, 0.10, 0.09, 0.07, 0.06, 0.05, and 0.03, respectively. Based on these values, the length occupied by each chromosome is determined on the line. For selecting a chromosome as a parent, the generated random number should be located in the region that is occupied by the corresponding chromosome. It is observed that in this method, a chromosome with higher fitness is more probable to be selected as a parent chromosome. Moreover, the chromosomes with negligible probability are still possible to be selected; therefore, the variety of solutions is preserved.

Fig. 3
figure 3

Selection of parent chromosomes in GB-CSF

If we show the two chromosomes of the ensuing children with \( {\mathbf{S}}_c^{g{\tau}_1} \) and \( {\mathbf{S}}_c^{g{\tau}_2} \); then, each gene of these chromosomes is calculated according to (49),

$$ {\displaystyle \begin{array}{c}{\overset{\frown }{P}}_{ij}^{g{\tau}_1}=\left(1-\eta \right){P}_{ij}^{gfa}+\eta {P}_{ij}^{gma}\\ {}{\overset{\frown }{P}}_{ij}^{g{\tau}_2}=\eta {P}_{ij}^{gma}+\left(1-\eta \right){P}_{ij}^{gfa}\end{array}}. $$
(49)

in which \( {P}_{ij}^{gfa} \)and \( {P}_{ij}^{gma} \)are the genes of the parents. According to (49), if Ī·is randomly selected in the range [0,ā€‰1], the children gens (transmission power levels) can never be outside the range of their parents. Therefore, we define Ī· in the interval āˆ’Ī“ā€‰ā‰¤ā€‰Ī·ā€‰ā‰¤ā€‰1ā€‰+ā€‰Ī“ ā€‰in which Ī“ is selected randomly using the uniform distribution in the interval [0,ā€‰1].

Chromosomes resulting from mutation

If the resulting chromosome from the mutation is shown by \( {\mathbf{S}}_m^{g\tau} \), the number of mutated genes in this chromosome is determined based on the mutation rate Ī¼ which reflects the percentage of variation in the genes. In order to preserve the historical memory of the algorithm, the new power levels (mutated genes) must be produced in a way that they are placed in the neighborhood of the selected chromosomes for mutation. Therefore, we use the normal distribution for the mutation operator. There are a lot of references such as [34,35,36] in which the normal distribution is used for mutation operator. Without loss of generality, we assume that the gene \( {P}_{ij}^{g\tau} \) from chromosome SgĻ„is randomly selected for mutation. The mutated gene is defined according to (50),

$$ {\tilde{P}}_{ij}^{g\tau}={P}_{ij}^{g\tau}+\varepsilon N\left(0,1\right) $$
(50)

in which N(0,1) is the normal distribution function with zero mean and unit variance. At the beginning, Īµ is considered in the range[0,ā€‰Pmax]. After applying the mutation operator, this parameter is modified according to (51),

$$ {\varepsilon}_{new}=\left\{\begin{array}{l}\min \left({P}^{\mathrm{max}},{\varepsilon}_{old}+\Delta \varepsilon \right)\kern0.72em ; if\kern0.17em successful\kern0.17em percent\kern0.17em of\kern0.17em mutation\ge \wp \\ {}\max \left(0,{\varepsilon}_{old}-\Delta \varepsilon \right)\kern1.44em ; otherwise\end{array}\right. $$
(51)

The successful percentage of mutation is the number of mutant chromosomes that their cost is reduced compared to the original chromosome. In the above equation,ā„˜ is an arbitrary threshold.

Choosing the population of next generation

Similar to the proposed method in 5ā€“2-4 for GB-LCA, at first all chromosomes of current population, children chromosomes and mutation chromosomes must be merged and then npmembers with lower cost are selected as population of the next generation. Therefore, in this method, the best chromosomes of each generation are transferred to the next generation and the historical memory of the algorithm is preserved.

5.3.5 Termination condition

In order to stop the algorithm, the absolute value of the difference between minimum costs of the current and previous generations should not be higher than the threshold. In other words, the termination condition is similar to (40) in which the name of current generation chromosomes and previous chromosomes are replaced with SgĻ„and S(gā€‰āˆ’ā€‰1)Ļ„, respectively. Here, the chromosomes with lower costs are chosen among the current generation chromosomes. Then, the links of this chromosome are eliminated from the set \( {\boldsymbol{\Gamma}}_{\omega}^{LCA} \) and the procedure of extracting the compatible sets continues until set \( {\boldsymbol{\Gamma}}_{\omega}^{LCA} \)is emptied. The algorithm is repeated for other sets.

5.4 Fourth step- genetic based cross-layer path selection (GB-CLPS)

In this section, we introduce a Genetic Based Cross-Layer Path Selection (GB-CLPS) algorithm that uses path and channel selection tools to fulfill the goals such as balancing and fairness. As explained earlier in sections 5ā€“1 to 5ā€“3, first, the K best potential paths between node pairs were extracted in step 1 using KPBP; then in step 2, the best channels were assigned to links of these paths using GB-LCA. In step 3, the best compatible sets of links on each frequency channel were obtained using GB-CSF. GB-CLPS algorithm selects the best path for transmission among K selected paths between each node pair such that not only throughput is maximized, but also balancing of frequency channels utilization and nodes utilization and fairness between traffic flows are provided. For this purpose, path and channel selection tools based on genetic algorithm are used.

5.4.1 Genes, chromosome and population

A gene is a binary value denoted by \( {X}_{uvk}^{g\tau} \) that is equal to 1 if the kth path is selected for traffic flow (u,ā€‰v). A chromosome is the set of genes that can be defined as \( {\mathbf{P}}^{g\tau}=\left\{{X}_{uvk}^{g\tau}\left|\left(u,v\right)\in \boldsymbol{Q},k=1,2,\dots, K\right.\right\} \), where the number of genes in the chromosome is equal to nvā€‰=ā€‰|Q|ā€‰Ć—ā€‰K. Population is the set of np chromosomes of the problem.

5.4.2 Cost function of GB-CLPS

By determining each chromosome, paths between each node pair u and v belong to set Q are determined. Traffic on each link eijof the network is calculated as (52),

$$ {LT}_{ij}^{\tau }=\sum \limits_{\forall \left(u,v\right)\in \mathbf{Q}}\sum \limits_{l^{\prime }=1}^K{TD}_{uv}{X}_{uv{l}^{\prime}}^{g\tau}{\chi}_{uv{l}^{\prime}}^{ij}\kern11.27999em ;\forall \tau =1,2,\dots, {n}_p $$
(52)

where, \( {\chi}_{uv{l}^{\prime}}^{ij} \)is a binary parameter that is equal to 1 if link eij is on the lā€²th path between nodes u and v. For each chromosome, the cost function COST(PgĻ„) is defined with (53),

$$ COST\left({\mathbf{P}}^{g\tau}\right)={\alpha}_1\frac{\sum \limits_{\forall \omega \in \boldsymbol{\Omega}}\sum \limits_{m=1}^{NoS_{\omega }}{TN}_{\omega m}^{g\tau}}{TN_s^{g\max }}+{\alpha}_2\frac{\sigma_{SF}^{2, g\tau}}{\sigma_{SF}^{2,g\max }}+{\alpha}_3\frac{\sigma_n^{2, g\tau}}{\sigma_n^{2,g\max }}+{\alpha}_4\frac{\sigma_c^{2, g\tau}}{\sigma_c^{2,g\max }}\kern0.72em ;\forall \tau =1,2,\dots, {n}_p $$
(53)

In above equation, throughput maximization, fairness and balancing of nodes utilization and channels utilization are considered by four terms. To adjust the effect of each objective, coefficients Ī±i ā€‰ā€‰; iā€‰=ā€‰1, .., 4 are used, where āˆ‘iā€‰=ā€‰1, .., 4Ī±iā€‰=ā€‰1. The first term of the cost function shows the total time slots required for traffic transmission. Since the transmission rate of each link is obtained using GB-CSF, the maximum throughput is achieved by minimizing the number of time slots required for traffic transmission. In (53), NoSĻ‰is the number of available configuration sets for frequency channelĻ‰, which is obtained from GB-CSF. In addition, \( {TN}_{\omega m}^{g\tau} \)that is the maximum number of used time slots when the mth configuration set is active on frequency channel Ļ‰, is obtained using (54),

$$ {TN}_{\omega m}^{g\tau}={\max}_{\forall {e}_{ij}\in {\boldsymbol{\Gamma}}_m^{\omega }}\left(\frac{LT_{ij}^{\tau }}{\rho_{ij}\times T}\right)\kern7.679995em ;\forall m=1,\dots, {NoS}_{\omega },\forall \omega \in \boldsymbol{\Omega} $$
(54)

where \( {\boldsymbol{\Gamma}}_m^{\omega } \)is the set of links of mth configuration set on frequency channelĻ‰. In addition, Ļijis the transmission rate of link eijthat is obtained from GB-CSF, and T represents the length of each time slot. In order to calculate \( {TN}_{\omega m}^{g\tau} \), the maximum number of time slots required for transmitting traffic flows on each link of a configuration set should be obtained.

For fairness, the variance of satisfaction factors of different traffic flows (\( {\sigma}_{SF}^{2, g\tau} \)) defined in (55) should be minimized,

$$ {\sigma}_{SF}^{2, g\tau}=\frac{1}{\left|\boldsymbol{Q}\right|}\sum \limits_{\forall \left(u,v\right)\in \mathbf{Q}}{\left({SF}_{uv}^{\tau }-\overset{\_\_\_}{SF^{\tau }}\right)}^2\kern6.959995em ;\forall \tau =1,2,\dots, {n}_p $$
(55)

In this equation, \( {SF}_{uv}^{\tau }={C}_{uv}^{\tau }/{TD}_{uv} \)is the satisfaction factor of service for each traffic flow (u,v) where \( {C}_{uv}^{\tau } \) is the transmission rate of the link on the path that requires the maximum number of time slots for transmission. The amount of \( {C}_{uv}^{\tau } \)is calculated from (56),

$$ {C}_{uv}^{\tau }=\arg {\max}_{\rho_{ij}\left|\forall {e}_{ij}\in {path}_{uv}^{\tau}\right.}\left(\frac{LT_{ij}^{\tau }}{\rho_{ij}\times T}\right)\kern6.359996em ;\forall \tau =1,2,\dots, {n}_p,\forall \left(u,v\right)\in \mathbf{Q} $$
(56)

in which \( {path}_{uv}^{\tau } \)is the set of links on the selected path between nodes u and v in chromosome Ļ„. In addition, in (55), \( \overset{\_\_\_}{SF^{\tau }}={\sum}_{\forall \left(u,v\right)\in \mathbf{Q}}{SF}_{uv}^{\tau }/\left|\mathbf{Q}\right| \)is the average of satisfaction factors of all traffic flows.

In order to provide balancing, variances of node utilization (\( {\sigma}_n^{2, g\tau} \)) and frequency channel utilization (\( {\sigma}_c^{2, g\tau} \)) should be minimized. \( {\sigma}_n^{2, g\tau} \)is defined as follows,

$$ {\sigma}_n^{2, g\tau}=\frac{1}{n_a^{\tau }}\sum \limits_{\forall i\in {V}_a^{\tau }}{\left({U}_i^{\tau }-{\overline{U}}_n^{\tau}\right)}^2\kern8.039994em ;\forall \tau =1,2,\dots, {n}_p $$
(57)

where, \( {V}_a^{\tau } \) and \( {n}_a^{\tau } \) are the sets of active nodes and the number of active nodes in chromosome Ļ„th. An active node is a node with non-zero traffic. \( {U}_i^{\tau } \) and \( {\overline{U}}_n^{\tau } \)are the amount of node i utilization and average of node utilization in chromosome Ļ„ which are defined in (58) and (59),

$$ {U}_i^{\tau }=\frac{1}{In_i}\left(\sum \limits_{\forall \omega \in \boldsymbol{\Omega}}\sum \limits_{m=1}^{NOS_{\omega }}\left(\sum \limits_{\forall {e}_{ij}\in {\mathbf{S}}_m^{\omega }}{LT}_{ij}^{\tau }+\sum \limits_{\forall {e}_{qi}\in {\mathbf{S}}_m^{\omega }}{LT}_{qi}^{\tau}\right)\right)\kern4.199998em ;\forall \tau =1,2,\dots, {n}_p,\forall i\in {V}_a^{\tau } $$
(58)
$$ {\overline{U}}_n^{\tau }=\frac{1}{n_a^{\tau }}\sum \limits_{\forall i\in {V}_a^{\tau }}{U}_i^{\tau}\kern11.15999em ;\forall \tau =1,2,\dots, {n}_p $$
(59)

Similarly, the variance of channel utilization (\( {\sigma}_c^{2, g\tau} \)) is obtained using (60),

$$ {\sigma}_c^{2, g\tau}=\frac{1}{\left|{\boldsymbol{\Omega}}_a^{\tau}\right|}\sum \limits_{\forall \omega \in {\boldsymbol{\Omega}}_a^{\tau }}{\left({U}_{\omega}^{\tau }-{\overline{U}}_c^{\tau}\right)}^2\kern8.039994em ;\forall \tau =1,2,\dots, {n}_p $$
(60)

where \( {\boldsymbol{\Omega}}_a^{\tau } \) and \( \left|{\boldsymbol{\Omega}}_a^{\tau}\right| \)represent the set of active frequency channels and the number of active frequency channels in chromosome Ļ„. An active channel is a channel in which its traffic load is not zero. In addition, the utilization and average utilization of each frequency channel Ļ‰ are defined in (61) and (62),

$$ {U}_{\omega}^{\tau }=\sum \limits_{m=1}^{NO{S}_{\omega }}\left(\sum \limits_{\forall {e}_{ij}\in {\boldsymbol{\Gamma}}_m^{\omega }}{LT}_{ij}^{\tau}\right)\kern6.839995em ;\forall \omega \in \boldsymbol{\Omega}, \forall \tau =1,2,\dots, {n}_p $$
(61)
$$ {\overline{U}}_c^{\tau }=\frac{1}{\left|{\boldsymbol{\Omega}}_a^{\tau}\right|}\sum \limits_{\forall \omega \in {\boldsymbol{\Omega}}_a^{\tau }}{U}_{\omega}^{\tau}\kern10.43999em ;\forall \tau =1,2,\dots, {n}_p $$
(62)

In eq. (53), \( {TN}_s^{g\max } \), \( {\sigma}_{SF}^{2,g\max } \),\( {\sigma}_n^{2,g\max } \) and \( {\sigma}_c^{2,g\max } \) represent the maximum values of total numbers of time slots, variance of satisfaction factor, variance of node utilization and variance of channel utilization between all chromosomes, respectively. These values can be obtained using (63) to (66), respectively,

$$ {TN}_s^{g\max }={\max}_{\tau^{\prime }=1,2,\dots, {n}_p}\left(\sum \limits_{\forall \omega \in \boldsymbol{\Omega}}\sum \limits_{m=1}^{NoS_{\omega }}{TN}_{\omega m}^{g{\tau}^{\prime }}\right) $$
(63)
$$ {\sigma}_{SF}^{2,g\max }={\max}_{\forall {\tau}^{\prime }=1,\dots, {n}_p}\left({\sigma}_{SF}^{2,g{\tau}^{\prime }}\right) $$
(64)
$$ {\sigma}_n^{2,g\max }={\max}_{\forall {\tau}^{\prime }=1,\dots, {n}_p}\left({\sigma}_n^{2,g{\tau}^{\prime }}\right) $$
(65)
$$ {\sigma}_c^{2,g\max }={\max}_{\forall {\tau}^{\prime }=1,\dots, {n}_p}\left({\sigma}_c^{2,g{\tau}^{\prime }}\right) $$
(66)

5.4.3 Implementation of GB-CLPS

GB-CLPS is based on the implementation of a binary genetic algorithm, and includes the following implementation steps: production of the initial population, production and selection of next generation population, and the termination condition. In order to produce the first-generation population, we randomly assign 0 or 1 to each gene in a chromosome. In each chromosome, one path between āˆ€(u,ā€‰v)ā€‰āˆˆā€‰Q should be selected. The potential population of the next generation is formed from the population of chromosomes in the current generation i.e. PgĻ„ā€‚ā€‰; Ļ„ā€‰=ā€‰1, ā€¦, np, mutation chromosomes and children chromosomes.

In order to produce the children chromosomes, the chromosomes of the parents are extracted through tournament selection mechanism. In this method, nfa chromosomes are selected from the current generation for the first parent (father). These chromosomes are selected among current generation chromosomes according to the cost function. The second parent (Pgma) is obtained similarly. Each of the genes in the two children chromosomes obtained from the crossover operator by using eq. (67),

$$ {\displaystyle \begin{array}{l}{\overset{\frown }{X}}_{uv k}^{g{\tau}_1}=\left(1-{\vartheta}_{uv}\right){X}_{uv k}^{gfa}+{\vartheta}_{uv}{X}_{uv k}^{gma}\\ {}\kern15.35999em ;\forall \left(u,v\right)\in \boldsymbol{Q},\forall \mathrm{k}=1,\dots, \mathrm{K}\\ {}{\overset{\frown }{X}}_{uv k}^{g{\tau}_2}={\vartheta}_{uv}{X}_{uv k}^{gfa}+\left(1-{\vartheta}_{uv}\right){X}_{uv k}^{gma}\end{array}} $$
(67)

where the coefficients Ļ‘uv are randomly selected as zero or one. Therefore, each time the crossover operator is run, two chromosomes (\( {\mathbf{P}}_c^{g{\tau}_1} \)and \( {\mathbf{P}}_c^{g{\tau}_2} \)) are produced. In this problem, the number of children chromosomes is considered equal to nc. As mentioned before, random variations of chromosomes are performed by using mutation operator. A chromosome produced by mutation is shown by\( {\mathbf{P}}_m^{g\tau} \). The number of chromosomes selected for mutation is denoted by nm. In order to implement the mutation operator, we define the set of gens corresponding to each traffic flow (u,ā€‰v)as \( {X}_{uvk}^{g\tau}\kern0.84em ;\forall k=1,\dots, K \). If the required mutation rate is equal to Ī¼, nĪ¼ā€‰=ā€‰āŒˆĪ¼ā€‰Ć—ā€‰|Q|āŒ‰set of gens is randomly selected at first. Then in each selected set and for every traffic flow(u,ā€‰v), one of the genes \( {X}_{uvk}^{g\tau}\kern0.84em ;\forall k=1,\dots, K \)is randomly set to 1.

In order to select the next generation population, the three sets of chromosomes including current population, children chromosomes and mutation chromosomes are combined and np members are selected according to their costs. The termination condition is similar to the (40) where the chromosomes are replaced by PgĻ„, and the cost function is similar to (53). After the termination condition is met, the chromosomes with lower cost will be selected among the current generation of chromosomes. Thus, the best paths for traffic transmission are selected by considering throughput, balancing and fairness factors.

6 Experimental results and discussion

In this section, we evaluate the performance of FTTC-TMBF and HFFTC-TMBF methods using some different scenarios. In each scenario, a number of wireless mesh routers is randomly distributed in a given area. Each router is equipped with at most three advanced radio interfaces that can adjust the transmission power in the range [0,ā€‰Pmax] with Pmax equal to 20dbm. They also can use different transmission rates using different coding and modulation schemes. In order to have a successful reception, the SINR level of the receiver must be higher than the threshold value. According to IEEE 802.11a standard, different values of transmission rates including 6, 9, 12, 18, 24, 36, 48 and 54 Mbps are available for each interface and the SINR threshold corresponding to these values are 6.02, 7.78, 9.03, 10.79, 17.04, 18.8, 24.05 and 24.56ā€‰dB, respectively [37].

It is assumed that the maximum number of available non-overlapping frequency channels that can be assigned to radio interfaces is 12. Moreover, according to [13, 14], the interference range and the parameterĪµ of the propagation gain are set to 350ā€‰m and 2.5 respectively, unless otherwise specified. Here, the noise power is set to N0ā€‰=ā€‰ā€‰āˆ’ā€‰90ā€‰dBm, and the connectivity number K is set to 2. In addition, the weight coefficients Ī±iof the objective and cost functions are assumed equal, unless otherwise specified. Each point on the result graphs is the average obtained from 100 simulation runs. In this paper, we used MATLAB as simulation tool and GAMS as optimization solver.

6.1 Simulation and analysis of FTTC-TMBF

In this section, we compare the solution of the FTTC-TMBF model with the algorithm introduced in [9]. We assume that the nodes are randomly distributed in a square area of 1km2. Also, ten traffic demands is considered for the network where the volume of each traffic flow is randomly selected between 15 and 30ā€‰MB. In Fig. 4, the performance of the FTTC-TMBF solution with objective function (3) and coefficients Ī±1ā€‰=ā€‰2/5, Ī±iā€‰=ā€‰1/5; iā€‰=ā€‰2, 3, 4 is compared with the solution introduced in [9]. As seen from Fig. 4a, the network throughput of FTTC-TMBF is lower as compared to the [9]. This is because in [9], the fairness and balancing are not considered in the objective function and the optimization is done only with the aim of throughput maximization; while, our proposed model considers a complete set of objectives including throughput maximization, fairness, balancing and robustness against failures. Moreover, by increasing the number of nodes, throughput is increased. This is because the links length is decreased and according to the power control ability of the algorithms, less power is required for successful transmission; therefore, the interference is decreased and throughput is improved. This is obvious from the figure in interval nā€‰=ā€‰10ā€“20 for the algorithm in [9] and in interval nā€‰=ā€‰10ā€“15 for FTTC-TMBF. With further increase in the number of nodes, the throughput continues increasing as explained above, but because the nodes become very close to each other, we reach the minimum transmission power and from this point, the power control stops reducing the transmission power. As a result, by increasing the number of nodes beyond a threshold, the interference is increased significantly. In this case, although the received power is also increased, because of the dense nodes and high interference, the throughput increase slope is reduced.

Fig. 4
figure 4

The comparison of FTTC-TMBF performance and [9] (a) throughput (b) variance of node utilization (c) variance of channel utilization (d) variance of satisfaction factor

Figure 4b represents the variance of node utilization in FTTC-TMBF, which is decreased compared to [9]. This parameter is decreased as the number of nodes is increased, because the fair distribution of traffic is more possible by having more nodes in the network. The comparison between the variance of channel utilization is depicted in Fig. 4c when the number of nodes is set to 20. It shows that the frequency channels are used more uniformly in FTTC-TMBF. Moreover, the utilization of the channels is more uniformly as the number of frequency channels is increased, which is due to the better traffic distribution among different channels. Finally, Fig. 4d shows that the variance of satisfaction factor is decreased in FTTC-TMBF, which means the fairness between different traffic flows is improved.

The impact of balancing and fairness factors on the throughput has been investigated in Fig. 5. It is shown that the variance of node utilization is decreased by increasing the effect of this factor in objective function (increasing coefficient Ī±3 in (3)). Also, by increasing the number of nodes, the throughput is increased because due to the reduced length of links and lower transmission power for data transmission, more links are active simultaneously. It is also evident from Fig. 5a that by increasing the number of nodes, traffic is more uniformly distributed on the nodes that results in better balancing on nodes utilization. Figure 5b shows that with any increase in the number of channels, the variance of channel utilization is decreased while the throughput is increased. This is because any increase in the number of channels results in better distribution of traffic between different channels and therefore the possibility of simultaneous transmissions is increased. This figure also clarifies that by increasing the coefficient Ī±4in (3), a better balancing on the frequency channels utilization is provided. However, the throughput is decreased slightly that is due to the reduced effect of the throughput factor in the objective function. In Fig. 5c, the impact of the fairness coefficient is analyzed. By any increase in the amount ofĪ±2 in (3), the fairness among traffic flows is increased. However as mentioned before, the throughput is slightly decreased that is due to the reduced effect of the throughput factor in the objective function.

Fig. 5
figure 5

Analysis of the impact of the fairness and balancing factors on the throughput in FTTC-TMBF (a) impact of the node utilization balancing factor (b) impact of the channel utilization balancing factor (c) impact of the fairness factor

6.1.1 Remark

In addition to our proposed method, some other cross-layer solutions are suggested in the literature that consider throughput, balancing and fairness jointly (for example [10, 11]). However, these solutions consider only some of the available tools of power control, rate adaptation, channel assignment, scheduling and routing. Moreover, although references such as [17, 19] consider the K-Connectivity of the network graph, they do not consider other important objectives such as fairness and balancing. Therefore, the mentioned references are not comparable with our proposed methods that consider all available tools and a complete set of metrics including throughput, balancing, fairness, and K-Connectivity.

6.2 Simulation and analysis of HFTTC-TMBF

In this section, the performance of HFTTC-TMBF is studied. Here, it is assumed that the nodes have been distributed in a square area of 2km2. At first, the network graph is specified using KPBP algorithm. In this algorithm, the three best paths between each two nodes u and v are selected using RCFuv, lcriteria with Ī±iā€‰=ā€‰1/3, iā€‰=ā€‰1, ā€¦, 3in (24).

As mentioned before, the implementation of steps 2 to 4 of HFTTC-TMBF are based on the genetic algorithm. In [32, 33], some recommendations are provided regarding the selection of proper parameters of genetic algorithm. Considering these recommendations, we adjust the population parameters of each generation on . In second step, the channel assignment is performed using GB-LCA algorithm. In third step, we use GB-CSF algorithm to extract the compatible sets based on the parameter Īµā€‰=ā€‰0.1dBm. Finally, we exploit the GB-CLPS algorithm for path selection.

For comparing HFTTC-TMBF with FTTC-TMBF, it is assumed that balancing and fairness factors are neglected. In other words, the coefficients Ī±i ā€‰ā€‰; iā€‰=ā€‰2, ā€¦, 4 in objective function (3), Ī±2 in (30), Ī±3in (41) and Ī±i ā€‰ā€‰; iā€‰=ā€‰2, ā€¦, 4in (53) are considered zero.

Figure 6 shows that the amount of throughput is reduced by about 5ā€‰kb/slot, i.e., about 20%, in HFTTC-TMBF in comparison to the FTTC-TMBF. Due to the computational complexity reduction in HFTTC-TMBF, this throughput reduction is acceptable. Moreover, Fig. 7a represents the effect of increasing Ī±3 in (41) and Ī±3 in (53) on node utilization balancing. It is seen from this figure that by increasing these coefficients, the variance of node utilization and throughput is decreased. Throughput reduction is the result of reducing the throughput coefficient in the objective function. Moreover, by increasing the number of nodes, the links length is decreased which is due to the fixed network area. This reduces the interference according to the power control and rate adaptation and therefore, throughput is increased. However, with further increase in the number of nodes, they become closer to each other that increase the interference and therefore, the throughput-increasing slope is decreased. In addition, increasing the number of nodes leads to better distribution of traffic among nodes such that it improves the amount of node utilization balancing.

Fig. 6
figure 6

The comparison of throughput in FTTC-TMBF and HFTTC-TMBF

Fig. 7
figure 7

Analysis of the impact of the fairness and balancing factors on the throughput in HFTTC-TMBF (a) impact of the node utilization balancing factor (b) impact of the channel utilization balancing factor (c) impact of the fairness factor

Figure 7b shows the performance of HFTTC-TMBF in achieving frequency channel balancing. It is observed from this figure that any increment in the amount of Ī±4 and Ī±2 in (53) and (30) respectively, results in decreasing the variance of frequency channel utilization and enhancing the balancing. Moreover, it is seen that any increase in the number of channels improves the throughput and frequency channel balancing which is due to the better traffic distribution between frequency channels. Moreover, Fig. 7c shows that the fairness is improved with the increase in the number of nodes, which is due to the selection of paths with less volume of traffic. Moreover, the variance of satisfaction factor is decreased by increasing the Ī±2 in (53) from 1/5 to 1/2. In other words, fairness is improved.

In the following, the effect of the coefficients Ī±ifrom the routing cost function (24) on throughput is investigated. In the present simulation, the amount of Ī±2in (30), Ī±3in (41) and Ī±i ā€‰ā€‰; iā€‰=ā€‰2, ā€¦, 4 in (53) have been set to 1/5. As it can be seen from Fig. 8, increasing Ī±1 and Ī±2 in (24) results in increasing the throughput. This is mainly due to the higher effect of hop counts on the routing measure. Therefore, the probability of selecting shorter paths and decreasing the transmission power has been increased which in turn results in the interference reduction and throughput improvement. When Ī±2 in (24) is increased, the paths with lower amount of sum and maximum potential transmission power have been selected, and consequently, the throughput has been improved due to the reduction of potential interference. Figure 8also shows the effect of increasing Ī±3 in (24) on balancing. Here, due to the selection of paths with smaller number of repetitive nodes, the balancing in the use of nodes resource has slightly been improved.

Fig. 8
figure 8

Analysis of the effect of the coefficients Ī±i from the Cost function (24) in HFTTC-TMBF on the throughput and balancing

6.3 Complexity analysis

According to [6], the problem decomposition decreases the computational complexity considerably. Moreover, using meta-heuristic algorithms like Genetic algorithm is a common solution for decreasing the complexity of optimization problems. Therefore, the HFTTC-TMBF method which uses both the problem decomposition idea and the Genetic algorithm, definitely reduces the computational complexity as compared to the FTTC-TMBF.

As the number of variables of the FTTC-TMBF and HFTTC-TMBF methods is very high and their algorithm structures are very complex, comparing their complexities analytically is very difficult (if not impossible). So, we preferred to measure the run time as an indication of the complexity degree of the algorithms. In order to measure the run times of the algorithms, both methods FTTC-TMBF and HFTTC-TMBF are again simulated. In a certain scenario with 10 nodes and 5 non-overlapping channels, the run time needed for convergence was 356ā€‰min for FTTC-TMBF, while in HFTTC-TMBF, the run time reduced to 15.5ā€‰min. For different scenarios, the run time of FTTC-TMBF is roughly 20ā€“30 times of the HFTTC-TMBF.

7 Conclusion and future work

In this paper, we considered the problem of resource allocation and topology control in wireless mesh networks, comprehensively. To this end, we first proposed a comprehensive cross layer model in which a complete set of available tools including power control, rate adaptation, channel assignment and selection, scheduling and routing are used simultaneously in order to maximize the throughput. Moreover, a complete set of objectives including channel utilization balancing, node utilization balancing, fairness and robustness against failures in addition to the throughput maximization are included in the proposed model.

In order to reduce the computational complexity of the comprehensive model, we have proposed four step HFTTC-TMBF heuristic method in which first the K best disjoint paths were chosen between each node pair of the network. Then GB-LCA method is proposed for assigning channels to links of these paths by using the genetic algorithm such that the potential interference is minimized. In next step, GB-CSF is employed to extract the sets of compatible links on each frequency channel that can be activated simultaneously without any interference. These sets are selected with regard to the maximization of transmission rates and providing balancing between transmission rates of the links. Finally, for selecting the best paths for transmitting the traffic flows, GB-CLPS algorithm is proposed in which objectives such as node utilization balancing, frequency channel balancing and fairness are obtained employing channel selection and path selection tools. In order to verify the performance of the proposed methods, extensive simulations were done. The analysis of simulation results showed the efficiency of the proposed methods in terms of throughput, balancing and fairness.

The proposed algorithms of this paper are implemented in a centralized manner. The centralized implementation is a proper choice, because:

  1. 1.

    The topology of the wireless mesh networks is nearly fixed. In addition, there are usually one or more gateways for connecting WMN to the Internet or other fixed networks. Fixed and powerful gateways are proper places for implementing centralized algorithms.

  2. 2.

    Today, the concept of Software Defined Networking (SDN) is accepting widely by the researches for implementing the centralized control modules for the networks. In SDN-WMN architecture, the algorithms are run on a logical centralized control device.

However, implementation of the proposed algorithms in a distributed manner is straightforward and is leaved as a future work. In this regard, we must design some control packets for collecting and distributing information locally at each node.

In addition, besides the variance criterion that is used in this paper to establish the fairness, balancing and the uniform distribution of rate and transmission power between different nodes, other metrics such as max-min and proportional fairness are also applicable in future works.

Abbreviations

FTTC-TMBF:

Fault-Tolerant Topology Control with Throughput Maximization, Balancing and Fairness

GB-CLPS:

Genetic Based Cross Layer Paths Selection

GB-CSF:

Genetic-Based Compatible Set Formation

GB-LCA:

Genetic-Based Link Channel Assignment

HFTTC-TMBF:

Heuristic FTTC-TMBF

KPBP:

K-Potential Best Paths Selection

References

  1. I.F. Akyildiz, X. Wang, W. Wang, Wireless mesh networks: A survey. Comput. Netw. 47(4), 445ā€“487 (2005)

    ArticleĀ  Google ScholarĀ 

  2. D. Benyamina, A. Hafid, M. Gendreau, Wireless mesh networks designā€”A survey. IEEE Commun. Surv. Tutorials 14(2), 299ā€“310 (2012)

    ArticleĀ  Google ScholarĀ 

  3. P.H. Pathak, R. Dutta, A survey of network design problems and joint design approaches in wireless mesh networks. IEEE Commun. Surv. Tutorials 13(3), 396ā€“428 (2011)

    ArticleĀ  Google ScholarĀ 

  4. T.-S. Kim et al., Resource allocation for QoS support in wireless mesh networks. IEEE Trans. Wirel. Commun. 12(5), 2046ā€“2054 (2013)

    ArticleĀ  Google ScholarĀ 

  5. F. Martignon et al., Efficient and truthful bandwidth allocation in wireless mesh community networks. IEEE/ACM Trans. Networking 23(1), 161ā€“174 (2015)

    ArticleĀ  Google ScholarĀ 

  6. I. Al, A.B.M. Alim, et al., Channel assignment techniques for multi-radio wireless mesh networks: A survey. IEEE Commun. Surv. Tutorials 18(2), 988ā€“1017 (2016)

    ArticleĀ  Google ScholarĀ 

  7. Y. Qu, B. Ng, W. Seah, A survey of routing and channel assignment in multi-channel multi-radio WMNs. J. Netw. Comput. Appl. 65, 120ā€“130 (2016)

    ArticleĀ  Google ScholarĀ 

  8. M. Shojafar, S. Abolfazli, H. Mostafaei, M. Singhal, Improving channel assignment in multi-radio wireless mesh networks with learning automata. Wireless Pers. Commun.Ā 82(1), 61ā€“80 (2015)

  9. A. Capone et al., Routing, scheduling and channel assignment in wireless mesh networks: optimization models and algorithms. Ad Hoc Netw. 8(6), 545ā€“563 (2010)

    ArticleĀ  Google ScholarĀ 

  10. J. Luo, C. Rosenberg, A. Girard, Engineering wireless mesh networks: Joint scheduling, routing, power control, and rate adaptation. IEEE/ACM Trans. Networking 18(5), 1387ā€“1400 (2010)

    ArticleĀ  Google ScholarĀ 

  11. K. Gokbayra, E.A. Yıldırım, Joint gateway selection, transmission slot assignment, routing and power control for wireless mesh networks. Comput. Oper. Res. 40(7), 1671ā€“1679 (2013)

    ArticleĀ  Google ScholarĀ 

  12. K. Gokbayrak, E. Alper Yıldırım, Exact and heuristic approaches based on noninterfering transmissions for joint gateway selection, time slot allocation, routing and power control for wireless mesh networks. Comput. Oper. Res. 81, 102ā€“118 (2017)

    ArticleĀ  MathSciNetĀ  Google ScholarĀ 

  13. K. Hedayati, I. Rubin, A. Behzad, Integrated power controlled rate adaptation and medium access control in wireless mesh networks. IEEE Trans. Wirel. Commun. 9(7), 2362ā€“2370 (2010)

    ArticleĀ  Google ScholarĀ 

  14. K. Hedayati, I. Rubin, A robust distributive approach to adaptive power and adaptive rate link scheduling in wireless mesh networks. IEEE Trans. Wirel. Commun. 11(1), 275ā€“283 (2012)

    ArticleĀ  Google ScholarĀ 

  15. X. Shao, C. Hua, A. Huang, Robust resource allocation for multi-hop wireless mesh networks with end-to-end traffic specifications. Ad Hoc Netw. 13, 123ā€“133 (2014)

    ArticleĀ  Google ScholarĀ 

  16. J. Tang et al., Link scheduling with power control for throughput enhancement in multihop wireless networks. IEEE Trans. Veh. Technol. 55(3), 733ā€“742 (2006)

    ArticleĀ  Google ScholarĀ 

  17. S. Chakraborty, S. Nandi, Distributed service level flow control and fairness in wireless mesh networks. IEEE Trans. Mob. Comput. 14(11), 2229ā€“2243 (2015)

    ArticleĀ  Google ScholarĀ 

  18. R. Diestel, Graph Theory, 4th edn. (Springer-Verlag, Berlin, 2010)

    BookĀ  Google ScholarĀ 

  19. E.N. Maleki, G. Mirjalily, R. Saadat, Cross layer optimization framework for fault-tolerant topology control in wireless mesh networks.ā€ In Electrical Engineering (ICEE), 2016 24th Iranian Conference on (IEEE, Shiraz, 2016), pp. 288ā€“293

  20. E.N. Maleki, G. Mirjalily, Fault-tolerant interference-aware topology control in multi-radio multi-channel wireless mesh networks. Comput. Netw. 110, 206ā€“222 (2016)

    ArticleĀ  Google ScholarĀ 

  21. A. Avokh, G. Mirjalily, Interference-aware multicast and broadcast routing in wireless mesh networks using both rate and channel diversity. Comput. Electr. Eng. 40(2), 624ā€“640 (2014)

    ArticleĀ  Google ScholarĀ 

  22. C. Zhang, Z. Fang, A Hybrid Routing Protocol Based on Load Balancing in Wireless Mesh Network (Wireless Communications, Networking and Applications, Springer India, 2016), pp. 273ā€“283

    Google ScholarĀ 

  23. R. Murugeswari, S. Radhakrishnan, D. Devaraj, A multi-objective evolutionary algorithm based QoS routing in wireless mesh networks. Appl. Soft Comput. 40, 517ā€“525 (2016)

    ArticleĀ  Google ScholarĀ 

  24. E.N. Maleki, G. Mirjalily, E.N. Maleki, R. Saadat, A hybrid genetic-based scheduling optimization in wireless mesh network joint with power and rate control.ā€ In 2014 22nd Iranian Conference on Electrical Engineering (ICEE) (IEEE, Tehran, 2014), pp. 937ā€“942

  25. D. Chakraborty, I-QCA: An intelligent framework for quality of service multicast routing in multichannel multiradio wireless mesh networks. Ad Hoc Netw. 33, 221ā€“232 (2015)

    ArticleĀ  Google ScholarĀ 

  26. A. VĆ”zquez-Rodas, J. Luis, A centrality-based topology control protocol for wireless mesh networks. Ad Hoc Netw. 24, 34ā€“54 (2015)

    ArticleĀ  Google ScholarĀ 

  27. Y. Peng et al., Fault-tolerant routing mechanism based on network coding in wireless mesh networks. J. Netw. Comput. Appl. 37, 259ā€“272 (2014)

    ArticleĀ  Google ScholarĀ 

  28. X. Bao et al., Design of logical topology with K-connected constraints and channel assignment for multi-radio wireless mesh networks. Int. J. Commun. Syst. 30(1), 1-18 (2017)

  29. P. Gupta, P.R. Kumar, The capacity of wireless networks. IEEE Trans. Inf. Theory 46(2), 388ā€“404 (2000)

    ArticleĀ  MathSciNetĀ  Google ScholarĀ 

  30. M.D. Penrose, On k-connectivity for a geometric random graph. Random Struct. Algoritm. 15(2), 145ā€“164 (1999)

    ArticleĀ  MathSciNetĀ  Google ScholarĀ 

  31. D.B. West, Introduction to Graph Theory, vol 2 (Prentice hall, Upper Saddle River, 2001)

    Google ScholarĀ 

  32. C. Reeves, in Handbook of metaheuristics. Genetic algorithms (Springer, Boston, 2003), pp. 55ā€“82

  33. R.L. Haupt, S.E. Haupt, Practical genetic algorithms (John Wiley & Sons, New Jersy, 2004)

  34. H. MĆ¼hlenbein, D. Schlierkamp-Voosen, Predictive models for the breeder genetic algorithm i. continuous parameter optimization. Evol. Comput. 1(1), 25ā€“49 (1993)

    ArticleĀ  Google ScholarĀ 

  35. M. Gen, R. Cheng, Genetic algorithms and engineering optimization, vol 7 (John Wiley & Sons, 2000)

  36. K. Deb, D. Deb, Analysing mutation schemes for real-parameter genetic algorithms. Int. J. Artif. Intell. Soft Comp. 4(1), 1ā€“28 (2014)

    ArticleĀ  MathSciNetĀ  Google ScholarĀ 

  37. IEEE 802.11a WG Part 11, ā€œWireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications: High-speed Physical Layer in the 5 GHz Bandā€, 1999

    Google ScholarĀ 

Download references

Funding

The authors report no sources of funding for the research..

Availability of data and materials

Please contact the corresponding author.

Author information

Authors and Affiliations

Authors

Contributions

ENM and GM designed the algorithms, experiments and wrote the paper. Both authors read and approved the final manuscript.

Corresponding author

Correspondence to Ghasem Mirjalily.

Ethics declarations

Authorsā€™ information

Esmaeil Nik Maleki received his B.Sc. degree in electrical engineering from Isfahan University, Iran and the M.Sc. and Ph.D. degrees in telecommunications engineering from Yazd University, Iran in 2010 and 2017. Esmaeil is currently an assistant professor at Sheikhbahaee University, Iran. Her research interests are in the area of wireless networks.

Ghasem Mirjalily received his Ph.D. degree in telecommunication engineering in 2000. Since then, he has been with Yazd University, Iran, where he is a professor. He was a visiting researcher at McMaster University, Canada, in 1998 and a visiting research scientist at Shenzhen Research Institute of Big Data (SRIBD), Chinese University of Hong Kong, Shenzhen, in summersĀ 2017 and 2018. Prof. Mirjalily is a senior member of IEEE, and his current research interests include Data Communication Networks, Wireless Networks, Network Virtualization and Service Chaining.

Competing interests

The authors declare that they have no competing interests.

Publisherā€™s Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Nik Maleki, E., Mirjalily, G. Cross layer resource allocation for fault-tolerant topology control in wireless mesh networks based on genetic algorithm. J Wireless Com Network 2019, 13 (2019). https://doi.org/10.1186/s13638-018-1314-z

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1186/s13638-018-1314-z

Keywords