【最优化】最新北航研究生最优化期末考试知识点概括

前有学长精心的总结,在其基础上增加了部分内容,供大家参考!


知识点总结

  • 半定规划是一个非光滑 凸优化 问题
  • 凸规划的 KKT 点是全局极小点
    • 定理:凸规划的任意 KKT 点是全局极小点
  • 目标函数 Hessian 阵半正定时,且约束为凸时为凸规划
  • 将这些(通常是非光滑的)问题重新表述成光滑的优化问题常用技巧:

min ⁡ x ∈ R n    f ( x ) ⟷ min ⁡ x ∈ R n , t ∈ R    t s . t .    f ( x ) ≤ t \min_{x \in \mathbb{R}^n}~~f(x) \longleftrightarrow \begin{aligned} \min_{x\in\mathbb{R}^n,t\in \mathbb{R}} ~~& t\\ \mathrm{s.t.} ~~& f(x) \leq t \end{aligned} xRnmin  f(x)xRn,tRmin  s.t.  tf(x)t

(a) f ( x ) = ∥ r ( x ) ∥ ∞ f(x) = \| r(x) \|_{\infty} f(x)=r(x) 可重述为
min ⁡ x ∈ R n , t ∈ R    t s . t .    − t ≤ r i ( x ) ≤ t , i = 1 , 2 , ⋯   , m \begin{aligned} \min_{x\in\mathbb{R}^n,t\in \mathbb{R}} ~~& t\\ \mathrm{s.t.} ~~& -t \leq r_i(x) \leq t,i=1,2,\cdots,m \end{aligned} xRn,tRmin  s.t.  ttri(x)t,i=1,2,,m
(b) f ( x ) = max ⁡ { r i ( x ) , i = 1 , 2 , ⋯   , m } f(x) = \max\{r_i(x),i=1,2,\cdots,m\} f(x)=max{ ri(x),i=1,2,,m} 可重述为
min ⁡ x ∈ R n , t ∈ R    t s . t .    r i ( x ) ≤ t , i = 1 , 2 ⋯   , m \begin{aligned} \min_{x\in\mathbb{R}^n,t\in \mathbb{R}} ~~& t\\ \mathrm{s.t.} ~~& r_i(x) \leq t,i=1,2\cdots,m \end{aligned} xRn,tRmin  s.t.  tri(x)t,i=1,2,m
© f ( x ) = ∥ r ( x ) ∥ 1 f(x) = \|r(x)\|_1 f(x)=r(x)1 可重述为
min ⁡ x ∈ R n , t ∈ R m    ∑ i = 1 m t i s . t .    − t i ≤ r i ( x ) ≤ t i , i = 1 , 2 , ⋯   , m \begin{aligned} \min_{x\in\mathbb{R}^n,t\in \mathbb{R}^m} ~~& \sum_{i=1}^m t_i\\ \mathrm{s.t.} ~~& -t_i \leq r_i(x) \leq t_i,i=1,2,\cdots,m \end{aligned} xRn,tRmmin  s.t.  i=1mtitiri(x)ti,i=1,2,,m

  • 线性规划是凸规划,其KKT点是全局最优点

  • 求解二次规划的积极集法中,初始迭代 不是任意的 ,要是满足约束的可行点

  • 二次(courant)罚函数中, 不能固定罚函数,当罚参数趋于 + ∞ +\infty + 时由罚函数所得的原问题的近似解才是可行的。

  • 增广 Lagrange 函数中, 固定 Lagrange 乘子为与问题为与问题最优解对应的 Lagrange 乘子, 且二阶充分条件成立 ,则对充分大的罚参数,求增广Lagrange函数的极小点可得原问题的解。

  • l 1 l_1 l1 罚函数是精确罚函数

    • 特点:不需要 σ → ∞ \sigma \rightarrow \infty σ,避免了无约束优化问题的病态性;但是是非光滑的,带来数值计算上的困难
  • 凸规划,且满足 Slater 约束规范,则强对偶性成立

    • S l a t e r   C Q + 凸 规 划 ⇒ 强 对 偶 定 理 \mathrm{Slater ~ CQ} + 凸规划 \Rightarrow 强对偶定理 Slater CQ+
  • 二次规划不一定是凸规划,需要 Hessian 矩阵半正定

