1 Introduction

Wireless technology is emerging as new replacement of existing wired networking, but at the same time, many implementation challenges need to be addressed for the deployment of wireless technology. Wireless mesh networks (WMN) are better quality solution for high-performance and low-cost broadband Internet access in the context of enterprise networking [1]. These networks impart spacious connectivity with lower cost, easy deployment, and reliable service coverage than their counterpart-wired networks [2, 3]. The backbone of WMNs is composed of mesh routers as shown in Fig. 1 which have limited or no mobility, and they offer network access to both mesh and conventional clients. WMN provides a quick way to select a mesh router as the gateway [4]. Gateway routers are connected to Internet with a wired link [5].

Fig. 1
figure 1

Wireless mesh network

Routing plays an important role in both wired and wireless networks. One can easily improve the performance and quality of the network by introducing the better routing approach. WMNs are the preeminent broadband communication systems and require an end to end QoS to its users. To achieve best performance in WMNs, the traffic should be routed on optimal path. Theoretical studies [6, 7] show that routing in WMN is an optimization problem. It has also been observed in the literature that the traffic demand in wireless networks [8] is dynamic and hard to estimate. Such observations put a question mark on suitability of the existing optimization-based routing solutions in WMNs.

To address this challenge, this paper investigates the routing technique in WMN which takes into account the dynamic behavior of traffic demands. This paper further identifies an optimization framework which finds an optimal path for routing in WMN. We formulate optimal path routing problem as search-based problem. We have investigated evolutionary optimization techniques to solve the routing problem in WMN. These techniques can find global optimum solution to a given problem. We have used an evolutionary optimization technique named as genetic algorithm for routing in WMN. It considers the link bandwidth and packet loss ratio into account; optimal path is selected among all the available paths from source to destination on the basis of aggregated cost of all the links of the path. The aggregated cost of the path is calculated by our newly designed cost metric that is used as fitness function in genetic algorithm to evaluate the optimal path.

The rest of the paper is organized as follows: In Section 2, we have given the literature review of existing routing metrics, optimization, and search-based problems. Section 3 illustrates our proposed solution. The experimental results and analysis are discussed in Section 4. Finally, in Section 5, we present the conclusion of the paper.

2 Related work

2.1 Existing routing metrics

Routing protocols play an important role in finding best path and forwarding the data along the path. Cost metric is the foundation of a routing protocol. The better the cost metric of a protocol, the better will be the result of the routing protocol. In any network, the cost of forwarding packet along the link is known as the cost metric of a link. Defining a cost metric for wireless networks is a great deal as compared to traditional wired networks because of unevenness of link characteristics between nodes. There are many factors which directly influence the communication quality within wireless networks such as background noise, channel fading, obstacles, and interference [9]. Researchers are working actively in this area and have proposed different cost metrics for wireless networks. These are hop count, per-hop round trip time (RTT), per-hop packet pair delay (PktPair), expected transmission count (ETX), modified ETX (mETX), effective number of transmission (ENT), expected transmission time (ETT), weighted cumulative expected transmission time (WCETT), and metric of interference and channel switching (MIC). These metrics are discussed in [9, 10]. The comparison of routing protocols that uses these metrics is shown in Table 1.

Table 1 Comparison of routing protocols

2.2 Optimization and search-based problems

Optimization is a method of the application of succeeding iterations with application of variations on initial idea [11], i.e., optimization is fine-tuning of variables of system to get preferred output. The focal point of optimization techniques is an optimal point, while intervening performance is disregarded [12].

In real life, there are a large number of problems where search space (i.e., all possible solution to problems including good solutions which fulfill desired constraints and bad solutions which do not fulfill desired constraints) is very large as compared to solution space. A solution is considered as the best solution if we check all possible options for solution. In-depth search fails if search space is too large as compared to solution space. Such types of problems are not solvable in polynomial time because best solution may be difficult to achieve, so an effort is made to find a suboptimal solution.

