Abstract
The mixed wireless sensor networks that are composed of a mixture of mobile and static sensors are the tradeoff between cost and coverage. To provide the required high coverage, the mobile sensors have to move from dense areas to sparse areas. However, where to move and how to move are important issues for mobile sensors. This paper presents a centralized algorithm to assist the movement of mobile sensors. In this algorithm, the management node of the WSN collected the geographical information of all of the static and mobile sensors. Then, the management node executed the algorithm to get the best matches between mobile sensors and coverage holes. Simulation results show the effectiveness of our algorithm, in terms of saving energy and the load balance.
1. Introduction
Wireless sensor networks (WSNs) have been used extensively due to their excellent capability of monitoring real physical environments and collecting data. However, in order to conduct their tasks successfully, it is very important that they be deployed properly, taking into account the limitations of energy support and transmission power.
WSNs cannot be deployed manually in many working environments, such as remote mountainous regions, battlefields, and regions polluted by poisonous gases. An alternative method is scattering the sensors randomly, but this is affected by many uncontrollable factors, and it is difficult to achieve the desired deployment. In early studies, most of the networks consisted of a large number of static nodes, and there were many redundant nodes. Importantly, this approach often led to high cost and uncertainties concerning the coverage.
In the last decade, researchers have focused on mixed networks, which are composed of both static nodes and mobile nodes. Such networks have the advantage of mobility, so they can be moved to appropriate positions to enhance the extent of coverage and reduce the number of nodes. However, there are few algorithms that have been proposed to guide the mobile sensors from their original positions to the desired positions in mixed wireless sensor networks except two classic algorithms which will be introduced in Section 2.
Our problem statement is “given the target area, static sensors that are immobile, and sensors with flexible mobility, design and implement a plan that maximizes the coverage of the sensors, minimizes energy consumption, and results in a balanced energy load.” In this paper, we report the results of our design of a new, centralized algorithm for the placement of mobile sensors in a mixed network to achieve the goals mentioned in the problem statement. The algorithm assists in decision making concerning moving the mobile sensors to fill the holes, where coverage was not provided by any sensor. In order to save energy, we attempted to shorten the total distance that all of the mobile sensors moved. In addition, we made sure that no sensors moved an extremely long distance in order to balance the energy load. The implementation of the algorithm was divided into four stages, that is, (1) the management node of the WSN collected the geographical information of all of the static and mobile sensors; (2) the management node executed the algorithm to determine the best positions to which all of the mobile sensors should move to; (3) the management node issued the resulting locations to the mobile sensors through the network management system (NMS); and (4) the mobile sensors moved to the positions specified by the NMS.
The rest of the paper is organized as follows. Section 2 introduces basic information concerning Delaunay triangulation. The centralized algorithm is presented in Section 3, and its performance is evaluated in Section 4. A summary of the paper is presented in Section 5.
2. Related Work
Many significant achievements have been made in the field of energy-efficient coverage. Due to the characteristics of the nodes that comprise WSNs, there are three types of such networks, that is, (1) static WSNs, in which all the nodes are static; (2) mobile WSNs, in which all the sensors are mobile; and (3) mixed WSNs, in which some of the nodes are static and some are mobile.
The greatest weakness of a static WSN is that there must be significant redundancy among the nodes in order to achieve good coverage. As a result, one of the most important issues to consider in the implementation of a static WSN is energy-efficient coverage (EEC). Many algorithms have been proposed to conserve energy and prolong the network's lifetime [1–5]. Among these algorithms, scheduling methods have been shown to be effective in reducing energy consumption by planning the activities of the devices [6–9].
In mobile WSNs, a fundamental issue is the coverage problem. Many techniques have been developed to deal with this issue, such as coverage pattern-based movement [10–13], virtual force-based movement [14, 15], and grid quorum-based movement [16–19]. The greatest weakness of a mobile WSN is its price, which is significantly greater than the price of a static WSN, because the price of mobile sensors is much greater than the price of static sensors.
A mixed WSN is a tradeoff between a static WSN and a mobile WSN. In most cases, a mixed WSN is the best choice. In a previous work, Voronoi diagrams were used to study methods for estimating the coverage holes in mixed sensor networks [20]. The author proposed a collaborative algorithm (Coven) to determine the location of the mobile sensors for enhancing coverage by estimating the relationship between the area of the coverage hole and the coverage radius of the sensors. However, it is not feasible to apply Voronoi diagrams in WSNs due to their excessive complexity.
Concerning the strategy for moving the sensors, one study [21] proposed a bidding protocol in mixed sensor networks that treated static nodes as bidders or consumers and mobile nodes as service providers. An optimal relay placement for indoor sensor networks was proposed. Mobile nodes have a base price which is the size of coverage holes produced by mobile nodes leaving their positions to cover other holes. Static nodes bid for mobile nodes, and the bid price is the size of the coverage holes detected by static nodes. When the bid price for the mobile nodes is less than the price of the static nodes, the mobile nodes will provide service for the static nodes to cover the holes that have been detected by the static nodes. However, the authors provided no discussion of the energy balances of all of the sensors, so the lifetime of the WSN was short. Additionally, applying the bidding protocols in [21], several sensors may have to move a long distance, which would take more time to complete the construction of the sensor network.
In order to improve the effectiveness of the algorithm in paper [21], paper [22] introduced a proxy-based bidding protocol, which was an improvement over the basic bidding protocol. To reduce distances that the mobile sensors had to move, the proxy-based bidding protocol proposes that mobile sensors perform virtual movements from small holes to large holes and that they only perform physical movements after the final destinations have been identified.
To our knowledge, the paper [21] is the first paper on deploying a mixture of static and mobile sensors to meet the coverage requirement, and [22] is an improvement of [21]. There are few other papers that focus on this problem, and we will compare the algorithm in this paper with the two algorithms.
3. Preliminaries
3.1. Assumptions
In our research, we used the classical Boolean sensing model, in which the sensing area is represented by a circle with a radius. The Boolean sensing model facilitated the analysis and helped us understand the problem. Obviously, we must know the locations of all the sensors, and it had been proved that each node in the wireless sensor network had the ability to establish its location through GPS system or some other form of localization technique [23–27]. In our research, we assumed that at least one of the techniques was available in our WSN.
After executing our algorithm, the management node identified the best positions to which all the mobile nodes should move. But we were unable to plan the path from the current position to the desired destination for the mobile nodes. However, there are also several existing techniques that can be used to plan the path, and we assumed that at least one of them was available.
3.2. Preliminary Technique: Delaunay Triangulation
A Voronoi diagram represents the proximity information about a set of nodes. It provides a geometric construction that detects the coverage holes very effectively, especially in distributed algorithms in which position information for all of the sensors is unknown. However, it is not the best choice for centralized algorithms, so we used Delaunay triangulation instead of a Voronoi diagram.
Delaunay triangulation and the Voronoi diagram are dual constructions. Given a set of nodes, we used a randomized incremental algorithm to triangulate them into many triangles, and the circumcenters of the triangles were the key areas that we had to detect carefully. First, we triangulated all of the static nodes and determined the best position for the mobile sensor to provide the desired coverage. Then, the mobile sensor was not moved to any other place, so, in effect, it became a static sensor, and we added it to the set of static nodes. We iterated the process until all of the mobile nodes became static nodes. Then, we determined all of the desired positions for the mobile sensors. The features of Delaunay triangulation guarantee that the distance between the circumcenter of a triangle and its vertices is shorter than the distance between the circumcenter and any other nodes. So, if a the circumcenter of a triangle is not covered by its vertexes, there must be a coverage hole that a mobile sensor should be moved to cover. We will give a detailed introduction in Section 4.
4. Centralized Algorithm
In this section, we present the centralized algorithm, which is divided into four stages. The second stage is the core of the algorithm, and we focused mainly on it. The discussion of the algorithm is presented in four steps, that is, (1) detect the coverage holes, (2) choose the desired positions, (3) use the greedy algorithm to obtain an initial result, and (4) optimize the initial result using the 2-exchange optimization algorithm.
4.1. Detect the Coverage Holes
We used Delaunay triangulation to detect the coverage holes. First, we triangulated the set of static nodes into many triangles and calculated the circumcenter of every triangle, as shown in Figure 1. Second, we detected whether the circumcenter was covered by the three static sensors that formed the triangle. If the circumcenter was covered, it is not a coverage hole. The size of the hole was calculated as

