Research Article  Open Access
Reliable Node Clustering for Mobile Ad Hoc Networks
Abstract
Mobile ad hoc networks (MANETs) are gaining popularity in recent years due to their flexibility, the proliferation of smart computing devices, and developments in wireless communications. Due to the mobile nature of the network, creating reliable clusters that can sustain for long period of time is a challenging problem. In this paper, we use probabilistic analysis to guide our clustering algorithm towards more reliable clusters. We also use scatter search to perform clustering while considering various performance metrics. Experiment results show that our clustering approach produces more reliable clusters than prior approaches.
1. Introduction
In recent years, wireless technologies have gained a lot of popularity. The worldwide proliferation of wireless devices, such as laptop computers and smart phones, has underscored the importance of mobilecomputing in our daily lives. Some applications of mobile computing do not depend on a preexisting infrastructure, such as routers in wired networks or access points in wireless networks; their communication can utilize a mobile ad hoc network (MANET). A MANET is a selfconfiguring, infrastructureless, wireless network of mobile devices. Many standardized technologies support MANET, such as Bluetooth [1], IEEE 802.11 (WiFi) [2], IEEE 802.15.3 (Wireless PAN) [3], and UltraWideband (UWB). A mobile ad hoc network enables us to setup a temporary mobile network for instant communication without any fixed infrastructure. It has great application potential in a variety of areas such as emergency rescue, disaster relief, mobile conferencing, law enforcement, battle field communications. It has been shown that a hierarchical network architecture will outperform a flat structure for large MANET regardless of routing schemes [4–6]. A typical implementation of a hierarchical architecture is through a clustered structure. Choosing clusterheads optimally is an NPhard problem [7].
1.1. Reliability Characterization
Reliability for mobile ad hoc networks can be divided into three categories: mobile coverage reliability, clusterhead reliability, and communication reliability.
(i) Mobile Coverage Reliability. Mobile nodes in the cluster can move out of the transmission range of the clusterhead. If a mobile node cannot find any other clusterhead within its transmission range, it will trigger a reclustering of the entire mobile ad hoc network. Reclustering is costly because it completely destroys the previous cluster architecture and triggers a lot of message exchanges in order to build new clusters. Frequent reclustering can severely affect the network performance, bandwidth allocation, and scheduling protocols. Hence, there is a practical need to minimize the number of reclustering for MANETs.
(ii) Clusterhead Reliability. Mobile nodes are powered by batteries. If they run out of energy, they will not be able to participate in the mobile ad hoc network. In particular, clusterheads tend to consume a lot more energy than clustermembers. If a clusterhead runs out of battery, it will also trigger a reclustering of the entire mobile ad hoc network. Hence, it is important to reduce the power consumption of clusterheads and keep their energy high enough to last for longer time.
(iii) Communication Reliability. Communication links between some network nodes can also be unreliable. During network communication, packets/messages can get lost when routing through these unreliable links. This problem also happens in classic communication networks, and there is a lot of related research [8].
In this paper, we focus on the first two categories (mobile coverage reliability and clusterhead reliability) because they pertain specifically to the mobile ad hoc nature of the network.
1.2. ReliabilityBased Clustering
Prudent clustering for mobile ad hoc networks can address the concern for mobile coverage reliability and clusterhead reliability. (i)If we can choose the clusterheads such that every mobile node can always find a clusterhead within its transmission range along its mobile path, there will be no reclustering due to mobile coverage. (ii)The power used to support a wireless link is essentially proportional to the distance between mobile nodes [9]. Since clusterheads are responsible for a lot of the network communication infrastructure, the power usage of clusterheads is proportional to the distance between clusterheads and their clustermembers. If we can form clusters where clusterheads and clustermembers have close geographical proximity, we can reduce the power consumption of clusterheads. (iii)When electing mobile nodes for clusterheads, we can examine the energy (or battery storage) level for every node and elect nodes with more energy level. This will improve clusterhead reliability.
1.3. Prior Work
In [10, 11], the authors present a weighted clustering heuristic that combines various metrics for clustering, such as the number of nodes connected to a clusterhead, transmission power, mobility, and battery power of the nodes. This approach has been improved with genetic algorithm [12] and simulated annealing [13]. The weighted clustering algorithm was relatively simplistic and may not be able to capture complex scenarios such as group mobility [14]. Hence, a modified approach considering stability with multiobjective evolutionary algorithm was presented in [15]. Another stabilitybased clustering approach was presented in [16] but it did not consider other factors such as transmission power and battery life. Further investigation on battery power and clustering can be found in [17]. Reliability aware routing was investigated in [18]. Surveys of various clustering schemes can be found in [19–21].
Prior works on stable clustering focus on maintaining a stable link between the clusterhead and its members. They measure the velocity of the clusterhead [10, 11], and also the relative distance between the clusterhead and its members [15], forming a stable neighborhood in various ways [15, 16] such that the nodes being picked as clusterheads will have a stable set of clustermembers.
1.4. Our Contribution
There is a better way to improve the mobile coverage reliability of clusters. When a mobile node moves out of the transmission range of its original clusterhead, it will look for other clusterheads nearby within the transmission range and with sufficient capacity to support additional clustermembers. If found, the node will join that cluster, thus avoiding reelection of the clusterheads. Reclustering is only needed if current set of clusterheads cannot cover all mobile nodes [10, 11]. An example is shown in Figure 1, when node X moves out of the range of cluster A and joins cluster B, there is no reclustering. In this paper, we exploit this opportunity to improve the chances of mobile nodes finding alternative clusters when they moves out of the range of their original clusterhead. Experiment results show that our method reduces the number of reclusterings.
Prior clustering algorithms only pick certain nodes as clusterheads, while the rest of the nodes are left to freely join any (neighboring) clusterheads as clustermembers by themselves. However, consider the scenario in Figure 2. Nodes A and B are clusterheads. Nodes X and Y can choose to join either cluster A or cluster B. If node X joins cluster A, they will end up moving in opposite directions and node X will need to choose a new clusterhead. Even if there is another clusterhead (such as B) nearby, it may not have the extra capacity to handle node X. However, if node X joins cluster B in the original clustering, they will both move in the same direction and node X can stay with the same cluster longer. Thus the MANET clustering would be more stable. Similarly, node Y should better join cluster A instead of cluster B because they will be more stable due to their movements.
In this paper, we propose a new clustering scheme. While deciding the clusterheads, we also decide the clustermembers of each cluster. The cluster membership will be broadcasted/communicated as an advice to each node. We use scatter search to optimize the clustering solution. Experiment results show that our clustering approach produces more reliable clusters over a diverse set of random scenarios.
2. Preliminaries
In this section, we introduce basic concepts and terminologies. Given a mobile ad hoc network, we use to denote the set of mobile nodes in the network. Given a node , we use to represent the set of nodes in the neighborhood of node : where is the transmission range of node and is the distance between nodes and . The mobile ad hoc network is organized by clusters. Each cluster has a clusterhead, and the rest of its nodes are clustermembers. We use to denote the set of clusterheads in the mobile ad hoc network. The degree of a clusterhead , , is the number of members in its cluster. The capacity (threshold) represents the number of neighbors that node can optimally handle as a clusterhead. The degree difference is the absolute difference between the degree and the capacity of node .
According to [9], the power used to support a wireless link is essentially proportional to the distance in MANETs. Hence, the power consumption of a clusterhead node is proportional to the sum of the distances between this node and its clustermember nodes. Hence we have
Suppose each node can calculate its residual battery energy , then the remaining battery lifetime is
Given a minimization problem with objectives, we use to denote that solution dominates solution : where is the objective function of th objective.
The clustering algorithm is invoked at the beginning to determine clusterheads and their members. This clustering organization will sustain as long as the clusterheads and their member are within each other’s transmission range. If a clustermember moves out of the transmission range from its original clusterhead, it will find another clusterhead nearby within the transmission range and with sufficient capacity to handle this node. If found, this node will join the nearby clusterhead. Otherwise, the reclustering will be needed.
3. Our Clustering Approach
The MANET clustering problem is to partition into a set of clusters, , such that For each cluster , the head node (clusterhead) is denoted by . The relative distance between each node and its clusterhead must lie within a transmission range , that is,
Prior clustering algorithms only focus on deciding clusterheads, while the rest of the nodes are left to freely join any (neighboring) clusterheads as clustermembers by themselves. We propose a slight modification to the clustering scheme. While deciding the clusterheads, we also decide the clustermembers of each cluster. The cluster membership will be broadcasted/communicated as an advice to every node.
One of the reliability objectives is to avoid reclustering. There are two factors that prevent the clustering algorithm from being reinvoked: (1)creating stable clusters in which clusterheads and their clustermembers are always within transmission range. (2)strategically pick clusterheads so that even if a clustermember moves out of the transmission range from its original clusterhead, it can become the member of another clusterhead nearby. Prior clustering schemes focus only on the first idea. In this paper, we take advantage of both ideas.
To create stable clusters, we consider the average relative distance as well as the current relative distance between two nodes when deciding whether they should be put into the same cluster.
We define the average neighborhood of a node to be the set of nodes with average relative distance within the transmission range : where is the average relative distance between nodes and . If any node becomes a clusterhead, we only pick its clustermembers from the intersection of its neighborhood and its average neighborhood .
To improve the chances of a node finding another cluster when moving out of range from its original clusterhead, we perform a probabilistic analysis for the clustering solutions.
Given a node which is a clustermember, we can find all the clusterheads within its average neighborhood: The probability of node finding another clusterhead is dominated by the values of , , and , where is the standard deviation of the relative distance between and . The probability is higher if the difference (slack) between the transmission range and their relative distance, , is larger. The probability is smaller if the standard deviation of the relative distance is larger. Hence, we can model the chances of node finding another clusterhead with the probability measure : where is a constant. The mobile coverage reliability is determined by the minimum probability measure of all clustermembers in the network:
Given a mobile ad hoc network with a set of mobile node , we want to partition the nodes into clusters based on the following objectives: (1)to maximize the minimum probability measure (2)to minimize the total power consumption of all clusterheads, , (3)to maximize the minimum lifetime of all clusterheads, (4)to minimize the total degreedifference of all clusterheads, Objective is related to mobile coverage reliability. Objectives and are related to clusterhead reliability.
4. Scatter Search
The main idea of scatter search is to operate on a set of solutions, called the reference set, which strives to maintain both diversity and optimality. Scatter search combine solutions from the reference set to create new ones. Unlike a “population” in genetic algorithms, the size of the reference set in scatter search tends to be small. In genetic algorithms, we can randomly choose two solutions and apply a “crossover” or other combination operator to generate one or more offspring. A typical population in a genetic algorithm has 100 solutions, which are randomly sampled to generate combinations. In contrast, scatter search chooses two or more solutions from the reference set in a systematic way to create new solutions. Hence, the size of the reference set is kept small to allow all possible combination pairs.
The original idea of scatter search was introduced by Glover for integer programming [22] in 1977. It was later combined with Tabu search [23]. Glover presented a generalized template for scatter search [24] in 1998. More details can be found in [25–27].
4.1. Basic Framework
Scatter search is built using the following basic operations. (i)Diversification: it generates a collection of diversified trial solutions. (ii)Improvement: it enhances a trial solution with potentially better quality or diversity.(iii)Reference Set Update: it maintains the reference set using the trial solution. The set membership is determined by solution quality or diversity.(iv)Subset Generation: it systematically selects subsets from the reference set to combine them into new solutions.(v)Solution Combination: it transforms a given subset of solutions from Subset Generation into new solutions.The highlevel view of our scatter search implementation is shown in Algorithm 1.