Routing in WMNs is an optimization problem where optimal path needs to be selected from a large number of possible paths. The main purpose of optimization is to search values for a number of parameters whose aim is to maximize or minimize the objective function [13, 14]. To formulate the routing problem in WMN as a search-based problem, three tasks need to be carried out: first is the representation of problem which is agreeable to symbolic manipulation, second is a fitness function specifying integrity of available options, and third is the set of manipulation operators. The authors in [15] have proposed distributed scheduling scheme for video streaming over multi-channel, multi-radio, multi-hop wireless networks and formulated the scheduling as a convex optimization problem. The schemes used in [15] mainly focus on applications having video streaming, while our work focus on link quality regardless of any application constraints.

2.3 Genetic algorithm-based solution to search-based problems

Genetic algorithms are optimization methods that make use of a search process reproduced from the mechanism of biological selection and biological genetics [12]. Genetic algorithms follow the natural search and selection processes as described in genetics for biological processes which lead them to find the fittest individuals [12]. Genetic algorithm (GA) belongs to the class of evolutionary algorithm. The aim of GA is to find accurate or approximate solution for a given problem in a meaningful way.GA gives much better results when exhaustive search techniques fail [11].

It is normally observed in many optimization methods that we start finding the optimal solution from search space using some transition rules by starting from a single point and moving to the next point in search space. The transition rules are normally deterministic. Genetic algorithm initiates with a set of solutions which are encoded with some suitable GA encoding scheme. Successive sets of solutions are generated depending upon previously generated sets. These sets of solutions are generated with the help of an objective function known as fitness function. The integrity of solution depends upon this objective function [12]. Following are the components of genetic algorithm.

2.3.1 Variable selection

Every problem normally is influenced by some factors which provide basis for the resolution of that problem. Variable selection is the process of finding all such variables which effect problem resolution. For example, in the case of routing in WMN, congestion avoidance at mesh nodes, high throughput, minimum interference, minimum cost, expected transmission time, and optimal channel assignment; all these play a significant role in finding best routing solution.

2.3.2 Fitness function

The resolution of a problem primarily depends upon fitness function. A fitness function discriminates the good solution from bad. It is based upon those variables which affect the problem. Appropriate weights are assigned to variables through fitness function. The outcome of fitness function is normally one value which indicates the level of goodness for solution. In our routing problem, we define a mechanism to compute the path cost by using Eq. 1, which defines a criterion for optimal or non-optimal path within WMN.

2.3.3 Encoding scheme

GA is normally operated on coded variable values rather than on actual ones. The literature survey shows that there exists many encoding schemes, but two of them are commonly used. These are binary encoding and real encoding [12]. The performance of GA is highly dependent on these encoding schemes which play a vital role in determining the reliability of GA [16]. An inadequately coded GA may not deliver the results in expected time [12].

The routing problem can be encoded as a string of integers generated by sequence of integer number ID’s of connected nodes. For example, in Fig. 2, we assign IDs 0, 1, 2, 3, 4, 5, 6, 7, 8, and 9 to each node in the network, and a possible path between source node 0 to destination node 9 can be 0 → 1 → 3 → 7 → 9. This sequence specifies a solution as a routing path where node 0 is connected to node 1, node 1 is connected to node 3, node 3 is connected to node 7, and node 7 is connected to node 9. The solution generated in this way in which all adjacent nodes are connected is valid. The sequence 0 → 1 → 4 → 9 is an invalid sequence because node 4 is not directly connected to node 9; hence, this routing path from node 0 to node 9 is an invalid path.

Fig. 2
figure 2

A simple network

2.3.4 Initial population

The set of solutions in GA is known as a population. Each solution in solution set is known as a chromosome, while each element in the chromosome is called a gene. Each time GA runs, give a population and all succeeding populations depend upon preceding populations. The selection of initial population in GA is normally random. Initial population having high fitness values can quickly direct to acceptable solution. Encoding depicted in previous Section 2.3.3, i.e., [0 → 1 → 3 → 7 → 9], represents a chromosome, while one of the hops can be regarded as a gene. Working of GA requires a set of solutions; therefore, more than one solution can be generated at one time. A population of four solutions (chromosomes) can be represented as [0  1  3  7  9], [0  1  4  8  9], [0 → 2 → 5 → 9] and [0  1  3  6  8  9].

