MATLAB优化设计分析.ppt

  1. 1、本文档共85页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
8.1 解优化问题的MATLAB程序结构及其运行机制 8.2 线性规划(Linear Programming) 8.3 二次规划 8.4 无约束非线性规划(Unconstrained Nonlinear Minimization) 8.5 约束非线性规划 8.6 最小二乘规划 8.7 非线性方程求根   解优化问题的MATLAB程序具有如图8-1所示的结构。 图8-1 解优化问题的MATLAB程序结构和数据流   主程序至少包括必要数据、初始解、优化设置和解算函数四个部分。必要数据是需预先赋值的优化模型常量参数;初始解是设计变量的初始指定值;优化设置由optimset函数实现,它控制解算函数的算法、设计变量允差、目标函数允差、约束条件允差等;解算函数亦称优化解法器,是优化工具箱提供的M-file函数,它完成特定的优化模型解法。   优化设置举例见表8-1。   线性规划的MATLAB标准型如下所示,它采用Optimization Toolbox_linprog函数解算。   【例8.1】 解下面的线性规划问题   首先将原线性规划问题转换为线性规划的MATLAB标准型,如下所示: 其中:   MATLAB解线性规划程序如下: clc; clear all; close all; C=[-4 -5 -1]; A=[-3 -2 -1;2 1 0]; b=[-17;10]; Aeq=[1 1 1]; beq=10;%必要数据 lb=[0;0;0]; ub=[ ]; %必要数据 X0=[0;0;0];   %初始解 options=optimset(TolX,1e-7, TolFun,1e-7, TolCon,1e-7); %优化设置 [X,Y,exitflag,output,lambda] = linprog(C,A,b,Aeq,beq,lb,ub,X0,options)%解算   程序执行的部分结果如下: X = 0.0000 10.0000 0.0000 Y = -50.0000 exitflag = 1   问题的最优解X和最优值Y分别为       ,   【例8.2】 某厂生产CP1、CP2、CP3三种产品,均需A、B两道工序加工。设A工序可在设备A1或A2上完成,B工序可在设备B1、B2或B3上完成。已知产品CP1可在A、B任何一种设备上加工;产品CP2可在任何规格的A设备上加工,但完成B工序时,只能在B1设备上加工;产品CP3只能在A2与B2设备上加工。加工单位产品所需工序时间及其它各项数据见表8-2。试建立问题的线性规划模型,求解使该厂获利最大的最优生产规划。   (1) 建立问题的线性规划模型,步骤如下:   确定设计变量:   x1—A1加工的CP1件数 x2—A2加工的CP1件数   x3—B1加工的CP1件数 x4—B2加工的CP1件数   x5—B2加工的CP1件数 x6—A1加工的CP2件数   x7—A2加工的CP2件数 x8—B1加工的CP2件数   x9—A2加工的CP3件数 x10—B2加工的CP3件数 确定目标函数(总利润): 确定线性规划模型: (2) 将原线性规划问题转换为线性规划的MATLAB标准型:   (3) ?MATLAB解线性规划程序如下: clc; clear all; close all; C=[-0.75 -0.79 -0.64 -0.56 -0.65 -1.15 -1.38 -1.17 -1.94 -1.09]; %必要数据 A=[5 0 0 0 0 10 0 0 0 0;0 7 0 0 0 0 9 0 12 0;0 0 6 0 0 0 0 8 0 0; 0 0 0 4 0 0 0 0 0 11;0 0 0 0 5 0 0 0 0 0]; %必要数据 b=[6000;10000;4000;7000;4000]; %必要数据 Aeq=[1 1 -1 -1 -1 0 0 0 0 0 ;0 0 0 0 0 1 1 -1 0 0; 0 0 0 0 0 0 0 0 1 -1]; %必要数据 beq=[0;0;0]; %必要数据 lb=[0;0;0;0;0;0;0;0;0;0]; ub=[ ]; %必要数据 X0=[0;0;0;0;0;0;0;0;0;0]; %初始解 options=optimset(TolX,1e-7,TolFun,1e-7, TolCon,1e-7); %优化设置 [X,Y,exitflag,output,lambda] = linprog(C,A,b,Aeq

文档评论(0)

琼瑶文档 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档