Restoration Strategy Based on Optimal Relay Node Placement in Wireless Sensor Networks

In wireless sensor networks (WSNs), connecting disjoint segments is significant for network restoration, especially in some mission critical applications. However, the variability of distances between disjoint segments has tremendous influence on relay nodes deployment. In fact, finding the optimal solution for connecting disjoint segments in terms of the number and positions of relay nodes is NP-hard. To address this issue, plenty of heuristics, such as STP-MSP (Cheng et al., 2008), MST-1tRN (Lloyd et al., 2007), and CORP (Lee and Younis, 2010) are deeply pursued. In this paper, we propose a distributed restoration algorithm based on optimal relay node placement (simply, ORNP). It aims at federating separated segments by populating the minimum number of relay nodes in a WSN that has suffered a significant damage. In addition, both of complexity and upper bound of the relay count for ORNP are explored. The simulation results show that ORNP performs better than STP-MSP, MST-1tRN, and CORP in terms of relay count and the connectivity of resulting topology.


Introduction
Wireless sensor networks (WSNs) are well-known by the significant advantage in monitoring space, such as battlefield surveillance, environment monitoring, and biological detection [1][2][3]. To accomplish such surveillance missions, a large amount of sensors are intentionally placed over a geographic area (called the area of interest, AOI) to monitor certain events. In general, a sensor node is powered by the battery with a limited capacity. And the majority of energy consumption results from communication. Because of such energy constraint, a large number of sensors are deployed for area coverage. In fact, such deployment will facilitate the surveillance mission. For example, all sensors can be easily coordinated to forward gathered data to a base station along a multihop wireless path. In this case, the reachability between any pair of sensors is required which implies the importance of the connectivity in WSNs.
Due to this special network architecture, WSNs are subject to damage that can partition the network into disjoint segments. In Figure 1, the dark areas represent the extent of the damage that partitions the surviving sensors into several disconnected segments. In particular, the network is performing critical tasks, such as forecasting the activity of volcano and monitoring the security status of a border. In these scenarios, all important data are shared to coordinate the action of the segments. Thus restoring connectivity for a disconnected WSN is crucial.
Some distributed algorithms in references [4,5] have been designed to relocate some operational nodes such that the network becomes connected. However the algorithms are inappropriate to connectivity restoration for a severely damaged network.
Unlike those algorithms above, this paper aims to design an efficient algorithm that deploys the minimum number of relay nodes (RNs) to connect the disjoint network segments. Similarly, Lin and Xue [6] mapped such optimal relay nodes deployment problem into establishing the Steiner minimum tree with a minimum number of Steiner points. They also proved the NP hardness of this problem.
Our Contribution. This paper presents a polynomial-time algorithm, namely, ORNP, that opts to seek the minimum number of relays required for establishing a connected intersegment topology through the following steps. (1) We subdivide the area of interest AOI into clusters through Voronoi partition that the virtual backbone is built by the collaboration of all cluster heads.
(2) A novel strategy for relay nodes selection among cluster members, with respect to the properties of Global Voronoi Coverage, is proposed to execute the prerestoration of a disconnected network.
(3) The 3-technology is applied to further decrease the number of disjoint segments by recursively deploying one relay node for every three separated segments.
(4) We propose a geometrical center based algorithm that places relay nodes toward the center of mass of the polygon formed by the remaining disjoint segments to achieve the connectivity of the entire network.
The rest of the paper is organized as follows. Related work is covered in Section 2. The federation problem and Voronoi coverage based system model are described in Section 3. The algorithm ORNP is elaborated in Section 4. Section 5 gives the theoretical analysis on upper bound of RN count and complexity of ORNP. And the validation results are presented in this section as well. We conclude this paper in Section 6.