2.3.5 Selection

Selection is the process for creation of new population. In this process, we select two members from a population. These members are used for crossover and mutation operations to create new population. Commonly used selection methods in GA are roulette wheel and tournament [16]. The comprehensive discussion of different selection methods can be seen in [12].Two solutions (chromosomes) are selected from a population with the application of suitable selection method for generating new solutions (chromosomes). The selection methods assure the selection of best solutions.

2.3.6 GA operators

GA operators bring into play the generation of new populations from existing ones. These operators use best features of current population and produce better population as compared to previous one. Reproduction, crossover, and mutation are the GA operators. In reproduction, new population is generated based on fitness values of current population. High fitness solutions are used from current population to generate new population [12]. Newly generated and previous populations are combined in crossover step to generate new population according to a predefined scheme. Normally, new population is generated with best features as compared to previous one from reproduction and crossover steps, but some time, the entire reproduction and crossover process may result in loss of some information so mutation operator is applied. The process of mutation reduces the chance of trapping in local optima [12]. These operators have many variations and usually depend upon encoding schemes. The design of GA operators should be as much as necessary so that only feasible solutions should be created [16]. So, if we select [0 → 1 → 3 → 7 → 9] and [0 → 2 → 3 → 6 → 8 → 9] chromosomes (two solutions from source 0 to destination 9) from Fig. 2, then applying one-point crossover operator with crossover point being 3 result two new solutions [0 → 2 → 3 → 7 → 9] and [0 → 1 → 3 → 6 → 8 → 9]. Other common crossover operators are two-point and uniform crossover which can be viewed in [12].

Mutation operator randomly changes one or more genes of a selected chromosome to increase the structural variability of the population. In GA, the role of mutation operator is to restore the lost or unexplored genetic material into the population to prevent the premature convergence of GA to suboptimal solutions.

2.3.7 Convergence

The convergence state in GA produces the desirable results and inquires the algorithm to stop [11, 17]. Stopping criteria based upon fitness value of solutions should be defined with an acceptance factor in convergence state of GA. The processing of algorithm should be stopped after fixed number of iterations if the convergence is not achieved.

2.3.8 Elitism

A chromosome with highest fitness value is known as elite chromosome. Elitism in GA is used to retain the elite chromosome in next generation for achieving best solutions. In this way, we have a best solution in each population during the processing of GA.

3 Proposed solution

Routing in WMNs is an optimization problem where we have a large number of solution space. So, we need an optimization technique to find the optimal path from solution space. Genetic algorithm is the best choice for finding optimal path. We have exhibited all the steps involved in GA on our proposed technique, so in this way, we have applied GA as a search-based method to find an optimal path for routing in WMN.

3.1 Application of genetic algorithm in WMN routing

Application of genetic algorithm in WMN routing requires performing all the steps listed in Section 2.3. We will describe all those steps for the application of genetic algorithm in WMN.

3.1.1 Variable selection

In our proposed solution for routing in WMN, we have three types of variables which affect the resolution of problem. First, the expected transmission count (ETX) between each pair of nodes along the complete path from source to destination. ETX between nodes is calculated based on packet delivery ratio in forward direction (d f) and in reverse direction (d r). The probability of successful data transmission and acknowledgment is d f × d r. ETX for the complete route is the sum of ETX calculated for each link in that particular route. The second variable is the expected transmission time (ETT) between each pair of nodes along the complete path from source to destination. The time spent in transmission of a packet along a link l, i.e., ETT l , is obtained by multiplying ETX l by the link bandwidth (S/B). ETT for the complete route is the sum of ETT calculated for each link in that particular route. The third variable is the hop count. The values for ETX, ETT, and hop count are obtained by performing simulation on our test systems in NS-2, and the results are shown in Table 2.

