Algorithms for Wireless Network Design Algorithms for Wireless Network Design MohammadTaghi HajiAghayi Labs – Research Labs – Research
Purposes of this Talk Real-world applications with deep algorithmic underpinnings and consequences Real-world applications with deep algorithmic underpinnings and consequences Present several problems motivated by (wireless sensor) networks Present several problems motivated by (wireless sensor) networks Show how we can tie together theory and practice Show how we can tie together theory and practice Demonstrate nice intersections of wireless multi-hop networks, algorithmic graph theory, probability theory, computational geometry, computational economics and finally computational complexity Demonstrate nice intersections of wireless multi-hop networks, algorithmic graph theory, probability theory, computational geometry, computational economics and finally computational complexity
Outline Focus on two real-world applications Focus on two real-world applications Power optimization in fault-tolerant topology control and related problems Power optimization in fault-tolerant topology control and related problems The low coverage problem and related problems The low coverage problem and related problems Conclusion Conclusion
Power Optimization in Fault-Tolerant Topology Control Power Optimization in Fault-Tolerant Topology Control Wireless multihop networks Wireless multihop networks Simple low-power devices Simple low-power devices Power is the main limitation Power is the main limitation Power assignment Power assignment A power setting for each device A power setting for each device Defines possible communication links Defines possible communication links Power versus distance: It takes power r c to transmit a message to distance r for some power attenuation exponent c between 2 and 4. Power versus distance: It takes power r c to transmit a message to distance r for some power attenuation exponent c between 2 and 4.
Goal: Minimize power usage while maintaining key network properties Goal: Minimize power usage while maintaining key network properties Connectivity: There is a communication path between any pair of nodes Connectivity: There is a communication path between any pair of nodes k-Fault tolerance: Connectivity is maintained in light of at most k-1 failures k-Fault tolerance: Connectivity is maintained in light of at most k-1 failures Device failures (our focus) Device failures (our focus) Communication link failures Communication link failures By k-Fault tolerance, we also have k-disjoint paths and thus higher network capacity By k-Fault tolerance, we also have k-disjoint paths and thus higher network capacity Power Optimization in Fault-Tolerant Topology Control
Model A wireless network is modeled as a graph G(V,E) with cost functions d and p on E A wireless network is modeled as a graph G(V,E) with cost functions d and p on E V is the set of mobile devices V is the set of mobile devices E is the set of pairs of devices which can communicate bi-directionally E is the set of pairs of devices which can communicate bi-directionally d uv is the distance between device u and v d uv is the distance between device u and v p uv is the power needed to transmit between device u and v (usually it is distance to the power attenuation exponent) p uv is the power needed to transmit between device u and v (usually it is distance to the power attenuation exponent)
Model Conversely, a subgraph H=(V,E’) of the network graph G defines an assignment of power settings: device u transmits at Conversely, a subgraph H=(V,E’) of the network graph G defines an assignment of power settings: device u transmits at p(u) = max {(u,v) in E’} p uv The power used by a wireless network with power settings defined by H is The power used by a wireless network with power settings defined by H is P(H) = Σ u in V p(u)
Problem Formulation Given Given A wireless network A wireless network Find Find An assignment of power settings that guarantees k-fault tolerance while minimizing power usage An assignment of power settings that guarantees k-fault tolerance while minimizing power usage Recall k-fault tolerance means the network remains connected even when up to k-1 devices (or communication links) fail
Related Results for Power Minimization Connectivity Connectivity Cone-based local heuristics Cone-based local heuristics [Rodoplu, Meng ’99; Wattenhofer, Li, Bahl, Halpern, Wang ’02] [Rodoplu, Meng ’99; Wattenhofer, Li, Bahl, Halpern, Wang ’02] A 2-approximation based on minimum weight spanning tree A 2-approximation based on minimum weight spanning tree [Kerousis, Kranakis, Krizanc, Pelc ’00] [Kerousis, Kranakis, Krizanc, Pelc ’00] A 1.69-approximation based on minimum weight Steiner tree and a more practical approximation [Calinescu, Mandoiu, Zelikovsky ’02] A 1.69-approximation based on minimum weight Steiner tree and a more practical approximation [Calinescu, Mandoiu, Zelikovsky ’02]
Related Results for Power Minimization 2-Fault tolerance 2-Fault tolerance Heuristic to minimize maximum transmit power Heuristic to minimize maximum transmit power [Ramanathan, Rosales-Hain ’00] (the only previous result) [Ramanathan, Rosales-Hain ’00] (the only previous result) Fault tolerance for general k Fault tolerance for general k Pioneered in [Bahramgiri, H., Mirrokni, WINET] and [H., Immorlica, Mirrokni,IEEE/ACM TON] Pioneered in [Bahramgiri, H., Mirrokni, WINET] and [H., Immorlica, Mirrokni,IEEE/ACM TON] More than 100 references More than 100 references
Cone-Based Heuristic Algorithm: Input: A set of nodes on the plane, with max. power P Each node increases its power until the angle between any two consecutive neighbors is less than some threshold or it reaches its maximum power P. Output: two nodes are connected if both can hear each other with the new power assignment Output: two nodes are connected if both can hear each other with the new power assignment Theorem [BHM’02]: If the network of max. powers is k-connected and the angle between any pair of adjacent neighbors is at most 2π/3k, then the new network is k-connected (2π/3k is almost tight) Main disadvantage: The algorithm is local and thus does not give any bound on the global goal of minimizing sum of the powers (or the average power) Main disadvantage: The algorithm is local and thus does not give any bound on the global goal of minimizing sum of the powers (or the average power)
Approximating Connectivity Recall the power P(H) of subgraph H is Recall the power P(H) of subgraph H is P(H) = Σ u in V p(u) where p(u) = max {(u,v) in H(E)} p uv where p(u) = max {(u,v) in H(E)} p uv Define the weight W(H) of subgraph H as Define the weight W(H) of subgraph H as W(H) = Σ (u,v) in H(E) p uv
Approximating Connectivity Theorem [KKKP ’00]: The minimum weight spanning tree MST of G uses at most twice as much power as the minimum power connected subgraph OPT of G. Theorem [KKKP ’00]: The minimum weight spanning tree MST of G uses at most twice as much power as the minimum power connected subgraph OPT of G. Lemma 1: For any graph G, P(G) ≤ 2W(G). Lemma 1: For any graph G, P(G) ≤ 2W(G). Lemma 2: For any tree T, W(T) ≤ P(T). Lemma 2: For any tree T, W(T) ≤ P(T). Lemma 3: OPT is a tree Lemma 3: OPT is a tree Proof (of Thm): From the above lemmas, Proof (of Thm): From the above lemmas, P(MST) ≤ 2W(MST) ≤ 2W(OPT) ≤ 2P(OPT).
Approximating k-Connectivity Theorem: The minimum weight Theorem: The minimum weight k-connected subgraph of G is a k-connected subgraph of G is a 2k-approximation to minimum power 2k-approximation to minimum power k-connected subgraph k-connected subgraph Proof sketch: use Mader’s theorem to decompose a graph into k forests and then use the previous results for forests (trees) Proof sketch: use Mader’s theorem to decompose a graph into k forests and then use the previous results for forests (trees) Minimum weight k-connected subgraph: an LP-based algorithm gives a solution of weight at most O(log k) times optimal weight (n is at least 6k 2 ) [Cheriyan, Vempala, Vetta, STOC’02], [Kortsarz, Nutov, STOC’04] Minimum weight k-connected subgraph: an LP-based algorithm gives a solution of weight at most O(log k) times optimal weight (n is at least 6k 2 ) [Cheriyan, Vempala, Vetta, STOC’02], [Kortsarz, Nutov, STOC’04]
Approximating k-Connectivity Thus there is an O(k log k) approximation for minimum power k-connected subgraph Thus there is an O(k log k) approximation for minimum power k-connected subgraph A more complicated combinatorial algorithm gives an O(k) approximation A more complicated combinatorial algorithm gives an O(k) approximation First we find a 2-approximation to the minimum weight k-outconnected sub-graph using matroid matching First we find a 2-approximation to the minimum weight k-outconnected sub-graph using matroid matching We can add k-2 disjoint paths to this graph in order to make it k-connected via a min-cost k-flow algorithm We can add k-2 disjoint paths to this graph in order to make it k-connected via a min-cost k-flow algorithm We pay a factor O(k) in each of the above two steps to go from weight to power We pay a factor O(k) in each of the above two steps to go from weight to power
Approximating k-Connectivity Furthermore, a more subtle approach gives O(log 4 n) approximation, an improvement when k is large [H., Kortsarz, Mirrokni, Nutov, IPCO’05, also Math. Prog.’07] Furthermore, a more subtle approach gives O(log 4 n) approximation, an improvement when k is large [H., Kortsarz, Mirrokni, Nutov, IPCO’05, also Math. Prog.’07] Theorem: If there are Theorem: If there are c-approximation for min. weight k-connected sub. c-approximation for min. weight k-connected sub. d-approximation for min. power k-edge cover d-approximation for min. power k-edge cover Then we have 2c+d-approximation for min power k-edge cover: sub-graph with min. degree ≥ k k-edge cover: sub-graph with min. degree ≥ k c is in O(log n) by previous results c is in O(log n) by previous results d is in O(log 4 n) by a new involved algorithm d is in O(log 4 n) by a new involved algorithm There are some hardness results for the k-edge- connectivity case (the best factor is in O(√n)) There are some hardness results for the k-edge- connectivity case (the best factor is in O(√n))
Distributed (Local) Approximation Algorithm: [H., Immorlica, Mirrokni, MOBICOM’03] Algorithm: [H., Immorlica, Mirrokni, MOBICOM’03] Construct minimum weight spanning tree with O(n log n + m) messages [Gallager, Humbler, Spira, ’83] Construct minimum weight spanning tree with O(n log n + m) messages [Gallager, Humbler, Spira, ’83] Use local augmentation to create a Use local augmentation to create a k-connected sub-graph with O(n) messages k-connected sub-graph with O(n) messages Theorem: If p uv = (d uv ) c for all pairs of nodes and we have metricity of distances, then the algorithm is an O(1)-approximation when k is constant. Theorem: If p uv = (d uv ) c for all pairs of nodes and we have metricity of distances, then the algorithm is an O(1)-approximation when k is constant. Comparing via simulations on random or real inputs Comparing via simulations on random or real inputs Some other variants [Bredin, Demaine, H., Rus, MobiHoc’05], [Demaine, H., Mahini, Oveis, Sayedi, Zadi,SODA’07] Some other variants [Bredin, Demaine, H., Rus, MobiHoc’05], [Demaine, H., Mahini, Oveis, Sayedi, Zadi,SODA’07]
A Related Problem: Repairing Fault-Tolerance Problem Formulation: given an initial placement of nodes (the unit disk graph model) Problem Formulation: given an initial placement of nodes (the unit disk graph model) Objective: Objective: Add minimum number of nodes to obtain connectivity Add minimum number of nodes to obtain connectivity Or minimize maximum/average movement of the current nodes without adding any new node Or minimize maximum/average movement of the current nodes without adding any new node More generally obtaining k-fault tolerance or More generally obtaining k-fault tolerance or k-connectivity of the whole network k-connectivity of the whole network
Approximation Algorithms for Repairing the Network Minimum number of added nodes to obtain connectivity: 5/2-approximation [Du, Wang, Xu, 2001] Minimum number of added nodes to obtain connectivity: 5/2-approximation [Du, Wang, Xu, 2001] More generally obtaining k-fault tolerance or k- connectivity: O(k 4 )-approximation (Simple Algorithm, Complicated Analysis) More generally obtaining k-fault tolerance or k- connectivity: O(k 4 )-approximation (Simple Algorithm, Complicated Analysis) [Bredin, Demaine, H., Rus, MobiHoc’05] [Bredin, Demaine, H., Rus, MobiHoc’05] More generally minimizing movement to obtain a new configuration with a property P (e.g. being connected being independent, having a perfect matching, etc.) More generally minimizing movement to obtain a new configuration with a property P (e.g. being connected being independent, having a perfect matching, etc.) More formally the goal of movement problem is to move the agents into a configuration containing at most h vertices that contain all k agents and induce a “good” target patterns, i.e., an induced graph, in the given set G. Agents can have even different colors. More formally the goal of movement problem is to move the agents into a configuration containing at most h vertices that contain all k agents and induce a “good” target patterns, i.e., an induced graph, in the given set G. Agents can have even different colors.
Minimizing Movement: Fixed-Parameter Tractability Fixed-parameter algorithms: Fixed-parameter algorithms: Parameterize problem by parameter P (typically, the cost of the optimal solution) and aim for f(P) n O(1) (or even f(P) + n O(1) ) There is an FPT algorithm for Vertex Cover There is an FPT algorithm for Vertex Cover There is no FPT algorithm for Dominating Set There is no FPT algorithm for Dominating Set
Minimizing Movement: FPT (cont’d) CONNECTIVITY. Move the pebbles (agents) so that they are connected and on distinct vertices GRID. Move the k 2 pebbles so that they form a k × k grid. s-t CONNECTIVITY. Move the pebbles to form a path of pebbled vertices between fixed vertices s and t. STEINER CONNECTIVITY. Connect the red pebbles by moving the blue pebbles to form a Steiner tree.
Minimizing Movement: FPT (cont’d) 2-CONNECTIVITY. Move the pebbles so that they induce a 2- connected graph and the pebbles are on distinct vertices. s-t d-CONNECTIVITY. Move the pebbles so that there are d vertex-disjoint paths using pebbled vertices between two fixed vertices s and t. s-t d-EDGE-CONNECTIVITY. Move the pebbles so that there are d edge-disjoint paths of pebbled vertices between s and t. FACILITY LOCATION. Move client and facility pebbles so that each client pebble is within distance at most d from at least one facility pebble. MATCHING. Move the pebbles so that the pebbles are on distinct vertices and there is a perfect matching in the graph induced by the pebbles.
Minimizing Movement √n- Essentially all these problems are polynomialy hard to approximate or at least there is no algorithm better than √n-approximatoin [Demaine, H., Mahini, Oveis, Sayedi, Zadi, SODA’07] (for max connectivity and max path there are such algorithnms) [Demaine, H., Mahini, Oveis, Sayedi, Zadi, SODA’07] [Demaine, H.,Marx, Submitted’07] But all of them except GIRD, 2-CONNECTIVITY, and FACILITY LOCATION with unbounded number of clients have FPT algorithms which are quite surprising and interesting for practical purposes [Demaine, H.,Marx, Submitted’07]
Outline Focus on two real-world applications Focus on two real-world applications Power optimization in fault-tolerant topology control and related problems Power optimization in fault-tolerant topology control and related problems The low coverage problem and related problems The low coverage problem and related problems Conclusion Conclusion
Interference Problem
The problem is a bit simplified formulation of a real- world application in Bell-Labs The problem is a bit simplified formulation of a real- world application in Bell-Labs Input: Input: Decomposition of the plane into regions with various client densities Decomposition of the plane into regions with various client densities n base station locations, each with a set of options for power/directional cones/etc and a cost for each one n base station locations, each with a set of options for power/directional cones/etc and a cost for each one Budget limiting the total cost of options Budget limiting the total cost of options Satisfaction s k for covering a region by k> 0 base stations where s 1 ≥ s 2 ≥ s 3 ≥... ≥ 0 (simplified version s 1 =1 and s 2 =s 3 =...=0 is called budgeted unique cover.) Satisfaction s k for covering a region by k> 0 base stations where s 1 ≥ s 2 ≥ s 3 ≥... ≥ 0 (simplified version s 1 =1 and s 2 =s 3 =...=0 is called budgeted unique cover.) Goal: Find a set of base stations and options within the total budget which maximizes the total satisfaction weighted by client densities Goal: Find a set of base stations and options within the total budget which maximizes the total satisfaction weighted by client densities The Low Coverage Problem, Motivation [Demaine, H., Feige, Salavatipur, SODA’06, SICOMP]
The Unique Coverage Problem: The Unique Coverage Problem: Given a universe U of n elements, and Given a universe U of n elements, and Given a collection S of subsets of U. Given a collection S of subsets of U. Find a sub-collection S’, a subset of S, which maximizes the number of elements that are uniquely covered, i.e., appear in exactly one set of S’ Find a sub-collection S’, a subset of S, which maximizes the number of elements that are uniquely covered, i.e., appear in exactly one set of S’ The Budgeted Unique Coverage Problem: The Budgeted Unique Coverage Problem: Given profits for elements and costs for subsets, and Given profits for elements and costs for subsets, and Given also a budget B Given also a budget B Find a sub-collection S’, a subset of S, whose total cost is at most B and maximizes the total profit of elements that are uniquely covered Find a sub-collection S’, a subset of S, whose total cost is at most B and maximizes the total profit of elements that are uniquely covered The Unique Coverage Problem [Demaine, H., Feige, Salavatipur, SODA’06]
The Unique Coverage Problem The budgeted case is almost equivalent to the wireless network problem The budgeted case is almost equivalent to the wireless network problem It has the same flavor of the maximum coverage problem (has e/(e-1)-approximation) It has the same flavor of the maximum coverage problem (has e/(e-1)-approximation) Unique coverage is a generalization of MAX-CUT Unique coverage is a generalization of MAX-CUT It has very close connections to the radio broadcast problem (considered extensively) It has very close connections to the radio broadcast problem (considered extensively) For simplicity, we focus on the (un-budgeted) unique coverage problem in the rest of the talk For simplicity, we focus on the (un-budgeted) unique coverage problem in the rest of the talk
The Unique Coverage Problem Simple O(log n) approximation algorithm Simple O(log n) approximation algorithm Partition the elements into log n classes according to their degrees, i.e., the number of sets that cover an element Partition the elements into log n classes according to their degrees, i.e., the number of sets that cover an element Let i be the class of maximum cardinality Let i be the class of maximum cardinality Choose a set in S to be in S’ with prob. 1/2 i Choose a set in S to be in S’ with prob. 1/2 i Proof Sketch: we uniquely cover 1/e 2 fraction of elements of class i in expectation Proof Sketch: we uniquely cover 1/e 2 fraction of elements of class i in expectation Can be de-randomized by the standard method of conditional expectation Can be de-randomized by the standard method of conditional expectation Can be generalized for budgets, real-world Can be generalized for budgets, real-world O(log B) where B is the max size of a subset (nontrivial) O(log B) where B is the max size of a subset (nontrivial)
Hardness Result Hardness Result The algorithm seems naïve The algorithm seems naïve Several other problems have the same solution Several other problems have the same solution Can we do better? Can we do better? It seems combination sometimes can be hard It seems combination sometimes can be hard Theorem: This problem is hard to approximate within a factor better than O(log c n), 0<c<1, unless NP has a sub-exponential algorithm. Theorem: This problem is hard to approximate within a factor better than O(log c n), 0<c<1, unless NP has a sub-exponential algorithm. O(log 1/3 n) hard or even O(log n) hard under stronger but plausible complexity assumptions O(log 1/3 n) hard or even O(log n) hard under stronger but plausible complexity assumptions
Proof Ideas Proof Ideas A bad instance that we cannot uniquely cover > 1/log n fraction A bad instance that we cannot uniquely cover > 1/log n fraction O(log n) B1B1B1B1 2 i random subsets n B i : Class i n BpBpBpBp B: Elements A: Sets In this graph, at most O(n) elements of B can be uniquely covered by sets of A In this graph, at most O(n) elements of B can be uniquely covered by sets of A
Proof Ideas Bipartite Independent Set (BIS) problem: Bipartite Independent Set (BIS) problem: Given a bipartite graph G(A UB,E) where |A|=|B|=n Given a bipartite graph G(A UB,E) where |A|=|B|=n Find a bipartite sub-graph G’(A’ UB’, E’) where |A’|=a, |B’|=b and E’ is an empty set. Find a bipartite sub-graph G’(A’ UB’, E’) where |A’|=a, |B’|=b and E’ is an empty set. Theorem: Unless NP has sub-exponential algorithm, it is hard to decide between (n c,n/log d n)-BIS and (n c’,n/log d’ n)-BIS where 0<c’<c ≤1 and 0 ≤ d<d’ ≤1 Theorem: Unless NP has sub-exponential algorithm, it is hard to decide between (n c,n/log d n)-BIS and (n c’,n/log d’ n)-BIS where 0<c’<c ≤1 and 0 ≤ d<d’ ≤1 Now between A and B i we put a random matching and an instance of BIS where the edges remain with probability 1/2 i-1 Now between A and B i we put a random matching and an instance of BIS where the edges remain with probability 1/2 i-1 For Yes instance, we have a unique cover of size Ω(nlog 1-d n) For Yes instance, we have a unique cover of size Ω(nlog 1-d n) For No instance, we have a unique cover of size at most O(nlog 1-d’ n) For No instance, we have a unique cover of size at most O(nlog 1-d’ n) The inapproximability threshold can be improved under other stronger but still plausible complexity assumptions The inapproximability threshold can be improved under other stronger but still plausible complexity assumptions
Other Aspects of the Results Unique coverage is the first natural maximization problem with almost logarithmic-hardness Unique coverage is the first natural maximization problem with almost logarithmic-hardness We believe that it can be a central problem for maximization problems like set cover for minimization problems We believe that it can be a central problem for maximization problems like set cover for minimization problems Toward this end, we obtain the same almost logarithmic hardness for envy-free pricing, an important problem in computational economics considered by [Guruswami, Hartline, Karlin, Kempe, Kenyon, McSherry, SODA’05] Toward this end, we obtain the same almost logarithmic hardness for envy-free pricing, an important problem in computational economics considered by [Guruswami, Hartline, Karlin, Kempe, Kenyon, McSherry, SODA’05] Other maximization candidates: deadline TSP [BBCM, STOC’04] and budgeted connected sub-graph [Moss, Rabani, STOC’01] where both have O(log n) approximation but not better so far Other maximization candidates: deadline TSP [BBCM, STOC’04] and budgeted connected sub-graph [Moss, Rabani, STOC’01] where both have O(log n) approximation but not better so far Finally, better models of interference for the real-world application also has been considered via some primal-dual schemas and also simulations on real-world inputs [Bahl, H., Mirrokni, Qui, Saberi,IEEE TMC] Finally, better models of interference for the real-world application also has been considered via some primal-dual schemas and also simulations on real-world inputs [Bahl, H., Mirrokni, Qui, Saberi,IEEE TMC]
[Bahl, H., Jain, Mirrokni, Qui, Saberi,IEEE TMC] Application of Market Equilibrium in Distributed Load Balancing [Bahl, H., Jain, Mirrokni, Qui, Saberi,IEEE TMC] Wireless devices Wireless devices Cell-phones, laptops with WiFi cards Cell-phones, laptops with WiFi cards Referred as clients or users interchangeably Referred as clients or users interchangeably Demand connections to access points Demand connections to access points Uniform for cell-phones (voice connection) Uniform for cell-phones (voice connection) Non-uniform for laptops (application dependent) Non-uniform for laptops (application dependent)
[Bahl, H., Jain, Mirrokni, Qui, Saberi,IEEE TMC] Application of Market Equilibrium in Distributed Load Balancing [Bahl, H., Jain, Mirrokni, Qui, Saberi,IEEE TMC] Access points Access points Cell-towers, Base stations, Wireless routers Cell-towers, Base stations, Wireless routers Capacities Capacities Total traffic they can serve Total traffic they can serve Integer for cell-towers Integer for cell-towers Variable transmission power Variable transmission power Capable of operating at various power levels Capable of operating at various power levels Assume levels are continuous real numbers Assume levels are continuous real numbers
Clients to APs assignment Assign clients to APs in an efficient way Assign clients to APs in an efficient way No over-loading of APs No over-loading of APs Assigning the maximum number of clients and thus satisfying maximum demand Assigning the maximum number of clients and thus satisfying maximum demand
One Heuristic Solution A client connects to the AP with reasonable signal and then the lightest load A client connects to the AP with reasonable signal and then the lightest load Requires support both from AP and Clients Requires support both from AP and Clients APs have to communicate their current load APs have to communicate their current load Clients have WiFi cards from various vendors running legacy software Clients have WiFi cards from various vendors running legacy software Overall it has limited benefit in practice Overall it has limited benefit in practice
Ideal Case We would like a client connects to the AP with the best received signal strength We would like a client connects to the AP with the best received signal strength If an AP j transmitting at power level P j then a client i at distance d ij receives signal with strength If an AP j transmitting at power level P j then a client i at distance d ij receives signal with strength P ij = a.P j.d ij -c P ij = a.P j.d ij -c where a and c are constants capturing various models of power attenuation
Cell Breathing Heuristic An overloaded AP decreases its communication radius by decreasing power An overloaded AP decreases its communication radius by decreasing power A lightly loaded AP increases its communication radius by increasing power A lightly loaded AP increases its communication radius by increasing power Hopefully an equilibrium would be reached Hopefully an equilibrium would be reached Will show that an equilibrium exist Will show that an equilibrium exist Can be computed in polynomial time Can be computed in polynomial time Can be reached by a tatonnement process Can be reached by a tatonnement process Lets start with economics and game theory Lets start with economics and game theory
Market Equilibrium – A distributed load balancing mechanism. Fisher setting with linear Utilities: Fisher setting with linear Utilities: m buyers (each with budget B i ) and n goods for sale m buyers (each with budget B i ) and n goods for sale (each with quantity q j ) Each buyer has linear utility u i, i.e. utility of i is Each buyer has linear utility u i, i.e. utility of i is sum j u ij x ij where u ij >= 0 is the utility of buyer i for good j and x ij is the amount of good j bought by i. A market equilibrium or market clearance is a price vector p that A market equilibrium or market clearance is a price vector p that maximizes utility sum j u ij x ij of buyer i subject to his budget sum j p j x ij <= B i maximizes utility sum j u ij x ij of buyer i subject to his budget sum j p j x ij <= B i The demand and supply for each good j are equal The demand and supply for each good j are equal sum j x ij = q j (and thus the budgets are totally spent).
Fisher Setting with Linear Utilities Buyers Goods
Market Equilibrium – A distributed load balancing mechanism. Static supply Static supply corresponding to capacities of APs corresponding to capacities of APs Prices Prices corresponding to powers at APs corresponding to powers at APs Utilities Utilities Analogous to received signal strength function Analogous to received signal strength function Either all clients are served or all APs are saturated Either all clients are served or all APs are saturated Analogous to the market clearance(equiblirum) condition Analogous to the market clearance(equiblirum) condition Thus our situation is analogous to Fisher setting with linear utilities Thus our situation is analogous to Fisher setting with linear utilities
Clients assignment to APs Clients APs
Analogousness Is Only Inspirational Get inspiration from various algorithms for the Fisher setting and develop algorithms for our setting Get inspiration from various algorithms for the Fisher setting and develop algorithms for our setting Though we do not know any reduction – in fact there are some key differences Though we do not know any reduction – in fact there are some key differences
Differences from the Market Equilibrium setting Demand Demand Price dependent in Market equilibrium setting Price dependent in Market equilibrium setting Power independent in our setting Power independent in our setting Is demand splittable? Is demand splittable? Yes for the Market equilibrium setting Yes for the Market equilibrium setting No for our setting No for our setting Market equilibrium clears both sides but our solution requires clearance on either client side or AP side Market equilibrium clears both sides but our solution requires clearance on either client side or AP side This also means two separate linear programs for these two separate cases This also means two separate linear programs for these two separate cases
Three Approaches for Market Equilibrium Convex Programming Based Convex Programming Based Eisenberg, Gale 1957 Eisenberg, Gale 1957 Primal-Dual Based Primal-Dual Based Devanur, Papadimitriou, Saberi, Vazirani 2004 Devanur, Papadimitriou, Saberi, Vazirani 2004 Auction Based Auction Based Garg, Kapoor 2003 Garg, Kapoor 2003
Three Approaches for Load Balancing Linear Programming Linear Programming Minimum weight complete matching Minimum weight complete matching Primal-Dual Primal-Dual Uses properties of bipartite graph matching Uses properties of bipartite graph matching Auction Auction Useful in dynamically changing situation Useful in dynamically changing situation
Another Application of Market Equilibria in Networking Fleisher, Jain, Mahdian 2004 used market equilibrium inspiration to obtain Toll-Taxes in Multi-commodity Selfish Routing Problem Fleisher, Jain, Mahdian 2004 used market equilibrium inspiration to obtain Toll-Taxes in Multi-commodity Selfish Routing Problem This is essentially a distributed load balancing i.e., distributed congestion control problem This is essentially a distributed load balancing i.e., distributed congestion control problem
Linear Programming Based Solution Create a complete bipartite graph Create a complete bipartite graph One side is the set of all clients One side is the set of all clients The other side is the set of all APs, conceptually each AP is repeated as many times as its capacity (unit demand) The other side is the set of all APs, conceptually each AP is repeated as many times as its capacity (unit demand) The weight between client i and AP j is The weight between client i and AP j is w ij = c.ln(d ij ) – ln(a) w ij = c.ln(d ij ) – ln(a) Find the minimum weight complete matching Find the minimum weight complete matching
Theorem Minimum weight matching is supported by a power assignment to APs Minimum weight matching is supported by a power assignment to APs Power assignment are the dual variables Power assignment are the dual variables Two cases for the primal program which is known at the beginning Two cases for the primal program which is known at the beginning Solution can satisfy all clients Solution can satisfy all clients Solution can saturate all APs Solution can saturate all APs
Case 1 – Complete matching covers all clients
Case 1 – Pick Dual Variables
Write Dual Program x ij
Optimize the dual program Choose P j = e π j Choose P j = e π j Using the complementary slackness condition we will show that the minimum weight complete matching is supported by these power levels Using the complementary slackness condition we will show that the minimum weight complete matching is supported by these power levels
Proof Dual feasibility gives: Dual feasibility gives: -λ i ≥ π j – w ij = ln(P j ) – c.ln(d ij ) + ln(a) = ln(a.P j.d ij -c ) -λ i ≥ π j – w ij = ln(P j ) – c.ln(d ij ) + ln(a) = ln(a.P j.d ij -c ) Complementary slackness gives: Complementary slackness gives: x ij =1 implies -λ i = ln(a.P j.d ij -c ) x ij =1 implies -λ i = ln(a.P j.d ij -c ) (Remember if an AP j transmitting at power level P j then a client i at distance d ij receives signal with strength P ij = a.P j.d ij -c) Together they imply that i is connected to the AP with the strongest received signal strength Together they imply that i is connected to the AP with the strongest received signal strength
Case 2 – Complete matching saturates all APs
Case 2 – The rest of the proof is similar
Optimizing Dual Program Once the primal is optimized the dual can be optimized with the Dijkstra algorithm for the shortest path Once the primal is optimized the dual can be optimized with the Dijkstra algorithm for the shortest path
Primal-Dual-Type Algorithm Previous algorithm needs the input upfront Previous algorithm needs the input upfront In practice, we need a tatonnement process In practice, we need a tatonnement process The received signal strength formula does not work in case there are obstructions The received signal strength formula does not work in case there are obstructions A weaker assumption is that the received signal strength is directly proportional to the transmitted power – true even in the presence of obstructions A weaker assumption is that the received signal strength is directly proportional to the transmitted power – true even in the presence of obstructions
Cell-phones Cell-towers
Start with arbitrary non-zero powers
Powers and Received Signal Strength RSS
Equality Edges Max RSS
Equality Graph Desirable APs for each Client
Maximum Matching Maximum Matching, Deficiency =
Neighborhood Set S T
Deficiency of a Set Deficiency of S = Capacities on T - |S| S T
Simple Observation Deficiency of a Set S ≤ Deficiency of the Maximum Matching Maximum Deficiency over Sets ≤ Minimum Deficiency over Matching
Generalization of Hall’s Theorem Maximum Deficiency over Sets = Minimum Deficiency over Matching Maximum Deficiency over Sets = Deficiency of the Maximum Matching
Maximum Matching Maximum Matching, Deficiency =
Most Deficient Sets Two Most Deficient Sets
Smallest Most Deficient Set Pick the smallest. Use Super-modularity! S
Neighborhood Set S T
Complement of the Neighborhood Set S TcTc
Initialize r. Initialize r = r 30r S TcTc
About to start raising r. Start Raising r r 30r S TcTc
Equality edges about to be lost. Equality edge which will be lost r 30r S TcTc
Useless equality edges. Did not belong to any maximum matching r 30r S TcTc
Equality edges deleted. Let it go r 30r S TcTc
All other equality edges remain. All other equality edges are preserved! r 30r S TcTc
A new equality edge added At some point a new equality appears. r = S TcTc
Subcase A – Deficiency Decreases New equality edge gives an augmenting path S TcTc
Subcase B – Deficiency does not decrease New edge does not create any augmenting path S TcTc
Smallest most deficient set increases New S is a strict super set of old S! S
Eventually Subcase A will happen Eventually the size of the matching increases S
Case 1 – Deficiency Reaches Zero All Clients are served! S
All APs are saturated Or the algorithm will prove that none exist! S
Unsplittable Demand
The integer program is APX-hard in general (because of knapsack) The integer program is APX-hard in general (because of knapsack) Assuming that the number of clients is much larger than the number of APs, a realistic assumption, we can obtain a nice approximation heuristic. Assuming that the number of clients is much larger than the number of APs, a realistic assumption, we can obtain a nice approximation heuristic. First we compute a basic feasible solution First we compute a basic feasible solution
Analysis of Basic Feasible Solution
Approximate Solution All x ij ’s but a small number of x ij ’s are integral All x ij ’s but a small number of x ij ’s are integral Theorem: Number of x ij which are integral is at least the number of clients – the number APs Theorem: Number of x ij which are integral is at least the number of clients – the number APs Most clients are served unsplittably Most clients are served unsplittably Clients which are served splittably – do not serve them Clients which are served splittably – do not serve them The algorithm is almost optimal The algorithm is almost optimal
Discrete Power Levels Over the shelf APs have only fixed number of discrete power levels Over the shelf APs have only fixed number of discrete power levels Equilibrium may not exist Equilibrium may not exist In fact it is NP-hard to test whether it exists or not In fact it is NP-hard to test whether it exists or not If every client has a deterministic tie breaking rule then we can compute the equilibrium – if exists under the tie breaking rule If every client has a deterministic tie breaking rule then we can compute the equilibrium – if exists under the tie breaking rule
Discrete Power Levels Start with the maximum power levels for each AP Start with the maximum power levels for each AP Take any overloaded AP and decrease its power level by one notch Take any overloaded AP and decrease its power level by one notch If an equilibrium exist then it will be computed in time mk, where m is the number of APs and k is the number of power levels If an equilibrium exist then it will be computed in time mk, where m is the number of APs and k is the number of power levels This is a distributed tatonnement process! This is a distributed tatonnement process!
Proof. Suppose P j is an equilibrium power level for the j th AP. Suppose P j is an equilibrium power level for the j th AP. Inductively prove that when j reaches the power level P j then it will not be overloaded again. Inductively prove that when j reaches the power level P j then it will not be overloaded again. Here we use the deterministic tie breaking rule. Here we use the deterministic tie breaking rule.
Conclusion. Theory of market equilibrium is a good way of synchronizing independent entity’s to do distributed load balancing. Theory of market equilibrium is a good way of synchronizing independent entity’s to do distributed load balancing. We simulated these algorithm and observed meaningful results. We simulated these algorithm and observed meaningful results. Thanks Kamal Jain for the main part of slides.
Reconstruction Problem Geometric graph structure Geometric graph structure Given: Information about local geometry Given: Information about local geometry E.g., approximate distances E.g., approximate distances Goal: Reconstruct global geometry Goal: Reconstruct global geometry Sensor network
Cricket v2 Motivation: Cricket Location System [MIT SLAM Project since 2000] [Badoiu, Demaine, H., Indyk, SOCG’04, DCG] Cricket devices “chirp” radio & ultrasound Cricket devices “chirp” radio & ultrasound Radio travels at speed of light Radio travels at speed of light Ultrasound travels at speed of sound Ultrasound travels at speed of sound Measure distances Measure distances Localized Localized Accuracy ~1cm Accuracy ~1cm ? ? ? ?
General Embedding Problem Given graph with edge weights Given graph with edge weights Embed into desired metric space (e.g., 2D or 3D) with edge lengths matching specified weights Embed into desired metric space (e.g., 2D or 3D) with edge lengths matching specified weights Weights may be exact or approximate Weights may be exact or approximate Simple only if we know all Simple only if we know all the distances exactly
Embedding with Approx. Distances Exact embedding likely impossible Exact embedding likely impossible Goal: Minimize maximum distortion Goal: Minimize maximum distortion Additive: |embed length − true length| Additive: |embed length − true length| Multiplicative: |embed length / true length| Multiplicative: |embed length / true length| Sample results: Sample results: [Badoiu, Demaine, H., Indyk, SOCG’04], Embed any metric on n points into Euclidean 2D plane with multiplicative/additive distortion (by knowing angles) or quasi-polynomial time if we do not have the angles [Badoiu, Demaine, H., Indyk, SOCG’04], Embed any metric on n points into Euclidean 2D plane with multiplicative/additive distortion (by knowing angles) or quasi-polynomial time if we do not have the angles [Alon, Badoiu, Demaine, Farach-Colton, H., Sidiropoulos, SODA’05], Embed any metric on n points into low dimensions such that we preserve the order approximately [Alon, Badoiu, Demaine, Farach-Colton, H., Sidiropoulos, SODA’05], Embed any metric on n points into low dimensions such that we preserve the order approximately Approximating best embedding into plane in polynomial time is a very important open problem Approximating best embedding into plane in polynomial time is a very important open problem
Conclusions Introduction and motivations Introduction and motivations Focused on two real-world applications Focused on two real-world applications Power optimization in fault-tolerant topology control and related problems Power optimization in fault-tolerant topology control and related problems The low coverage problem and related problems The low coverage problem and related problems Several other related areas to wireless networks Several other related areas to wireless networks Geometric embedding & Reconstruction Problem Geometric embedding & Reconstruction Problem Market equiblirum & Load Balancing Market equiblirum & Load Balancing Game theory & Low Coverage Game theory & Low Coverage Questions ? Questions ?
Thanks for your attention… تشکر Obrigado