Staffing and Scheduling to Differentiate Service in...

44
Staffing and Scheduling to Differentiate Service in Multiclass Time-Varying Service Systems Xu Sun joint work with advisor Ward Whitt, Yunan Liu (NCSU) and Kyle Hovey (NCSU) Department of Industrial Engineering & Operations Research September 22, 2018 Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 1 / 44

Transcript of Staffing and Scheduling to Differentiate Service in...

Page 1: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Staffing and Scheduling to Differentiate Service inMulticlass Time-Varying Service Systems

Xu Sunjoint work with advisor Ward Whitt, Yunan Liu (NCSU) and Kyle Hovey (NCSU)

Department of Industrial Engineering & Operations Research

September 22, 2018

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 1 / 44

Page 2: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Motivating Example 1 - Call Center

80% of type 1 calls need to be answered within 20 seconds (“80-20rule”)

50% of type 2 calls need to be answered within 60 seconds

How many servers are needed over the course of day?

How to assign a newly idle agents to one of these queues?

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 2 / 44

Page 3: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Example 2 - Canadian Triage and Acuity Scale (CTAS)

According to CTAS guideline Ding et al. (2018), “CTAS level i patientsneed to be seen by a physician within wi minutes 100αi% of the time”,with

(w1,w2,w3,w4,w5) = (0, 15, 30, 60, 120),

(α1, α2, α3, α4, α5) = (0.98, 0.95, 0.9, 0.85, 0.8).

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 3 / 44

Page 4: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Other Examples of Multi-class Settings

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 4 / 44

Page 5: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Modeling Real Service Systems

Model with these features are difficult to analyze:

Time-varying arrivals

Customer abandonment

Non-exponential service and abandonment distributions

Multiple customer classes

Goals:

Break through fundamental barriers holding back the community;

Bring more practical models within range of tractability;

Provide performance analysis and decision support tools.

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 5 / 44

Page 6: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Objective of Study and Approach

Goal: achieve acceptable service level for different classes

Method:I Effective planning of service capacity to cope with time-varying

demand (staffing);I Timely allocation of service resources to every customer class

(scheduling).

JointStaffing&SchedulingProblem

DynamicScheduling

MultipleJobClasses

Time-VaryingStaffing

Time-VaryingArrivals

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 6 / 44

Page 7: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Existing Works and Contributions

Literature review

I Service differentiationGurvich, Armony & Mandelbaum (08); Gurvich & Whitt (10); Soh &

Gurvich (16); Kim, Randhawa & Ward (2017)

All assume a critical-loading system and the demand to be stationary

I Performance stabilization of time-varying queuesJennings et al. (96); Feldman et al. (08); Pender & Massey (17); Liu &

Whitt (12,14); Liu (18)

All consider single-class models

Our contribution:studying service differentiation with time-varying demand andclass-dependent services, focusing on overloaded systems.

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 7 / 44

Page 8: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

A Multi-Class V Model

!"

!#

!$

!%

&#(() &%(() &$(() &"(() &*(()

+" +*

s(t)servers

Class-dependent arrival rateλi (t)(non-homogeneous Poisson)

Class-dependentabandonment-time distributionFi

A large time-varying number ofservers s(t)

Exponential service times withclass-dependent service rate µi

First-Come First-Served withineach class

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 8 / 44

Page 9: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Problem Statement

Model parameters

P ≡ ( λi (t),Fi , µi ,︸ ︷︷ ︸customer behavior

wi , αi ,︸ ︷︷ ︸service level

1 ≤ i ≤ K , 0 ≤ t ≤ T )

Obtain convenient staffing and scheduling rules (in terms of P), suchthat the tail probability of delay (TPoD)

P (Wi (t) > wi ) ≤ αi , 1 ≤ i ≤ K , 0 ≤ t ≤ T ,

or P (Wi (t) > wi ) ≈ αi

for anyI wi > 0 (delay target).I αi ∈ (0, 1) (probability target: fraction of excessive delay).

Wi (t): potential waiting time of class i at time t, i.e., offered delay toa class-i arrival at t assuming infinitely patient.

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 9 / 44

Page 10: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Main Steps of Our Approach

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 10 / 44

Page 11: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Step I: Proposed Staffing Formula1 Use offered-load (OL) to determine the nominal service capacity

I No. of busy servers B(t) in Mt/GI/∞ ∼ Poisson r.v. with mean