Table 2 Path cost calculation

3.1.2 Fitness function

Fitness function is based on variables involved in the system. We have designed our own fitness function [5] which is based on hop count and aggregated ETT along the path from source to destination.

$$ \mathrm{Path}\ \mathrm{Cost}=\mathrm{Hop}\ \mathrm{Count} \times {\displaystyle \sum_{l=1}^n}{\mathrm{ETT}}_{\mathrm{l}} $$
(1)

where l is the link between two nodes.

3.1.3 Encoding scheme

We have applied real encoding on our routing problem. The routing problem can be encoded as a string of integers generated by sequence of integer number IDs of connected nodes. For example in Fig. 2, we assigned IDs 0, 1, 2, 3, 4, 5, 6, 7, 8, and 9 to each node in the network, and a possible path between source node 0 to destination node 9 can be 0  1  3  7  9. This sequence specifies a solution as a routing path where node 0 is connected to node 1, node 1 is connected to node 3, node 3 is connected to node 7, and node 7 is connected to node 9. The solution generated in this way in which all adjacent nodes are connected is valid. The sequence 0  1  4  9 is an invalid sequence because node 4 is not directly connected to node 9; hence, this routing path from node 0 to node 9 is an invalid path.

3.1.4 Initial population

Initial population plays a very important role for finding optimal solution as this initial population is used to generate new populations through crossover operator. Initially, we have generated a subset of large set of possible paths from source to destination on “50 and 100 nodes WMN,” respectively. All these paths are evaluated by using Eq. 1.

3.1.5 Selection for crossover

We have applied roulette wheel and tournament selection mechanisms for selection [12]. Roulette wheel selection mechanism [18] has the similar selecting principle as roulette wheel. In GA, each sector of the roulette wheel corresponds to an individual from the population. The probability of the individual to be selected into the next generation depends upon the proportion of the individual’s fitness value to the total fitness values of the whole population.

Tournament approach [11] selects individuals based on their fitness values. This method selects a subset of two or three chromosomes from the mating pool, and the parent will be the chromosomes with the lowest cost in the subset. This method is suitable for large population sizes because the population never needs to be sorted.

3.1.6 Crossover

We have applied one-point crossover [12]. A crossover point is chosen in the solution string to perform one-point crossover, and contents of solutions are exchanged before or after the crossover point.

3.1.7 Elitism

We have used elitism for preserving solutions with best fitness for next generation. Elitism is applied by retaining the best solution of current generation. After applying the crossover and mutation, new population is generated and the worst solution of new population is replaced with the preserved best solution. In this way, this mechanism ensures that the best solution is retained in any generation.

3.1.8 Convergence

The convergence criterion is not well defined for routing in WMNs using genetic algorithm. We used to calculate path cost for each solution in population which enables us to determine the goodness of solution. Our designed fitness function, i.e., path cost, is based on hop count and aggregated ETT along the path from source to destination, so optimal path selection solely rely on path cost. The path with minimum transmission time will be selected as optimal path for routing; therefore, if the value of the path cost of some solution is minimum than the other set of solutions, this solution will be considered to be better. We cannot give a final verdict that some value for path cost is best and we stop the iterations. However, we can stop our solution after some specified number of iterations, and by applying elitism, we can ensure that we have a best solution at current state of computation.

3.2 An illustrative example

In Fig. 3, we have shown an illustration of our proposed routing scheme for finding optimal path for routing. Figure 3a shows the sample topology. The available paths from source node S to destination node D are shown in Fig. 3b. All available links within a complete path from source to destination, their bandwidth B, ETX, ETT, hop count, and path cost, are shown in Table 2.

Fig. 3
figure 3

a Sample topology. b Available paths from source to destination. c Optimal path and minimum hop count path

