【最適化】逐次(ステップワイズ)二次計画法(SQP)

逐次 (ステップワイズ) 二次計画法 (SQP)

非線形制約問題を解くための直接的で効率的な方法は、問題の関数f ( x ) f(x)に基づいています。f ( x )ci ( x ) c_i(x)c( x )特に制約関数ci ( x ) c_i(x)c( x )は線形近似です。この考えに基づく方法がラグランジュ関数の安定点をニュートン法で解く方法であることから、ラグランジュ・ニュートン法とも呼ばれます。

等式制約問題 - KKT 条件付き解法

非線形計画問題を考えます
min ⁡ x 1 + x 2 s . t . x 1 2 = x 2 \begin{aligned} \min ~~& x_1 + x_2\\ \mathrm{st} ~~& x_1^2 = x_2 \end{整列}  s t   .バツ1+バツ2バツ12=バツ2

  • 分析ソリューション

ラグランジュ関数
L = x 1 + x 2 + λ ( x 1 2 − x 2 ) \mathcal{L} = x_1 + x_2 + \lambda(x_1^2 - x_2) を構築します。L=バツ1+バツ2+λ ( x12バツ2)
その KKT except1
+ 2 λ x 1 = 0 1 − λ = 0 x 1 2 − x 2 = 0 \begin{aligned} 1 + 2\lambda x_1 & = 0\\ 1 - \lambda & = 0\ \ x_1 ^2 - x_2 & = 0 \end{整列}1+2リットル×11lバツ12バツ2=0=0=0
x ∗ = ( − 1 2 , 1 4 ) x^* = (-\frac{1}{2}, \frac{1}{4}) を求める解析的方法バツ=( -2141) ,λ ∗ = 1 \lambda^* =l=1

  • x ( 0 ) = ( 0 , 0 ) x^{(0)} = (0,0)の場合バツ( 0 )=( 0 ,0 ) ,λ ( 0 ) \lambda^{(0)}l( 0 )は初期点です。数値法を使用して KKT ポイントを見つけます。

出発点:方程式を解くニュートン法、線形近似の考え方

設定ϕ ( t ) : R → R \phi(t): \mathbb{R} \to \mathbb{R}ϕ ( t ):RR,求φ ( t ) \phi(t)ϕ ( t )の根、つまり連立方程式ϕ ( t ) = 0 \phi(t) = 0ϕ ( t )=0

幾何学的な直感: 曲線を直線で近似する

等式制約の問題 - 方程式を解くためのニュートン法

デズ∈ R nz \in \mathbb{R}^nεRn,解方程foundr
1 ( z ) = 0 r 2 ( z ) = 0 ⋮ rn ( z ) = 0 \begin{aligned} r_1(z) &= 0\\ r_2(z) &= 0\\ \ vdots \\ r_n(z) &= 0\\ \end{aligned}r1( z )r2( z )rn( z )=0=0=0
与えられた近似解z ( k ) z^{(k)}( k ),令( k ) = z ( k + 1 ) − z ( k ) s^{(k)} = z^{(k + 1)} - z^{(k)}s( k )=( k + 1 )( k )
r ( k ) = [ r 1 ( z ( k ) ) r 2 ( z ( k ) ) ⋮ rn ( z ( k ) ) ] r^{(k)} = \begin{bmatrix} r_1(z ^{(k)})\\ r_2(z^{(k)})\\ \vdots\\ r_n(z^{(k)})\\ \end{bmatrix}r( k )=r1( z( k ) )r2( z( k ) )rn( z( k ) )

J ( z ( k ) ) = [ ∇ r 1 ( z ( k ) ) T ∇ r 2 ( z ( k ) ) T ⋮ ∇ rn ( z ( k ) ) T ] J(z^{(k)}) = \begin{bmatrix} \nabla r_1(z^{(k)})^T\\ \nabla r_2(z^{(k)})^T\\ \vdots\\ \nabla r_n(z^{( k)})^T\\ \end{bmatrix}J ( z( k ) )=∇r _1( z( k ) )T∇r _2( z( k ) )T∇r _n( z( k ) )T