m(t) ≡ E[B(t)] =

∫ t

0

λ(t − s)G c(s)ds.

I Here, for the i th class, the OL is

mi (t) =

∫ t

0

F ci (wi )λi (u − wi )︸ ︷︷ ︸effective arr. rate

e−µi (t−u)︸ ︷︷ ︸exp. service dist.

du.

OL: mean No. of busy servers needed to serve all customers who are willing

to wait (excluding an acceptable faction of abandonment).

2 A time-varying square-root staffing (TV-SRS) rule

s(t) = m(t)︸ ︷︷ ︸first order

+√λ?c(t)︸ ︷︷ ︸

second order

for m(t) ≡ m1(t) + · · ·+ mK (t)

where c(t) is a control function (TBD), and λ? is the system’s scale, i.e.,

λ? ≡1

T

∫ T

0λ(t)dt, with λ(t) ≡ λ1(t) + · · ·+ λK (t).

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 11 / 44

Page 12: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Step I: Proposed Control Structure

Use real-time class-i head-of-line waiting time (HWT) Hi (t) to devise a dynamiccontrol policy;

A time-varying dynamic prioritization scheduling (TV-DPS) rule:Assigns the next available server to the HoL customer from class i∗ satisfying

i∗ ∈ arg max1≤i≤K

Hi (t)

wi︸ ︷︷ ︸normalized HWT

+1√λ?

κi (t)

.

where κi (t) is a control function (TBD).

Main ideas of TV-DPS:

I Hi (t) ≡ Hi (t)/wi focuses on the delay target wi ;

I κi (t) helps accomplish the class-dependent probability target αi ;

I TV-DPS is both time-dependent (accounting for time variability) andstate-dependent (capturing stochasticity).

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 12 / 44

Page 13: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

An Illustration of How TV-DP Rule Works

00:30:00

00:24:00

00:55:30

00:40:20

00:26:45

00:15:10

00:28:00

00:24:00

01:00:00

00:40:20

00:26:45

00:15:10

00:30:00

00:24:00

01:00:00

00:40:20

00:26:45

00:15:10

Goal:HoLdelayratio1/2

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 13 / 44

Page 14: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Step II: Large-Scale Asymptotic Analysis

Exact analysis is difficult; hence do asymptotic analysis as scale grows(realistic for large-scale systems).

Use n in place of λ? and consider a sequence of models indexed by n.

In the nth model:

I Arrival rate λni (t) ≡ nλi (t);I Staffing level:

sn(t) = nm(t) +√nc(t).

I Scheduling rule:

i∗ ∈ arg max1≤i≤K

{Hn

i (t)

wi+

1√nκi (t)

}.

I Service rates and abandonment distributions are fixed.

Scaled HWT and PWT processes:

Hni (t) ≡ n1/2 (Hn

i (t)− wi ) and W ni (t) ≡ n1/2 (W n

i (t)− wi ) .

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 14 / 44

Page 15: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Limit of Waiting Times and State-Space Collapse

Under the TV-SRS and TV-DPS policy, the CLT-scaled waiting time processes(Hn

1 , . . . , HnK , W

n1 . . . , W

nK

)⇒(H1, . . . , HK , W1 . . . , WK

)in D2K as n→∞,

with all HWT and PWT limits in terms of a one-dimensional process H(·), where

Hi (t) ≡ wi (H(t)− κi (t)), Wi (t) = wi (H(t + wi )− κi (t + wi )).

The process H uniquely solves the following stochastic Volterra equation (SVE)

H(t) =

∫ t

0L(t, s)H(s)ds +

∫ t

0J(t, s)dW(s) + K(t),

where W is a standard Brownian motion,

L(t, s) ≡

∑Ki=1 ηi (s)eµi (s−t)

(µi − hFi

(wi ))

η(t), J(t, s) ≡

√∑Ki=1 e2µi (s−t)(F c

i (wi )λi (s − wi ) + µimi (s))

η(t),

K(t) ≡

∑Ki=1

(ηi (t)κi (t)−

∫ t0 ηi (s)eµi (s−t)

(µi − hFi

(wi ))κi (s)ds

)− c(t)∑K

i=1 ηi (t).

for ηi (t) ≡ wiλi (t − wi )Fci (wi ).

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 15 / 44

