您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 建筑制度 > 数学建模复习内容带习题答案
考试内容分布:1、线性规划2题,有1题需编程;2、非线性规划2题,有1题需编程;3、微分方程1题,需编程;4、差分方程2题,纯计算,不需编程;5、插值2题,拟合1题,纯计算,不需编程;;6、综合1题(4分),纯计算,不需编程。一、列出下面线性规划问题的求解模型,并给出matlab计算环境下的程序1.某车间有甲、已两台机床,可用于加工三种工件,假定这两台车床的可用台时数分别为800和900,三种工件的数量分别为400,600和500,且已知用两种不同车床加工单位数量不同工件所需的台时数和加工费用如下表。问怎样分配车床的加工任务,才能即满足加工工件的要求,又使加工费用最低。(答案见课本P35,例1)2.有两个煤厂A,B,每月进煤分别不少于60t、100t,它们负责供应三个居民区的用煤任务,这三个居民区每月需用煤分别为45t,75t,40t。A厂离这三个居民区分别为10km,5km,6km,B厂离这三个居民区分别为4km,8km,15km,问这两煤厂如何分配供煤,才能使总运输量最小?(1)问题分析设A煤场向这三个居民区供煤分别为x1,x2,x3;B煤场向这三个居民区供煤分别为x4,x5,x6,则minf=10*x1+5*x2+6*x3+4*x4+8*x5+15*x6,再根据题目约束条件来进行解题。(2)模型的求解f=[10564815];A=[-1-1-1000000-1-1-1-100-1000-100-1000-100-1];b=[-60;-100;-45;-75;-40];Aeq=[];beq=[];vlb=zeros(6,1);vub=[];[x,fval]=linprog(f,A,b,Aeq,beq,vlb,vub)Optimizationterminated.(3)结果分析x=0.000020.000040.000045.000055.00000.0000fval=960.0000即A煤场分别向三个居民区供煤0t,20t,40t;B煤场分别向三个居民区供煤45t,55t,0t可在满足条件下使得总运输量最小。3.某工厂利用两种原料甲、乙生产1A,2A,3A三种产品,每月可供应的原料数量(单位:t)、每万件产品所需各种原料的数量以及每万件产品的价格如下表所示原料每万件产品所学原料/t每月原料供应量/t1A2A3A甲431180乙263200价格/万元1254试制定每月最优生产计划,使得总收益最大。解:设A1生成x1万件,A2生成x2万件,A3生成x3万件那么总收入为:12*x1+5*x2+4*x3目标:总收入最大,即:max12*x1+5*x2+4*x3约束条件:1.甲原材料:4*x1+3*x2+x3=1802.乙原材料:2*x1+6*x2+3*x3=2003.物理条件:x1=0,x2=0,x3=0在Matlab中输入:f=-[12;5;4];A=[4,3,1;2,6,3];b=[180;200];Aeq=[];beq=[];xmin=[0,0,0];xmax=[inf,inf,inf];x0=xmin;[x,fmin]=linprog(f,A,b,Aeq,beq,xmin,xmax,x0);x,-fmin结果为:x=34.00000.000044.0000ans=584.0000即当生产34万件的A1和44万件的A3。总收入达到最大,为584万。4、某医院负责人每日至少需要下列数量的护士:班次时间最少护士数16时—10时60210时—14时70314时—18时60418时—22时50522时—02时20602时—06时30每班护士在职半开时向病房报道,连续工作八小时,医院领导为满足每班所需要的护士数,最少需雇佣多少护士?试根据你了解的实际情况建立一个较好的数学模型及相应的算法和程序。解:一、问题假设1、每名值班护士都正常工作,没有请假现象。2、该医院不存在大的人员变动。3、每名护士都可以连续工作八小时。二、问题分析分析该问题,可以得出该问题是一个线性规划问题,求解需雇佣的最少护士人数,所以应该,建立目标函数以及对应的约束条件。根据每班的人数列出目标函数,根据六个时间段所需要的最少护士数建立六个约束条件。三、符号说明符号表示意义Z需要雇佣的最少护士数符号表示意义ix第i个班次加入值班的人数四、模型建立根据题意判断出该问题属于求解最优化问题,需要确定目标函数和约束条件,具体模型如下:6,,2,1,0302050607060..min655443322161654321ixxxxxxxxxxxxxtsxxxxxxZi五、模型求解利用matlab软件,编写m文件,求解该模型。程序代码:%diertif=[1,1,1,1,1,1]A=[-10000-1;-1-10000;0-1-1000;00-1-100;000-1-10;0000-1-1;]b=[-60;-70;-60;-50;-20;-30;]lb=zeros(6,1);[x,fval,exitflag,output,lambda]=linprog(f,A,b,[],[],lb)计算结果:f=111111A=-10000-1-1-100000-1-100000-1-100000-1-100000-1-1b=-60-70-60-50-20-30x=41.917628.082435.049414.95069.860620.1394fval=150.0000六、模型求解分析根据计算的结果可以得出,该医院至少要雇用150护士,其中在每个班次中添加的具体人员如下表:表一:每个班次中加入的人员数班次护士数142228335415510620综上,求解出该值班安排问题。二、列出下面问题的求解模型,并给出matlab计算环境下的程序1.炼油厂将A、B、C三种原料加工成甲乙丙三种汽油。一桶原油加工成汽油的费用为4元,每天至多能加工汽油14,000桶。原油的买入价、买入量、辛烷值、硫含量,及汽油的卖出价、需求量、辛烷值、硫含量由下表给出。问如何安排生产计划,在满足需求的条件下使利润最大?原油类别买入价(元/桶)买入量(桶/天)辛烷值(%)硫含量(%)A45≤5000120.5B35≤500062.0C25≤500083.0汽油类别卖出价(元/桶)需求量(桶/天)辛烷值(%)硫含量(%)甲703000≥10≤1.0乙602000≥8≤2.0丙501000≥6≤1.0解:决策变量:目标:X9X8X7C/25X6X5X4B/35X3X2X1A/45丙(1000)乙(2000)甲(3000)fxxxxxxxxxzmin35600025354560004100050200060300070max987654321约束:987654321253545minxxxxxxxxxf总利润最大需求限制;原料限制;含量限制;非负限制含量限制非负限制原料限制需求限制约束1000325.020002325.03000325.01000686122000886123000108612500050005000100020003000963852741963852741987654321963852741xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0x总盈利:126000元c=[454545353535252525];a1=[100100100;010010010;001001001];a2=[111000000;000111000;000000111;-1200-600-800;0-1200-600-80;00-1200-600-8;0.500200300;00.50020030;000.5002003];b1=[300020001000];b2=[500050005000-30000-16000-6000300040001000];v1=zeros(1,9);[xf]=linprog(c,a2,b2,a1,b1,v1)z=356000-f2001200600C/25000B/358008002400A/45丙(1000)乙(2000)甲(3000)2.要设计和发射一个带有X射线望远镜和其他科学仪器的气球,对于性能的粗糙的度量方法是以气球所能达到的高度和所携仪器的重量来表达,很清楚,高度本身是气球体积的一个函数。根据过去的经验作出的结果,是求极大满意性能函数222.0803.0100),(WWVVWVfP,此处V是体积,W是仪器重量。承包项目的预算限额是1040美元,与体积V有关的费用是V2,与设备有关的费用是W4,为了保证在高度方面的性能与科学设备方面的性能之间的合理平衡,设计者需要满足约束条件VW10080。找出由体积和设备重量来表达的最优设计模型。解:由题意可以问题的V和W应满足的约束条件为s.t.然后求解目标函数=(,)=100-0.3+80W-0.2的最大值。我们可以用非线性规划的线性逼近的方法将目标函数转化成近似的线性函数然后用线性规划的求解的方法即可得出结果。根据题意建立模型:Maxf=100-0.3+80W-0.2s.t.模型求解的Matlab程序如下:(1)建立非线性目标函数文件functionf=qiqiu01(x)f=0.3*x(1)^2-100*x(1)+0.2*x(2)^2-80*x(2);(2)建立主程序求解clearall;x0=[1;1];A=[1,2;5,-4];b=[520;0];Aeq=[];beq=[];vlb=[0;0];vub=[];[x,fval]=fmincon('qiqiu01',x0,A,b,Aeq,beq,vlb,vub);xfval%求出的结果为:x=148.5714185.7143fval=1.6194e+0043、某厂向用户提供发动机,合同规定,第一、二、三季度末分别交货40台、60台、80台.每季度的生产费用为2)(bxaxxf(元),其中x是该季生产的台数.若交货后有剩余,可用于下季度交货,但需支付存储费,每台每季度c元.已知工厂每季度最大生产能力为100台,第一季度开始时无存货,设a=50、b=0.2、c=4,问工厂应如何安排生产计划,才能既满足合同又使总费用最低.解:问题的分析和假设:分析:问题的关键在于由于工厂的生产能力足以满足每个季度用户的需求,但是为了使总费用最少,那么利用每个季度生产费用的不同,可用利用上个生产费用低的季度多生产来为下个季度进行准备,前提是本月节省下的费用减去总的发动机存储费用还有剩余,这样生产才有价值,才可能满足合同的同时又能使总费用最低。基本假设:1工厂的生产能力不受外界环境因素影响。2为使总费用最低,又能满足合同要求,各个季度之间的生产数量之间是有联系的。3第一季度开始时无存货。4工厂每季度的生关费用与本季度生产的发动机台数有关。5生产要按定单的数量来进行,生产的数量应和订单的数量相同,以避免生产出无用的机器。符号规定:X1―――第一季度生产发动机的数量X2―――第二季度生产发动机的数量X3―――第三季度生产发动机的数量建模:1三个季度发动机的总的生产量为180台。2每个季度的生产量和库存机器的数量之和要大于等于本季度的交货数量。3每个月的生产数量要符合工厂的生产能力。4将实际问题转化为非线性规划问题,建立非线性规划模型目标函数minf(x)=50(x1+x2+x3)+0.2(x12+x22+x32)+4(x1-40)+4(x1+x2-100)整理,得minf(x)=50(x1+x2+x3)+0.2(x12+x22+x32)+4(2x1+x2-140)约束函数s.tx1+x2≥100;X1+x2+x3=180;40≤x1≤100;0≤x2≤100;0≤x3≤100;求解的Matlab程序代码:M-文件f
本文标题:数学建模复习内容带习题答案
链接地址:https://www.777doc.com/doc-2408313 .html