四边形不等式优化区间DP---证明

F. Frances Yao 女士的原论文

部分参考的博客

背景

四边形不等式(quadrangle inequality)应用于 DP 优化,是一个古老的知识点。它起源于 Knuth(高纳德)1971年的一篇论文,用来解决最优二叉搜索树问题。1980年,储枫(F. Frances Yao,姚期智的夫人)做了深入研究,扩展为一般性的DP优化方法,把一些复杂度 $O(n^3)$ 的DP问题,优化为 $O(n^2)$。所以这个方法又被称为“Knuth-Yao DP Speedup Theorem”。

四边形不等式的定义及单调性

在四边形不等式优化 DP 中,对于转移状态所需要的花费 $w$,有两个关键内容:四边形不等式的定义、单调性。

解释:在下文中会多次出现 设 w 是定义在整数集合的一个二元函数这句话,你如果不知道什么是二元函数,可以把 $w$ 当做转移 DP 状态的一种花费,这样更容易理解。

  1. 四边形不等式定义1:设 $w$ 是定义在整数集合的一个二元函数,对于任意整数 $i \leq i' \leq j \leq j'$,如果有 $w_{i, j} + w_{i', j'} \leq w_{i, j'} + w_{i', j}$,则称 $w$ 满足四边形不等式。

    用人话来讲就是:两个交错的区间的 $w$ 的和,不大于大区间包含小区间的 $w$ 的和。还有这个 $w$,它就是在合并 $i, k$ 和 $k + 1, j$ 时每次需要支付的成本 $w_{i, j}$。

    那这个不等式跟四边形什么关系呢?想象一下:把 $i, i' ,j ,j'$ 这四个整数按照大小关系安置在一条直线上,再把中间两个往上移,也就是把 $i'$ 和 $j$ 往上移。再把这四个点连起来,就是一个四边形。如图:

    但是,上文说过 两个交错的区间的 w 的和,不大于大区间包含小区间的 w 的和,在几何意义中表示却是这样的:在一个四边形中,对角线的和小于等于对比之和。这显然是不合理的,所以这又叫“反四边形不等式”。

  2. 四边形不等式定义2:对于整数 $i < i + 1 < j < j + 1$,如果有 $w_{i, j} + w_{i + 1, j} \leq w_{i, j + 1} + w_{i + 1, j}$,则称 $w$ 满足四边形不等式。

    定义1和定义2实际上是等价的,它们可以互相推导。

  3. 单调性:设 $w$ 是定义在整数集合上的二元函数,如果对于任意整数 $i \le i' \le j \le j'$,有 $w_{i, j'} \ge w_{i + 1, j}$,则称 $w$ 具有单调性。


讲了这么多,来举个例子吧。就举个简单点的:P1775 石子合并(弱化版)

首先,如果用朴素的 $O(n^3)$ 的做法显然能过,但是 n 一旦增加,就 gg 了。那么在使用四边形不等式优化 DP 之前,要先验证此题的转移是否满足 四边形不等式的定义 以及 单调性

我们设 $w_{i, j}(i \le j)$ 为从第 i 堆石子累加到第 j 堆石子的总和(不是代价)。

$\because w_{i, j'} \ge w_{i', j} \quad \therefore$ 满足单调性。

$\because w_{i, j} + w_{i', j'} = w_{i, j'} + w_{i', j} \quad \therefore$ 满足四边形不等式的定义。

证明四边形不等式定理

这里才是本篇博客的重点,前面都是铺垫。

我们定义方程 $c_{i, j}$:

$c_{i, i} = 0$

$c_{i, j} = w_{i, j} + \min(c_{i, k - 1} + c_{k, j}) \quad i < k \le j \quad (3-1)$

公式 (3-1) 中的 $w$ 要求满足四边形不等式:

$w_{i, j} + w_{i', j'} \leq w_{i, j'} + w_{i', j} \quad i \leq i' \leq j \leq j' \quad (3-2)$

而且要求 $w$ 是单调的:

$W_{i', j} \le w_{i, j'} \quad [i'j] \subseteq [i,j']$

证明引理1:

posted @ 2023-11-17 16:48  emo_male_god  阅读(87)  评论(0)    收藏  举报  来源