Things I Thought I Knew about Queueing Theory
Things I Thought I Knew about Queueing Theory, but was Wrong About (Part 2, Service Queues) Alan Scheller-Wolf Tepper School of Business Carnegie Mellon University Joint work with Ying Xu and Katia Sycara January 16, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 1
A Great Day As an advisor, one of the greatest things that can happen is the following: Student: “I can prove that XXX is true!” Advisor: “That can’t be right; everyone knows YYY is true. ” Student: “I know, but I can prove it. ” Advisor: “There must be a bug, show me. ” Time passes. . . Advisor: “Huh, you are right, XXX is true!” January 15, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 2
My Goals • Take you through “my great day” as an advisor • Help you understand why everyone believed YYY • Help you understand, mathematically, why XXX is true • Help you see why, intuitively, XXX “has to be true” • Discuss what general insights this gives January 15, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 3
Quality Based Services (I) • What are quality-based services? – Services in which longer service times generate greater value – Why greater value? • For customer: – Better quality of service, e. g. diagnostic accuracy (e. g. Alizamir, de Vericourt and Sun, 2012; Wang et al. 2007, 2012) • For firm: – Revenue generation (e. g. Ren and Zhou, 2008) January 16, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 4
Quality Based Services (II) • Examples of quality based services: – Health care – Call centers – Personal services – Education / Consulting – Others… • OK, so why not just extend service times indefinitely? – Customers Don’t Like to Wait! (Duh!) January 16, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 5
The Central Problem Leisurely Service Short Wait SPEED-QUALITY TRADE-OFF Lovejoy and Sethuraman (2000); task completion with deadlines PROVIDE VALUE WITHOUT TOO MUCH WAIT January 16, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 6
Providing Value Without Too Much Wait • How? – Simple: Speed up when busy, slow down when not • Dynamic (state dependent) control – Crabill (1972, 1974) – Stidham and Weber (1989) – George and Harrison (2001) – Ata and Shneorson (2006) – Hopp et al. (2007) January 16, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 7
But What if a Dynamic Policy is Unrealistic? • Why? – State information is expensive or difficult to get • Heyman (1977), Harchol-Balter et al. (2003) – Service provision agreements may be customerchosen or pre-sold • Then we must use a static (state-independent) policy – This is a lower bound for the optimal dynamic policy performance January 16, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 8
Let’s Take a Closer Look at the Static Case • Why would you ever want to offer a variable service rate if you cannot use information on the state (congestion)? • Maybe we have heterogeneous customers: Some value longer service more, others shorter waits – – Mendelson and Whang (1990); M/M/1 pricing Rao and Petersen (1998); M/M/1 pricing, class choice Van Mieghem (2000); heavy traffic, Gcm Gurvich and Whitt (2010); FQR routing for SL’s January 16, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 9
OK, What About Static Service and Homogeneous Customers? • I could still offer variable service, but why? How? – I can’t use system information – I can’t take advantage of heterogeneous customer preferences • And increasing variability in the system would increase delay – This is basic queueing, right, the PK formula? ? ? January 16, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 10
No! • I will use a static policy • For homogeneous customers • I will randomly assign the arriving customers different grades, based on service rate – With probabilities and rates of my choosing • And I will perform better than if I provide service of uniform rate • How? – Let’s see… January 16, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 11
Model Poisson l Single Server Queue BASE Service m • I can assign arriving jobs different service rates m 1>m 2>. . . >m. K • But I must do so randomly, with probabilities p 1, p 2, …, p. K • I am in effect scaling the service distribution • Each class (or grade) arrives Poisson(lpk) January 16, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 12
Service Discipline • Assume non-preemptive policy r – Allowing preemption is, in general, a mess! • So I have an M/G/1 queue with service discipline r January 16, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 13
Performance Metrics • Recall our Speed-Quality trade-off: Leisurely Service Short Wait • Service Value increases with mean service time • Delay cost increases with mean waiting time • Assume both of these are linear for now January 16, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 14
Objective pk V(m, p, r) = l{u Sk mk - h Skpkwk(m, p, r)} • Service Value is only a function of m and p • Delay Cost is a function of m, p, and r January 16, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 15
Results • We first show that providing mixed service (K>1) is superior to providing pure service (K=1) • How? – The key is r – We will take advantage of the variability we inject into the system or – We will take advantage of the information we inject into the system with the variability January 16, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 16
The Optimal Scheduling Rule • We have a non-preemptive system • Rule must be independent of state • Rates are ordered: m 1>m 2>…>m. K Schedule according to SEPT for ANY m and p January 16, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 17
But Will This Really Work? • I can use the heterogeneous rates to schedule short jobs before long ones • But it is still hard to believe that it is beneficial to inject variability just so I can use SEPT! January 16, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 18
Dominance Result (I) • Let’s compare K=1 with K=2 • Further, let’s assume p 1 m 1 + p 2 m 2 = 1 m • What does this mean? Mean service time is the same in both systems January 16, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 19
Dominance Result (II) • Algebra and basic formulae yield: E[w 2] E[w 1] p 1 =( m 1 + p 2 m 2 ) 1 -r 1 (1 -p 1 r) • Can we make this < 1? • Yes, if m 1 m 2 January 16, 2013 < 1 (1 -r) Alan Scheller-Wolf Lunteren, The Netherlands When can we ensure this holds? Always! We pick the m’s! Page 20
Dominance Result (III) • But what about the service value? • Since p 1 m 1 + p 2 m 2 = 1 m Service values are the same… • So result holds even if not quality based service! January 16, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 21
Dominance Result (IV) • What does this condition do? m 1 m 2 < 1 (1 -r) • Constrains difference in service rates (or variability to inject) • As load increases, I have more freedom… • Result extends to comparing k and k+1 classes It is always beneficial to add another service class January 16, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 22
Optimal Policy for a Given K • Now assume we are unconstrained • Lemma: Under optimal policy, pkwk = pk+1 wk+1 (we balance waiting time costs by class) • And pk+1 pk mk+1 2 =( = ) mk rk+1 2 (1 -r)1/K ( r )= k • So, if we fix K and r all other parameters are determined! January 16, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 23
How Do We Find Optimal r? • FOC: u(1 -r)+CK{(1 -r)1/K – (1 -r)-1/K}=0 C= hm 2 E[X 2] 2 • What do you notice r does NOT depend on? l (!) January 16, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 24
What does this mean? • Since the server has the flexibility to set the service rates, it can always recover the optimal r no matter what l it faces. • Similarly, if Skpk < 1, system can likewise adjust service rates and recover optimal value January 16, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 25
Numerical Results: Benefit of Variability January 16, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 26
Numerical Results: Relative Performance of Different Grades Shortest jobs: Most likely; Shortest wait; Smallest utility January 16, 2013 Longest jobs: Least likely; Longest wait; Largest utility Alan Scheller-Wolf Lunteren, The Netherlands Page 27
Extensions (I) • We assumed linear service value and delay cost functions • Results extend to convex value and linear cost – Convex service value just helps us • There exist concave value and linear cost that satisfy – Concave service value works against us • Non-linear cost makes waiting cost terms intractable. January 16, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 28
Extensions (II) • We assumed non-preemptive scheduling – If assume preempt-resume and exponential service, results extend. • In general, if non-exponential service, optimal scheduling policy will depend on age of job in service, and could be arbitrarily complex (like TAGS) January 16, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 29
Conclusions (I) • For quality-based services it is beneficial to introduce variability in service times • Even if: – You must make decisions statically – Customers are homogeneous – Customers do not care about quality • It is always beneficial to add service grades January 16, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 30
Conclusions (II) • The optimal policy is insensitive to l and whether or not you reject jobs • Optimal parameters have a geometric structure – If parameters don’t have a geometric structure, then adjusting them can reduce delay, without adding any more classes (or information). • Asymptotic benefit is about 5% at most January 16, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 31
Dank U! Any Questions? January 16, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 32
Dank U! Any Questions? January 15, 2013 Alan Scheller-Wolf Lunteren, The Netherlands Page 33
- Slides: 33