Related Work
There are two categories of heuristics pursued for federating segmented WSNs [7]: the first category is about establishing connectivity by populating extra relay nodes and the second one is transporting data between segments through mobile agents.
Previous work on RN placement can be classified into two categories. The first strives to establish connectivity between end points [8] in unconstrained network. In the second category, a higher degree of connectivity as an additional performance objective is pursued in [9,10]. In [8], Lloyd and Xue designed MST-1 RN that is based on constructing a minimum Steiner tree with minimum number of Steiner points by a geometric disk cover algorithm. Lee and Younis proposed CORP and ORC [11,12]. Both of CORP and ORC model the network as a grid of equal-sized squares (cells) with all segments and relays located at the center of cells. CORP works in rounds. In each round, it chooses a neighbor cell that is the closest to the other segments to place a relay node. Unlike CORP, ORC works in two phases: (1) identifying Steiner points (SPs) at which RNs would be populated to minimize the number of deployed RNs for connecting segments and (2) for every three neighboring boundary segments identified, deploying an additional RN to form a connected -SP topology. These two steps are repeated recursively, until all segments are united. We improve CORP and propose ORNP that tends to provide a better performance than CORP. The details of performance comparison are discussed in Section 5.
To achieve higher connectivity [9,10,13], Tang et al. connected each sensor to at least two RNs with a minimum number of RNs involved. And he achieved the 2--RN network [9]. Younis et al. proposed a heuristic 2 - [13] that establishes an topology such that each segment at the perimeter is connected to two distinct RNs on the inner mesh through 2 disjoint paths. Meanwhile, different transmission radiuses of heterogeneous nodes are considered by Han et al. in [10]. They opted to establish -V disjoint paths by deterministically populating the minimum number of additional RNs.
Furthermore, all three networks, sparse mobile ad hoc networks, delay tolerant networks, and fragmented sensor networks, employ mobile nodes for data delivery. As a mobile node, it plays one of three roles: a collector that tours the sensors and carries their data, a base station that processes the data, or a relay that forwards data from one node to another [14,15]. Furthermore, mobile nodes are deployed to link disjoint nodes as data forwarders [16] or to increase the lifetime of a network that consists of stationary sensors [17]. In [18], Senel and Younis designed a heuristic that finds -of segments, computes an optimized tour for each subset, and assigns one mobile data collector for each tour. Compared with these strategies that may study the effect of the number of nodes, ORNP only concerns minimizing the RN count.

Preliminary
In this section, we first give the notations and assumptions and then present the network model and the problem statement.

