On the Gittins index in the M/G/1 queue
description
Transcript of On the Gittins index in the M/G/1 queue
![Page 1: On the Gittins index in the M/G/1 queue](https://reader036.fdocuments.in/reader036/viewer/2022062423/568145ab550346895db2a4c7/html5/thumbnails/1.jpg)
1aalto_inria2.ppt INRIA Sophia Antipolis, France, 24.3.2009
On the Gittins indexin the M/G/1 queue
Samuli Aalto (TKK)in cooperation with
Urtzi Ayesta (LAAS-CNRS)Rhonda Righter (UC Berkeley)
![Page 2: On the Gittins index in the M/G/1 queue](https://reader036.fdocuments.in/reader036/viewer/2022062423/568145ab550346895db2a4c7/html5/thumbnails/2.jpg)
2
Fundamental question
• It is well known that … • … in the M/G/1 queue • … among the non-anticipating scheduling disciplines • … the optimal discipline is
– FCFS if the service times are NBUE – FB if the service times are DHR
• So, these conditions are sufficient for the optimality of FCFS and FB, respectively. But, …
Are the conditions necessary?
![Page 3: On the Gittins index in the M/G/1 queue](https://reader036.fdocuments.in/reader036/viewer/2022062423/568145ab550346895db2a4c7/html5/thumbnails/3.jpg)
3
Outline
• Service time distribution classes• Known optimality results• Gittins index• Gittins index and service time distribution classes• Gittins index policy• New optimality results
![Page 4: On the Gittins index in the M/G/1 queue](https://reader036.fdocuments.in/reader036/viewer/2022062423/568145ab550346895db2a4c7/html5/thumbnails/4.jpg)
4
Queueing model (1)
• M/G/1 queue
– Poisson arrivals with rate
– IID service times S with a general distribution
– single server • Service time distribution:
• Density function:
• Hazard rate:
xxFxFxSPxF allfor 0)(1)( },{)(
}{)( dxSPxf
)()(
}|{limˆ)( 10 xF
xfxSxSPxh
![Page 5: On the Gittins index in the M/G/1 queue](https://reader036.fdocuments.in/reader036/viewer/2022062423/568145ab550346895db2a4c7/html5/thumbnails/5.jpg)
5
Queueing model (2)
• Remaining service time distribution:
• Mean remaining service time:
• H-function:
)()()(
}|{xF
yxFxFxSyxSP
)(
)(]|[
xF
dyyFxSxSE x
x
x
x dyyF
dyyf
dyyF
xFxSxSE
xH)(
)(
)(
)(]|[
1ˆ)(
![Page 6: On the Gittins index in the M/G/1 queue](https://reader036.fdocuments.in/reader036/viewer/2022062423/568145ab550346895db2a4c7/html5/thumbnails/6.jpg)
6
Service time distribution classes (1)
• Service times are
– IHR [DHR] if h(x) is increasing [decreasing]
– DMRL [IMRL] if H(x) is increasing [decreasing]
– NBUE [NWUE] if H(0) [] H(x)• It is known that
– IHR DMRL NBUE and DHR IMRL NWUE
NWUE
IMRL
DHR
NBUE
DMRL
IHR
![Page 7: On the Gittins index in the M/G/1 queue](https://reader036.fdocuments.in/reader036/viewer/2022062423/568145ab550346895db2a4c7/html5/thumbnails/7.jpg)
7
NWUE
IMRL
DHR
NBUE
DMRL
IHR
Service time distribution classes (2)
• IHR = Increasing Hazard Rate• DMRL = Decreasing Mean Residual Lifetime• NBUE = New Better than Used in Expectation
• DHR = Decreasing Hazard Rate• IMRL = Increasing Mean Residual Lifetime• NWUE = New Worse than Used in Expectation
![Page 8: On the Gittins index in the M/G/1 queue](https://reader036.fdocuments.in/reader036/viewer/2022062423/568145ab550346895db2a4c7/html5/thumbnails/8.jpg)
8
Outline
• Service time distribution classes• Known optimality results• Gittins index• Gittins index and service time distribution classes• Gittins index policy• New optimality results
![Page 9: On the Gittins index in the M/G/1 queue](https://reader036.fdocuments.in/reader036/viewer/2022062423/568145ab550346895db2a4c7/html5/thumbnails/9.jpg)
9
Scheduling/queueing/service disciplines
• Anticipating:– SRPT = Shortest-Remaining-Processing-Time
• strict priority according to the remaining service
• Non-anticipating:– FCFS = First-Come-First-Served
• service in the arrival order– FB = Foreground-Background
• strict priority according to the attained service• a.k.a. LAS = Least-Attained-Service
![Page 10: On the Gittins index in the M/G/1 queue](https://reader036.fdocuments.in/reader036/viewer/2022062423/568145ab550346895db2a4c7/html5/thumbnails/10.jpg)
10
Known optimality results
• Among all scheduling disciplines, – SRPT is optimal (minimizing the queue length
pathwise); Schrage (1968)
• Among the non-anticipating scheduling disciplines, – FCFS is optimal for NBUE service times (minimizing
the mean queue length); Righter, Shanthikumar and Yamazaki (1990)
– FB is optimal for DHR service times (minimizing the queue length stochastically); Righter and Shanthikumar (1989)
IHRDMRL
NWUEIMRL
DHR
NBUE
![Page 11: On the Gittins index in the M/G/1 queue](https://reader036.fdocuments.in/reader036/viewer/2022062423/568145ab550346895db2a4c7/html5/thumbnails/11.jpg)
11
• We will show that … • … among the non-anticipating scheduling disciplines
– FCFS is optimal only for NBUE service times– FB is optimal only for DHR service times
• In other words, we will show that …
• For that, we need
Our objective
Yes, the conditions are necessary.
The Gittins Index
![Page 12: On the Gittins index in the M/G/1 queue](https://reader036.fdocuments.in/reader036/viewer/2022062423/568145ab550346895db2a4c7/html5/thumbnails/12.jpg)
12
Outline
• Service time distribution classes• Known optimality results• Gittins index• Gittins index and service time distribution classes• Gittins index policy• New optimality results
![Page 13: On the Gittins index in the M/G/1 queue](https://reader036.fdocuments.in/reader036/viewer/2022062423/568145ab550346895db2a4c7/html5/thumbnails/13.jpg)
13
Gittins index
• Efficiency function (J-function):
• Gittins index for a customer with attained service a:
• Optimal (individual) service quota:
)(),( ),()0,(
]|},[min{}|{
ˆ),()(
)(
aHaJahaJ
aSaSEaSaSP
aJaa
aa
dyyF
dyyf
),(supˆ)( 0 aJaG
)}(),(|0sup{ˆ)(* aGaJa
![Page 14: On the Gittins index in the M/G/1 queue](https://reader036.fdocuments.in/reader036/viewer/2022062423/568145ab550346895db2a4c7/html5/thumbnails/14.jpg)
14
Example
Pareto service time distribution starting from 1
k *
![Page 15: On the Gittins index in the M/G/1 queue](https://reader036.fdocuments.in/reader036/viewer/2022062423/568145ab550346895db2a4c7/html5/thumbnails/15.jpg)
15
Basic properties (1)
• Partial derivative w.r.t. to :
• Lemma:
– If *(a) and h(x) is continuous, then
aa dyyF
aJahaFaJ)(
)),()()((),(
))(())(()( ** aahaaGaG
![Page 16: On the Gittins index in the M/G/1 queue](https://reader036.fdocuments.in/reader036/viewer/2022062423/568145ab550346895db2a4c7/html5/thumbnails/16.jpg)
16
Basic properties (2)
• Lemma:
• Corollary:
• Lemma:
• Corollary:
)()( allfor )()( ahaGaxaGxG
)()( allfor )()( aHaGaxaGxG
axxhaxxG allfor )( allfor )(
axxHaxxG allfor )( allfor )(
![Page 17: On the Gittins index in the M/G/1 queue](https://reader036.fdocuments.in/reader036/viewer/2022062423/568145ab550346895db2a4c7/html5/thumbnails/17.jpg)
17
Outline
• Service time distribution classes• Known optimality results• Gittins index• Gittins index and service time distribution classes• Gittins index policy• New optimality results
![Page 18: On the Gittins index in the M/G/1 queue](https://reader036.fdocuments.in/reader036/viewer/2022062423/568145ab550346895db2a4c7/html5/thumbnails/18.jpg)
18
DHR [IHR] service times
• Lemma:
• Proof:
• Corollary:– If the service times are DHR [IHR], then
J(a,) is decreasing [increasing] w.r.t. to for all a, .• Corollary:
– If the service times are DHR [IHR], then G(a) h(a) [H(a)] for all a.
abaJbxaxh 0for ),(for )(
)(),()(
)()(
ahaJaa
aa
dyyF
dyyFyh
![Page 19: On the Gittins index in the M/G/1 queue](https://reader036.fdocuments.in/reader036/viewer/2022062423/568145ab550346895db2a4c7/html5/thumbnails/19.jpg)
19
DHR service times
• Proposition:– (i) The service times are DHR if and only if
(ii) G(a) is decreasing for all a.
– In this case, G(a) h(a) for all a.• Proof:
– (i) (ii): Corollary in slide 18– (ii) (i): Corollary in slide 16
![Page 20: On the Gittins index in the M/G/1 queue](https://reader036.fdocuments.in/reader036/viewer/2022062423/568145ab550346895db2a4c7/html5/thumbnails/20.jpg)
20
IMRL [DMRL] and NWUE [NBUE] service times
• Lemma:
• Proof:
• Corollaries:– The service times are IMRL [DMRL] if and only if
J(a,) [] J(a,) for all a, .– The service times are NWUE [NBUE] if and only if
J(0,) [] J(0,) for all .
),(),()(/1)(/1 aJaJaHaH
aaa dyyF
aFaF
dyyF
aFaJaJ)(
)()(
)(
)(),(),(
)(1
)(1)()()()(
aHaHaa dyyFaFdyyFaF
![Page 21: On the Gittins index in the M/G/1 queue](https://reader036.fdocuments.in/reader036/viewer/2022062423/568145ab550346895db2a4c7/html5/thumbnails/21.jpg)
21
DMRL and NBUE service times
• Proposition:– (i) The service times are DMRL if and only if
(ii) G(a) is increasing for all a if and only if (iii) G(a) H(a) for all a.
– (i) The service times are NBUE if and only if (ii) G(a) G(0) for all a if and only if (iii) G(0) H(0).
• Proof:– (i) (iii) (ii): Corollary in slide 20– (ii) (i): Corollary/Lemma in slide 16
![Page 22: On the Gittins index in the M/G/1 queue](https://reader036.fdocuments.in/reader036/viewer/2022062423/568145ab550346895db2a4c7/html5/thumbnails/22.jpg)
22
Outline
• Service time distribution classes• Known optimality results• Gittins index• Gittins index and service time distribution classes• Gittins index policy• New optimality results
![Page 23: On the Gittins index in the M/G/1 queue](https://reader036.fdocuments.in/reader036/viewer/2022062423/568145ab550346895db2a4c7/html5/thumbnails/23.jpg)
23
Gittins index policy
• Definition [Gittins (1989)]:
– Gittins index policy gives service to the job i with the highest Gittins index Gi(ai).
• Theorem [Gittins (1989), Yashkov (1992)]:– Among the non-anticipating disciplines,
Gittins index policy minimizes the mean queue length in the M/G/1 queue (with possibly multiple job classes)
• Observations:– FB is a Gittins index policy if and only if
G(a) is decreasing for all a.– FCFS (or any other non-preemptive policy) is a Gittins
index policy if and only if G(a) G(0) for all a.
![Page 24: On the Gittins index in the M/G/1 queue](https://reader036.fdocuments.in/reader036/viewer/2022062423/568145ab550346895db2a4c7/html5/thumbnails/24.jpg)
24
Outline
• Service time distribution classes• Known optimality results• Gittins index• Gittins index and service time distribution classes• Gittins index policy• New optimality results
![Page 25: On the Gittins index in the M/G/1 queue](https://reader036.fdocuments.in/reader036/viewer/2022062423/568145ab550346895db2a4c7/html5/thumbnails/25.jpg)
25
Single job class (1)
• Theorem:– FB minimizes stochastically the queue length
if and only if the service times are DHR.
• Proof:– Theorem in slide 23 and Proposition in slide 19
together with Righter, Shanthikumar and Yamazaki (1990).
• Theorem:– FCFS minimizes the mean queue length
if and only if the service times are NBUE.
• Proof:– Theorem in slide 23 and Proposition in slide 21.
![Page 26: On the Gittins index in the M/G/1 queue](https://reader036.fdocuments.in/reader036/viewer/2022062423/568145ab550346895db2a4c7/html5/thumbnails/26.jpg)
26
Single job class (2)
• Additional assumption:– arriving jobs have already attained a random amount
of service elsewhere• Theorem:
– FB = LAS minimizes the mean queue length if and only if the service times are DHR.
• Definition:– MAS (Most-Attained-Service) gives service to the job
i with the highest hazard rate hi(ai).• Theorem:
– MAS minimizes the mean queue length if and only if the service times are DMRL.
![Page 27: On the Gittins index in the M/G/1 queue](https://reader036.fdocuments.in/reader036/viewer/2022062423/568145ab550346895db2a4c7/html5/thumbnails/27.jpg)
27
Multiple job classes
• Additional assumption:– arriving jobs have already attained a random amount
of service elsewhere• Definition:
– HHR (Highest-Hazard-Rate) gives service to the job i with the highest hazard rate hi(ai).
• Theorem:– If all service time distributions are DHR, then
HHR minimizes the mean queue length• Theorem:
– If all service time distributions are DMRL, then SERPT minimizes the mean queue length
![Page 28: On the Gittins index in the M/G/1 queue](https://reader036.fdocuments.in/reader036/viewer/2022062423/568145ab550346895db2a4c7/html5/thumbnails/28.jpg)
28
THE END