给定线性规划的原始问题, 本文介绍写如何方便地写出其对偶问题.
基本公式
我们先给出互为对偶问题的两种基本形式, 作为后续写对偶问题的基础.
1. 原问题的约束是不等式
2. 原问题的约束是等式
总结
- 原问题的一个约束对应一个对偶变量.
- 对偶变量乘以原问题约束的右端(
)得到对偶问题的目标.
- 原问题目标的系数
对应对偶问题约束的右端.
- 最小化对应最大化(反之亦然).
- 如果原问题有等式约束, 对偶变量没有非负要求.
方法
1. 定义对偶变量
对原问题的每一个约束, 定义一个对偶变量. 如果一个约束是等式, 其对偶变量无非负限制.
2. 对偶变量乘约束
把对偶变量乘以原问题的约束. 约束右端即为对偶问题的目标.
3. 计算
的系数
上一步把对偶变量乘以原问题的约束之后, 接着计算原问题约束中决策变量的系数
, 从而得到对偶问题的约束
(假设原问题是最小化问题).
例子
1. 矩阵形式
原问题
定义对偶变量,
, 分别对应原问题的约束
和
.
- 用
乘以
,
然后求和得到对偶目标:
- 用
乘以
然后求和得到约束:
-
对应等式约束, 因此不要求非负
对偶问题
2. 非矩阵形式
原问题
如上面所示, 我们定义对偶变量,
. 原问题的约束是等式约束, 因此不要求
非负. 用
乘以每个等式, 得到对偶问题的目标:
. 下面计算对偶问题的约束:
- 给定
, 计算原问题约束中
的 系数之和, 记作
.
- 得到对偶问题的约束:
为了方便描述, 我们使用新的下标, 并计算
的系数. 详细的计算过程如下:
- 第一组约束:
. 注意
.
- 当
时,
的系数是
,
- 当
时,
的系数是
,
-
的系数之和是
. 注意:
.
- 得到对偶问题的约束:
,
- 第二组和第三组约束:
- 当
时,
的系数之和为
(参考
)
- 当
时,
的系数之和为
(参考
)
- 当
,
时,
的系数之和为
(参考
)
- 当
时,
的系数之和为
(参考
)
- 当
时,
的系数之和为
(参考
)
- 当
时,
的系数之和为
(参考
)
综合上面所有对偶问题的约束, 我们得到:
对偶问题
练习
Ex1
原问题
对偶问题
Ex2
原问题
对偶问题