To jump the queue or wait my turn? D. Manjunath IIT Bombay January - - PowerPoint PPT Presentation

to jump the queue or wait my turn
SMART_READER_LITE
LIVE PREVIEW

To jump the queue or wait my turn? D. Manjunath IIT Bombay January - - PowerPoint PPT Presentation

To jump the queue or wait my turn? D. Manjunath IIT Bombay January 14, 2014 D. Manjunath (IIT Bombay) To jump the queue or wait my turn? January 14, 2014 1 / 24 Bidding for priorities A single server queue has customers arriving according


slide-1
SLIDE 1

To jump the queue or wait my turn?

  • D. Manjunath

IIT Bombay

January 14, 2014

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 1 / 24

slide-2
SLIDE 2

Bidding for priorities

A single server queue has customers arriving according to a homogeneous Poisson process of rate λ.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 2 / 24

slide-3
SLIDE 3

Bidding for priorities

A single server queue has customers arriving according to a homogeneous Poisson process of rate λ. Service times are i.i.d. with distribution B(y) and mean 1

µ; Define

ρ := λ

µ.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 2 / 24

slide-4
SLIDE 4

Bidding for priorities

A single server queue has customers arriving according to a homogeneous Poisson process of rate λ. Service times are i.i.d. with distribution B(y) and mean 1

µ; Define

ρ := λ

µ.

There is no balking from the system; all arrivals receive service.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 2 / 24

slide-5
SLIDE 5

Bidding for priorities

A single server queue has customers arriving according to a homogeneous Poisson process of rate λ. Service times are i.i.d. with distribution B(y) and mean 1

µ; Define

ρ := λ

µ.

There is no balking from the system; all arrivals receive service. An arriving customer bids to pay X rupees for service.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 2 / 24

slide-6
SLIDE 6

Bidding for priorities

A single server queue has customers arriving according to a homogeneous Poisson process of rate λ. Service times are i.i.d. with distribution B(y) and mean 1

µ; Define

ρ := λ

µ.

There is no balking from the system; all arrivals receive service. An arriving customer bids to pay X rupees for service. Higher bids provide higher priorities with either preemptive resume or non preemptive priority service.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 2 / 24

slide-7
SLIDE 7

Bidding for priorities

A single server queue has customers arriving according to a homogeneous Poisson process of rate λ. Service times are i.i.d. with distribution B(y) and mean 1

µ; Define

ρ := λ

µ.

There is no balking from the system; all arrivals receive service. An arriving customer bids to pay X rupees for service. Higher bids provide higher priorities with either preemptive resume or non preemptive priority service. Assume that the bids are i.i.d. and chosen according to a continuous distribution B(x).

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 2 / 24

slide-8
SLIDE 8

Bidding for priorities

Sojourn time of customer bidding x, W (x), has three components.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 3 / 24

slide-9
SLIDE 9

Bidding for priorities

Sojourn time of customer bidding x, W (x), has three components.

Its own service time which has mean 1

µ.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 3 / 24

slide-10
SLIDE 10

Bidding for priorities

Sojourn time of customer bidding x, W (x), has three components.

Its own service time which has mean 1

µ.

Waiting caused by those already in system and having bids higher than

  • x. From Little’s law and PASTA property, the expectation will be

1 µ ∞

x

W (y) (λdB(y))

  • .
  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 3 / 24

slide-11
SLIDE 11

Bidding for priorities

Sojourn time of customer bidding x, W (x), has three components.

Its own service time which has mean 1

µ.

Waiting caused by those already in system and having bids higher than

  • x. From Little’s law and PASTA property, the expectation will be

1 µ ∞

x

W (y) (λdB(y))

  • .

Waiting time due to those that come after its arrival but during its stay in the system and bid higher than x. This is 1 µ W (x) ∞

x

λdB(y)

  • .
  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 3 / 24

slide-12
SLIDE 12

Bidding for priorities

Sojourn time of customer bidding x, W (x), has three components.

Its own service time which has mean 1

µ.

Waiting caused by those already in system and having bids higher than

  • x. From Little’s law and PASTA property, the expectation will be

1 µ ∞

x

W (y) (λdB(y))

  • .

Waiting time due to those that come after its arrival but during its stay in the system and bid higher than x. This is 1 µ W (x) ∞

x

λdB(y)

  • .

Adding the three terms, and after some work, we obtain W (x) = W0 (1 − ρ + ρB(x))2 where W0 is mean residual service time of customer in service for non preemptive priority service and 1/µ for preemptive priority service.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 3 / 24

slide-13
SLIDE 13

Adding value to time

Now let each customer have a non negative delay sensitivity parameter V . Specifically, let V be cost per unit waiting time.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 4 / 24

slide-14
SLIDE 14

Adding value to time

