Competitive On-Line Admission Control and Routing By: Gabi Kliot Presentation version.

27
Competitive On-Line Competitive On-Line Admission Control and Admission Control and Routing Routing By: Gabi Kliot Presentation version

Transcript of Competitive On-Line Admission Control and Routing By: Gabi Kliot Presentation version.

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/

Cont. ProofCont. Proof: -OPT can accept at most what ALG accepts +

on each level l edge of p. There are at most 2

level l edges included in p, so:

1/

1E(ALG)

21

E(OPT) 2(E(ALG) ) 2(E(ALG) 2E(ALG)) 6E(ALG)

E(OPT)E(ALG)6