Delaunay triangulation.

Size of a coverage hole.
4.2. Choose the Desired Positions
Having detected the holes, we must decide which hole is to be covered by a mobile sensor first. To do this, we used the encroaching principle, that is, that the holes adjoining the covered area should be covered preferentially, rather than the bigger holes as has been classically done. The rationale was that if we covered the bigger holes first, there will be locations between the hole and the covered area that will be covered twice. Simulation showed that our approach was better than following the classic approach, as indicated by the improved coverage percentages shown in Figures 3(b) and 3(c), respectively. We calculated the coverage percentage by image processing and determined that the initial coverage percentage was 68.3%, while the coverage percentage of the classic approach was 93.2%, and the coverage percent of the encroaching principle that we used was 95.1%.

The coverage results by different principles.
Our discussion of the randomized incremental algorithm follows. After we had triangulated the set of static nodes, we were able to detect the coverage holes and identify the place the mobile sensors should cover first. Then, we moved one mobile sensor to that place, and the sensor remained stationary after that. Thus, the mobile sensor became a static sensor, resulting in a change in the triangulation of the static sensors. Before we chose the next hole to be covered, we had to obtain the new triangulation and then decide the hole using the encroaching principle. We iterated the process until the coverage percentage reached a constant value, for example, 95%. But we did not have to calculate the new triangulation repeatedly. We can calculate the new triangulation based on the previous result, and this is the core idea of the randomized incremental algorithm.
A triangulation is shown in Figure 4. We added a new point,