Now let each customer have a non negative delay sensitivity parameter V . Specifically, let V be cost per unit waiting time. Assume that V of an arriving customer is i.i.d. with distribution F(v), F(v) has a density with support in (a, b), i.e., F(v) =

  • 0 < a < v

1 v > b F(v) is the delay sensitivity profile of the customer population.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 4 / 24

slide-15
SLIDE 15

Adding value to time

Now let each customer have a non negative delay sensitivity parameter V . Specifically, let V be cost per unit waiting time. Assume that V of an arriving customer is i.i.d. with distribution F(v), F(v) has a density with support in (a, b), i.e., F(v) =

  • 0 < a < v

1 v > b F(v) is the delay sensitivity profile of the customer population. Let bidding function X(v) denote bid of customers of sensitivity v.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 4 / 24

slide-16
SLIDE 16

Adding value to time

Now let each customer have a non negative delay sensitivity parameter V . Specifically, let V be cost per unit waiting time. Assume that V of an arriving customer is i.i.d. with distribution F(v), F(v) has a density with support in (a, b), i.e., F(v) =

  • 0 < a < v

1 v > b F(v) is the delay sensitivity profile of the customer population. Let bidding function X(v) denote bid of customers of sensitivity v. Following preceding notation, total cost for customer of sensitivity v is C(v) := X(v) + vW (X(v)).

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 4 / 24

slide-17
SLIDE 17

Adding value to time (contd.)

Let BX(x) be the distribution of the bids under bidding policy X(v) and W X(x) be the waiting time of a customers that bid x under policy X.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 5 / 24

slide-18
SLIDE 18

Adding value to time (contd.)

Let BX(x) be the distribution of the bids under bidding policy X(v) and W X(x) be the waiting time of a customers that bid x under policy X. Now assume customers are strategic—X(v) minimises total cost C(v).

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 5 / 24

slide-19
SLIDE 19

Adding value to time (contd.)

Let BX(x) be the distribution of the bids under bidding policy X(v) and W X(x) be the waiting time of a customers that bid x under policy X. Now assume customers are strategic—X(v) minimises total cost C(v). Bidding function X(v) is said to be in equilibrium if no individual customer has an incentive to deviate from it.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 5 / 24

slide-20
SLIDE 20

Adding value to time (contd.)

Let BX(x) be the distribution of the bids under bidding policy X(v) and W X(x) be the waiting time of a customers that bid x under policy X. Now assume customers are strategic—X(v) minimises total cost C(v). Bidding function X(v) is said to be in equilibrium if no individual customer has an incentive to deviate from it. If customers follow an equilibrium bidding policy, then C(v) is minimum for each v, and a customer of sensitivity v cannot unilaterally deviate from the equilibrium X(v) and lower its C(v).

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 5 / 24

slide-21
SLIDE 21

Characterising stable policies

Lemma

If X(v) is a stable bidding function, BX(x) is continuous and strictly increasing in x.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 6 / 24

slide-22
SLIDE 22

Characterising stable policies

Lemma

If X(v) is a stable bidding function, BX(x) is continuous and strictly increasing in x.

Property

There exists a continuous X(v) that is a stable bidding policy. For such a policy, the following hold.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 6 / 24

slide-23
SLIDE 23

Characterising stable policies

Lemma

If X(v) is a stable bidding function, BX(x) is continuous and strictly increasing in x.

Property

There exists a continuous X(v) that is a stable bidding policy. For such a policy, the following hold.

1 W X(x) is strictly decreasing in x.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 6 / 24

slide-24
SLIDE 24

Characterising stable policies

Lemma

If X(v) is a stable bidding function, BX(x) is continuous and strictly increasing in x.

Property

There exists a continuous X(v) that is a stable bidding policy. For such a policy, the following hold.

1 W X(x) is strictly decreasing in x. 2 C X(v) is continuous and strictly increasing. Further, it is concave in

v and dC(v)

dv

= W (x).

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 6 / 24

slide-25
SLIDE 25

Characterising stable policies

Lemma

If X(v) is a stable bidding function, BX(x) is continuous and strictly increasing in x.

Property

There exists a continuous X(v) that is a stable bidding policy. For such a policy, the following hold.

1 W X(x) is strictly decreasing in x. 2 C X(v) is continuous and strictly increasing. Further, it is concave in

v and dC(v)

dv

= W (x).

3 If v1 < v2 then X(v1) < X(v2).

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 6 / 24

slide-26
SLIDE 26

Characterising stable policies

Lemma

If X(v) is a stable bidding function, BX(x) is continuous and strictly increasing in x.

Property

There exists a continuous X(v) that is a stable bidding policy. For such a policy, the following hold.

1 W X(x) is strictly decreasing in x. 2 C X(v) is continuous and strictly increasing. Further, it is concave in

