- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE
PAGE 7
数学与计算科学学院
实 验 报 告
实验项目名称 使用精确搜索算法确定步长的牛顿法
所属课程名称 最优化方法
实 验 类 型 算法编程
实 验 日 期 2015年11月13号
班 级 信
学 号 201
姓 名
成 绩
一、实验概述:【实验目的】
掌握精确搜索算法确定步长的最速下降法;
使用计算机语言表达最优化方法。
【实验原理】
设f(x)是二次可微函数, ,又 设f(x)的极小点的一个估计,我们把f(x)在 展开成Taylor级数,并取二阶近似
其中是f(x)在处的Hesse矩阵。为求 的平稳点,令
=0
即
设可逆,则有为牛顿法的迭代公式。这样知道后,算出在这一点处目标函数的??度和Hesse矩阵的逆,代入,便得到,用k+1代替k,再计算,又得到,以此类推,产生序列{}。
【实验环境】
计算机 VC++
二、实验内容:【实验方案】
列举例题
手工计算
将计算步骤等实现程序化
实验结果分析
【实验过程】
例题
min
计算步骤:
语言设计流程图:开始
k:=0
收敛于
计算
计算,
设定初点,
输出
结束
是
否
【实验结论】
0 12 3…
…【实验小结】(收获体会)
通过本次实验,初步解了最优化方法在机器语言上的实现,更深刻的了解了使用精确搜索算法确定步长的牛顿法,理解和掌握了他们的优缺点。同时也认识了自己的缺点,编程能力弱,需要极大的提高。在以后的实验中会努力学习,争取把这门课学好。
三、指导教师评语及成绩:评 语评语等级优良中及格不及格1.实验报告按时完成,字迹清楚,文字叙述流畅,逻辑性强?2.实验方案设计合理?3.实验过程(实验步骤详细,记录完整,数据合理,分析透彻)?4实验结论正确. ?
成 绩:
指导教师签名:
批阅日期:
附录1:源 程 序
function [x1 k]=newton(x1,j) %x1为初始点
x1=[8,8];
j=1e-10;
hs=inline((x-1)^4+y^2);
ezcontour(hs,[-10 10 -10 10]);
hold on;
syms x y f=(x-1)^4+y^2;
grad1=jacobian(f,[x,y]);%求梯度
grad2=jacobian(grad1,[x,y]);%求Hesse矩阵
k=0;
while 1
grad1z=subs(subs(grad1,x,x1(1)),y,x1(2));%求梯度值 grad2z=subs(subs(grad2,x,x1(1)),y,x1(2));%求Hesse矩阵 x2=x1-inv(grad2z)*(grad1z);%牛顿迭代公式
if norm(x1-x2)j
break;
else
plot([x1(1),x2(1)],[x1(2),x2(2)],-r*);
k=k+1;x1=x2;
end
附录2:实验报告填写说明
1.实验项目名称:要求与实验教学大纲一致.
2.实验目的:目的要明确,要抓住重点,符合实验教学大纲要求.
3.实验原理:简要说明本实验项目所涉及的理论知识.
4.实验环境:实验用的软、硬件环境.
5.实验方案(思路、步骤和方法等):这是实验报告极其重要的内容.概括整个实验过程.
对于验证性实验,要写明依据何种原理、操作方法进行实验,要写明需要经过哪几个步骤来实现其操作.对于设计性和综合性实验,在上述内容基础上还应该画出流程图、设计思路和设计方法,再配以相应的文字说明.对于创新性实验,还应注明其创新点、特色.
6.实验过程(实验中涉及的记录、数据、分析):写明具体实验方案的具体实施步骤,包括实验过程中的记录、数据和相应的分析.
7.实验结论(结果):根
文档评论(0)