关于食油生产问题的模型
摘要
在这篇论文中,分析了关于如何安排生产中各事项以实现总利润最大化的问题。在问题一中考虑各个约束条件建立了线性规划模型,用LINGO软件编程求解出最优生产安排,最优解为最大利润238231.5元,其中生产量为540000元,购买原料油的成本费用为247035元,存储费用为54733.8元。问题二中我们利用一中的模型,随着价格的增加公司利润减少,最后趋于平稳。在问题三中加入了新的约束条件,我们通过添加了相应的0-1变量将它们附加到了原来的模型中再次求解,得出最优解最大利润218976.9元,其中生产量为503999.996元,购买原料油的成本费用为228346元,存储费用为56676.85元。 最后,给出了相应的灵敏度分析,分析了各个变量和约束条件对目标函数的影响。
问题的提出 食油厂通过精炼两种硬质原料油和软质原料油,得到一种食油,以下简称产品油。硬质原料油来自两个产地: 产地1和产地2,而软质原料油来自另外三个产地: 产地3, 产地4 和产地5。据预测,这5种原料油的价格从一至六月分别为下表所示, 产品油售价200元/吨 。 硬质油和软质油需要由不同生产线来精炼。硬质油生产线每月最大处理能力为200吨,软质油生产线最大处理能力为250吨/月。五种原料油都备有贮罐, 每个贮罐容量均为1000吨, 每吨原料每月存贮费用为5元。而各种精制油以及产品无油罐可存贮,精炼的加工费用可略去不计,产品销售没有任何问题。 产品油的硬度有一定的技术要求,它取决于各种原料油的硬度以及混合比 例。 产品油的硬度与各种成份的硬度以及所占比例成线性关系。根据技术要求, 产品油的硬度必须不小于3.0而不大于6.0。硬质1、硬质2、软质3、软质4、软质 5等各种原料油的硬度为:8.8,6.1,2.0,4.2,5.0,其中硬度单位是无量纲的, 并且这里假定精制过程不会影响硬度。 假设在一月初, 每种原料油有500吨存贮而要求在六月底仍保持同样贮备。 (1) 根据下表 预测的原料油价格, 编制逐月各种原料油采购量、耗用量及库存量计划, 使本年内的利润最大。 (2) 考虑原料油价格上涨对利润的影响。据市场预测分析, 若二月份硬质原料油价格比表中的数字上涨%,则软质油在二月份的价格将比表中的数字上涨2%。 相应地三月份硬质原料油将上涨2%,软质原料油将上涨4%, 依此类推至六月份。试分析从1到20的各种情况下, 利润将如何变化? (3) 附加以下3个条件后, 再求解上面的问题: ① 每一个月所用的原料油不多于三种。 ② 若在某一个月用一种原料油, 那么这种油不能少于20吨 。 ③ 若在一个月中用硬质油1或硬质油2, 则这个月就必须用软质5。
原料油的价格(元/吨) 硬质1 硬质2 软质3 软质4 软质5 一月 110 120 130 110 115 二月 130 130 110 90 115 三月 110 140 130 100 95 四月 120 110 120 120 125 五月 100 120 150 110 105 六月 90 110 140 80 135 模型的分析 从题目我们可以看出这是一个,这是一个关于如何安排采购,生产和存储而使利润最大化的问题。公司的利润要受到三个因素的制约,一是购买每一种原料油的费用,二是成品油的销售费,三是没有炼制的原料油的存储费。购买原料油的成本费与购买每一种原料油的数量和每一种原料油的价格有关系,应该是价格高的原料尽量少购买,价格低的原料多购买。由于销售成品油的销售额的价格恒定不变为200(元/吨),所以销售额只与成品油的产量有线性关系,因此尽可能增加成品油的产量,以增加销售额。要想增加成品油的产量就必须增加每一种原料油的购买量,这样又会引起成本的增加,还有生产能力的限制,因此这是矛盾的,但是在这过程中一定存在一个最优的方案使得这两个目标最大。存储费用与存储原料油总数量存在一种线性关系,存储原料油的数量越少存储费用越少,尽量保证存储的原料油总量少,相应的购买的原料油的量应该尽量少。这三个因素是互相影响的,既是矛盾的又是联系的。因此我们考虑建立线性规划的模型来解决这个问题。
模型的基本假设
假设每月月初购买原料油; 假设每月的库存量为月底生产完后的剩余量; 假设炼制过程没有质量损失; 假设每月没用的原料油到下个月时都是存满一个月的; 假设生产出的食油均能在当月卖出; 假设第六个月的库存费用算入前半年的费用支出里。
模型符号
在第i月第j类油的购买量(吨); 在第i月第j类油的耗用量(吨); 在第i月第j类油的库存量(吨); 第i月第j类油的单价(元/吨);
模型的建立与求解
问题一: 针对问题一建立关于它的线性规划模型,目标函数是利润的最大化。 利润=生产销售额(200)-购买原料油的成本费()-存储费() 目标函数: 约束条件: 硬质原料生产约束: 软质原料生产约束: 硬度限制: 存储量限制: 连续约束(生产,购买,库存之间的关系): 非负性:
我们根据以上分析建立的线性规划模型,运用lingo软件编程(程序和运算结果见附录1)求解,得到了问题的最优解,公司的最大利润为238231.5元,其中生产量为540000元,购买原料油的成本费用为247035元,存储费用为54733.8元。具体的采购,生产和库存方案下表。
月份 原料油 购买量(吨) 对目标函数值的影响(元/吨) 生产量(吨) 对目标函数值的影响(元/吨) 库存量(吨) 对目标函数值的影响(元/吨) 一月 硬质1 0.000000 25.00000 96.29630 0.000000 403.7037 0.000000 硬质2 0.000000 35.00000 103.7037 0.000000 396.2963 0.000000 软质3 0.000000 25.00000 0.000000 20.00000 500.0000 0.000000 软质4 0.000000 25.00000 37.50000 0.000000 462.5000 0.000000 软质5 0.000000 30.00000 212.5000 0.000000 287.5000 0.000000 二月 硬质1 0.000000 40.00000 159.2593 0.000000 244.4444 0.000000 硬质2 0.000000 40.00000 40.74074 0.000000 355.5556 0.000000 软质3 0.000000 0.000000 0.000000 20.00000 500.0000 0.000000 软质4 287.50000 0.000000 250.0000 0.000000 500.0000 0.000000 软质5 0.000000 25.00000 0.000000 0.000000 287.5000 0.000000 三月 硬质1 0.000000 15.00000 85.18579 0.000000 159.2593 0.000000 硬质2 0.000000 45.00000 114.8148 0.000000 240.7407 0.000000 软质3 0.000000 15.00000 0.000000 20.00000 500.0000 0.000000 软质4 0.000000 5.000000 0.000000 0.000000 500.0000 0.000000 软质5 462.50000 0.000000 250.0000 0.000000 500.0000 0.000000 四月 硬质1 0.000000 20.00000 159.2593 0.000000 0.000000 5.000000 硬质2 0.000000 000 40.74074 0.000000 200.0000 0.000000 软质3 0.000000 0.000000 0.000000 20.00000 500.0000 0.000000 软质4 0.000000 20.00000 250.0000 0.000000 250.0000 0.000000 软质5 0.000000 25.00000 0.000000 0.000000 500.0000 0.000000 五月 硬质1 159.2593 0.000000 159.2593 0.000000 0.000000 15.00000 硬质2 0.000000 15.00000 40.74074 0.000000 159.2593 0.000000 软质3 0.000000 25.00000 0.000000 15.92593 500.0000 0.000000 软质4 0.000000 5.000000 250.0000 0.000000 0.000000 30.00000 软质5 0.000000 0.000000 0.000000 1.481481 500.0000 0.000000 六月 硬质1 659.2593 0.000000 159.2593 0.000000 500.0000 0.000000 硬质2 381.4815 0.000000 40.74074 0.000000 500.0000 0.000000 软质3 0.000000 000 0.000000 33.70370 500.0000 0.000000 软质4 750.0000 0.000000 250.0000 0.000000 500.0000 0.000000 软质5 0.000000 25.00000 0.000000 35.92593 500.0000 0.000000
问题二: 现在我们考虑当原料油价格上涨时最优生产方案的变化和最大利润的变化。由题意可得以下的价格上涨趋向: 月份 1 2 3 4 5 6 硬质油(x%) 1 1 2 3 4 5 软质油(x%) 1 2 4 6 8 10 由此我们可得价格变化矩阵:,变化后的价格为:
我们看x取从1到20各个数时变化的二十个新的价格矩阵,并代入原来的线性规划模型中求解,同样用LINGO求解。得到二十个模型的最优解如下表:(由于数据很多在这里我们只关注最优值的变化,所以没有附上全部数据) x 1 2 3 4 5 6 7 8 9 10 利润(元) 225179 212127 199075 186024 173809 163767 153798 145707 140141 134824 x 11 12 13 14 15 16 17 18 19 20 利润(元) 132357 129890 127942 126292 125842 125392 124942 124492 124042 123592
用Mathematica数学软件作出最大利润随价格涨幅的变化曲线图,见下图。
从图中不难发现,在x=8之前,最大利润随x的增大而基本呈线性的减小,而在x>8仍然在减小但是减幅开始减小,最后曲线趋于平坦。通过进一步的分析可知道,当x增达到一定程度时,从二月开始许多原料油价格将超过成品油价格,因此在这时公司肯定会避免购买这些原料油而是尽量购买较为便宜的原料以供继续生产,这样才可以保证亏损额不至于继续增加,当x继续增大时(x>20),二月份以后的所有原料油价格均将超过成品油价格,只有第一个月份的油价保持不变,小于成品油价格,因此公司只会在一月采购一些原料油以供生产来减少亏损额,这样公司生产方案就会固定下来,从而最大利润也固定下来。通过计算可知,当x≥25时,公司所能得到的最大利润稳定一定的值不再继续减少。另外还可发现,在0-8之间公司的最大利润与x简单的成线性关系,因此在这断区间上可以拟合出一条直线用于计算x在0-8之间变动时的最大利润而不必再将x带入程序计算,从而简化计算。
问题三: 在这一问中我们考虑对食油生产中附加新的条件后的求解: 在配料中限制成分的数目:每一个月所用的原料油不多于三种。 不考虑某种小量的成分:若在某一个月用一种原料油, 那么这种油不能少于20吨 。 把“逻辑条件”加在各成分的混合物上:若在一个月中用硬质油1或硬质油2, 则这个月就必须用软质5。
我们考虑通过添加0-1变量来附加这些额外的条件,在这里我们设 这样我们就可一建立新的线性规划模型如下: 目标函数: 约束条件: 硬质原料生产约束: 软质原料生产约束: 硬度限制: 存储量限制: 连续约束(生产,购买,库存之间的关系): 每一个月所用的原料油不多于三种: 使用的原料油不能少于20吨及生产的上限: , 若在一个月中用硬质油1或硬质油2, 则这个月就必须用软质5: 非负性:
我们根据以上分析建立的线性规划模型,再次运用lingo软件编程(程序和运算结果见附录2)求解,得到了问题的最优解,公司的最大利润为 218976.9元,其中生产量为503999.996元,购买原料油的成本费用为228346元,存储费用为56676.85元。具体的采购,生产和库存方案下表。
月份 原料油 购买量(吨) 对目标函数值的影响(元/吨) 生产量(吨) 对目标函数值的影响(元/吨) 库存量(吨) 对目标函数值的影响(元/吨) 一月 硬质1 0.000000 30.00000 155.0000 0.000000 345.0000 0.000000 硬质2 0.000000 35.00000 0.000000 0.000000 500.0000 0.000000 软质3 0.000000 163.9714 0.000000 0.000000 500.0000 0.000000 软质4 0.000000 25.00000 230.0000 0.000000 270.0000 0.000000 软质5 0.000000 30.00000 20.00000 0.000000 480.0000 0.000000 二月 硬质1 0.000000 45.00000 155.0000 0.000000 190.0000 0.000000 硬质2 0.000000 40.00000 0.000000 0.000000 500.0000 0.000000 软质3 0.000000 138.9714 0.000000 0.000000 500.0000 0.000000 软质4 190.00000 0.000000 230.0000 0.000000 230.0000 0.000000 软质5 0.000000 25.00000 20.00000 0.000000 460.0000 0.000000 三月 硬质1 0.000000 20.00000 85.18519 0.000000 104.8148 0.000000 硬质2 0.000000 45.00000 114.8148 0.000000 385.1852 0.000000 软质3 0.000000 153.9714 0.000000 0.000000 500.0000 0.000000 软质4 0.000000 5.000000 0.000000 198.5185 230.0000 0.000000 软质5 580.00000 0.000000 250.0000 0.000000 790.0000 0.000000 四月 硬质1 0.000000 25.00000 85.18519 0.000000 19.62963 0.000000 硬质2 0.000000 000 114.8148 0.000000 270.3704 0.000000 软质3 0.000000 138.9714 0.000000 75.47302 500.0000 0.000000 软质4 0.000000 20.00000 250.0000 0.000000 230.0000 0.000000 软质5 0.000000 25.00000 0.000000 0.000000 540.0000 0.000000 五月 硬质1 135.3704 0.000000 155.0000 0.000000 0.000000 15.00000 硬质2 0.000000 15.00000 0.000000 0.000000 270.3704 0.000000 软质3 0.000000 163.9714 0.000000 2.457144 500.0000 0.000000 软质4 0.000000 5.000000 230.0000 0.000000 0.000000 30.00000 软质5 0.000000 0.000000 20.00000 0.000000 520.0000 0.000000 六月 硬质1 655.0000 0.000000 155.0000 0.000000 500.0000 0.000000 硬质2 229.6296 0.000000 0.000000 0.000000 500.0000 0.000000 软质3 0.000000 148.9714 0.000000 24.60000 500.0000 0.000000 软质4 730.0000 0.000000 230.0000 0.000000 500.0000 0.000000 软质5 0.000000 25.00000 20.00000 0.000000 500.0000 0.000000
模型的灵敏度分析
现在我们对模型的灵敏度进行分析,对问题一的求解中我们得到了相关的灵敏度分析的数据,即为表中对对目标函数值的影响栏。从表中可以看出: 二月份的第三、四种,三月份第五种、四月份第三种、五月份第一、五种、六月份第一、二、四种原料油的购买量对公司的总利润无影响,其他月份的其它类别的原料油购买量的增加将会导致公司总利润减少,实际上就没有购买这些原料油。而这些无影响的原料油中除了二月份的第三种,四月份的第三种和五月份第五种原料油没有购买外,其他的原料油均购买了。我们还可以发现购买的时间在后两个月,这可能是原来存储的原料油在前几个月内够用,在后两个月买是为了减少存储费用。另外,我们发现单价低的原料油购买的量就较多; 同样可以看生产,库存对总利润的影响,也均是将会导致公司总利润减少的不生产或不存储; 下面我们再利用对偶价格的理论对问题一进行分析(对偶价格见附录1),从结果中可以发现第2—13行的值不为零,其值从94到133不等,这是约束条件“每个月最多可炼硬质油200吨,软质油250吨”所引起的,即当约束条件“每个月最多可炼植物油201吨,非植物油251吨”时,公司的总利润将增加110+105+100+94+89+115+110+105+100+98+133=1159元,如果约束条件增大10吨时,即每个月最多可炼植物油210吨或者非植物油260吨,则公司的总利润将增加1.159万元;硬度的变化对总利润的影响很微小;库存量也应要尽量减少。 同样的原理我们可以对问题三进行分析。从上面的分析得到下面的结论:从长远的考虑,要从根本上增加公司的总利润,应该扩大公司的规摸,提高生产的能力。
参考文献
运筹学课本和课堂笔记