v and dC(v)

dv

= W (x).

3 If v1 < v2 then X(v1) < X(v2). 4 B(X(v)) = F(v).

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 6 / 24

slide-27
SLIDE 27

Revenue to the server

For v ∈ (a, b), X(v) = v 2λW0y (1 − ρ − ρF(y))3 dF(y) is a stable bidding policy. W0 is as before—mean residual service time for non preemptive priority policy and 1/mu for preemptive prioirity policy.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 7 / 24

slide-28
SLIDE 28

Revenue to the server

For v ∈ (a, b), X(v) = v 2λW0y (1 − ρ − ρF(y))3 dF(y) is a stable bidding policy. W0 is as before—mean residual service time for non preemptive priority policy and 1/mu for preemptive prioirity policy. Fixing the arrival rate and the delay sensitivity function F(v), a bidding policy X(v) will yield an expected revenue rate of RX(λ, F(v)) = λ

  • v

X(v)dF(v).

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 7 / 24

slide-29
SLIDE 29

Properties of the Revenue Function

1 Let F1(v) be a sensitivity profile and F2(v) = F1(v − v0) where

v0 > 0. Then R(λ, F1(v)) < R(λ, F2(v)).

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 8 / 24

slide-30
SLIDE 30

Properties of the Revenue Function

1 Let F1(v) be a sensitivity profile and F2(v) = F1(v − v0) where

v0 > 0. Then R(λ, F1(v)) < R(λ, F2(v)).

2 If λ1 < λ2 then R(λ1, F(v)) < R(λ2, F(v))

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 8 / 24

slide-31
SLIDE 31

Properties of the Revenue Function

1 Let F1(v) be a sensitivity profile and F2(v) = F1(v − v0) where

v0 > 0. Then R(λ, F1(v)) < R(λ, F2(v)).

2 If λ1 < λ2 then R(λ1, F(v)) < R(λ2, F(v)) 3 Consider the scaling of the sensitivity profile, i.e., consider F(αv) for

α > 0. Then R(λ, F(v)) < R(λ, F(αv)) when α > 1.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 8 / 24

slide-32
SLIDE 32

Properties of the Revenue Function

1 Let F1(v) be a sensitivity profile and F2(v) = F1(v − v0) where

v0 > 0. Then R(λ, F1(v)) < R(λ, F2(v)).

2 If λ1 < λ2 then R(λ1, F(v)) < R(λ2, F(v)) 3 Consider the scaling of the sensitivity profile, i.e., consider F(αv) for

α > 0. Then R(λ, F(v)) < R(λ, F(αv)) when α > 1.

4 Let a < a1 < b, and define

F1(v) =    v < a1

F(v) b

a1 dF(x)

v ≥ a1 Then R(λ, F(v)) < R(λ, F1(v)).

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 8 / 24

slide-33
SLIDE 33

Introducing a Second Queue

To the bidding queue, add a parallel FIFO queue that has service rate µ1 while the bidding queue has service rate µ2.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 9 / 24

slide-34
SLIDE 34

Introducing a Second Queue

To the bidding queue, add a parallel FIFO queue that has service rate µ1 while the bidding queue has service rate µ2. Thus arriving customers make two decisions—(1) which queue to join, and (2) if joining the bidding queue, what should be the bid.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 9 / 24

slide-35
SLIDE 35

Introducing a Second Queue

To the bidding queue, add a parallel FIFO queue that has service rate µ1 while the bidding queue has service rate µ2. Thus arriving customers make two decisions—(1) which queue to join, and (2) if joining the bidding queue, what should be the bid. There is no balking.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 9 / 24

slide-36
SLIDE 36

Introducing a Second Queue

To the bidding queue, add a parallel FIFO queue that has service rate µ1 while the bidding queue has service rate µ2. Thus arriving customers make two decisions—(1) which queue to join, and (2) if joining the bidding queue, what should be the bid. There is no balking. If a customer decides to receive service from the FIFO queue, he receives a reward of M rupees.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 9 / 24

slide-37
SLIDE 37

Introducing a Second Queue

To the bidding queue, add a parallel FIFO queue that has service rate µ1 while the bidding queue has service rate µ2. Thus arriving customers make two decisions—(1) which queue to join, and (2) if joining the bidding queue, what should be the bid. There is no balking. If a customer decides to receive service from the FIFO queue, he receives a reward of M rupees. Like before, we assume oblivious routing and oblivious bidding.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 9 / 24

slide-38
SLIDE 38

Introducing a Second Queue

To the bidding queue, add a parallel FIFO queue that has service rate µ1 while the bidding queue has service rate µ2. Thus arriving customers make two decisions—(1) which queue to join, and (2) if joining the bidding queue, what should be the bid. There is no balking. If a customer decides to receive service from the FIFO queue, he receives a reward of M rupees. Like before, we assume oblivious routing and oblivious bidding. Customers are strategic—each one minimises its individual cost function.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 9 / 24

