330 likes | 427 Views
Algorithms for Wireless Network Design : A Cell Breathing Heuristic. MohammadTaghi HajiAghayi U. of Maryland, College Park Joint work with Bahl , Jain, Mirrokni , Qui, Saberi. Application of Market Equilibrium in Distributed Load Balancing. Wireless devices
E N D
Algorithms for Wireless Network Design: A Cell Breathing Heuristic MohammadTaghiHajiAghayi U. of Maryland, College Park Joint work with Bahl, Jain, Mirrokni, Qui, Saberi
Application of Market Equilibrium in Distributed Load Balancing • Wireless devices • Cell-phones, laptops with WiFi cards • Referred as clients or users interchangeably • Demand connections to access points • Uniform for cell-phones (voice connection) • Non-uniform for laptops (application dependent)
Application of Market Equilibrium in Distributed Load Balancing • Access points • Cell-towers, Base stations, 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 and thus satisfying maximum demand
One Heuristic Solution • A client connects to the AP with reasonable signal and then 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 • Overall it has limited benefit in practice
Ideal Case • We would like a client connects to the AP with the best received signal strength • If an AP j transmitting at power level Pj then a client i at distance dij receives signal with strength Pij = a.Pj.dij-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 • 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 tatonnement process • Let’s start with economics and game theory
Market Equilibrium – A distributed load balancing mechanism. • Fisher setting with linear Utilities: • m buyers (each with budget Bi) and n goods for sale (each with quantity qj) • Each buyer has linear utility ui, i.e. utility of i is sumj uij xij where uij>= 0 is the utility of buyer i for good j and xij is the amount of good j bought by i. • A market equilibrium or market clearance is a price vector p that • maximizes utility sumj uij xij of buyer i subject to his budget sumj pj xij <= Bi • The demand and supply for each good j are equal sumj xij = qj (and thus the budgets are totally spent).
Fisher Setting with Linear Utilities Goods Buyers
Market Equilibrium – A distributed load balancing mechanism. • Static supply • corresponding to capacities of APs • Prices • corresponding to powers at APs • Utilities • Analogous to received signal strength function • Either all clients are served or all APs are saturated • Analogous to the market clearance(equiblirum) condition • Thus our situation is analogous to Fisher setting with linear utilities
Clients assignment to APs APs Clients
Analogousness Is Only Inspirational • 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
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 • 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
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 • Auction • Useful in dynamically changing situation
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 (unit demand) • The weight between client i and AP j is wij = c.ln(dij) – ln(a)= -ln(Pij/Pj) • 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 which is known at the beginning • 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) – c.ln(dij) + ln(a) = ln(a.Pj.dij-c) • Complementary slackness gives: xij=1 implies -λi = ln(a.Pj.dij-c) (Remember if an AP j transmitting at power level Pj then a client i at distance dij receives signal with strength Pij = a.Pj.dij-c) • Together they imply that i is connected to the AP with the strongest received signal strength
Unsplittable Demand • 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. • First we compute a basic feasible solution
Approximate Solution • All xij’s but a small number of xij’s are integral • Theorem: Number of xij which are integral is at least the number of clients – the number APs • Most clients are served unsplittably • Clients which are served splittably – do not serve them • The algorithm is almost optimal
Discrete Power Levels • Over the shelf APs have only fixed number of discrete power levels • Equilibrium may not exist • 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 in which every client is served – if exists under the tie breaking rule
Discrete Power Levels • Start with the maximum power levels for each AP • 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 • This is a distributed tatonnement process!
Proof • Suppose Pjis an equilibrium power level for the jth AP. • Inductively prove that when j reaches the power level Pjthen it will not be overloaded again. • 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. • We simulated these algorithm and observed meaningful results.
Thanks for your attention… تشکر Obrigado