0 概述
优化问题的类型:
NLP:非线性优化
Dynamic Optimization(Optimal Control):与时间有关
Stochastic optimization 随机优化
multi—objective optimization 多目标优化
game-theory 博弈论
==============================================
1 最优化中的概念
凸集(convex sets):两个元素任意线性组合,仍在两个元素所在集合。
凸函数:定义域为凸集,两个点的线性组合的函数值小于两个点函数值的线性组合。
凸规划:凸函数在凸集上的优化。
梯度、二阶梯度:
单位向量:欧式长度为1.
方向导数:就是梯度与方向的内积
凸函数性质:
局部最小和全局最小:
1、目前算法只可以保证局部最小。想全局只有全部穷举。
2、凸函数局部最小即为全局最小。
3、随机优化算法可以以概率1找到全局最优解,但需要耗费时间。
鞍点(定义域为2维): 沿x最大,沿y最小。
===================================================
2 conditions for optimization
necessary condition for 普通函数局部最小
1、一阶梯度为0
2、二阶梯度大于0,半正定。
sufficient condition for 普通函数局部最小
1、一阶梯度为0,且二阶正定(严格大于0)。
奇异点
满足必要条件,但是不满足充分条件,仍为局部最小的点。
sufficient condition for 凸函数最小
1、一阶梯度等于0。
existence of optimal solutions
1、如果f(x)连续,且x是一个compact(closed and bounded),则最优解存在。
==============================================
3 one-dimension search technique
对于单峰函数
Dichotomous(二分法):二分法缩小搜索区间,迭代终止条件是区间长度小于给定值。
equal-interval search:等分区间进行缩小。
fibonacci search: 区间缩小的比例跟fibonacci数列有关系,本质也是缩小区间。不同之处在于先计算迭代次数,然后才迭代。
golden-section:新区间与老区间长度为0.618.
fibonacci与golden搜索计算效率较高,新点的计算数量少,fibonacci效率最高。
二次插值法:在极小值点附近,用二次三项式去逼近目标函数,然后求解最优值。(此方法精度低,速度快)
newton’s method:用于求方程的根,那么我们求最小值,即需要求的是导数的根。
x n + 1 = x n − H − 1 ( x n ) ∇ f ( x n ) x_{n+1}=x_{n}-H^{-1}(x_{n}) \nabla f(x_{n}) xn+1=xn−H−1(x