slide-39
SLIDE 39

More Notation

An arrival with sensitivity v has the following decisions

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 10 / 24

slide-40
SLIDE 40

More Notation

An arrival with sensitivity v has the following decisions

Which queue? Chooses FIFO queue with probability p(v). p(v) : ℜ+ → [0, 1] is called the routing function.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 10 / 24

slide-41
SLIDE 41

More Notation

An arrival with sensitivity v has the following decisions

Which queue? Chooses FIFO queue with probability p(v). p(v) : ℜ+ → [0, 1] is called the routing function. What price? Bid X(v) to be paid if it joins bidding queue; X(v) : ℜ+ → ℜ+ is the bidding function.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 10 / 24

slide-42
SLIDE 42

More Notation

An arrival with sensitivity v has the following decisions

Which queue? Chooses FIFO queue with probability p(v). p(v) : ℜ+ → [0, 1] is called the routing function. What price? Bid X(v) to be paid if it joins bidding queue; X(v) : ℜ+ → ℜ+ is the bidding function. S(v) := (p(v), X(v)) is strategy of customer of class v.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 10 / 24

slide-43
SLIDE 43

More Notation

An arrival with sensitivity v has the following decisions

Which queue? Chooses FIFO queue with probability p(v). p(v) : ℜ+ → [0, 1] is called the routing function. What price? Bid X(v) to be paid if it joins bidding queue; X(v) : ℜ+ → ℜ+ is the bidding function. S(v) := (p(v), X(v)) is strategy of customer of class v.

S(v) is a stable strategy if no customer has an incentive to deviate.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 10 / 24

slide-44
SLIDE 44

More Notation

An arrival with sensitivity v has the following decisions

Which queue? Chooses FIFO queue with probability p(v). p(v) : ℜ+ → [0, 1] is called the routing function. What price? Bid X(v) to be paid if it joins bidding queue; X(v) : ℜ+ → ℜ+ is the bidding function. S(v) := (p(v), X(v)) is strategy of customer of class v.

S(v) is a stable strategy if no customer has an incentive to deviate. λ1 = λ ∞

0 p(v)dF(v) is the arrival rate to the FIFO queue

λ2 = λ − λ1 is the arrival rate to the bidding queue ρ1 = λ1/µ1 and ρ2 = λ2/µ2.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 10 / 24

slide-45
SLIDE 45

Remarks

Delay in FIFO queue is independent of the class; W1 is the expectation.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 11 / 24

slide-46
SLIDE 46

Remarks

Delay in FIFO queue is independent of the class; W1 is the expectation. Delay in bidding queue is a function of v; W2(v) is the expectation.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 11 / 24

slide-47
SLIDE 47

Remarks

Delay in FIFO queue is independent of the class; W1 is the expectation. Delay in bidding queue is a function of v; W2(v) is the expectation. Let X E(v) be a equilibrium strategy; equilibrium will be Wardrop and the following will be true.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 11 / 24

slide-48
SLIDE 48

Remarks

Delay in FIFO queue is independent of the class; W1 is the expectation. Delay in bidding queue is a function of v; W2(v) is the expectation. Let X E(v) be a equilibrium strategy; equilibrium will be Wardrop and the following will be true.

p(v) = 1 implies vW1 < X(v) + W2(X E(v)).

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 11 / 24

slide-49
SLIDE 49

Remarks

Delay in FIFO queue is independent of the class; W1 is the expectation. Delay in bidding queue is a function of v; W2(v) is the expectation. Let X E(v) be a equilibrium strategy; equilibrium will be Wardrop and the following will be true.

p(v) = 1 implies vW1 < X(v) + W2(X E(v)). p(v) = 0 implies vW1 > X(v) + W2(X E(v)).

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 11 / 24

slide-50
SLIDE 50

Remarks

Delay in FIFO queue is independent of the class; W1 is the expectation. Delay in bidding queue is a function of v; W2(v) is the expectation. Let X E(v) be a equilibrium strategy; equilibrium will be Wardrop and the following will be true.

p(v) = 1 implies vW1 < X(v) + W2(X E(v)). p(v) = 0 implies vW1 > X(v) + W2(X E(v)). 0 < p(v) < 1 implies vW1 − M = X E(v) + W2(X E(v)).

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 11 / 24

slide-51
SLIDE 51

A Theorem

For 0 ≤ t ≤ 1 and a ≤ v1 ≤ b define X E(v) = v 2λ2W0y (1 − ρ2 − ρ2F1(y))3 dF1(y) (pE(v), X E(v)) is a stable policy with v1 as above.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 12 / 24

