非线性一维搜索

欢迎访问我的个人博客:青山白雪

非线性一维搜索

what?

沿某一已知方向求目标函数的极小点

思想

从某个初始点 x ( 0 ) x^{(0)} x(0)出发,沿方向 p ( 0 ) p^{(0)} p(0)进行搜索,得到目标值较小的点 x ( 1 ) x^{(1)} x(1);然后,从 x ( 1 ) x^{(1)} x(1)出发,沿方向 p ( 1 ) p^{(1)} p(1)再次进行一维搜索,得到目标函数更小的点 x ( 2 ) x^{(2)} x(2);依次进行下去。

在每次迭代寻求 x ( k + 1 ) x^{(k+1)} x(k+1)时,在确定的搜索方向 p ( k ) p^{(k)} p(k)上,求一个步长 λ k \lambda _k λk,使目标函数下降最多,即 f ( x ( k + 1 ) ) < f ( x ( k ) ) f(x^{(k+1)}) < f(x^{(k)}) f(x(k+1))<f(x(k))

λ k \lambda _k λk为最优步长因子,每次求解是一个求一元函数的极值问题,即:
f ( x ( k ) + λ k p ( k ) ) = min ⁡ λ f ( x ( k ) + λ p ( k ) ) = m i n φ ( λ ) f(x^{(k)} + \lambda _k p^{(k)}) = \displaystyle \min_{\lambda} f(x^{(k)} + \lambda p^{(k)}) = min \varphi(\lambda) f(x(k)+λkp(k))=λminf(x(k)+λp(k))=minφ(λ)
每一次一维搜索就是对函数 φ ( λ ) \varphi(\lambda) φ(λ)求极值,极值 λ ∗ \lambda^* λ就是本次迭代的最优步长。

因此求多元函数 f ( x ) = f ( x 1 , x 2 , ⋯   , x n ) f(x) = f(x_1,x_2, \cdots, x_n) f(x)=f(x1,x2,,xn)的极值点问题,转化为一系列沿逐次确定方向求极值点的问题。

这里总结下更简单的形式:

一维函数寻优:
m i n f ( x ) x ∈ [ a , b ] min f(x) \qquad x \in [a,b] minf(x)x[a,b]
基本思想为

  1. 确定 φ ( λ ) \varphi(\lambda) φ(λ)的搜索区间,即:函数极值点所在区间
  2. 用逐步逼近的方法,确定函数极值点

实施步骤

有初始点 x 1 x_1 x1和步长 h h h,确定搜索区间 [ a , b ] [a,b] [a,b]的方法

  1. 计算 f ( x 1 ) f(x_1) f(x1) f ( x 1 + h ) f(x_1 + h) f(x1+h)

f ( x 1 ) > f ( x 1 + h ) f(x_1) > f(x_1 + h) f(x1)>f(x1+h)

​ 极小点在试探点右侧,从 x 1 + h x_1+h x1

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值