4.2. Diversification
In diversification, we randomlygenerate a pool of trial solutions. To generate each solution, we start with a set of unassigned nodes . We randomly pick a node , where the probability of picking each node is biased by . This will ensure nodes with larger neighborhood and average neighborhood to be picked earlier. For each picked node , we first assign it to be a new clusterhead, and then randomly shuffle its neighbor nodes in . For all the unassigned nodes in , we will assign them one by one to be the clustermember of , until the cluster reaches its capacity limit . We repeat this process to pick other nodes and other clusters, until all nodes have been assigned. This will ensure that all the clustermembers are within the transmission range of their clusterhead.
As we generate more and more trial solutions in the diversification pool, we adjust the bias of each node with increasing offset to diminish the effect of , such that nodes with smaller neighborhoods will have a fairer chance of getting picked.
4.3. Improvement
To improve the quality or diversity of the trial solution, we introduce three tactics: randomly reelect the head of each cluster, heuristically reelect the head of each cluster, and perturb the clustermembers of the solution. Each of these tactics will produce a new solution, and we pass all of them together with the original trial solution to update the reference set.
4.3.1. Random Clusterhead Reelection
For each cluster, we randomly pick a node. If the node can reach all clustermember nodes within the transmission range, it will become the head of its cluster.
4.3.2. Heuristic Clusterhead Reelection
Given a cluster of nodes, we first identify the potential candidates for clusterhead. These candidates must be able to reach all clustermember nodes within their transmission ranges. For each candidate, we computer the maximum of the average relative distance between the candidate and any clustermember node. The candidate with the lowest maximum will be picked as clusterhead.
4.3.3. Perturb Solution
To perturb a solution, we identify nodes with multiple clusterheads within their transmission ranges, and the average relative distances from these nodes to those multiple clusterheads are also within their transmission ranges. Hence, these nodes have alternative clusters to join. We randomly pick some of these nodes to move to their respective alternative clusters.
4.4. Reference Set Update
The purpose of reference set is to retain a few elite solutions with the best quality or diversity. Since we have multiple optimization objectives, we use nondominated sorting to pick solutions with the best quality. We split our reference set into two subsets, a high quality subset and a high diversity subset, which is similar to the ideas in [28–30] where the reference set is also split into two subsets.
To measure diversity, we introduce a concept of clustering difference. Suppose we are given two clustering solutions and ; we compute the difference score using the following scheme. For every clusterhead in , if the node is not a clusterhead in , increment the score by the cardinality of the cluster in . For every clusterhead in , if the node is not a clusterhead in , increment the score by the cardinality of the cluster in . For every node that is a clusterhead in both and , increment the score by the absolute difference in the cardinality of the cluster in and .
4.5. Subset Generation and Solution Combination
In Subset Generation, we systematically generate all pairwise combinations from the reference set. For each pair of solutions, we combine them to create new solutions.
Given a solution pair and , we use and to denote the number of clusters in each solution. We first randomly assign clusterheads from and to become clusterheads in the combined solution. For each clusterhead , its probability of being assigned as a clusterhead is Similarly, the probability for each clusterhead is We then assign all nodes that are clusterheads in both and to become clusterheads in the combined solution. After picking all the above clusterheads, we try to assign the rest of nodes to be clustermembers, if a node has a clusterhead in that is also a clusterhead in the combined solution and its clusterhead in is not assigned, we will assign to the cluster headed by its original clusterhead in . Similarly for clusterhead in . If a node has both its clusterheads in and assigned as clusterheads in the combined solution, we randomly assign to one of these clusters in the combined solution, biased by the current and average relative distances between and each clusterhead. Finally, for all remaining nodes that are unassigned (because they are out of range from the above clusterheads), we use the weighted random assignment scheme from the diversification method described in Section 4.2.
5. Experiments
We simulate a mobile ad hoc network with nodes to evaluate the performance of various clustering algorithms. The simulation is carried out in a 500 km × 500 km squareshaped region. We create 12 random scenarios shown in Table 1. In each scenario, the mobile nodes randomly form several groups. Some of the groups may have many nodes, and some groups may have only 1 or 2 nodes. All nodes are moving randomly throughout every scenario. Nodes within each group have their average velocity following the Reference Velocity Group Mobility Model [14, 31], whereas the velocity of each node can still randomly deviate from the average velocity of the group. For each randomly generated scenario, we cluster the MANET using WCA [10, 11], SA [13], GA [12], MOEA [15], and our proposed algorithm, respectively. Each clustering algorithm is applied 10 times using different random seeds, which explore various random behavior of these algorithms such that experiment results can be easily reproducible. We take the average numeric result from each algorithm (over 10 different random seeds) and record them for each of the 12 random scenarios. The “calls” column shows the number of reclusterings. The , “power,” and “lifetime” show the degree difference, power usage, and minimum (remaining) lifetime of the MANET after simulating the scenario for 1000 time units.

