1 Introduction

Wireless Mesh Networks (WMNs) are low-cost and have easy maintenance. However, WMNs have some problems such as node placement problem, security, transmission power and so on. In this work, we deal with node placement problem in WMNs. We consider the version of the mesh router nodes placement problem in which we are given a grid area where to deploy a number of mesh router nodes and a number of mesh client nodes of fixed positions (of an arbitrary distribution) in the considered area. The objective is to find a location assignment for the mesh routers to the cells of the grid area that maximizes the network connectivity and client coverage. Network connectivity is measured by Size of Giant Component (SGC) of the resulting WMN graph, while the user coverage is simply the number of mesh client nodes that fall within the radio coverage of at least one mesh router node and is measured by Number of Covered Mesh Clients (NCMC). Node placement problems are known to be computationally hard to solve [13]. In some previous works, intelligent algorithms have been recently investigated [2, 7, 8]. We already implemented a Particle Swarm Optimization (PSO) based simulation system, called WMN-PSO [5]. Also, we implemented a simulation system based on Hill Climbing (HC) for solving node placement problem in WMNs, called WMN-HC [4].

In our previous work, we presented a hybrid intelligent simulation system based on PSO and HC [6]. We called this system WMN-PSOHC. We also proposed and impremented Rational Decrement of Vmax Method (RDVM) and a Fast Convergence RDVM (FC-RDVM) replacement methods [9]. In this paper, we compare the performance of RDVM with FC-RDVM. Simulation results show that FC-RDVM has better performance than RDVM.

The rest of the paper is organized as follows. In Sect. 2, we present intelligent algorithms. We present our designed and implemented hybrid simulation system in Sect. 3. The simulation results are given in Sect. 4. Finally, we give conclusions and future work in Sect. 5.

figure a

2 Intelligent Algorithms

2.1 Particle Swarm Optimization

In Particle Swarm Optimization (PSO) algorithm, a number of simple entities (the particles) are placed in the search space of some problem or function and each evaluates the objective function at its current location. The objective function is often minimized and the exploration of the search space is not through evolution [3]. However, following a widespread practice of borrowing from the evolutionary computation field, in this work, we consider the bi-objective function and fitness function interchangeably. Each particle then determines its movement through the search space by combining some aspect of the history of its own current and best (best-fitness) locations with those of one or more members of the swarm, with some random perturbations. The next iteration takes place after all particles have been moved. Eventually the swarm as a whole, like a flock of birds collectively foraging for food, is likely to move close to an optimum of the fitness function.

Each individual in the particle swarm is composed of three \(\mathcal D\)-dimensional vectors, where \(\mathcal D\) is the dimensionality of the search space. These are the current position \(\vec {x}_i\), the previous best position \(\vec {p}_i\) and the velocity \(\vec {v}_i\).

The particle swarm is more than just a collection of particles. A particle by itself has almost no power to solve any problem; progress occurs only when the particles interact. Problem solving is a population-wide phenomenon, emerging from the individual behaviors of the particles through their interactions. In any case, populations are organized according to some sort of communication structure or topology, often thought of as a social network. The topology typically consists of bidirectional edges connecting pairs of particles, so that if j is in i’s neighborhood, i is also in j’s. Each particle communicates with some other particles and is affected by the best point found by any member of its topological neighborhood. This is just the vector \(\vec {p}_i\) for that best neighbor, which we will denote with \(\vec {p}_g\). The potential kinds of population “social networks” are hugely varied, but in practice certain types have been used more frequently.

In the PSO process, the velocity of each particle is iteratively adjusted so that the particle stochastically oscillates around \(\vec {p}_i\) and \(\vec {p}_g\) locations.

2.2 Hill Climbing