氷を作る 一次方程式系を解く
l 1 ( s ) : = r 1 ( z ( k ) ) + ∇ r 1 ( z ( k ) ) T s = 0 l 2 ( s ) : = r 2 ( z ( k ) ) ) + ∇ r 2 ( z ( k ) ) T s = 0 ⋮ ln ( s ) : = rn ( z ( k ) ) + ∇ rn ( z ( k ) ) T s = 0 \begin{aligned} l_1( s) &:= r_1(z^{(k)}) + \nabla r_1(z^{(k)})^T s = 0\\ l_2(s) &:= r_2(z^{(k) }) + \nabla r_2(z^{(k)})^T s = 0\\ \vdots \\ l_n(s) &:= r_n(z^{(k)}) + \nabla r_n(z^ {( k)})^T s = 0\\ \end{aligned}l1()l2()ln( s ): =r1( z( k ) )+∇r _1( z( k ) )Ts _=0: =r2( z( k ) )+∇r _2( z( k ) )Ts _=0: =rn( z( k ) )+∇r _n( z( k ) )Ts _=0

J ( z ( k ) ) s = − r ( k ) J(z^{(k)}) s = - r^{(k)}J ( z( k ) )s=r( k )

実用的な方法は、方法が広く収束することを保証するために、ライン検索または信頼領域技術を追加します!

等式制約問題 - ラグランジュ・ニュートン法

min
⁡ x ∈ R n f ( x ) s . t . ci ( x ) = 0 , i = 1 , 2 , ⋯ , m \begin{aligned} \min_{x \in \mathbb{R} ^n} ~~& f(x)\\ \mathrm{st} ~~& c_i(x) = 0, i = 1,2,\cdots,m \end{aligned}x Rn  s t   .f ( x )c( × )=0 =1 2 メートル

min ⁡ x ∈ R n f ( x ) s . トン。c ( x ) = 0 \begin{aligned} \min_{x \in \mathbb{R}^n} ~~& f(x)\\ \mathrm{st} ~~& c(x) = 0 \end {整列}x Rn  s t   .f ( x )c ( × )=0
その中、c ( x ) : R n → R mc(x): \mathbb{R}^n \to \mathbb{R}^mc ( × ):RnRメートル

KKT Let
g ( x ) + A ( x ) λ = 0 c ( x ) = 0 \begin{aligned} g(x) + A(x) \lambda &= 0\\ c(x) &= 0 \ end {整列}g ( x )+A ( x ) lc ( x )=0=0
その中,A ( x ) = [ ∇ c 1 ( x ) , ∇ c 2 ( x ) , ⋯ , ∇ cm ( x ) ] A(x) = [\nabla c_1(x),\nabla c_2(x), \cdots,\nabla c_m(x)]( × )=[ c1( × ) c2( × ) cメートル( × ) ]

( x ( k ) , λ ( k ) ) (x^{(k)},\lambda^{(k)}) とする( ×( k )l( k ) )は近似解であり、そのニュートン補正( s ( k ) , w ( k ) ) (s^{(k)},w^{(k)})( s( k )w( k ) )[ W ( k ) A ( k ) A ( k ) T 0 ] [ sw ] = − [ g ( k ) + A ( k ) λ c ( k ) ] \begin{bmatrix} W^{
(k)} & A^{(k)} \\ {A^{(k)}}^T & 0 \end{bmatrix} \begin{bmatrix} s \\ w \end{bmatrix} = - \begin {bmatrix} g^{(k)} + A^{(k)} \lambda \\ c^{(k)} \end{bmatrix}[W( k )( k )T( k )0][sw]=[g( k )+( k ) lc( k )]
其中, A ( k ) = A ( x ( k ) ) A^{(k)} = A(x^{(k)}) ( k )=A ( ×( k ) ),W ( k ) = ∇ 2 f ( x ( k ) ) + ∑ i λ i ( k ) ∇ 2 ci ( x ( k ) ) W^{( k )} = \nabla^2f(x ^{(k)}) + \sum_i \lambda_i^{(k)} \example^2 c_i(x^{(k)})W( k )=2 f(×( k ) )+l( k )2c _( ×( k ) )

