- 1、本文档共44页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《MATLAB 宝典(第4版)》---- 优化
MATLAB (第4 版)
第 章 优 化
◆ 非线性优化 ◆ 线性规划
◆ 二次规划 ◆ 使用遗传算法求解优化
◆ 工程优化实例
在科学工程领域中,优化有着十分广泛的应用。根据数学理论定义,优化是指在某种约束条件
下,寻求目标函数的最大值或者最小值。将以上定义转换为数学公式为:
min f ( )
x
x S
x S
在以上公式中,x 表示的是变量向量,也就是x (x ,x ,K ,x ) ;f (x ) 也就是优化情况下的
1 2 n
目标函数, 表示的是x 所承受的约束条件。如果x 没有接受任何的约束条件,或者 是数值条
S S
件下的全集,则该优化为非约束优化;否则,则是约束优化。对于上面这些问题,本章都会详细
介绍。
7.1 常见优化问题
本节主要讲解常见的优化问题,首先介绍非约束优化的内容,然后介绍约束优化的内容,最后,
将介绍线性规划和二次规划这两种在实际中比较常见的优化问题。本节中所涉及的内容将都是
MATLAB 内置的函数,同时有些比较复杂的优化处理工具将会涉及Optimization Toolbox 中的函数
和内容,如果希望自行演示本节中的程序代码,应安装Optimization Toolbox 组件。
7.1.1 无约束非线性优化
前面已经介绍过,无约束优化相当于约束集为全集。MATLAB 为解决非约束优化提供了
fminsearch 和fminunc 两种函数,其对应的详细调用格式如下:
[x,fval,exitflag,output] = fminsearch(fun,x0,options)
在以上命令格式中,参数比较繁多,下面分部分详细介绍。
输入参数:参数“fun ”表示的是优化的目标函数,参数x0 表示执行优化的初始数值,参
数“options ”表示的是进行优化的各种属性,一般需要使用optimset 函数进行设置。
输出参数:参数x 表示最优解;fval 表示最优解对应的函数数值;参数“exitflag ”则表示
172
第 章 优化
函数退出优化运算的原因,取值为1,0 和-1,其中数值1 表示函数收敛于最优解,0 则表
示函数迭代次数超过了优化属性的设置,-1 则表示优化迭代算法被output 函数中止;参数
“output ”是一种结构体变量,显示的是关于优化的属性信息,例如优化迭代次数和优化
算法等。
在MATLAB 中,fminsearch 一般适用于没有约束条件的非线性优化情况,对于线
性优化的情况,将在后面的章节中详细介绍。
fminunc 函数的调用格式如下:
[x,fval,exitflag,output,grad,hessian] = fminunc(fun,x0,options)
fminsearch grad
该函数的大部分参数的含义和 函数相同,而输出参数“ ”表示的是函数在最优
解处的梯度;参数“hessian ”则表示目标函数在最优解的Hessian 矩阵数值;参数“exitflag ”表示
文档评论(0)