优化理论之线性规划
线性规划的标准形式和基本性质
标准形式
mins.t.j=1∑ncjxjj=1∑nαijxj=bi, xj≥0, i=1,⋯,mj=1,⋯,n(1.1) 用矩阵表示为: mins.t.cTxAx=bx≥0(1.2) 其中A是m×n矩阵,cT是n维行向量,b是m维列向量,且b≥0(每个分量都大于等于0)
从非标准形式转化为标准形式
- 如果存在b的某一分量小于0,可以把方程两端都乘以-1
- 在标准形式中,xj都是非负的,这在实际生活中有着现实意义,但是处理数据时,难免有负数变量,因此可以令xj=xj′−xj′′,其中xj′≥0,xj′′≥0。即用非负变量替换xj
- 当变量有上下界,不符合标准形式的要求时,也可做变量替换。当xj≥lj,可令xj′=xj−lj,则取xj′≥0。当xj≤uj时,可令xj′=uj−xj,则取xj′≥0
- 当存在小于等于时,使用正松弛法;当存在大于等于号时用负松弛法。 mins.t.j=1∑ncjxjj=1∑nαijxj=bi, xj≥0, 小于等于限制转化为(松弛变量)⇒j=1∑nαijxj+xn+i=bi, xn+1,xn+2,⋯,xn+m≥0i=1,⋯,mj=1,⋯,ni=1,⋯,m(1.3)
用单纯性方法计算线性规划时,必须要用标准形。
基本性质
可行域
线性规划中,所有约束条件均为线性等式及不等式,满足这些条件的点的集合时凸集。即可行域是凸集。
最优极点
线性规划如果存在最优解,那么最优解一定能够在某个极点上达到。下面简要证明:根据表示定理(见附录),任何可行点x可以表示为极点和极方向的组合: x=j=1∑kλjxj+j=1∑lμjdj.j=1∑kλj=1.λj≥0, j=1,2,⋯,k.μj≥0, j=1,2,⋯,l.(2.1) 把x的表达式代入(1.2)式,得到以λj,μj为变量的等价的线性规划 min s.t. x=j=1∑kλjcTxj+j=1∑lμjcTdj.j=1∑kλj=1.λj≥0, j=1,2,⋯,k.μj≥0, j=1,2,⋯,l.(2.2) 注意,我们之前设过cT是一个行向量。由于μj没有上限,因此若对于某个j,有cTdj<0,则μjcTdj可以随着μj的无限增大而无限减小,从而使目标函数趋向−∞。对于这种情形,我们称该问题无界,或不存在有限最优值。
如果∀j,有cTdj≥0,这时为了极小化目标函数,需令 ∀j∈{1,2,⋯,l}, μj=0,(2.3) 则(2.2)可以简写为极点的凸组合: min s.t. j=1∑kλjcTxjj=1∑kλj=1,λj≥0, j=1,2,⋯,k(2.4) 在所有cTxj中,必然有一个最小的值,令其为 cTxp=1≤j≤kmincTxj(2.5) 显然当 λp=1 且λj=0, j=p(2.6) 时,目标函数取最小值,即(2.3)和(2.6)式组合到一起时线性规划(2.2)的最优解。此时必有 cTx=j=1∑kλjcTxj+j=1∑lμjcTdj≥j=1∑kλjcTxj≥j=1∑kλjcTxp=cTxp 因此,极点xp是线性规划的解。
定理1:设线性规划(1.2)的可行域非空,则有下列结论:
- 线性规划(1.2)存在有限最优解的充要条件是所有cTdj为非负数。其中,dj是可行域的极方向。
- 若线性规划(1.2)存在优先最优解,则目标函数的最优值可在某个极点上达到。
一般情况下,把无界问题也归为不存在最优解,只讨论存在有限最优解的情形。
最优基本可行解
基矩阵、基(本)解(基矩阵的解)(基解vs可行解)--》
基解由xb的基变量与非基变量xn组成--》
不是所有基解都是满足非负条件。满足非负条件的基解为基本可行解(=基解 && 可行解)(解的所有分量大于等于0)--》
退化(某个基变量取值为0)与非退化(基变量取值全部大于0)--》
基本可行解与极点有着对应关系--》
线性规化最优解为最优基本可行解
定理2:令K={x∣Ax=b,x≥0},A为m×n矩阵。A的秩为m,则K的极点集和Ax=b,x≥0的基本可行解集等价。
证明:可见最优化理论与算法(第2版)定理2.2.3的证明。
根据定理1和定理2,我们可知线性规划的求解问题归结为求最优基本可行解。
基本可行解的存在问题
在什么条件下存在最优解呢?其实表示定理的第一点已经明示了答案。
若S={x∣Ax=b,x≥0}为非空多面集,则有:
- 极点集非空,且存在有限个极点x1,x2,⋯,xk
而有限的极点集必存在一个使目标函数最小的极点。如果从方程求解的角度来看,可以等价为以下定理:
定理3: 如果Ax=b,x≥0有可行解,则一定存在基本可行解。其中A是m×n维矩阵,且rank(A)=m
附录:表示定理
表示定理:设S={x∣Ax=b,x≥0}为非空多面集,则有:
- 极点集非空,且存在有限个极点x1,x2,⋯,xk
- 极方向集合为空集的充要条件是S有界。若S无界,则存在有限个极方向d1,d2,⋯,dl
- x∈S的充要条件是式(2.1)
关于上述定理的证明可见文章
[1] Bazaraa M S, Jarvis J J. Linear programming and Network flows, New York: Wiley 1977