Notions and Terminologies.
We use the following notations throughout the paper:  All sensor nodes deployed in AoI are assumed homogeneous; that is, and are the same for all nodes. If the Euclidean distance between two nodes is not greater than , they can directly exchange messages. A sensor node can perfectly monitor (or cover) a point in the plane, if their Euclidean distance is not greater than .
The Voronoi partition is a well-known geometric structure that has been applied to network clustering. For example, Voronoi trees [19] have been proposed to answer reverse nearest neighbour (RNN) queries [20]. Given a set of data points and a query point , the RNN problem [21] is to find all the data points whose nearest neighbour is . There are three formal definitions associated with Voronoi partitions.
Definition 1 (see [22]). Given a set of sites 1 , 2 , . . . , in a plane 2 , their Voronoi partition is defined as the subdivision of the plane into cells, one for each site, with the property that any point in the cell corresponding to a site is closer to that site than to any other site. Formally, the Voronoi cell corresponding to site is defined as In addition, two Voronoi cells meet along a Voronoi edge, and three Voronoi cells meet at a Voronoi vertex. We call a site a neighbor of another site if the Voronoi cells of the two sites share an edge.
As shown in Figure 2(a), the black solid points and hollow points denote the predetermined nodes and ordinary nodes, respectively, while the rectangle represents the AOI. And the Voronoi cell corresponding to site is the polygon formed by Voronoi vertices, for example, the Voronoi cell of 6 is the polygon formed by Voronoi vertices 1, 2, 3, 4, and 5. Figure 2(b) shows the global Voronoi coverage for all 6 Voronoi cells.
Since CoM based restoration is a part of ORNP, we recall two definitions about geometrical center as follows.
Definition 4 (see [24]). Given an arbitrary nonempty finite multiset in 2 , an Euclidean median of is a point in 2 , denoted as ( ), that minimizes ∑ ∈ ‖ − ‖, when = ( ). We denote = ∑ ∈ ‖ ( ) − ‖ as the sum of the distance from ( ) to all points in . International Journal of Distributed Sensor Networks Definition 5 (see [24]). Given an arbitrary nonempty finite multiset in 2 , the centre of mass of is the function whose value, denoted by ( ), is the point in 2 given by We denote = ∑ ∈ ‖ ( ) − ‖ as the sum of the distance from ( ) to all points in .
Throughout this paper, we assume the entire area satisfies the global Voronoi coverage (see Figure 2(b)). The rationale is that if the sensing disks of some predetermined sensors can provide complete coverage of the entire area that implies the effective area surveillance, the area of interest is initially subdivided into clusters by Voronoi partition with respect to the positions of some predetermined sensor nodes (cites). Furthermore for each Voronoi cell (cluster), the corresponding sensor is nominated as the cluster head while the other sensors within the cell serve as cluster members; that is, there are six clusters 1 , 2 , 3 , 4 , 5 , and 6 constructed through Voronoi Partition as shown in Figure 2(b). By doing so, the cluster heads can coordinate their cluster members to execute a particular task. While the partition is established, all cluster heads form an virtual backbone that forwards collected data to the base station (BS) as shown in Figure 3.
Note that although a sensor node could locate within two cluster heads' sensing area, every sensor can only join one cluster and send all data toward its cluster head. The rationale for that is that two copies of the same data collected by a cluster member are possibly sending towards two cluster heads such that the redundant data could travel through the virtual backbone.
It is worth mentioning that it is pointed out in [25] that the specification of = 2 holds for most commercially available sensors such as Berkeley Motes. Both Zhang and Hou [25] and Wang et al. [26] prove that if the transmission range of sensors equals or exceeds twice their sensing range, coverage implies connectivity. However we set ≤ 2 throughout the rest of the paper, because we consider the scenario that some nodes have to play the role of gateways to ensure connectivity of the virtual backbone such that the collected data can be relayed from one cluster head to the other.

Segment Federation Problem.
In this paper, we only consider the disjoint WSNs. In this scenarios, nodes do not have mobility and all communication links are assumed bidirectional.

Representative Nodes Localization. For any segment
, we designate only one representative node ( ). Note that ( ) cannot be determined by a remote command center because of the damage to the communication of the network. Thus, to design a scheme for the nomination of representatives is imperative. However, we need to make sure all surviving sensors should have the knowledge of the network partitioned into segments. In Figure 1, the nodes closest to the damage area, for simplicity we call them border nodes, can easily detect the failure of communication with their neighbors. Actually once the communication of a border node with some of its neighbors is down and no more messages received from that on, it will notify all reachable nodes that a major damage has taken place which is the cause of consecutive node failures.
Then by simply observing the notification messages flooded in the segment, the border node that has most neighbors is selected as a representative. The rationale of the representative selection is that new RNs are deployed in the vicinity of these border nodes such that the network topology can be restored to its prefailure status as similar as possible. In Figure 1, five representatives, denoted by black nodes, are selected for five segments 0 , 1 , 2 , 3 , and 4 . And they will broadcast their locations to the other nodes in the segments. The problem of federating the five segments shown in Figure 1 is now mapped to reconnecting ( ), = 0, . . . , 4. The federation of disjoint segments minimized and they should be populated carefully. Cheng et al. formulate placing the fewest relays to connect nodes as finding the Steiner minimum tree with a minimum number of Steiner points and bounded edge length [27]. Lin and Xue proved that this problem is NP-hard [6]. Therefore heuristics are pursued in this paper.

The ORNP Approach
The proposed ORNP approach applies greedy heuristics that work in rounds until all segments are federated. First we will introduce ORNP as a centralized procedure, and then the distributed ORNP is elaborated in Section 4.2. The framework of ORNP is shown in Figure 4.

