《实例matlab-非线性规划-作业(共4页).doc》由会员分享,可在线阅读,更多相关《实例matlab-非线性规划-作业(共4页).doc(4页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上现代设计方法-工程优化理论、方法与设计姓名学号班级研问题: 某厂向用户提供发动机,合同规定,第一、二、三季度末分别交货40台、60台、80台。每季度的生产费用为 (元),其中x是该季生产的台数。若交货后有剩余,可用于下季度交货,但需支付存储费,每台每季度c元。已知工厂每季度最大生产能力为100台,第一季度开始时无存货,设a=50、b=0.2、c=4,问工厂应如何安排生产计划,才能既满足合同又使总费用最低。讨论a、b、c变化对计划的影响,并作出合理的解释。问题的分析和假设:问题分析:本题是一个有约束条件的二次规划问题。决策变量是工厂每季度生产的台数,目标函数是总费用(包
2、括生产费用和存储费)。约束条件是生产合同,生产能力的限制。在这些条件下需要如何安排生产计划,才能既满足合同又使总费用最低。问题假设:1、 工厂最大生产能力不会发生变化;2、 合同不会发生变更;3、 第一季度开始时工厂无存货;4、 生产总量达到180台时,不在进行生产;5、 工厂生产处的发动机质量有保证,不考虑退货等因素;6、 不考虑产品运输费用是否有厂家承担等和生产无关的因素。符号规定: x1第一季度生产的台数; x2第二季度生产的台数; 180-x1-x2第三季度生产的台数; y1第一季度总费用; y2第二季度总费用; y3第三季度总费用; y总费用(包括生产费用和存储费)。建模: 1、 第
3、一、二、三季度末分别交货40台、60台、80台; 2、 每季度的生产费用为 (元);3、 每季度生产数量满足40x1100,0x2100,100x1+x2180;4、 要求总费用最低,这是一个目标规划模型。目标函数: y1 y2 y3 y 40x1100 0x2100 100x1+x2180求解的Matlab程序代码: 先建立M-文件 fun.m: function f=fun(x);f=14920+0.4*x(1)*x(1)+0.4*x(2)*x(2)+0.4*x(1)*x(2)-64*x(1)-68*x(2);再建立主程序xx.m: x0=0;0;A=-1 -1;1 1;b=-100;18
4、0;Aeq=;beq=;vlb=40;0;vub=100;100;x,fval=fmincon(fun,x0,A,b,Aeq,beq,vlb,vub)计算结果与问题分析讨论: 计算结果:x = 50.0000 60.0001fval = 1.1280e+004 分析讨论: 由结果可知:第一季度应生产50台,第二季度应生产60台,第三季度应生产70台,可既满足合同又使总费用最低,最低费用为11280元。讨论a,b,c对生产方案的影响:a增大或减小对生产方案完全没有影响(无论a为多少,方案都是50、60、70)。b逐渐增大,则三个季度的生产量趋近交付总量的平均值,即同趋于60台(第一季度生产量增加,第二季度不变,第三季度减少)。c逐渐增大,三季度的生产量分别趋近于每季度的交付量,即分别趋于40、60、80(第一季度生产量减少,第二季度不变,第三季度增加)。 问题:梯度法其中function函数为:专心-专注-专业