Solution to Open Problems in Wireless Sensor Networks Tanzila

advertisement
Solution to Open Problems in Wireless Sensor Networks
Tanzila Saba and Amjad Rehman
Faculty of Computer Science and Information Systems
University Technology Malaysia
Contact author: rkamjad@gmail.com
Abstract
Wireless Sensor Network (WSN) consists of tiny autonomous devices called sensors capable of sensing,
processing and transmitting information. Energy consumption and maximizing lifetime are the important
challenges in the sensor network. In this paper, we propose Optimal Sensing Ranges (OSR) algorithm to
address the problem of coverage, connectivity and provide an energy efficient heterogeneous network.
The energy efficiency is due to the use of heterogeneous nodes of variable sensing ranges. Analytical and
simulation results show that OSR performs better than other algorithms.
Keywords: wireless sensor network, sensing ranges, lifetime, connectivity, sensors, Ad-hoc networks
1. Introduction
The advances in wireless communication have made feasible low power, low cost, multifunctional
sensors. WSN is a special type of Ad-Hoc network with randomly deployed nodes assigned with the task
of monitoring the surveillance area and a base station [1]. A sensor node is embedded with unreplacable
battery, a sensing unit and an antenna. Base stations are special nodes with unlimited battery power. They
possess the ability to collect information from the sensor nodes. A heterogeneous network differs from a
homogeneous network in having nodes with varying sensing ranges. The basic characteristic of WSN is
dense node operation which facilitates reliability and longer network lifetime. The lifetime of a network is
the time during which surface coverage is sustained. WSN is data-centric i.e., it is concerned with the
sensed data rather than the node that senses the data (node-centric) or the path taken to transfer the data to
the base station. Two approaches based on the working of WSN are event driven and data driven. In event
driven, a node jumps into action when it detects an event in its sensing area and reports the same to the
base station, as seen in applications like forest fire detection. In data driven approach, base station queries
the sensor nodes at regular intervals to detect an event as in applications like weather forecasting.
WSN applications are broadly classified into two categories: Remote Environment Monitoring and Home
and Commercial applications. Remote environment monitoring include forest fire detection, assistance in
military operations involving intrusion detection, identifying enemy hide-outs etc., commercial
applications include detecting car thefts, vehicle tracking, weather reporting etc., WSN plays a major role
in remote environment monitoring applications. The various issues related to WSN are QoS, Security,
Routing, Operation and Coverage. Among them, Coverage is an important one which reflects how well an
area is monitored by a sensor network. It is the measure of quality of service provided by the network.
Coverage of the surveillance area is a collaborative action of various sensor nodes, whose contribution is
determined by its sensing range. The random operation of sensor nodes emphasizes the need for coverage
factor. The dense node operation leads to redundancy i.e., all the nodes need not be active at the same
time to provide the desired coverage. However, few nodes scattering result in coverage holes. To
minimize the overall energy consumption of the network due to redundancy, we schedule nodes such that
some nodes are active while others are in almost zero-energy consumption state, still achieving the
required coverage. Connectivity is an important coverage-related concept which involves transfer of
sensed data to the base station effectively and a fully covered network without connectivity is of little use.
Critical applications like forest-fire, nuclear attack detections demand every point in the target area to be
monitored accurately whereas less critical applications like reporting pollutant levels, temperature and
humidity conditions demand only a part of the surveillance area be monitored. An illustrative application
demanding a fully covered network with connectivity is an ambulance tracking system. The system
involves deploying the nodes on the traffic signal poles which senses the sound waves of the ambulance
siren (i.e., coverage), the transmission of this sensed data to subsequent signals will make way for the
ambulance (i.e., connectivity). Coverage Centric Active Node Selection (CCANS) algorithm that uses a
token based protocol is presented in [2]. It is a distributed approach to select minimum number of active
nodes called Connected Dominating Set (CDS) to achieve coverage and connectivity. However, it is
observed that CCANS is limited to a homogeneous network. That is the main motivation behind this
research.
This paper presents improves the network lifetime. The intermediate result of the algorithm is a set of
nodes that meets the coverage and connectivity requirements of the target area. Energy is saved by using
heterogeneous nodes of appropriate sensing ranges thereby increasing the lifetime of the network. The
paper is further organized into VII sections. Section II presents an overview of problem background. The
problem of maximizing the network lifetime is elaborated in section III. Design and analysis of OSR
algorithm in section IV and implementation details in section V. Analysis of algorithm and comparison of
simulation results is presented in section VI. Section VII contains the conclusions.
2. Problem Background
Initially, concept of design issues in WSN is explained in [1]. Next, a novel solution to determine whether
a network is k-covered proposed in [3]. These results are used for discovering insufficiently covered
areas, conserving energy and supporting hot spots. Yang et al., [4] address the coverage preserving selfscheduling based on co-operative sensing model considering a target beyond the sensing range will be
detected by cooperative exploration of multiple sensors. It has higher communication overhead when
compared to Boolean scheme. The tasks carried out by nodes that are grouped into sensing and
forwarding is discussed in [5]. Coverage and Energy Efficient task is being developed which assigns less
energy to carry out only the forwarding task. It uses grid based approach for coverage. Uneven
distribution of sensors poses problem while scheduling the nodes. Butler et al., [6], consider the network
to consist of a set of static and mobile nodes. Mobile sensors converge on more interesting portions of the
environment (where event occurs), preventing coverage holes. Coverage methods are based on Voronoi
diagram. Dynamic Coverage Maintenance scheme proposed in [7], take advantage of limited mobility of
sensor nodes. The selection of the migrating neighbor is done by four algorithms proposed which take
distance travelled and residual energy of a node into consideration. A solution to coverage optimization
problem using probabilistic sensing model is presented in [8]. The surveillance area consists of obstacles
between the nodes. Two algorithms have been proposed: one targeted at average coverage, another at
maximizing coverage of vulnerable grid points. Use of probabilistic sensing model increases computation,
fault tolerance is not handled. The problem of maintaining the desired coverage degree of a WSN at an
application specific level is handled in [9]. Two distributed coverage service protocols have been
proposed: Neighbor based Coverage Protocol, which introduces a novel method to evaluate coverage
degree of a node by its neighbors to determine redundancy, Grid based Coverage Protocol, which divides
the target area using a virtual hexagonal grid and node with highest residual energy is identified to be
redundant. An idea to sustain network lifetime by reducing number of active sensors while scheduling
others to sleep is proposed in [10]. Scalable Coverage Maintenance algorithm operates in two phases:
decision phase and optimization phase. The algorithm considers coverage of critical points only rather
than point to point coverage. It does not handle connectivity due to the assumption that communication
range is always twice the sensing range. A potential approach to maintain the network in post operation
scenario is presented in [11]. Coverage and Connectivity algorithm decides the mobility of the node so
that loss of coverage and connectivity can be repaired. The decision and movement of nodes are
completely autonomous and involve only one hop neighbors. The sensing and communication ranges are
restricted to same values. Wang design and analyze protocols that can dynamically configure a network to
achieve guaranteed degrees of coverage and connectivity [12]. Coverage Configuration Protocol has been
proposed that can provide degrees of coverage requested by applications. Besides this, it also provides a
geometric analysis of relationship between coverage and connectivity. Lindsey et al., [13] propose an
improvement over the previous protocol by increasing network lifetime and decreasing bandwidth
through local collaboration among nodes. Another protocol that achieves energy efficiency for WSN by
introducing off-duty cycles and on-duty cycles for sensor nodes was proposed in [14]. Two adjustable
sensing ranges are proposed in [15]. Coverage hole problem appearing due to intersection of the disks is
efficiently solved without considering the concept of fault tolerance. Location discovery techniques using
Voronoi diagram and Delaunay triangulation are described in [16]. Two types of coverage: deterministic
coverage and stochastic coverage are considered. It addresses only coverage problem. It is restricted to
homogeneous networks.
3. PROBLEM FORMULATION
3.1. Problem Statement
Given a two dimensional area x  y consisting of grid points g x  g y of sensors with two different sensing
ranges, the objectives are (i) To minimize the number of active nodes that enables complete coverage and
connectivity. (ii) To reduce energy consumption and enhance network lifetime.
3.2. Assumptions
In our formulation, we make a number of simplifying assumptions. (i) The network comprises of nodes of
two different sensing ranges Rs or Rb both equipped with same amount of initial energy for carrying out
the sensing tasks. (ii) The nodes are assumed to be static. (iii) Each node is aware of its location and the
boundaries of the surveillance region through location services. The first objective is modeled using
Integer Linear Programming. The minimum number of active nodes is expressed as a cost minimization
problem as follows:
Minimize c 
N
 (s
K 1
Subject to
k
 ck (1 sk ))
