最优化基础(五)

最优化基础(五)[1]

无约束问题的最优性条件

引入下列记号:

\[g(x)=\nabla f(x),\ g_k=\nabla f(x_k),\ G(x)=\nabla^2 f(x),\ G_k = \nabla^2f(x_k) \]

一阶必要条件: 设\(f(x)\) 在开集\(D\) 上一阶连续可微. 若\(x^*\in D\)\(f(x)\)的一个局部极小点, 则必有\(g(x^*)=0\).

二阶必要条件:设\(f(x)\)在开集\(D\)上二阶连续可微. 若\(x^*\in D\)\(f(x)\) 的一个局部极小点, 则必有\(g(x^*)=0\)\(G(x^*)\) 是半正定矩阵.

二阶充分条件:设\(f(x)\)在开集\(D\) 上二阶连续可微. 若\(x^*\in D\) 满足条件\(g(x^*)=0\)\(G(x^*)\)是正定矩阵, 则\(x^*\)\(f(x)\) 的一个局部极小点.

定理: 设\(f(x)\)\(\mathbb{R}^n\) 上是凸函数并且是一阶连续可微的. 则\(x^*\in\mathbb{R}^n\)\(f(x)\) 的全局极小点的充要条件是\(g(x^*)=0\).

无约束优化问题的算法框架

在数值优化中, 一般采用迭代法求解无约束优化问题

\[\mathrm{min} \ f(x) \]

的极小点. 迭代法的基本思想是: 给定一个初始点\(x_0\), 按照某一迭代规则产生一个迭代序列\(\{x_k\}\). 使得若该序列是有限的, 则最后一个点就是问题的极小点; 否则, 若序列\(\{x_k\}\) 是无穷点列时, 它有极限点且这个极限点即为问题的极小点.

算法 (无约束问题的一般算法框架)

步0 :给定初始化参数及初始迭代点\(x_0\). 置\(k:= 0\).
步1 :若\(x_k\) 满足某种终止准则, 停止迭代, 以\(x_k\)作为近似极小点.
步2 :通过求解\(x_k\)处的某个子问题确定下降方向\(x_k\).
步3 :通过某种搜索方式确定步长因子\(a_k\), 使得\(f(x_k+a_kd_k)<f(x_k)\).
步4 :令\(x_{k+1}:=x_k+a_kd_k, k:=k+1\), 转步1.

定义: 若存在\(\bar{\alpha}>0\), 使得对任意的\(\alpha\in(0,\bar{\alpha}]\)\(d_k\neq 0\), 有

\[f(x_k+\alpha d_k)<f(x_k) \]

则称\(d_k\)\(f(x)\)\(x_k\) 处的一个下降方向.

引理: 设函数\(f:D\subset \mathbb{R}^n\rightarrow\mathbb{R}\)在开集\(D\) 上一阶连续可微, 则\(d_k\)\(f(x)\)\(x_k\) 处一个下降方向的充要条件是

\[\nabla f(x_k)^Td_k<0 \]

定义: 若某算法只有当初始点\(x_0\)充分接近极小点\(x^*\) 时, 由算法产生的点列\(\{x_k\}\) 才收敛于\(x^*\), 则称该算法具有局部收敛性. 若对于任意的初始点\(x_0\), 由算法产生的点列\(\{x_k\}\) 都收敛于\(x^*\), 则称该算法具有全局收敛性.


  1. 马昌凤. 最优化方法及其Matlab程序设计[M]. 科学出版社, 2010. ↩︎

posted @ 2017-09-27 11:49  main_c  阅读(422)  评论(0)    收藏  举报