Title: Algorithms in sensor networks
1Algorithms in sensor networks
2What are sensor networks
3What are sensor networks
- A sensor network is a collection of some
(sometimes even hundreds thousands) smart
sensor nodes which collaborate among themselves
to form a sensing network. - Smart sensors are wireless computing devices that
sense information in many variety of environments
to provide a multidimensional view of the
environment. - ex some sensors can sense light, some
can sense temperature simultaneously. - The main task of a sensor network can be divide
into three categories. Sensing, processing and
acting. - After sensing the environment based on the query
provided by the user, a sensor node can process
the sensed data, may even sometimes aggregate it
with other nodes data and send it to the base
station.
4What are sensor networks contd
- Based on the results provided by individual
nodes, the network can act by providing the
results to the user or to a node connected to the
internet. - Are smart sensors possible ?
- Recent advances in MEMS technology have led to
the development of a new class of computing
devices with wireless communication capabilities
called smart sensors. That are low cost, low
power, multifunctional miniature devices. - A single smart sensor is limited in its
capabilities, like restricted memory, restricted
battery power etc. But when formed as a network
with many sensors it can do some high
computational tasks.
5What are sensor networks contd
6What are sensor networks contd
7What are sensor networks contd
- sensor nodes are distributed randomly over an
object of interest, to from a sensing network and
monitor the environment. These nodes can group
and self organize. - Sensor network can provide access to information
anywhere and at anytime by collecting,
processing, analyzing and disseminating the data. - what should be the number of nodes in the
network? - Dissemination of data in sensor networks is of
two types, query driven and continuous update. - Smart environments and ubiquitous computing is
possible with sensor networks.
8Examples of sensor networks
- Vigilant surveillances like security in a
shopping mall, an air passengers behavior. - Predetermining Environmental hazards, providing
precision agriculture. - Monitoring of computer server rooms.
- Monitoring of manufacturing plants.
9Sensor network challenges
- The challenges faced by a sensor network depend
on the transient nature of the nodes and the
number of nodes in the network. - The transient nature of the nodes is due to there
limited capableness. And because of that there
topology changes frequently. - Many situation require ad hoc deployment of
sensor nodes. - As sensor nodes are limited in power, capacity
and memory extending the lifetime of the system
is difficult. - The large number of sensor nodes in a network
will also lead to many different challenges like,
avoiding collisions, optimal routing etc
10Requirements of the sensor network
- The requirements of a sensor network depends on
the type of the application and the number of
sensor nodes in the network. - But almost all the networks have some common
requirements. - Aggregating its own sensed data with other nodes
data. - Self organization of the network.
- Provide queriying ability.
- Maximizing the lifetime of the system by
appropriate utilization of the energy.
11Sensor node architecture
- A general sensor node may consist of the
following five components. - A sensing hardware, Memory, Processor, Power
supply, Transceiver.
12Routing in sensor networks
- one basic operation of sensor networks is to
gather the sensed data and transmit it to the
base station, for further processing or as result
to a given query. - The general scenario in these networks is, during
data gathering the intermediate nodes can
aggregate the data in order to avoid redundant
transfers. - The order in which the data or the aggregated
data is transmitted from the source node to the
base station is the problem of routing. - Why cant we apply the standard routing
algorithms? - Tree based routing is used when there are few
number of nodes and hierarchical routing is used
for large number of nodes.
13Routing in sensor networks contd
- All the routing protocols should respect the
energy constraints of the nodes. - All the routing algorithms mentioned below
consider sensor nodes to be static, homogeneous
and energy constrained. - Almost all the algorithms mentioned below will
try to maximize the lifetime of the sensor
network. - The lifetime of the network can be described as
the time till data can be transferred, before a
sensor node gets completely drained of its
energy. - The effective utilization of energy is the
typical measure of performance in sensor
networks.
14Sensor network topology with routing tree
overlays
- The most common way of routing in a sensor
networks is routing trees (multi hop routing). - A routing tree is a collection of sensor nodes
with the base station as the root of the tree. - Sensor A is the parent for sensors
- B and C.
- . Sensor nodes transmit all there
- results to there parent nodes only. It
- is the responsibility of the parent node
- for forwarding them to the base station
- . A child can keep track of several
- parent nodes, and depending on
- the power levels or the quality of the
- communication links a child node
- can change its parent node.
15The Maximum Lifetime Data Aggregation Problem
(MLDA)
- Given a collection of sensors and a base
station, together with their location and the
energy of each sensor, find a data gathering
schedule, where sensors are permitted to
aggregate incoming data packets, with maximum
lifetime. - Routing structures such as routing trees is well
suited when there are only a few number of nodes
in the network. - Managing the routing trees in such case will
become infeasible and the overlaps in the routing
trees can not be effectively utilized. - A data gathering schedule is a way the data
packets are collected from all the sensors and
routed to the base station with maximum lifetime.
16The Maximum Lifetime Data Aggregation Problem
(MLDA)
- The main assumption of this algorithm is that the
location of the sensors, base station and energy
values of the sensor nodes are known priori. - In this model the lifetime of the system is
intrinsically connected to the data gathering
schedule. - During each round a sensor will collect its own,
neighbors data and possibly aggregate it and
send it to the base station. - If there is T such rounds and f be the total
number of packets a sensor node i transmits to
sensor node j .By respecting the energy
constraints at each node, the data transferring
schedule can be viewed as flow network G (V,E). -
- Schedule S induces a flow network G ( V, E).
17The Maximum Lifetime Data Aggregation Problem
(MLDA)
- By maintaining the flow conservation principle
and the energy constraints of each sensor, an
optimal admissible flow network is constructed
i.e. a directed graph G having all the sensors as
nodes and the base station as the root. - Each directed tree rooted at the base station is
considered as an aggregate tree, and schedule is
a collection of such trees. - The number of rounds the aggregation tree is used
to transmit data is denoted by f and associating
it with each one of the edges. - The depth of a schedule is defined as max depth
(v) v belongs to V.
18The Maximum Lifetime Data Aggregation Problem
(MLDA)
- An iterative algorithm GETTREE is used to get an
aggregation tree A with life time f from the
admissible flow network. The running time of the
below described algorithm is of polynomial time
in the number of sensors.
19The Maximum Lifetime Data Aggregation Problem
(MLDA)
20max-min zPmin
- max-min zPmin is an approximation algorithm for
online power aware routing. - The goal of this algorithm is similar to that of
the previous algorithm that we discussed, to
maximize the lifetime of the network. - Online routing refers to that there is no fixed
schedule for routing the messages. - In this algorithm the network is represented as a
weighted graph G (V, E). The nodes in the network
are the vertices of the graph with weights
corresponding to there power levels. Edges
correspond to the communication link between
nodes and the edge weight as the cost of sending
data between them.
21max-min zPmin
- The max-min zPmin is defined as routing the data
along a path with maximal minimal fraction of the
remaining power in a sensor node after the data
is transmitted i.e. max-min path and a path with
minimal power consumption Pmin, with zPmin being
the relaxed power consumption for sending the
data. - The algorithm runs the Dijkstra algorithm for at
most E times to find the shortest path. The
running time of this algorithm is O (E. (E
V log V)).
22Hierarchical routing
- All the above discussed algorithms tried to
maximize the lifetime of the system by finding a
routing path that uses less energy. - This type of routing is known as multi hop
routing or static clustering which has very
serious limitations when the number of nodes in
the network becomes very large. - Static or multi hop routing protocols require the
knowledge of the energy levels of the sensor
nodes which may be difficult to obtain in large
networks. One method of obtaining such
information is through broadcasting. But ? - In large network networks transmitting data
through intermediate nodes may sometimes consume
more than routing directly to the base station.
So large networks are divided into zones are
clusters.
23Leach (low energy adaptive clustering hierarchy)
- Leach is also an energy efficient protocol for
routing in sensor networks. - Leach is based on the principle of clusters and
is organized into rounds. - In each round a self elected cluster head
collects data from all other sensors in the
cluster, aggregates it and transmits it directly
to the base station. - During the setup phase a predetermined fraction
of nodes elect themselves as cluster heads. A
threshold value T(n) is used to compare the
random values generated by the node wanting to be
the cluster head. - If the value of a particular node is less than
the threshold value, then it will act as the
cluster head for the current round.
24Leach (low energy adaptive clustering hierarchy)
- Once a cluster head is selected it broadcasts its
ID to all other nodes in the cluster. - A non cluster head may receive many broadcasts
from different cluster heads it makes a
selection among them by comparing the quality of
the communication link with various cluster
heads. - On receiving the decision of the noncluster heads
the cluster head creates a schedule and informs
it to nodes in the cluster. - In this way each node follows the schedule and
transmits the data to the cluster head, and the
head after aggregating the data transmits it to
the base station directly. - The key feature of leach when compared to the
above discussed protocols is its localized
coordination for cluster setup and operation.
25Zone based max-min zPmin
- Zone based routing is a hierarchical approach to
the max-min zPmin. - The algorithm groups the nodes in the network
structurally into geographical zones that can
overlap, and organizes zones hierarchically to
control routing across zones. - The algorithm is divided into three main parts,
first how the nodes in a zone collaborate to
estimate the energy level of the zone. Second,
how data is routed within a zone and third, how
data is routed across zones. - The energy estimation of the zones is done
relative to the direction of data transmission. - The zones are assumed to be squares with their
neighbors being in north, east, west, and south
directions.
26Zone based max-min zPmin
- There is a controller node in each zone which
estimates the energy level of the zone i.e.
estimating the number of messages that can flow
through the zone. The controller poles each node
in the zone for its energy level and then runs
the max-min zPmin algorithm. Then it simulates
sending proportionate amount of data units, and
repeats it until a node on the path gets
saturated.
27Zone based max-min zPmin
28Zone based max-min zPmin
- After estimating the power level of each zone
with respect to the directions of the other
zones, the next thing is estimating a global path
to route the data. - The zones are represented as a K1 graph, where k
vertices correspond to each data direction
through the zone. The zone label vertex is
connected to all the data direction vertices and
the data direction vertices are connected to
neighboring zone vertices if data can be
transmitted in that way.
29Zone based max-min zPmin
- The edges in this zone graph do not have weights,
and a global route for sending data can be found
as the max-min path in the zone graph. - The path that is selected should be the path that
goes through zones with maximum power levels i.e.
a slight modification to the max-min zPmin
algorithm. - After a global path through the zones is found
the next task is to find routes within a zone. - For each node in the overlap region, the number
of paths that can be locally routed through each
node is computed during the energy level
estimation. - Finally only those nodes that have maximum data
weight is selected to maximize the global flow
between zones i.e. choosing nodes which can be
useful in both local and global routing.
30Zone based max-min zPmin
- The algorithm to find global path to route the
data.