目录
来源:Coursera课程Operations Research (3): Theory Week2/3
之前已在博客线性规划及其对偶问题(单纯形法|人工变量|对偶理论)中写过相关内容,但是Operations Research课程的解释更容易懂,提供了不同的学习视角
课程前言:
运筹学包括三个部分:模型,算法和理论,大部分场景下,理论(theory)是关于最优性条件(optimality conditions),求解实际问题需要建立模型,求解模型需要使用算法,而理论能帮助开发更好的算法
(1)最优性条件
- 线性规划:对偶性✅
- 整数规划:全单模矩阵
- 非线性规划:KKT条件
(2)应用
敏感性分析,分支定界算法加速,网络流模型,线性回归,支持向量机
1.对偶问题
1.1 原始和对偶
1.1.1 确定对偶形式
假设有一个LP问题很难求解,有一个解的目标值是
,现在想要评估
的质量,就要将
与最优值
比较。如果能找到
的上界(下界),当
足够接近这个边界时,
就是比较好的解。如何找到一个LP问题的最优值边界?下面例子中目标函数可以直接通过约束条件得到一个上界16。
但是16可能不是一个比较紧的上界,还有更好的,那如何改善我们找到的上界呢?按照同样的思路,给每个约束条件赋值一个系数,不同的系数组合有不同的线性组合,也能提供不同的上界。
1.1.2 对偶约束符号
假设上述问题中变量符号发生变化, ,
无限制,那么step2也会变化,对偶LP就变成如下所示,可见对偶问题中约束条件的符号取决于原始问题中变量的符号。
1.1.2 对偶变量符号
假设上述问题中第一个约束变成>,第二个约束变成等于=,那么step1也会变化,对偶LP就变成如下所示,可见对偶问题中变量的符号取决于原始问题中约束的符号。
1.2 通用规则
如果原始LP是最小化问题,那么对偶LP是最大化问题,即最大化下界,那么所有变量和约束的符号规则都反过来。下面是找到对偶LP的通用规则,原始LP是最大化,就从左到右;原始LP是最小化,就从右到左;实际上这些规划不需要死记硬背,更重要的是理解1.1节中的原因,知道怎么决定对偶形式,约束及变量的符号。
2.对偶理论
2.1 对偶定理
前面提到是为了找到原始LP的最优值上下界,因此开发了对偶问题,实际上对偶问题的用处不仅于此,还有更多相关的理论。理论证明均是基于下面的primal-dual形式
2.1.1 弱对偶性
弱对偶性(weak duality)
2.1.2 最优性定理
最优性定理(sufficiency of optimality)