如果对于任意的,有,那么满足四边形不等式。
设表示动态规划的状态量。有类似如下的状态转移方程:
m满足四边形不等式是适用这种优化方法的必要条件
对于一道具体的题目,我们首先要证明它满足这个条件,一般来说用数学归纳法证明,根据题目的不同而不同。
通常的动态规划的复杂度是,我们可以优化到
定义为函数对应的使得取得最小值的k值。
我们可以证明,
那么改变状态转移方程为:
复杂度分析:不难看出,复杂度决定于s的值,以求为例,
所以总复杂度是O(n)
对
的证明:
设
对于任意,有(这里以为例,max的类似),接下来只要证明,那么只有当时才有可能有
(mk[i+1,j]-md[i+1,j])-(mk[i,j]-md[i,j])
∵m满足四边形不等式,∴对于有
∴
∴,同理可证
证毕
以上所给出的状态转移方程只是一种比较一般的,其实,很多状态转移方程都满足四边形不等式优化的条件。
解决这类问题的大概步骤是:
1.
证明w满足四边形不等式,这里w是m的附属量,形如,此时大多要先证明w满足条件才能进一步证明m满足条件
2.
证明m满足四边形不等式
3.
证明