对数障碍函数

ϕ ( x , μ ) = f ( x ) − μ ∑ i log ⁡ ( − c i ( x ) ) \phi(x,\mu) = f(x) - \mu \sum_i \log(-c_i(x)) ϕ(x,μ)=f(x)μilog(ci(x))

倒数障碍函数

ϕ ( x , μ ) = f ( x ) − μ ∑ i [ c i ( x ) ] − 1 \phi(x,\mu) = f(x) - \mu \sum_i [c_i(x)]^{-1} ϕ(x,μ)=f(x)μi[ci(x)]1

二次罚函数

ϕ ( x , σ ) = f ( x ) + 1 2 σ ∑ i ( c i ( x ) ) 2 = f ( x ) + 1 2 σ c ( x ) T c ( x ) \begin{aligned} \phi(x,\sigma) = & f(x) + \frac{1}{2}\sigma\sum_i(c_i(x))^2 \\ = & f(x) + \frac{1}{2}\sigma c(x)^Tc(x) \end{aligned} ϕ(x,σ)==f(x)+21σi(ci(x))2f(x)+21σc(x)Tc(x)

  • Lagrange 乘子估计为

λ i ( k ) = σ k c ( k ) \lambda_i^{(k)} = \sigma_k c^{(k)} λi(k)=σkc(k)

乘子罚函数

ϕ ( x , λ , σ ) = f ( x ) + λ T c ( x ) + 1 2 σ c ( x ) T c ( x ) \phi(x,\lambda,\sigma) = f(x) + \lambda^T c(x) + \frac{1}{2} \sigma c(x)^Tc(x) ϕ(x,λ,σ)=f(x)+λTc(x)+21σc(x)Tc(x)

  • Lagrange 乘子估计为

λ ( k + 1 ) = λ ( k ) + σ c i ( k ) \lambda^{(k +1)} = \lambda^{(k)} + \sigma c_i^{(k)} λ(k+1)=λ(k)+σci(k)

基本SQP法

SQP 法中的二次规划子问题:

min ⁡ s ∈ R n    1 2 s T W ( k ) s + g ( k ) T s + f ( k ) s . t .    a i ( k ) T s + c i ( k ) = 0 , i ∈ E    a i ( k ) T s + c i ( k ) ≤ 0 , i ∈ I \begin{aligned} \min_{s \in \mathbb{R}^n} ~~& \frac{1}{2} s^T W^{(k)} s + {g^{(k)}}^T s + f^{(k)} \\ \mathrm{s.t.}~~& {a_i^{(k)}}^Ts + c_i^{(k)} = 0, i \in \mathcal{E}\\ ~~& {a_i^{(k)}}^Ts + c_i^{(k)} \leq 0, i \in \mathcal{I} \end{aligned} sRnmin  s.t.    21sTW(k)s+g(k)Ts+f(k)ai(k)Ts+ci(k)=0,iEai(k)Ts+ci(k)0,iI
其中:

  • W ( k ) = ∇ 2 f ( x ( k ) ) + ∑ i λ i ( k ) ∇ 2 c i ( x ( k ) ) W^{(k)} = \nabla^2f(x^{(k)}) + \sum_i \lambda_i^{(k)} \nabla^2 c_i(x^{(k)}) W(k)=2f(x(k))+iλi(k)2ci(x(k))
  • s = x − x ( k ) s = x-x^{(k)} s=xx(k) 是新定义的一个向量
  • c i c_i ci 是把 x x x 带入约束得到的值
  • a i a_i ai 是在 x x x 点处的约束的梯度

解出 s s s 后, x = s + x ( k ) x = s + x^{(k)} x=s+x(k)

SQP 法失败,可能是由初值选取不当造成的

判定一个点是不是KKT点

