一般测试案例下的多处理器调度优化
1. 引言
多处理器调度问题(Multiprocessor Scheduling Problem)是一个经典的优化问题,旨在最小化所有作业完成的最大时间(即完成时间)。在实际应用中,作业的处理时间通常是不确定的,可以通过测试操作来揭示准确的处理时间。这种不确定性为调度算法的设计带来了新的挑战。本文聚焦于一般测试情况下(即不同作业有不同的测试时间)的多处理器调度问题,提出了一种名为BBS(Best Balanced Schedule)的在线近似算法,并对其竞争比进行了详细分析。
2. 阈值函数 ( T^g_m )
在一般测试情况下,我们定义了一个阈值函数 ( T^g_m ),用于决定是否对某个作业进行测试。阈值函数 ( T^g_m ) 依赖于机器数量 ( m ),具体定义如下:
[
T^g_m =
\begin{cases}
\frac{3m\phi + 4m - 4}{4m - 1}, & \text{if } m = 1 \text{ or } m \geq 3 \
\frac{3\phi + 6 + \sqrt{45\phi + 213}}{14}, & \text{if } m = 2
\end{cases}
]
其中,( \phi = \frac{1 + \sqrt{5}}{2} ) 是黄金比例。根据这个阈值函数,我们将作业分为三组:
- ( B_1 ) :包含具有最大 ( \tau ) 值的前 ( m ) 个作业。