A triangulation in randomized incremental algorithm.
In Figure 5(a), there are six angles, that is,

Edge flip.


We assumed that T is the triangulation, and the randomized incremental algorithm is described in Algorithm 1.
(1) do (add (2) find the triangle (3) if ( (4) then line (5) LegalizeEdge ( (6) LegalizeEdge ( (7) LegalizeEdge ( (8) else ( (9) line (10) LegalizeEdge ( (11) LegalizeEdge ( (12) LegalizeEdge ( (13) LegalizeEdge ( (14) return (T);
Algorithm 1
The function of LegalizeEdge (
(1) If ( (2) then assume (3) replace the edge (4) LegalizeEdge ( (5) LegalizeEdge ( (6) end
Algorithm 2
Now, we have detected the coverage holes and chosen the desired position successfully, which provides the basis for the next step. The numbers of mobile nodes and desired positions are fixed. Once the mobile nodes have moved to the desired positions, the coverage percentage obviously will be improved. In order to save energy and balance the energy load, we designed a detailed scheme for determining the positions to which the mobile sensors should move. We can describe the problem in mathematical language as follows.
Given two sets of
In our WSN, the weight of a match is the Euclidean distance between mobiles sensors and the holes that should be covered by the mobile sensors. In order to save energy, mobile nodes should move the shortest distance possible, and, in order to balance the load, the distances should be similar. We assumed two measures for our algorithm, that is, the average distance that the mobile sensors moved and the variance between the distances.
4.3. Obtain an Initial Result by Greedy Algorithm
Now, we have obtained the current positions of the mobile sensors and the positions to which they should move, as shown in Figure 8. For example, the red stars are mobile sensors, and the green points are the coverage holes. We determined the acceptable match in the following two steps, that is, (1) obtain an initial result by greedy algorithm and (2) optimize the result using the 2-exchange optimization algorithm.

The initial situation.
Now, we introduce the greedy algorithm in five steps.
Algorithm 1.
Greedy algorithm for match
Input.
Output. one-to-one match for mobile sensors and holes.
Step 1.
We order the holes from 1 to n as shown in Figure 9, where n is the number of the holes.

The match result by greedy algorithm.
Step 2.
Push the geographical information of the holes to a stack in reverse order and push the information of mobile nodes in another stack randomly, as shown in Figure 10.

(a) and (c) are the initial trace, and (b) and (d) are the trace that have been optimized.
Step 3.
Choose the mobile node in stack M that is the closest to the hole in the top of stack H and record the match.
Step 4.
Pop stack H and delete the mobile node in stack M.
Step 5.
If there are no holes in stack H, exit the algorithm, otherwise, return to Step 3.
The results of the algorithm are shown in Figure 9. Every line segment with an arrow indicates that a mobile sensor should move to a coverage hole. It cannot meet our requirements for both average distance and the variance of the distance, and we had to improve the results by using the 2-exchange optimal algorithm.
As shown in Figure 9, when the serial number of the hole is smaller, it is more likely that the length of the line segment with an arrow that points to the hole from the corresponding mobile sensor is shorter. It is an inherent flaw of the greedy algorithm that the results are optimal in local but are not as good in global.
4.4. Optimize the Initial Result by Using the 2-Exchange Optimization Algorithm
The results shown in Figure 9 are not good enough, and we optimized the results by using the 2-exchange optimization algorithm. There is no common point for any two lines because the mobile nodes and coverage holes are a one-toone match. The core idea of the algorithm is to exchange the destination of any two line segments to see whether their total length decreased. If so, we exchanged the destination of the line segment and recorded the result; otherwise, we maintained the present status. The 2-exchange optimization algorithm is a special case of the N-exchange optimal algorithm, and, if N is equal to the number of mobile sensors, the result is the best result.
One problem is the organization of the exchange order to guarantee that no line is ignored or repeated. Because the holes match the lines one to one, the number of a hole can represent the corresponding line, that is to say, the lines are ordered from 1 to n. The optimization algorithm is described in Algorithm 3.
Input: n lines with total length of L Output: n lines with total length of (1) do { (2) for (3) for (4) exchange the destination of line i and line j; (5) if (the total length of the two lines decreased) (6) record the result; (7) else (8) maintain the present status; (9) end (10) end (11) (12) (13) } while ( where
The main part of the algorithm is a loop, and, from the results of the simulation, we found that the margin of improvement in the first loop was the most obvious; the more times we executed the loop, the less improvement we obtained from every execution. Though it is a heuristic algorithm, its complexity cannot be ignored. In fact, if we insist on finding the 2 best results, that is to say, we execute the loop until
Figures 10(a) and 10(c) are the initial trace, and Figures 10(b) and 10(d) are the trace after the optimization.
When there were 15 mobile sensors and
5. Performance Evaluations
5.1. Tradeoff between Cost and Coverage
Before we tested the effectiveness of our algorithm, first, we proved that the mixed WSN was meaningful in real applications. The cost of a WSN is based on the cost of the sensors. We ran simulations for three different compositions of sensors in a WSN and set the coverage to be 90%, 95%, and 98%, respectively. We assumed that the target area was a 50-m × 50-m, square, flat, field and randomly scattered 60 sensors, including static sensors and mobile sensors, in the field. The percentage of mobile sensors varied from 0% to 100%, in 10% increments. The transmission range was set as 20 m, and the sensing range was set as 5 m. We ran 100 simulations for every result and calculated the average result.
There were three cases of network compositions, that is, (1) all sensors were static and random deployment was used; (2) all sensors were mobile, and the VOR protocol was used to deploy the sensors; and (3) for sensor deployment, a percentage of the sensors were mobile, and we used our centralized algorithm. The results are shown in Figure 11.

The minimum number of sensors required to reach a coverage percent in different mobile percentage.
Because of the randomness of the static sensors, sometimes we could not calculate the accurate minimum number of the sensors to reach a certain coverage. For example, if all the sensors were static and, unfortunately, we placed them all at the same position, we could never cover the target field. In this paper, we scattered the same number sensors 100 times and obtained 100% coverage in each case. For a number of sensors, N, if the average coverage just reached a certain coverage, such as 95% and for
As shown in Figure 11, in the static WSN, the most sensors were required; in the mobile WSN, the least sensors were required; in the mixed WSN, the number of sensors required was between the number required for the static WSN and the number required for the mobile WSN. Obviously, the mixed WSN significantly reduced the number of sensors compared to the static WSN. When the percentage of mobile sensors was 30%, the number of sensors in the mixed WSN was about half of the number of sensors in the static WSN, and as the proportion of mobile sensors increased, the number of sensors needed decreased. The number of sensors required in a mobile WSN was less than the numbers required by static or mixed WSNs. But as the number of mobile sensors incraesed, the marginal effect decreased; fore example, when the percentage of mobile sensors increased from 0% to 10%, the number of sensors for 98% coverage decreased from 120 to 85, but when the percentage incraesed from 50% to 60%, the effect was not as significant as before. In addition, the price of mobile sensors is higher than the price of static sendors; thus, determing which WSN is the cheapest is related to the ratio of the price of mobile sensors to the price of static sensors. In conclusion, none of the three types of WSN is always the best in any situation.
Figure 12 shows the costs of these three types of WSN to reach 95% coverage. Based on different price ratios of mobile sensors to static sensors, the overall cost of a WSN can be somewhat different. When the ratio is low (e.g., ≤1.5), increasing the percentage of mobile sensors can reduce the overall cost, and the mobile WSN is the best choice. When the ratio is higher (e.g., 2 ≤ the ratio ≤ 7), the mixed WSN has the lowest cost, and the percentage of mobile sensors is not very high (e.g., 10% ≤ the percentage of mobile sensors ≤ 50%). But if the mobile sensor is much more expensive (e.g., the ratio > 7), the static WSN is the best choice.

The cost of sensors to reach 95% coverage.
If the ratio between the price of the mobile sensor and the price of the static sensor is 2–7, the mixed WSN is a good choice. Under this circumstance, our centralized algorithm is useful, and the result is a balance between the cost and the coverage.
5.2. Coverage
The bidding protocol and the proxy-based bidding protocol are two classic protocols in redeploying mobile sensors in a mixed WSN, and we compared our results to the results of these protocols. From Section 5.1, we know that, most of the time, the percentage of mobile sensors cannot be greater than 50%, so we only considered these situations.
As shown in Figure 13, the mixed WSN can improve the coverage significantly; if the WSN is static, the coverage percentage is about 80% and the mixed WSN is about 90 to 98%. In terms of coverage, there is no preference between the bidding protocol and the proxy-based bidding protocol. In our centralized algorithm, the coverage was higher than it was in the bidding protocols. In fact, the bidding protocols provided the same coverage as the greedy algorithm, and our encroaching principle was better than the greedy algorithm.

Coverage by different algorithms.
5.3. Energy Efficiency
Our algorithm is centralized, and it is executed in the management node. After the algorithm has terminated, the management node will issue the result to the mobile nodes only once, and the mobile nodes will move to the proper position to improve the coverage. We should notice that the management node is not strictly energy limited, and there are few communications between the nodes in the WSN. So, the total energy consumption is just associated with mechanical movement, and we used the average distance that the sensors were moved to determine the energy consumption.
Figure 14 shows the average distance that the sensors were moved in the three protocols. It is apparent that the average distance of basic bidding protocol is the longest and that the result of the centralized algorithm is the best. Obviously, the reason is that the nodes in the distributed algorithm just have part of the geographical information of all the nodes and the management node has all the geography information of all of sensors. Because it has more information, the centralized algorithm produced good results, and it is a global optimization. Conversely, the results of the distributed algorithm were not very good because it had less information, and the results comprised only a partial optimization. Compared with basic-bidding protocol, the results of the proxy-based protocol were better.

Average moving distance.
In the distributed algorithm, the total energy consumption is comprised of two parts, that is, mechanical movement and communication. It is evident from Figure 14 that the total energy consumption of the centralized algorithm is less than just the mechanical movement in the distributed algorithm, so it is considerably less than the sum of the two parts.
Thus, our protocol is much more energy efficient than the two distributed protocols, that is, the basic bidding protocol and the proxy-based bidding protocol.
5.4. Load Balance
To show the results more clearly, we increased the number of mobile sensors to 100 and generated 100 coverage holes randomly. Then, we matched them using the centralized algorithm and gathered statistics related to the distances that the sensors were moved. We used the variance of the 100 distances to measure the load balance. The smaller the variance, the more balanced the load is.
As shown in Figure 15 for the centralized algorithm, most of the distances that the mobile sensors were moved were between zero and 30 m, and the distances were more concentrated than they were in the other two protocols. The variance of the distances for the centralized algorithm was 13.38, which was smaller than 78.25, the variance of the proxy-based bidding protocol, and 127.34, the variance of the basic bidding protocol. The centralized algorithm performed very well for load balancing, and it prolonged the lifetime of the WSN.

Statistic of the moving distance for the three protocols.
6. Conclusions and Future Work
In this paper, we proposed a novel, centralized algorithm to deploy a mixture of mobile and static sensors to construct sensor networks to provide the required uniform sensing service in harsh environments. We used Delaunay triangulation rather than a Voronoi diagram to detect the coverage holes, because it was easier and provided equivalent results. Our performance evaluation showed that for the same conditions, the centralized algorithm was better than the distributed algorithm in coverage percentage, energy-efficiency, and load balancing. Also, we found that it can prolong the lifetime of the WSN significantly because of the energy efficiency and load balance. The reason of the centralized algorithm being better than the distributed algorithm was that it has the overall topology of the WSN, which, in theory, allows us to obtain the global optimum solution.
As future work, we will improve the algorithm in two ways, that is, (1) in order to improve the precision of the coverage, we plan to introduce the probabilistic disk model which is more accurate instead of the classical Boolean sensing model and (2) to further improve the performance of our matching algorithm which is the core of this paper; we plan to introduce some models in Graph Theory and Operations Research Theory.
Footnotes
Acknowledgments
This research is supported by National Natural Science Foundation of China under Grant 61071076, the Academic Discipline and Postgraduate Education Project of Beijing Municipal Commission of Education, National High-tech Research and Development Plans (863 Program) under Grant 2011AA010104-2.
