1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

59
1 Optimal Staffing of Systems with Skills-Based- Routing Temporary Copy Do not circulate
  • date post

    21-Dec-2015
  • Category

    Documents

  • view

    217
  • download

    1

Transcript of 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

Page 1: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

1

Optimal Staffing of Systems with Skills-Based-Routing

Temporary Copy

Do not circulate

Page 2: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

2

Optimal Staffing of Systems with Skills-Based-Routing

OR seminar, July 21, 2008

Zohar Feldman

Advisor: Prof. Avishai Mandelbaum

Page 3: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

3

Contents

Skills-Based-Routing (SBR) Models The Optimization Problem Related Work Optimization Algorithm (Stochastic

Approximation) Experimental Results Future Work

Page 4: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

4

Introduction to SBR Systems

I – set of customer classes J – set of server pools Arrivals for class i: renewal

(e.g. Poisson) processes, rate λi

Servers in pool j: Nj, statistical identical

Service of class i by pool j: DS

i,j

(Im)patience of class i: DPi

Schematic Representation

iPiD

,Si jD

jN

Page 5: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

5

Introduction to SBR Systems

Routing Arrival Control: upon customer arrival, which

of the available servers, if any, should be assigned to serve the arriving customer

Idleness Control: upon service completion, which of the waiting customers, if any, should be admitted to service

Page 6: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

6

The Optimization Problem

We consider two optimization problems: Cost Optimization Constraints Satisfaction

Page 7: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

7

1

min

. .

KT

J

k

Nk

T

c f NN

s t A N b

N

The Optimization Problem

Cost Optimization Problem

f k(N) – service level penalty functions Examples:

f k(N) = c’kλkPNabk – cost of abandonments per time unit

f k(N) = λkEN[c’k(Wk)] – waiting costs

Page 8: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

8

The Optimization Problem

Constraints Satisfaction Problem

f k(N) – service level objective Examples

f k(N) = PNWk>Tk – probability of waiting more than T time units

f k(N) = EN[Wk] – expected wait

min

. . , 1,

T

N

k

T

J

k

c N

f Ns t k K

A N b

N

Page 9: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

9

Related Work

Call Centers Review (Gans, Koole, Mandelbaum) V model (Gurvich, Armony, Mandelbaum) Inverted-V model (Armony, Mandelbaum) FQR (Gurvich, Whitt) Gcµ (Mandelbaum, Stolyar) Simulation & Cutting Planes (Henderson, Epelman) Staffing Algorithm (Whitt, Wallace) ISA (Feldman, Mandelbaum, Massey, Whitt) Stochastic Approximation (Juditsky, Lan, Nemirovski,

Shapiro)

Page 10: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

10

Simulation Approach

Need to evaluate

Generate samples ω1, ω2,…

Estimate

,f N F N dP

1

1ˆ ,m

ii

f N F Nm

Page 11: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

11

Stochastic Approximation (SA)

Uses Monte-Carlo sampling techniques to solve (approximate)

- convex set ξ – random vector, probability distribution P

supported on set Ξ - convex almost surely

min : ,x X

E xf x F

nX

:F X

Page 12: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

12

Stochastic Approximation – Basic Assumptions f(x) is analytically intractable There is a sampling mechanism that can be

used to generate iid samples from Ξ There is an Oracle at our disposal that returns

for any x and ξ The value F(x,ξ) A stochastic subgradient G(x,ξ)

,

, , ,

x

T

F x

F y F x y x y X

G x,ξ

G x,ξ

Page 13: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

13

SA for SBR

f(x) – analytically intractable

Sampling mechanism for generating samples ξ1, ξ2,…

Oracle returns F(x, ξi)

Oracle returns G(x, ξi)

F convex a.s. !

f(N) – analytically intractable

SBR simulation generates sample paths ω1, ω2,…

Simulation calculates performance measures F(N,ωi)

G(N,ωi) - finite differences

F convex a.s. ?

,f x E F x , dN F N Pf

Page 14: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

14

Stochastic Approximation - Algorithms Basic SA

θ depends on strong convexity constant Objective convergence rate - O(j-1). (error of

solution O(j-0.5))

1 : ,

:

j X j j j j

j

x x G x

j

Page 15: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

15

Stochastic Approximation - Algorithms Robust SA

θ does not depend on any parameter (robust) Objective convergence rate - O(J-0.5)

1

1

: ,

:

1

j X j j j j

j

J

N jj

x x G x

J

x xJ

Page 16: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

16

Stochastic Approximation - Algorithms Mirror Descent SA

In order to guarantee accuracy ε with confidence level δ, one should use J of order O(ε-2) dependent on δ logarithmically

1

1

: ,

: arg min ,

:

1

jj x j j j

Tx

z X

j

J

J jj

x P G x

P y y z x V x z

J

x xJ

Page 17: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

17

Stochastic Approximation - Algorithms Minimax Problems

