1 / 73

Clustering in Ad hoc and Sensor Networks

Clustering in Ad hoc and Sensor Networks. Why Clustering?. The data collected by each sensor is communicated through the network to a single processing center that uses the data

hada
Télécharger la présentation

Clustering in Ad hoc and Sensor Networks

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Clustering in Ad hoc and Sensor Networks

  2. Why Clustering? • The data collected by each sensor is communicated through the network to a single processing center that uses the data • Clustering groups nodes into groups such that each node communicate information only to clusterheads and then the clusterheads communicate the aggregated information to the processing center, saving energy and bandwidth • The cost of transmitting a bit is higher than a computation; therefore, it may be beneficial to organize the sensors into clusters • Cluster-based control structures provides more efficient use of resources for large dynamic networks • Clustering can be used for • Transmission management • Backbone formation • Routing Efficiency

  3. Link-Clustered Architecture[Baker+ 1981a, 1981b, Ephremides+ 1987] • Reduces interference in multiple-access broadcast environment • Distinct clusters are formed to schedule transmissions in a contention-free way • Each cluster has a clusterhead, one or more gateways and zero or more ordinary nodes • Clusterhead schedules transmission and allocates resources within its cluster • Gateways connect adjacent clusters • To establish link-clustered control structure • Discover neighbors • Select clusterhead to form clusters • Decide on gateways between clusters

  4. Cluster Clusterhead Gateway Ordinary node Link-Clustered Architecture[Baker+ 1981a, 1981b, Ephremides+ 1987]

  5. Clusterheads • Resemble base stations in cellular networks, but dynamic • Responsible for resource allocation • Maintains network topology • Acts as routers – forwards packets from one node to another • Aware of its cluster members • Aware of its one-hop neighboring clusterheads Since clusterheads decide network topology, election of clusterheads optimally is critical

  6. Previous Work • Highest-Degree Heuristic [Gerla+ 1995, Parekh 1994] • Computes the degree of a node based on the distance (transmission range) between the node and the other nodes • The node with the maximum number of neighbors (maximum degree) is chosen to be a clusterhead and any tie is broken by the node ids Drawbacks: • A clusterhead cannot handle a large number of nodes due to resource limitations • Load handling capacity of the clusterhead puts an upper bound on the node-degree • The throughput of the system drops as the number of nodes in cluster increases

  7. Previous Work • Lowest-ID Heuristic [Baker+ 1981a-b, Ephremides+ 1987] • The node with the minimum node-id is chosen to be a clusterhead • A node is called a gateway if it lies within the transmission range of two or more clusters • Distributed gateway is a pair of nodes that reside within different clusters, but they are within the transmission range of each other Drawbacks: • Since it is biased towards nodes with smaller node-ids, leading to battery drainage • It does not attempt balance the load for across all the nodes

  8. Previous Work • Node-Weight Heuristic [Basagni 1999a, 1999b] • Node-weights are assigned to nodes based on the suitability of a node being a clusterhead • The node is chosen to be a clusterhead if its node-weight is higher than any of its neighbor’s node-weights and any tie is broken by the minimum node ids Drawbacks: • No concrete criteria of assigning the node-weights • Works well for “quasi-static” networks where the nodes do not move much or move very slowly

  9. Optimizing Clustering Algorithm in Mobile Ad hoc Networks Using Genetic Algorithmic Approach [Turgut+ 2002] Weighted Clustering Algorithm (WCA) • Aclusterhead can ideally support nodes • Ensures efficient MAC functioning • Minimizes delay and maximizes throughput • A clusterhead uses more battery power • Does extra work due to packet forwarding • Communicates with more number of nodes • A clusterhead should be less mobile • Helps to maintain same configuration • Avoids frequent WCA invocation • A better power usage with physically closer nodes • More power for distant nodes due to signal attenuation

  10. Weighted Clustering Algorithm (WCA) Steps 1. Compute the degreedv each node v Coordinate distance, predefined transmission range. • Compute the degree-differencefor every node For efficient MAC (medium access control) functioning. Upper bound on # of nodes a cluster head can handle.

  11. 3 2 12 13 4 1 14 17 15 7 16 5 6 Weighted Clustering Algorithm (WCA) Steps 3. Compute the sum of the distancesDv with all neighbors Energy consumption; more energy for greater dist. communication. Power required to support a link increases faster than linearly with distance.(For cellular networks)

  12. Yt Yt-1 time Xt-1 Xt Weighted Clustering Algorithm (WCA) Steps 4. Compute the average speed of every node; gives a measure of mobilityMv where and are the coordinates of the node at time and Component with less mobility is a better choice for clusterhead.

  13. Weighted Clustering Algorithm (WCA) Steps • Compute the total (cumulative) timePv a node acts as clusterhead Battery drainage = Power consumed 6. Calculate the combined weightWv for each node Wv = w1Δv + w2Dv + w3Mv + w4Pvfor each node 7. Find min Wv; choose node v as the cluster head, remove all neighbors of v for further WCA • Repeat steps 2 to 7 for the remaining nodes

  14. Load Balancing Factor (LBF) • It is desirable to balance the loads among the clusters • Load balancing factor (LBF) has defined as (should be high) where, is the number of clusterheads is the cardinality of cluster i and is the average number of neighbors of a clusterhead (N being the total number of nodes in the system)

  15. Connectivity • For clusters to communicate with each other, it is assumed that clusterheads are capable of operating in dual power mode • A clusterhead uses low power mode to communicate with its immediate neighbors within its transmission range and high power mode is used for communication with neighboring clusters • Connectivity is defined as (for multiple component graph) • Probability that a node is reachable from any other node ( 0 – 1; 1 being most desirable)

  16. Demonstration Scattered nodes in the network

  17. Demonstration Clusterheads are identified

  18. Demonstration Clusters are formed

  19. Demonstration Clusters are connected

  20. Features of WCA • Invocation of WCA is on-demand • Reduces information exchange by less system updates • Reduces computation/communication costs • Manages mobility by reaffiliations • Delays (avoids) invocation of clustering as far as possible • WCA is distributive • No clusterhead is over loaded • Balances load by limiting the cluster size

  21. Performance Metric • Number of clusterheads • Number of reaffiliations • a process where a node detaches from one clusterhead and attaches to another • Number of dominant set updates • when a node can no longer attach to any of the existing clusterheads These parameters are studied for the varying number of nodes transmission range maximum displacement

  22. Simulation Environment • System with N nodes on a 100x100 grid • N was varied between 20 and 60 • Nodes moved in all directions randomly • Velocity of nodes were varied uniformly between 0 and 10 • Transmission range of nodes was varied between 0 and 70 • Ideal degree was fixed at = 10 • Weighing factors: w1 = 0.7, w2 = 0.2, w3 = 0.05 and w4 = 0.05

  23. Max displacement = 5 (const) Transmission range = 0 - 70 Number of nodes = 20 - 60 Ideal degree = 10 Experimental Results

  24. Max displacement = 1 - 10 Transmission range = 30 (const) Number of nodes = 20 - 60 Ideal degree = 10 Experimental Results

  25. Load Balancing

  26. Connectivity

  27. Performance of WCA

  28. Genetic Algorithms • Map the possible solutions of the problem to symbolic space • Possible solutions form a pool of solutions – population • Solution strings – chromosomes and components of chromosomes – genes • Genetic Algorithm operations: • Selection • Crossover • Mutation • Replacement • Elitism

  29. 1 99 88 44 5 3 15 8 3 7 - - - - - - - - - - - - 1 55 77 6 5 3 2 . . 50 Encoding of the Chromosome • N = # of nodes in the network each with unique node id [1..N] used to encode the chromosome by integer permutation all the ids should be included without any duplication, and without order. For instance: N = 100 , node ids [1..100] Pool size = 50 (50 strings of integers/chromosomes)

  30. WV Values 1 56 12 25 8 7 3 - - - - - - - - - 55 25 34 44 35 64 45 34 22 3 6 1 7 5 3 Node Ids of all nodes 2 … 1 22 5 7 . . . … 3 10 2 . . 3 7 25 12 . . 50 … 5 4 99 100 … 8 63 8 Neighbors list Mapping WCA to GA Data Encoded into chromosomes WCA intermediate results

  31. WV Values Node Id of a ClusterHead … 1 22 5 7 … 7 3 10 . . . . . . . . 25 12 76 2 … 15 55 Mapping WCA to GA ClusterHead Set for a single chromosome

  32. GA Steps 1.Choose Initial Population Randomly generate the initial population. Pool size = 50 (means 50 chromosomes) While (new_pool_size < old_pool_size) repeat step 3 to 6 (repeat step 2 until the number of generation or the convergence is met) 2. Selection Compute the fitness value for each chromosome by WV . Roulette Wheel method is used based on the fitness values. 3. Crossover X_Order1 method is used. Crossover rate = 0.8

  33. GA Steps 4.Mutation Swap method is used; randomly selecting two gene at positions i and j. Mutation rate = 0.1 5. Replacement Append method is used. The new children will be appended into the new pool. 6. Elitism - Check if the new children are better than the best, then replace the best by the child - Avoid being stuck on local optima

  34. Cfit Value Algorithm FitnessValue = 0; 1. For each gene in chromosome repeat step 2 to 3 2. node = gene[I]; 3. if node is not clusterH and is not a member of the other clusterH and Nodedegree <= MAX_DEGREE ( const ) Then it is a clusterH, Compute WV for this node insert it into clusterHSet fitnessValue += WV;

  35. Cfit Value Algorithm 4. For each remaining node I from the network If (it is not a clusterH and member of other clusterH, and NodeDegree <= MAX_DEGREE) then Compute WV for this node insert it into clusterHSet fitnessValue += WV;

  36. Performance Metric • Number of clusterheads • Number of reaffiliations • a process where a node detaches from one clusterhead and attaches to another These parameters are studied for the varying number of nodes transmission range maximum displacement • Load Distribution

  37. Simulation Environment • System with N nodes on a 100x100 grid • N was varied between 20 and 60 • Nodes moved in all directions randomly • Velocity of nodes were varied uniformly between 0 and 10 • Transmission range of nodes was varied between 0 and 70 • Ideal degree was fixed at = 10 • Weighing factors: w1 = 0.7, w2 = 0.2, w3 = 0.05 and w4 = 0.05

  38. Max displacement = 5 (const) Transmission range = 0 - 70 Number of nodes = 20 - 60 Ideal degree = 10 Experimental Results WCA Optimized WCA

  39. Max displacement = 1 - 10 Transmission range = 30 (const) Number of nodes = 20 - 60 Ideal degree = 10 Experimental Results Optimized WCA WCA

  40. Max displacement = 1 - 10 Transmission range = 30 (const) Number of nodes = 20 - 60 Ideal degree = 10 Experimental Results Optimized WCA WCA

  41. Load Balancing with WCA

  42. Load Balancing with GA The load balancing factor has improvement ten times with GA

  43. An Energy Efficient Hierarchical Clustering Algorithm for Wireless Sensor Networks [Bandyopadhyay+, 2003] • This paper proposes a distributed, randomized clustering algorithm to organize the sensors in a wireless sensor network into clusters to minimize the energy used to communicate information from all nodes to the processing center • By the generation of hierarchy of clusterheads, the energy savings increase with the number of levels in the hierarchy • Sensor detects events and then communicate the collected information to a central location where parameters characterizing these events are estimated • In the clustered environment, the data gathered by the sensors is communicated to the data processing center through a hierarchy of clusterheads • The processing center determines the final estimates of the parameters using information communicated by the clusterheads

  44. An Energy Efficient Hierarchical Clustering Algorithm for Wireless Sensor Networks [Bandyopadhyay+, 2003] • The processing center can be a specialized device or one of the sensors itself • In such clustered environment, sensor data is communicated over smaller distances, the energy consumed in the network will be much lower than the energy consumption when every sensor communicates directly to the information processing center • The results in stochastic geometry are used to derive values of parameters for the algorithm that minimize the energy spent in the sensor network

  45. An Energy Efficient Hierarchical Clustering Algorithm for Wireless Sensor Networks [Bandyopadhyay+, 2003] • A New, Energy-Efficient, Single-Level Clustering Algorithm • Each sensor becomes a clusterhead (CH) with probability p and advertises itself as a clusterhead to the sensors within its radio range – these clusterheads are called volunteer clusterheads • This advertisement is forwarded to all the sensors that are no more than k hops away from the clusterhead • Any sensor node that is not clusterhead itself receiving such advertisement joins the cluster of the closest clusterhead • Any sensor node that is neither a clusterhead nor has joined any cluster itself becomes a clusterhead – called forced clusterheads • Since the advertisement forwarding has been limited to k hops, if a sensor does not receive a CH advertisement within time duration t (where t is the time required for data to reach the CH from any sensor k hops away), it means that the sensor node is not within k hops of any volunteer CHs

  46. An Energy Efficient Hierarchical Clustering Algorithm for Wireless Sensor Networks [Bandyopadhyay+, 2003] • A New, Energy-Efficient, Single-Level Clustering Algorithm • Therefore, the sensor node becomes a forced clusterhead • The CH can transmit the aggregated information to the processing center after every t units of time since all the sensors within a cluster are at most k hops away from the CH • The limit on the number of hops allows the CH to reschedule their transmissions • This is a distributed algorithm and does not demand clock synchronization between the sensors • The energy consumed for the information gathered by the sensors to reach the processing center will depend on the parameters p and k • Since the objective of this work is to organize sensors in clusters to minimize the energy consumption, values of the parameters (p and k) must be found to ensure the goal

  47. An Energy Efficient Hierarchical Clustering Algorithm for Wireless Sensor Networks [Bandyopadhyay+, 2003] d / r • A New, Energy-Efficient, Single-Level Clustering Algorithm • Assumptions made for the optimal parameters are as follows: • The sensors are distributed as per a homogeneous spatial Poisson process of intensity λ in 2-dimensional space • All sensors transmit at the same power level – have the same radio range r • Data exchanged between two communicating sensors not within each others’ radio range is forwarded by other sensors • A distance of d between any sensor and its CH is equivalent to hops • Each sensor uses 1 unit of energy to transmit or receive 1 unit of data • A routing infrastructure is in place; when a sensor communicates data to another sensor, only the sensors on the routing path forward the data • The communication environment is contention- and error-free; sensors do not have to retransmit any data

  48. An Energy Efficient Hierarchical Clustering Algorithm for Wireless Sensor Networks [Bandyopadhyay+, 2003] • A New, Energy-Efficient, Hierarchical Clustering Algorithm • This algorithm is extension of the previous one by allowing more than one level of clustering in place • Assume that there are h levels in the clustering hierarchy with level 1 being the lowest level and level h being the highest • The sensors communicate the gathered data to level-1 clusterheads (CHs) • The level-1 CHs aggregate this data and communicate the aggregated data to level-2 CHs and so on • Finally, level-h CHs communicate the aggregated data or estimates based on this aggregated data to the processing center

  49. An Energy Efficient Hierarchical Clustering Algorithm for Wireless Sensor Networks [Bandyopadhyay+, 2003] • A New, Energy-Efficient, Hierarchical Clustering Algorithm • The cost of communicating the information from the sensors to the processing center is the energy consumed by the sensors to communicate the information to level-1 CHs, plus the energy consumed by the level-1 CHs to communicate the aggregated data to level-2 CHs, …., plus the energy consumed by the level-h CHs to communicate the aggregated data to the information processing center • Algorithm Details • The algorithm works in a bottom-up fashion • First, it elects the level-1 clusterheads, then level-2 clusterheads, and so on

  50. An Energy Efficient Hierarchical Clustering Algorithm for Wireless Sensor Networks [Bandyopadhyay+, 2003] • A New, Energy-Efficient, Hierarchical Clustering Algorithm • Algorithm Details • Level-1 clusterheads are chosen as follows: • Each sensor decides to become a level-1 CH with certain probability p1 and advertises itself as a clusterhead to the sensors within its radio range • This advertisement is forwarded to all the sensors within k1 hops of the advertising CH • Each sensor receiving an advertisement joins the cluster of the closest level-1 CH; the remaining sensors become forced level-1 CHs • Level-1 CHs then elect themselves as level-2 CHs with a certain probability p2 and broadcast their decision of becoming a level-2 CH • This decision is forwarded to all the sensors within k2 hops

More Related