330 likes | 483 Views
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. A Great Day .
E N D
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 Alan Scheller-Wolf Lunteren, The Netherlands
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!” Alan Scheller-Wolf Lunteren, The Netherlands
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 Alan Scheller-Wolf Lunteren, The Netherlands
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) Alan Scheller-Wolf Lunteren, The Netherlands
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!) Alan Scheller-Wolf Lunteren, The Netherlands
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 Alan Scheller-Wolf Lunteren, The Netherlands
Providing Value Without Too Much Wait • How? • Simple: Speed up when busy, slow down when not • Dynamic (state dependent) control • Crabill (1972,1974) • Stidhamand Weber (1989) • George and Harrison (2001) • Ata and Shneorson (2006) • Hopp et al. (2007) Alan Scheller-Wolf Lunteren, The Netherlands
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 customer-chosen or pre-sold • Then we must use a static (state-independent) policy • This is a lower bound for the optimal dynamic policy performance Alan Scheller-Wolf Lunteren, The Netherlands
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 Alan Scheller-Wolf Lunteren, The Netherlands
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’ttake advantage of heterogeneous customer preferences • And increasing variability in the system would increase delay • This is basic queueing, right, the PK formula??? Alan Scheller-Wolf Lunteren, The Netherlands
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 betterthan if I provide service of uniformrate • How? • Let’s see… Alan Scheller-Wolf Lunteren, The Netherlands
Model Single Server Queue • I can assign arriving jobs different service rates m1>m2>...>mK • But I must do so randomly, with probabilities p1, p2, …, pK • I am in effect scalingthe service distribution • Each class (or grade) arrives Poisson(lpk) Poisson l BASE Service m Alan Scheller-Wolf Lunteren, The Netherlands
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 Alan Scheller-Wolf Lunteren, The Netherlands
Performance Metrics • Recall our Speed-Quality trade-off: • Service Value increases with mean service time • Delay cost increases with mean waiting time • Assume both of these are linear for now Leisurely Service Short Wait Alan Scheller-Wolf Lunteren, The Netherlands
Service Value is only a function of mand p Delay Cost is a function ofm, p, and r pk mk Objective V(m,p,r) = l{u Sk- h Skpkwk(m,p,r)} Alan Scheller-Wolf Lunteren, The Netherlands
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 We will take advantage of the information we inject into the system with the variability Results or Alan Scheller-Wolf Lunteren, The Netherlands
We have a non-preemptive system Rule must be independent of state Rates are ordered: m1>m2>…>mK The Optimal Scheduling Rule Schedule according to SEPT for ANY mand p Alan Scheller-Wolf Lunteren, The Netherlands
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! But Will This Really Work? Alan Scheller-Wolf Lunteren, The Netherlands
Let’s compare K=1 with K=2 Further, let’s assume What does this mean? p1 p2 1 m1 m2 m Dominance Result (I) + = Mean service time is the same in both systems Alan Scheller-Wolf Lunteren, The Netherlands
Algebra and basic formulae yield: Can we make this < 1? Yes, if E[w2] m2 ( ) (1-p1r) = + 1-r1 E[w1] p1 p2 m1 m2 1 m1 < m2 (1-r) Dominance Result (II) When can we ensure this holds? Always! We pick the m’s! Alan Scheller-Wolf Lunteren, The Netherlands
But what about the service value? Since Service values are the same… So result holds even if not quality based service! p1 p2 1 m1 m2 m Dominance Result (III) + = Alan Scheller-Wolf Lunteren, The Netherlands
What does this condition do? Constrains difference in service rates (or variability to inject) As load increases, I have more freedom… Result extends to comparing k and k+1classes 1 m1 < m2 (1-r) Dominance Result (IV) It is always beneficial to add another service class Alan Scheller-Wolf Lunteren, The Netherlands
Now assume we are unconstrained Lemma: Under optimal policy, pkwk =pk+1wk+1 (we balance waiting time costs by class) And So, if we fix K and rall other parameters are determined! mk+1 pk+1 rk+1 2 2 ( ) ( ) (1-r)1/K = = = mk pk rk Optimal Policy for a Given K Alan Scheller-Wolf Lunteren, The Netherlands
FOC: What do you notice r does NOT depend on? l (!) hm2E[X2] C = 2 How Do We Find Optimal r? u(1-r)+CK{(1-r)1/K – (1-r)-1/K}=0 Alan Scheller-Wolf Lunteren, The Netherlands
Since the server has the flexibility to set the service rates, it can always recover the optimal r no matter whatl it faces. Similarly, if Skpk < 1, system can likewise adjust service rates and recover optimal value What does this mean? Alan Scheller-Wolf Lunteren, The Netherlands
Numerical Results: Benefit of Variability Alan Scheller-Wolf Lunteren, The Netherlands
Numerical Results: Relative Performance of Different Grades Shortest jobs: Most likely; Shortest wait; Smallest utility Longest jobs: Least likely; Longest wait; Largest utility Alan Scheller-Wolf Lunteren, The Netherlands
We assumed linear service value and delay cost functions Results extend to convexvalue and linear cost Convex service value just helps us There exist concavevalue and linear cost that satisfy Concave service value works against us Non-linear cost makes waiting cost terms intractable. Extensions (I) Alan Scheller-Wolf Lunteren, The Netherlands
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) Extensions (II) Alan Scheller-Wolf Lunteren, The Netherlands
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 Conclusions (I) Alan Scheller-Wolf Lunteren, The Netherlands
The optimal policy is insensitive to land 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 Conclusions (II) Alan Scheller-Wolf Lunteren, The Netherlands
Any Questions? Dank U! Alan Scheller-Wolf Lunteren, The Netherlands
Any Questions? Dank U! Alan Scheller-Wolf Lunteren, The Netherlands