最优化理论与方法-第十一讲-线性规划-极点的刻画


B站老师学习视频

1. 概述

  • 线性规划的标准形式;
  • 多面体的几何分解;
  • 单纯形法;
  • 对偶单纯形法

2. 线性规划定义

  • 线性规划Linear Programming:目标函数为决策变量的线性函数,同时约束条件为线性等式或线性不等式约束
  • 标准形式:
    ( L P )      min ⁡    c T x s t .      A x = b , x ≥ 0 \begin{equation}\begin{aligned} &(LP)\; \;\min\; c^Tx\\ &st.\;\;Ax=b,x\ge 0\\ \end{aligned}\end{equation} (LP)mincTxst.Ax=b,x0
    其中, c ∈ R n , A ∈ R m × n , b ∈ R m c\in R^n,A\in R^{m\times n},b\in R^m cRn,ARm×n,bRm,通常假设系数矩阵A行满秩,即 r ( A ) = m r(A)=m r(A)=m
    将非标准形的线性规划问题转换为标准形式,
  • 1)要求最大,就取负号求最小
    max ⁡ d T x → min ⁡ { − d T x } \begin{equation}\begin{aligned} &\max d^Tx\to \min \{-d^Tx\} \end{aligned}\end{equation} maxdTxmin{dTx}
  • 2)实际给的是不等式 a i T x ≤ b i a_i^Tx\le b_i aiTxbi,标准型是等式,那么我们需要凑等式,引入变量s
    a i T x ≤ b i → a i T x + s = b i , s ≥ 0 \begin{equation}\begin{aligned} &a_i^Tx\le b_i\to a_i^Tx+s=b_i,s\ge0 \end{aligned}\end{equation} aiTxbiaiTx+s=bi,s0
  • 3)实际无要求 x ≥ 0 x\ge0 x0,需要转换变量,假设有两个正的变量,通过差值来表示负值:
    x i 无需求 → x i = x i + − x i − , x i + ≥ 0 , x i − ≥ 0 \begin{equation}\begin{aligned} &x_i 无需求\to x_i=x_i^+-x_i^-,x_i^+\ge0,x_i^-\ge0 \end{aligned}\end{equation} xi无需求xi=xi+xi,xi+0,xi0
  • 我们记S为可行集, S = { x ∣ A x = b , x ≥ 0 } S=\{x\big|Ax=b,x\ge0\} S={x Ax=b,x0},容易看出S是由线性约束的描述的。这里相当于S就是多面体集合。
    – 多面体 S 1 S_1 S1: 可以用四个定点P1,P2,P3,P4表示凸集合S1,并且任一点X可以由四个点的凸组合形式表示。
    在这里插入图片描述
    – 多面体 S 2 S_2 S2,假设过X点作两个边的平行线,这样得到一个M1锥区域,这区域的线可以向右上无限延伸。
    在这里插入图片描述

3. 多面体的基本性质

3.1 定义

  • 极点(extremepoint):给凸集C,若 x ∈ C x\in C xC不能表示成C另外两点的凸组合,则称x为C的极点。
  • 方向(recession direction):给出凸集C,若非零向量d满足:对于任意 x ∈ C x\in C xC均有
    x + λ d ∈ C , ∀ λ > 0 \begin{equation} x+\lambda d \in C,\forall \lambda>0 \end{equation} x+λdC,λ>0
    则称d为集合C的方向
  • 极方向(extreme direction):若方向d不能表示成另外两个方向的正线性组合,即不存在 λ 1 , λ 2 > 0 \lambda_1,\lambda_2>0 λ1,λ2>0,使得 d = λ 1 d 1 + λ 2 d 2 d=\lambda_1d_1+\lambda_2d_2 d=λ1d1+λ2d2,则称d为C的极方向
  • 这个极方向很类似于矩阵里面的特征向量

