1 optimal staffing of systems with skills- based-routing master defense, february 2 nd, 2009 zohar...

37
1 Optimal Staffing of Systems with Skills-Based- Routing Master Defense, February 2 nd , 2009 Zohar Feldman Advisor: Prof. Avishai Mandelbaum

Upload: mercy-carter

Post on 17-Dec-2015

216 views

Category:

Documents


2 download

TRANSCRIPT

1

Optimal Staffing of Systems with Skills-Based-Routing

Master Defense, February 2nd, 2009

Zohar Feldman

Advisor: Prof. Avishai Mandelbaum

Zohar
20 sec

2

Contents

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

Approximation) Experimental Results Future Work

Zohar
84 sec

3

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

Zohar
2 min 30 sec

4

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

Zohar
1 min 20 sec

5

The Optimization Problem

We consider two optimization problems: Cost Optimization Constraints Satisfaction

Zohar
15 sec

6

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

Zohar
1 min 20 sec

7

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

Zohar
1 min 10 sec

8

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)

Zohar
1 min

9

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

Zohar
1 min

10

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,ξ

11

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

D N dP

f N P W F N dPdA P

, , ,iiG N F N e F N

Independent of N

12

Cost Optimization Algorithm

Problem Solution

Use Robust SA Simulation is used with

rounded points

1

min

. .

KT

J

k

Nk

T

c f NN

s t A N b

N

1

min :

: :

KT

N Xk

J T

kFf N E c N

X x A N b

N

13

Constraints Satisfaction Algorithm

Problem Solution 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

: : ,J T TCX x c x C A x b

min

. . , 1,

T

N

k

T

J

k

c N

f Ns t k K

A N b

N

14

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

15

Cost Optimization: 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

16

Cost Optimization: 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

17

Cost Optimization: The Objective Function

18

Cost Optimization: Algorithm Evolution

19

Cost Optimization: Convergence Rate

20

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

21

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

22

Realistic Example

Arrival Rates

23

Realistic Example

Service Distribution (via SEE Stat) Business Quick & Reilly

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

24

Realistic Example

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

25

Realistic Example: Optimization Models Hourly SLA Daily SLA

24 24

1, 2

1,

2,

,1 1

min

. . 0 0.2

0 0.5

1, , 24

t

t tN

t t

t

N

N

T J

N N

s t WP

P

N

W

t

24 24

1,

1

2,

2

1 1

min

. . 0 0.2

0 0.5

t tN

t t

N

N

T J

N N

s t P

P

N

W

W

26

Realistic Example: SLA

Hourly SLA Daily SLA

27

Realistic Example: Staffing

Hourly SLA Solution – total cost 575

Daily SLA Solution – total cost 510

28

Future Work

Incorporating scheduling mechanism Complex models Optimal Routing Enhance algorithms

Relax convexity assumption More efficient

29

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

30

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

31

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

32

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

33

Constraint Satisfaction: 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

34

Constraint Satisfaction: 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

35

Constraint Satisfaction: Delay Threshold with FQR

36

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

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

37

Constraint Satisfaction: Delay Threshold with FQR Comparison of Control Schemes

FQR control SP control