To better analyze the experiment results, we have plotted the number of reclusterings in Figure 3, the degree difference in Figure 4, the power usage in Figure 5, and the remaining lifetime in Figure 6.
From experiment results, we can see that our clustering approach has the smallest number of reclusterings (mobile coverage reliability) except scenario 9. The degree difference is higher using our clustering approach in some scenarios, which is a tradeoff for reliable clusters. However, notice that our degree difference is the best among all approaches for scenarios 1 and 11. We have the smallest power usage in 10 out of 12 random scenarios. We also have the longest remaining lifetime in 9 out of 12 random scenarios. Both power usage and lifetime are related to clusterhead reliability.
6. Conclusion
We have explored reliability metrics in node clustering for mobile ad hoc networks. We harnessed probabilistic analysis to control our clustering process to achieve more reliable clusters. We used scatter search to perform clustering while considering robustness and performance metrics. Experiment results showed that our clustering results produce more reliable clusters than prior approaches.
References
 “Bluetooth official website,” 2011, http://www.bluetooth.com. View at: Google Scholar
 IEEE 802. 11, “Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications,” IEEE Computer Society, June 2007. View at: Google Scholar
 “IEEE 802. 15 Working Group for WPAN,” 2011, http://www.ieee802.org/15/. View at: Google Scholar
 P. Gupta and P. R. Kumar, “The capacity of wireless networks,” IEEE Transactions on Information Theory, vol. 46, no. 2, pp. 388–404, 2000. View at: Publisher Site  Google Scholar  Zentralblatt MATH  MathSciNet
 X. Hong, K. Xu, and M. Gerla, “Scalable routing protocols for mobile ad hoc networks,” IEEE Network, vol. 16, no. 4, pp. 11–21, 2002. View at: Publisher Site  Google Scholar
 K. Xu, X. Hong, and M. Gerla, “An ad hoc network with mobile backbones,” in Proceedings of the IEEE International Conference on Communications (ICC), vol. 5, pp. 3138–3143, 2002. View at: Publisher Site  Google Scholar
 S. Basagni, I. Chlamtac, and A. Farago, “A generalized clustering algorithm for peertopeer networks,” in Proceedings of the Workshop on Algorithmic Aspects of Communication, July 1997. View at: Google Scholar
 8th International Workshop on the Design of Reliable Communication Networks, October 2011.
 M. Gerla and J. T. C. Tsai, “Multicluster, mobile, multimedia radio network,” Wireless Networks, vol. 1, no. 3, pp. 255–265, 1995. View at: Publisher Site  Google Scholar
 M. Chatterjee, S. K. Das, and D. Turgut, “An ondemand weighted clustering algorithm (WCA) for ad hoc networks,” in Proceedings of the IEEE Global Telecommunications Conference (GLOBECOM '00), vol. 3, pp. 1697–1701, San Francisco, Calif, USA, 2000. View at: Publisher Site  Google Scholar
 M. Chatterjee, S. K. Das, and D. Turgut, “WCA: a weighted clustering algorithm for mobile ad hoc networks,” Cluster Computing, vol. 5, no. 2, pp. 193–204, 2001. View at: Google Scholar
 D. Turgut, S. K. Das, R. Elmasri, and B. Turgut, “Optimizing clustering algorithm in mobile ad hoc networks using genetic algorithmic approach,” in Proceedings of the IEEE Global Telecommunications Conference (GLOBECOM '02), vol. 1, pp. 62–66, November 2002. View at: Publisher Site  Google Scholar
 D. Turgut, B. Turgut, R. Elmasri, and T. V. Le, “Optimizing clustering algorithm in mobile ad hoc networks using simulated annealing,” in Proceedings of the IEEE Wireless Communications and Networking (WCNC '03), vol. 3, pp. 1492–1497, New Orleans, La, USA, March 2003. View at: Publisher Site  Google Scholar
 B. C. Li, “On increasing service accessibility and efficiency in wireless adhoc networks with group mobility,” Wireless Personal Communications, vol. 21, no. 1, pp. 105–123, 2002. View at: Publisher Site  Google Scholar
 H. Cheng, J. Cao, X. Wang, and S. K. Das, “Stabilitybased multiobjective clustering in mobile ad hoc networks,” in Proceedings of the 3rd International Conference on Quality of Service in Heterogeneous Wired/Wireless Networks (QShine '06), p. 27, 2006. View at: Publisher Site  Google Scholar
 C. Konstantopoulos, D. Gavalas, and G. Pantziou, “Clustering in mobile ad hoc networks through neighborhood stabilitybased mobility prediction,” Computer Networks, vol. 52, no. 9, pp. 1797–1824, 2008. View at: Publisher Site  Google Scholar
 M. K. Watfa, O. Mirza, and J. Kawtharani, “BARC: a battery aware reliable clustering algorithm for sensor networks,” Journal of Network and Computer Applications, vol. 32, no. 6, pp. 1183–1193, 2009. View at: Publisher Site  Google Scholar
 J. Wang, Y. Liu, and Y. Jiao, “Building a trusted route in a mobile ad hoc network considering communication reliability and path length,” Journal of Network and Computer Applications, vol. 34, no. 4, pp. 1138–1149, 2011. View at: Publisher Site  Google Scholar
 J. Y. Yu and P. H. J. Chong, “A survey of clustering schemes for mobile ad hoc networks,” IEEE Communications Surveys and Tutorials, vol. 7, no. 1, pp. 32–48, 2005. View at: Publisher Site  Google Scholar
 S. Chinara and S. K. Rath, “A survey on onehop clustering algorithms in mobile ad hoc networks,” Journal of Network and Systems Management, vol. 17, no. 12, pp. 183–207, 2009. View at: Publisher Site  Google Scholar
 K. A. Darabkh, S. S. Ismail, M. AlShurman, I. F. Jafar, E. Alkhader, and M. F. AlMistarihi, “Performance evaluation of selective and adaptive heads clustering algorithms over wireless sensor networks,” Journal of Network and Computer Applications, vol. 35, no. 6, pp. 2068–2080, 2012. View at: Publisher Site  Google Scholar
 F. Glover, “Heuristics for integer programming using surrogate constraints,” Decision Sciences, vol. 8, no. 1, pp. 156–166, 1977. View at: Publisher Site  Google Scholar
 F. Glover, “Tabu search for nonlinear and parametric optimization (with links to genetic algorithms),” Discrete Applied Mathematics, vol. 49, no. 1–3, pp. 231–255, 1994. View at: Publisher Site  Google Scholar  Zentralblatt MATH  MathSciNet
 F. Glover, “A template for scatter search and path relinking,” in Artificial Evolution, J. K. Hao, E. Lutton, E. Ronald, M. Schoenauer, and D. Snyers, Eds., vol. 1363 of Lecture Notes in Computer Science, pp. 1–51, Springer, Berlin, Germany, 1998. View at: Publisher Site  Google Scholar
 F. Glover, M. Laguna, and R. Marti, “Fundamentals of scatter search and path relinking,” Control and Cybernetics, vol. 29, no. 3, pp. 653–684, 2000. View at: Google Scholar  Zentralblatt MATH  MathSciNet
 F. Glover, M. Laguna, and R. Marti, “Scatter search and path relinking: advances and applications,” in Handbook of Metaheuristics, F. Glover and G. Kochenberger, Eds., vol. 57 of International Series in Operations Research and Management Science, pp. 1–35, Springer, New York, NY, USA, 2003. View at: Publisher Site  Google Scholar  Zentralblatt MATH  MathSciNet
 R. Marti, M. Laguna, and F. Glover, “Principles of scatter search,” European Journal of Operational Research, vol. 169, no. 2, pp. 359–372, 2006. View at: Publisher Site  Google Scholar  Zentralblatt MATH  MathSciNet
 W. N. N. Hung and X. Song, “BDD variable ordering by scatter search,” in Proceedings of the IEEE International Conference on Computer Design (ICCD' 01), pp. 368–373, Austin, Tex, USA, September 2001. View at: Publisher Site  Google Scholar
 W. N. N. Hung, X. Song, E. M. Aboulhamid, and M. A. Driscoll, “BDD minimization by scatter search,” IEEE Transactions on ComputerAided Design of Integrated Circuits and Systems, vol. 21, no. 8, pp. 974–979, 2002. View at: Publisher Site  Google Scholar
 W. N. N. Hung and X. Song, “On optimal cell assignments in PCS networks,” in Proceedings of the IEEE International Performance, Computing, and Communications Conference (IPCCC), pp. 225–232, Phoenix, Ariz, USA, April 2002. View at: Publisher Site  Google Scholar
 K. H. Wang and B. Li, “Group mobility and partition prediction in wireless adhoc networks,” in Proceedings of the IEEE International Conference on Communications (ICC '02), vol. 2, pp. 1017–1021, 2002. View at: Publisher Site  Google Scholar
Copyright
Copyright © 2013 Tao Wang and William N. N. Hung. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.