which is the same as solving the Saddle Point problem

1,

min max : ,k k

x X k Kf x E F x

1

1

min max , :

: 0, 1

Kk

kx X y Y

k

KK

kk

x y y f x

Y y y y

Page 18: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

18

Stochastic Approximation - Algorithms Mirror SA for Saddle Point Problem

In order to guarantee accuracy ε with confidence level δ, one should use J of order O(ε-2) dependent on δ logarithmically

1 1 1

1

1

1

: , , ,

,, ,

, , , ,

1

jj j j z j j j

Kk

kk

K

J

J jj

z x y P G x y

y G xG x y

F x F x

z zJ

Page 19: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

19

Optimization Algorithms

Let Ω be the probability space formed by arrival, service and patience times.

f(N) can be represented in the form of expectation. For instance,

D(N,ω) is the number of Delayed customers A(ω) is the number of Arrivals

Use simulation to generate samples ω and calculate F(N,ω)

Subgradient is approximated by

,

: 0 : ,N

Nf N P W dP F N

D

AdP

, , ,iiG N F N e F N

Page 20: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

20

Cost Optimization Algorithm

– Initialization i ← 0; Choose x0 from X

– Step 1 Generate Fk(xi,ξi) and Gk(xi,ξi) using simulation

– Step 2 xi+1←ΠX(xi- γGk(xi,ξi))

– Step 3 i ← i+1– Step 4 If i < J go to Step 1.

– Step 5 1

J

jj

x xJ

Page 21: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

21

Cost Optimization Algorithm

Denote:

Theorem: using , and we achieve

0

22

2

: max

: sup ,

Xx X

x X

D x x

M E G x

2

XD MJ

XD M

J

ˆP f x f x

Page 22: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

22

Constraints Satisfaction Algorithm

Basic concept: There exist a solution with cost C that satisfies

the Service Level constraints if”f

where Look for the minimal C in a binary search

fashion

1, ,

min max 0C

kk

x X k Kf x

: : TCX x X c x C

Page 23: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

23

CS Algorithm – Formal Procedure

• Initialization dC ←Cmax , x←xmax/2, x* ←xmax

• Step 1 If dC<δ return the solution x*, dC ← dC/2

• Step 2 If Feasible(x)=true, C ← C-dC, x* ← x, , go to Step 1

• Step 3 x ←MirrorSaddleSA(C)• Step 4 If Feasible(x)=true, C ← C-dC, x* ← x,

, go to Step 1• Step 5 C ← C+dC,

go to Step 1

/CXx x C C dC

/CXx x C C dC

/CXx x C C dC

Page 24: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

24

CS Algorithm – MirrorSaddle Subprocedure Sub-procedure MirrorSaddleSA

1

1

*

: ,

1ˆ ˆˆ : ,

ˆ:

jj z z j j

J

J J J tt

J

z P G z

z x y zJ

x x

Page 25: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

25

CS Algorithm – MirrorSaddle Subprocedure Sub-procedure MirrorSaddleSA

Mapping Function

2

2

1

2

2

1

, 1, ,

, 1, ,

i

j

i

j

iJ

jj

z ii

J K

jj J

z Ji J

z J

Pz K

i J J Kz K

Page 26: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

26

CS Algorithm – Feasible Subprocedure Sub-procedure Feasible

[lbk(n), ubk(n)] – confidence interval for fk based on n samples

1. If ubk(n)≤αk+δ for all k=1,…,K return true

2. If lbk(n)>αk+δ for some k=1,…,K return false

3. Generate sample, n ←n+batch, calculate confidence interval [lbk(n), ubk(n)]. Go to 1.

Page 27: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

27

CS Algorithm

Denote:

Theorem: using , andwe achieve

2 2 2* *, *,

2 2*,

2 2*,

: 2 ln 2 ln

, ,

, ,

x y

kx x

ky

M M J M K

E G x M k x

E F x M k x

*

2:

5M J

2*

2 2

20MJ

maxlog

1, ,ˆmax 1 1

Ckk

k KP f x

maxlogˆ 1 1 2

CTP c x c

Page 28: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

28

Experimental Results

Goals Examine algorithm performance Explore the geometry of the service level

functions, validate convexity Method

Construct SL functions by simulation Compare algorithm solution to optimal

Page 29: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

29

Cost Optimization 1: Penalizing Wait

N model (I=2,J=2)

λ1= λ2=100

µ11=1, µ21=1.5, µ22=2

Static Priority: class1 customers prefer pool 1 over pool 2. Pool 2 servers prefer class 1 customers over class2.

1 1.5 2

100100

Page 30: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

30

Cost Optimization 1: Penalizing Wait

Problem Formulation

1 2 1 2min 1 2 20 10

. .

N NN

J

N N E W E W

s t AN b

N

Page 31: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

31

Cost Optimization 1: The Objective Function

Page 32: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

32