在这里插入图片描述

  • 考虑多面体 S = { x ∣ A x = b , x ≥ 0 } S=\{x\big|Ax=b,x\ge0\} S={x Ax=b,x0},这里假设 A m × n A_{m\times n} Am×n行满秩
  • x ∈ S x\in S xS是S的极点当且仅当x 可表示为 x = ( B − 1 b 0 ) x=\begin{pmatrix}B^{-1}b\\\\0\end{pmatrix} x= B1b0 ,其中
    A=(B,N),B可逆且 B − 1 b ≥ 0 B^{-1}b\ge 0 B1b0
  • 解释:
    — 因为A行满秩,所以可得 A A T AA^T AAT是一个 m × m m\times m m×m满秩矩阵,可得:
    A = ( B , N ) , x = [ x b T x n T ] → A x = b → B x b T + N x n T = b \begin{equation} A=(B,N),x=\begin{bmatrix}x_b^T\\\\x_n^T\end{bmatrix}\to Ax=b\to Bx_b^T+Nx_n^T=b \end{equation} A=(B,N),x= xbTxnT Ax=bBxbT+NxnT=b
  • 这里的B可以看做是极大线性无关组, x n T x_n^T xnT为非零解,即 N x n T = 0 Nx_n^T=0 NxnT=0
    B x b T + N x n T = b → B x b T = b → x b T = B − 1 b \begin{equation} Bx_b^T+Nx_n^T=b\to Bx_b^T=b\to x_b^T=B^{-1}b \end{equation} BxbT+NxnT=bBxbT=bxbT=B1b
  • 这里线性规划中需要 x ≥ 0 x\ge0 x0,所以就必须保证 B − 1 b ≥ 0 B^{-1}b\ge 0 B1b0
  • 这里的 x n T x_n^T xnT解可以由 x b T x_b^T xbT通过线性组合表出,所以通解x表示为:
    x = ( x b T x n T ) = ( B − 1 b 0 ) \begin{equation} x=\begin{pmatrix}x_b^T\\\\x_n^T\end{pmatrix}=\begin{pmatrix}B^{-1}b\\\\0\end{pmatrix} \end{equation} x= xbTxnT = B1b0

