线性规划学习笔记

定义#

线性规划是一类最优化问题,例如:

min x1+2x2s.t. x1+x23x22x10x20

(s.t. 是 subject to 的缩写)
简单来说,对于一系列变量,我们在一系列线性约束的范围内找到一个线性函数的最值。
下文称 xRn0x 的各个分量 0

标准形式#

注意到对于所有线性规划问题,我们都能把它变换到如下标准形式:

minxRncTxs.t. Ax=b,i,xi0that ARm×n,bRm,cRn

  • 对于变量 xc,用 x=xc0 替代。
  • 对于变量 xc,用 x=cx0 替代。
  • 对于变量 x 无约束,考虑两个非负变量 x1,x20,令 x=x1x2

至此所有变量 x 都满足非负性,接下来处理不等式:
对于不等式 aixic,考虑新建一个松弛变量 s0,则有 aixi+s=c。反方向不等式同理。

注意到线性规划中我们一般不会碰到严格不等关系:如果我们将这些关系换成不严格的,那么要么存在满足严格条件的最优解,要么我们可以无穷接近最优解。

单纯形法#

以后再说,暂时用不到XD

对偶问题#

考虑一个标准形式的线性规划问题

p=minxRncTxs.t. Ax=b,x0

引入拉格朗日乘子 λRn,相当于要求:

f(x,λ)=cTx+λT(Axb)h=minxmaxλ f(x,λ)s.t. x0

证明:

如果 Axb,那么在内层的 max 中我们可以取 λ± 使得内层 maxλf(x,λ) 趋向于正无穷,不会计入答案。
这同时也告诉我们如果 D+ 则原问题无解。

考虑对偶问题:以 x 为主元,我们可以证明,对任意 λminxf(x,λ)h 的一个下界。

证明:

对于一个特定的 λ1 和任意的 x1,我们有

minxf(x,λ1)f(x1,λ1)maxλf(x1,λ)λ1,minxf(x,λ1)minxmaxλf(x,λ)=h

取最紧的下界

p=maxλminx f(x,λ)=maxλminx cTx+λT(Axb)=maxλminx (cT+λTA)xλTb(x0)

注意到若 (cT+λTA)i<0,则令 xi+,xj=0(ij),有 f(x,λ),故必然有 cT+λTA0,此时必然有 x=0,故

d=maxλλTbs.t. cT+λTA0

w=λ,有

d=maxwwTbs.t. ATλc

同样是一个线性规划问题,称为 P 的对偶问题。
总结一下:

p=minxcTxs.t. Ax=b,x0  dual  d=maxwbTws.t. ATwc

又或者考虑一个更加对称的形式:

p=minxcTxs.t. Axb,x0  dual  d=maxwbTws.t. ATwc,w0

强对偶定理#

由上文的论述我们知道必然有 dp 称为弱对偶定理。事实上,线性规划满足强对偶定理:
对于互为对偶的线性规划问题 d,p,必然满足以下三种情况中的一个:

  • d,p 都不存在可行解。
  • d,p 一个不存在可行解,一个最优解无界。
  • d,p 皆有有界最优解,此时必然有两者的解相同。
证明:

情况一和二易见,对于情况三,记 x0p 的最优解,由前面叙述的单纯形算法中的结论,我们有 x0=[xB0],c=[cB0],A=[B0],其中 xB,cBRm,BRm×m,则有 xB=B1b,p=cBTB1b,取 w0T=cBTB1,由前面单纯形算法的结论我们有 r=cTcBTB1A0,故 w0b 的一个可行解,且 bTw=cTx,结合弱对偶定理 dp,即得 d=p

互补松弛定理#

考虑如下线性规划问题

p=minxcTxs.t. Ax=b,x0

其对偶形式为

d=maxwbTws.t. ATwc

x,w 是原问题和对偶问题的可行解,则有 x,w 是原问题和对偶问题的最优解等价于 cTx=bTw,记 r=cTwTA,则有 rx=cTxwTb,于是有互补松弛定理:

x,w 是原问题和对偶问题的可行解,x,w 是最优解 i,xi=0 or (Ax)i=bi

一个应用见 CF1307G

posted @   Watware  阅读(150)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
more_horiz
keyboard_arrow_up light_mode palette
选择主题
menu
点击右上角即可分享
微信分享提示