660 likes | 822 Views
An Application of Market Equilibrium in Distributed Load Balancing in Wireless Networking. Title Page. Algorithms and Economics of Networks UW CSE-599m. Reference. Cell-Breathing in Wireless Networks, by Victor Bahl, MohammadTaghi Hajiaghayi, Kamal Jain, Vahab Mirrokni, Lili Qiu, Amin Saberi.
E N D
An Application of Market Equilibrium in Distributed Load Balancing in Wireless Networking Title Page Algorithms and Economics of Networks UW CSE-599m
Reference • Cell-Breathing in Wireless Networks, by Victor Bahl, MohammadTaghi Hajiaghayi, Kamal Jain, Vahab Mirrokni, Lili Qiu, Amin Saberi
Wireless Devices • Wireless Devices • Cell-phones, laptops with WiFi cards • Referred as clients or users interchangeably • Demand Connections • Uniform for cell-phones (voice connection) • Non-uniform for laptops (application dependent)
Access Points (APs) • Access Points • Cell-towers, Wireless routers • Capacities • Total traffic they can serve • Integer for Cell-towers • Variable Transmission Power • Capable of operating at various power levels • Assume levels are continuous real numbers
Clients to APs assignment • Assign clients to APs in an efficient way • No over-loading of APs • Assigning the maximum number of clients • Satisfying the maximum demand
One Heuristic Solution • A client connects to the AP with the best signal and the lightest load • Requires support both from AP and Clients • APs have to communicate their current load • Clients have WiFi cards from various vendors running legacy software • Limited benefit in practice
We would like … • A Client connects to the AP with the best received signal strength • An AP j transmitting at power level Pj then a client i at distance dij receives signal with strength Pij = a.Pj.dij-α where a and α are constants • Captures various models of power attenuation
Cell Breathing Heuristic • An overloaded AP decreases its communication radius by decreasing power • A lightly loaded AP increases its communication radius by increasing power • Hopefully an equilibrium would be reached • Will show that an equilibrium exist • Can be computed in polynomial time • Can be reached by a tatonement process
Market Equilibrium – A distributed load balancing mechanism. • Demand = Supply • No Production • Static Supply • Analogous to Capacities of APs • Prices • Analogous to Powers at APs • Utilities • Analogous to Received Signal Strength function
Analogousness is Inspirational • Our situation is analogous to Fisher setting with Linear Utilities
Fisher Setting Linear Utilities Goods Buyers
Clients assignment to APs APs Clients
Analogousness is Inspirational • Our situation is analogous to Fisher setting with Linear Utilities • Get inspiration from various algorithms for the Fisher setting and develop algorithms for our setting • We do not know any reduction – in fact there are some key differences
Differences from the Market Equilibrium setting • Demand • Price dependent in Market equilibrium setting • Power independent in our setting • Is demand splittable? • Yes for the Market equilibrium setting • No for our setting • Under mild assumptions, market equilibrium clears both sides but our solution requires clearance on either one side • Either all clients are served • Or all APs are saturated • This also means two separate linear programs for these two separate cases
Three Approaches for Market Equilibrium • Convex Programming Based • Eisenberg, Gale 1957 • Primal-Dual Based • Devanur, Papadimitriou, Saberi, Vazirani 2004 • Auction Based • Garg, Kapoor 2003
Three Approaches for Load Balancing • Linear Programming • Minimum weight complete matching • Primal-Dual • Uses properties of bipartite graph matching • No loop invariant! • Auction • 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 • This is essentially a distributed load balancing i.e., distributed congestion control problem
Linear Programming Based Solution • Create a complete bipartite graph • 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 • The weight between client i and AP j is wij = α.ln(dij) – ln(a) • Find the minimum weight complete matching
Theorem • Minimum weight matching is supported by a power assignment to APs • Power assignment are the dual variables • Two cases for the primal program • Solution can satisfy all clients • Solution can saturate all APs
Optimize the dual program • Choose Pj = eπj • Using the complementary slackness condition we will show that the minimum weight complete matching is supported by these power levels
Proof • Dual feasibility gives: -λi ≥ πj – wij= ln(Pj) – α.ln(dij) + ln(a) = ln(a.Pj.dij-α) • Complementary slackness gives: xij=1 implies -λi = ln(a.Pj.dij-α) • Together they imply that i is connected to the AP with the strongest received signal strength
Optimizing Dual Program • 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 • In practice, we need a tatonement process • 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
Cell-towers Cell-phones
10 40 10 30 Start with arbitrary non-zero powers
10 40 10 30 RSS Powers and Received Signal Strength 8 8 4 7
10 40 10 30 Max RSS Equality Edges 8 8
10 40 10 30 Equality Graph Desirable APs for each Client
10 40 10 30 Maximum Matching Maximum Matching, Deficiency = 1
10 40 10 30 Neighborhood Set T S Neighborhood Set
10 40 10 30 Deficiency of a Set T S Deficiency of S = Capacities on T - |S|
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
10 40 10 30 Maximum Matching Maximum Matching, Deficiency = 1
10 40 10 30 Most Deficient Sets Two Most Deficient Sets
10 40 10 30 Smallest Most Deficient Set S Pick the smallest. Use Super-modularity!
10 40 10 30 Neighborhood Set T S Neighborhood Set
10 40 10 30 Complement of the Neighborhood Set S Tc Complement of the Neighborhood Set
10 40 10r 30r Initialize r. S Tc Initialize r = 1
10 40 10r 30r About to start raising r. S Tc Start Raising r
10 40 10r 30r Equality edges about to be lost. S Tc Equality edge which will be lost
10 40 10r 30r Useless equality edges. S Tc Did not belong to any maximum matching
10 40 10r 30r Equality edges deleted. S Tc Let it go
10 40 10r 30r All other equality edges remain. S Tc All other equality edges are preserved!
10 40 20 60 A new equality edge added S Tc At some point a new equality appears. r =2