3.2 证明1

  • 已知 : x = ( B − 1 b 0 ) x=\begin{pmatrix}B^{-1}b\\\\0\end{pmatrix} x= B1b0 ,其中A=(B,N),B可逆且 B − 1 b ≥ 0 B^{-1}b\ge 0 B1b0
  • 证明: x ∈ S x\in S xS是S的极点
  • 证明:
    – 代入可得Ax=b ,所以可得 x ∈ S x\in S xS
    A x = ( B N ) ( B − 1 b 0 ) = b \begin{equation} Ax=\begin{pmatrix}B&N\end{pmatrix}\begin{pmatrix}B^{-1}b\\\\0\end{pmatrix}=b \end{equation} Ax=(BN) B1b0 =b
    – 不妨设 x = λ x ˉ + ( 1 − λ ) x ~ x=\lambda \bar{x}+(1-\lambda)\tilde{x} x=λxˉ+(1λ)x~,其中 λ ∈ ( 0 , 1 ) , x ˉ , x ~ ∈ S \lambda \in(0,1),\bar{x},\tilde{x}\in S λ(0,1),xˉ,x~S
    – 可知 A x ˉ = b , x ˉ ≥ 0 , A x ~ = b , x ~ ≥ 0 A\bar{x}=b,\bar{x}\ge0,A\tilde{x}=b,\tilde{x}\ge0 Axˉ=b,xˉ0,Ax~=b,x~0
    – 可将 x ˉ , x ~ \bar{x},\tilde{x} xˉ,x~分解为通解形式:
    x ˉ = [ x B ˉ x N ˉ ] ; x ~ = [ x B ~ x N ~ ] ; x = ( B − 1 b 0 ) \begin{equation} \bar{x}=\begin{bmatrix}\bar{x_B}\\\\\bar{x_N}\end{bmatrix};\tilde{x}=\begin{bmatrix}\tilde{x_B}\\\\\tilde{x_N}\end{bmatrix};x=\begin{pmatrix}B^{-1}b\\\\0\end{pmatrix} \end{equation} xˉ= xBˉxNˉ ;x~= xB~xN~ ;x= B1b0
    – 代入方程可得:
    ( B − 1 b 0 ) = λ [ x B ˉ x N ˉ ] + ( 1 − λ ) [ x B ~ x N ~ ] ; \begin{equation} \begin{pmatrix}B^{-1}b\\\\0\end{pmatrix}=\lambda\begin{bmatrix}\bar{x_B}\\\\\bar{x_N}\end{bmatrix}+(1-\lambda)\begin{bmatrix}\tilde{x_B}\\\\\tilde{x_N}\end{bmatrix}; \end{equation} B1b0 =λ xBˉxNˉ +(1λ) xB~xN~ ;
  • 整理可得:
    0 = λ x N ˉ + ( 1 − λ ) x N ~ \begin{equation} 0=\lambda\bar{x_N}+(1-\lambda)\tilde{x_N} \end{equation} 0=λxNˉ+(1λ)xN~
  • 因为 λ ≥ 0 , 1 − λ ≥ 0 , x N ˉ ≥ 0 , x N ~ ≥ 0 \lambda\ge0,1-\lambda\ge 0,\bar{x_N}\ge0,\tilde{x_N}\ge0 λ0,1λ0,xNˉ0,xN~0 可得:
    x N ˉ = x N ~ = 0 \begin{equation}\bar{x_N}=\tilde{x_N}=0\end{equation} xNˉ=xN~=0
  • 又因为 A x ˉ = b A\bar{x}=b Axˉ=b,即
    ( B N ) ( x B ˉ 0 ) = B x B ˉ = b → x B ˉ = B − 1 b \begin{equation} \begin{pmatrix}B&N\end{pmatrix}\begin{pmatrix}\bar{x_B}\\\\0\end{pmatrix}=B\bar{x_B}=b\to \bar{x_B}=B^{-1}b \end{equation} (BN) xBˉ0 =BxBˉ=bxBˉ=B1b
  • 这样可得:
    x ˉ = ( B − 1 b 0 ) \begin{equation}\bar{x}=\begin{pmatrix}B^{-1}b\\\\0\end{pmatrix}\end{equation} xˉ= B1b0
  • 同理可得:
    x ~ = ( B − 1 b 0 ) \begin{equation}\tilde{x}=\begin{pmatrix}B^{-1}b\\\\0\end{pmatrix}\end{equation} x~= B1b0
  • 所以x点无法由两个不同的点进行凸组合,所以x是极值点

