1 Optimal Staffing of Systems with Skills-Based- Routing Master Defense, February 2 nd , 2009 Zohar Feldman Advisor: Prof. Avishai Mandelbaum
Dec 17, 2015
1
Optimal Staffing of Systems with Skills-Based-Routing
Master Defense, February 2nd, 2009
Zohar Feldman
Advisor: Prof. Avishai Mandelbaum
2
Contents
Skills-Based-Routing (SBR) Model The Optimization Problem Related Work Optimization Algorithm (Stochastic
Approximation) Experimental Results Future Work
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
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
5
The Optimization Problem
We consider two optimization problems: Cost Optimization Constraints Satisfaction
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
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
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)
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
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
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
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
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
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
36
Constraint Satisfaction: Delay Threshold with FQR Feasible region and optimal solution
Algorithm solution: N=(91,60), cost=211