Matlab做线性规划.pptVIP

  1. 1、本文档共32页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* 线性规划 数学建模与数学实验 后勤工程学院数学教研室 实验目的 实验内容 2、掌握用数学软件包求解线性规划问题。 1、了解线性规划的基本内容。 *2、线性规划的基本算法。 5、实验作业。 3、用数学软件包求解线性规划问题。 1、两个引例。 4、建模案例:投资的收益与风险 问题一 : 任务分配问题:某车间有甲、乙两台机床,可用于加工三种工件。假定这两台车床的可用台时数分别为800和900,三种工件的数量分别为400、600和500,且已知用三种不同车床加工单位数量不同工件所需的台时数和加工费用如下表。问怎样分配车床的加工任务,才能既满足加工工件的要求,又使加工费用最低? 两个引例 解 设在甲车床上加工工件1、2、3的数量分别为x1、x2、x3,在乙车床上加工工件1、2、3的数量分别为x4、x5、x6。可建立以下线性规划模型: 解答 问题二: 某厂每日8小时的产量不低于1800件。为了进行质量控制,计划聘请两种不同水平的检验员。一级检验员的标准为:速度25件/小时,正确率98%,计时工资4元/小时;二级检验员的标准为:速度15小时/件,正确率95%,计时工资3元/小时。检验员每错检一次,工厂要损失2元。为使总检验费用最省,该工厂应聘一级、二级检验员各几名? 解 设需要一级和二级检验员的人数分别为x1、x2人, 则应付检验员的工资为: 因检验员错检而造成的损失为: 故目标函数为: 约束条件为: 线性规划模型: 解答 返 回 1.线性规划的标准形式: 用单纯法求解时,常将标准形式化为: 2. 线性规划的基本算法——单纯形法 线性规划的基本算法——单纯形法 引入松弛变量x3, x4, x5, 将不等式化为等式, 即单纯形标准形: 显然A的秩ran(A)=3, 任取3个线性无关的列向量,如P3 P4 P5称为 一组基, 记为B. 其余列向量称为非基, 记为N . 于是 f = cBxB + cNxN , Ax = BxB + NxN = b, 则 xB = B-1b-B-1NxN , f = cBB-1b + (cN – cBB-1N)xN 若可行基进一步满足: cN – cBB-1N≥0, 即: cBB-1N - cN≤0 则对一切可行解x, 必有f(x) ≥ cBB-1b, 此时称基可行解x = (B-1b, 0) T 为最优解. 3. 最优解的存在性定理 将A的列向量重排次序成A = (B, N), 相应x = (xB, xN) T, c = (cB, cN) 基对应的变量xB称为基变量, 非基对应的变量xN称为非基变量. 定理1 如果线性规划(1)有可行解,那么一定有基可行解. 定理2 如果线性规划(1)有最优解,那么一定存在一个基可行解 是最优解. 4. 基可行解是最优解的判定准则 因为 f = cBB-1b + (cN – cBB-1N)xN, 即 f - 0?xB + (cBB-1N- cN )xN = cBB-1b 5.基可行解的改进 改进方法: 返 回 用MATLAB优化工具箱解线性规划 min z=cX 1、模型: 命令:x=linprog(c,A,b) 2、模型:min z=cX 命令:x=linprog(c,A,b,Aeq,beq) 注意:若没有不等式: 存在,则令A=[ ],b=[ ]. 3、模型:min z=cX VLB≤X≤VUB 命令:[1] x=linprog(c,A,b,Aeq,beq, VLB,VUB) [2] x=linprog(c,A,b,Aeq,beq, VLB,VUB, X0) 注意:[1] 若没有等式约束: , 则令Aeq=[ ], beq=[ ]. [2]其中X0表示初始点 4、命令:[x,fval]=linprog(…) 返回最优解x及x处的目标函数值fval. 解 编写M文件xxgh1.m如下: c=[-0.4 -0.28 -0.32 -0.72 -0.64 -0.6]; A=[0.01 0.01 0.01 0.03 0.03 0.03;0.02 0 0 0.05 0 0;0 0.02 0 0 0.05 0;0 0 0.03 0 0 0.08]; b=[850;700;100;900]; Aeq=[]; beq=[]; vlb=[0;0;0;0;0;0]; vub=

文档评论(0)

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

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

1亿VIP精品文档

相关文档