Voronoi Partition Based Prerestoration Phase (VP).
The area of interest is subdivided into clusters through Voronoi partition with some sensor nodes (cites) predetermined. And in each Voronoi cell, the cluster head and cluster members are chosen as we assumed in Section 3.1. Furthermore some cluster members play the role of gateways due to the fact that the maximum communication range of a sensor is assumed less than two times of its sensing range. While the entire network breaks down into disjoint segments, we try to locate a sensor node covered by at least two distinct cluster heads and , where ̸ = , ∈ , and ∈ . Then is designated as a relay to federate and . It is worth mentioning that there could be more than one sensor node, that is, 1 and 2 , covered by at least two distinct cluster heads and . In this case, we need to know which sensor is closer to the CoM of SPG that consists of disjoint segments. Because once several segments merge into one through the gateway, the position of the gateway could possibly become the nearest point to the CoM that directly shortens the distances from all resulting disjoint segments to the CoM for the next stage restoration. Thus if ( 1 , CoM) < ( 2 , CoM), then 1 is a proper choice for the gateway. Intuitively, the selection of this kind of sensor nodes instead of populating new ones can significantly reduce the number of disjoint segments that require federation. As shown in Figure 5(a), there are three clusters 1 , 2 , and 3 with 1, 2, and 3 as their cluster heads, respectively. And the virtual backbone consists of three cluster heads and one relay; for example, each of 1, 2, and 3 is connected by the relay node 4. However, if sensor node 4 breaks down, then 1, 2, and 3 are disconnected. In Figure 5(b), there are two sensor nodes covered by three cluster headers; that is, sensor 5 is covered by 1 and 3, while sensor 6 is covered by 2 and 3. Therefore both sensors 5 ∈ 1 and 6 ∈ 3 are chosen to federate three cluster heads 1, 2, and 3. Figure 4 shows how Voronoi partition based prerestoration federates disjoint segments with the sensor nodes (cluster members) covered by at least two cluster heads. There are 27 disjoint segments that required federation as shown in Figure 6(a). The black nodes denote the cluster members covered by at least two cluster heads (see Figure 6(b)). They are chosen as relays to joint the corresponding cluster heads such that the number of separated segments is reduced from 27 to 11, as shown in Figure 6(c).

CoM Based Restoration Phase (CR).
After the prerestoration phase, we strive to further reduce the number of disjoint segments by establishing as many 3-s as possible. A 3-is the structure that a relay is placed to joint three separated segments. There are still 11 disjoint segments left (see Figure 7(a)). We build three 3-s such that the total number of disjoint segments is reduced by 6. Note that although we try to build 3-as many as possible, if a deployed RN can connect more than three separated segments, then all disjoint segments adjacent to this specific RN can be federated. In fact, ORNP requires less RN, if more RNs adjacent to more than three separated segments are populated.
Once all 3-s are discovered, there will be no more segments that can be federated by deploying only one relay. Then we calculate the CoM of smallest polygon which includes all remaining segments, using the following formula [28], where and are coordinates of the CoM and and are coordinates of the segment : The rationale is that placing RNs toward the CoM will significantly decrease the number of RNs required for segment federation. Note that the CoM based Restoration  Phase works in rounds. In each round, every first checks whether it can reach any RN which may have been populated from another segment , where ̸ = . If there is no RN reachable, then places a relay node toward CoM. Note that each RN placed by will become new representative of and every two RNs should be placed at interval. It is worth mentioning that while two or more s meet, the corresponding s merge into a new segment and the closest to the CoM is chosen as the representative of the new segment. Then the rest segments are excluded from the next round deployment. The whole phase will recursively deploy relays until all disjoint segments connect with each other. As shown in Figure 7(b), five segments 1 , 2 , 3 , 4 , and 5 are deploying relays toward the CoM, where denotes the relay deployed by in the th round. It is clear that the relay 2 2 can reach 2 1 , while 2 3 is within the communication range of 2 4 in the second round. Therefore 2 2 and 2 1 merge into one segment, so do 2 3 and 2 4 . Compared with 2 1 and 2 4 , 2 2 and 2 3 are closer to CoM. Hence 2 2 will represent 1 and 2 , while 2 3 represents 3 and 4 for the next round deployment (see Figure 7(c)). Before relays reach the CoM, 3 2 , 3 3 , and 3 5 are capable of communicating with each other; therefore all those 5 disjoint segments are connected in three rounds (see Figure 7(d)). And the resulting topology is shown in Figure 8. We will analyze the quality of the resulting topology in Section 5.

