线性规划求解——增广拉格朗日函数法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/itnerd/article/details/86183469

原问题

(P) min x    c T x s . t .    A x = b x 0 \min_x \;c^Tx\\s.t. \;Ax=b\\x\geq 0 \tag{P}

对偶问题

(D) max y    b T y s . t .    A T y + s = c s 0 \max_y\;b^Ty\\s.t.\;A^Ty+s=c\\s\geq 0\tag{D}
A R m × n , x R n , s R n , y R m A \in \R^{m\times n}, x \in \R^{n}, s \in \R^{n}, y \in \R^{m}


对偶问题的增广拉格朗日函数
L t ( y , s , λ ) = b T y + λ T ( A T y + s c ) + t 2 A T y + s c 2 2 , = b T y + t 2 ( A T y + s c + λ t 2 2 λ t 2 2 ) , s . t . s 0 L_t(y,s,\lambda) = -b^Ty + \lambda^T(A^Ty+s-c) + \frac{t}{2}||A^Ty+s-c||_2^2,\\ = -b^Ty + \frac{t}{2} \big(||A^Ty+s-c + \frac{\lambda}{t}||_2^2 - ||\frac{\lambda}{t}||_2^2 \big), \\ s.t.\quad s \geq 0
迭代步骤为:

  • (1) ( y + , s + ) = a r g m i n s 0 , y L t ( y , s , λ ) = a r g m i n s 0 , y b T y + t 2 ( A T y + s c + λ t 2 2 ) (y^+,s^+) = \mathop{argmin}_{s\geq0,y}\quad L_t(y,s,\lambda) \\ = \mathop{argmin}_{s\geq0,y}\quad -b^Ty + \frac{t}{2} \big(||A^Ty+s-c + \frac{\lambda}{t}||_2^2 \big) \tag{1}
  • λ + = λ t ( c A T y + s + ) \lambda^+ = \lambda -t(c-A^Ty^+-s^+)
    注意到子问题 (1) 中,若求得 y y 的最优点 y + y^+ ,则 s + s^+ 必须满足:
    s + = a r g m i n s 0 A T y + + s c + λ t 2 2 = P R + n ( c A T y + λ t ) s^+ =\quad \mathop{argmin}_{s\geq0}\quad ||A^Ty^++s-c + \frac{\lambda}{t}||_2^2 \\=\quad \mathbb{P}_{\mathbf{R}_+^n}(c-A^Ty^+-\frac{\lambda}{t})
    其中, P R + n ( ) \mathbb{P}_{\mathbf{R}_+^n}(\cdot) 表示向 R n \mathbb{R}^n 空间中第一象限的投影。将上式代入 (1) 中可以将变量 s s 消去,得到简化的迭代形式:
  • (2) y + = a r g m i n s 0 , y b T y + t 2 i = 1 n Ψ i ( y , λ , t ) y^+ =\quad \mathop{argmin}_{s\geq0,y}\quad -b^Ty + \frac{t}{2} \sum_{i=1}^n \Psi_i(y,\lambda,t) \tag{2}
  • λ + = P R + n ( λ t ( c A T y ) ) \lambda^+ =\quad \mathbb{P}_{\mathbf{R}_+^n}(\lambda -t(c-A^Ty))
    其中
    ψ i ( y , λ , t ) = { ( A i T y c i + λ i t ) 2 , c i A i T y λ i / t < 0 0 , o t h e r w i s e \psi_i(y,\lambda,t)=\left\{ \begin{array}{lr} (A_i^Ty-c_i + \frac{\lambda_i}{t})^2, & c_i - A_i^Ty - \lambda_i/t <0 \\ 0, & otherwise \end{array} \right.
    对子问题 (2}) 的求解可以采用梯度法,半光滑牛顿法等等。

猜你喜欢

转载自blog.csdn.net/itnerd/article/details/86183469
今日推荐