非线性优化技术简介----一阶必要条件(一)

非线性优化技术简介

梯度和一阶泰勒展开式

假设 f ( x ) = f ( x 1 , x 2 , x 3 , . . . , x n ) f(x) = f(x_1, x_2, x_3,...,x_n) f(x)=f(x1,x2,x3,...,xn)是连续可导的,我们用一个(n x 1)向量表示f的梯度:
∇ f ( x ) = ( δ f ( x 1 ) δ x 1 ; δ f ( x 2 ) δ x 2 ; δ f ( x 3 ) δ x 3 ; . . . ; δ f ( x n ) δ x n ) \nabla f(x) = \Big(\frac{\delta f(x_1)}{\delta x_1}; \frac{\delta f(x_2)}{\delta x_2};\frac{\delta f(x_3)}{\delta x_3}; ... ; \frac{\delta f(x_n)}{\delta x_n} \Big) f(x)=(δx1δf(x1);δx2δf(x2);δx3δf(x3);...;δxnδf(xn))

得到一阶泰勒展开式:
f ( x + t d ) = f ( x ) + t ∇ f ( x ) T d + o ( t ) t → 0 f(x + td) = f(x) + t \nabla f(x)^\mathrm{T} d+ o(t) \quad t\rightarrow 0 f(x+td)=f(x)+tf(x)Td+o(t)t0

如果是 f ( x ) f(x) f(x)两次可导的, f ( x ) f(x) f(x)的海森矩阵(相当于二次导数)为:
∇ 2 f ( x ) = ( δ f ( x ) δ x i δ x j ) i , j \nabla^2 f(x) = \Big(\frac{\delta f(x)}{\delta x_i \delta x_j}\Big)_{i,j} 2f(x)=(δxiδxjδf(x))i,j

通过二阶泰勒展开式,我们得到了:
f ( x + t d ) = f ( x ) + t ∇ f ( x ) d + 1 2 t 2 d T ∇ 2 f ( x ) d + o ( t 2 ) t → 0 f(x+td) = f(x) +t \nabla f(x) d + \frac{1}{2}t^2d^T\nabla^2 f(x)d + o(t^2) \quad t \rightarrow 0 f(x+td)=f(x)+tf(x)d+21t2dT2f(x)d+o(t2)t0

例子

f ( x 1 , x 2 , x 3 ) = x 1 2 + x 1 x 2 + x 1 e x 3 + x 2 l n x 3 f(x_1, x_2, x_3) = x_1^2+ x_1x_2 + x_1e^{x_3} + x_2lnx_3 f(x1,x2,x3)=x12+x1x2+x1ex3+x2lnx3

∇ f ( x ) = [ 2 x 1 + x 2 + e x 3 x 1 + l n x 3 x 1 e x 3 + x 2 x 3 ] \begin{equation} \nabla f(x)=\left[ \begin{array}{c} 2x_1 + x_2 + e^{x_3}\\ x_1 + lnx_3 \\ x_1e^{x_3} + \frac{x_2}{x_3} \end{array} \right] \end{equation} f(x)= 2x1+x2+ex3x1+lnx3x1ex3+x3x2

∇ 2 f ( x ) = [ 2 1 e x 3 1 0 1 x 3 e x 3 1 x 3 x 1 e x 3 − x 2 x 3 2 ] \begin{equation} \nabla^2 f(x)=\left[ \begin{array}{ccc} 2 & 1 & e^{x_3} \\ 1 & 0 & \frac{1}{x_3} \\ e^{x_3} & \frac{1}{x_3} &x_1e^{x_3} -\frac{x_2}{{x_3}^2} \end{array} \right] \end{equation} 2f(x)= 21ex310x31ex3x31x1ex3x32x2
注:海森矩阵有对称性,只需计算一半即可。

无约束问题的最优性条件-一阶条件

在下面,我们首先研究一个最优解必须满足的条件:一阶和二阶(必要的) 最优性条件。我们将首先从局部最优解开始。

最优性条件:无约束问题