slide-52
SLIDE 52

A Theorem

For 0 ≤ t ≤ 1 and a ≤ v1 ≤ b define X E(v) = v 2λ2W0y (1 − ρ2 − ρ2F1(y))3 dF1(y) (pE(v), X E(v)) is a stable policy with v1 as above.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 12 / 24

slide-53
SLIDE 53

A Theorem

For 0 ≤ t ≤ 1 and a ≤ v1 ≤ b define pE(v) =      for v > v1, t for v = v1, 1 for v < v1. X E(v) = v 2λ2W0y (1 − ρ2 − ρ2F1(y))3 dF1(y) (pE(v), X E(v)) is a stable policy with v1 as above.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 12 / 24

slide-54
SLIDE 54

A Theorem

For 0 ≤ t ≤ 1 and a ≤ v1 ≤ b define pE(v) =      for v > v1, t for v = v1, 1 for v < v1. F1(v) :=        v ≤ v1

F(v) b

v1 dF(v)

v1 ≤ v ≤ b, 1 v > b. X E(v) = v 2λ2W0y (1 − ρ2 − ρ2F1(y))3 dF1(y) (pE(v), X E(v)) is a stable policy with v1 as above.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 12 / 24

slide-55
SLIDE 55

A Theorem

For 0 ≤ t ≤ 1 and a ≤ v1 ≤ b define pE(v) =      for v > v1, t for v = v1, 1 for v < v1. F1(v) :=        v ≤ v1

F(v) b

v1 dF(v)

v1 ≤ v ≤ b, 1 v > b. X E(v) = v 2λ2W0y (1 − ρ2 − ρ2F1(y))3 dF1(y) Let W1 be expected delay in FIFO queue with arrival rate λ1 and W2(v) expected delay in bidding queue with bidding function X E(v). (pE(v), X E(v)) is a stable policy with v1 as above.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 12 / 24

slide-56
SLIDE 56

A Theorem

For 0 ≤ t ≤ 1 and a ≤ v1 ≤ b define pE(v) =      for v > v1, t for v = v1, 1 for v < v1. F1(v) :=        v ≤ v1

F(v) b

v1 dF(v)

v1 ≤ v ≤ b, 1 v > b. X E(v) = v 2λ2W0y (1 − ρ2 − ρ2F1(y))3 dF1(y) Let W1 be expected delay in FIFO queue with arrival rate λ1 and W2(v) expected delay in bidding queue with bidding function X E(v). Let v1 satisfy v1W2(v1) = v1W1 − M. (pE(v), X E(v)) is a stable policy with v1 as above.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 12 / 24

slide-57
SLIDE 57

Proof Sketch

For v < v1, we have M = v1(W1 − W2(v1)) > v(W1 − W2(v1)) This implies vW1 − M < vW2(v1)) and hence for v < v1, we have pE(v) = 1;

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 13 / 24

slide-58
SLIDE 58

Proof Sketch

For v < v1, we have M = v1(W1 − W2(v1)) > v(W1 − W2(v1)) This implies vW1 − M < vW2(v1)) and hence for v < v1, we have pE(v) = 1; For v > v1, using concavity of C(v) and the property that

dC(v) dv

= W (x) it can be shown that for ǫ > 0, C(v1 + ǫ) < (v1 + ǫ)W1 − M implying that pE(v) = 0.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 13 / 24

slide-59
SLIDE 59

Discussion

v1 satisfying v1W2(v1) = v1W1 − M is unique.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 14 / 24

slide-60
SLIDE 60

Discussion

v1 satisfying v1W2(v1) = v1W1 − M is unique. If p(v) is such that the resulting F(v) has a density, then Wardrop equilibrium routing function is of the threshold type

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 14 / 24

slide-61
SLIDE 61

Discussion

v1 satisfying v1W2(v1) = v1W1 − M is unique. If p(v) is such that the resulting F(v) has a density, then Wardrop equilibrium routing function is of the threshold type Remark: By moving M to the ‘other side’ it can also be interpreted as the minimum bid in the bidding queue and X(v) will be the ‘excess’ bid over M. v1W2(v1) = v1W1 − M v1W2(v1) + M = v1W1

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 14 / 24

slide-62
SLIDE 62

Discussion (contd.)

For a fixed λ, F(v) and µ2, the revenue rate at equilibrium decreases with increasing µ1.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 15 / 24

slide-63
SLIDE 63

Discussion (contd.)

For a fixed λ, F(v) and µ2, the revenue rate at equilibrium decreases with increasing µ1. Decreasing λ decreases revenue rate.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 15 / 24

slide-64
SLIDE 64

Discussion (contd.)

For a fixed λ, F(v) and µ2, the revenue rate at equilibrium decreases with increasing µ1. Decreasing λ decreases revenue rate. Recall that the left truncation of the sensitivity function increases the revenue rate in a single server queue.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 15 / 24