λ ( k + 1 ) = λ ( k ) + w ( k ) \lambda^{(k + 1)} = \lambda^{(k)} + w^{(k)}l( k + 1 )=l( k )+w( k )、次に( s ( k ) 、 λ ( k + 1 ) ) (s^{(k)}、\lambda^{(k + 1)})( s( k )l( k + 1 ) )定義
[ W ( k ) A ( k ) A ( k ) T 0 ] [ s λ ] = − [ g ( k ) c ( k ) ] \begin{bmatrix} W^{(k) } & A^{(k)} \\ {A^{(k)}}^T & 0 \end{bmatrix} \begin{bmatrix} s \\ \color{青}{\lambda}\end{bmatrix } } = - \begin{bmatrix}\color{blue}{g^{(k)}}\\c^{(k)}\end{bmatrix}[W( k )( k )T( k )0][sl]=[g( k )c( k )]
与えられた初期点( x ( 0 ) , λ ( 0 ) ) (x^{(0)},\lambda^{(0)})( ×( 0 )l( 0 ) )、( s ( k ) , λ ( k + 1 ) ) (s^{(k)},\lambda^{(k+1)}) を得るために線形方程式系を構築して解きます( s( k )l( k + 1 ) )x ( k + 1 ) = x ( k ) + s ( k ) x^{(k + 1)} = x^{(k)} + s^{(k)}バツ( k + 1 )=バツ( k )+s( k )、順番に繰り返します。

Lagrange 乘子法+ Newton 法= Lagrange-Newton 法

自然