x ⋆ x^{\star} x 满足
− g = ∑ i = 1 n λ i a i -g = \sum_{i=1}^n \lambda_i a_i g=i=1nλiai
解出乘子 λ \lambda λ 非负,为 KKT 点

一阶条件

一阶必要条件

KKT 条件
∇ x L ( x ∗ , λ ∗ ) = 0 c i ( x ∗ ) = 0 , i ∈ E c i ( x ∗ ) ≤ 0 , i ∈ I λ i ∗ ≥ 0 , i ∈ I λ i ∗ c i ( x ∗ ) = 0 , i ∈ I \begin{aligned} \nabla_x \mathcal{L}(x^*,\lambda^*) & = 0\\ c_i(x^*) & = 0, i \in \mathcal{E} \\ c_i(x^*) & \leq 0, i \in \mathcal{I} \\ \lambda_i^* &\geq 0, i \in \mathcal{I} \\ \lambda_i^*c_i(x^*) & = 0, i \in \mathcal{I} \end{aligned} xL(x,λ)ci(x)ci(x)λiλici(x)=0=0,iE0,iI0,iI=0,iI

约束规范条件

LCQ、LICQ条件

若满足 LCQ 或 LICQ 条件,则极小点必是 KKT 点

  • LCQ:在该点的等式约束和积极约束都是线性约束
  • LICQ:该点处的等式约束和积极约束的梯度线性无关(非零)

任意约束的 Lagrange 乘子的相反数均反映约束函数发生变化时所引起的最优值的变化率


二阶条件

二阶充分条件

  • 计算积极约束的梯度 a i , i ∈ A a_i,i \in \mathcal{A} ai,iA
  • 计算 Lagrange 函数的 Hessian 矩阵 W W W
  • 根据 p T a i p^Ta_i pTai 的条件求出 p ∈ F ⋆ p \in F^{\star} pF
  • 计算 p T W p p^T W p pTWp,若大于 0,则该点是局部解,否则不是

二阶充分条件: x ⋆ x^{\star} x 处KKT条件成立且
p T W p > 0 p^T W p > 0 pTWp>0
x ⋆ x^{\star} x 是问题的严格局部极小点

二阶必要条件

  • x ⋆ x^{\star} x 是局部极小点
  • 正则性假设成立
  • 则存在乘子 λ ⋆ \lambda^{\star} λ 使得 KKT 条件成立


p T W p ≥ 0 p^T W p \geq 0 pTWp0

对偶函数求法

若对偶函数有解析形式,步骤如下:

  1. 先写出 Lagrange 函数 L ( x , λ ) \mathcal{L}(x,\lambda) L(x,λ)
  2. 求出使 Lagrange 函数取极小值时的 x x x
  3. x x x 代回源 Lagrange 函数得到以 λ \lambda λ 为变量的函数 φ ( λ ) = min ⁡ x ∈ R n   L ( x , λ ) \varphi(\lambda)= \min_{x\in \mathbb{R}^n}~\mathcal{L}(x,\lambda) φ(λ)=minxRn L(x,λ),即为对偶函数
  4. 原问题为求最小值,对偶问题即为求最大值,对偶问题取最优值时的 λ \lambda λ 为对应原问题取最优值时的 Lagrange 乘子

考虑问题
min ⁡ x ∈ R n    f ( x ) = c T x s . t .    A x ≥ b    x ≥ 0 \begin{aligned} \min_{x\in\mathbb{R}^n} ~~& f(x) = c^T x \\ \mathrm{s.t.} ~~& Ax \geq b \\ ~~&x\geq 0 \end{aligned} xRnmin  s.t.    f(x)=cTxAxbx0
分别基于集合约束 x ∈ X = { x ∈ R n ∣ x ≥ 0 } x\in X=\{x\in\mathbb{R}^n | x\geq 0\} xX={ xRnx0} x ∈ X = R n x \in X = \mathbb{R}^n xX=Rn 写出该问题的对偶问题。

