In this section, an extended structure of the r-neighborhood graph is given. The main goal is to avoid the unbounded maximum node degree in NGr(V). In this extension, assumption AS is not required anymore. Instead, a unique identifier id(u) is available to each node u in V. The structure is defined as follows.
DEFINITION 3.3: Given a set V of nodes ℵ, the extended r-neighborhood graph of V, denoted as , has an edge uv if and only if ||uv|| ≤ 1 and there exists no node w
∈ V satisfying one of the following three conditions:
)
*( V NGr
D1: Loc(w)∈NRr(u,v);
D2: Loc(w)∈D(muv,luv)∩C(v, uv)andid(u)>id(w); D3: Loc(w)∈D(muv,luv)∩C(u, uv)andid(v)>id(w).
Without D2 and D3, is clearly equivalent to the original r-neighborhood graph. In conditions D2 and D3, the two sub-regions of D(muv, luv) intersected by C(v,
||uv||) and C(u, ||uv||) are, as depicted in Figure 3.4, the solid left arc and right arc along the outlier of NRr(u, v), respectively. When a node w is located in these two arcs, the existence of edge uv should be further determined by their identifiers.
)
*( V NGr
Hereafter, we say that a node w ∈ V blocks an edge uv in UDG(V) if and only if w satisfies one of the three conditions in Definition 3.3.
Figure 3.4: The r-neighbor region of nodes u and v, and the two intersections defined in D2 and D3.
In , an edge uv of UDG(V) will not only be blocked by some node w in , but may also be blocked when either D2 or D3 happens. Therefore,
constitutes a subgraph of NGr(V), which means that the maximum node degree of is no worse than its original version. In the following theorem, we show that the upper bound of in Theorem 3.5 remains correct in , and the correctness is for any case of V, not subject to assumption AS.
)
Proof. Using the same argument as Theorem 3.5, we assume for contradiction that two edges uv and uw in enclose an angle at node u.
Without loss of generality, we assume that )
( )
Then one corresponding right-angle triangulation is as Figure 3.2 (c). In this case,
(
'/2)
/2sinθ =r . Thus, we can get that θ <θ'=2sin−1(r/2). Since uw = uv , both Loc(w) and Loc(v) are on C(u, ||uv||). The fact that θ <θ' further limits Loc(w) on the arc intersected by D(muv, luv). Similarly, Loc(v) is limited on the arc intersected by D(muw, luw) for the same reason. Therefore, Loc(w) and Loc(v) are on the regions defined in D2, with respect to edges uw and uv, respectively.
Next, the existence of uv and uw should be determined by their identifiers. If id(v)
> id(w), uv is blocked by w. Otherwise, if id(v) < id(w), uw is blocked by v. As a sequel, no matter what the values of id(v) and id(w) are, at least one of the edges enclosing θ’ can not be in NGr*(V). Thus we proved this theorem. □
Figure 3.5: If θ < 2sin-1(r/2) and ||uw|| = ||uv||, either uw or uv can not be in NG*r(V)
From Theorem 3.6, we can see that is constant when r is sufficiently large. Therefore, there has some setting of r such that is bounded by some constant, for any set V of n nodes. So, we reach the following conclusion.
))
COROLLARY 3.2: The maximum node degree of the extended r-neighborhood graph is partially bounded.
In the rest part, we show that inherits all desired properties achieved by NGr(V), except the generality for RNG(V). The fact that
confirms the planarity of , since NGr(V) is planar for any r. Moreover, when r = 0, the two arcs defined in D2 and D3 are empty. Thus whether an edge is in
is solely depending on D1, which means that . Therefore, remains a general structure of GG(V).
)
However, as shown Theorem 3.6, some adjacent edges having the same length in RNG(V) would be avoided in . Thus RNG(V) is not always a subgraph of . This means that is not essentially equivalent to RNG(V). Even more, could be a subgraph of RNG(V). Therefore, is no longer a general structure of RNG(V).
)
About the connectivity, because RNG(V) is not always a subgraph of , we cannot ensure the connectivity of directly from that of RNG(V).
Therefore, we apply an entirely different logic to prove this property. The idea is based on comparing the lexicography orders of nodes pairs. This idea has been successfully used to prove the connectivity of XTC(V) [32], another subgraph of RNG(V). lexicographic order of (u, v) is smaller than that of another nodes pair (s, t) if one of the following three cases happens: 1) ||uv|| <||st||; 2) ||uv|| =||st|| and id(u) < id(s); 3)
||uv|| =||st|| , id(u) = id(s) and id(v) < id(t). Now, we prove the connectivity of
THEOREM 3.7: For any set V of nodes on ℵ, if the underlying UDG(V) is connected,
)
*( V
NGr is connected, for all 0 ≤ r ≤ 1.
Proof. Suppose UDG(V) is connected. Let U(V) be the set of unconnected nodes pairs in . We assume for contradiction that some nodes pairs in are not connected. i.e., U(V) is not empty. Let (u, v) be the node pair with smallest lexicographic order in U(V).
)
*( V
NGr NGr*(V)
Assume that edge uv is not in UDG(V), i.e. ||uv|| > 1. Since UDG(V) is connected, there must be some path longer than one hop connecting u and v. Let π(u, v) be such path in UDG(V). Since ||uv|| > 1, the lengths of each edge on π(u, v) is less than ||uv||.
When this path is mapped to , there is some nodes pairs on π(u, v) unconnected in . Thus some unconnected node pair on π(u, v) has length shorter than ||uv||, which however contradicts that (u, v) has the smallest lexicographic order in U(V). Therefore, edge uv must be in UDG(V).
)
Since edge uv is in UDG(V) and not in , there must be some node w satisfying one of the three conditions in Definition 3.3. Besides, either (u, w) or (w, v) is in U(V), otherwise (u, v) can be connected by path uwv. We consider the three cases:
)
Therefore, we cannot find any nodes pair in U(V) having the smallest lexicographic order. In other words, U(V) is empty, which however is a contradiction. Thus, we
proved this. □
Due to the fact that NGr*(V)⊆ NGr(V), there may has some paths in NGr(V)
not inNG*r(V). Therefore, ρ(NGr*(V)) is no better or even worse than ρ(NGr(V)). Even so, the upper bound of can be as good as that proved in Theorem 3.4; we briefly explain this: All arguments in Theorem 3.4 are not related to the two additional conditions D2 and D3, except those referred from Lemma 3.1. Whatever D1, D2 or D3 happens, ||uw|| ≤ ||uv||, ||vw|| = ||uv|| and ||mv|| < l, which means that all inequalities in the proof of Lemma 3.1 are unchanged. Consequently, Theorem 3.4 is still correct, even if all conditions of Definition 3.3 are considered. So,
is also partially bounded.
)) but also asymptotically tight to the worst possible value of . In other words, it is very hard to find another upper bound of better than ours.
We apply the same argument as that used to verify the tightness of the length stretch factor [3] and the power stretch factor [15] of RNG(V)
)
get . That is, is in the regions with respect to edge vivi+1, defined in D2. Moreover, . Thus, edge vivi+1 is not in . Then, the remaining edges are exactly a path (spanning tree) v1v3v5…v2m–3v2m–1 v2mv2m–2…v6v4v2 of V, connecting all nodes, as the bold links in Figure 3.6 (a). Therefore, we can get that
) same argument to the instance as shown in Figure 3.6 (b). So, we proved this it. □
Actually, an equivalent structure of , without a original version like NGr(V), was mentioned in our previous paper
)
*( V NGr
2 [9]. In that preliminary work, however only qualitative results were given. To prove the quantitative results, we separate NGr(V) from in this paper, because NGr(V) has a clearer form in definition that can be used to highlight the main tricky in our derivations. Besides, all qualitative results in [9] are re-evaluated here using different arguments.
)
*(
r V NG
2 The term “r-neighborhood graph” in [9], is not refereed to the original version in Definition 3, but the extended version in Definition 4. In this paper, we reuse the same term to name the original version and
(a) (b)
Figure 4.6: A worst-case instance V of n nodes in NGr*(V): (a) n is even; (b) n is odd.
3.3 (r, α )-Neighborhood Graph
In [7], we showed that for any point x∈ NRr(u, v), ||ux||α + ||xv||α < ||uv||α (1 + rα).
This result combined with Definition 3.2 indicates that if an edge uv of UDG(V) is not in NGr(V), there must be a node w located in NGr(u, v), such that p(u, w) + p(w, v) <
p(u, v)(1 + rα). In other words, for any uv ∈ UDG(V), if there is no node w such that p(u, w) + p(w, v) < p(u, v)(1 + rα), then uv ∈ NGr(V). The upper bound of the power stretch factor in Theorem 3.4 is then an inductive consequence of this fact. This argument implies the following lemma,
LEMMA 3.6: For any graph S(V), if it contains an edge uv, whenever there is no other node w such that p(u, w) + p(w, v) < p(u, v)(1 + rα), then ρ(S(V)) ≤1 + rα(n – 2).
According to this lemma, a structure that has the same upper bound on the power stretch factor of NGr(V) is defined as follows.
DEFINITION 3.3: Given two nodes u and v on ℵ, a parameter r, 0 ≤ r ≤ 1, and a constant α ≥ 2, the (r, α)-neighborhood region, is defined by
{
| , , ( , ) ( , ) ( , )(1 )}
) ,
( α
α u v x ux uv vx uv p u x p x v p u v r
NRr = ∈ℵ < < + < + .
DEFINITION 3.5: Given a set V of nodes on ℵ, the (r, α)-neighborhood graph, denote
Their relationships are as follows. We can see that is actually a general structure of NGr(V). Notably, it achieves the same upper bound on the power stretch using equal or less edges.
Furthermore, the properties below indicate that the number of links could be
even lower as the environmental attenuation factor α is strengthened. Both properties can be easily verified by inspecting the last condition in . We omit the proofs.
In this part, we present an equivalent structure of the (r, α)-neighborhood graph, called the (r, α)-Enclosed Graph. The idea is mainly borrowed from the Enclosed Graph, proposed by Rodoplu et al. [24]. We briefly reintroduce it below. For any two nodes u and v, there is space, named the relaying region, RR(u, w), in which any node fall in the region can be reached from u with less power by relaying through v. The enclosed region, ) , is a subspace merged from of the complement of relaying regions of all surrounding v’s of u. The enclosed graph, EG(V), is a graph in which a node v is adjacent to u if and only if v is in the enclosed region of u. This graph has the optimal power stretch factor 1. Actually, as the receiving cost is neglected, it is an equivalent representation of GG(V).
(u ER
The following, we generalize this idea to the (r, α)-neighborhood graph (recall that is a generalized from NGr which is further a general structure of GG(V)).
Consider three nodes u, v and w, according definitions 3.4 and 3.6, we can observe that no matter or , the following three conditions are satisfied:
The different is in their representation. consists of all points where may have a relaying node w satisfying (3.6) for the two fixed nodes u and v, while is composed by all points on which a node satisfies (3.7) if it receives relaying from u through w.
) overlapped, then there will be some point x such that the two facts
) are satisfied at the same time, which is conflicted. Therefore, the two regions must be disjoint, i.e. (see Figure 3.8)
φ
α α(s,t)∩NR (s,t)=
RRr r (3.8)
Compared to different parameters setting, see Figure 3.8, we can get that ) These observations can be easily validated by inspecting their definitions. We omit the proof.
The region enclosed by the complements of the relaying regions of nodes surrounding to u is defined below.
DEFINITION 3.7: Given a node u on ℵ, the (r, α)-enclosed region of u, denoted as According to (3.9) and (3.10), see Figure 3.9, we have
) Figure 3.8: (r, α)-relaying region vs. (r, α)-neighborhood region.
Based on this merged region, the graph is defined below for each node u. Figure 3.9: (r, α)-enclosed region.
The equivalence between NGrα(V) and EGrα(V) is shown below.
≤ Tmax, ||uw|| ≥ ||uv||, ||vw|| ≥ ||uv|| and p(u, w) + p(w, v) ≥ p(u, v)(1 + rα), which implies
Cleary, similar to , each node u can distributively decide it neighbors in using local information.
α
EGr
3.5 (f
r, α )-Neighborhood Graph
In above structures, the parameters among nodes are all identical. This consideration simplifies the theoretical discussion. However, to be applied on a distributed environment, a more flexible structure is required. The following, we define an more general structure of the (r, α)-neighborhood graph. It allows each node possessing its own parameters, while still preserves to several desired features.
DEFINITION 3.9: Given a set V of nodes on ℵ, a parameter set fr: {rv1, rv2, …, rvn}, and nodes, their neighbor regions are determined by the smaller one. Let
and
quantitative results.
Proof: Consider (i). For any , by definition, , which means that no matter what the value of rv is, . So, if there is a node v’ such
direct result of (i). (iii) follows from the fact that , which
means that . So
Notably, the generalization still preserves all qualitative properties in , which is the most primitive version.
NGr
PROPERTY 3.5: The (fr, α)-neighborhood graph is connected planar with symmetric edges.
Proof: The graph is symmetric since for any two nodes u and v, the presences of both uv and vu are based one the same ruv. The connectivity and planarity are due to the
facts that ( ) ( ) ( ).
Chapter 4
Energy-Efficient Construction
In this chapter, we design energy-efficient algorithms as well as protocol for the structures proposed in the preview chapter. First, a purely localized algorithm will be presented. In this algorithm, each node start its transmission power from a small level, and then incrementally increasing the power, until certain criteria are satisfied. It can avoid a long distance construction power if the increment can stop earlier before the maximum power is reached.
However, such incremental approach typically requires several iterations to complete. The incurred latency would not be tolerable to mobile nodes. In addition, it is not adapt to the periodic beacon. To construct and maintain the proximate graph in mobile environment, a node can periodically announce its current position to its neighbors. However, such periodic transmission would consume considerable power, especially when nodes are highly moved where an intensive update is required.
Therefore, we will investigate a shrink power mechanism for the periodic beacon.
4.1 Localized Algorithm for Stationary Nodes
In this section, we propose an efficient purely localized algorithm, named PLA, to construct the r-neighborhood graph. This algorithm consists of two main procedures, GETINF and FINDNB. First, GETINF collects a set of nodes’ information
within one-hop distance, denoted as INu. Then, the collected information will be fed into FINDNBto determine a set of neighborsin NGr(V), denoted as NBu.
ALGORITHM PLA Input: A ratio 0 ≤ r ≤ 1.
Output: A set of neighbors adjacent to u.
Step 1: INu := GETINF(u, r);
Step 2: NBu := FINDNB(u, r, INu);
Step 3: Stop and output NBu;
To collect the one-hop information, the simplest way is to let each node broadcast its information at the maximum transmission range 1 and gather the information from others. However, the severe path loss and the frequent change in topology may cause considerable power in such transmission. Therefore, in GETINF
we aim to reduce the transmission range during construction. The main idea is to incrementally raise the transmission power from a small range and then use some rule to stop the increment earlier before the transmission range 1 is reached. The detail steps are explained as follows: the transmission range is initiated at a small distance d0, and then it will be incrementally raised for several rounds. Let d1 and d2 be the previous and the current transmission ranges of a round respectively. In each round, a node broadcasts a request to distance d2, and waits for the responses from receiving nodes to gather the nodes’ information. To avoid replying to a node for the second times, the request of a node u contains the position Loc(u) and the previous distance d1. As a node v receives this request, it calculates the Euclidean distance ||uv||. Then, if
||uv|| > d1, v responses its information, Loc(v), to u at distance ||uv||, otherwise, just neglects the request. In each round, the range is increased by multiplying α 2, which
until the following stopping criterion is satisfied. Let v1 and v2 be two crossed points intersected by C(u, ||uv||) and C(m, l), see Figure 4.1 (a). We define SC(u, v) to be the semicircle enclosed by uv1 and uv2 with radius ε, where ε > 0 is a small value less than the distance between any pair of nodes in V. Then, given a distance d, a semicircle χ (u, d) is defined as follows
U
duv
v u SC d
u
≤
= ( , )
) ,
χ( .
We can prove that if χ (u, d) is exactly the circle C(u, ε), like Figure 4.1 (b), then a disk centered at u with d radius can cover all neighbors of u in NGr(V). In other words, GETINF can be halted as χ (u, d2) ≡ C(u, ε). Let Nu(G(V)) be the set of neighbors of node u in a graph G(V). This property is proven in Lemma 4.1.
(a) (b)
Figure 4.1: (a) the semicircle SC(u, v); (b) the χ(u, d) is the union of all SC(u, v) where v is within
distance d.
LEMMA 4.1:Given a node u ∈ V and distance d ∈ ℜ, if χ(u,d)≡C(u,ε),
{
| ( ) ( , )}
)) (
(NG V v V Loc v D u d
Nu r ⊆ ∈ ∈ .
Proof. We assume for contradiction that some node s in Nu(NGr(V)) is not in . Since ε is less than the distance between any pair of nodes
{
v∈V |Loc(v)∈D(u,d)}
in V, we get ||us|| > ε. Thus, edge us intersects a point on the circle C(u, ε). Do the fact
, us must intersect at least one semicircle that composes χ(u, d), see Figure 4.1 (b). Let SC(u, v) be one of the semicircles intersected by us. Then, us is enclosed by uv1 and uv2 in SC(u, v). In other words, ∠ suv ≤ ∠ v1uv or ∠ suv ≤ ∠ vuv2. According to the argument in Theorem 3.6, we can get that ∠ v1uv = ∠ vuv2 = 2sin–1(r/2). Therefore, we have ∠ suv ≤ 2sin–1(r/2). Moreover, since s is not in
{
, s must be farer than v from u. So, Loc(v) ∈ NRr(u, s).According to Definition 3.3, us in not in NGr(V), which however contradicts that s is a neighbor of u in NGr(V). Thus, we concluded this lemma. □
The total transmission power used by GETINF could be as large as , where I is the number of rounds. This result could be worse than the maximum transmission power 1 as I is large. Fortunately, when n is large, nodes are closer to and evenly surrounded by each other so that χ (u, d) has more change to be quickly shaped as C(u, ε) . So we can gain benefit from GETINF in higher probability as the number of nodes increases.
d
The steps of GETINF are described below. Neglecting the communication overhead at step 2, the execution time of GETINF is dominated by the union operation at step 4. This step can be implemented by some search-and-merge algorithm. Thus, the time complexity of GETINF is O(nlogn).
Now we discuss the communication cost of GETINF. As d0 is multiplied by α 2 over αlog2(1/d0) times, it is larger than 1. Therefore, the number of rounds to increase the transmission range d2 is dominated by αlog2(1/d0)+ 1. Assume a node’s position can be encoded by log2n bits. Each node has to broadcast at most (log2n)( αlog2(1/d0) + 1) bits for the request messages. In addition, a node will reply to same node no more than once. Thus, a node needs at most (log2n)(n – 1) bit to reply all requests.
Combining these results, communication cost of a node is no more than (log2n)(αlog2(1/d0)+ n)bits.
GETINF(u, r)
Step 1: d1:= 0, d2 := d0, IN: = φ, χ(u, d2): = φ;
Step 2: Broadcast a request (Loc(u), d1) to distance d2 and gather a set R of responses from nodes within d1 and d2;
Step 3: For each Loc(v) ∈ R do
χ(u,d2):=χ(u,d2)∪SC(u,v); Step 4: IN: = IN ∪ R;
Step 5: If d2 ≤ 1 and χ(u, d2) is not the circle C(u, ε) do d1 = d2;
d2 := d2 × 21/α; Return to step 2;
Step 6: Stop and output IN;
Once the information INu is collected, node u can start to determine its neighbors in NGr(V). OneinstitutivewayistoapplyDefinition 2 on INu directly, as the follows procedure.
Step 1: N := INu;
Step 2: For each node v in N do For each node w ∈ INu do
If P(w) ∈ NRr(u, v) do N := N – {v};
Step 3: Output N and stop;
In this procedure, the existence of a neighbor v in INu is determined by checking whether some node w is located in NRr(u, v). The correctness is obvious, while in the worst case it should take O(n2) time on each node. This time is usually not tolerable when topology changes frequently. Therefore, we aim to reduce time complexity in this part. In FINDNB, the main idea is to reverse the original procedure. That is, instead of checking whether some node w can block an edge uv, for each uv, we check whether some edge uv can be blocked by a node w, for each w. The procedure is below.
This checking is begun from the farthest to the closet nodes in INu. So, we index all elements of INu in non-decreasing order of ||uw|| in step 2. The set NB contains all candidates that could be a neighbor of u during the process. As a node w is given, we remove from NB all fail candidates that that are already blocked by w. After that, w is added into NB to be an new candidate of Nu(NGr(V)). The process continues until all w’s in INu were considered. Now, we prove the correctness of FINDNB.
FINDNB(u, r, INu) Step 1: NB := φ;
Step 2: Index the elements of INu in non-increasing order of ||uw||;
Step 3: For each node w ∈ INu with smallest index do For each node Loc(v) ∈ NB do
If Loc(w) ∈ NRr(u,v) do NB := NB – {v};
If Loc(w) ∈ NRr(u,v) do NB := NB – {v};