用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人。问:每种汽车应购买多少辆,可使每天的吨-公里最大?要求列数学公式,再编写代码
展开
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的目标。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询