Presentation on theme: "1 K-clustering in Wireless Ad Hoc Networks Fernandess and Malkhi Hebrew University of Jerusalem Presented by: Ashish Deopura."— Presentation transcript:
1 K-clustering in Wireless Ad Hoc Networks Fernandess and Malkhi Hebrew University of Jerusalem Presented by: Ashish Deopura
2 Outline of the presentation Motivation for clustering in Mobile Ad hoc networks Problem Statement Algorithm Description Conclusions / Summary
3 Wireless Ad-hoc networks Dynamic topology Power and bandwidth limitations Broadcast network Routing –How to determine path from source to destination
4 Cluster-based Routing Protocol The network is divided to non overlapping sub- networks (clusters) with bounded diameter. Intra-cluster routing: pro-actively maintain state information for links within the cluster. Inter-cluster routing: use a route discovery protocol for determining routes.
5 Cluster-based Routing Protocol (Cntd.) Limit the amount of routing information stored and maintained at individual hosts. Clusters are manageable. Node mobility events are handled locally within the clusters. Hence, far- reaching effects of topological changes are minimized. Overcome mobility by adjusting cluster size (diameter) according to network stability.
6 Cluster-heads B A S E F H J D C G I K M N L O B A S E F H J D C G I K M N L O CH Denote Cluster-heads
7 Problem Statement Minimum k-clustering: given a graph G = (V,E) and a positive integer k, find the smallest value of ƒ such that there is a partition of V into ƒ disjoint subsets V 1,…,V ƒ and diam(G[V i ]) <= k for i = 1…ƒ. The algorithmic complexity of k-clustering is known to be NP-complete for simple undirected graphs.
9 Algorithm Description A two phase distributed algorithm for k- clustering where k > 1 that has a competitive worst case ratio of O(k) –First phase: construct a MCDS tree of the network –Second phase: partition the spanning tree into sub-trees with bounded diameter.
10 System Model Two general assumptions regarding the state of the network’s communication links and topology: 1.The network may be modeled as an unit disk graph (represents effective broadcast range). 2.The network topology remains unchanged throughout the execution of the algorithm.
11 Unit Disk Graph B A S E F H J D C G I K M N L O B A S E F H J D C G I K M N L O The distance between adjacent nodes = 1 The distance between non adjacent nodes is >= 2
12 Preliminaries I Given an undirected graph G = (V,E) consider the following general definitions regarding k- clustering: Diameter: Dominating Set (DS): Connected Dominating Set (CDS): The induced sub graph G[D] is connected.
13 Preliminaries II Independent Set (IS): Maximal Independent Set (MIS): An independent set S where no proper superset of S is also an IS. A MIS is also DS.
14 Maximal Independent Set (MIS) B A S E F H J D C G I K M N L O CH Denote MIS & DS nodes
15 First Phase: MCDS Tree Construction Given an unit disk graph G = (V,E) the algorithm executes as follows: Step 1: Construct a spanning tree T. partitions the nodes into disjoints sets S i S i is a set of nodes at level equal to i Every node knows its neighbors A rank associated with every node
16 Spanning tree (Cntd.) Maximal Independent Set Construction D F B EG C AA B C D EFG
17 Spanning tree (Cntd.) Connected Dominating Set, parent child pointers D F B EG C AA B C D EFG INV
19 Second Phase: K-sub tree Partition the spanning tree into sub-trees –Bounded Diameter Each node maintains –Height –Highest child Detach child if –H+ Height + 1 > k –Where H is the height received from a child
20 K-sub-tree Converge-cast (K=4) 1 root 2 3 4 2 5 6 3 4 3 5 5 4 6 6 Denote MCDS spanning tree edge. leaf The tree rooted at this node exceeds k detach the highest child
21 K-sub-tree Converge-cast (K=4) 1 root 2 3 4 2 5 6 3 5 6 leaf The tree rooted at this node exceeds k detach the highest child. Denote MCDS spanning tree edge.
23 Summary A distributed k-clustering algorithm Competitive worst case ratio of O(k) Building-block – essential for cluster- based routing protocols. Flexible - cluster diameter is a part of the algorithm parameter.