Distributed Implementation. This section describes how
ORNP is implemented in a distributed manner. First, we assume the area is partitioned into clusters through Voronoi partition before it is inflicted with major damage. Every cluster is considered as a segment with its cluster head chosen as the representative. The smallest polygon SPG on current set of representatives is calculated and the positions of BRs are broadcasted to all sensors as the initial status of the network. For simplicity, we call two cluster heads connecting with each other directly or through relay neighbors.
While the networks are partitioned into disjoint segments due to the major damage, each segment will broadcast a federation request to all cluster head s within . For each cluster head ∈ , communication with all its Voronoi neighbors is established. Once a cluster head CH ∈ fails to communicate with at least one of its Voronoi neighbors, CH will try to broadcast gateway spotting message to all its cluster members. If some active cluster members of CH can still contact with CH of , they will respond to federation acknowledgement messages. Then CH randomly chooses one of those cluster members to play the role of gateway such that CH and CH are united.
After the prerestoration phase, each segment chooses a sensor as its representative and then broadcasts the location of . Although each does not know the locations of the other s, it assumes being a and calculating the CoM of the SPG with respect to the positions of itself and all initial BRs that lost connections due to the damage. Then every starts to place relays toward CoM and each RN placed by will become new representative of . While two or more s meet, the corresponding s merge into a new segment and the closest to the CoM is chosen as the representative of the new segment. Then the rest segments stop to deploy RNs toward the CoM. Each will recursively deploy relays until all disjoint segments connect with each other. Note that, without the knowledge of precise positions of neighbor representatives, there is no way to directly build the 3-. However the 3-s still can be constructed during the RN deployment.
Intuitively, the implementation of ORNP in distributed way may result in more RNs populated. However, once RNs are deployed, any two disjoint segments can be united. And the communication in a WSN is restored. (c) Figure 6: Voronoi partition based prerestoration (VP).

Theoretical Analysis.
The correctness, complexity, and approximation ratio of ORNP are analysed in this subsection. First we give the following theorems and lemmas.

Theorem 6.
If the area satisfies the global Voronoi coverage, then there exists at least one sensor node ∈ for each ∈ , such that is covered by , , and , where ̸ = ̸ = .
Proof. Based on the definition of Voronoi Partition, the position of a Voronoi vertex V is the intersection point of three Voronoi edges which is shared by 3 pairs of Voronoi neighbors; that is, (V, CH 1 ) < , (V, CH 2 ) < , and (V, CH 3 ) < . As shown in Figure 5(a), sensor 4 is covered by three cluster heads 1, 2, and 3. Therefore the sensor ∈ ( , , CH 1 ) located in the position of V is covered by CH 1 , CH 2 , and CH 3 .
Theorem 7 (see [24]). The centre of mass provides a (2 − 2/ )approximation of the Euclidean median, where denotes the number of points.
We denote the optimal solution to the federation problem on a set of disjoint segments Opt( ). The number of relays deployed by Opt is denoted by |Opt( )|, while |MST( )| denotes the number of relays placed along the edges of the MST on set . Furthermore, we call a MST of the resulting topology through Opt( ) an optimal MST (OMST( )). The total length of edges in OMST( ) and MST( ) is denoted by OMST( ) and MST( ) , respectively. Obviously, |Opt( )| ≤ |MST( )| always holds which implies that OMST( ) ≤ MST( ) due to RNs are populated at the interval of .