Cost Optimization 1: Penalizing Wait

Algorithm solution : N=(88,47), cost=190 Optimal solution: N*=(80,54), cost*=188

Page 33: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

33

Cost Optimization 2: Penalizing Abandonments N model (I=2,J=2)

λ1= λ2=100

µ11=1, µ21=1.5, µ22=2

θ1= θ2=1

Static Priority: class1 customers prefer pool 1 over pool 2. Pool 2 servers prefer class 1 customers over class2.

1 1.5 2

100100

1 1

Page 34: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

34

Cost Optimization 2: Penalizing Abandonments Problem Formulation

1 2 1 2min 1 2 3 100 2 100

. .

N NN

J

N N P AB P AB

s t AN b

N

Page 35: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

35

Cost Optimization 2: The Objective Function

Page 36: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

36

Cost Optimization 2: Algorithm Evolution

Page 37: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

37

Cost Optimization 2: Convergence Rate

Page 38: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

38

Cost Optimization 2: Penalizing Abandonments Algorithm Solution: N=(98,57) cost=219 Optimal Solution: N*=(102,56) cost*=218

Page 39: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

39

Constraint Satisfaction 1: Delay Threshold with FQR N model (I=2,J=2)

λ1= λ2=100

µ11=1, µ21=1.5, µ22=2

T1=0.1, α1=0.2; T2=0.2, α2=0.2

FQR: pool 2 admits to service customer from class i which maximize Qi - pi∑Qj, p=(1/3,2/3); Class 1 will go to pool j which maximize Ij - qj ∑ Ik q=(1/2,1/2) i i

ij j

j

Tp

T

1 1.5 2

100100

Page 40: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

40

Constraint Satisfaction 1: Delay Threshold with FQR Problem Formulation

1 2

1

2

min1 2

. . 0.1 0.2

0.2 0.2

N

N

N

J

N N

s t P W

P W

N

Page 41: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

41

Constraint Satisfaction 1: Delay Threshold with FQR

Page 42: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

42

Constraint Satisfaction 1: Delay Threshold with FQR Feasible region and optimal solution

Algorithm solution: N=(91,60), cost=211

Page 43: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

43

Constraint Satisfaction 1: Delay Threshold with FQR Comparison of Control Schemes

FQR control SP control

Page 44: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

44

Constraints Satisfaction 2: Time-Varying Model N model

λ1(t)= λ2(t)=1000+200sin(t)

µ11=10, µ21=15, µ22=20

Static Priority: class1 customers prefer pool 1 over pool 2. Pool 2 servers prefer class 1 customers over class2.

Page 45: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

45

Constraints Satisfaction 2: Time-Varying Model Problem Formulation

10 10

1, 2,1 1

1,

2,

min 1 2

. . 0 0.1 1, ,10

0 0.5 1, ,10

t tN

t t

N t

N t

T J

N N

s t P W t

P W t

N

Page 46: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

46

Constraints Satisfaction 2: Time-Varying Model Arrivals and Staffing

Page 47: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

47

Constraints Satisfaction 2: Time-Varying Model Performance Measures

Page 48: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

48

Constraints Satisfaction 2: Time-Varying Model System Statistics

Page 49: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

49

Realistic Example

Medium-size Call Center (US Bank: SEE lab) 2 classes of calls

Business Quick & Reilly

2 pools of servers Pool 1- Dedicated to Business Pool 2 - Serves both

Page 50: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

50

Realistic Example

Arrival Rates

Page 51: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

51

Realistic Example

Service Distribution (via SEE Stat) Business Quick & Reilly

LogN(3.7,3.4) LogN(3.9,4.3)

Page 52: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

52

Realistic Example

Patience – survival analysis shows that Exponential distribution fits both classes Business: Exp(mean=7.35min) Quick: Exp(mean=19.3min)

Page 53: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

53

Realistic Example: Hourly SLA

Problem Formulation

24 24

1, 2,1 1

1,

2,

min

. . 0 0.2 1, , 24

0 0.5 1, , 24

t tN

t t

N t

N t

T J

N N

s t P W t

P W t

N

Page 54: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

54

Realistic Example: Hourly SLA

Solution – total cost 575

Page 55: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

55

Realistic Example: Hourly SLA

SLA

Page 56: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

56

Realistic Example: Daily SLA

Problem Formulation

24 24

1, 2,1 1

1

2

min

. . 0 0.2

0 0.5

t tN

t t

N

N

T J

N N

s t P W

P W

N

Page 57: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

57

Realistic Example: Daily SLA

Solution – total cost 510 (11% reduction)

Page 58: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

58

Realistic Example: Daily SLA

SLA

Page 59: 1 Optimal Staffing of Systems with Skills- Based-Routing Temporary Copy Do not circulate.

59

Future Work

Incorporating scheduling mechanism Complex models Enhance algorithms

Independent of convexity assumptions Work faster