Python Pulp


1、问题描述

某厂生产甲乙两种饮料,每百箱甲饮料需用原料6千克、工人10名,获利10万元;每百箱乙饮料需用原料5千克、工人20名,获利9万元。
今工厂共有原料60千克、工人150名,又由于其他条件所限甲饮料产量不超过8百箱。
(1)问如何安排生产计划,即两种饮料各生产多少使获利最大?
(2)若投资0.8万元可增加原料1千克,是否应作这项投资?投资多少合理?
(3)若每百箱甲饮料获利可增加1万元,是否应否改变生产计划?
(4)若每百箱甲饮料获利可增加1万元,若投资0.8万元可增加原料1千克,是否应作这项投资?投资多少合理?
(5)若不允许散箱(按整百箱生产),如何安排生产计划,即两种饮料各生产多少使获利最大?

2、用PuLP 库求解线性规划

2.1 问题 

(1)数学建模
设 生产甲 X箱,乙 Y箱
Objective:max 100000*X + 90000*Y
Constraint: 
1) 原料:6*X + 5*Y  60
2) 工人:10*X + 20*Y 150
3) 甲箱数不超过800:X800
4) X,Y  0 
5) X,Y  int
(2)PuLP建模求解
problem1 = LpProblem('Problem1LP',LpMaximize)#定义线性规划问题本身
x = LpVariable('x',lowBound= 0, upBound= 800, cat= 'Continuous')#定义变量X代表制造甲的箱数
y = LpVariable('y',lowBound=0, cat = 'Continuous')
problem1 += (100000*x + 90000*y) #目标函数
problem1 += (6*x + 5*y) <= 60
problem1 += (10*x + 20*y) <= 150
problem1.solve()#response 为1
print(problem1.name) #输出求解状态
print('Status:', LpStatus[problem1.status])#输出求解状态
#Problem1LP
#Status: Optimal

for v in problem1.variables():
        print(v.name, "=", v.varValue)  # 输出每个变量的最优值
print("F1(x)=", pulp.value(problem1.objective))  # 输出最优解的目标函数值
#x = 6.4285714
#y = 4.2857143
#F1(x)= 1028571.427




全部评论

相关推荐

不愿透露姓名的神秘牛友
昨天 18:19
个个985的硕士闭着眼睛都有15k以上的月薪,天天嚷嚷着研究生白度读了,天天嚷嚷着反向读研了........
MMMJC:不读研22本科出去的基本都拿28k呢,你不能用25的研究生和25的本科生比然后说没反向读研,而是25研和22本比呀
点赞 评论 收藏
分享
牛客刘北:如果暑期实习是27届的话,你要晚一年才会毕业,企业为什么会等你呢?要搞清时间逻辑呀!27届现在实习只能是在暑假实习,这是日常实习,不是暑期实习。所以多去投日常实习吧,暑期实习肯定不会要你的
点赞 评论 收藏
分享
点赞 评论 收藏
分享
就在我现在公司的隔壁每天经过都唏嘘不已(就是羡慕)什么时候可以到这里上班啊
柯基在debug:从大学毕业投简历到现在了,应届的时候我都面到终面了,现在工作四年了连简历初筛都过不了了
投递莉莉丝游戏等公司8个岗位 >
点赞 评论 收藏
分享
评论
1
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务