3.3 证明2

  • 已知 : x ∈ S x\in S xS是S的极点, A x = b , x ≥ 0 Ax=b,x\ge0 Ax=b,x0
  • 证明: x = ( B − 1 b 0 ) x=\begin{pmatrix}B^{-1}b\\\\0\end{pmatrix} x= B1b0 ,其中A=(B,N),B可逆且 B − 1 b ≥ 0 B^{-1}b\ge 0 B1b0
  • 证明:
  • 不妨设:
    x = ( x 1 , x 2 , ⋯   , x k , 0 , ⋯   , 0 ) T , x 1 , ⋯   , x k ≥ 0 \begin{equation} x=(x_1,x_2,\cdots,x_k,0,\cdots,0)^T,x_1,\cdots,x_k\ge0 \end{equation} x=(x1,x2,,xk,0,,0)T,x1,,xk0
  • 考虑A的对应列 a 1 , a 2 , ⋯   , a k a_1,a_2,\cdots,a_k a1,a2,,ak,假如 a 1 , a 2 , ⋯   , a k a_1,a_2,\cdots,a_k a1,a2,,ak线性相关,则存在不全为0的系数,使得如下方程成立
    θ 1 a 1 + θ 2 a 2 + ⋯ + θ k a k = 0 \begin{equation} \theta_1a_1+\theta_2a_2+\cdots+\theta_ka_k=0 \end{equation} θ1a1+θ2a2++θkak=0
  • 构造n维向量 θ = ( θ 1 , θ 2 , ⋯   , θ k , 0 , ⋯   , 0 ) \theta = (\theta_1,\theta_2,\cdots,\theta_k,0,\cdots,0) θ=(θ1,θ2,,θk,0,,0),前k列不为零,其他为0,则可得 A θ A\theta Aθ如下:
    A θ = θ 1 a 1 + θ 2 a 2 + ⋯ + θ k a k = 0 \begin{equation} A\theta = \theta_1a_1+\theta_2a_2+\cdots+\theta_ka_k=0 \end{equation} Aθ=θ1a1+θ2a2++θkak=0
  • 只要取充分小的 ϵ > 0 \epsilon >0 ϵ>0,使得
    x ˉ = x + ϵ θ ≥ 0 , x ~ = x − ϵ θ ≥ 0 \begin{equation} \bar{x}=x+\epsilon \theta \ge 0,\tilde{x}=x-\epsilon \theta\ge 0 \end{equation} xˉ=x+ϵθ0,x~=xϵθ0
  • 乘以A可得:
    A x ˉ = A x + A ϵ θ = b , A x ~ = A x − A ϵ θ = b \begin{equation} A\bar{x}=Ax+A\epsilon \theta=b,A\tilde{x}=Ax-A\epsilon \theta=b \end{equation} Axˉ=Ax+Aϵθ=b,Ax~=AxAϵθ=b
  • 则可得:
    x ˉ , x ~ ∈ S , x = 1 2 x ˉ + 1 2 x ~ \begin{equation} \bar{x},\tilde{x}\in S,x=\frac{1}{2}\bar{x}+\frac{1}{2}\tilde{x} \end{equation} xˉ,x~S,x=21xˉ+21x~
  • 根据上面可得,x点可以由两个点 x ˉ , x ~ \bar{x},\tilde{x} xˉ,x~线性组合,与x是极点矛盾!!!所以我们假设的假如 a 1 , a 2 , ⋯   , a k a_1,a_2,\cdots,a_k a1,a2,,ak线性相关不成立
  • 结论: a 1 , a 2 , ⋯   , a k a_1,a_2,\cdots,a_k a1,a2,,ak线性无关, r ( A ) = m → k ≤ m r(A)=m\to k\le m r(A)=mkm
    – 若情况1,k=m,记
    x B = ( x 1 x 2 ⋯ x m ) T , x N = 0 \begin{equation} x_B=\begin{pmatrix}x_1&x_2&\cdots&x_m\end{pmatrix}^T,x_N=0 \end{equation} xB=(x1x2xm)T,xN=0
  • 可得:
    A x = ( B , N ) ( x B 0 ) = B x B = b → x B = B − 1 b \begin{equation} Ax=(B,N)\begin{pmatrix}x_B\\\\0\end{pmatrix}=Bx_B=b\to x_B=B^{-1}b \end{equation} Ax=(B,N) xB0 =BxB=bxB=B1b
  • 结论:
    x = ( B − 1 b 0 ) \begin{equation} x=\begin{pmatrix}B^{-1}b\\\\0\end{pmatrix}\end{equation} x= B1b0

– 若情况2: k < m k<m k<m,那么我们可以凑m项为B,
B = ( a 1 a 2 ⋯ a k a k + 1 ⋯ a m ) \begin{equation} B=\begin{pmatrix}a_1&a_2&\cdots&a_k&a_{k+1}&\cdots&a_m\end{pmatrix} \end{equation} B=(a1a2akak+1am)
x B = ( x 1 x 2 ⋯ x k 0 ⋯ 0 ) \begin{equation} x_B=\begin{pmatrix}x_1&x_2&\cdots&x_k&0&\cdots&0\end{pmatrix} \end{equation} xB=(x1x2xk00)

  • 可得:
    A x = ( B , N ) ( x B 0 ) = B x B = b → x B = B − 1 b \begin{equation} Ax=(B,N)\begin{pmatrix}x_B\\\\0\end{pmatrix}=Bx_B=b\to x_B=B^{-1}b \end{equation} Ax=(B,N) xB0 =BxB=bxB=B1b
  • 12
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值