Path cost for all available paths is calculated by using Eq. 1, and all the calculated results are shown in Table 2. The size of probe packet S used for calculating the path is 1 KB. Figure 3c shows optimal path and minimum hop count path. The path with small dotted lines shows the optimal path, while the path with large dotted lines shows the minimum hop count path. Although the optimal path shown in Fig. 3c has more hops than that of the minimum hop count path, the cost of optimal path is minimum than that of the minimum hop count path. Our proposed solution is based on path cost which depends on aggregated ETT; therefore, the results obtained are better than traditional hop count path. The minimum hop count path selects the path on the basis of minimum hops in a particular path and does not consider the link quality, while our proposed solution reflects the optimal path by considering link quality.

4 Experimental results and analysis

We have evaluated the WMN routing problem using C#. Net and NS-2 and compared it with traditional hop count metric. We carry out our simulation on “50 and 100 nodes WMN.” First, we have calculated the path cost using Eq. 1 and hop count for each path in the network, and after that, we have applied genetic algorithm for finding the optimal path. In genetic algorithm, we have used crossover rate from 0.1 to 0.9 and mutation rate from 0.01 to 0.09 with and without elitism. Table 3 depicts the simulation parameters for finding optimal path for routing in WMN.

Table 3 Simulation parameters

4.1 Application of GA model 1

GA model 1 (depicted in Table 4) is applied on “50 nodes WMN.” The selection method roulette wheel with elitism is employed for finding the optimal path for routing in WMN. In GA model 1, the population size is 500 with 1000 generations. Table 5 shows the optimal path, and minimum hop count results on different crossover and mutation rates.

Table 4 GA model 1 parameters
Table 5 Optimal path and minimum hop count results of GA model 1

Figure 4 shows that on “50 nodes WMN,” the optimal path is selected on crossover and mutation rates (0.9 and 0.08, respectively). Keeping the same crossover and mutation rates, the cost of minimum hop count path is more than that of GA cost, and thus, the path selected through minimum hop count metric is not optimal.

Fig. 4
figure 4

Optimal path cost versus minimum hop count path cost for GA model 1

4.2 Application of GA model 2

The parameters for GA model 2 are shown in Table 6 that are operated on “50 nodes WMN.” To acquire an optimal path for routing, the selection method Tournament with elitism is used. Genetic algorithm is executed on population size 500 with 1000 generations. The comparative results for optimal path and minimum hop count on different crossover and mutation rates are presented in Table 7.

Table 6 GA model 2 parameters
Table 7 Optimal path and minimum hop count results of GA model 2

Figure 5 shows that on “50 nodes WMN,” the optimal path is selected on crossover and mutation rates (0.7 and 0.06, respectively). Keeping the same crossover and mutation rates, the cost of minimum hop count path is same as of GA cost, and thus, the path selected through minimum hop count metric is also an optimal path.

Fig. 5
figure 5

Optimal path cost versus minimum hop count path cost for GA model 2

4.3 Application of GA model 3

GA model 3 (depicted in Table 8) is applied on “50 nodes WMN.” The selection method roulette wheel without elitism is employed for finding the optimal path for routing in WMN. In GA model 3, the population size is 500 with 1000 generations. Table 9 shows the optimal path and minimum hop count results on different crossover and mutation rates.

Table 8 GA model 3 parameters
Table 9 Optimal path and minimum hop count results of GA model 3

Figure 6 shows that on “50 nodes WMN,” the optimal path is selected on crossover and mutation rates (0.2 and 0.07, respectively). Keeping the same crossover and mutation rates, the cost of minimum hop count path is same as of GA cost, and thus, the path selected through minimum hop count metric is also an optimal path.

Fig. 6
figure 6

Optimal path cost versus minimum hop count path cost for GA model 3

4.4 Application of GA model 4

GA model 4 (depicted in Table 10) is applied on “50 nodes WMN.” The selection method Tournament without elitism is employed for finding the optimal path for routing in WMN. In GA model 4, the population size is 500 with 1000 generations. Table 11 shows the optimal path and minimum hop count results on different crossover and mutation rates.