Theorem 8. The number of relays deployed by
is less than 3 times that of .  (2) while (there exist at least a sensor ∈ ⋂ =1 disk(CH ), where CH ∈ ) do (3) if ( , CoM) = min{ ( , CoM) | ∈ ⋂ =1 disk(CH )} then (4) Choose the sensor as a relay to federate the segments from 1 to (5) Update the list of disjoint segments. Intuitively, the construction of 3-s is a 3approximation algorithm on of segments while relay nodes deployment toward CoM is a 2-approximation algorithm on ; thus, ORNP is a 3-approximation algorithm. Proof. Since ORNP consists of two efficient algorithms, Voronoi partition based prerestoration (VP) (Algorithm 1) and CoM based restoration (CP) (Algorithm 2), we analyse the complexity of them, respectively.
The CoM based restoration works in two phases. In the first phase, it strives to construct 3-s as many as possible. It is clear that the complexity of 3-construction is ( 3 ). In the second phase, all remaining disjoint segments are populating relays towards the CoM. If two or more segments meet, the one closest to the CoM is chosen as a representative for the next round deployment. According to Theorem 9, the complexity of relay nodes deployment toward the CoM is ( × ( , CoM)/ ), where denotes the number of remaining disjoint segments and ( , CoM) = max{ ( , CoM) | ∈ }. Therefore the complexity of CoM based restoration is ( 3 ).
In addition, the VP partitions the network into Voronoi cells for relay nodes selection, the complexity of which is ( ) [29]. So, the complexity of the ORNP is ( 3 ).

Validation Experiments.
The simulation environment, performance metrics, and experimental results are discussed in this subsection.

Performance Metrics and Baseline Approaches.
In our experiments, a partitioned WSN with varying numbers of segments has been considered. In addition, the parameters that affect the network characteristics are listed as follows.
Communication Range of Relays ( ). The performance of ORNP is affected by ; basically longer distances between segments require more RNs placed.
Number of Segments ( ). Intuitively, a large number of segments require a larger RN count. We used the following two metrics to evaluate the overall performance of ORNP.
Number of ( ). A better approximation algorithm for the optimization of RN placement deploys less RNs than other strategies.
Average Node Degree. The connectivity of the resulting topology is measured by the total number of links among neighboring RNs dividing rn .
We compare the performance of ORNP with the following three baseline approaches; the first algorithm is MST-1 RN that establish a minimum spanning tree based on single-tiered relay node placement [8]. STP-MSP, the second one, is designed for solving a Steiner tree problem with a minimum number of Steiner points [27]. The third approach that maps the network into grid to find the least RN count is called CORP [11].
MST-1tRN. This algorithm strives to place the minimum number of RNs to establish an MST and its approximation ratio is between 5 and 7. It is based on the assumption that the communication range of a RN is larger than that of a sensor, . For the given segments, MST-1 RN first computes an MST. Then it deploys RNs on each edge, , of the MST. Note that if ≤ Length( ) < 2 , then one RN should be placed right in the middle of the edge. 2 + ⌈(Length( ) − 2 )/ ⌉ − 1 RNs are placed along the edge , while Length( ) is larger than 2 . It is worth mentioning that is assumed to be equal to in our simulation.
-. It populates the minimum number of RNs to establish connectivity such that the transmission range of each node is at most . As a 3-approximation algorithm, it first combines reachable nodes into one group. Then for each three components, it seeks a position that is at most units away and places a RN in to merge three components into one. By Repeating these steps, all three components that can be connected by one RN are located. . This scheme models AOI as a grid of squares (cells) with equal sizes. Because all segments and relays are located at the center of cells, a segment or a relay can reach relays located at the center of neighboring cells. CORP works in rounds. In each round, it first identifies the border segments. Then for each border segment, it chooses a neighbor cell that is closest to the other border segments to place a RN. If some segments are within each other's communication range, among which a segment is chosen to represent all of them for the next round deployment, these steps are repeated until all segments are federated.
Note that among three baseline approaches, only CORP maps the network into grid and it assumes all the segments and relays are located at the center of cells. However this assumption does not hold for some realistic applications. Since CORP works under this assumption, a few more relays are required to be added to make sure that all segments center at cells. According to the proposed algorithm for cell coverage in [9], for each cell with the side length / √ 2, there is one relay with communication range needed to cover every sensor within the cell as a representative.
In summary, STP-MSP and MST-1 RN opt to form an MST among the segments using the least possible RN count. In addition, CORP tries to form a network topology that has the segments at the periphery. Meanwhile, ORNP strives to reduce the number of segments needed to be connected before the fewest RNs are placed to federate the entire network. The characteristics of the generated topologies will be later elaborated through a detailed example. This section focuses on the number of RNs and the node degree.

