实验二 无约束最优化
更新时间:2023-10-13 16:55:01 阅读量: 综合文库 文档下载
- 实验二小推荐度:
- 相关推荐
实验二、 无约束最优化
(先将此文档从服务器下载,若众人同时在服务器打开文档,容易导致出错) 【实验目的】
1.了解无约束最优化方法的一些基本概念。
2.熟悉掌握用相关的命令来求解无约束最优化问题。 【实验内容】
把题目和相应的完整命令写在实验报告上。
1:无约束最优化问题实际上是什么问题?求这类问题的最优解的基本思路是什么?
2:求f(x)?ex?5x在区间[1,2]内的极小值点和极小值。 3:已知f(x1,x2,x3)?x12?3sinx2?x1x22x32。 (1) 求f(x1,x2,x3)在点(1,?1,0)附近的极小值; (2) 求f(x1,x2,x3)在点(1,?1,0附近的极小值点和极小)值,要求优化算法用高斯-牛顿法,搜索方向用拟牛顿法的DFP公式,以及给出函数计算次数。 【相关知识说明】
无约束最优化是指在没有约束条件下,求多变量实值函数极值。
无约束最优化问题的数学表达式为
minf(x),x?(x1,x2,?,xn)?R。
n一般f为非线性函数,x是n维实变量,实际上这是一个多元
函数无条件极值问题。
由于求极大值问题,可以用添加负号的方式转化为求极小值问题,因此通常只讨论求极小值问题。应该注意的是,极值问题的解,即极值点,都是局部最优解,全局最优解只能从局部最优解的比较中得到。
如何求解无约束最优化问题的最优解呢?一般是采用迭代法,即先选择一个初始点,再寻找该点处的下降方向(我们称为搜索方向),在该方向上求极小点,得到一个新的点,然后在新点处再寻找下降方向和在该方向上的求极小点,……,如此下去,最终得到最优解。
我们先来看求一元函数y=f(x)在[x1,x2]内的极小值的命令:
x=fminbnd('fun',x1,x2) 说明:其中'fun'是函数f(x)的表达式,当然也可以是关于f(x)的函数M-文件名。返回值x是极小值点。
现在我们来回答问题1。
问题1:求f(x)?2e?xsinx在区间[0,6]内的极小值点和极小值.
命令如下
f='2*exp(-x)*sin(x)';
x=fminbnd(f,0,6) %极小值点 fval=2*exp(-x)*sin(x) %对应x的极小值
大家得到的结果是什么呢?
这些是一元函数求极值,那么怎么求多元函数的极值呢?可以用下面的最简形式的命令:
x=fminunc('fun',x0) 如果还必须满足更苛刻的要求,可以用下面的命令 [x,options]=fminunc('fun',x0,options) 说明:(1) 返回值中,x是极小值点。如果需要相应的极小值,可以用fval=fun(x)即可。
(2) 这里'fun'必须是事先定义的函数M-文件,M-文件的定义方式看下面的例子。
(3) x0是迭代初值。
(4) options是控制参数,它是一个有18个分量的向量,包括了在优化程序中要用到的各种参数,以便在计算最优值时控制精度要求、输出形式、搜索算法、迭代次数、步长等等。例如分量options(6)是指明搜索方向的。options各分量的意义见篇末。
在使用options前,可以根据要求对options的某些分量进行赋值,否则options会自动使用缺省值。根据options各分量的意义,我们来回答问题2。 问题2:已知f(x1,x2)?4x12?x22?x13x2。 ①求f(x1,x2)在点(1,2)附近的极小值;
②求f(x1,x2)在点(1,2)附近的极小值点和极小值,要求搜索
方向为最速下降法,精度为10?6,并给出函数计算次数.
首先,建立M-文件,文件名取函数名 myfun.m。 function f=myfun(x)
f=4*x(1)^2+x(2)^2-x(1)^3*x(2)
对于第一问,比较简单,直接应用上面命令的最简形式即可,如下。
x0=[1,2]; %取点(1,2)为迭代初值 x=fminunc('myfun',x0); fval=myfun(x)
对于第二问,就要复杂很多了,要考虑参数options各个分量的取值。命令如下
x0=[1,2];
opt(2)=1e-6; %设置自变量要求的精度 opt(3)=1e-6; %设置函数值要求的精度 opt(6)=2; %搜索算法用最速下降法 [x,opt]=fminunc('myfun',x0,opt); x
%参数options的值已返回给向量opt,因此 n=opt(10) %得到函数计算次数 fval=opt(8) %在极点x处的极小值
大家分别运行上面的命令,看看相应的答案是什么? 类似fminunc,我们还有一个命令fminsearch,用法几
乎一样, 与fminunc不同的仅有两点:(1)fminsearch使用的优化方法是单纯形法。(2)'fun'可以是函数f(x)的表达式,当然也可以是关于f(x)的函数M-文件名。
另外大家可以思考Rosebrock函数
f(x1,x2)?100(x2?x1)?(1?x1)。
222试用不同算法(搜索方向和步长搜索)求最优极小值点和极小值。初值为(?1.2,2)。
参数options各分量说明
序号 功能 1 2 输出形式 分量说明 options(1)=1,有中间结果输出 options(1)=-1,给出警告信息 自变量x(k)的精度 3 目标函数f精度 4 约束条件g(k)的精度 5 6 7 8 9 10 11 12 13 14 15 主要优化算法 搜索方向算法 步长一维搜索算法 函数值输出 梯度检查 函数计算次数 梯度计算次数 约束梯度计算次数 等式约束的个数 最大迭代次数 目标优化 options(13)确定等式约束数目 options(14)输入迭代的最大次数 由attgoal命令使用,options(15)输入须达目的的目标个数 0, 等式约束数目为0 100n, n为自变量个数 0 options(4)设置g(k)的精度, 由命令constr、minmax使用终止判据 options(5)=1, 高斯-牛顿法 options(6)=1, 拟牛顿法的DFP公式 options(6)=2, 最速下降法 options(7)=1, 三次多项式插值 options(8)输出极值点处的函数值 options(9)=1, 最初几步,梯度将与有限微分计算的结果比较 options(10)输出函数计算次数 options(11)输出梯度计算次数 options(12)输出约束梯度计算次数 ||g(k)缺省值含义 0, 无中间结果输出 options(2)设置x(k)的精度 ||x(k?1)?x(k)(k)||||x||(k)?10?4 的options(3)设置f(k)的精度 ||f(k?1)?f(k)||||f(k?1)||(k)?10?4 ?g(k)||||g||?10?7 0, LM法 0, 拟牛顿法的BFGS公式 0, 混合的二次和三次多项式 0, 不作检查 16 17 18 差分步长最小值 差分步长最大值 步长 用差分计算梯度时步长的下限 用差分计算梯度时步长的上限 步长参数, 一般取1或更小 10?8 0.1
正在阅读:
实验二 无约束最优化10-13
基于UDP协议下的LoadRunner性能测试方法07-17
2010年安全消防工作计划07-23
纸机专业英语08-20
《小儿垂钓》教学设计 - 图文06-10
2013年四川公务员考试行测指导:逻辑填空之词语的感情色彩08-08
2018年中国铁合金行业分析研究报告目录05-27
西工大16秋微宏观经济学在线作业05-07
加强庆阳市公共文化服务体系建设论文08-09
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 最优化
- 约束
- 实验
- 连续墙吊装安全专项方案 - 图文
- 探究题例说演示稿
- 现当代文学笔记1
- 2004年无锡市中考语文副卷及答案
- 年轻教师如何挖掘自己的潜力
- 马克思主义基本原理概论复习 - 选择题 - 辨析题 - 含答案(厦门大学) - 图文
- 李靖 三年级上册教案 - 图文
- 王娟--开题报告改1 - 图文
- 法语期末复习指南
- 精通救生艇筏和救助艇习题集
- 利辛职教园区建设PPP项目
- 饭店功能布局 - 图文
- 单项选择
- 话题作文指导-成长篇
- 3.1.4.1使用“腕带”作为识别患者身份标识的规定
- 小学二年级数学周教学反思
- 第一节 产品与产品组合策略
- 重庆市劳动争议调解仲裁办 重庆市人民政府令 第237号
- 45t电机车说明书 科工 - 图文
- 八年级下册数学三角形的中位线导学案