Page 16: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Limit of Waiting Times and State-Space Collapse

1 State-space collapse:All limiting HWT and PWT processes degenerates to a one-dimensionalprocess H.

2 The SVE admits a unique solution which is a Gaussian process

I If µi 6= µF SVE has NO analytic solution;F We gave effective algorithms (geometrically fast) to compute

mH(t) ≡ E[H(t)] and variance CH(t, s) ≡ Cov(H(t), H(s)).

I If µi = µ, SVE has an closed-form solution (so do mH(t) and CH(t, s)).

H(t) =1

R(t)

(∫ t

0J(u)dW(u) +

∫ t

0R(u)dK(u) +

∫ t

0K(u)dR(u)

).

3 Variance σ2H

(t) = Var(H(t)) relies only on model parameters (independent

with control functions).

4 Control functions c(·) and κi (·) appear in the term K (·) only.

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 16 / 44

Page 17: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Step III: Solve c∗(t) and κ∗i (t) subject to Service-Level Constraints

Main ideas: when n is large, at each time t ∈ [0,T ], we hope

αi ≡ P(Hni (t) > wi ) = P(Hn

i (t) > 0)

≈ P(Hi (t) > 0) = P(wi (H(t)− κi (t)) > 0)

= P(N(mH(t), σ2

H(t))> κi (t)

)= P

(N (0, 1) >

κi (t)−mH(t)

σH(t)

)Recall that mH(t) is a function of κi (t) and ci (t).

Obtain the asymptotically “optimal” control functions:

c(t) =K∑i=1

(ηi (t)κi (t)−

∫ t

0

ηi (s)eµi (s−t) (µi − hFi (wi ))κi (s)ds

),

κi (t) = zαiσH(t), 1 ≤ i ≤ K , 0 ≤ t ≤ T .

where zα = Φ−1(1− α), ηi (t) ≡ wiλi (t − wi )Fci (wi ).

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 17 / 44

Page 18: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Step III: Solve c∗(t) and κ∗i (t) subject to Service-Level Constraints

The asymptotically “optimal” control functions:

c(t) =K∑i=1

(ηi (t)κi (t)−

∫ t

0

ηi (s)eµi (s−t) (µi − hFi (wi ))κi (s)ds

), (1)

κi (t) = zαiσH(t), 1 ≤ i ≤ K , 0 ≤ t ≤ T . (2)

Theorem (Asymptotic service differentiation)

Under our staffing and scheduling rule with ci (·) and κi (·) in (1) and (2),

(i) Mean PWT and HWT are both asymptotically differentiated and stabilized:

E[W ni (t)]→ wi and E[Hn

i (t)]→ wi as n→∞, for 0 < t ≤ T , 1 ≤ i ≤ K .

(ii) TPoDs for PWT and HWT are both asymptotically differentiated and stabilized:

P(W ni (t) > wi )→ αi and P(Hn

i (t) > wi )→ αi as n→∞

for 0 < t ≤ T , 1 ≤ i ≤ K .

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 18 / 44

Page 19: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Constant arrival rates

When λi (t) = λi

Staffing

mi (t) ∼ mi ≡λiF

ci (wi )

µ, c(t) ∼ c ≡

K∑i=1

wiλi fi (wi )

µκi ,

Scheduling

κi (t) ∼ κi ≡ zαi ·

√√√√√ ∑Kj=1 λjF

cj (wi )(∑K

j=1 λj fj(wj)wj

)(∑Kj=1 λjF

cj (wj)wj

)︸ ︷︷ ︸

independent with αi

.

These formulas can be used to estimate

the required average number of servers and scheduling threshold;

the marginal price of staffing and scheduling (MPSS):

To improve the service to the next level (wi → wi −∆wi or αi → αi −∆αi ), how many

extra servers are need and how much should the scheduling thresholds be adjusted?

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 19 / 44

Page 20: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Review of the Approach

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 20 / 44

Page 21: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Numerical Examples

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 21 / 44

Page 22: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Base Case - A Two-Class V Model

Model parameters

I Sinusoidal arrival rates λi (t) = nλi (1 + ri sin(γi t + φi ))λ1 = 1, λ2 = 1.5, r1 = 0.2, r2 = 0.3, γ1 = γ2 = 1, φ1 = 0, φ2 = −1

I Service rates µ1 = µ2 = 1 (later extend to class-dependent case)

