Algorithms for Wireless Network Design: A Cell Breathing Heuristic MohammadTaghi HajiAghayi U. of Maryland, College Park Joint work with Bahl, Jain, Mirrokni, Qui, Saberi.
Download
Report
Transcript Algorithms for Wireless Network Design: A Cell Breathing Heuristic MohammadTaghi HajiAghayi U. of Maryland, College Park Joint work with Bahl, Jain, Mirrokni, Qui, Saberi.
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
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
Capacities
Cell-towers, Base stations, Wireless routers
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
M1 , u1 u1 j x1 j
q1
j
xij
M i , ui uij xij
j
M n , un unj xnj
j
uij xij
qj
qm
Market Equilibrium – A distributed
load balancing mechanism.
Static supply
Prices
Analogous to received signal strength function
Either all clients are served or all APs are saturated
corresponding to powers at APs
Utilities
corresponding to capacities of APs
Analogous to the market clearance(equiblirum) condition
Thus our situation is analogous to Fisher setting
with linear utilities
Clients assignment to APs
APs
Clients
D1 , u1 max P1 j x1 j
C1
j
xij
Pij xij
Di , ui max Pij xij
j
Dn , un max Pnj xnj
j
Cj
Cm
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
Primal-Dual Based
Eisenberg, Gale 1957
Devanur, Papadimitriou, Saberi, Vazirani 2004
Auction Based
Garg, Kapoor 2003
Three Approaches for
Load Balancing
Linear Programming
Primal-Dual
Minimum weight complete matching
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
Case 1 – Complete matching
covers all clients
minimize
iC , j A
wij xij
subject to
i C
x
ij
1
x
ij
Cj
jA
j A
iC
i C , j A
xij 0
Case 1 – Pick Dual Variables
minimize
iC , jA
wij xij
subject to
i C
x
ij
1
i
x
ij
Cj
j
jA
j A
iC
i C , j A
xij 0
Write Dual Program
maximize
C
iC
i
jA
j
j
subject to
i C , j A
j A
i j wij
j 0
xij
Optimize the dual program
Choose Pj = e π
Using the complementary slackness
condition we will show that the minimum
weight complete matching is supported by
these power levels
j
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
Case 2 – Complete matching
saturates all APs
minimize
iC , jA
wij xij
subject to
i C
x
ij
1
x
ij
Cj
jA
j A
iC
i C , j A
xij 0
Case 2 – The rest of the proof is
similar
Unsplittable Demand
minimize
iC , jA
wij xij
subject to
i C
x
jA
j A
1
D x
iC
i C , j A
ij
i ij
Cj
xij 0
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
Analysis of Basic Feasible
Solution
minimize
iC , jA
wij xij
subject to
i C
x
jA
j A
1
D x
iC
i C , j A
ij
i ij
Cj
xij 0
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 Pj is an equilibrium power level for the
jth AP.
Inductively prove that when j reaches the
power level Pj then 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 forObrigado
your attention…