第九章最优化方法.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第九章 最优化方法 本章主要介绍线性规划、 0-1 规划、非线性规划等问题的 MATLAB 求解。 线性规划( Linear Programming ,简写为 LP )问题 线性规划问题就是求多变量线性函数在线性约束条件下的最优值。 满足约束 条件的解称为可行解, 所有可行解构成的集合称为可行域, 满足目标式的可行解 称为最优解。 MATLAB 解决的线性规划问题的 标准形式 为: min z= f 敎 孑A祝b s.t JAeq?x beq ?lb # x ub 其中f ,x, b,beq,lb, ub为列向量,A, Aeq为矩阵。 其它形式的线性规划问题都可经过适当变换化为此标准形式。 在MATLAB中求解线性规划问题函数为linprog,其使用格式为: [x, fval, exitflag, output, lambda] = linprog(f, A, b, Aeq, beq, lb, ub) 输入部分: 其中各符号对应线性规划问题标准形式中的向量和矩阵, 如果约 束条件中有缺少,则其相应位置用 空矩阵[]代替。 输出部分:其中x为最优解,用列向量表示;fval为最优值;exitflag为退出 标志,若 exitflag=1 表示函数有最优解 ,若 exitflag=0 表示超过设定的迭代最大 次数,若exitflag=-2,表示约束区域不可行,若 exitflag=-3,表示问题无解,若 exitflag=-4,表示执行迭代算法时遇到 NaN,若exitflag=-5,表示原问题和对偶 问题均不可行,若exitflag=-7,表示搜索方向太小,不能继续前进;output表明 算法和迭代情况;lambda表示存储情况。 例 1 用 linprog 函数求下面的线性规划问题 min- 5x1 - min - 5x1 - 4x2 - 6x3 s.t. +xx x2 +2+2 x,1 x2 x3 -X1N £ £ £ x3300^? ? 20 4x3 ? 42 30 输入如下: f = [-5, -4,-6]; A = [1 -1 1; 3 2 4; 3 2 0]; b = [20; 42; 30]; lb = zeros(3,1); [x,fval,exitflag,output,lambda] = linprog(f,A,b,[],[],lb) 注意:由于该问题没有等式约束, 所以输入格式中相应的位置用 [] 代替,变 量没有上限约束,所以 ub 也用[]代替,但由于其在最后,可以不写。 输出结果如下: Optimization terminated. x = % 最优解 0.0000 15.0000 3.0000 fval = %最优值 -78.0000 exitflag = %函数收敛于解 1 output = iterations: 6 algorithm: large-scale: interior point cgiterations: 0 message: Optimization terminated. lambda = ineqlin: [3x1 double] eqlin: [0x1 double] upper: [3x1 double] lower: [3x1 double] 450 个20 个单位45 元。例 2 一家家具公司生产桌子和椅子,用于生产的全部劳动力共计 工时,原料是 400 个单位的木材。每张桌子使用 15 个工时的劳动力, 的木材,售价为 80 450 个 20 个单位 45 元。 解设生产桌子X个,椅子y个,建立如下模型: max 80x+ 45y 家Ox+ 5y? 400 ?15x+ 10y? 450 st W x3 0 ?y3 0 输入如下: f = [-80,-45]; A = [20, 5; 15, 10]; b = [400, 450]; lb = zeros(2,1); [x, fval, exitflag] = linprog(f,A,b,[],[],lb) 结果如下: Optimization terminated. x = 14.0000 24.0000 fval = -2.2000e+003 exitflag = 1 注意:由于 linprog 是求目标函数的最小值,如求目标函数 f 的最大值,可 先求出f的最小值fval,则-fval就是f的最大值。本例只输出最优解、最优值 和退出标志,可见生产 14个桌子, 24个椅子,可获得最大利润 2200元。 0-1 规划 0-1 规划是一种特殊形式的整数规划,它的决策变量仅取值 0或 1.一般用 0 表示放弃, 1 表示选取,故 0-1 规划可以用来处理选址问题、指派问题、装箱问 题、项目评价、资金分配、生产

文档评论(0)

wumanduo11 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档