Table 10 GA model 4 parameters
Table 11 Optimal path and minimum hop count results of GA model 4

Figure  7 shows that on “50 nodes WMN,” the optimal path is selected on crossover and mutation rates (0.7 and 0.08, respectively). Keeping the same crossover and mutation rates, the cost of minimum hop count path is more than that of GA cost, and thus, the path selected through minimum hop count metric is not optimal (Table 12).

Fig. 7
figure 7

Optimal path cost versus minimum hop count path cost for GA model 4

Table 12 Experimental parameters

4.5 Summarized results of optimal path on 50 nodes WMN

Table 13 shows the summarized results of optimal path on “50 nodes WMN.” The results are taken by applying selection methods roulette wheel and tournament with and without elitism.

Table 13 Summarized results of optimal path on 50 nodes WMN

Figure 8 shows that on “50 nodes WMN,” optimal path is selected on crossover and mutation rates (0.9 and 0.08, respectively) on selection method roulette wheel with elitism. Keeping the same parameters, minimum hop count path cost is more than that of GA cost, and thus, the path selected through minimum hop count metric is not optimal. The optimal path cost obtained through selection method roulette wheel without elitism on crossover and mutation rates (0.2 and 0.07) is same for both GA and minimum hop count. The optimal path cost obtained through selection method tournament with elitism on crossover and mutation rates (0.7 and 0.06) is same for both GA and minimum hop count. By applying selection method tournament without elitism, the optimal path is selected on crossover and mutation rates (0.7 and 0.08). Keeping the same parameters, minimum hop count path cost is more than that of GA cost, and thus, the path selected through minimum hop count metric is not optimal.

Fig. 8
figure 8

Comparative results of minimum hop count path cost versus optimal path cost on 50 nodes WMN

4.6 Application of GA model 5

GA model 5 (depicted in Table 14) is applied on “100 nodes WMN.” The selection method roulette wheel with elitism is employed for finding the optimal path for routing in WMN. In GA model 5, the population size is 1000 with 1000 generations. Table 15 shows the optimal path and minimum hop count results on different crossover and mutation rates.

Table 14 GA model 5 parameters
Table 15 Optimal path and minimum hop count results of GA model 5

Figure 9 shows that on “100 nodes WMN,” optimal path is selected on crossover and mutation rates (0.3 and 0.09, respectively). Keeping the same crossover and mutation rates, the cost of minimum hop count path is also same as of GA cost, and thus, the optimal path is same for GA and minimum hop count metric.

Fig. 9
figure 9

Optimal path cost versus minimum hop count path cost for GA model 5

4.7 Application of GA model 6

GA model 6 (depicted in Table 16) is applied on “100 nodes WMN.” The selection method tournament with elitism is employed for finding the optimal path for routing in WMN. In GA model 6, the population size is 1000 with 1000 generations. Table 17 shows the optimal path and minimum hop count results on different crossover and mutation rates.

Table 16 GA model 6 parameters
Table 17 Optimal path and minimum hop count results of GA model 6

Figure 10 shows that on “100 nodes WMN,” optimal path is selected on crossover and mutation rates (0.6 and 0.08, respectively). Keeping the same crossover and mutation rates, the cost of minimum hop count path is more than that of GA cost, and thus, the path selected through minimum hop count metric is not optimal.

Fig. 10
figure 10

Optimal path cost versus minimum hop count path cost for GA model 6

4.8 Application of GA model 7

GA model 7 (depicted in Table 18) is applied on “100 nodes WMN.” The selection method roulette wheel without elitism is employed for finding the optimal path for routing in WMN. In GA model 7, the population size is 1000 with 1000 generations. Table 19 shows the optimal path and minimum hop count results on different crossover and mutation rates.

Table 18 GA model 7 parameters
Table 19 Optimal path and minimum hop count results of GA model 7

