Matlab 7.2优化设计实例指导教程完整教学课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《Matlab 7.2优化设计实例指导教程完整教学课件.ppt》由用户(金钥匙文档)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Matlab 7.2优化设计实例指导教程完整教学课件 7.2 优化 设计 实例 指导 教程 完整 教学 课件
- 资源描述:
-
1、 第1章 MATLAB系统概述 1.1 MATLAB简介 1.1.1 MATLAB系统的产生与发展 MATLAB的英文源头是MATrix LABoratary, 原意为矩阵实验室开始的时候它是一种专 门用于矩阵数值计算的软件。 2004年秋,Mathworks公司又推出了 MATLAB 7.0(R14)Service Pack1,新的版 本在原版本的基础上作了大幅改进,同时 对很多工具箱作了相应的升级,使得 MATLAB功能更强,应用更简便。 1.1.2 MATLAB的特点 MATLAB自产生之日起,就以其强大的功 能和良好的开放性而在科学计算诸软件中 独占鳌头。学会了MATLAB就可以方便地
2、 处理诸如矩阵变换及运算、多项式运算、 微积分运算、线性与非线性方程求解、常 微分方程求解、偏微分方程求解、插值与 拟合、统计及优化等问题了。 1.2 MATLAB系统界面 1.2.1 MATLAB主窗口 主窗口不能进行任何计算任务的操作,只 用来进行一些整体的环境参数设置。主要 包括6个下拉菜单【File】、【Edit】、 【Debug】、【Desktop】、【Window】、 【Help】和10个按钮控件【New M-File】、 【Open file】、【Cut】、【Copy】、 【Paste】、【Undo】、【Redo】、 【Simulink】、【GUIDE】、【Help】。 1.2.
3、2 命令窗口 MATLAB的命令窗口如图所示。其中, “”为运算提示符,表示MATLAB正处在 准备状态。当在提示符后输入一段运算式 并按回车键后,MATLAB将给出计算结果, 然后再次进入准备状态。 1.2.3 历史窗口 MATLAB的历史窗口形式如图所示。在默 认设置下,历史窗口会保留自安装起所有 命令的历史纪录,并标明有使用时间,这 方便了用户的查询。双击某一命令即在命 令窗口中执行该行命令。 1.2.4 当前目录窗口 当前目录窗口中可显示或改变当前目录, 还可以显示当前目录下的文件并提供搜索 功能,其形式如图所示。 1.2.5 工作间管理窗口 工作间管理窗口是MATLAB的重要组成部
4、分,如图所示。 1.2.6 帮助窗口 帮助窗口的详细介绍和相应的界面参见本 章第四节及图1.14。 1.2.7 profiler窗口 profiler窗口是用来改进MATLAB中M文件的 执行效率的, 如图所示。 1.2.8 Start按钮 MATLAB系统界面下的【Start】按钮,类 似于Windows系统桌面平台左下角【开始】 按钮,两者不仅在名称、设置的位置,而 且模式与功能都极相似。 1.3 MATLAB内容及查找 1.3.1 MATLAB的搜索路径 1. 搜索路径对话框 2. path命令 3. genpath命令 4. editpath或pathtool命令 1.3.2 扩展MA
5、TLAB的搜索路径 1.利用设置搜索路径对话框设置菜单 2.使用path命令扩展目录 3.使用addpath命令扩展目录 4.使用editpath和pathtool命令扩展目录 1.4 MATLAB的帮助系统 1.4.1联机帮助系统 联机帮助窗口包括导航页面和帮助显示页 面两部分。帮助导航页面中有四个选项卡 分别显示帮助主题(Contents)、帮助索 引(Index)、查询帮助(Search)和帮助 演示(Demos)。用户可以通过点击导航 页面中相应的项,在帮助显示页面中得到 相应的帮助。 1.4.2帮助命令 为了使用户更快捷地获得帮助,MATLAB 提供了一些帮助命令 。 1. help
6、系列命令 2. lookfor函数 3.其它的帮助命令 1.4.3联机演示系统 单击MATLAB主窗口菜单的【Help】中的 【Demos】选项 ,将进入MATLAB帮助系 统的主演示页面。 1.4.4网络资源 在MATLAB主窗口中选择菜单项中的【Help】 中第五项的级联菜单或第六项(见如图所示) 来获取网络资源。 第2章 MATLAB的基本功能 2.1数值计算功能 2.1.1创建数值矩阵 直接输入 用函数创建 创建M文件输入大矩阵 2.1.2矩阵运算 矩阵的基本运算 基本的矩阵函数 矩阵分解函数 2.1.3稀疏矩阵 如果矩阵中只含有少量的非零元素,则这 样的矩阵称为稀疏矩阵。在最优化实际
7、问 题中,经常会碰到大型稀疏矩阵。对于一 个用矩阵描述的联立线性方程组来说,含 有N个未知数的问题会设计成个NN的 矩阵,那么解这个方程组就需要N的平方个 字节的内存空间和正比于N的立方的计算时 间。但在大多数情况下矩阵往往是稀疏的, 为了节省存储空间和计算时间,MATLAB 考虑到矩阵的稀疏性,在对它运算时有特 殊的命令。 2.2 符号运算功能 2.2.1 符号表达式的生成 符号表达式包括符号函数和符号方程,二 者的区别在于前者不包括等号,而后者必 须带等号,但是二者的创建方式是相同的, 都是用单引号括起来。 2.2.2 创建符号矩阵 直接输入 用sym函数创建符号矩阵 将数值矩阵转化为符号
8、矩阵 2.2.3 高等数学中的符号计算 符号极限 符号积分 符号微分和差分 非线性方程组的符号解法 微分方程的符号解 2.2.4 图示化符号函数计算器 在MATLAB命令窗口中输入:funtool。即 可进入如下图的图示化符号函数计算器用 户界面。由下图可见,图示化函数计算器 由3个独立的窗口组成:2个图形窗口 (Figure 1和Figure 2)和1个函数运算控制 窗口(Figure 3)。 2.3 图形处理功能 2.3.1 MATLAB中的图形窗口 在MATLAB中,绘制的图形将会被直接输 出到一个新的窗口中,这个窗口和命令窗 口是相互独立的,被称为图形窗口。图形 窗口的特性是通过用户计
9、算机上的视窗系 统和MATLAB的图形系统来共同控制的。 2.3.2 MATLAB基础绘图 MATLAB中的绘图基本函数为plot,它的函数 调用格式为: 绘图函数调用格式1:plot(x) 绘图函数调用格式2:plot(x,y) 绘图函数调用格式3:plot(x1,y1,x2,y2,) 绘图函数调用格式4:plot(x,y,s) 开关格式。 2.3.2 三维绘图 三维曲线图 三维曲面图 三维图形等高线 第3章 程序设计 3.1 M文件 M文件是使用MATLAB语言编写的程序代码 文件。之所以称为M文件,是因为这种文件 都以“.m”作为文件扩展名。用户可以通过 任何文本编辑器或字处理器来生成或
10、编辑M 文件,但是在MATLAB提供的M文件编辑器 中生成或编辑M文件是最为简单、方便而且 高效的。 3.1.1 命令式文件 在MATLAB中,实现某项功能的一串 MATLAB语句命令余函数组合成的文件叫 命令式文件。这种M文件在MATLAB的工作 空间内对数据进行操作,能在MATLAB环 境下直接执行。命令式文件不仅能够对工 作空间内已存在的变量进行操作,并能将 建立的变量及其执行后的结果保存在 MATLAB工作空间里,供在以后的计算中 使用。 3.1.2 函数式文件 MATLAB函数通常是指MATLAB系统中以 设计好的完成某一种特定的运算或实现某 一特定功能的一个子程序。MATLAB函数
11、 或函数文件是MATLAB语言中最重要的组 成部分,MATLAB提供的各种各样的工具 箱几乎都是以函数形式给出的。MATLAB 的工具箱是内容极为丰富的函数库,可以 实现各种各样的功能。 3.2 控制语句 3.2.1 表达式、表达式语句与赋值语句 1表达式 2表达式语句 2赋值语句 3.2.2 程序流程控制语句 1循环语句 2选择语句 3分支语句 3.2.3 程序流程控制指令 中断命令break return指令 等待用户反应命令pause 3.2.4 人机交互语句 echo命令 input命令 keyboard命令 3.2.5 MATLAB程序的调试命令 dbstop命令 dbcont命令
12、dbstep命令 dbstack命令 dbstatus命令 dbtype命令 dbquit命令 3.3 函数变量及其作用域 在MATLAB语言的函数中,变量主要有输 入变量、输出变量及函数内部变量。 3.4 子函数与私有函数 私有函数与子函数所不同的是: 第一:局部函数可以被其父目录下的所有 函数调用,子函数则只能被其所在的M文件 的主函数或同一主函数下其他的子函数所 调用。所以,私有函数在可用的范围上大 于子函数。 第二:在函数编辑的结构上,私有函数与 一般的函数文件的编辑相同,而子函数则 只能在主函数文件中编辑。 第三:当在MATLAB的M文件中调用函数时, 将首先检测该函数是否为此文件的
13、子函数, 若否,再检测是否为可用的私有函数,仍 然否定时,检测该函数是否为MATLAB搜 索路径上的其他M文件。 3.5 程序设计的辅助函数 执行函数 容错函数 时间控制函数 3.6 程序设计优化 内存的管理 数据的预定义 3.7 文件调用纪录 3.7.1 profile函数 profile+控制参数 s=profile(status) stats=profile(info) 3.7.2 调用记录结果的显示 第4章 MATLAB编译器 4.1 MATLAB编译器4.4的新特点 4.1.1 编译器与解释器的区别 MATLAB解释器用来接受MATLAB命令, 执行M文件或者MEX文件,即通常用户使
14、 用MATLAB的过程;而编译器完成将M文件 编译成C或者C+源代码功能,它们是两种 不同的概念。 4.1.2 MATLAB编译器4.4的新特点 使用MATLAB组件运行时取代MATLAB数 学和图形库 只为接口函数生成代码 具有代码生成和格式化有关的选项,包括 了几个新选项,取消了一些打包选项与相 关打包文件。 支持.NET。 支持Microsoft Visual C/C+8.0。 不再支持HP-UX。 4.2 MEX文件和MAT文件 4.2.1 MEX文件 MEX文件是一种具有特定格式的文件;是 能够被MATLAB解释器识别并执行的动态 链接函数。它可由C语言等高级语言编写。 4.2.2
15、MAT文件 MAT文件是MATLAB数据存储的默认文件 格式,在MATLAB环境下生成的数据存储 时,都是以.mat作为扩展名。 4.3 MATLAB编译器的使用 MATLAB编译器可以生成独立的应用程序、 库、COM对象、Excel插件,它根据目标类 型生成合适的包装器文件。包装器文件包 含编译后的应用程序和可执行对象类型之 间的接口。 4.3.1 环境配置 mcc命令具有将m文件编译成exe文件或者 cpp文件等许多编译功能,使用mcc命令之 前必须进行环境配置。mbuild是MATLAB提 供的常见编译命令,在命令窗口中输入命 令mbuild -setup完成配置。 4.3.2 mbui
16、ld命令 使用命令mbuild可对已有C文件或者C+文 件进行编译,编译生成的obj文件可以直接 双击运行。 4.3.3 mcc命令 使用mcc命令可生成独立可执行文件或者C 共享库。 4.4 使用举例 第5章 最优化理论概述 5.1 最优化理论及其应用 5.1.1 最优化理论发展概述 最优化是一门研究如何科学、合理、迅速 地确定可行方案并找到其中最优方案的学 科。 作为20世纪应用数学的重要研究成果,最 优化理论在工业生产与管理、计算机和信 息科学、系统科学、国民经济等许多领域 产生很大效益。 5.1.2 最优化问题基本模型 当目标函数和约束函数都是线性函数时, 问题称为线性规划。当目标函数
17、和约束函 数中至少有一个是变量x的非线性函数时, 问题称为非线性规划问题。 5.1.3 最优化问题举例 线性规划问题 二次规划 最小二乘问题 5.2 最优化问题的实现 建立数学模型 数学求解 5.2.1 古老实现方法 远古以来,人类就显示出认识世界和改造 世界的能力。在自然发展的过程中,人类 又逐渐形成了进行最有效活动的思维方法, 导致了新发现、新发明和新改革。它们给 人类带来的巨大的利益、进步和挑战。 5.2.2 计算机实现 电子计算机出现后,最优化问题受到科学 家们的重视,电子计算机的特点是存储量 大,计算速度快,能准确地长期不间断工 作,这些特点为最优化问题的实现提供了 一片崭新的天地。
18、不同的目标函数、不同 的约束条件、计算机算法的发展促使数学 规划的内容日趋庞大,从而逐渐出现许多 分支。 5.2.3 MATLAB实现 使用优化工具箱时,由于优化函数要求目 标函数和约束条件满足一定的格式,所以 需要用户在进行模型输入时注意以下几个 问题: 1.目标函数最小化 2.约束非正 3.避免使用全局变量 第6章 MATLAB优化工具箱简介 6.1 MATLAB中的工具箱 6.1.1 MATLAB中常用的工具箱 MATLAB中常用的工具箱有: Matlab Main Toolboxmatlab主工具箱 Control System Toolbox控制系统工具 箱 Communicatio
19、n Toolbox通讯工具箱 Financial Toolbox财政金融工具箱 System Identification Toolbox系统辨识 工具箱 Fuzzy Logic Toolbox模糊逻辑工具箱 Higher-Order Spectral Analysis Toolbox 高阶谱分析工具箱 Image Processing Toolbox图象处理工具 箱 LMI Control Toolbox线性矩阵不等式工 具箱 Model predictive Control Toolbox模型预 测控制工具箱 -Analysis and Synthesis Toolbox分析 工具箱 Ne
20、ural Network Toolbox神经网络工具箱 Optimization Toolbox优化工具箱 Partial Differential Toolbox偏微分方程 工具箱 Robust Control Toolbox鲁棒控制工具箱 Signal Processing Toolbox信号处理工 具箱 Spline Toolbox样条工具箱 Statistics Toolbox统计工具箱 Symbolic Math Toolbox符号数学工具箱 Simulink Toolbox动态仿真工具箱 System Identification Toolbox系统辨识 工具箱 Wavele To
21、olbox小波工具箱 6.1.2 工具箱和工具箱函数的查询 1 MATLAB的目录结构 2工具箱函数清单的获得 6.2 优化工具箱中的函数 优化工具箱中的函数包括下面几类: 1最小化函数 2最小二乘问题 3方程求解函数 4演示函数 6.3 优化函数的变量 MATLAB优化工具箱中的变量主要有三类 。 1输入变量 2输出变量 3优化参数 6.4 参数设置 6.4.1 参数值 对于优化控制,MATLAB提供了18个参数。 6.4.2 optimset函数 optimset函数的功能是创建或编辑优化选 项参数结构。有5种调用格式。 6.4.3 optimget函数 optimget函数的功能是获得o
22、ptions优化参 数 ,具体的调用格式为: 调用格式1: VAL = OPTIMGET(OPTIONS,NAME) 调用格式调用格式2: VAL = OPTIMGET(OPTIONS,NAME,DEFAUL T) 6.5 模型输入时需要注意的问题 1.目标函数最小化 2.约束非正 3.避免使用全局变量 6.6 函数 MATLAB6.0以后的版本中可以用函数进 行函数调用。函数返回指定MATLAB函 数的句柄,其调用格式为: handle = function 6.7 优化算法介绍 6.7.1 参数优化问题 参数优化就是求一组设计参数,以满足在 某种意义下最优。一个简单的情况就是对 某依赖于x
23、的问题求极大值或极小值。复杂 一点的情况是欲进行优化的目标函数f(x)受 到以下限定条件:等式约束条件 、不等式 约束条件 和参数有界约束 。 6.7.2 无约束优化问题 1拟牛顿法(Quasi-Newton Method) 2多项式近似 6.7.3 拟牛顿法实现 在函数fminunc中使用拟牛顿法,算法的实 现过程包括两个阶段: 1确定搜索方向 2一维搜索过程 6.7.4 最小二乘优化 前面介绍了函数fminunc中使用的是在拟牛 顿法中介绍的线搜索法,在最小二乘优化 程序lsqnonlin中也部分的使用这一方法。 6.7.5 非线性最小二乘实现 1Guass-Newton实现 2Leven
展开阅读全文