(i){Sk  {| Gk 
n
Gkj |}}  0
j 1
(ii) {a ,b (dist ( N ka , N kb )  Rc )) * ck }  0 , Where 1≤a≤n and 1≤b≤n
(iii) (X − kx) k > 0
(iv) (Y − ky) k > 0
Constraint (i) describes the coverage evaluation of the node by subtracting the set of grid points covered
by k th node Gk and set of grid points covered by all its neighbors Gki . For every pair of active neighbors
( N ka , N kb ) of k th node, we find the Euclidean distance dist (a, b) to evaluate connectivity in Constraint
(ii) Constraints (iii) and (iv) ensures that a node is deployed in surveillance area of x  y . After the
operation of nodes, every node broadcasts messages, which takes considerable amount of time. Hence, the
time for evaluation of coverage and connectivity for all nodes varies exponentially with the increasing
number of nodes. 0-1 integer programmi.ng or Binary Integer Programming (BIP) is the special case of
integer programming where variables are required to be 0 or 1 (rather than arbitrary integers). If N is the
total number of nodes and q is the average number of neighbors for each node, then the complexity to find
the minimum number of active nodes depend on the messages broadcast by a node to its neighbors. Since
the messages are sent at 3 stages, the complexity is N3q. This complexity makes the problem
NP−Complete,
Figure 2: Coverage calculation (a) Homogenous network. (b) Heterogeneous network.
3.3. Coverage with two Sensing Ranges
In a homogeneous network, the ideal case of operation has non-overlapping disks of radius Rb , where
nodes touch each other. The area enclosed by such nodes result in coverage holes, illustrated in Figure
1(a), where the circles centered at A, B, C will leave point O uncovered. The heterogeneous approach
proposed in this paper uses nodes with two sensing ranges for coverage. In this case, the hole is covered
by a disk with radius RS .Figure 1(b) shows three nodes centered at A, B, C with radius Rb with the
tangential points D, E and F. The disk of radius RS used for covering the hole touches the points D, E
and F. We know that BF denotes the median of the equilateral triangle ABC formed by the centers of
three adjacent disks. The point O divides the median BF in the ratio 2:1. The relation between the two
chosen sensing ranges Rb and RS can be obtained as follows:
BF = √3 Rb
(1)
The radius RS of the encircle of the triangle ABC centered at O is OF.
OF =1/3 (BF)
(2)
RS =1/√3 ( Rb )
(3)
Figure 3: Intersecting sensing areas
Theorem 1 In an ideal case of deployment for homogeneous and heterogeneous network as shown in
Figure 2(a) and 2(b), the angle subtended by the chord in the intersection area at the center of the node is
independent of its sensing range.
Consider two circles centered at A and B with radii R and r represented by AC and BC respectively.
^
^
Chord CD in the intersection area subtends 1 = C AD at center A and  2 = C B D at center B. E is the
mid-point of the chord CD.
From Figure 3,
^
^
1 = C A E + E A D
^
(4)
^
Here, C A E = E A D =  1 and hence 1 =2  1 . Considering right angled triangle CAE,
cos  1 =AE/AC
(5)
 1 = cos−1(AE/R)
