前言
正式开始学习优化理论,这篇严格来说,只是记录关键词的草稿,我一开始写在印象笔记,不过现在有了博客,就分享出来啦~
说明
这里是教材《优化算法》的学习笔记,这里不要求很系统,随看随时记录下重要的概念
关键词
-
设计变量的选取
1)选主要的,次要的当常数
2)结合特定问题的情况
3)区分独立变量和相关变量 -
设计变量的整体,是一个列向量,具体一个列向量,是一个设计
-
设计空间是整体空间,维数是设计变量个数,一个设计是设计空间的一个点
-
可行域,所有满足约束条件的设计点的集合
-
可行域为空的设计问题,没有优化意义,所有,明确问题有没有解,应该是第一步
-
基本解法
- 解析解法:有明确的数学方程,可用微分、变分法求解(这就是数学教材里那些例子,通过微分,即可以找到极值点)
- 数值解法:现在大多数程序都是数值解法,不知道牛顿法算不算,牛顿法算数值解,是逐步逼近的。判定数值解法,就看是否要迭代。
-
数值解的分类:
- 优化准则法:
xk+1=Ckxkx^{k+1}=C^{k}x^{k}xk+1=Ckxk
其中,CkC^{k}Ck 是对角矩阵,也就是各个变量是根据一个系数在优化,确实是比较少见的 - 数学规划法:常用,沿着某个特定方向(一般是梯度的方向),前进特定的步长。
- 这里面的关键是,在方向确定后(梯度方向),要找的是最优的步长(这个步长是一维的,有道理,所有变量被约束到一个长度里面去了!)
- 再次强调,两个关键点: 方向 和 步长
- 新点要满足的条件
f(xk+1)<f(xk)f(x^{k+1})<f(x^{k})f(xk+1)<f(xk) (也就是取值要比原来小)
和
xk+1∈Dx^{k+1}\in Dxk+1∈D - 收敛性:说的是找到的点,能否在次数趋于无穷的时候,靠近极值点(这里指,一阶导为0 的点)。这里有3个判据
- 点距准则:参数变量之间的距离,小于给定的值
- 落差准则:目标函数之间的距离
- 梯度准则:看最后点的梯度是否小于给定的量
ps: 之前用牛顿二分法,其实是1和2的准则同时用上了
- 优化准则法:
数学基础
- 梯度:多元函数沿着各个坐标轴的偏导数组成的一个向量,函数沿着正梯度方向,值增长最快;沿负梯度方向,下降最快
- 方向导数:梯度在某个选定方向上的投影,小于等于梯度。对于优化问题来说,均是优先沿着梯度方向变化步长。
- 方位角:与方向导数相关,这个角度是选定的方向与各坐标轴的夹角,统一是cosθ\cos \thetacosθ
- 梯度和方向导数,含义均是,沿着选定的方向,前进单位距离,会变化的函数值。