Simulation Results and Comparison of the Generated
Topology Quality. Several configurations with different combinations of and are simulated. We change the value of from 50 to 300 with increment of 50, while varies from 3 to 8. And all segments are randomly deployed in an area 1000 m×1000 m. For each individual experiment, we average the results over 20 runs. Figure 9 gives a performance comparison of ORNP with baseline approaches in terms of the RN count through varying and . Seen in Figure 9(a), as increases, rn decreases generally. The performance of ORNP is better than MST-1 RN and STP-MSP for varied from 50 m to 300 m that is attributed to how ORNP populates RNs toward the CoM rather than having an MST or a Steiner tree when the number of segments is small. Note that ORNP seeks less RNs than CORP, because CORP requires extra relays to make the segments centered at cells. Figure 9(b) shows how affects the performance of ORNP in a partitioned network. As grows, more RNs are populated for all approaches. When is as large as 7, all segments are connected. Once is larger than 7, the number of RNs drops because of the density of the segments population getting high. When the communication range is fixed, ORNP still performs better than baseline approaches with various .

Number of RNs.
It is worth mentioning that even if there are no eligible sensors chosen as gateways which implies the Voronoi partition based prerestoration does not work, ORNP always seeks less RNs than CORP. The reason for that is although both of CORP and ORNP deploy RNs toward the geometrical center of the convex of all disjoint segments, CORP is based on the assumption of every segment located at the center of a cell. In fact, this assumption does not hold in real applications. Therefore CORP requires an extra relay to make sure all sensors within the cell will be covered by the extra relay that results in more RNs count.
Average Node Degree. Seen in Figures 10(a) and 10(b), a better topology with higher connectivity in terms of the average node degree is generated by ORNP. As grows, ORNP tends to build a network with much higher average node degree, when reaches 150 m as shown in Figure 10(a). The performance advantage of ORNP is not affected by as shown in Figure 10(b). To sum up, the initial positions of segments have significant influence on the average node degree of the topology by ORNP instead of the number of segments.
ORNP populates RN toward the CoM that results in a better topology compared to baseline approaches in terms of connectivity. Figure 11 shows the comparison on the resulting topologies obtained by ORNP and the minimum steiner tree (MST) that STP-MSP and MST-1 RN establish with the same setup. Table 1 presents the number of RNs deployed along the shortest path between every two segments in both topologies. We assume bidirectional data delivery between two segments use the same path, where 0 denotes ORNP as 1 denotes MST. For all segments, ORNP deploys less RNs to forward data than STP-MSP and MST-1 RN. Overall ORNP requires 150 hops for delivery between all pairs of segments, which is 66 hops less than that in MST. Therefore, RNs deployment of ORNP results in a topology with less overall latency, while data are delivered between segments.

Conclusion
In this paper, we have discussed the problem of federating disjoint segments in a partitioned WSN. The proposed solution ORNP consists of two efficient algorithms, Voronoi partition based prerestoration and CoM based restoration, both of which collaborate to establish communication links between segments. The performance of ORNP is analyzed mathematically and validated through simulation. The simulation results show ORNP outperforms STP-MSP, MST-1 RN, and CORP in terms of the relay count and the connectivity of resulted topology. It is worth mentioning that although ORNP is a centralized algorithm, it can be implemented in a distributed manner. Thus it is applicable to all kinds of networks' restoration and it does not rely on any particular WSN features.
Here are some open issues that will be addressed in the future. The first one is that relay nodes deployment may consider the quality of service (QoS) requirement instead of just establishing the connectivity only. For example, when massive data travel through those pathes with overall capacity lower than QoS requirement, the relays on those pathes will drain their batteries that can directly cut off communications in the network. The second one is how to restore damaged networks with obstacles involved. Under some circumstance, relays cannot be placed on obstacles that are difficult to travel through by mobile relays. Therefore, the future work includes extending ORNP to solve the network restoration problems with the QoS requirement or the obstacle constrain.