Improving Online Algorithms via ML Predictions


TL;DR

本文提出了一种利用机器学习(ML)预测来改进在线算法性能的理论框架,设计的算法在预测准确时性能接近最优(一致性),在预测错误时性能也不会大幅下降,可优雅地退化到经典在线算法的水平(鲁棒性)。

关键定义

本文引入或沿用了以下对理解在线算法与ML预测相结合至关重要的概念:

相关工作

当前处理不确定性问题主要有两种范式:一是机器学习,通过历史数据构建模型来预测未来;二是在线算法,旨在设计出在最坏情况下性能也有保障的策略,但这种策略往往过于保守,无法利用潜在的有利信息。

近期的研究开始尝试将两者结合,利用ML预测来提升在线算法的性能,核心挑战在于如何设计一种算法,使其:

  1. 在预测准确时,能够超越传统在线算法的性能下限(实现良好的一致性)。
  2. 在预测错误时,性能不至于崩溃,至少能维持传统在线算法的水平(保证鲁棒性)。

本文旨在为两个经典的在线问题——滑雪租赁和非预知型作业调度——设计出兼具一致性和鲁棒性的新算法。

本文方法

本文的核心思想是:不盲目信任ML预测,而是将其作为调整经典在线算法决策策略的依据,通过引入一个超参数 $\lambda$ 来平衡对预测的信任程度和对最坏情况的防范。

滑雪租赁问题 (Ski Rental)

问题背景:每天租滑雪板花费1单位,一次性购买花费 $b$ 单位。滑雪者不知道总共会滑雪多少天(真实天数 $x$),但有一个ML模型预测的天数 $y$。

朴素算法的缺陷

一个简单的想法是完全信任预测:若 $y \geq b$,则第一天就买;否则一直租。该算法(Algorithm 1)在预测准确时($\eta=0$)成本最优,是1-consistent的。但若预测严重失误(例如预测天数很少 $y < b$,实际天数很多 $x \gg b$),其成本会无限高,因此不具备鲁棒性。

确定性鲁棒且一致的算法 (Algorithm 2)

为解决上述问题,本文提出了一种引入超参数 $\lambda \in (0, 1)$ 的确定性算法:

创新点:此算法通过 $\lambda$ 在信任预测和保守策略之间取得平衡。

随机化鲁棒且一致的算法 (Algorithm 3)

为获得更好的性能权衡,本文进一步设计了一种随机化算法。该算法不再在固定的某一天购买,而是在一个时间窗口内,根据一个特定的概率分布随机选择一天购买。

创新点:通过随机化,该算法平滑了决策的“尖锐性”,避免了在某个特定决策点被对手(adversary)针对。

滑雪租赁问题的鲁棒性与一致性权衡

非预知型作业调度问题 (Non-clairvoyant Job Scheduling)

问题背景:在单台机器上调度 $n$ 个作业,目标是最小化总完成时间。作业的实际处理时间 $x_j$ 未知,但有预测值 $y_j$。可随时抢占和恢复作业。经典的最优非预知算法是轮询(Round-Robin, RR),竞争比为2。

偏好轮询算法 (Preferential Round-Robin, PRR)

本文提出的PRR算法结合了两种策略:

  1. 按预测最短作业优先 (Shortest Predicted Job First, SPJF):按预测处理时间 $y_j$ 从小到大依次执行作业。此策略一致性好但鲁棒性差。
  2. 轮询 (Round-Robin, RR):平均分配CPU时间给所有未完成的作业。此策略鲁棒性好(竞争比为2)。

PRR算法以 $\lambda$ 的速率执行SPJF策略,同时以 $1-\lambda$ 的速率执行RR策略。具体来说,在任何时刻,当前“预测最短”的未完成作业获得 $\lambda$ 的处理速率,同时所有未完成的作业分享剩下的 $1-\lambda$ 的处理速率。

创新点:该算法是一种混合策略,通过一个参数 $\lambda$ 融合了一个基于预测的高性能策略和一个保证最坏情况的经典策略。

实验结论

本文通过模拟实验验证了所提出算法的有效性。

滑雪租赁实验

非预知型调度实验

N min max mean $\sigma$
50 1 22352 2168 5475.42

不同预测误差下的平均竞争比 (a) 滑雪租赁

不同预测误差下的平均竞争比 (b) 非预知型调度

最终结论:实验结果有力地支持了理论分析,证明了本文提出的算法框架能够在实际中有效利用机器学习预测来提升在线决策的性能,同时保持了必要的安全保障。