Dynamic router node placement in wireless mesh networks: A
PSO approach with constriction coefficient and its convergence
analysis
Chun-Cheng Lin
⇑Department of Industrial Engineering and Management, National Chiao Tung University, Hsinchu 300, Taiwan
a r t i c l e
i n f o
Article history: Received 12 April 2012
Received in revised form 5 November 2012 Accepted 30 December 2012
Available online 21 January 2013
Keywords:
Dynamic router node placement Wireless mesh network Particle swarm optimization Metaheuristic
Convergence analysis Stability analysis
a b s t r a c t
Different from previous works, this paper considers the router node placement of wireless mesh networks (WMNs) in a dynamic network scenario in which both mesh clients and mesh routers have mobility, and mesh clients can switch on or off their network access at different times. We investigate how to determine the dynamic placement of mesh rou-ters in a geographical area to adapt to the network topology changes at different times while maximizing two main network performance measures: network connectivity and client coverage, i.e., the size of the greatest component of the WMN topology and the num-ber of the clients within radio coverage of mesh routers, respectively. In general, it is com-putationally intractable to solve the optimization problem for the above two performance measures. As a result, this paper first models a mathematical form for our concerned prob-lem, then proposes a particle swarm optimization (PSO) approach, and, from a theoretical aspect, provides the convergence and stability analysis of the PSO with constriction coeffi-cient, which is much simpler than the previous analysis. Experimental results show the quality of the proposed approach through sensitivity analysis, as well as the adaptability to the topology changes at different times.
2013 Elsevier Inc. All rights reserved.
1. Introduction
Wireless mesh networks (WMNs) provide high flexibility of wireless connectivity everywhere within a wide geographical region due to their high-speed self-configuration capability and low set-up cost. Therefore, WMNs have broadly been iden-tified as a promising cost-effective solution for ubiquitous wireless broadband connectivity in a metropolis, and have natu-rally emerged as a fast growing research topic in communications and networking. A detailed survey on WMNs can be found in[1]. Since the practical problems in all layers of WMNs are very complicated in general, previous studies often investigated simplified versions of those problems after some degree of abstraction and assumption. In order to meet practical require-ments, a variety of research challenges for WMNs remain, e.g., the routing problems with different concerns[2], the assign-ment problems for multi-channel WMNs[10,24,25], the security problems in WMNs[20], among others.
The problem of router node placement (RNP) in WMNs has been studied, e.g., see[4,29,30]. Such a combinatorial optimi-zation problem considers a WMN composed of mesh clients and mesh routers in which mesh routers serve as the access point towards mesh clients and connect to other mesh routers through point-to-point wireless links. To respond to the het-erogeneity of WMNs in practice, each mesh router is assumed to have a different size of radio coverage, and two mesh
0020-0255/$ - see front matter 2013 Elsevier Inc. All rights reserved.
http://dx.doi.org/10.1016/j.ins.2012.12.023 ⇑ Tel.: +886 3 5731758; fax: +886 3 5729101.
E-mail address:[email protected]
Contents lists available atSciVerse ScienceDirect
Information Sciences
routers can communicate with each other via their radio coverage. On the other hand, mesh clients only have the essential functions for network connectivity and routers, but do not have the function of gateways or bridges. Hence, mesh clients must go through mesh routers to communicate with other nodes. That is, the network access of WMNs is accomplished through the gateway and bridging functions of mesh routers.
The performance of WMNs mainly depends on the geographical placement of mesh routers and mesh clients, in which the placement of mesh routers plays a crucial role as it determines the connectivity and coverage of the whole network. If the mesh routers are placed without taking into account specific restrictions of the real geographic area and the topology underlying WMNs, it would lead to poor networking performance. In practice, however, it would be impossible to find an optimal placement of mesh nodes, since the distribution of real mesh clients cannot be predicted. Hence, we assume that the locations of mesh clients are fixed in the deployment area by uniform distribution. But even by doing so, it is still computationally hard to achieve the optimality of the problem [3,12,18,28], and therefore, in practice, the mesh node deployment problems for WMNs are usually solved by metaheuristic approaches. The purpose of using metaheuristic ap-proaches is to achieve near-optimal solutions in reasonable time, when the real optimal solution cannot be found in deter-ministic polynomial time. Although metaheuristic methods usually find local optimal solutions, they suffice for most practical situations.
With the advancement in communication technologies, there are more and more studies that are taking into account the mobility in wireless networks, e.g., dynamic multicast problems in mobile ad hoc networks[7], distributed geographic ser-vice discovery in mobile sensor network[14], channel allocation in mobile wireless networks[26], among others. In this pa-per, we consider the mobility of WMN in a dynamic network scenario in which both mesh clients and mesh routers1have
mobility, and mesh clients can switch on or off their network access at different times, while the geographical locations of mesh routers can be adjusted to adapt to the network topology changes. In such a dynamic scenario, we investigate the problem of dynamic router node placement in WMNs (WMN-dynRNP), which is to find a dynamic placement of mesh routers in a rectan-gular geographical area to adapt to the network topology changes at different times while maximizing both network connec-tivity and client coverage. In our formulation, network connecconnec-tivity is measured by the size of the greatest component of the topology underlying the WMNs, while client coverage is the number of clients within the radio coverage of mesh routers, which can represent an index of the QoS for the WMNs. Note that most of the previous works focused on solving the static network scenario of our concerned problems by using metaheuristics, e.g., simulated annealing[29]and genetic algorithm[4,30].
Particle swarm optimization (PSO) simulates a population of particles to solve optimization problems over continuous space by the guidance of both a particle’s own experience and other particles’ experiences, which allow simple mathematical formulas to find promising solutions and it has been proven to be efficient and effective in a variety of applications, e.g., the design of water supply systems[19], manufacturing process[21], structural design optimization[23], among others. Hence, it is of interest and importance to design a PSO approach to the WMN-dynRNP problem. This paper provides an efficient and effective PSO approach for the WMN-dynRNP problem, discusses the effect of a variety of parameters on the influences of the WMNs, and evaluates the quality of the proposed approach through detailed simulations. In addition, from a theoretical as-pect, we provide the convergence and stability analysis of the PSO with constriction coefficient, which is much simpler than the previous analysis[9]. Note that the constriction coefficient has been used to improve the performance of PSO[5,9].
The main contributions of this paper are summarized as follows:
Previous works[4,30]only investigated the static network scenario of our concerned problem, and never formu-lated the static network problem in a mathematical form. In this paper, a mathematical formulation of the WMN-dynRNP problem is derived, so that interested readers are able to investigate the problem precisely in the future.
This paper provides an efficient PSO approach for the WMN-dynRNP problem and evaluates the effect of a variety of parameters on the influences of WMNs experimentally.
A version of PSO, called the PSO with constriction coefficient, is applied in this paper, but the previous algorithm analysis for this version is more complicated[9]. One of the most important contributions of this paper is to provide the convergence and stability analysis for this version of PSO, which is much simpler than the previous analysis. Previous works[30,4]focused on placing mesh routers in a grid area, which restricts the positions of mesh nodes. In
contrast, our PSO approach allows mesh routers with high flexibility to be placed at floating-point positions in a continuous deployment area. In addition, previous approaches optimized network connectivity and client coverage in two stages, while ours optimizes them at the same time, because client coverage may also be crucial in some practical services. Some experimental results will be provided to show the advantage of simultaneous optimization. We also develop a visualization user interface for the WMN-dynRNP problem. The interface allows users to observe the evolution of solutions, and further get insight into how to adjust parameters of PSO to improve the solutions. Although a large number of studies have been made on a wide variety of problems for wireless networks, to the best of our understanding, our concerned dynamic problem rooted from [30,4]is specific, because most of the other previous works were designed for network packets, or did not consider the mobility of nodes. For example, a recent work in
1
[22]surveyed routing and mobility approaches in IPv6 over LoWPAN mesh networks. Those approaches are different from our work because they were designed for the routing and mobility problems for network packets, but our work is con-cerned with the allocation of node resources, which is a kind of combinatorial optimization problem. In addition, another of our main contributions is to provide a PSO approach with a simpler convergence analysis, which makes our work spe-cific. Consider another recent work in[31]which built a convex optimization formulation for the distributed scheduling for video streaming over multi-channel multi-radio multi-hop wireless networks that jointly considers channel assign-ment, rate allocation, and routing. This work did not consider the mobility of nodes, but our work does. Therefore, this work is also different from ours.
The rest of this paper is organized as follows. In Section2, we describe our concerned problem in a formal form. We pro-pose a PSO approach to the concerned problem in Section3. Section4gives the convergence and stability analysis of the PSO with constriction coefficient. Section5shows the experimental results of our approach. A conclusion is given in Section6. 2. Problem description
A wireless mesh network (WMN) consists of two types of nodes: mesh routers and mesh clients. Each mesh client can only communicate with the node within the same radio coverage or any node that can be accessed via multi-hop router com-munications. That is, any mesh client cannot communicate with other nodes in the network if it is not located in the radio coverage of some mesh routers. To respond to the heterogeneity of WMNs in practice, we assume that mesh routers have different radio coverage ranges.
Consider a WMN with n mesh routers and m mesh clients deployed in a two-dimensional geographical area. Let the mesh nodes in the WMN be denoted by U = R [ C in which
R = {r1, r2, . . ., rn} where each rirepresents a mesh router and has a radio coverage range of size
c
i;C = {c1, c2, . . ., cm} where each cirepresents a mesh client.
This paper considers a dynamic WMN scenario in which both mesh routers and mesh clients have mobility, and mesh cli-ents can switch on or off their network access at different times so that the network topology changes in time, while we adjust the locations of mobile mesh routers to adapt to the topology changes. We assume that the locations of mesh routers are determined periodically, i.e., there is a fixed time period between any two key time points, and all the decisions are made only at key time points. At each different key time point, mesh clients with mobility may have different locations, and the placements of mesh routers are determined according to the modified deployment of mesh clients in the geographical area. Based on the above, such a dynamic framework is modeled as follows. At the tth key time point, each mesh client ci2 C
is located at DtðciÞ 2 R2in the deployment area. According to the deployment of mesh clients at each tth key time point,
we determine the placements of mesh routers, denoted by Dt(R) = {Dt(r1), Dt(r2), . . ., Dt(rn)}. Let the circle centered at the
location Dt(ri) of node riwith radius
c
ibe denoted by!ti (i.e., the radio coverage of mesh router riat the tth key timepoint). For a determined placement of mesh routers at the tth key time point, we can establish a topology graph Gt= (Ut,
Et) in which
Ut= R [ (CnSt) where Stis the set of mesh clients that switch off network access or do not access a network at the tth
key time point;
for any two mesh routers ri, rj2 R, edge (ri, rj) 2 Etif!ti\! t j–;;
for any mesh client ci2 CnStand any mesh router rj2 R, edge (ci, rj) 2 Etif DtðciÞ 2!tj.
Note that, for similarity, we assume that two mesh routers can communicate only if their radio coverage is overlapped. The assumption is reasonable because two mesh routers with overlapping radio coverage imply that they are so close geo-graphically that they can communicate with each other.
It should be noticed that graph Gtmay not be connected, i.e., Gtmay consist of several subgraph components. In order to
increase the network connectivity of WMN, we would like to make the size of the greatest subgraph component as large as possible. However, a large size of the greatest component does not imply a wide radio coverage of mesh clients; hence, we consider client coverage as the other concerned design on placement of mesh routers.
Assume that there are h subgraph components G1t; . . . ;Ght in Gt, i.e., Gt¼ G1t[ G 2 t[ G h t, and G i t\ G j t¼ ; for i, j 2 {1, . . ., h}.
The size of the greatest subgraph component in G can be expressed as follows: /ðGtÞ ¼ max i2f1;...;hg G i t n o : ð1Þ
The client coverage can be expressed as follows:
wðGtÞ ¼ jfi; dtðciÞ > 0 for i 2 f1; . . . ; mggj; ð2Þ
where dt(ci) is the degree of node ciin topology graph Gt.
In order to explain the above notation, we demonstrate two examples for a WMN with five mesh routers c1, . . ., c5and 14
have a radio coverage overlap, they are connected by a green dashed link (e.g., see the green dashed link between r1and r2in
Fig. 1a). If a mesh client is located within the radio coverage range of a mesh router, they are connected by a red dotted link (e.g., c1is connected to r1and r2by two red dotted links inFig. 1a because it is located within both of the radio coverage
ranges of r1and r2simultaneously). Hence, the topology graph in Fig. 1a has three subgraph components among which
the size of the greatest component is 8 (i.e., / = 8), and 10 mesh clients c1–c7, c11–c13are covered (i.e.,
w
= 10). If we movemesh router r2to the center location of the deployment area as shown inFig. 1b, then all the components are merged into a
single one with size 16 (i.e., / = 16), and 11 mesh clients are covered (i.e.,
w
= 11). That is, both of the two network perfor-mance measures are improved by moving only the mesh router r2. As a result, it is of interest to investigate how to place themesh routers so that both of the two network performance measures are optimal.
Furthermore, the problem becomes more complicated if mesh clients have mobility and can switch on or off their net-work access as time goes by. For example, consider a scenario inFig. 2a transformed fromFig. 1b. In this scenario, mesh rou-ters c6and c11switch off their network access (i.e., they do not show inFig. 2a), and some of the mesh clients move to new
locations. Although all of the mesh routers are connected inFig. 2a (in which / = 9), only 4 mesh clients are covered (i.e.,
w
= 4). Hence, the new scenario performs worse than the original configuration inFig. 1b. To increase the total client cov-erage, we move mesh router r2to the lower right location of the deployment area as shown inFig. 2b, in which the sizeof the greatest component is 8 (i.e., / = 8), and seven mesh clients are covered (i.e.,
w
= 7). Although thew
value is increased by 3, the / value is decreased by 1. However, this does not imply that this movement is better, because the two network measures have different weights in the objective function.With the above notation, our concerned problem is to find a dynamic placement Dt(R) of mesh routers in a WMN to adapt
to the network topology change at any tth key time point so that both the size of greatest comments /(Gt) and the client
coverage
w
(Gt) are as large as possible. Hence, our concerned problem can be stated as follows:(a)
(b)
Fig. 1. Two placements for the same WNN with five mesh routers and 14 mesh clients.
(a)
(b)
Fig. 2. (a) A scenario transformed fromFig. 1b, in which mesh routers c6and c11switch off their network access, and some of the mesh clients move to new locations. (b) Mesh router r2moves to the lower right area to increase the client coverage.
DYNAMICROUTERNODEPLACEMENT INWIRELESSMESHNETWORK(WMN-dynRNP): Give a WMN with n mesh routers and m mesh
clients, for t = 1, 2, . . ., the topology graph Gt= (Ut, Et) underlies the WMN at the tth key time point (as described above)
de-ployed in a two-dimensional W H area in which mesh clients have mobility and can switch on or off their network access, while the locations of mesh routers need be determined to adapt to the topology changes. The objective of the problem is to find a dynamic placement Dt(R) = {Dt(r1), . . ., Dt(rn)} of the n mesh routers so that both the size of the greatest subgraph
com-ponent /(Gt) and the client coverage
w
(Gt) are maximized.Note that if the WMN-dynRNP problem at a fixed key time point is considered independently, then it can be viewed as a static problem. It is obvious that the static problem contains the following NP-complete problem – Minimum Geometric Disk Cover[15,13], so the problem is an NP-hard problem, i.e., it cannot be solved by an efficient deterministic polynomial-time algorithm. Hence, we devise a PSO metaheuristic approach to the WMN-dynRNP problem, which provides an efficient prom-ising solution, as compared to the NP-hard problem.
MINIMUMGEOMETRICDISKCOVER: Given a set P # Z Z of points in the plane and a rational number r > 0, the problem is to find
a set of centers C # Q Q in the Euclidean plane, such that every point in P will be covered by a disk with radius r and center in one of the points in C.
3. A PSO approach to the WMN-dynRNP problem
The PSO is an algorithm used for solving optimization problems based on the social intelligence of a swarm of particles, proposed by[11,17]. The basic idea of PSO is to simulate a swarm of particles’ social behavior of searching for a food source in a multi-dimensional search space. It is assumed that each particle has a position and a velocity, which are updated by iter-ation. Each particle moves toward the food source by the guidance of its local best known position (which has been found so far by itself) and also the global best known position (which has been found so far by any particle of the swarm). The food source is associated with the global optimal solution of the concerned optimization problem, while the location of each par-ticle in the search space is associated with a candidate solution. Hence, the global optimal solution can be found if almost all the candidate solutions move to the same position in the search space.
This section gives in detail our PSO approach to the WMN-dynRNP problem. We first give the solution representation of each particle, then the fitness function used in the PSO approach, then the scheme of updating positions of each particle, and finally our PSO algorithm for the WMN-dynRNP problem.
3.1. Solution representation
The solution of our concerned WMN-dynRNP problem at each key time point is a placement of n mesh routers in a two-dimensional W H area, whose lower-left corner is placed at the origin of an x y plane. That is, the (x, y)-coordinates of the n mesh routers should be determined for each candidate solution.
In PSO, each particle k represents a candidate solution, which is determined by the following three vectors and two fitness values: the x-vector Xt
k¼ ðxtk1;xtk2; . . . ;xtkð2nÞÞ records the current position of the particle in the search space in which
ðxt
kð2i1Þ;xtkð2iÞÞ denotes the (x, y)-coordinate of mesh router rifor i = 1, 2, . . ., n; the p-vector Ptk¼ ðptk1;ptk2; . . . ;ptkð2nÞÞ records
the location of the best solution found so far by particle k; the
v
-vector Vtk¼ ðv
tk1;v
tk2; . . . ;v
tkð2nÞÞ records the velocity alongwhich particle k will move; f ðXt
kÞ records the fitness of X t k; f ðP
t
kÞ records the fitness of P t
kin which the superscript t denotes
the case at the tth key time point.
Since all of the mesh routers are placed within a W H area, we have the following constraints: "i 2 {1, . . ., n}, 0 6 xt kð2i1Þ6W; ð3Þ 0 6 xt kð2iÞ6H; ð4Þ W 6
v
t kð2i1Þ6W; H 6v
t kð2iÞ6H:In order to avoid drastic change of velocities, we have the following constraints for velocities: "i 2 {1, . . ., n},
Vmax6
v
tkð2i1Þ6Vmax; ð5Þwhere Vmaxis a given constant that is no more than max{W, H}. The constraint for velocities is also reasonable to meet the
practical condition of our problem in which mesh routers cannot move too far between two key time points, though they have mobility.
From the view point of the whole swarm, a vector and a fitness of the best solution that has been found so far are stored in each iteration: P
¼ ðp
1;p2; . . . ;pð2nÞÞ records the location of the best solution found so far by all particles; f(P
⁄) records the
fitness of P⁄. That is, after finishing the PSO algorithm, P⁄and f(P⁄) store the location and the fitness value (objective value)
3.2. Fitness function
At tth key time point, if a placement Xt
kof mesh routers for particle k is determined, we can obtain a topology graph Gt,k
underlying the WMN. Recall that the objective of our concerned problem is to maximize the size of the greatest subgraph component /(Gt,k) and the client coverage
w
(Gt,k), which can be calculated by Eqs.(1) and (2), respectively.The fitness function of Gt,kis calculated as follows:
f ðXt kÞ ¼ k /ðGt;kÞ n þ mþ ð1 kÞ wðGt;kÞ m ; ð6Þ
where k is a parameter in the range [0, 1] that controls the balance between the two terms of the equation. Note that the denominator of each term of the equation is used for normalization.
There are two possible settings for the two objectives of the WMN-dynRNP problem. The first setting is bi-level optimi-zation, which considers /(Gt,k) as the main objective, and
w
(Gt,k) as the second one. That is, the setting has high priority tooptimize the first objective, and then optimize the second objective without worsening the best value of the first objective. The second setting is simultaneous optimization, which optimizes the two objectives simultaneously. Our fitness function in Eq.(6)applies the second setting. Note that the previous work[29]for the static network scenario of the WMN-dynRNP problem applies the first setting.
3.3. Updating position
Each iteration of the main loop of PSO updates the velocity vector Vkby the following formula (see alsoFig. 3):
Vt k 0 ¼
x
Vt kþ c1 r1 Ptk X t k þ c2 r2 P Xtk ; ð7Þ where Vt k 0is the updated value of velocity vector Vkof particle k; c ¼ c1þ c2>4;
x
¼ 2=j2 cffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi c2 4c
p
j; r1and r2are two
random numbers between 0 and 1. The position of each particle k by the following formula: Xtk 0 ¼ Xtkþ V t k 0 ; ð8Þ where Xt k 0
is the updated value of position vector Xkof particle k, respectively. Since the computation of the above two
equa-tions requires only basic arithmetic operaequa-tions, they can be computed in O(1) time. Note that a PSO approach with updating formula of Eq.(7)is called the PSO with constriction coefficient[9].
As illustrated inFig. 3, the basic concept of the above formulas is that the velocity is updated from Vt kto V
t k 0
according to the guidance of both the location Pt
kof the best solution found so far by particle k and the location P
⁄of the best solution
found so far by all particles, and parameters c1and c2control their relative influence, respectively, while r1and r2are random
numbers used to increase the probability of escaping local optimum. Since the value of the composite force vector may be exploded, the factor
x
(which is called constriction coefficient) is used for reducing some undesirable explosive feedback ef-fects[8]. In addition, it does not require any additional parameters, because the value is based on c1and c2(which are giveninitially). 3.4. Algorithm
The PSO algorithm works with a swarm of particles, each of which represents a candidate solution of the WMN-dynRNP problem at the tth key time point. For dynamic scenario, we consider two cases to initialize each particle: in the case when t = 0, the particle is located at a random position of the search space; otherwise (i.e., t > 0), the particle is located at its posi-tion of the search space at the (t 1)th key time point. By doing so, particles can inherit the intelligence at the previous key time points. Then each particle searches the food source (optimal solution) in the search space by iteration, i.e., it moves to-ward the food source at a velocity, which is updated by iteration. The key design of the PSO is to update the velocity by the guidance of its own experience (local best known solution) and also the experience of other particles (the global best known solution), as described in Eq.(7).
Algorithm 1. PSO (key time point t) 1: for each k 2 {1,2, ,
g
} do 2: if t > 0 then3: Xtk Xt1k , and calculate its fitness f ðX t kÞ.
4: Vt
k Vt1k .
5: else
6: initialize particle k’s position Xtk¼ xtk1; ; x t kð2nÞ
randomly where xt
kð2i1Þ Uð0; WÞ and x t
kð2iÞ Uð0; HÞ for
each i 2 {1,2, ,n}, and calculate its fitness f(Xk).
7: initialize particle k’s velocity Vt
k¼
v
tk1; ;v
tkð2nÞ
randomly where
v
tkð2i1Þ Uð0; WÞ and
v
tkð2iÞ Uð0; HÞ foreach i 2 {1,2, ,n}. 8: end if 9: Pt k Xtkand f ðPtkÞ f ðXtkÞ. 10: if f Pt k >f ðP Þ then 11: P Pt kand f ðPÞ f ðP t kÞ 12: end if 13: end for 14: repeat 15: for each k 2 {1,2, ,
g
} do16: update particle k’s velocity Vtkby Eq.(7).
17: 8i 2 f1; ; 2ng;
v
ti is truncated if violating Constraint(5).
18: update particle k’s position Xt
kby Eq.(8).
19: 8i 2 f1; ; 2ng; xt
i is truncated if violating Constraints(3) and (4).
20: calculate f Xtk . 21: if f Xtk >f Ptk then 22: Pt k Xtkand f ðPtkÞ f Xtk . 23: if f Ptk >f ðP Þ then 24: P⁄ P kand f ðPÞ f Ptk . 25: end if 26: end if 27: end for
28: until {the maximum iteration
s
is reached or f(P⁄) exceeds a threshold} 29: output f(P⁄) as the solution at the tth key time point
Let
g
denote the total number of particles. The algorithm of PSO is given inAlgorithm 1, in which the key steps are ex-plained as follows. Lines 1–13 are the initialization of all of the vector variables Xtk; P t k; P
; Vt
kand all of the fitness values for
each particle k. Line 1 considers each particle k. Line 2 judges whether t is the starting key time point. If the condition is true, then Lines 3 and 4 initialize Xt
kand V t kby their values X t1 k and V t1
k at the previous key time point, respectively; otherwise,
Lines 6 and 7 initialize Xt kand V
t
krandomly under Constraints(3)–(5), in which Uða; bÞ is a uniform distribution over [a, b].
Once Xtkis determined, its fitness f ðX t
kÞ is calculated by Eq.(6). Line 9 assigns the current position X t
kand the current fitness
value f ðXt
kÞ to the local best position P t
kand the corresponding fitness value f ðP t
kÞ, respectively. Lines 10–12 updates the
glo-bal best position P⁄and its fitness value f(P⁄) that have been found so far.
Lines 14–28 are the main loop of the PSO algorithm. For each iteration, we repeat Lines 15–27 until the total number of iterations is greater than the maximum iteration number or the best fitness value f(P⁄) found so far exceeds a threshold
va-lue. Each iteration of the main loop considers each particle k. The velocity Vtkand the position X t
kare updated according to
Eqs.(7) and (8), respectively, in Lines 16 and 18. Since Vt kand X
t
kneed to satisfy Constraints(5), (3) and (4), they are truncated
if those constraints are violated. Once the position Xt
kis updated, we calculate its fitness f X t k
in Line 20. In Lines 21–26, the local best position Ptkand the global best position P⁄are updated if a better position is found; their fitness values are updated
at the same time.
Since f(P⁄) stores the global best solution of each iteration, Line 29 outputs the final best solution at the end of the PSO
algorithm.
4. Algorithm analysis
In this section, we derive the convergence and stability analysis for the version of the PSO with constriction coefficient, by analogy of the method of analyzing convergence and stability of the PSO in[23]. Our analysis has the advantage of providing a
much easier method to realize the convergence and stability of the PSO with constriction coefficient, in comparison to the ori-ginal analysis[9]. For notational simplicity, the superscript t of Xt
k, V t k, and P
t
kis omitted throughout the analysis in this section.
4.1. Convergence analysis
To conduct the convergence analysis of the PSO with constriction coefficient, we consider the time step valueD
s
to describe the dynamics of the PSO, and rewrite the velocity and position update formulas in Eqs.(7) and (8), respectively, as follows: V0 k¼x
Vkþ c1 r1ðPk XkÞD
s
þ c2 r2ðP XkÞD
s
; ð9Þ X0 k¼ Xkþ V0kD
s:
ð10ÞBy replacing Eq.(9)into Eq.(10), we obtain the following: X0 k¼ Xkþ
xV
kD
s
þxðc
1r1þ c2r2Þ c1r1Pkþ c2r2P c1r1þ c2r2 XkD
s;
ð11Þwhich can be viewed as a general gradient line-search form as follows X0
k¼ bXkþ
aP
k;where Xbk¼ Xkþ
x
VkDs
;a
¼x
ðc1r1þ c2r2Þ can be viewed as a stochastic step size, and Pk¼ ðc1r1Pkþc2r2PÞ=ðc1r1þ c2r2Þ Xk can be viewed as a stochastic search direction. Since r1, r22 [0, 1], we have
a
2 [0,x
(c1+ c2)]and Pk2 ½Xk;ðc1Pkþ c2PÞ=ðc1þ c2Þ Xk.
By rearranging the terms in Eq.(11), we obtain X0
k¼ Xkð1
xc
1r1xc
2r2Þ þxV
kD
s
þxc
1r1Pkþxc
2r2P: ð12ÞAlso, by rearranging the terms in Eq.(9), we obtain V0k¼ Xk
xðc
1r1þ c2r2ÞD
s
þxV
kþxc
1r1 PkD
s
þxc
2r2 PD
s
: ð13ÞWe combine the above two equations to have the following matrix form: X0 k V0 k " # ¼ 1
xc
1r1xc
2r2x
D
s
xðc1r1þc2r2Þ Dsx
" # Xk Vk þxc
xc11rr11xc
2r2 Ds xc2r2 Ds " # Pk P ; ð14Þwhich can be thought of as a discrete dynamic system representation for the PSO in which [X, V]Tis the state subject to an
external input [P, P⁄]T, and the two terms on the right side of the equation correspond to the dynamic and input matrices,
respectively. Different from Eqs.(8) and (7), the above equation gives another explanation for the new location X0
kand
veloc-ity V0
kof particle k. It means that the new location X 0
k(resp., velocity V 0
k) is a linear combination of four terms: Xk, Vk, Pk, P⁄, in
which a part of the new values of X0
kand V0kare derived from the original Xkand Vkin the system, while Pkand P⁄are
addi-tional inputs of the system.
Supposing that no external excitation exists in the dynamic system, [P,P⁄]Tis constant, i.e., other particles cannot find
bet-ter positions. Then, a convergent behavior could be maintained. If convergent, as k ! 1; X0 K;V0k
T
¼ ½Xk;VkT. That is, the
dynamic system becomes: 0 0 ¼ xc1r1
xc
2r2x
D
s
xðc1r1þc2r2Þ Dsx
1 " # Xk Vk þxc
xc11rr11xc
2r2 Ds xc2r2 Ds " # Pk P ;which holds only when Vk= 0 and Xk= Pk= P⁄, where the convergent point is an equilibrium point if there is no external
exci-tation, but better points are found by optimization process with external excitation. 4.2. Stability analysis
We further get insight into the dynamic system in Eq.(14). First, we calculate the characteristic equation of the dynamic system as follows:
k2 ðx
xc
1r1xc
2r2þ 1Þk þx
¼ 0:The eigenvalues are obtained as follows:
k1;2¼ 1 þ
x
xc
1r1xc
2r2 ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi ð1 þx
xc
1r1xc
2r2Þ2 4x q 2 ;where k1P k2. Note that the necessary and sufficient condition for stability of a discrete-dynamic system is that all the
de-rived eigenvalues lies inside a unit circle around the origin on the complex plane, i.e., jk1,2j < 1 in this case.
When k1< 1, we derive
xðc
1r1þ c2r2Þ > 0;1
x
þxðc
1r1þ c2r2Þ > 0;where the first condition implies c1r1+ c2r2> 0 since
x
> 0, while the second condition impliesx
< 1 since r1, r22 [0, 1].When k2> 1, we derive
x
c1r1þ c2r2 2 1 <1;xðc
1r1þ c2r2Þ < 3 þx:
in which the first condition implies
max 0; 1 1
x
<c1r1þ c2r2<min 2 þ 2x
;1 þ 3x
: Since r1, r22 [0, 1], we have the following conditions for stability:max 0; 1 1
x
<c1þ c2<min 2 þ 2x
;1 þ 3x
; 0 <x
<1: Hence, the system is stable if the above conditions hold.5. Implementation and experimental results
Based on the proposed PSO approach described in the previous sections, we implemented the proposed method. Some experiments were conducted for evaluating the performance of our proposed PSO approach. In this section, we first explain how the data used in the experiments were generated and the environment where our experiments were tested, and then give the experimental results of a variety of cases in static and dynamic scenarios.
5.1. Data and environment
Similar to[29], we consider the following three cases:
Case 1: There are 32 mesh routers (m = 16) and 48 mesh clients (n = 48) on a 32 32 area (W = H = 32). Each mesh router is associated with a circular radio coverage range with radius Uð3; 6Þ.
Case 2: There are 64 mesh routers (m = 32) and 96 mesh clients (n = 96) on a 64 64 area (W = H = 64). Each mesh router is associated with a circular radio coverage range with radius Uð4pffiffiffi2 2; 8pffiffiffi2 2Þ.
Case 3: There are 128 mesh routers (m = 64) and 192 mesh clients (n = 192) on a 128 128 area (W = H = 128). Each mesh router is associated with a circular radio coverage range with radius Uð7; 14Þ.
Note that the deployment area is a grid in[29], meaning that each coordinate is an integer, while the coordinates in our setting are floating-point numbers, which allow for more general applications. For each case, we generate 10 instances, in which the mesh clients are distributed in the deployment area according to a uniform distribution.
The simulation of our proposed PSO algorithm is performed using the C++ programming language, and, unless otherwise described in the rest of this paper, our PSO algorithm applies the parameter setting given inTable 1. The simulation considers the WSNs deployed in the above three cases, i.e., on 32 32, 64 64, and 128 128 areas.
We explain the parameter setting as follows. The reason why we use k = 0.3 is explained as follows. After executing a lot of experiments under a variety of k values, we found that in the case of using a larger k value, the radio coverage circles tend to gather in a dense area so that many mesh clients are not covered (e.g., seeFig. 4a), while in the case of using a smaller k value, the radio coverage circles dispersed over the area can cover most mesh clients but cannot constitute a larger compo-nent (e.g., seeFig. 4c). That is, the k value determines the tradeoff between our concerned two objectives (/ and
w
) to some degree. Hence, we take a k value that has a high probability to satisfy the two concerned objectives simultaneously. After considerable trial and error, we found that the results usingg
= 0.3 perform better (e.g., seeFig. 4b). In addition, Vmaxisset to 0.1, because mesh routers cannot move fast between any two time steps.
Our PSO algorithm was tested on an Intel Core i3-2100 CPU @ 3.1 GHz with 10 GB memory. The average running time for determining a placement of an instance of case 1, case 2, and case 3 is about 0.2647, 0.6675, and 2.0660 s, respectively. It implies that our PSO algorithm has the ability to efficiently cope with the WMN-dynRNP problem. As shown inFig. 4, we developed a visualization user interface. With the guide of the visualization, users can adjust the parameters of PSO
accordingly to improve the solutions. For example, we show the visualization of the dynamic topology changes of a WMN instance inFig. 5, from which we observe that all of the mesh routers are merged to form a single subgraph component and cover more mesh clients from the left subfigure to the right subfigure.
Table 1
Parameters used in simulation.
Parameter Value
The number of iterations between two key time points 10 The number of mesh clients that change their locations 0, 16, 32, 48 The probability that each mesh client can switch its network access (%) 1 The maximum distance to which mesh clients can move 10 The parameter k that controls the balance between two objectives 0.3
The cognitive learning rate, c1 3
The social learning rate, c2 2
The limit Vmaxof velocities 0.1
The total number of particles,g 100
The maximum iteration,s 10
Fig. 4. Visualization of the WMNs under three different k values, in which each blue point is a mesh client, while each red point is a mesh router that acts as the center of a radio coverage circle. (a) k = 1.0: / = 42,w= 26. (b) k = 0.3: / = 54,w= 38. (c) k = 0.0: / = 32,w= 36. (For interpretation of the references to colour in this figure legend, the reader is referred to the web version of this article.)
5.2. Experimental results
In order to observe the convergence of the best fitness values in our PSO method, we plot the best fitness values vs. the number of iterations of the main loop of the PSO algorithm for a case-1 instance inFig. 6a, and the plots of their correspond-ing / and
w
values vs. the iteration numbers inFig. 6a and b, respectively. FromFig. 6a, we can observe that the best fitness value converges at iteration 11. FromFigs. 6b and c, both of the two objective values can influence the best fitness value before convergence.Fig. 7shows the bar chart of the best fitness values of 100 runs of our PSO algorithm for the same case-1 problem in-stance. We can see that the 100 runs obtain the results with different best fitness values, but all of them fall in the range [0.6, 0.8]. In addition, each bar inFig. 7uses blue and yellow colors to represent the ratios of the / and
w
objectives, respec-tively. Those different ratios imply that different runs are able to generate diversified results, which can be viewed as an advantage of the PSO algorithm.The statistics of all of the problem instances are given inTable 2, in which three major columns indicate the three prob-lem cases, in each of which four columns store the best fitness, average fitness, worst fitness, and the standard deviation of fitness values in the 100 runs of our PSO algorithm for each instance of the case; rows indicate 10 instances of each problem case. The averages of each column are stored at the bottom row ofTable 2, from which we observe that our PSO approach performs best as the problem size increases. But we cannot conclude that our PSO approach is more suitable for larger prob-lems, because many parameters exist to determine the resultant statistics. However, at least we found that small deviation shows the robustness of implementation, so that the algorithm is always able to deliver good solutions.
In order to realize the influence of the number of particles (
g
) and the maximal number of iterations (s
) on the resultant fitness values, we give a sensitivity analysis for the two parameters inTable 3, in which the best fitness and average fitness values of each case are calculated by the average of running 10 instances 100 times of our PSO algorithm. FromTable 3, we observe the following inferences, though some variation exists due to the randomness in the PSO scheme:If the number of particles (
g
) is fixed, more iterations (s
) result in a larger average fitness value, i.e.,s
has a positive influ-ence on the average fitness. This inferinflu-ence holds for all situations inTable 3, e.g., see the average fitness values (.7918, .7991, .8035) of differents
values in case 1 wheng
= 50. Note that this inference does not hold for the best fitness. In contrast to the above, if the maximal number of iterations (s
) is fixed, more particles (g
) result in a larger averagefit-ness value, i.e.,
g
has a positive influence on the average fitness. This inference holds for all situations inTable 3, e.g., see the average fitness values (.7918, .8108, .8204) of differentg
values in case 1 whens
= 5.In order to investigate the interwork of
g
ands
, we observe fromTable 3that in case 2, the average fitness ofg
= 50,s
= 15 (.8098) is less than that ofg
= 100,s
= 5 (.8166), and the average fitness ofg
= 100,s
= 15 (.8241) is less than that ofg
= 150,s
= 5 (.8242). Such observation combined with the first inference above leads us to wonder whether the number of iterationss
can be transformed into the number of particlesg
to obtain similar or better results. If this is true, then theaverage fitness values in a column can respect its increasing ordering, e.g., see case 2 in Table 3:
.8026 < .8076 < .8098 < .8166 < .8223 < .8241 < .8242 < .8283 < .8314. However, the relationship does not hold for the other two cases.
Subsequently, in order to demonstrate the ability of our approach to adapt to the topology changes (in which we suppose that the topology graph changes in each 10 iterations), we run 100 iterations of the PSO algorithm on a case-1 instance in a static and three different dynamic scenarios, and their plots of best fitness vs. the iteration number are given inFig. 8a–d, respectively. The three dynamic scenarios assume three different degrees of dynamics: 16, 32, and 48 mesh clients (i.e., one-third, two-thirds, and all of the mesh clients) change their locations in each 10 iterations inFig. 8b–d, respectively. Note that for comparison, we use the same seed number for the pseudorandom function in our programming implementation in each case inFig. 8, from which we observe that the run chart of the best fitness values of the first 10 iterations inFigs. 8a–d has the same trajectory. 0.6 0.65 0.7 0.75 0.8 0 2 4 6 8 10 12 14 best fitness iteration No.
(a)
38 40 42 44 46 0 2 4 6 8 10 12 14size of greatest component
φ iteration No.
(b)
31 32 33 34 35 36 37 0 2 4 6 8 10 12 14 client coverage ψ iteration No.(c)
Fig. 6. (a) Plot of best fitness values vs. the iteration number. (b) Plot of the / values vs. the generation number. (c) Plot of thewvalues vs. the generation number.
In the static scenario (Fig. 8a), the best fitness values converge and do not have any change after the 13th iteration. When the number of the mesh clients that change their locations is small (Fig. 8b), the best fitness values almost do not change during each time period (i.e., within each 10 iterations), meaning that the best fitness value is still the optimal after a slight topology change. However, as the number of the mesh clients that change their locations increases (Fig. 8c and d), the best fitness value has to be improved to achieve the optimality during each time period, e.g., see the best fitness values from the 40th to 45th iterations inFig. 8d. It can also be seen that the best fitness values are modified drastically when there are more dynamics. In addition, we observe that the range accommodating all of the best fitness values in slight dynamics (e.g., range [0.6, 0.75] inFig. 8b) is smaller than that in large dynamics (e.g., range [0.45, 0.75] inFig. 8d).
We further consider the dynamic scenario in which mesh clients not only can change their locations but also can switch on or off their network access. Let each mesh client cihave a network access state st(ci) at the tth key time point defined as
follows: 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 0 10 20 30 40 50 60 70 80 90 100 best fitness run No.
0.3 * size of maximal components / (m + n) 0.7 * client coverage / m
Fig. 7. Bar chart of the best fitness values of 100 runs of our PSO algorithm.
Table 2
Statistics of all of the problem instances.
Instance Case 1 Case 2 Case 3
Best Average Worst SD Best Average Worst SD Best Average Worst SD
Inst 1 .7880 .6910 .6214 .0337 .9229 .8523 .8169 .0178 .8844 .8299 .7930 .0184 Inst 2 .9615 .8866 .8458 .0229 .8747 .7938 .7453 .0271 .9036 .8504 .8173 .0163 Inst 3 .9188 .8544 .7880 .0269 .9232 .8695 .8292 .0180 .8844 .8361 .7978 .0172 Inst 4 .9036 .7890 .7302 .0331 .8799 .8217 .7664 .0206 .8796 .8354 .7961 .0151 Inst 5 .8901 .8090 .7510 .0285 .8844 .8056 .7474 .0237 .8678 .8319 .8066 .0139 Inst 6 .8651 .7825 .7214 .0293 .8464 .7822 .7495 .0224 .8940 .8413 .8099 .0178 Inst 7 .9328 .8686 .8130 .0285 .8628 .8186 .7742 .0192 .8785 .8285 .7887 .0170 Inst 8 .9422 .8676 .8073 .0291 .8940 .7999 .7461 .0267 .9181 .8585 .8217 .0161 Inst 9 .9036 .8233 .7688 .0271 .8940 .8313 .7784 .0250 .8892 .8469 .8174 .0151 Inst 10 .8844 .7992 .7411 .0273 .8940 .8320 .7839 .0242 .8701 .8268 .7977 .0152 Average .8990 .8171 .7588 .0286 .8876 .8207 .7737 .0225 .8870 .8386 .8046 .0162 SD denotes standard deviation.
Table 3
Sensitivity analysis.
Particle number (g) Maximal iteration (s) Case 1 Case 2 Case 3
Best fitness Average fitness Best fitness Average fitness Best fitness Average fitness
50 5 .8879 .7918 .8791 .8026 .8783 .8258 10 .8885 .7991 .8752 .8076 .8871 .8289 15 .8881 .8035 .8803 .8098 .8818 .8299 100 5 .8962 .8108 .8847 .8166 .8871 .8289 10 .9029 .8170 .8886 .8223 .8845 .8382 15 .9042 .8235 .8847 .8241 .8839 .8402 150 5 .8980 .8204 .8872 .8242 .8886 .8415 10 .9024 .8279 .8883 .8283 .8938 .8446 15 .9133 .8318 .8883 .8314 .8905 .8465
stðciÞ ¼
1; if ciis accessing the network;
0; otherwise ði:e:; ciswitches off the network accessÞ:
ð15Þ We establish a dynamic scenario in which each mesh client has a probability threshold to switch its network access state, i.e., at each key time point, if a random number in [0, 1] exceeds the probability threshold, its network access state alternates between 0 and 1 as follows:
stðciÞ ðstðciÞ þ 1Þ mod m; ð16Þ
Fig. 9gives the plot of the best fitness values vs. the iteration number in the dynamic scenario where each mesh client can switch its network access state under 1% probability, and 0, 16, 32, and 48 mesh clients change their locations in each 10 iterations, respectively, inFigs. 9a–d. As compared toFig. 8(which does not consider the network access states), the best fitness values inFig. 9decrease and almost cannot come back to the initial best fitness level as iterations increase. But it is reasonable because more and more mesh clients may switch off their network access as iterations increase, so that a smal-ler-size topology graph decreases both the network connectivity and the client coverage.
0.45 0.5 0.55 0.6 0.65 0.7 0.75 0 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100 best fitness iteration No.
(a)
0.45 0.5 0.55 0.6 0.65 0.7 0.75 0 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100 best fitness iteration No.(b)
0.45 0.5 0.55 0.6 0.65 0.7 0.75 0 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100 0 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100 best fitness iteration No.(c)
0.45 0.5 0.55 0.6 0.65 0.7 0.75 best fitness iteration No.(d)
Fig. 8. Plot of best fitness vs. the iteration number in the dynamic scenario in which mesh clients cannot switch its network access state. The number of the mesh clients that change their locations in each 10 iterations is (a) 0, (b) 16, (c) 32, and (d) 48.
6. Conclusions and future work
A particle swarm optimization approach for optimizing dynamic router node placement in wireless mesh networks (WMN-dynRNP) has been proposed and implemented. The main difference of our model from previous models is the intro-duction of the dynamic scenario in which at different times, mesh routers and mesh clients can change their locations, and mesh clients can switch on or off their network access. In addition, our PSO approach allows mesh routers with high flex-ibility to be placed at floating-point positions in a continuous deployment area, and our problem optimizes two objectives at the same time. One of our most important contributions in this paper is to propose a mathematical formulation of the WMN-dynRNP problem, so that interested readers are able to investigate the problem precisely in the future, and, from a theoretical aspect, to derive the convergence analysis and stability analysis of the PSO with constriction coefficient, which is much simpler than the previous work. The performance of our PSO approach is evaluated by discussing the effect of a vari-ety of parameters on the influences of the WMNs. In addition, we also developed a visualization user interface to allow users to observe the evolution of solutions to get more insight into the PSO algorithm.
In the future, we intend to solve the weighted version of the WMN-dynRNP problem and further the dynamic version of the problem in multi-channel WMNs. It is also of importance and interest to consider the optimization of other objectives at the same time. Another line of the future research is to propose some variants of PSO or the PSO mixed with other techniques
0.45 0.5 0.55 0.6 0.65 0.7 0.75 0 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100 0 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100 best fitness iteration No.
(a)
0.45 0.5 0.55 0.6 0.65 0.7 0.75 best fitness iteration No.(b)
0.45 0.5 0.55 0.6 0.65 0.7 0.75 0 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100 best fitness iteration No.(c)
0.45 0.5 0.55 0.6 0.65 0.7 0.75 0 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100 best fitness iteration No.(d)
Fig. 9. Plot of best fitness vs. the iteration number in the dynamic scenario in which each mesh client can switch its network access state under 1% probability. The number of the mesh clients that change their locations in each 10 iterations is (a) 0, (b) 16, (c) 32, and (d) 48.
to improve the computational performance, e.g., the scheme of parameters in PSO[27], fuzzy PSO[16], among others. It is also of interest to derive the convergence analysis of the multi-objective version of the proposed PSO, by analogy from[6]. Acknowledgements
The author thanks the anonymous referees for comments that improved the content as well as the presentation of this paper. This work has been supported in part by NSC 101-2219-E-009-025, Taiwan.
References
[1] I. Akyildiz, X. Wang, W. Wang, Wireless mesh networks: a survey, Computer Networks 47 (4) (2005) 445–487.
[2] E. Alotaibi, B. Mukherjee, A survey on routing algorithms for wireless ad-hoc and mesh networks, Computer Networks 56 (2012) 940–965. [3] E. Amaldi, A. Capone, M. Cesana, I. Filippini, F. Malucelli, Optimization models and methods for planning wireless mesh networks, Computer Networks
52 (2008) 2159–2171.
[4] A. Barolli, F. Xhafa, C. Sánchez, M. Takizawa, A study on the effect of mutation in genetic algorithms for mesh router placement problem in wireless mesh networks, in: Proceedings of 5th International Conference on Complex, Intelligent and Software Intensive Systems (CISIS 2011), IEEE Press, 2011, pp. 32-39.
[5] L.T. Bui, O. Soliman, H.A. Abbass, A modified strategy for the constriction factor in particle swarm optimization, in: Proceedings of ACAL 2007, Lecture Notes in Artificial Intelligence, vol. 4828, 2007, pp. 333-344.
[6] P. Chakraborty, S. Das, G.G. Roy, A. Abraham, On convergence of the multi-objective particle swarm optimizers, Information Sciences 181 (8) (2011) 1411–1425.
[7] H. Cheng, S. Yang, Genetic algorithms with immigrants schemes for dynamic multicast problems in mobile ad hoc networks, Engineering Applications of Artificial Intelligence 23 (2010) 806–819.
[8] M. Clerc, The swarm and the queen: towards a deterministic and adaptive particle swarm optimization, in: Proceedings of Congress on Evolutionary Computation (CEC99), IEEE Press, 1999, pp. 1951-1957.
[9] M. Clerc, J. Kennedy, The particle swarm – explosion, stability, and convergence in a multidimensional complex space, IEEE Transactions on Evolutionary Computation 6 (1) (2002) 58–73.
[10] J. Crichigno, M.-Y. Wu, W. Shu, Protocols and architectures for channel assignment in wireless mesh networks, Ad Hoc Networks 6 (2008) 1051–1077. [11] R. Eberhart, J. Kennedy, A new optimizer using particles swarm theory, in: Proceedings of 6th International Symposium on Micro Machine and Human
Science, 1995, pp. 39-43.
[12] M. Garey, D. Johnson, Computers and Intractability – A Guide to the Theory of NP-Completeness, Freeman, San Francisco, 1979.
[13] D. Hochbaum, W. Maass, Approximating schemes for covering and packing problems in image processing and VLSI, Journal of the ACM 32 (1) (1985) 130–136.
[14] C. Hwang, E. Talipov, H. Cha, Distributed geographic service discovery for mobile sensor networks, Computer Networks 55 (1) (2011) 1069–1082. [15] D. Johnson, The NP-completeness column: an ongoing guide, Journal of Algorithms 3 (2) (1982) 182–195.
[16] Y.-T. Juang, S.-L. Tung, H.-C. Chiu, Adaptive fuzzy particle swarm optimization for global optimization of multimodal functions, Information Sciences 181 (20) (2011) 4539–4549.
[17] J. Kennedy, The particle swarm: social adaptation of knowledge, in: Proceedings of IEEE International Conference on Evolutionary Computation, IEEE Press, 1997, pp. 303-308.
[18] A. Lim, B. Rodrigues, F. Wang, Z. Xua, k-center problems with minimum coverage, Theoretical Computer Science 332 (2005) 1–17.
[19] I. Montalvo, J. Izquierdo, R. Pérez, M. Tung, Particle swarm optimization applied to the design of water supply systems, Computers & Mathematics with Applications 56 (2008) 769–776.
[20] O.E. Muogilim, K.-K. Loo, R. Comley, Wireless mesh network security: a traffic engineering management approach, Journal of Network and Computer Applications 34 (2011) 478–491.
[21] T. Navalertporn, N.V. Afzulpurkar, Optimization of tile manufacturing process using particle swarm optimization, Swarm and Evolutionary Computation 1 (2) (2011) 97–109.
[22] L.M.L. Oliveira, A.F. de Sousa, J.J.P.C. Rodrigues, Routing and mobility approaches in IPv6 over LoWPAN mesh network, International Journal of Communication Systems 24 (2011) 1445–1466.
[23] R. Perez, K. Behdinan, Particle swarm approach for structural design optimization, Computers and Structures 85 (13–14) (2007) 1579–1588. [24] A. Rad, V. Wong, Congestion-aware channel assignment for multi-channel wireless mesh networks, Ad Hoc Networks 6 (2008) 1051–1077. [25] V. Ramamurthi, A. Reaz, D. Ghosal, S. Dixit, B. Mukherjee, Channel, capacity, and flow assignment in wireless mesh networks, Computer Networks 55
(2011) 2241–2258.
[26] T.-L. Sheu, Y.-J. Wu, A preemptive channel allocation scheme for multimedia traffic in mobile wireless networks, Information Sciences 176 (3) (2006) 217–236.
[27] P.K. Tripathi, S. Bandyopadhyay, S.K. Pal, Multi-objective particle swarm optimization with time variant inertia and acceleration coefficients, Information Sciences 177 (22) (2007) 5033–5049.
[28] J. Wang, B. Xie, K. Cai, D. Agrawal, Efficient mesh router placement in wireless mesh networks, in: Proceedings of IEEE International Conference on Mobile Ad-hoc and Sensor Systems (MASS 2007), IEEE Press, 2007, pp. 1-9.
[29] F. Xhafa, A. Barolli, C. Sánchez, L. Barolli, A simulated annealing algorithm for router nodes placement problem in wireless mesh networks, Simulation Modelling Practice and Theory 19 (10) (2011) 2276–2284.
[30] F. Xhafa, C. Sánchez, L. Barolli, Genetic algorithms for efficient placement of router nodes in wireless mesh networks, in: Proceedings of 24th IEEE International Conference on Advanced Information Networking and Applications (AINA 2010), IEEE Press, 2010. pp. 465-472.
[31] L. Zhou, X. Wang, W. Tu, G.-M. Muntean, B. Geller, Distributed scheduling scheme for video streaming over multi-channel multi-radio multi-hop wireless networks, IEEE Journal on Selected Areas in Communications 28 (3) (2010) 409–419.