定理は( x ∗ , λ ∗ ) (x^*,\lambda^*) を仮定します。( × ,l ) は等式制約問題の 2 次十分条件を満たし、rank ( A ∗ ) = m \mathrm{rank}(A^*)= mランク( A _ _ _ )=m、次にx ( 0 ) x^{(0)}バツ( 0 )はx ∗ x^*に十分近いバツλ ( 0 ) \lambda^{(0)}l( 0 )行列
[ W ( 0 ) A ( 0 ) A ( 0 ) T 0 ] \begin{bmatrix} W^{(0)} & A^{(0)}\\ {A^{( 0) }}^T & 0 \end{bmatrix}[W( 0 )( 0 )T( 0 )0]が特異でない場合、ラグランジュ・ニュートン法が定義され、シーケンス { ( x ( k ) , λ ( k ) } \{(x^{(k)},\lambda^{(k)} によって生成されます)この
メソッド{ ( ×( k )l( k ) } は( x ∗ , λ ∗ ) (x^*,\lambda^*)に 2 次収束します。( × ,l )

既存の問題

  • 最初のポイントに対する高い要件
  • 二次導関数を求める必要がある
  • 不等式制約のある最適化問題を解くことができません

基本・部分SQP

モチベーション

二次計画法の部分問題
min ⁡ s ∈ R n 1 2 s TW ( k ) s + g ( k ) T s + f ( k ) s . t . A ( k ) T s + c ( k ) = 0 \ begin {整列} \min_{s \in \mathbb{R}^n} ~~& \frac{1}{2} s^TW^{(k)} s + {g^{(k)}}^ T s + f^{(k)} \\ \mathrm{st}~~& {A^{(k)}}^Ts + c^{(k)} = 0 \end{aligned}s Rn  s t   .21sTW _( k )+g( k )Ts _+( k )( k )Ts _+c( k )=0
其中, s = x − x ( k ) s = x-x^{(k)} s=バツバツ( k )、目的関数は、2 次項が修正された 2 次テイラー展開です。その一次 (KKT) 条件は
W ( k ) s + g ( k ) + A ( k ) λ = 0 A ( k ) T s + c ( k ) = 0 \begin{aligned} W^{(k ) } s + g^{(k)} + A^{(k)} \lambda & = 0\\ {A^{(k)}}^Ts + c^{(k)} & = 0 \end {整列}W( k )+g( k )+( k ) l( k )Ts _+c( k )=0=0
[ W ( k ) A ( k ) A ( k ) T 0 ] [ s λ ] = − [ g ( k ) c ( k ) ] \begin{bmatrix} W^{ (
k) } & A^{(k)}\\ {A^{(k)}}^T & 0 \end{bmatrix} \begin{bmatrix} s \\\lambda \end{bmatrix} = - \begin {bmatrix } g^{(k)} \\ c^{(k)} \end{bmatrix}[W( k )( k )T( k )0][sl]=[g( k )c( k )]

設定Z ( k ) ∈ R n × ( n − m ) Z^{(k)} \in \mathbb{R}^{n \times (n - m)}Z( k )εRn × ( n m )の列は A ( k ) T s = 0 {A^{(k)}}^Ts = 0 を生成します( k )Ts _=ランク ( A ( k ) ) = m \mathrm{rank}(A^{(k)}) = m の場合、 0の解空間ランク( A _ _ _( k ) )=m,andZ( k ) W ( k ) Z ( k ) Z^{(k)} W^{(k)} Z^{(k)}Z( k ) W( k ) Z( k )が正定である場合、元の問題は 1 次条件と同じ解をもち、解は一意です

一般的な非線形性に対する対划问题
min ⁡ s ∈ R n 1 2 s TW ( k ) s + g ( k ) T s + f ( k ) s . トン。ai ( k ) T s + ci ( k ) = 0 , i ∈ E ai ( k ) T s + ci ( k ) = 0 , i ∈ I \begin{aligned} \min_{s \in \mathbb{R} ^n} ~~& \frac{1}{2} s^TW^{(k)} s + {g^{(k)}}^T s + f^{(k)} \\ \mathrm{ st}~~& {a_i^{(k)}}^Ts + c_i^{(k)} = 0, i \in \mathcal{E}\\ ~~& {a_i^{(k)}}^ Ts + c_i^{(k)} = 0, i \in \mathcal{I} \end{aligned}s Rn  s トン    21sTW _( k )+g( k )Ts _+( k )a( k )Ts _+c( k )=0 εa( k )Ts _+c( k )=0 ε私は
次の解決アルゴリズムがあります。

[外部リンクの画像の転送に失敗しました。ソース サイトにはリーチング防止メカニズムがある可能性があります。画像を保存して直接アップロードすることをお勧めします (img-s4TnoKaq-1610379805928)(https://cdn.jsdelivr.net/gh/ZhouKanglei /jidianxia/2020-12 -24/1608821899495-SQP.png)]

理想的な終了条件:KKT条件を満たす!

非線形計画問題を考えます
min ⁡ f ( x ) = − x 1 − x 2 s . t . c 1 ( x ) = x 1 2 − x 2 ≤ 0 c 2 ( x ) = x 1 2 + x 2 2 − 1 ≤ 0 \begin{aligned} \min ~~& f(x) = - x_1 - x_2\\ \mathrm{st} ~~& c_1(x) = x_1^2 -x_2 \leq 0\\ ~~ & c_2(x) = x_1^2 + x_2^2 - 1 \leq 0 \end{整列}  s トン    f ( x )=×1バツ2c1( × )=バツ12バツ20c2( × )=バツ12+バツ2210
そのジオメトリは次のように直感的です。

上記の非線形計画問題に対する幾何学的直観

最適解 x ∗ = ( 1 2 , 1 2 ) T x^* = (\frac{1}{\sqrt{2}},\frac{1}{\sqrt{2}}) は解析的手法によって得られます^Tバツ=(2 12 1)Tλ ∗ = ( 0 , 1 2 ) T \lambda^* = (0,\frac{1}{\sqrt{2}})^Tl=( 0 ,2 1)T。 _

与えられた初期点x ( 0 ) = ( 1 2 , 1 ) T x^{(0)} = (\frac{1}{2},1)^Tバツ( 0 )=(211 )Tλ ( 0 ) = ( 0 , 0 ) T \lambda^{(0)} = (0,0)^Tl( 0 )=( 0 ,0 )T、反復ステップは次のとおりです。

上記の問題の反復手順

アドバンテージ

ローカル二次収束

問題があります

  • 初期点が良くない場合、反復は発散する可能性があります
  • 無限または実行不可能など、部分問題の解が存在しない可能性があります
  • 2 番目の偏導関数W ( k ) W^{(k)}が必要ですW( k )

参考文献

[1] Liu Hongying、Xia Yong、Zhou Yongsheng. 数学プログラミングの基礎、北京、北京航空宇宙大学出版局、2012。

おすすめ

転載: blog.csdn.net/qq_38904659/article/details/112503923