APP下载

基于MATLAB的无约束优化问题对称秩-1法与BFGS法之探讨

2015-12-05杨伍梅

怀化学院学报 2015年5期
关键词:程序优化方法

杨伍梅,刘 权

(1.益阳职业技术学院, 湖南 益阳 413049; 2.湖南益阳电厂, 湖南 益阳 413000)

0 前言

随着计算机的广泛应用,在科学研究、经济管理和工程设计等许多领域中,常常会遇到怎样使成本最低、利润最大等最优化问题.在数学上往往将这类问题在合理假设下建立相应模型,将之转化为无约束优化问题:minf(x),x ∈Rn的求解.而拟牛顿法是目前求解无约束优化问题的最成熟,应用最广泛的方法之一,它具有收敛速度快与数值效果好等优点.最常见的拟牛顿法有Broyden 族秩1 校正(R1)法[1],对称秩1 法(SR1)[1],BFGS 法[2],DFP 法[3],PSB 法[4].本文就无约束优化问题采用对称秩1 法和BFGS 法进行探讨.

1 两种方法的比较

1.1 对称秩1 法

设目标函数f ∶Rn→R 连续可微,无约束优化问题的基本形式为[3]:对称秩1 法的主要思想是用一个秩 1 矩阵:去校正拟牛顿矩阵,使得所产生的矩阵:

满足拟牛顿方程Bk+1sk= yk.其中sk= xk+1-xk,yk= gk+1- gk.显然因为其修正矩阵的秩为1,所以矩阵Bk更新很简单;对所有的k,只要初始矩阵B0对称正定,必有Bk对称正定;且Bk≈2f(xk),因而可使算法产生的方向近似于牛顿方向,算法具有较快的收敛速度[3].

对称秩1 算法的一般计算步骤如下:

步1 给定点x0∈Rn,终止误差0 <ε<1,初始对称矩阵B0= I,令k ∶= 0.

步2 若‖gk‖ε,则算法终止,输出xk作为近似极小点.

步3 由方程Bkdk+ g(xk)= 0 计算搜索方向dk.

步4 用线性搜索技术求步长因子αk.

步5 令xk+1= xk+αkdk,由对称秩1 公式(2)确定Bk+1.

步6 令k ∶= k +1,转步2.

下面给出Armijor 线性搜索[3]下的对称秩1 算法的程序.

程序1 (对称秩1 算法程序)

1.2 BFGS 算法

BFGS 算法是拟Newton 算法中最有效的方法之一[6],它是由Broyden、Fletcher、Goldfarb 和Shanno 四人在1970年各自独立提出的.其思想、步……

登录APP查看全文

猜你喜欢

程序优化方法
超限高层建筑结构设计与优化思考
民用建筑防烟排烟设计优化探讨
关于优化消防安全告知承诺的一些思考
一道优化题的几何解法
试论我国未决羁押程序的立法完善
“程序猿”的生活什么样
英国与欧盟正式启动“离婚”程序程序
用对方法才能瘦
创卫暗访程序有待改进
四大方法 教你不再“坐以待病”!