数值优化(Numerical Optimization)学习系列(三)-线搜索
来源:互联网 发布:报表类软件 编辑:程序博客网 时间:2024/06/06 09:24
概述
线搜索方法是一类非常重要的迭代算法。在每一步迭代中都会先确定迭代方向
线搜索的方向有统一的表述形式:
步长α 应满足的条件
问题形式
我们即希望步长能使函数在本次迭代中下降的快,也希望步长不能太小。当方向确定时,最理想的步长就是如下一元函数的极小值点:
非精确算法
我们通常也是用迭代算法确定每一步的步长,即从一系列的候选值中选择一个满足条件的
通常分为两个步骤来确定步长:
step1:根据理想步长应该满足的条件确定可选步长的区间。
step2:利用二分法、插值法等方法,在上一步确定的步长 区间中找出比较好的解。
Wolfe条件
步长
上图中每一次迭代都仅仅使
Armijo条件
Armijo条件就是用来保证每次迭代时,目标函数
通常用
Curvature条件
同样,太小的
不等式左侧的式子实际就是
上图展示了Curvature条件对可选步长区间的限制作用。
Wolfe条件其实就是Armijo条件和Curvature条件 ,它对可选步长区间的压缩如下图所示:
很显然,Wolfe条件确定的区间是Armijo条件和Curvature条件各自确定区间的交集。最优步长
强Wolfe条件
为什么会提及强Wolfe条件呢?这是因为强Wolfe条件限定的区间内的
可以看出,强Wolfe条件对正负曲率都进行了约束,约束性更强。
满足强Wolfe条件的区间如下图所示:
Goldstein条件
如何求解步长α
- 数值优化(Numerical Optimization)学习系列(三)-线搜索
- 数值优化(Numerical Optimization)学习系列-线搜索方法(LineSearch)
- 数值优化(Numerical Optimization)学习系列(一)-概述
- 数值优化(Numerical Optimization)学习系列-概述
- 数值优化(Numerical Optimization)学习系列-信赖域方法
- 数值优化(Numerical Optimization)学习系列-目录
- 数值优化(Numerical Optimization)学习系列-大规模无约束最优化(Large-Scale Unconstrained Optimization)
- 数值优化(Numerical Optimization)学习系列-无梯度优化(Derivative-Free Optimization)
- 数值优化(Numerical Optimization)学习系列-带约束最优化(Constrained Optimization)
- 数值优化(Numerical Optimization)学习系列-非线性约束最优化(Nonlinear Constrained Optimization)
- 数值优化(Numerical Optimization)学习系列(二)-无约束优化的基础
- 数值优化(Numerical Optimization)学习系列-共轭梯度方法(Conjugate Gradient)
- 数值优化(Numerical Optimization)学习系列-拟牛顿方法(Quasi-Newton)
- 数值优化(Numerical Optimization)学习系列-计算导数(Calculating Derivatives)
- 数值优化(Numerical Optimization)学习系列-最小二乘问题(Least-Squares)
- 数值优化(Numerical Optimization)学习系列-非线性方程(Nonlinear Equation)
- 数值优化(Numerical Optimization)学习系列-线性规划(Linear Programming)
- 数值优化(Numerical Optimization)学习系列-二次规划(Quadratic Programming)
- 1008 电梯
- tbschedule3.3.3+spring+maven实例教程
- 【Leetcode】最小栈
- 编程范式8 笔记 C/C++内存
- 25个最基本的JavaScript面试问题及答案
- 数值优化(Numerical Optimization)学习系列(三)-线搜索
- <安彦>Spring MVC运行原理及案例
- CI Weekly #8 | CI/CD 技能进阶路线
- 批处理解约瑟夫环应用题-shell
- Sass基本特性--运算(加法、减法、乘法、除法、变量运算、数字运算、颜色运算、字符运算)
- spark性能调优的本质、Spark资源使用原理和调优要点分析
- 深度优先搜索(DFS)——部分和问题
- 203. Remove Linked List Elements
- Android_判断手机网络状态