用matlab解线性规划问题
某汽车公司现有资金60万元,打算用来购买A,B,C三种汽车。已知汽车A每辆为1万元,汽车B每辆为2万元,汽车C每辆为2.3万元。汽车A每辆每班需要一名司机,可完成2100...
某汽车公司现有资金60万元,打算用来购买A,B,C三种汽车。已知汽车A每辆为1万元,汽车B每辆为2万元,汽车C每辆为2.3万元。汽车A每辆每班需要一名司机,可完成2100吨-公里;汽车B每班需要两名司机,可完成3600吨-公里;汽车C每辆每班需要两名司机,可完成3780吨-公里。每辆汽车每天最多安排3班,每个司机每天最多安排一班。限制购买汽车不超过30辆,司机不超过145人。问:每种汽车应购买多少辆,可使每天的吨-公里最大?
要求列数学公式,再编写代码 展开
要求列数学公式,再编写代码 展开
- 你的回答被采纳后将获得:
- 系统奖励15(财富值+成长值)+难题奖励30(财富值+成长值)
1个回答
展开全部
设A,B,C三种汽车分别买x,y,z(正整数)辆,则:
汽车总数辆:x+y+z<=30,
总价格: x*1+y*2+z*2.3<=60,
司机人数: 1*x+2*y+2*z<=145
每天的吨-公里 3*(2100*x+3600*y+3780*z)
用matlab优化求解:
F=@(x)-3*(2100*x(1)+3600*x(2)+3780*x(3))
X0=[2;3;4];
A=[1 1 1;1 2 2.3;1 2 2];b=[30 60 145];lb=zeros(3,1);
[X,fval]=fmincon(F,X0,A,b,[],[],lb,[])
运行结果:
X =
0
30.0000
0.0000
fval = -3.2400e+05
则当全部资金60万元购买30辆B汽车,可实现每天最大吨-公里3.2400e+05=324000的目标。
汽车总数辆:x+y+z<=30,
总价格: x*1+y*2+z*2.3<=60,
司机人数: 1*x+2*y+2*z<=145
每天的吨-公里 3*(2100*x+3600*y+3780*z)
用matlab优化求解:
F=@(x)-3*(2100*x(1)+3600*x(2)+3780*x(3))
X0=[2;3;4];
A=[1 1 1;1 2 2.3;1 2 2];b=[30 60 145];lb=zeros(3,1);
[X,fval]=fmincon(F,X0,A,b,[],[],lb,[])
运行结果:
X =
0
30.0000
0.0000
fval = -3.2400e+05
则当全部资金60万元购买30辆B汽车,可实现每天最大吨-公里3.2400e+05=324000的目标。
追问
首先非常感谢你的回答!但还应该考虑到每辆车每天最多安排三班,班数这是一个变量,总共应该设9个变量.我选择这样建模:每天一班的A车有x1辆,两班的x2,三班的x3;每天一班的B车有y1辆,两班的y2辆,三班的y3辆;每天一班的C车有z1,两班的z2,三班z3;这样列式很好列,就是不会用matlab求解,能告诉我一下吗?
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询