本题摘自《最优化方法及其Matlab程序设计 第一版》 123(130/271)
【例22】考虑优化问题
minf(x)=−2x12−x12 ,s.t.x12+x22−2=0 ,−x1+x2≥0 ,x1≥0 ,x2≥0.
\mathrm{min} f(x) = -2x^2_1-x^2_1 \ , \\
\mathrm{s.t.} \quad x^2_1+x^2_2-2=0 \ ,\\
-x_1+x_2 \ge 0 \ , \\
x_1 \ge 0 \ , x_2 \ge 0.
minf(x)=−2x12−x12 ,s.t.x12+x22−2=0 ,−x1+x2≥0 ,x1≥0 ,x2≥0.
试验证x∗=(1,1)Tx^*=(1,1)^\mathrm{T}x∗=(1,1)T为KTKTKT点,并求出问题的KTKTKT对。
【解】记
f(x)=−2x12−x12,h(x)=x12+x22−2,g1(x)=−x1+x2,g2(x)=x1,g3(x)=x2.
\begin{aligned}
f(x) &= -2x^2_1-x^2_1,\\
h(x) &= x^2_1+x^2_2-2,\\
g_1(x) &= -x_1+x_2, \\
g_2(x) &= x_1, \\
g_3(x) &= x_2.
\end{aligned}
f(x)h(x)g1(x)g2(x)g3(x)=−2x12−x12,=x12+x22−2,=−x1+x2,=x1,=x2.
求梯度,得到
▽f(x)=[−4x1−2x2],▽h(x)=[2x12x2],▽g1(x)=[−11],▽g2(x)=[10],▽g3(x)=[01].
\begin{aligned}
\bigtriangledown f(x) &= \begin{bmatrix}
-4x_1 \\
-2x_2
\end{bmatrix}, \quad \bigtriangledown h(x) = \begin{bmatrix}
2x_1 \\
2x_2
\end{bmatrix}, \\
\bigtriangledown g_1(x) &= \begin{bmatrix}
-1 \\
1
\end{bmatrix}, \quad \bigtriangledown g_2(x) = \begin{bmatrix}
1 \\
0
\end{bmatrix}, \quad \bigtriangledown g_3(x) = \begin{bmatrix}
0 \\
1
\end{bmatrix}.
\end{aligned}
▽f(x)▽g1(x)=[−4x1−2x2],▽h(x)=[2x12x2],=[−11],▽g2(x)=[10],▽g3(x)=[01].
把x∗=(1,1)Tx^*=(1,1)^\mathrm{T}x∗=(1,1)T代入上面5个式子,由KTKTKT条件有,
注意:这里一定注意要加负号!!!!
{−4−2μ+ω1−ω2=0−2−2μ−ω1+ω3=0(1)
\left\{\begin{matrix}
-4-2\mu+\omega_1-\omega_2 = 0 \\
-2-2\mu-\omega_1+\omega_3 = 0
\end{matrix}\right.
\tag{1}
{−4−2μ+ω1−ω2=0−2−2μ−ω1+ω3=0(1)
因为
{ω2▽g2(xˉ)=0ω3▽g3(xˉ)=0⇒{ω2∗=0ω3∗=0
\left\{\begin{matrix}
\omega_2\bigtriangledown g_2(\bar{x}) = 0 \\
\omega_3\bigtriangledown g_3(\bar{x}) = 0
\end{matrix}\right.
\Rightarrow
\left\{\begin{matrix}
\omega^*_2 = 0 \\
\omega^*_3 = 0
\end{matrix}\right.
{ω2▽g2(xˉ)=0ω3▽g3(xˉ)=0⇒{ω2∗=0ω3∗=0
所以(1)(1)(1)变为
{−4−2μ+ω1=0−2−2μ−ω1=0(2)
\left\{\begin{matrix}
-4-2\mu+\omega_1 = 0 \\
-2-2\mu-\omega_1 = 0
\end{matrix}\right.
\tag{2}
{−4−2μ+ω1=0−2−2μ−ω1=0(2)
求解(2)(2)(2)式,得到
{μ∗=−1.5ω1∗=1
\left\{\begin{matrix}
\begin{aligned}
\mu^* &= -1.5 \\
\omega^*_1 &= 1
\end{aligned}
\end{matrix}\right.
{μ∗ω1∗=−1.5=1
这表明 x∗x^*x∗ 是 KTKTKT 点,(x∗,(μ∗,ω∗))(x^*,(\mu^*,\omega^*))(x∗,(μ∗,ω∗))是 KTKTKT 对,其中,μ∗=−1.5\mu^*=-1.5μ∗=−1.5,ω∗=(1,0,0)T\omega^*=(1,0,0)^\mathrm{T}ω∗=(1,0,0)T。
博客围绕一个优化问题展开,给出目标函数及约束条件,通过求梯度,将特定点代入式子,依据KT条件列出方程,经计算得出特定点是KT点,并求出对应的KT对,涉及算法相关知识。
2229

被折叠的 条评论
为什么被折叠?