(a) Lagrange 函数为
L ( x , λ ) = c T x + λ T ( b − A x ) = ( c T − λ T A ) x + λ T b \begin{aligned} \mathcal{L}(x,\lambda) &= c^Tx + \lambda^T(b - Ax)\\ &=(c^T-\lambda^TA)x + \lambda^Tb \end{aligned} L(x,λ)=cTx+λT(bAx)=(cTλTA)x+λTb
记对偶函数为
φ ( λ ) = min ⁡ x ≥ 0   L ( x , λ ) \varphi(\lambda) = \min_{x\geq 0}~\mathcal{L}(x,\lambda) φ(λ)=x0min L(x,λ)
因此,需要 c T − λ T A ≥ 0 c^T - \lambda^TA\geq 0 cTλTA0,则对偶函数为 φ ( λ ) = b T λ \varphi(\lambda) = b^T\lambda φ(λ)=bTλ

对偶问题
max ⁡ x ≥ 0    b T λ s . t .    λ T A ≤ c T    λ ≥ 0 \begin{aligned} \max_{x \geq 0} ~~& b^T\lambda \\ \mathrm{s.t.} ~~& \lambda^TA\leq c^T \\ ~~&\lambda\geq 0 \end{aligned} x0max  s.t.    bTλλTAcTλ0
(b) Lagrange 函数为
L ( x , λ ) = c T x + λ T ( b − A x ) + μ ( − x ) = ( c T − λ T A − μ T ) x + λ T b \begin{aligned} \mathcal{L}(x,\lambda) &= c^Tx + \lambda^T(b - Ax) + \mu(-x)\\ &=(c^T-\lambda^TA - \mu^T)x + \lambda^Tb \end{aligned} L(x,λ)=cTx+λT(bAx)+μ(x)=(cTλTAμT)x+λTb
记对偶函数为
φ ( λ ) = min ⁡ x ∈ R n   L ( x , λ ) \varphi(\lambda) = \min_{x\in \mathbb{R}^n}~\mathcal{L}(x,\lambda) φ(λ)=xRnmin L(x,λ)
因此,需要 c T − λ T A − μ T = 0 c^T - \lambda^TA - \mu^T = 0 cTλTAμT=0,则对偶函数为 φ ( λ ) = b T λ \varphi(\lambda) = b^T\lambda φ(λ)=bTλ

对偶问题
max ⁡ x ∈ R n    b T λ s . t .    λ T A + μ T = c T    λ ≥ 0 , μ ≥ 0 \begin{aligned} \max_{x\in\mathbb{R}^n} ~~& b^T\lambda \\ \mathrm{s.t.} ~~& \lambda^TA +\mu^T = c^T \\ ~~&\lambda\geq 0,\mu\geq 0 \end{aligned} xRnmax  s.t.    bTλλTA+μT=cTλ0,μ0
注记:由此题体会写对偶问题的灵活性,即通常仅把难处理的约束松弛到目标函数中形成 Lagrange 函数,这样对偶问题的变量要少一些. 但是求对偶函数时可能要稍微复杂些。显然,两个问题的是等价的。

积极集法

对问题
min ⁡ x ∈ R n q ( x ) = 1 2 x T G x + d T x s.t. a i T x = b i , i ∈ A \begin{aligned} \min_{x\in\mathbb{R}^n} \quad q(x) &= \frac12x^TGx+d^Tx \\ \text{s.t.}\quad a^T_ix& = b_i, \quad i\in \mathcal A \end{aligned} xRnminq(x)s.t.aiTx=21xTGx+dTx=bi,iA
考虑第 k k k 次迭代, x ( k ) x^{(k)} x(k) 是可行点, A ( k ) \mathcal{A}^{(k)} A(k) 是积极集。