Hill Climbing (HC) algorithm is a heuristic algorithm. The idea of HC is simple. In HC, the solution \(s'\) is accepted as the new current solution if \(\delta {}\le {}0\) holds, where \(\delta {}=f(s')-f(s)\). Here, the function f is called the fitness function. The fitness function gives points to a solution so that the system can evaluate the next solution \(s'\) and the current solution s.

The most important factor in HC is to define effectively the neighbor solution. The definition of the neighbor solution affects HC performance directly. In our WMN-PSOHC system, we use the next step of particle-pattern positions as the neighbor solutions for the HC part.

3 Proposed WMN-PSOHC System

We show the pseudo code of WMN-PSOHC in Algorithm 1. In following, we present the initialization, particle-pattern, fitness function and router replacement methods.

Initialization

Our proposed system starts by generating an initial solution randomly, by ad hoc methods [14]. We decide the velocity of particles by a random process considering the area size. For instance, when the area size is \(W\times {}H\), the velocity is decided randomly from \(-\sqrt{W^{2}+H^{2}}\) to \(\sqrt{W^{2}+H^{2}}\). Our system can generate many client distributions. In this paper, we consider the Exponential distribution of mesh clients as shown in Fig. 1.

Fig. 1.
figure 1

Exponential distribution of mesh clients.

Fig. 2.
figure 2

Relationship among global solution, particle-patterns and mesh routers.

Particle-pattern

A particle is a mesh router. A fitness value of a particle-pattern is computed by combination of mesh routers and mesh clients positions. In other words, each particle-pattern is a solution as shown is Fig. 2. Therefore, the number of particle-patterns is the number of solutions.

Fitness function

One of most important thing is to decide the determination of an appropriate objective function and its encoding. In our case, each particle-pattern has an own fitness value and compares other particle-patterns fitness value in order to share information of global solution. The fitness function follows a hierarchical approach in which the main objective is to maximize the SGC in WMN. Thus, we use \(\alpha \) and \(\beta \) weight-coefficients for the fitness function and the fitness function of this scenario is defined as:

$$\begin{aligned} \text{ Fitness }=\alpha {}\times \text{ SGC }({\boldsymbol{x}}_{ij},{\boldsymbol{y}}_{ij}) + \beta {} \times \text{ NCMC }({\boldsymbol{x}}_{ij},{\boldsymbol{y}}_{ij}). \end{aligned}$$
Fig. 3.
figure 3

The difference of \(V_{max}\) between RDVM and FC-RDVM.

Router replacement methods

Table 1. Parameter settings

A mesh router has x, y positions and velocity. Mesh routers are moved based on velocities. There are many router replacement methods in PSO field [1, 10,11,12]. In this paper, we compare two replacement methods: Rational Decrement of Vmax Method (RDVM) and Fast Convergence RDVM (FC-RDVM).

In RDVM, PSO parameters are set to unstable region (\(\omega =0.9\), \(C_1=C_2=2.0\)). A value of \(V_{max}\) which is maximum velocity of particles is considered. The \(V_{max}\) is kept decreasing with the increasing of iterations as shown in Eq. (1).

$$\begin{aligned} V_{max}(k) = \sqrt{ W^{2}+H^{2} }\times \frac{T-k}{k} \end{aligned}$$
(1)

where W and H are the width and the height of the considered area, respectively. Also, T and k are the total number of iterations and a current number of iteration, respectively. The k is a variable varying from 1 to T, which is increased by increasing the iterations.

In FC-RDVM, the \(V_{max}\) decreases with the increasing of iterations as shown in Eq. (2).

$$\begin{aligned} V_{max}(k) = \sqrt{ W^{2}+H^{2} }\times \frac{T-k}{T+\gamma k} \end{aligned}$$
(2)

where \(\gamma \) is a curvature parameter. When the \(\gamma \) is larger, the curvature is larger as shown in Fig. 3. Other parameters are the same with RDVM.

Fig. 4.
figure 4

Simulation results of WMN-PSOHC for SGC.

4 Simulation Results

In this section, we show simulation results using WMN-PSOHC hybrid intelligent system. In this work, we consider Exponential distribution of mesh clients. We consider the number of particle-patterns 9. We conducted simulations 100 times in order to avoid the effect of randomness and create a general view of results. The total number of iterations is considered 800 and the iterations per phase is considered 4. We show the parameter setting for WMN-PSOHC in Table 1.

We show the simulation results in Fig. 4 and Fig. 5. We see that both replacement methods can reach 100% for SGC. However, the convergence of RDVM is slower than FC-RDVM. Especially, for NCMC, the FC-RDVM for both cases (\(\gamma = 1.0\) and \(\gamma =10.0\)) performs better than RDVM. From the simulation results, we conclude that the FC-RDVM can find better solutions than RDVM for these considered scenarios.

Fig. 5.
figure 5

Simulation results of WMN-PSOHC for NCMC.

5 Conclusions

In this work, we evaluated the performance of WMNs by using a hybrid simulation system based on PSO and HC (called WMN-PSOHC). We compared the performance of RDVM with FC-RDVM considering Exponential distribution of mesh clients.

Simulation results show that WMN-PSOHC performs better when FC-RDVM is used compared with RDVM. Also, we conclude that FC-RDVM can control the speed of convergence by using the curvature parameter.

In our future work, we would like to evaluate the performance of the proposed system for different parameters and scenarios.