运筹学实验3用Excel求解线性规划模型.doc
9页实验三、用Excel求解线性规划模型线性规划问题用手工求解工作量很大,而且没有较高的数学基础很难理解其计算过程和方法,但是借助Excel“规划求解”工具,就能轻而易举地求得结果Excel最多可解200个变量、600个约束条件的问题下面我们以一实例介绍利用Excel规划求解工具怎样快速解决具体的经济决策问题一、实验目的1、 掌握如何建立线性规划模型2、 掌握用Excel求解线性规划模型的方法3、 掌握如何借助于Excel对线性规划模型进行灵敏度分析,以判断各种可能的变化对最优方案产生的影响4、 读懂Excel求解线性规划问题输出的运算结果报告和敏感性报告二、 实验内容1、 [工具][规划求解]命令规划求解加载宏是Excel的一个可选安装模块,在安装Excel时,只有在选择“完全/定制安装”时才可选择装入这个模块在安装完成进入Excel后还要用[工具][加载宏]命令选中“规划求解”,以后在[工具]菜单下就增加了一条[规划求解]命令使用[规划求解]命令的一般步骤为:第一步:在选取[工具][规划求解]命令后,弹出图1所示“规划求解参数”对话框,其中各选项说明如表1图1“规划求解参数”对话框表1“规划求解参数”对话框选项选项名说明设置目标单元格选取计算问题的目标函数,并含有计算公式的单元格等于按问题目标进行选择。
如利润问题,选取“最大值”可变单元格决策变量所在各单元格、不含公式,可以有多个区域或单元格约束增加、修改、删除各个约束等式或不等式,一个一个地与图2切换填入或修改添加选择后弹出图2所示对话框更改选择后弹出图3所示对话框删除删除所选定的约束条件选项决定采用线性模型还是非线性模型求解约束条件中的单元格引用位置,可从键盘直接录入,也可用鼠标拖放选取图2图3第二步:完成图1所示的一切填入项目后,单击“选项”按钮,在弹出的“规划求解选项”对话框中若是线性模型则选取“采用线性规模”选项按钮,再单击“确定”按钮回到图1图4第三步:在图1中单击“求解”按钮,经计算完成后弹出“规划求解结果”对话框(图5)图5第四步:在图5中单击“确定”按钮,则只将优化计算结果显示在表格设置中的可变单元格(决策变量)和目标单元格(目标函数)内在图5的“报告”框中有3个选项,每个选项对应着一个报告,各报告以单一工作表记载,它们不仅能给出优化结果,甚至还给出更重要信息,例如影子价格等2、 产品生产品种结构优化问题数学模型示例:一家制药厂生产两种产品:药品Ⅰ和药品Ⅱ每个产品要用到一种相同的原料A,并要经过一道相同的工序,在机器B上包装 。
因为这两种产品可以使用同样的机器,所以它们可以轮换使用设备,从而使其生产设施得到较充分的利用表2 药品和药品的售价、可变成本和贡献药品销售价(元)可变成本(元)对利润的贡献Ⅰ35030050Ⅱ450350100表3 两种药品在机器上加工两种产品的时间以及原材料A和B限制药品原料A(千克)机器B(小时)原料C(千克)Ⅰ210Ⅱ111资源限制400300250问该制药厂应该如何安排生产计划才能使企业的利润最大 我们知道,如果分别设药品Ⅰ和药品Ⅱ的生产数量为x1和x2,那么该问题的线性规划模型如下:表格设置与公式说明根据本问题的规模和条件,拟设置如表1中A1︰E8所示形式:⑴区域B3︰C6和E3︰E5为原始数据区,输入如表1中所示的原始数据表4⑵在单元格B8内输入数学模型中目标函数的计算公式,并求最大值⑶单元格B7︰C7分别作为药品Ⅰ和药品Ⅱ的产量(即决策变量x1、x2),即可变单元格其初始值设为0,求解过程中计算机会自动输入各组试验值⑷区域D3︰D5内的各单元格依次输入三个约束条件对应式的左侧部分操作步骤第一步:选择[工具][规划求解]命令,弹出图1所示对话框根据本问题的性质,在“设置目标单元格”文本框内填入$B$8,在“等于”选项后选取“最大值”,在“可变单元格”文本框内填入$B$7︰$C$7。
第二步:单击“添加”按钮,弹出图2所示对话框该步骤的任务是要把前面数学模型中的全部约束条件一个一个地填入图1所示的“约束”列表框内图2所示就是填入三个资源约束条件的情形:在左边“单元格引用位置”文本框内填入$D$3︰$D$5(可直接录入、或用鼠标拖入)、单击中间向下小箭头并选取符号“<=”、在右方“约束值”文本框内录入$E$3︰$E$5,也可以录入数字400,300,250,最后单击“确定” 按钮或回车键,回到图1这样就完成了约束条件$D$3︰$D$5<=$E$3︰$E$5的录入第三步:重复第二步,录入$B$7︰$C$7>=0,即两决策变量的值必须大于0,最后如图1所示第四步:在图1中单击“选项”按钮,弹出图4对话框因本例题属于线性规划问题,选取“采用线性模型”按钮,再单击“确定”按钮,回到图1第五步:在图1中选取“求解”按钮或击回车键,Excel进入规划求解运行过程,屏幕左下角状态条上逐次显示运行过程报告一旦计算结束,弹出图5的对话框在图5内可以有四种选择:⑴若单击“确定”按钮或击回车键,则显示如表2的结果可变单元格$B$7︰$C$7内显示最优生产计划,即药品Ⅰ生产50件和药品Ⅱ生产100件,可获得最大利润27500元;单元格$D$3︰$D$5分别给出了各种资源的用量,只有原料A有50千克的剩余。
表5⑵若选择“运算结果报告”,Excel显示“运算结果报告
用影子价格与各紧缺资源的市场价格相比较,可以为企业是否购买紧缺资源扩大生产提供决策依据有剩余的资源影子价格为0表7Microsoft Excel 9.0 敏感性报告工作表 [习题一.xls]Sheet2报告的建立: 2006-8-25 11:01:22可变单元格终递减目标式允许的允许的单元格名字值成本系数增量减量$B$7决策变量 产品1500505050$C$7决策变量 产品225001001E+3050约束终阴影约束允许的允许的单元格名字值价格限制值增量减量$D$3原料A35004001E+3050$D$4机器B300503002550$D$5原料C250502505050⑷若选择“极限值报告”,Excel显示“极限值报告
这三个报告中的前两个报告非常重要,下面我们将结合教材第二章线性规划的对偶理论与灵敏度分析的内容讲述如何看Excel求解线性规划问题输出的运算结果报告和敏感性报告⑴读懂运算结果报告运算结果报告比较容易看懂,可变单元格$B$7和$C$7分别表示两个决策变量,即药品Ⅰ和药品Ⅱ的产量,在计算时,由于我们最初赋予,所以单元格$B$7和$C$7的初值为0,求得最优解后,$B$7和$C$7的值分别为50和250,即,表示使目标函数值最大的计划是生产50个单位的药品Ⅰ和250个单位的药品Ⅱ目标单元格$B$8表示目标函数,由于我们最初赋予,所以目标函数的初值为0,求得最优解后,目标函数的值为27500,即,如果生产50个单位的药品Ⅰ和250个单位的药品Ⅱ能使企业利润达到最大值27500元在单元格$D$3、$D$4、$D$5我们分别输入了三个约束条件的左边项,即,和,随后在使用[工具][规划求解]时,在[规划求解参数]窗口,我们输入了,而$E$3=400、$E$4=300、$E$5=250,从而完成了约束条件的输入当求得最优解后,将代入约束方程得:,未达到限制值,型数值为50;,达到限制值,型数值为0;,达到限制值,型数值为0。
⑵读懂敏感性报告可变单元格$B$7、$C$7分别表示两个决策变量,在求得最优解后,即敏感性报告中所显示的$B$7、$C$7的终值分别为50和250在目标函数中的系数为50,允许的增量为50,允许的减量为50,意思是当在目标函数中的系数在50的基础上。