I Exponential abandonment times with rates θ1 = 0.6, θ2 = 0.3.

I System scale: n = 50

QoS parameters

I Delay targets w1 = 0.5,w2 = 1;I Probability targets α1 = 0.2, α2 = 0.8.

Hope to achieve:

P(W1(t) > 0.5) ≈ 20%, P(W2(t) > 1) ≈ 80%. Class-1 more important!

Monte Carlo simulation with 5000 independent runs.

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 22 / 44

Page 23: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Base Case

0 4 8 12 16 20 240

1

mi(t)

Class 1

Class 2

0 4 8 12 16 20 24

-0.5

0

0.5

ci(t)

Class 1

Class 2

0 4 8 12 16 20 24

-1

0

1

ki(t)

Class 1

Class 2

0 4 8 12 16 20 24

Time

0

1

2

(t)

(a) Control functions

0 4 8 12 16 20 24

40

60

80

Arr

ival R

ate

Class 1

Class 2

0 4 8 12 16 20 240

0.5

1

Tail P

robability

of D

ela

y

Class 1

Class 2

Target

0 4 8 12 16 20 24

Time

0

50

100

Sta

ffin

g L

evel Class 1

Class 2

Total

(b) Simulations

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 23 / 44

Page 24: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

High Quality of Service (α1 = 0.05, α2 = 0.1)

0 4 8 12 16 20 24

80

100

120

140

160

180

Arr

iva

l R

ate

Class 1

Class 2

0 4 8 12 16 20 240

0.05

0.1

Ta

il P

rob

ab

ility

of

De

lay

Class 1

Class 2

Target

0 4 8 12 16 20 24

Time

0

100

200

Sta

ffin

g L

eve

l Class 1

Class 2

Total

Good performance when αi ≈ 0.

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 24 / 44

Page 25: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Very High Quality of Service (w1 = 0.05,w2 = 0.1)

0 4 8 12 16 20 24

40

60

80A

rriv

al R

ate

Class 1

Class 2

0 4 8 12 16 20 240

0.5

1

Ta

il P

rob

ab

ility

of

De

lay

Class 1

Class 2

Target

0 4 8 12 16 20 24

Time

0

50

100

Sta

ffin

g L

eve

l Class 1

Class 2

Total

If wi ≈ 0, TPoD degenerates to probability of delay (PoD) P(Wi (t) > 0).

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 25 / 44

Page 26: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

A Small System (n = 5)

0 4 8 12 16 20 24

4

6

8A

rriv

al R

ate

Class 1

Class 2

0 4 8 12 16 20 240

0.5

1

Ta

il P

rob

ab

ility

of

De

lay

Class 1

Class 2

Target

0 4 8 12 16 20 24

Time

0

5

10

Sta

ffin

g L

eve

l Class 1

Class 2

Total

It is ok to apply n→∞ results to a system with a very small n.

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 26 / 44

Page 27: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

A Small System (n = 5)

0 4 8 12 16 20 244

5

6

Arr

ival

Rat

e

0 4 8 12 16 20 240

0.5

1

Tai

l Pro

babi

lity

of D

elay

RoundCeilFloor

0 4 8 12 16 20 24

Time

0

2

4

6

Sta

ffing

Lev

el RoundCeilFloor

0 4 8 12 16 20 246

7

8

9

Arr

ival

Rat

e

0 4 8 12 16 20 240

0.5

1

Tai

l Pro

babi

lity

of D

elay

RoundCeilFloor

0 4 8 12 16 20 24

Time

0

2

4

6

Sta

ffing

Lev

el RoundCeilFloor

When n is small, adding/removing a server causes bigger bumps;

Error is attributed to discretization of staffing levels.

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 27 / 44

Page 28: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Class-Dependent Service Rates (µ1 = 0.5, µ2 = 1)

0 4 8 12 16 20 24

40

60

80A

rriv

al R

ate

Class 1

Class 2

0 4 8 12 16 20 240

0.5

1

Ta

il P

rob

ab

ility

of

De

lay

Class 1

Class 2

Target

0 4 8 12 16 20 24

Time

0

50

100

150

Sta

ffin

g L

eve

l Class 1

Class 2

Total

When µ1 6= µ2, σ2H

(t) is numerically computed using our algorithm.

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 28 / 44

Page 29: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