s = x − x ( k ) s = x - x^{(k)} s=xx(k) g ( k ) = ∇ q ( x ( k ) ) = G x ( k ) + d g^{(k)} = \nabla q(x^{(k)}) = Gx^{(k)} + d g(k)=q(x(k))=Gx(k)+d,则得优化问题
min ⁡ s ∈ R n q ( x ) = 1 2 s T G s + g ( k ) T s s.t. a i T s = 0 , i ∈ A \begin{aligned} \min_{s\in\mathbb{R}^n} \quad q(x) &= \frac12 s^TGs+{g^{(k)}}^Ts \\ \text{s.t.}\quad a^T_is& = 0, \quad i\in \mathcal A \end{aligned} sRnminq(x)s.t.aiTs=21sTGs+g(k)Ts=0,iA

  1. 解该问题得 s ( k ) s^{(k)} s(k),乘子为 λ ( k ) \lambda^{(k)} λ(k)
  2. λ ( k ) \lambda^{(k)} λ(k) 有负, 删除最负的分量对应的约束
  3. 在新的约束的条件下,求取得目标函数最小值 s ( k ) s^{(k)} s(k),作为搜索方向 p p p
  4. 步长 α k = min ⁡ ( 1 , min ⁡ i ∉ A ( k ) , a i T p ( k ) < 0 b i − a i T x ( k ) a i T p ( k ) ) \alpha_k=\min \left( 1,\min_{i\notin\mathcal A^{(k)}, a_i^Tp^{(k)}<0} \frac{b_i-a^T_ix^{(k)}}{a^T_ip^{(k)}}\right) αk=min(1,mini/A(k),aiTp(k)<0aiTp(k)biaiTx(k)) ,新的点为 x ( k + 1 ) = x ( k ) + α k p ( k ) x^{(k+1)}=x^{(k)}+\alpha_kp^{(k)} x(k+1)=x(k)+αkp(k)
  5. 迭代直到 Lagrange 乘子没有负

有效集法介绍(Active Set Method)

半定规划

形如:

min ⁡ C ⋅ X  s.t.  A i ⋅ X = b 1 X ≥ 0 \begin{array}{cl}{ {\operatorname{min}}} & {C \cdot X} \\ {\text { s.t. }} & {A_{i} \cdot X=b_{1}} \\ {} & {X \geq 0}\end{array} min s.t. CXAiX=b1X0
对偶:

max ⁡    ∑ i = 1 m y i b i  s.t.   ∑ i = 1 m y i A i + S = C S ≥ 0 \begin{aligned}{ {\operatorname{max}}} ~~& {\sum_{i=1}^{m} y_{i} b_{i}} \\ {\text { s.t.}} ~~& {\sum_{i=1}^{m} y_{i} A_{i}+S=\mathbf{C}} \\ {} & {S \geq 0}\end{aligned} max   s.t.  i=1myibii=1myiAi+S=CS0
举例:
 max    11 y 1 + 19 y 2 s.t.    y 1 [ 1 0 1 0 3 7 1 7 5 ] + y 2 [ 0 2 8 2 6 0 8 0 4 ] + S = [ 1 2 3 2 9 0 3 0 7 ] S ≥ 0 \begin{aligned}{\text { max }}~~ & {11 y_{1}+19 y_{2}} \\ {\text {s.t. }}~~ & {y_{1}\left[\begin{array}{ccc}{1} & {0} & {1} \\ {0} & {3} & {7} \\ {1} & {7} & {5}\end{array}\right]+y_{2}\left[\begin{array}{ccc}{0} & {2} & {8} \\ {2} & {6} & {0} \\ {8} & {0} & {4}\end{array}\right]+S=\left[\begin{array}{ccc}{1} & {2} & {3} \\ {2} & {9} & {0} \\ {3} & {0} & {7}\end{array}\right]} \\ {} & {S \geq 0}\end{aligned}  max   s.t.   11y1+19y2y1101037175+y2028260804+S=123290307S0

参考资料

[1] 有效集法介绍(Active Set Method)

[2] 北航研究生课程最优化方法期末知识点总结

[3] 刘红英,夏勇,周永生. 数学规划基础,北京,北京航空航天大学出版社,2012.

猜你喜欢

转载自blog.csdn.net/qq_38904659/article/details/112503711
今日推荐