slide-65
SLIDE 65

Discussion (contd.)

For a fixed λ, F(v) and µ2, the revenue rate at equilibrium decreases with increasing µ1. Decreasing λ decreases revenue rate. Recall that the left truncation of the sensitivity function increases the revenue rate in a single server queue. This leads us to ask the following question.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 15 / 24

slide-66
SLIDE 66

Discussion (contd.)

For a fixed λ, F(v) and µ2, the revenue rate at equilibrium decreases with increasing µ1. Decreasing λ decreases revenue rate. Recall that the left truncation of the sensitivity function increases the revenue rate in a single server queue. This leads us to ask the following question.

Assume that a total capacity of µ is available

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 15 / 24

slide-67
SLIDE 67

Discussion (contd.)

For a fixed λ, F(v) and µ2, the revenue rate at equilibrium decreases with increasing µ1. Decreasing λ decreases revenue rate. Recall that the left truncation of the sensitivity function increases the revenue rate in a single server queue. This leads us to ask the following question.

Assume that a total capacity of µ is available Of this capacity, µ1 is allocated to the FIFO queue and µ2 = µ − µ1 is allocated to the bidding queue.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 15 / 24

slide-68
SLIDE 68

Discussion (contd.)

For a fixed λ, F(v) and µ2, the revenue rate at equilibrium decreases with increasing µ1. Decreasing λ decreases revenue rate. Recall that the left truncation of the sensitivity function increases the revenue rate in a single server queue. This leads us to ask the following question.

Assume that a total capacity of µ is available Of this capacity, µ1 is allocated to the FIFO queue and µ2 = µ − µ1 is allocated to the bidding queue. How does revenue vary as a function of µ1?

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 15 / 24

slide-69
SLIDE 69

Numerical Results

Example 1: λ = 0.5, µ = 1 F(v) =

v 100 for 0 ≤ v ≤ 100.

Example 2: λ = 0.9, µ = 1 F(v) = v0.5

10 for 0 ≤ v ≤ 100.

Revenue as a function of µ2 with M = 0

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 16 / 24

slide-70
SLIDE 70

Numerical Results

Example 1: λ = 0.5, µ = 1 F(v) =

v 100 for 0 ≤ v ≤ 100.

Example 2: λ = 0.9, µ = 1 F(v) = v0.5

10 for 0 ≤ v ≤ 100.

Revenue as a function of µ2 with M = 0

0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 20 40 60 80 100 120 140 160 µ2 Revenue

Example 1

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 16 / 24

slide-71
SLIDE 71

Numerical Results

Example 1: λ = 0.5, µ = 1 F(v) =

v 100 for 0 ≤ v ≤ 100.

Example 2: λ = 0.9, µ = 1 F(v) = v0.5

10 for 0 ≤ v ≤ 100.

Revenue as a function of µ2 with M = 0

0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 20 40 60 80 100 120 140 160 µ2 Revenue

Example 1

0.2 0.4 0.6 0.8 1 500 1000 1500 2000 2500 µ2 Revenue

Example 2

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 16 / 24

slide-72
SLIDE 72

Numerical Results (contd.)

Example 1: λ = 0.5, µ = 1 F(v) =

v 100 for 0 ≤ v ≤ 100.

Example 2: λ = 0.9, µ = 1 F(v) = v0.5

10 for 0 ≤ v ≤ 100.

Threshold as a function of M for µ1 = 0.5.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 17 / 24

slide-73
SLIDE 73

Numerical Results (contd.)

Example 1: λ = 0.5, µ = 1 F(v) =

v 100 for 0 ≤ v ≤ 100.

Example 2: λ = 0.9, µ = 1 F(v) = v0.5

10 for 0 ≤ v ≤ 100.

Threshold as a function of M for µ1 = 0.5.

1000 2000 3000 4000 5000 60 65 70 75 80 85 90 95 100 M v1

Example 1

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 17 / 24

slide-74
SLIDE 74

Numerical Results (contd.)

Example 1: λ = 0.5, µ = 1 F(v) =

v 100 for 0 ≤ v ≤ 100.

Example 2: λ = 0.9, µ = 1 F(v) = v0.5

10 for 0 ≤ v ≤ 100.

Threshold as a function of M for µ1 = 0.5.

1000 2000 3000 4000 5000 60 65 70 75 80 85 90 95 100 M v1

Example 1

2 4 6 8 10 x 10

4

29 29.5 30 30.5 31 M v1

Example 2

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 17 / 24

slide-75
SLIDE 75

Numerical Results (contd.)

Example 1: λ = 0.5, µ = 1 F(v) =

v 100 for 0 ≤ v ≤ 100.