如果我们以整个实数集 R n R^n Rn为可行集(feasible set) Ω \Omega Ω, 也就是:
min ⁡ x ∈ R n f ( x ) \begin{alignat}{2} \min_{x \in R^n} \quad f(x) \\ \end{alignat} xRnminf(x)
最优条件(必要):
∇ f ( x ) = 0 \nabla f(x) = 0 f(x)=0
证明:如果 ∇ f ( x ) ≠ 0 \nabla f (x) \neq 0 f(x)=0 f ( x ) f(x) f(x)是最小值,那么我们可以找到一个向量 d = − ∇ f ( x ) d = -\nabla f (x) d=f(x) ∇ f ( x ) T d = − ∥ ∇ f ( x ) ∥ 2 < 0 \nabla f (x)^\mathrm{T}d = -\Vert \nabla f (x) \Vert^2 < 0 f(x)Td=∥∇f(x)2<0。因此,通过泰勒展开式:
f ( x + t d ) = f ( x ) + t ∇ f ( x ) T d + o ( t ) t → 0 f(x + td) = f(x) + t \nabla f(x)^\mathrm{T} d+ o(t) \quad t\rightarrow 0 f(x+td)=f(x)+tf(x)Td+o(t)t0

∵ ∇ f ( x ) T d < 0 , o ( t ) < 0 \because \nabla f (x)^\mathrm{T}d < 0, o(t) < 0 f(x)Td<0,o(t)<0 ⇒ f ( x + t d ) < f ( x ) \Rightarrow f(x+td) < f(x) f(x+td)<f(x)

通过选择足够小的 t t t,我们可以找到一个在 x x x附近的点 x ˉ = x + t d \bar x = x + td xˉ=x+td使 f ( x ˉ ) < f ( x ) f(\bar x) < f( x) f(xˉ)<f(x),与题设矛盾

一阶必要条件 First-Order Necessary Conditions (FONC)

一阶必要条件: 如果 x ⋆ x^\star x是无约束问题 m i n x ∈ R n f ( x ) min_{x \in R^n} f (x) minxRnf(x)的局部极小值,那么我们必须有 ∇ f ( x ⋆ ) = 0 \nabla f(x^\star)=0 f(x)=0
备注: ∇ f ( x ) = 0 \nabla f (x)=0 f(x)=0的点 x x x都是局部极小点的候选点

例子: f ( x ) = x 1 2 − x 1 x 2 + x 2 2 − 3 x 2 f(x) = x_1^2 - x_1x_2 + x_2^2 - 3x_2 f(x)=x12x1x2+x223x2
一阶必要条件为:
2 x 1 − x 2 = 0 , − x 1 + 2 x 2 = 0 2x_1 - x_2 = 0, -x_1 + 2x_2 = 0 2x1x2=0,x1+2x2=0
有一个唯一的解 ( x 1 = 1 , x 2 = 2 ) (x_1 = 1,x_2 = 2) x1=1x2=2,它是 f f f的全局最小点。

示例:最小二乘问题

假设一个变量 y y y是由 n n n个因子 x 1 , . . . , x n ∈ R m x_1, ..., x_n \in R^m x1,...,xnRm决定的。我们知道它们近似地有一个线性关系:

y ≈ β 1 x 1 + β 2 x 2 + . . . + β n x n β i ∈ R y \approx \beta_1x_1 + \beta_2 x_2 + ... + \beta_n x_n \quad \beta_i \in R yβ1x1+β2x2+...+βnxnβiR

现在,我们要确定这个关系(找到参数 β \beta β)。
我们有 m m m个观测值 ( m > n ) (m>n) (m>n) 这些观测值可以组成一个数据矩阵 X X X
{ x i T = ( x i 1 , x i 2 , . . . x i n ) , y i } , i = 1 , 2 , . . . , m \{ x_i^T = (x_{i1},x_{i2},...x_{in}), y_i\}, \quad i = 1, 2, ...,m {xiT=(xi1,xi2,...xin),yi},i=1,2,...,m
其中, x i T x_i^T xiT是数据矩阵 X X X 的第 i i i 行.
理想情况下,我们想找到 β = ( β 1 , β 2 , . . . β n ) T \beta = (\beta_1,\beta_2,... \beta_n)^\mathrm{T} β=(β1,β2,...βn)T,使 $ y = X \beta $ 。然而,这可能是不可能的(例如,方程y = Xβ可以是一个过确定的线性系统(overdetermined system))。通常情况下,观测不遵循 y = X β y = X\beta y=,所以我们需要完全噪声观测(noisy observations)。