A Five-Class V Model: Parameters and QoS Targets

Sinusoidal arrival rates λi (t) = nλi (1 + ri sin(γi t + φi ));

Exponential service times;

Exponential abandonment times;

Scale n = 50.

Arrival ParametersAbandonment

ratesServicerates

Servicelevels

Class λi ri γi φi θi µi wi αi

1 1.0 0.20 1 0 0.6 1 0.2 0.12 1.5 0.30 1 -1 0.3 1 0.4 0.33 1.2 0.05 1 1 0.5 1 0.6 0.54 1.1 0.15 1 -2 1.0 1 0.8 0.75 1.6 0.40 1 2 1.2 1 1.0 0.9

The priority decreases in i , 1 ≤ i ≤ 5.

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 29 / 44

Page 30: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Five-Class Example

0 4 8 12 16 20 240

0.5

1

mi(t)

Class 1

Class 2

Class 3

Class 4

Class 5

0 4 8 12 16 20 24

-0.4

-0.2

0

0.2

ci(t)

Class 1

Class 2

Class 3

Class 4

Class 5

0 4 8 12 16 20 24-1

0

1

ki(t)

Class 1

Class 2

Class 3

Class 4

Class 5

0 4 8 12 16 20 24

Time

0

0.5

(t)

(c) Control solutions

0 4 8 12 16 20 24

40

60

80

100

Arr

ival R

ate

Class 1

Class 2

Class 3

Class 4

Class 5

0 4 8 12 16 20 240

0.5

1

Tail P

robability

of D

ela

y

Class 1

Class 2

Class 3

Class 4

Class 5

Target

0 4 8 12 16 20 24

Time

0

50

100

150

Sta

ffin

g L

evel Class 1

Class 2

Class 3

Class 4

Class 5

Total

(d) Simulations

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 30 / 44

Page 31: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

ConclusionsSummary

Propose a time-varying staffing and dynamic scheduling policy for amulti-class V-model;

Prove asymptotic stability for

E[Wi (t)] ≈ wi , P(Wi (t) > wi ) ≈ αi , 0 < t ≤ T , 1 ≤ i ≤ K .

Engineering confirmation via simulations.

Future works

Differentiate PoD P(Wi (t) > 0) ≈ αi (QED). Our scheduling rule

i∗ ∈ arg max1≤i≤K

{Hn

i (t)

wi+

1√nκi (t)

}breaks down when wi = 0!

Scheduling policies based on other states (e.g., queue length).

Nonexponential service distributions.

Multiple service pools.

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 31 / 44

Page 32: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

References

Liu, Y. (2018). Staffing to stabilize the tail probability of delay in service systemswith time-varying demand. Operations Research, 66(2), 514–534.

Hovey, K., Liu, Y., & Sun, X. (2018). Staffing and Scheduling to DifferentiateService in Multiclass Time-Varying Service Systems. Submitted to OperationsResearch.

Ding, Y., Park, E., Nagarajan, M., & Grafstein, E. (2018) Patient Prioritization inEmergency Department Triage Systems: An Empirical Study of Canadian Triageand Acuity Scale (CTAS). Manufacturing & Service Operations Management.

Eick, S. G., Massey, W. A., & Whitt, W. (1993). The physics of the Mt/G/∞queue. Operations Research, 41(4), 731–742.

Feldman, Z., Mandelbaum, A., Massey, W. A., & Whitt, W. (2008). Staffing oftime-varying queues to achieve time-stable performance. Management Science,54(2), 324–338.

Gurvich, I., Armony, M., & Mandelbaum, A. (2008). Service-level differentiation incall centers with fully flexible servers. Management Science, 54(2), 279–294.

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 32 / 44

Page 33: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

References

Gurvich, I., & Whitt, W. (2010). Service-level differentiation in many-server servicesystems via queue-ratio routing. Operations research, 58(2), 316–328.

Kim, J., Randhawa, R., Ward, A. R. (2018). Dynamic Scheduling in a Many-ServerMulti-Class System: the Role of Customer Impatience in Large Systems.Manufacturing & Service Operations Management, 20(2), 285–301.

Liu, Y., & Whitt, W. (2012). Stabilizing customer abandonment in many-serverqueues with time-varying arrivals. Operations research, 60(6), 1551–1564.