(6)
and AC 2 = AE 2 + EC 2
(7)
implies R 2  AE 2  EC 2
(8)
Considering right angled triangle BEC,
BC 2  EC 2  BE 2
(9)
implies
r 2  EC 2  BE 2
(10)
Subtracting the Equations (8) and (10),
R2  r 2  AE 2  BE 2
(11)
R2  r 2  ( AE  BE)( AE  BE)
(12)
Since, AE+BE=AB=d and BE=d-AE the Equation (12) becomes
R2  r 2 = d(AE − (d − AE)) = d(2AE − d)
(13)
Simplifying for AE
AE  ( R2  r 2  d 2 ) / 2d
(14)
Substituting for AE in Equation (6)
1  cos 1 (
R2  r 2  d 2
)
2 Rd
(15)
Hence, 1 is
1 = 2 cos 1 (
R2  r 2  d 2
)
2 Rd
(16)
Similarly, the angle  2 subtended by the chord CD at the center B is
 2 = 2 cos 1 (
r 2  R2  d 2
)
2rd
(17)
Case 1: In homogeneous network, the nodes have same sensing radius Rb .Substituting R  r  Rb for
1 and  2 in the Equations (16) and (17) we get,
1 =  2 =  = 2cos 1 (
d
)
2 Rb
(18)
From Appendix (i) for a homogeneous network,
d=1.732 Rb
 = 2 cos1 (
1.732 Rb
) =602
2 Rb
(19)
Case 2: In heterogeneous network, the nodes have sensing radius Rb and Rs . Substituting R  Rb and
r= Rs = Rb /√3 for 1 and  2 in the Equations (16) and (17) we get,
2 Rb 2  3d 2
)
6 Rb d
1 = 2 cos 1 (
(20)
From Appendix (i) for a heterogeneous network,
d=1.1547 Rb
Rb2 (2  3*1.1547 2 )
)
6 *1.155Rb2
(21)
Rs 2  3Rs 2  d 2
)
 2 = 2 cos (
2 Rs d
(22)
1 = 2 cos 1 (
1
From Appendix (i) for a heterogeneous network,
d=2 Rs
 2 = 2 cos 1 (
Rs 2 (5  3
) = 70.43
4 Rs 2
(23)
From Equations (21) and (23), it is proved that angle is independent of the sensing range in both
homogeneous and heterogeneous networks.
3.4. Energy Consumption Analysis
Energy in a sensor node is consumed for two tasks: sensing and communication. In this section, we
consider the energy consumed only for sensing task. According to the various energy consumption
models, energy is assumed to be proportional to exponential powers of the sensing range.
(i) Energy consumption model for a homogeneous (uniform sensing range) network: The energy
consumed for sensing in this model can be explained by taking an ideal case of deployment as shown in
Figure 2(a). From Appendix (ii) the intersection area of nodes is obtained by substituting for
1 =  2 =  and R  r  Rb as follows:
Rb 2 (  sin  )
(24)
The total area of intersection of three adjacent nodes is
S = 3 Rb 2 (   sin  )
(25)
The effective area Ae f f sensed by these three nodes is obtained by subtracting the intersection area S
from the area of three circles as follows:
Ae f
f
= 3 Rb2  S
(26)
Thus, we get effective area Ae f f as
Ae f
f
= 3Rb2 (    sin  )
(27)
The total sensing energy consumption by the sensors is proportional to Rb4 where Rb is the sensing range.
So, the energy consumption E per unit area is as follows:
E=
3Rb4 
(3Rb2 (    sin  ))
(28)
Substituting the value of  in radians from
Theorem 1,
E = 0.3377 Rb 2 
(29)
The parameter μ corresponds to the power consumption per unit area.
(ii) Energy consumption model for a heterogeneous (varying sensing radii) network: An ideal case of
deployment for this model is as shown in Figure 2(b).
From Appendix (ii) the intersection area of nodes is obtained by substituting for 1 ,  2 and R  Rb ,
r  RS as follows:
(
Rb 2
R2
(1  sin 1 )  s ( 2  sin  2 ))
2
2
(30)
The total area of intersection S′ of three adjacent nodes is
S′ = 3 (
Rb 2
R2
(1  sin 1 )  s ( 2  sin  2 ))
2
2
(31)
The effective area Ae f f sensed by these four nodes is obtained by subtracting the intersection area S′ from
the area of the four circles as follows:
Ae f f = 3  Rb 2   Rs2  S 
By substituting Rs = Rb /√3, we get effective area
(32)
Ae f
f
  sin 1
  sin  2
10
 3( 1
)( 2
))
3
2
2
= Rb2 (
(33)
The total sensing energy consumption by the sensors is proportional to Rb4 where Rb is the sensing range.
So, the energy consumption E per unit area is as follows:
E′ =
(3Rb4 
Rb4
)
9
  sin 1
  sin  2
10
R (
 3( 1
)( 2
)
3
2
2
(34)
2
b
Substituting values for 1 and  2 in radians from Theorem 1,
E′ = 0.3093 Rb2 
(35)
3.5. Energy Model for Network Lifetime
The lifetime of the network is measured in terms of number of queries. Each query involves spending a
considerable amount of energy by some nodes in the network. The queried node spends energy for both
sensing (S) and transmitting (T ), whereas other nodes in its path to the base station loses energy only for
transmission. The energy spent by the queried node m is
Em = T + S
(36)
The energy spent by each intermediate node (n) in the path between m and base station is
(n  m) En  T
(37)
The energy spent by queried node and k intermediate nodes involved in jth query execution
k
E ( j )  Em   En
(38)
i 1
Here, E ( j ) is the total energy spent by a network to successfully execute jth query. Let q denote the total
number of queries answered by the network until any one of the active node drains out all its energy. The
total energy E (1, 2....q ) spent for satisfying q number of queries can be computed as follows:
q
E (1, 2....q )   E (i )
(39)
i 1
The value of q is of major concern, since it is directly related to the lifetime of the network.
4. Proposed Algorithm
A heterogeneous sensor network comprises of sensor nodes with varying sensing ranges. Sensor nodes
can be in any of the three states: unset, active or sleep. After evaluation of coverage contribution of a
node, its state is set to either active or sleep. By active, we mean the sensing and communication unit to
be active. Nodes in sleep state ideally consume no energy. Coverage evaluation of a node requires the
knowledge of one-hop neighbors. OSR algorithm can be divided into four stages: Stage1 (Operation),
Stage2 (Cover age Evaluation), Stage3 (Connectivity Checking) and Stage4 (Evaluating network
lifetime).
4.1. Operation
In our work, the sensor nodes are operated in random manner. The surveillance area is divided into a set
of equidistant grid points and is considered as source of events. A sensor node´s coverage capacity is
evaluated based on the number of grid points it covers uniquely. Operation of sensors plays a key role in
performance of the sensor network. Hence, an additional concern exercised while deploying the nodes.
Many constraints in reality restricts us in doing so, because there are many places to be monitored, where
human intervention is not possible and points out the need for dense operation in WSN.
We consider operation of nodes as a uniform distribution over the surveillance area. If D(x) and D(y) are
distributions of node’s x and y position respectively, then
D(x) = P(X≤x) where −∞ < x < ∞
(40)
D(y) = P(Y ≤y) where −∞ < y < ∞
(41)
Since our surveillance area is of two dimensions, we consider the bi-variate uniform distribution.
D(x, y) = P(X≤x and Y ≤y),
(42)
Where, ∞ < x < ∞ and −∞ < y < ∞
In our operation, a node’s x position is not dependent on its y position or vice versa. The independent
variables x and y makes the probability distribution a product of two marginal distributions for both x and
y values. The independent variables x and y makes the probability distribution a product of two marginal
distributions for both x and y values.
D(x, y) = D(x)·D(y)
The area monitored is equipped with many sensor nodes, which are randomly deployed with the
distribution given in Equation (42). Considering the surveillance area of 300x300 m2, we deploy 100 to
500 nodes randomly such that the whole area is covered. The performance parameters of WSN vary to a
great extent with operation. Hence, we need an optimized approach for operation resulting in best
performance. But, it is really impractical to deploy a sensor node in exact position once for all. To
overlook this aspect, we prefer to run the simulation many times and take the average values rather than
the exact values. We deploy two types of sensor nodes: Type-1 and Type-2. Type-1 nodes have larger
sensing radius as compared to Type-2. Numbers of Type- 1 nodes over Type-2 nodes are in the ratio
60:40 as compared to 100:0 in traditional CCANS algorithm. This heterogeneity in the type of a node
helps us to obtain better results. The difference in sensing ranges of Type-1 and Type-2 nodes is
addressed in the comparison of homogeneous and heterogeneous network. Node with smaller sensing
radius is the in-circle for the triangle connecting centers of each of Type-1 nodes as shown in Figure 1(b).
We evaluate Rb (sensing radius of Type-1 node) to be 1.71 times RS (sensing radius of Type-2 node). Let
us consider homogeneous network as shown in Figure 2(a), the three circles drawn in solid line explains
the problem of coverage hole i.e., there exists at least one grid point which is uncovered. In homogeneous
network, if we make one more node active to sense the uncovered region then it will be of same sensing
radius as other nodes. Since the area to be sensed is very small, it leads to inefficient use of energy.
Hence, we make a node with smaller sensing radius active. Considering an ideal case, we have Type-2
node covering only the coverage hole to save some sensing energy spent unnecessarily by Type-1 node as
in homogeneous network. Initially, when we deploy the nodes they communicate with their neighbors
and build the neighbors table containing all the required information about the neighbors. This table is
used in evaluating coverage and connectivity for a node. The neighbors table is an array of node
information which is in the communication range of current node. After operation each node broadcasts
hello message sending its identification, position, state and type. Nodes which receive hello message
update its neighbors table.
4.2. Modified Token Passing (MTP)
The MTP procedure determines the flow of token among the nodes deployed in the target area, which
outperforms the token passing procedure in CCANS with additional steps for optimization. The step by
step procedure for MTP is shown in Algorithm 1. The first token node after its coverage evaluation passes
the token to the unset node with radius Rb (if any). This ensures the activation of the nodes with Type-1
first. When there are no more Type-1 neighbors, the token is passed to the remaining unset Type-2
neighbors. The procedure returns -1 when all the neighbors have set their state. The algorithm is run
repeatedly until all Type-1 and Type-2 neighbors have made their temporary state decisions in coverage
evaluation stage, after which connectivity checking is done.
4.3. Coverage Evaluation
In this stage, the token node evaluates its coverage based on the local knowledge. The first node which
undergoes coverage evaluation has all its neighbors in unset state, which are assumed to become active in
future. A node first sets its token source and chooses itself to be active if its sensing area is not fully
covered by its neighbors, otherwise it goes to sleep. The node checks if all the grid points lying in its
sensing area are being detected by its neighbors.
During this process, if any grid point within its sensing area is uncovered, then the node decides to be
active and exits from this stage by passing the token to one of its neighbors found through MTP. This
avoids the task of evaluating coverage of the remaining grid points. Otherwise, if all the grid points in its
sensing area are covered by its neighbors then it switches to sleep state. This scenario can be illustrated
with the help of Figure 4. Consider the node A to be evaluating its coverage. It is seen from the diagram
that the neighbors of A i.e., B, C, D and E together cover the area to be sensed by an effectively leaving
no area uncovered. Thus, node A decides its state to be sleep. The decision however is not final because
of the fact that some of the neighbors of the token node are still unset. When token is given to such a
neighboring node, its state decision may contradict that of the token node. After every node determines its
state, it broadcasts the state message to its neighbors. The neighbors will update the state decision
accordingly. The message consists of node id, token-src, state and node-type.
Algorithm 1: Modified Token Passing (MTP)
MTP (token node)
begin
If ( ∀ neighbors unset){
token node=token-src
return -1}
find the centroid ’C’ of active neighbors.
if ( ∀ neighbors having Rb unset)
goto NEXT
else if( ∀ neighbors having Rb active){
token node=Farthest unset neighbor
with Rb
return token node }
else {
token node=Farthest unset neighbor
with Rb from ’C’
return token node }
NEXT: if ( ∀ neighbors active){
token node=Farthest unset neighbor
return token node}
else{
token node=Farthest unset neighbor
from ’C’
return token node }
end
Figure 4: Coverage Evaluation of node A
4.4. Connectivity Checking
The optimization of state decisions is done in this stage. It is carried out in two steps namely: coverage
redundancy re-evaluation and connectivity checking. This stage is carried out only for sleep nodes. The
state evaluated for sleep nodes after the two steps is said to be final, as none of the neighbors are in unset
state, it leaves no room for erroneous state decisions due to assumptions. Coverage redundancy checking
involves a sleep node rechecking if its sensing area is being covered by its active neighbors. If the newly
taken state decision contradicts that of the previous stage, the state of the node is corrected and updated in
its neighbor’s table. This step can be skipped for active nodes as there are no chances of positive results.
In the next step, the node checks for connectivity i.e., if there exists a path through which the sensed data
is sent to the base station. Since connectivity is as important as coverage, this step plays a major role in
the algorithm. In CCANS, it has been proved that when communication range is twice the sensing range
or more, connectivity is always guaranteed. A node with state decision sleep should become active, if all
the active neighbors are not connected. In our approach, the sleep node checks if its active neighbors are
connected failing which, another step of connectivity checking for all the active nodes in the network is
done. If both result in a disconnected active node set, then the sleep node becomes active.
Figure 5: Connectivity checking for sleep node A
In Figure 5, consider node A which is checking connectivity, it has only four neighbors out of which B is
in sleep state and C, D, H are in active state. It is clear from the diagram that C and D are mutual
neighbors and are hence connected, whereas H is neither connected to C nor D. Therefore, it is checked if
H is connected to them via other active nodes in the network. It is seen that connectivity between H and D
can be achieved by the fact that node pairs D-E, E-F, F-G and G-H are mutually connected. Since, all the
active neighbors of A are connected, the state of the node is not changed. The state decision taken in this
stage is final. Each node should make sure that all its neighbors have received the updated state message
and then enters its decided state. Token node passes the token to its token source. Connectivity checking
is evaluated in an order exactly opposite to the order of previous stage. MTP ends when the node which
started coverage evaluation is the last one to evaluate this stage.
4.5. Network Lifetime
Lifetime of a heterogeneous network is calculated in terms of average number of queries answered. This
is achieved by simulating the network in a data driven fashion. In such a scenario, a node responds to a
query by sending the sensed information either directly or indirectly to the base station. This task involves
energy consumption by all those nodes that are involved in the sensing and transmission of information to
the base station. When any one of the active nodes fail to answer a query due to lack of residual energy,
the network fails. A brief step by step description of OSR algorithm is shown in algorithm 2. Stage1 is
done for all nodes at a time. Initial node begins at Stage 2, followed by Stage 2 and Stage 3 for the
remaining nodes in a MTP fashion, terminated by Stage 3 for init node. After this, Stage 4 is executed to
compute lifetime of the network.
Algorithm 2: Optimal Sensing Ranges (OSR)
begin
Stage1
init node
Stage2(token node)
next=MTP(token node)
if(next=-1)
goto ADVANCE
else
Stage2(next)
ADVANCE: next=MTP(token node)
if(next=-1 and token node=init node)
{
Stage3(token node)
goto NEXT
}
else if(next=-1)
Stage3(token node)
else
Stage2(token node)
NEXT: Stage4
end
5. Implementation
In the OSR algorithm, we have used two types of messages: hello message and state message. “hello”
message is used by a node to build its neighbors table. In this message, the information about the node’s
identification, status and type is given to all the one-hop neighbors. Then the node has to wait for a
limited amount of time expecting a reply. The time is the product of maximum number of times a node
will send hello messages in the absence of the reply and the time taken for communication tc .Once the
neighbors table is built, each node starts executing OSR algorithm according to MTP.
When a node takes its temporary state decision after executing the stage for coverage evaluation, a state
message is sent to all its one-hop neighbors. A node executes MTP only after ensuring that all its
neighbors have received its state message, updating their neighbors table. ts is the time interval between
broadcasting the state message and execution of MTP. When a sleep node changes its state decision
during connectivity checking, it will broadcast its updated state message to its neighbors; wait for a time
interval tup so that its state is updated in its neighbor’s table. It then passes the token to its token S rc and
enters into its decided state. A spanning tree is constructed for the active node set in connectivity
checking stage to know a shortest path from each node to the base station. The node queried by the base
station responds to it, utilizing this shortest path. All the nodes in the path re-calculate their residual
energies, which helps us in determining the network lifetime in terms of number of queries answered by
the network.
Figure 6: Percentage of sleep Nodes
6. PERFORMANCE ANALYSIS
6.1. Simulation setup
We have simulated our work using ns-2.31 on Fedora Core 6.0. The simulation is carried over a
300m *300m area, deploying about 100 to 500 nodes randomly. The sensing ranges of the nodes take
values either 50m ( Rs ) or 50√3m ( Rb ), distributed in the ratio 40:60. The communication range ( Rc ) of
the node varies from 60 to 120m. The adjacent grid points in the surveillance area are separated by a
distance of 10m. Each node has a fixed amount of 10,000 units reserved energy. The energy spent by a
node for transmission is taken as 60 units for a communication range of 100m and 14.8 units for sensing.
6.2. Simulation results
The simulation is run 30 times and an average value is taken for comparison. The performance is
analyzed using parameters such as number of active nodes, network lifetime and energy consumption.
Figure 6 shows the percentage of sleep nodes for communication radii varying from 60 to 120m
considering 100 to 400 nodes. Initially, at lower communication ranges, there is an increase in percentage
of nodes going to sleep as very less number of nodes turns themselves active for connectivity. Beyond
( Rc = 90), the percentage of sleep nodes remains constant for operation above 100 nodes. In Figure 7(a),
we compare variation of the percentage of nodes active for communication with the communication
radius. For lower values of Rc , a disconnected network is obtained. Thus, a considerable number of nodes
have become active for connectivity and their number reduces drastically with increasing communication
range. We observe that no node needs to become active for Rc beyond 100m.
In this paper, the network lifetime is measured in terms of average number of queries satisfied by the
network, for a Rc =100m. Figure 7 (b) shows that a homogeneous network answers less number of
queries as compared to a heterogeneous network. For a heterogeneous network, the number of queries
increases for 100 to 200 nodes, remaining constant thereafter. This is due to dense operation of nodes.
The graphs shown in Figure 7 (c) and Figure 7 (d) compares OSR algorithm with CCANS algorithm
considering the parameters, percentage of sleep nodes and energy consumption for sensing respectively,
taking Rc to be 100m. Figure 7 (c) show that OSR algorithm outperforms CCANS algorithm. Figure 7(d)
compares the total sensing energy consumed by CCANS and OSR algorithm for 100 to 500 nodes. The
reduction in energy consumption in OSR algorithm is as a result of increase in the percentage of sleep
nodes. The drastic decrease in energy consumption from 400 to 500 nodes is due to the difference in the
number of active nodes obtained in the previous graph. The fact that smaller sensing range node
consumes less energy for sensing also adds to this improvement in performance.
(a)
(c)
(b)
(d)
Figure 7 (a) Percentage of Communication Unit Active Nodes (b) Comparison of homogeneous and
heterogeneous network lifetime (c) Comparison of CCANS and OSR algorithms with respect to
percentage of sleeping nodes (d) Energy Consumption comparison for CCANS and OSR algorithm
7. CONCLUSIONS
In this paper, the problem of maximizing network lifetime in WSN was considered. We proposed OSR
algorithm that selects an optimal set of nodes to maintain desired coverage and connectivity for a
heterogeneous network. Since two sensing ranges are used, the proposed strategy is energy conserving.
We demonstrate that OSR algorithm outperforms the CCANS algorithm in several factors viz. percentage
of sleeping nodes, energy consumption for sensing and network lifetime. The results show that, OSR
algorithm increases the lifetime of a heterogeneous sensor network. In future, we aim at optimizing the
operation in terms of number and position of nodes in a target area with obstacles by modeling the
sensing range as sector coverage and reducing energy B
REFERENCES
[1] I. F. Akyildiz, W. Su, Y. Sankarasubramaniam and E. Cayirci. Wireless Sensor Networks: A Survey.
In IEEE Communication Magazine, 40(8):102-114, August 2002.
[2]. Yi Zou and Krishnendu Chakrabarty, A Distributed Coverage- and Connectivity-Centric Technique
for Selecting Active Nodes in Wireless Sensor Networks. IEEE Transactions on Computers, IEEE
Computer Society, 54(8):978-991, August 2005.
[3]. C. Huang and Y. Tseng, The Coverage Problem in a Wireless Sensor Network Proceedings of the 2nd
ACM International Conference on Wireless Sensor Networks and Applications, ACM press, 115-121,
September 2003.
[4]. Baiwei Yang, Hongyi Yu, Hong Li and Huifeng Hou. A Coverage-Preserving Density Control
Algorithm Based-on Cooperation in Wireless Sensor Networks Proceedings of 2nd International
Conference on Wireless Communications, Networking and Mobile Computing, IEEE, 1-4, September
2006.
[5]. Xiangwen Liu and Huifeng Hou and Jinya Yang and Hongyi Yu and Hanying Hu. Coverage and
Energy Efficient Information Gathering Protocol in Wireless Sensor Networks, PDCAT 2005:
Proceedings of the Sixth International Conference on Parallel and Distributed Computing
Applications and Technologies, IEEE Computer Society, 649-654, 2005.
[6]. Zack Butler and Daniela Rus. Controlling Mobile Sensors for Monitoring Events with Coverage
Constraints, Proceedings of the 2004 IEEE International Conference on Robotics and Automation,
2:1568-1573, April 2004.
[7]. Archana Sekhar and B. S. Manoj and C. Siva Ram Murthy. Dynamic Coverage Maintenance
Algorithms for Sensor Networks with Limited Mobility, PERCOM 2005: Proceedings of the Third
IEEE International Conference on Pervasive Computing and Communications, IEEE Computer
Society, 51-60, 2005.
[8]. S. Dhillon and K. Chakrabarty. Sensor Placement for Effective Coverage and Surveillance in
Distributed Sensor Networks, Proceedings of IEEE Wireless Communications and Networking
Conference, 1609-1614, 2003.
[9]. H. Ozgur Sanli and Hasan Cam. Energy Efficient Differentiable Coverage Service Protocols for
Wireless Sensor Networks, Proceedings of the 3rd International Conference on Pervasive Computing
and Communications Workshops, 406-410, March 2005.
[10]. Jun Lu, Jinsu Wang and Tatsuya Suda. Scalable Coverage Maintenance for Dense Wireless Sensor
Networks, 3rd Annual Sensor and Ad-Hoc Communications and Networks, SECON, IEEE
Computer Society, 2:651-660, September 2006.
[11] Prasan Kumar Sahoo, Jang-Ping Sheu and Wei-Shin Lin. Dynamic Coverage and Connectivity
Maintenance Algorithms for Wireless Sensor Networks, 2nd International Conference on
Communication Systems Software and Middleware, 1-9, January 2007.
[12] Xiaorui Wang, Guoliang Xing, Yuanfang Zhang, Chenyang Lu, Robert Pless and Christopher Gill.
Integrated Coverage and Connectivity Configuration in Wireless Sensor Networks, SenSys 2003:
Proceedings of the 1st International Conference on Embedded Networked Sensor Systems, ACM,
28-39, November 2003.
[13] Stephanie Lindsey and Cauligi S. Raghavendra. PEGASIS: Power-Efficient Gathering in Sensor
Information Systems, IEEE Aerospace Conference, 3:1125-1130, 2002.
[14] Benjie Chen, Kyle Jamieson, Hari Balakrishnan and Robert Morris. Span: An Energy Efficient
Coordination Algorithm for Topology Maintenance in Ad Hoc Wireless Networks, Mobile
Computing and Networking, 85-96, 2001.
[15] Jie Wu and Shuhui Yang. Coverage Issue in Sensor Networks with Adjustable Ranges, ICPPW
2004: Proceedings of the 2004 International Conference on Parallel Processing Workshops, IEEE
Computer Society, 61-68, 2004.
[16] Seapahn Megerian, Farinaz Koushanfar, Miodrag Potkonjak and Mani B. Srivastava. Worst and
Best-Case Coverage in Sensor Networks, IEEE Transactions on Mobile Computing, IEEE
Educational Activities Department , 4(1):84-92, 2005.
Download