Download presentation
Presentation is loading. Please wait.
1
Apr 26th, 2006 Solving Generic Role Assignment Exactly Christian Frank and Kay Römer ETH Zurich, Switzerland
2
Apr 26 th, 2006 Christian Frank 2 Programming Abstractions for WSN Task at hand on a higher level: Retrieve data from network (TinyDB) Assign different functions to network nodes (Role Assignment) read_sensor() send_msg() get_pos() Wireless Sensor Networks Small sensing devices, communicating wirelessly Allow unobtrusive monitoring of physical processes Programmed as a distributed system
3
Apr 26 th, 2006 Christian Frank 3 Role Assignment Problems Coverage Roles ON, OFF ON nodes cover every geographic spot Clustering Roles: Clusterhead, Gateway, Slave Connected Subgraph Data Aggregation Roles: Data Source, Aggregator, Forwarder Many variations and combinations of the above
4
Apr 26 th, 2006 Christian Frank 4 Role Assignment Abstraction Programmer defines a list of roles Functions that a node may perform in the network Annotated with conditions for assigning each role, based on: Local node properties (available sensors, processing power, battery, position…) Properties of nodes in network neighborhood
5
Apr 26 th, 2006 Christian Frank 5 x == retrieve(scope) { pred } : store nodes matching pred in property x Example Specification: Coverage Network consists of more nodes than needed Only some nodes need to have sensors ON Others may save power and sleep with sensors OFF Conditions of ON role: Temperature sensor Battery above threshold No other ON node in sensing range on off ON :: { temp-sensor == true && battery >= threshold && count(2 meters) { role == ON } == 0 } OFF :: else count(scope) { pred }: Counts nodes matching pred within scope
6
Apr 26 th, 2006 Christian Frank 6 RA Algorithm Property Directory App. Distributed Algorithm Role Specifications Elements of a Role-Assignment System Node Properties Network Role Assignment Problem RA Algorithm Role Assignment battery = 80% pos = (12, 3) role = ON …
7
Apr 26 th, 2006 Christian Frank 7 Distributed algorithm repeats three basic steps: Send properties to neighbors Wait random interval, receive properties Decide role Distributed fixpoint iteration Notifies applications on stable role Details in “Algorithms for Generic Role Assignment…” In Proc. of Sensys 2005 Distributed Algorithm Does solution exist? How good is the solution? on off
8
Apr 26 th, 2006 Christian Frank 8 Role Specifications Verification through Integer Program Node Properties Network Role Assignment Problem RA Algorithm Role Assignment IP Converter Integer Program CPLEX Solver Centralized Algorithm Detect infeasible specifications Optimize number of nodes with a certain role(s)
9
Apr 26 th, 2006 Christian Frank 9 Example Integer Program Binary result variables For each node i and role r Constraints (for each node i ): Only one role should be assigned to a node i Role ON is assigned iff count operator is true “ “: If role ON, count must be true “ “ similar ON :: { count( scope ) { role == ON } <= 0 } OFF :: else 1 if node i is assigned role r 0 otherwise M high number, annuls constraint
10
Apr 26 th, 2006 Christian Frank 10 Additional Variables and Constraints Variables Output variables indicating computed role Auxiliary variables at each node -For each atomic predicate -For each and / or -For each role condition (opposed to assignment) Constraints formulating And / or Assign first matching role, if more than one condition matches Retrieve operators (paper) ON :: { temp-sensor == true && battery >= threshold && count(2 meters) { role == ON } == 0 } OFF :: else
11
Apr 26 th, 2006 Christian Frank 11 Results: Feasibility Some specifications are infeasible, toy example: Condition for Red: At least 1 Green neighbor Condition for Green: No Red neighbor Grey: Else Infeasibility is not always apparent in the specification Distributed algorithm does not find solution IP can be used to detect infeasibility Compute feasible topology
12
Apr 26 th, 2006 Christian Frank 12 IP can be used to compute gap between “distributed” and “optimal” configuration Generated IPs computable in reasonable time for many nodes Results: Optimality IP Distributed ON nodes with Coverage Example
13
Apr 26 th, 2006 Christian Frank 13 IP-based role assignment algorithm Compute feasibility (or feasible topology) Optimize number of nodes with a certain role(s) Integrated development tool Simulator of distributed algorithms Integer-program based verifier Visualization Summary
14
Apr 26th, 2006 Solving Generic Role Assignment Exactly Christian Frank and Kay Römer ETH Zurich, Switzerland
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.