Liu, Y., & Whitt, W. (2014). Many-server heavy-traffic limit for queues withtime-varying parameters. The Annals of Applied Probability, 24(1), 378–421.

Pender, J., & Massey, W. A. (2017). Approximating and stabilizing dynamic rateJackson networks with abandonment. Probability in the Engineering andInformational Sciences, 31(1), 1–42.

Soh, S. B., & Gurvich, I. (2016). Call center staffing: Service-level constraints andindex priorities. Operations Research, 65(2), 537–555.

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 33 / 44

Page 34: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

THANK YOU!

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 34 / 44

Page 35: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Another Motivating Example - Electronic Commerce

Delivery guarantee

- Prime member: within 24 hours

- Regular member: within 4 days

Non-stationary demand

- How to determine the fleet size?

-How to schedule shipment date?

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 35 / 44

Page 36: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Full Description of the Main TheoremSuppose the system operates under the TV-SRS staffing and TV-DP scheduling rule. Thenthere is a joint convergence for the CLT-scaled processes:(

Hn1 , . . . , H

nK , V

n1 . . . , V

nK , X

n1 , . . . , X

nK , Q

n1 , . . . , Q

nK

)⇒(H1, . . . , HK , V1 . . . , VK , X1, . . . , XK , Q1, . . . , QK

)in D4K as n→∞,

where all limiting waiting-time processes can be expressed in terms of a one-dimensional processH(·):

Hi (t) ≡ wi (H(t)− κi (t)), Vi (t) = wi (H(t + wi )− κi (t + wi ));

the process H uniquely solves the following stochastic Volterra equation

H(t) =

∫ t

0L(t, s)H(s)ds +

∫ t

0J(t, s)dW (s) + K(t),

where W is a standard Brownian motion,

L(t, s) ≡

∑Ki=1 ηi (s)eµi (s−t)

(µi − hFi

(wi ))

η(t), J(t, s) ≡

√∑Ki=1 e2µi (s−t)(F c

i (wi )λi (s − wi ) + µimi (s))

η(t),

K(t) ≡

∑Ki=1

(ηi (t)κi (t)−

∫ t0 ηi (s)eµi (s−t)

(µi − hFi

(wi ))κi (s)ds

)− c(t)

η(t)

for ηi (t) ≡ wiλi (t − wi )Fci (wi ) and η(t) ≡

∑i∈I ηi (t).

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 36 / 44

Page 37: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Functional Weak Law of Large Numbers

The limit for each queue-length process can be decomposed into three terms:

Qi (t) ≡ Qi,1(t) + Qi,2(t) + Qi,3(t)

Qi,1(t) ≡∫ t

t−wi

F ci (t − u)

√λi (u)dWλi

(u),

Qi,2(t) ≡∫ t

t−wi

√F ci (t − u)Fi (t − u)λi (u)dWθi (s),

Qi,3(t) ≡ λi (t − wi )Fci (wi )Hi (t),

for Wλi,Wθi ,Wµi being independent standard Brownian motions. Finally, the limits for number

in system is given by Xi (t) = Bi (t) + Qi (t).

As an immediate consequence of the FCLT result, we have(Bn

1 , . . . , BnK , Q

n1 , . . . , Q

nK , X

n1 , . . . , X

nK ,H

n1 , . . . ,H

nK ,V

n1 , . . . ,V

nK

)⇒ (m1, . . . ,mK , q1, . . . , qK , x1, . . . , xK ,w1e, . . . ,wK e,w1e, . . . ,wK e) in D5K

as n→∞ where e denotes constant function of one.

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 37 / 44

Page 38: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Computing C (t, s)

Algorithm:

(i) Pick an initial candidate C (0)(·, ·);

(ii) In the k th iteration, let C (k+1) = Θ(C (i))

with Θ given by

Θ(CH)(t, s) = −∫ t

0

∫ s

0

L(t, u)L(s, v)CH(u, v)dvdu +

∫ t

0

L(t, u)CH(u, s)du

+

∫ s

0

L(s, v)CH(t, v)dv +

∫ s∧t

0

J(t, u)J(s, u)du.

Here Θ(·) is a contraction operator.

(iii) If ‖C (k+1) − C (k)‖T < ε, stop; otherwise, k = k + 1 and go back to step (ii).

According to the Banach contraction theorem, this algorithm should convergeexponentially fast. Finally, we take Var(H(t)) = C(t, t), for 0 ≤ t ≤ T .

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 38 / 44

