黄金分割法:一种基于区间收缩的求解单峰函数极小值的算法。
三个原则(1)对称取点原则:选取x1,x2使得x1-a=b-x2.
(2)等比收缩原则:每次迭代时,让被删除的部分与原来区间的比值保持一个定值。
(3)单点计算原则:每次迭代都只计算一次函数值。
step1:给定a<b,ε>0.
step2:计算x1:=a+0.382(b-a),x2:=a+b-x1.
step3:计算f1:=f(x1),f2:=f(x2).
step4:如果f1>f2,则令a:=x1,若b-a<ε,则转step5;否则令f1:=f2,x1:=x2,x2:=a+0.618(b-a),f2:=f(x2),转step4.
否则令b:=x2,若b-a<ε,则转step5;否则令f2:=f1,x2:=x1,x1:=a+0.382(b-a),f1:=f(x1),转step4.
step5:停止,输出x*=(a+b)/2.
最优化方法——一维搜索算法之黄金分割法及其Matlab实现
最新推荐文章于 2024-05-28 10:41:10 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)