Skip to content

模型Model

在线算法模型

Online algorithm model

输入逐步揭示,算法必须在未知未来时作出通常不可撤回的决策。

形式陈述 ​

请求、动作与信息 ​

在线算法处理逐步揭示的请求序列 σ=(σ1,…,σT)。第 t 轮先收到 σt,再根据已有历史 Ht−1 和当前请求选择动作 at;它必须在下一请求到达前完成本轮服务。动作是否合法、怎样改变状态、产生多少成本,都由具体问题规定。所谓“在线”限制的是可见信息,不是计算速度或存储空间。

确定性算法的动作可写为 at=A(Ht−1,σt)。随机算法还使用内部随机位;同一个请求前缀可能产生不同动作。离线最优 OPT(σ) 预先知道完整序列,但仍须遵守相同服务、容量和收费规则。若给它额外资源,必须另行说明。

比较保证的量词 ​

对最小化问题,竞争分析通常要求对每个固定序列成立

CA(σ)≤ρOPT(σ)+β.

CA 是算法总成本,ρ 是竞争比,β 可依固定模型参数和初态,却不能依请求序列及其长度。对于先固定序列的对手,随机算法把左边替换成 Er[CA(σ;r)],期望只对算法随机位 r 取;这没有假设请求服从某种概率分布。

直觉

把未来遮住以后,同一个前缀可能接上要求相反决策的后缀。在线算法必须先选一个动作,之后才知道另一个动作是否更好。已付租金、已发生的缺页或迁移费用无法靠事后更改答案抹去,这正是信息不足产生代价的地方。

当前信息、在线动作与未知未来

图中的信息边界随请求向前移动。算法可以记住边界左侧的全部历史,仍然是在线算法;若获准等到边界走完整个输入才决定,原来的问题就变了。

例子与边界

相同前缀怎样制造两难 ​

设买滑雪板需 10 元,租一天需 1 元。第一天开始时,使用一天和使用一百天的两种情形完全相同。立即购买在前一种情形花 10 元,离线只租一天花 1 元;一直租赁在后一种情形花 100 元,离线直接购买花 10 元。阈值策略必须在未来仍未知时决定何时切换,详细成本见Ski Rental 问题。

Paging也有相同信息结构:缓存已满且请求缺页时,必须选一页淘汰。未来最晚再使用的页面是离线 Belady 策略的选择依据,在线算法此刻并不知道它。若允许撤回淘汰或迁移状态,这些操作的费用与完成时间也必须写进协议。

对手能看见什么 ​

不知随机结果的对手(oblivious adversary)先固定整条请求序列,之后算法才运行。自适应对手可以根据已观察的动作决定下一请求;即使看不见内部种子,它也可能从动作推断部分随机结果。不过,它不能等本轮动作完成后再倒改本轮请求。

在自适应模型下,请求序列本身可能随算法随机位变化,因而不能未经说明直接使用“固定 σ、只对左边取期望”的公式。还须约定对手怎样服务请求,以及比较器拥有怎样的信息。能够看见完整随机种子的对手更强:它可以针对种子所确定的行为挑选输入。

推论与应用

流式算法(streaming)主要限制存储空间,可能只在输入结束时输出结果;在线算法主要限制决策时的信息,可以保留全部历史。在线学习常把累计损失与某个固定行动的损失相比,称为 regret;这里的离线最优通常可以随整段请求安排一串动作,两种比较器不能互换。

Advice 模型允许算法得到未来信息的编码,预测辅助模型则提供可能出错的未来预测。此时应说明新增信息的长度或误差含义。预测算法常分别报告预测准确时的一致性与预测任意错误时的鲁棒性;无辅助信息的下界不能不加解释地移用于这些新模型。

参考资料
  • Allan Borodin and Ran El-Yaniv, Online Computation and Competitive Analysis, Cambridge University Press, 1998。
  • David Karger, Online Algorithms, MIT 6.854 Notes #25, 2021 课程版本,§1 与 “Randomized Online Algorithms”:在线协议、竞争比及对手信息。
关系图谱11 个相邻概念 · 1 类关系

拖动节点调整位置。

显示关系

显示:依赖

  1. 前置三跳
  2. 前置二跳
  3. 前置一跳
  4. 当前条目
  5. 后续一跳
  6. 后续二跳
  7. 后续三跳
文字版关系按与当前条目的最短距离分组