全球旧事资料 分类

运筹学课程实验报告
姓名:学号:班级:日期:20121217
Word资料
f
一、实验目的1、掌握求解无约束最优化问题的FR共轭梯度法,以及约
束最优化问题Wolfe简约梯度法。2、学会用MATLAB编程求解问题,并对以上方法的计算过程
和结果进行分析。
二、实验原理与步骤
1、FR共轭梯度法
基本步骤是在点Xk处选取搜索方向dk使其与前一次
的搜索方向dk1关于A共轭,即
dk1dkAdk10
然后从点Xk出发,沿方向dk求得fX的极小值点Xk1

fXk1mi
fXkdk0
如此下去得到序列Xk。不难求得dkAdk10的解为
X
k1

X
k

bAXkdkdk1Adk1
dk
注意到dk的选取不唯一,我们可取
dkfXkk1dk1
由共轭的定义dkAdk10可得:
k1


rkAdk1dk1Adk1
共轭梯度法的计算过程如下:
Word资料
f
第一步:取初始向量X0计算
d0r0fX0bAX0
0


r0Ad0d0Ad0

X1X00d0
第k1步:计算
rkfXkbAXk
k1


rkAdk1dk1Adk1
dk

rk

dk1k1
k


rkAdkdkAdk

Xk1Xk0dk
2、Wolfe简约梯度法
Wolfe基本计算步骤:
第一步:取初始可行点令k0;
给定终止误差

第二步:设
是的m个最大分量的下标集,对
Word资料
f
矩阵A进行相应分解第三步:计算
然后计算简约梯度

第四步:构造可行下降方向进行第五步。

_D_Dd。否则
第五步:进行有效一维搜索,求解解令kk1转入第二步。
得到最优
三、实验内容:1、(运筹学P153页第20题)用FR法求解
选取初始点
Word资料


f
2、(运筹学P154页第25题)用Wolfe法求解以下问题:
选取初始可行点


四、问题求解:
问题1求解:(FR法)
程序代码如下:
(1)主函数
symsx1x2rf1x122x2x122xx1x2dfjacobia
fxdfdferror0000001x000g1subsdfxx0k0while
ormg1error
ifk0dg1
elsebtag1g1g0g0dg1btad0
e
dysubsfxx0rdresultji
tuifayrresult2golde
yrresultstepresult2x0x0stepdg0g1g1subsdfxx0d0dkk1e
dkx0
(2)子函数
Word资料
f
进退法确定一维搜索区间:
fu
ctio
resultji
tuifayrt00str
好听全球资料 返回顶部