Example 2: λ = 0.9, µ = 1 F(v) = v0.5

10 for 0 ≤ v ≤ 100.

Let µ2,min be the minimum service rate required to earn positive revenue. µ2,min as a function of M.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 18 / 24

slide-76
SLIDE 76

Numerical Results (contd.)

Example 1: λ = 0.5, µ = 1 F(v) =

v 100 for 0 ≤ v ≤ 100.

Example 2: λ = 0.9, µ = 1 F(v) = v0.5

10 for 0 ≤ v ≤ 100.

Let µ2,min be the minimum service rate required to earn positive revenue. µ2,min as a function of M.

500 1000 1500 2000 0.25 0.3 0.35 0.4 0.45 0.5 M µ2 Minimum

Example 1

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 18 / 24

slide-77
SLIDE 77

Numerical Results (contd.)

Example 1: λ = 0.5, µ = 1 F(v) =

v 100 for 0 ≤ v ≤ 100.

Example 2: λ = 0.9, µ = 1 F(v) = v0.5

10 for 0 ≤ v ≤ 100.

Let µ2,min be the minimum service rate required to earn positive revenue. µ2,min as a function of M.

500 1000 1500 2000 0.25 0.3 0.35 0.4 0.45 0.5 M µ2 Minimum

Example 1

2000 4000 6000 8000 10000 0.06 0.065 0.07 0.075 0.08 0.085 0.09 0.095 0.1 M µ2 minimum

Example 2

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 18 / 24

slide-78
SLIDE 78

Lessons

For a fixed µ, the revenue can actually increase if some capacity is allocated to a FIFO queue.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 19 / 24

slide-79
SLIDE 79

Lessons

For a fixed µ, the revenue can actually increase if some capacity is allocated to a FIFO queue. If µ1 < λ then some arrivals will choose the bidding queue and there will be non zero revenue.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 19 / 24

slide-80
SLIDE 80

Lessons

For a fixed µ, the revenue can actually increase if some capacity is allocated to a FIFO queue. If µ1 < λ then some arrivals will choose the bidding queue and there will be non zero revenue. However, if µ1 > λ, then for sufficiently large M, there can be no revenue.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 19 / 24

slide-81
SLIDE 81

Lessons

For a fixed µ, the revenue can actually increase if some capacity is allocated to a FIFO queue. If µ1 < λ then some arrivals will choose the bidding queue and there will be non zero revenue. However, if µ1 > λ, then for sufficiently large M, there can be no revenue. Now interpret the server as a babu (public service official(?)), the bids as bribes, M as society’s reward to the customers for choosing the righteous way.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 19 / 24

slide-82
SLIDE 82

Lessons

For a fixed µ, the revenue can actually increase if some capacity is allocated to a FIFO queue. If µ1 < λ then some arrivals will choose the bidding queue and there will be non zero revenue. However, if µ1 > λ, then for sufficiently large M, there can be no revenue. Now interpret the server as a babu (public service official(?)), the bids as bribes, M as society’s reward to the customers for choosing the righteous way. There is more money to be made by being partially honest than being fully dishonest.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 19 / 24

slide-83
SLIDE 83

Lessons

For a fixed µ, the revenue can actually increase if some capacity is allocated to a FIFO queue. If µ1 < λ then some arrivals will choose the bidding queue and there will be non zero revenue. However, if µ1 > λ, then for sufficiently large M, there can be no revenue. Now interpret the server as a babu (public service official(?)), the bids as bribes, M as society’s reward to the customers for choosing the righteous way. There is more money to be made by being partially honest than being fully dishonest. Of course, the latter conclusions are in jest and not meant to be used in a sociological study.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 19 / 24

slide-84
SLIDE 84

Overtime you say?

Now consider what happens if we add capacity to the FIFO queue without affecting the bidding queue.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 20 / 24

slide-85
SLIDE 85

Overtime you say?

Now consider what happens if we add capacity to the FIFO queue without affecting the bidding queue. Specifically, we study the revenue at equilibrium as a function of µ1 with µ2 and all other parameters (M, F(v), and λ) being fixed.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 20 / 24

slide-86
SLIDE 86

Overtime you say?

Now consider what happens if we add capacity to the FIFO queue without affecting the bidding queue. Specifically, we study the revenue at equilibrium as a function of µ1 with µ2 and all other parameters (M, F(v), and λ) being fixed. Notation is simplified to R(µ1) for the revenue rate as a function of µ1.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 20 / 24

slide-87
SLIDE 87

Overtime you say?

Now consider what happens if we add capacity to the FIFO queue without affecting the bidding queue. Specifically, we study the revenue at equilibrium as a function of µ1 with µ2 and all other parameters (M, F(v), and λ) being fixed. Notation is simplified to R(µ1) for the revenue rate as a function of µ1.

