How should we schedule jobs to minimize mean queue length? In the preemptive M/G/1 queue, we know the optimal policy is the Gittins policy, which uses any available information about jobs' remaining service times to dynamically prioritize jobs. For models more complex than the M/G/1, optimal scheduling is generally intractable. This leads us to ask: beyond the M/G/1, does Gittins still perform well? Recent results indicate that Gittins performs well in the M/G/k, meaning that its additive suboptimality gap is bounded by an expression which is negligible in heavy traffic. But allowing multiple servers is just one way to extend the M/G/1, and most other extensions remain open. Does Gittins still perform well with non-Poisson arrival processes? Or if servers require setup times when transitioning from idle to busy? In this paper, we give the first analysis of the Gittins policy that can handle any combination of (a) multiple servers, (b) non-Poisson arrivals, and (c) setup times. Our results thus cover the G/G/1 and G/G/k, with and without setup times, bounding Gittins's suboptimality gap in each case. Each of (a), (b), and (c) adds a term to our bound, but all the terms are negligible in heavy traffic, thus implying Gittins's heavy-traffic optimality in all the systems we consider. Another consequence of our results is that Gittins is optimal in the M/G/1 with setup times at all loads.
翻译:如何调度作业以最小化平均队列长度?在可抢占的M/G/1队列中,已知最优策略是Gittins策略,该策略利用关于作业剩余服务时间的可用信息动态优先调度作业。对于比M/G/1更复杂的模型,最优调度通常难以处理。这引出一个问题:在M/G/1之外,Gittins策略是否仍然表现良好?近期结果表明,Gittins策略在M/G/k中表现良好,其加性次优性差距被一个在高负载下可忽略的表达式所界定。但允许多个服务器仅是扩展M/G/1的一种方式,大多数其他扩展仍待研究。当到达过程非泊松时,或者服务器从空闲切换到忙碌需要准备时间时,Gittins策略是否仍能表现良好?本文首次对Gittins策略进行分析,该分析可处理(a)多服务器、(b)非泊松到达和(c)准备时间的任意组合。我们的结果因此覆盖了带有/不带有准备时间的G/G/1和G/G/k队列,并在每种情形下界定了Gittins策略的次优性差距。(a)、(b)、(c)中的每个因素都会在我们的界中增加一项,但所有项在高负载下均可忽略,从而表明Gittins策略在我们考虑的所有系统中具有高负载最优性。我们的结果还推论出:在带有准备时间的M/G/1队列中,Gittins策略在所有负载下均为最优。