Figure 11 shows that on “100 nodes WMN,” optimal path is selected on crossover and mutation rates (0.7 and 0.09; 0.1 and 0.07). Keeping the same crossover and mutation rates, the cost of minimum hop count path is also same as of GA cost, and thus, the path selected through minimum hop count metric is also an optimal path.

Fig. 11
figure 11

Optimal path cost versus minimum hop count path cost for GA model 7

4.9 Application of GA model 8

GA model 8 (depicted in Table 20) is applied on “100 nodes WMN.” The selection method tournament without elitism is employed for finding the optimal path for routing in WMN. In GA model 8, the population size is 1000 with 1000 generations. Table 21 shows the optimal path and minimum hop count results on different crossover and mutation rates.

Table 20 GA model 8 parameters
Table 21 Optimal path and minimum hop count results of GA model 8

Figure 12 shows that on “100 nodes WMN,” optimal path is selected on crossover and mutation rates (0.5 and 0.06; 0.1 and 0.05). Keeping the same crossover and mutation rates, the cost of minimum hop count path is more than that of GA cost, and thus, the path selected through minimum hop count metric is not an optimal path (Table 22).

Fig. 12
figure 12

Optimal path cost versus minimum hop count path cost for GA model 8

Table 22 Experimental parameters

4.10 Overall optimal path results on 100 nodes WMN

Table 23 shows the summarized results for optimal path on “100 nodes WMN.” The results are taken by applying selection methods roulette wheel and tournament with and without elitism.

Table 23 Summarized results for optimal path on 100 nodes WMN

The graph in Fig. 13 shows that on “100 nodes WMN,” optimal path is selected on crossover and mutation rates (0.3 and 0.09, respectively) on selection method roulette wheel with elitism. Keeping the same parameters, minimum hop count path cost is also same as of GA cost, and thus, the path selected through minimum hop count metric is also an optimal path. The optimal path cost obtained through selection method roulette wheel without elitism on crossover and mutation rates (0.7 and 0.09; 0.1 and 0.07) is same for both GA and minimum hop count. By applying selection method tournament with elitism, the optimal path is selected on crossover and mutation rates (0.6 and 0.08). Keeping the same parameters, minimum hop count path cost is more than that of GA cost, and thus, the path selected through minimum hop count metric is not an optimal path. By applying selection method tournament without elitism, the optimal path is selected on crossover and mutation rates (0.1 and 0.05; 0.5 and 0.06). Keeping the same parameters, minimum hop count path cost is more than that of GA cost, and thus, the path selected through minimum hop count metric is not optimal.

Fig. 13
figure 13

Comparative results of minimum hop count path cost versus optimal path cost on 100 nodes WMN

The experimental results and data analysis taken on our proposed technique show that GA returns high throughput path with minimum transmission delay. It is also observed that the path selected by our proposed technique although have more hop count as compared to minimum hop count path, the transmission time is less and the throughput is high.

5 Conclusions

The study and analysis of routing in WMN using genetic algorithm guide us to conclude that using GA technique instead of traditional hop count for finding optimal path gives better results. The experimental results taken on “50 nodes WMN” and “100 nodes WMN” test systems show that the cost of optimal paths obtained through GA is minimum than the cost of traditional hop count metric in most of the cases. Although GA takes more time than hop count metric for finding the optimal path, GA returns high throughput path for routing. We have applied two selection methods, roulette wheel and tournament, on our two test systems. We have also investigated the role of crossover rate and mutation rate by taking different values. The range of crossover rate is 0.1 to 0.9, while the range of mutation rate is 0.01 to 0.09. We collected best results from these combinations and used them in analysis. The best result for roulette wheel method on “50 nodes WMN” test system is on 0.9 and 0.08 for crossover and mutation, respectively, while the best result for tournament method is on 0.7 and 0.06 for crossover and mutation, respectively. Similarly, on “100 nodes WMN” test system, the best result for roulette wheel method is on 0.3 and 0.09 for crossover and mutation, respectively, while the best result for tournament method is on 0.6 and 0.08 for crossover and mutation, respectively.