Page 39: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Part I - Single Class Model

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 39 / 44

Page 40: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Mt/M/st + GI

Nonhomogenous Process arrivals (easily extendable)

I.I.D. exponential service times with rate µ (great difficulty arises whenextended to general services)

Time-varying staffing level (TBD)

I.I.D. abandonment times ∼ F (x) ≡ P(A ≤ x) (the +GI )

First-Come First-Served

Unlimited waiting capacity

Performance functions

Q(t) and B(t): number in queue and in service at time t

X (t) ≡ Q(t) + B(t): total number in system at time t

V (t): potential waiting time at time t

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 40 / 44

Page 41: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Staffing to Reduce Excessive Delay

Objective: P(V (t) > w) ≈ α ∈ (0, 1)

Key idea: V (t) is approximately normal for λ and s large (L&W14)

Propose staffing:s(t) = dm(t) + c(t)e (3)

Detailed Formula:

m(t) = F c(w)

∫ t

0

e−µ(t−u)λ(u − w)du (offered-load process) (4)

c(t) = zαe−µt

(Z (t)− (µ− hF (w))

∫ t

0

Z (s)ds

)(5)

for Z (t) ≡ e(µ−hF (w))t

√∫ t

0

e2hF (w) (F c(w)λ(u − w) + µm(u)) , (6)

zα = Φ−1(1− α) and hF (x) ≡ f (x)/F c(x).

Formula (4) was derived by L&W12 and (5) - (6) came from L18.

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 41 / 44

Page 42: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Heuristic Derivation of m(·)1 Consider an Mt/GI/∞ model with arrival from time zero. Then number in

system Q(t) ∼ Poisson r.v. with mean (EMW93)

m(t) ≡ E[Q(t)] =

∫ t

0

λ(u)G c(t − u)du =

∫ t

0

λ(t − s)G c(s)ds.

With exponential services we have G c(x) = e−µx , and so

m(t) =

∫ t

0

λ(u)e−µ(t−u)du. (7)

2 If the mean waiting time is stabilized at the target w , then on average acustomer (if not abandon) will wait w time units before entering service.

3 Hence the “effective arrival” rate λ(t) ≡ λ(t − w)F c(w). Replacing λ(t) in(7) with λ(t) yields (4), as desired!

4 In summary, the offered load m(t) is the mean number of busy serversneeded to serve all customers who are willing to wait (hence excluding anacceptable faction of customer abandoned).

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 42 / 44

Page 43: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

A Five-Class V Model: Parameters and QoS Targets

Sinusoidal arrival rates λi (t) = nλi (1 + ri sin(γi t + φi ));

Exponential service times;

Exponential abandonment times;

Scale n = 50.

Arrival ParametersAbandonment

ratesServicerates

Servicelevels

Class λi ri γi φi θi µi wi αi

1 1.0 0.20 1 0 0.6 1 0.2 0.12 1.5 0.30 1 -1 0.3 1 0.4 0.33 1.2 0.05 1 1 0.5 1 0.6 0.54 1.1 0.15 1 -2 1.0 1 0.8 0.75 1.6 0.40 1 2 1.2 1 1.0 0.9

The priority decreases in i , 1 ≤ i ≤ 5.

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 43 / 44

Page 44: Staffing and Scheduling to Differentiate Service in ...ww2040/8100F16/MulticlassSchedule_2018.pdf · Sta ng and Scheduling to Di erentiate Service in Multiclass Time-Varying Service

Five-Class Example

Goal: Stabilizing mean waiting time E[Wi (t)] = wi ,(w1,w2,w3,w4,w5) = (0.2, 0.4, 0.6, 0.8, 1).

Apply our staffing and scheduling rule with αi = 1/2, 1 ≤ i ≤ 5.

0 4 8 12 16 20 24

40

60

80

100

Arr

ival

Rat

e Class 1Class 2Class 3Class 4Class 5

0 4 8 12 16 20 240

0.5

1

Pot

entia

lD

elay

Class 1Class 2Class 3Class 4Class 5Target

0 4 8 12 16 20 24

Time

0

100

200

Sta

ffing

Lev

el Class 1Class 2Class 3Class 4Class 5Total

Xu Sun (Columbia IEOR) Service Differentiation in TV Queues September 22, 2018 44 / 44