线性规划
标准形式
线性规划是一种优化函数和约束条件均为线性的优化问题,规定其标准形式为:
minimize subject toc1x1+⋯+cnxna11x1+⋯+a1nxn⋮am1x1+⋯+amnxnx1≥0,…,xn≥0=b1⋮=bm
即:
minimize subject to cTxAx=b, x≥0
这里 x∈Fn×1, A∈Fm×n, b,c∈Fm×1
所有线性规划问题均可转换成上述的标准形式
对于优化问题:
maximize subject toc1x1+⋯+cnxna11x1+⋯+a1nxn⋮am1x1+⋯+amnxnx1≥0,…,xn≥0≤b1⋮≤bm
可通过引入新的非负变量 xn+i(i=1,…,m),将问题转化为:
minimize subject to−c1x1−⋯−cnxna11x1+⋯+a1nxn+xn+1⋮am1x1+⋯+amnxn+xn+mx1≥0,…, xn+m≥0=b1⋮=bm
此即为标准形式
对于优化问题:
maximize subject toc1x1+⋯+cnxna11x1+⋯+a1nxn⋮am1x1+⋯+amnxnx1≥0,…,xn≥0≥b1⋮≥bm
可通过引入新的非负变量 yi(i=1,…,m),将问题转化为:
minimize subject to−c1x1−⋯−cnxna11x1+⋯+a1nxn−y1⋮am1x1+⋯+amnxn−ymx1≥0,…, xn≥0, yi≥0=b1⋮=bm
此即为标准形式
对于形如:
minimize subject toc1x1+⋯+cnxna11x1+⋯+a1nxn⋮am1x1+⋯+amnxnx2≥0,…,xn≥0=b1⋮=bm
的有一个或多个变量不为非负的线性规划问题,我们可令:x1=u1−v1u1,v1≥0
以将规划问题化成:
minimize subject toc1u1+(−c1)v1+⋯+cnxna11u1+(−a11)v1+⋯+a1nxn⋮am1u1+(−am1)v1+⋯+amnxnu1≥0,v1≥0,x2≥0,…,xn≥0=b1⋮=bm
此即为标准形式
另解:若在 (7) 中 ai1=0, ∀i=1,…,m,则可直接将规划问题转换成标准形式;否则,∃ k s.t. ak1=0,随后由:
ak1x1+ak2x2+⋯+aknxn=bk
知 x1 可由 x2,…,xn 表征,用 x2,…,xn 代替原规划问题中所有出现的 x1,可让规划问题降阶至 (m,n)→(m−1,n−1),并且恰为标准形式
应用
线性规划模型在许多分配以及经济学问题中都发挥了非常重要的作用,下面是一些例子:
食材采购问题
食材采购问题
一个人为了饮食均衡,每天需要摄入 bk 的第 k 种营养物质。与此同时,市场上有 n 种不同的食物,第 i 种食物的单位价格为 ci,单位这种食物蕴含了 aij 的第 j 种营养物质
则在满足营养需求的前提下,计算最少的采购开销的问题可被约化为:
minimize subject toc1x1+⋯+cnxna11x1+⋯+a1nxn⋮am1x1+⋯+amnxnx1≥0,…,xn≥0≥b1⋮≥bm
产品生产问题
产品生产问题
假设我们拥有一个工厂,工厂中存放着 m 种原料,第 k 种原料还存有 bk。工厂可以生产 n 种产品,单位第 i 种产品的生产需要 aij 的第 j 种原料,并且单位这种产品的售价为 πj
则最大化销售额的问题可被约化为:
maximize subject toπ1x1+⋯+πnxna11x1+⋯+a1nxn⋮am1x1+⋯+amnxnx1≥0,…,xn≥0≤b1⋮≤bm
货物转运问题
货物转运问题
假设我们将货物囤积在了 m 个地点,其中第 i 个地点囤积了 ai 的货物。现在我们需要将这些货物全部运送到 n 个仓库中,其中第 j 个仓库应当接收 bj 的货物,而从第 i 个地点运送至第 j 个仓库的运费为 cij
则最小化运费的问题可被约化为:
minimize subject toij∑cijxijj=1∑nxij=aii=1,…,mi=1∑ mxij=bjj=1,…,nxij≥0∀i,j
显然,该问题有解的必要条件为 i=1∑mai=j=1∑nbj,即运出的货物与接受的货物数量一致
网络流量问题
网络流量问题
考虑一个具有容量限制的网络,网络中存在两个特殊的节点,源节点与汇节点,源节点上信息净流出,汇节点上信息净流入,并且二者流量相等,记为 f ,除此之外的所有节点应保证均无净流入流出。
假定第 i 个节点将信息流入到底 j 个节点的荷载为 kij,则计算最大流量 f 的问题可被约化为:
maximize subject tofj=1∑nx1j−j=1∑nxj1−f=0j=1∑nxij−j=1∑nxji=0i=1,mj=1∑nxmj−j=1∑nxjm+f=00≤xij≤kij∀i,j
店铺运营问题
店铺运营问题
杂货店仓库的容量为 C,某种商品的价格随日期而波动,每天可售出或买入这种商品,且售出和买入的价格在第 i 天时均为 pi。
假定第一天开始时仓库没有库存,每日单位商品的储存开销为 r,并要求第 n 天结束时仓库内应没有库存,则最大化利润的问题可约化为:
maximize subject toi=1∑n(pi(si−ui)−rxi)xi+1=xi+ui−sii=1,⋯,n−10=xn+un−snxi+zi=Ci=2,…,nx1=0, xi,ui,si,zi≥0
赌马比赛
赌马比赛
一场有 m 个队伍的赌马比赛,有 n 位参与者,第 j 个人选择押注的队伍为 aj=(aj1,…,ajm),ajk∈{0,1},他所签订的合同价格为 rj,内容为只要这些队伍中有人获胜,便可获得 1 美元
同时,每个人报出自己能够接受的合同的最高购买份数 qj,那么作为比赛的组织者,求解在最糟糕的情况下,如何分配合同才可实现最大盈利的问题可被约化为:
maximize subject torTx−maxi(Ax)i0≤x⩽q
可将其转化为:
maximize subject torTx−sAx−1s≤00≤x⩽q
马尔可夫决策过程
马尔可夫决策过程
有 m 种状态,每种状态都有一组可执行的操作,设第 i 种状态的可执行操作所构成的集合为 Ai,j∈Ai 为其中的一个操作,执行这个操作会带来开销 cj,并且以 pj 的概率分布转移到其他的状态
设 0≤γ<1,求最佳的状态 → 操作策略 {π1,…,πm} 使得:
t=0∑∞γtE[cπit]
最小化
定义 yi∗ 为从状态 i 开始的最低开销的期望值,由贝尔曼最优原理知:
yi∗=j∈Aimin(cj+γpjTy∗)
这里 y∗=(y1∗,…,ym∗)
故而:
πi∗=argj∈Aimin(cj+γpjTy∗)
并且 y∗ 可通过:
maximize subject toi=1∑myiyi−γpjTy≤cj ∀i,j
加以确定
规划问题求解
对于线性规划问题标准形式,出于为了消除冗余条件以及避免规划问题无解的考虑,我们作以下规定:
在标准形式中:A∈Fm×n s.t. m<n, rank(A)=m
对于线性方程组:
Ax=b
设 B∈Fm×m 为 A 的一个非退化子阵,则 x=(xB,0), xB=B−1b 为方程组的一个解,被称为相对于基 B 的基本解 ,x 中位于 B 所在列的分量被称为基本变量
若基本解中存在分量为零的基本变量,则称这个基本解为退化基本解
卡拉泰奥多里定理
卡拉泰奥多里定理
给定一个标准形式下的规划问题,则:
(a)若存在可行解,则存在基本可行解
(b)若存在最优的可行解,则存在最优的基本可行解
(a) 设 A=(a1,…an), ai∈Fm×1,x=(x1,…,xn) 为一个可行解,则:
x1a1+⋯+xnan=b
x≥0⇒ 不失一般性,可设 xi>0, i=1,…,p; xk=0, k=p+1,…,n
⇒x1a1+⋯+xpap=b
若 a1,…,ap 线性无关,则 p≤m
p=m⇒x 为基本可行解; p<m,rank(A)=m⇒ap+1,…,an 中 ∃ aπ1,…aπm−p s.t.B:=(a1,…,ap,aπ1,…,aπm−p) 非退化 ⇒x 为相对于 B 的基本解
若 a1,…,ap 线性相关,则 ∃ y1,…,yp s.t.
y1a1+…+ypap=0⟹(x1−ϵy1)a1+⋯+(xp−ϵyp)ap=b, ∀ϵ
⇒x−ϵy,∀ϵ 为方程组的一组解
不失一般性,可设 ∃ yk∈{yi} s.t. yk>0,随后令 ϵ=min{xi/yi:yi>0},即得规划问题的一个可行解 x−ϵy,此时可行解仅有至多 p−1 个正分量,重复此操作,可使得最后 ai 线性无关
(b) 根据上面讨论,知:若 a1,…,ap 线性无关,则 x 即为最优的基本可行解
若 a1,…,ap 线性相关,则 x 为最优解 ⇒ϵ=0 为函数:
cTx−ϵcTy=cT(x−ϵy)
的极值点 ⇒cTy=0⇒x−ϵy 也为最优解
几何对应
极点与基本解的等价性
线性规划问题同凸集理论存在着千丝万缕的联系,如下所示:
极点与基本解的等价性
A∈Fm×n, rank(A)=m, b∈Fm×1,设 K 为由约束条件:
Ax=b, x≥0
确定的可行解构成的 凸多面体 约束集,则:x 为 K 的极点 ⇔x 为基本解
⇒ :设 x 仅有前 k 个分量非零,则:
x1a1+⋯+xkak=b
若 a1,…,ak 线性相关,则 ∃ yi, 1≤i≤k s.t.
y1a1+⋯+ykak=0
定义 y=(y1,…,yk,0,…,0),则 ∃ ϵ>0 s.t.
x+ϵy≥0, x−ϵy≥0
显然 x+ϵy, x−ϵy 同为可行解,并且 x=21(x+ϵy)+21(x−ϵy),与 x 为 K 的极点矛盾
故而 a1,…,ak 线性无关,根据 定理1.2.1 (a) 中的讨论,可知 x 为基本解
⇐ :不失一般性,设 x=(x1,…,xm,0,…,0),则:
x1a1+⋯+xmam=b
这里 ai, 1≤i≤m 线性无关
设 x=αy+(1−α)z, 0<α<1, y,z∈K,条件 x≥0⇒y,z 的非零项仅存在于前 m 个分量,故而:
y1a1+⋯+ymam=bz1a1+⋯+zmam=b
ai 线性无关 ⇒x=y=z⇒x 为 K 的极点
结合 卡拉泰奥多里定理 和 极点与基本解等价性 ,可得如下的推论:
若在 约束条件(27)中的约束集 K 非空,则 K 至少存在一个极点
若一个线性规划问题的最优解有限,则存在一个恰为此问题约束集极点的最优解
考虑到 A 中至多存在 (nm) 个非退化 n×n 子阵,故而同时也有:
约束条件(27)所对应的约束集 K 至多拥有有限个极点,并且这些极点有限
综合上面这些结论,我们可得:
若 约束条件(27)所对应的约束集 K 有界,则K由有限个点的凸组合构成
主问题与对偶问题
我们将:
minmize subject to PrimalcTxAx≥bx≥0 maximize subject to DualyTbyTA≤cTy≥0
称为对偶关系的对称形式
任何线性规划 主问题 均有其 对偶问题
考虑线性规划的标准形式:
minimize subject to cTxAx=b, x≥0
其等价表述为:
minimize subject to cTxAx≥b−Ax≥−bx≥0⟺minmize subject to cTx(A−A)x≥(b−b)x≥0
对偶关系的对称形式 ⇒ 线性规划的对偶问题为:
maximize subject to uTb−vTbuTA−vTA≤cTu≥0, v≥0
令 y=uT−vT,我们即得:对偶关系的反对称形式:
minmize subject to PrimalcTxAx=b, x≥0 maximize subject to DualyTbyTA≤cT
结合 定理1.1.1 知任何线性规划主问题均有其对偶问题
max s.t. Primal2x1+x2x1+38x2≤42x1≤3(x1,x2)≥0(dual var.)(y1)(y2)(y3)min s.t. Dual4y1+2y2+3y3y1+y2+2y3≥238y1+y2≥1(y1,y2,y3)≥0(prime var.)(x1)(x2)
在这样的例子中我们可以看出:在对偶关系中:
A∈Fm×n; y,b∈Fm×1;x,c∈Fn×1
故而若主问题的规模为 (m,n),对偶问题的规模为 (n,m),并且存在着如下的对应:
- 主问题的目标系数向量 对应于 对偶约束的右侧向量
- 主约束的右侧向量 对应于 对偶问题的目标系数向量
- 主问题约束矩阵的转置 对应于 对偶问题的约束矩阵
- 主问题的变量类型,即正定、负定,还是无约束,对应于对偶约束的不等号类型
(对偶)食材采购问题
(对偶)食材采购问题
在 例4 中,我们已将问题约化为:
minimize subject to cTxAx≥b, x≥0
这里 c 为各食材的价格,A 为各食物所蕴含的营养素,b 为一个人一天饮食中所必需的营养素,由 对称形式的对偶关系 知其对偶问题为:
maximize subject to yTbyTA≤cT y≥0
可将此对偶问题解释成:你经营着一家营养素公司,需要制定各营养素的价格,以在说服顾客直接购买营养素更有性价比的前提下,实现收益的最大化
(对偶)货物转运问题
(对偶)货物转运问题
在 例6 中,我们已将问题约化为:
minimize subject toij∑cijxijj=1∑nxij=aii=1,…,mi=1∑ mxij=bjj=1,…,nxij≥0∀i,j
这里 c 为各转运方式的开销,a 为各地点储存的货物量,b 为各仓库应当接收的货物量,由 反对称形式的对偶关系 知其对偶问题为:
maximize subject to∑i=1maiui+∑j=1nbjvjui+vj≤cij, ∀i,j
可将此对偶问题解释成:你经营着一家运输公司,你只根据运输的起点与终点收费,并且二者相互独立,作为上面开价 cij 的竞争对手,你需要思考如何对起点和终点定价,才能使在看起来比前者更有性价比的情况下实现最大收益
(对偶)赌马比赛
(对偶)赌马比赛
在 例9 中,我们已将问题约化为:
maximize subject torTx−sAx−1s≤0x⩽qx≥0
这里 r 为各合同的价格,A 为各参赛者所押注的队伍,q 为各参赛者所接受的最大合同数量,由 构造规则 知此问题的对偶问题为:
maximize subject toqTyATp+y≥r−1Tp=−1(p,y)≥0⟹ minnize subject toqTmax{0,r−ATp}1Tp=1p≥0
可将此对偶问题解释成:你是一名统计学家,你要寻找马赛结果的概率分布,使得那些能从这次赌马比赛中获利的参赛者的期望获利之和最小
(对偶)马尔可夫决策过程
(对偶)马尔可夫决策过程
在 例10 中,我们已将问题约化为:
maximize subject toi=1∑myiyi−γpjTy≤cj ∀i,j
这里 yi 为从状态 i 开始最低开销的期望值,$\displaystyle \gamma $ 为优化函数的衰减常数,pj 为执行操作 j∈Ai 的状态跃迁函数,cj 为执行操作 j 的开销
由 构造规则 知此问题的对偶问题为:
minimize subject toi=1∑mj∈Ai∑cjxji=1∑mj∈Ai∑(ei−γpj)xj=1xj≥0, ∀i=1,…,m; j∈Ai