Lemma

R(0) ≥ R(µ1) i.e., adding capacity in the form of FIFO queue does not increase the revenue.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 20 / 24

slide-88
SLIDE 88

Giving Up: The Balking Case

Balking : If the service provided has a value, say P, then the customers whose total cost C(v) exceeds P prefer not to take the service.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 21 / 24

slide-89
SLIDE 89

Giving Up: The Balking Case

Balking : If the service provided has a value, say P, then the customers whose total cost C(v) exceeds P prefer not to take the service. In such a balking model P = X(v∗) + v∗W (v∗) where v∗ is the highest sensitivity of a customer joining the queue and customers with v > v∗ balk.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 21 / 24

slide-90
SLIDE 90

Giving Up: The Balking Case

Balking : If the service provided has a value, say P, then the customers whose total cost C(v) exceeds P prefer not to take the service. In such a balking model P = X(v∗) + v∗W (v∗) where v∗ is the highest sensitivity of a customer joining the queue and customers with v > v∗ balk. Let v∗(µ1) be the highest sensitivity of customers joining the bidding queue when the service rate of the FIFO queue is µ1.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 21 / 24

slide-91
SLIDE 91

Results

Theorem

For uniform sensitivity profile F(v) = Av, and fixed µ2,

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 22 / 24

slide-92
SLIDE 92

Results

Theorem

For uniform sensitivity profile F(v) = Av, and fixed µ2, v∗(µ1) increases with µ1.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 22 / 24

slide-93
SLIDE 93

Results

Theorem

For uniform sensitivity profile F(v) = Av, and fixed µ2, v∗(µ1) increases with µ1. R(µ1) decreases with µ1, . i.e., adding a FIFO queue decreases revenue.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 22 / 24

slide-94
SLIDE 94

Concluding Remarks

A motivation Primary motivation came from developing bidding models for service systems with queues and arrivals.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 23 / 24

slide-95
SLIDE 95

Concluding Remarks

A motivation Primary motivation came from developing bidding models for service systems with queues and arrivals. For such a scenario, an obvious variation is to have processor sharing and allocate the weights in proportion to the bids.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 23 / 24

slide-96
SLIDE 96

Concluding Remarks

A motivation Primary motivation came from developing bidding models for service systems with queues and arrivals. For such a scenario, an obvious variation is to have processor sharing and allocate the weights in proportion to the bids. A secondary motivation is to explore new models to test Myrdal’s claim that corruption in public service decreases efficiency.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 23 / 24

slide-97
SLIDE 97

Concluding Remarks

A motivation Primary motivation came from developing bidding models for service systems with queues and arrivals. For such a scenario, an obvious variation is to have processor sharing and allocate the weights in proportion to the bids. A secondary motivation is to explore new models to test Myrdal’s claim that corruption in public service decreases efficiency. In this context, M was a simplistic model for reward. Other reward structures are being explored.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 23 / 24

slide-98
SLIDE 98

Acknowledgements

The first part is a summary from

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 24 / 24

slide-99
SLIDE 99

Acknowledgements

The first part is a summary from

  • L. Kleinrock, “Optimal bribing for queue position,” Operations

Research, vol 15, pp. 304–318, 1967.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 24 / 24

slide-100
SLIDE 100

Acknowledgements

The first part is a summary from

  • L. Kleinrock, “Optimal bribing for queue position,” Operations

Research, vol 15, pp. 304–318, 1967.

  • F. Lui, “An equilibrium model of bribery,” Political Economy, vol. 93,
  • pp. 760–781, 1985.
  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 24 / 24

slide-101
SLIDE 101

Acknowledgements

The first part is a summary from

  • L. Kleinrock, “Optimal bribing for queue position,” Operations

Research, vol 15, pp. 304–318, 1967.

  • F. Lui, “An equilibrium model of bribery,” Political Economy, vol. 93,
  • pp. 760–781, 1985.
  • A. Glazer and R. Hassin, “Stable priority purchasing in ueues,”

Operations Research Letters, vol. 4, no. 6, pp. 285–288, 1986.

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 24 / 24

slide-102
SLIDE 102

Acknowledgements

The first part is a summary from

  • L. Kleinrock, “Optimal bribing for queue position,” Operations

Research, vol 15, pp. 304–318, 1967.

  • F. Lui, “An equilibrium model of bribery,” Political Economy, vol. 93,
  • pp. 760–781, 1985.
  • A. Glazer and R. Hassin, “Stable priority purchasing in ueues,”

Operations Research Letters, vol. 4, no. 6, pp. 285–288, 1986.

Joint work with Murtuza Ali Abidin (IITB) and Tejas Bodas (IITB).

  • D. Manjunath (IIT Bombay)

To jump the queue or wait my turn? January 14, 2014 24 / 24