相反,我们试图最小化误差的平方和:
min ⁡ β ∑ i = 0 n ( y i − x i T β i ) 2 \begin{alignat}{2} \min_{\beta}\quad \sum_{i = 0}^n(y_i - x_i^T\beta_i)^2 \\ \end{alignat} βmini=0n(yixiTβi)2
这个问题的矩阵形式为:
min ⁡ β ∥ X β − y ∥ 2 = X β β T X − 2 β T X T y + y T y \begin{alignat}{2} \min_{\beta}\quad \Vert X\beta - y\Vert^2 = X\beta\beta^\mathrm{T}X - 2\beta^\mathrm{T}X^\mathrm{T}y + y^\mathrm{T}y \\ \end{alignat} βminy2=βTX2βTXTy+yTy
其中 ∥ ω ∥ 2 = ω 1 2 + ω 2 2 + . . . + ω n 2 \Vert \omega \Vert^2 = \omega_1^2 + \omega_2^2 + ... + \omega_n^2 ω2=ω12+ω22+...+ωn2

事实:1.如果 f ( x ) = x T M x f (x) = x^TMx f(x)=xTMx M M M是对称的),那么: ∇ f ( x ) = 2 M x \nabla f (x)=2Mx f(x)=2Mx。2.如果 f ( x ) = c T x f (x) = c^Tx f(x)=cTx,那么 ∇ f ( x ) = c \nabla f (x) = c f(x)=c

因此,最小二乘问题的一阶必要条件(FONC)为:
X T X β = X T y X^TX\beta = X^Ty XT=XTy

求解这个方程给出了局部极小点的候选项。

一阶必要条件的非充分性

反例

f ( x ) = x 4 − 9 x 2 + 4 x − 1 f(x) = x^4 - 9x^2 + 4x - 1 f(x)=x49x2+4x1的导数是
f ′ ( x ) = 4 x 3 − 18 x + 4 = 0 f^{'}(x)=4x^3 − 18x +4 = 0 f(x)=4x318x+4=0
他的解包括 x 1 = − 1 + 6 2 , x 2 = − 1 − 6 2 , x 3 = 2 x_1 = -1 + \frac{\sqrt{6}}{2}, x_2 = -1 - \frac{\sqrt{6}}{2}, x_3 = 2 x1=1+26 ,x2=126 ,x3=2

函数图像
我们可以发现FONC是不充分的。事实上,每个局部最大值也满足FONC。或者它既不能是局部的最小值,也不能是最大值(如 f ( x ) = x 3 f(x) = x^3 f(x)=x3 x = 0 x = 0 x=0

内容来自cuhksz mat3007的ppt Professor Li Xiao,翻译为中文,修改了小部分,加入了一些笔者自己的理解。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
APM MATLAB混合整数非线性规划求解器是一种强大的工具,可以应用于求解具有混合整数和非线性特性的优化问题。它使用MATLAB编程环境,并集成了APM(Advanced Process Monitor)优化软件,提供了一种灵活且高效的求解方法。 APM MATLAB混合整数非线性规划求解器的独特之处在于它结合了整数规划和非线性规划的优点。整数规划适用于涉及决策变量为整数的问题,而非线性规划适用于涉及非线性约束和目标函数的问题。这个求解器能够同时处理这两类问题,使得在实际应用中更加灵活和全面。 APM MATLAB混合整数非线性规划求解器采用了一种多阶段的优化方法来求解问题。在每个阶段,它首先使用非线性规划方法来求解问题的松弛版本,得到一个近似解。然后,它将整数规划方法应用于该近似解,通过对决策变量采用适当的整数约束,得到一个更接近最优解的整数解。通过多个阶段的迭代,它逐渐逼近全局最优解。 APM MATLAB混合整数非线性规划求解器还具有一些其他的特性和功能。例如,它支持不同类型的约束和目标函数,包括线性约束、非线性约束、等式约束和不等式约束。它还提供了一些高级的优化算法和技术,如动态规划、线性规划和二次规划等,以进一步提高求解效率和精度。 总之,APM MATLAB混合整数非线性规划求解器是一种功能强大的工具,可以广泛应用于各种实际问题的优化求解中。它能够同时处理混合整数和非线性特性,通过多阶段的优化方法逐渐逼近全局最优解,并提供了一些高级的算法和技术来提高求解效率和精度。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值