Post on 27-Dec-2015
Competitive On-Line Competitive On-Line Admission Control and Admission Control and
RoutingRouting
By: Gabi Kliot
Presentation version
Admission control and virtual circuit routingCompetitive analysisAAP algorithmLower bound on unlimited deterministic alg
(Routing on the line)Randomized competitive algorithmsRandomized Base Tree call-control algorithm“Classify and Randomly Select” algorithmApplications of “CRS” on different parameters
Outline:Outline:
Virtual Circuit RoutingVirtual Circuit Routing: In order to use the network (transmit video..) the user
requests a “virtual” connection to be established between source and destination.
Although the rate of information through such a connection might vary in time, the network has to guarantee that the connection will support at least the bit rate that was agreed upon during the connection establishment. This guarantee is critical for real-time This guarantee is critical for real-time applications. applications.
In other words, establishing a connection corresponds to reserving the requested bandwidth along some path on the network.
Admission ControlAdmission Control: Algorithm that decides which requests to satisfy and which to reject and determines the route.
Competitive analysisCompetitive analysisCost problem:
Benefit problem:
1 A( * ( ) - OPTC
A( C* ( ) + OPT
Network ModelNetwork Model G=(V,E) |V|=n Capacity represents edge maximum bandwidth Call
Each call can be admitted or rejected No preemption of the calls
The goal is to maximize the benefitThe goal is to maximize the benefit
of the admitted callsof the admitted calls
e E u (e) > 0
( , , , , , )s tc v v r t d b
s t origin of the call destination of the call
- rate - starting time - duration - benefit
v vr t d b
AAP can deal with arbitrary parameters, but requires the rate of each call to be a “small fraction” of edge capacity
AAP algorithm AAP algorithm ((Awerbuch, Azar, Plotkin )
imin ( )
r*log 1
u ei
n
1+1/ OPT( ) (2 log 1)* ( ) 0< 1n AAP
GoalGoal::
AAP algorithm – Definitions:AAP algorithm – Definitions:j
k
j
- the set of all indices of the admitted calls after a decision
was made regarding call request j.
- the path of the admitted call k on G.
- the relative load on edge e just be
A
p
L (e)
1 n
j
fore considering cj+1
: = ..... , AAP must guarantee
L (e) 1 e
1L (e) = ( )
n
j k
kk A e p
c c
ru e
j
jL (e) 1+1/j
Cost function C ( ) the "cost of routing call j+1 on e".
Exponential edge cost function:
C ( ) ( ) 1 , ( =2 , 0< 1)
e
ne u e
AAP algorithmAAP algorithm
Intuition: we route only only on edges, whose relative load is small – only on edges not close to be saturated;
That way we spread the bandwidth of admitted calls “equally”.
j j
s t
j j
j
j-1e p
Given a call request C ,admit it if there exists a path p
on G from v to v such that :
Otherwise reject it.
In either case update L (e) ans C (e) .
1 C ( )( ) ie b
u e
rj
What should be proved:What should be proved:
i1+1/
i L ( ) 1
OPT( ) (2 log 1)* ( )
e
n AAP
Advantages of AAP:Advantages of AAP:– Applies to all networks– Deterministic
Disadvantages of AAP:Disadvantages of AAP:– No single communication request can require more then
1/log(n) of the capacity of a single edge.
There is a lower bound of on the competitive ratio of general deterministic on-line call-control algorithm (no assumptions)
( )n
How do we measure lower bounds?How do we measure lower bounds?
We use an adversary algorithmadversary algorithm, that presents the worst to the ALG, making him act badly, while OPT can still act well.
Lower bound on AAP:Lower bound on AAP:
It can be proved that any on-line algorithm has competitive ratio of even if all requested rates are very small (like AAP)
(log )n
Lower boundsLower bounds
Routing on the line:Routing on the line:
I.
II.
n1 2 3 n-1
ALG rejects (1,n), OPT accepts
ALG( )=0, OPT( )=1
ALG rejects all others, OPT accepts
1 ALG( ) OPT( ) for c n
c
There is a need for randomized algorithm !!!
When considering a randomized on-line algorithm, the benefit gained by algorithm is the expected benefitexpected benefit, where the expectation is taken over the random choices of the algorithm.
We analyze our algorithm against adversary (worst ).
Randomized on-line algorithmRandomized on-line algorithm
Base Tree Algorithm:Base Tree Algorithm:
GoalGoal:: maximize the number of edge-disjoint admitted calls
The Base Tree Alg is O(log(n)) competitive
s t
r = 1, b = 1, d =
no preemption C=(v ,v )
tree, e E u(e)=1
Assumptions:Assumptions:
The Randomized Base Tree alg.The Randomized Base Tree alg.
Classify all edges into maximum log(n) classes; Let N be the maximum assigned level to the edge of the tree.
Select uniformly with probability 1/N one of the classes
Apply greedy algorithm to the calls from that class, ignoring all others
Classification Algorithm:Classification Algorithm:
1 2 1 2
|V | |V | Pick v V, such that V-{v}= V ,V , |V |<= , |V |<=
2 2 level(v) l (l is initialized to 1)
Apply this recursively to each of the subtrees with l l+1
v : 1 level(v) log(n)
e ( u,v ) E
l(e)=min l(u),l(v)
level( call C ) l , l=min{level(e) pathC }
3
2
1
3
11
3
2
44
3
33
2
1
4
3
33
23
3
33
2
The above algorithm classifies the calls into O(log(n)) disjoint classes
Example:Example:
Classification Algorithm:Classification Algorithm:
Claim 1:Claim 1: Any 2 nodes in the same class are separated by a node of a lower-numbered level
Claim 2:Claim 2: Let p be a call of class l. Then there are at most 2 edges of level l included in p.
Proof:Proof:
j kli ll l l l m
S D
l ll
LemmaLemma: The on-line alg applied to the calls of a
single class is 2-competitive.
Claim 3:Claim 3: Let P be a set of paths of the same level l sharing an edge. Then, all paths of P share a level l edge.
Proof:Proof:
Vpl
l
Vq
pq
l lpq
V
m
1ALG(
) OPT( )2
Proof of the lemma 1Proof of the lemma 1:Let p be a call not accepted by our alg, that is, when arrives
there is already a call q that was accepted and intersects p.Then p and q share an edge of level l. There can be at most 2 such edges, so OPT can accept at
most 2 calls instead of p, while ALG may accept only one.
LemmaLemma: The on-line alg applied to the calls of a single
class is 2-competitive.
The Randomized Base Tree alg.The Randomized Base Tree alg.Theorem:Theorem: The Base algorithm is O(log(n)) competitive.
Proof:Proof:
N
i=1
N
i=1
i
i
|OPT| |OPT( ) |
1 1 1 1E(ALG) |OPT( ) | | |
2 2OPT
N N
Again, It can be shown using the structure called “adversary tree” the lower bound of on the competitive ratio of any online randomized alg.(log )n
Bibliography:Bibliography: “Throughput-Competitive On-Line Routing”, B.
Awerbuch, Y. Azar, S. Plotkin “Competitive Non-Preemptive Call Control”, B.
Awerbuch, Y. Bartal, A. Fiat, A. Rosen. “Online Computation and Competitive Analysis”,
Allan Borodin & Ran El-Yaniv
GoalGoal: deal with arbitrary call benefits, rates and durations.
““Classify and Randomly Select”Classify and Randomly Select”
Let A’ be C-competitive alg tolerating values of some
parameter p that differs by a factor at most 2 We define a randomized alg A’’. A’’ is O(C*log(M)) competitive
max ( )( 2)
min ( )
value p
value p
The introduction of each additional varying parameter increases
the competitive ratio by a factor of O(log(M))
max ( )
min ( )
value pM
value p
A’’ creates in on-line manner at most L classes, selects one and uses A’ while presenting to it all calls of the selected class
j-1 j
j
i
Upon arrival of new call with p such that 2 p 2
A'' assigns it into class l
If l doesn't yet exist - A'' creates it and
If A'' still didn't choose any class it chooses to select
a new
1 class with probability .
L
““Classify and Randomly Select”Classify and Randomly Select”
parameter p of A’’:parameter p of A’’:
max ( )
min ( )
value pM
value p
Define L=log(M)
Theorem:Theorem:max val(p)
2,min val(p)
max val(p) M
min val(p)
If A' is C-competitive dealing with p, such that
then A'' is O(C*logM) competitive dealing with p such that
Proof:Proof:
““Classify and Randomly Select”Classify and Randomly Select”
L
ii 1
L L
i ii 1 i 1
B benefit
B(OPT( )) B(OPT( ))
1 1 1 1E(A'')=E(B(A''( ))) B(A '( )) B(OPT( )) B(OPT( ))
L L c c*L
A’ is C-competitive
Any C-competitive call control alg for equal benefits can be transformed into O(C*log(M)) competitive randomized alg for the call control problem with
arbitrary benefitsarbitrary benefits. Any C-competitive call control alg that handles infinite
durations can be transformed into 2C competitive randomized alg to handle durations that vary by a factor of at most 2, and can be transformed into O(C*log(T)) competitive randomized alg for arbitrary durationsarbitrary durations.
Same for ratesrates.
Applications of “Classify and Randomly Select”Applications of “Classify and Randomly Select”
We improve now our base alg to be O(log(n)) competitive, even if
rates vary by a factor of at most 2.
LemmaLemma: If all calls have rate r such that , for
some , then greedy on-line alg applied to the calls of
single class l defined in the base alg, is 6 competitive.
r 2
ProofProof: -Let p be a call of rate r nor accepted by greedy alg. That
is, there is an edge such that when p arrives the
sum of the rates of the accepted calls that include e is
greater than 1-r.
-Consider the accepted calls that include e and p; they all
of the same level l and share a level l edge.
-ALG has accumulated at least benefit till far
due to the calls passing on e (the minimum load that can
overload e).
-On the other hand OPT can accept at most
additional calls including this level l edge.
e p
1/ 2
1/