2022年利用excel软件求解线性规划问题[归 .pdf

上传人:Che****ry 文档编号:27289714 上传时间:2022-07-23 格式:PDF 页数:13 大小:1.10MB
返回 下载 相关 举报
2022年利用excel软件求解线性规划问题[归 .pdf_第1页
第1页 / 共13页
2022年利用excel软件求解线性规划问题[归 .pdf_第2页
第2页 / 共13页
点击查看更多>>
资源描述

《2022年利用excel软件求解线性规划问题[归 .pdf》由会员分享,可在线阅读,更多相关《2022年利用excel软件求解线性规划问题[归 .pdf(13页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、1 怎样用 Excel的规划求解加载宏求解数学规划问题名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 13 页 - - - - - - - - - 2 一、什么是规划求解加载宏?规划求解加载宏(简称规划求解)是Excel的一个加载项1,可以用来解决线性规划与非线性规划优化问题。规划求解可以用来解决最多有200 个变量, 100 个外在约束和400 个简单约束(决策变量整数约束的上下边界)的问题。可以设置决策变量为整型变量。规划求解加载宏的开发商是Fronline Syst

2、em公司。用户通过自定义安装MS-Office所使用的是标准版本规划求解加载宏,Fronline System公司同时提供增强的 Premium Solver工具。规划求解工具在Office典型安装状态下不会安装,可以通过自定义安装选择该项或通过添加/ 删除程序增加规划求解加载宏。二、怎样加载规划求解加载宏?加载规划求解加载宏的方法如下:( 1)打开“工具”下拉列菜单,然后单击“加载宏”,打开“加载宏”对话框。( 2)在“可用加载宏”框中,选中“规划求解”旁边的复选框2,然后单击“确定”按钮。1加 载 项 的 功 能 是 为 Microsoft Office 提 供 自 定 义 命令 或 自

3、定 义 功 能 的 补 充 程 序2如 果 “ 规 划 求 解 ” 未 列 出 , 请 单 击 “ 浏 览 ” 进 行 查 找 。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 13 页 - - - - - - - - - 3 ( 3)如果出现一条消息,指出您的计算机上当前没有安装规划求解,请单击“是”用原Office安装盘进行安装。( 4)单击菜单栏上的“工具”。加载规划求解后,“规划求解”命令会添加到“工具”菜单中。三、怎样使用规划求解加载宏求解数学规划?规划求解加载

4、宏是一组命令构成的一个子程序,这些命令有时也称作假设分析3工具,其功能是可以求出线性和非线性数学规划问题的最优解和最优值。使用规划求解加载宏求解数学规划的步骤首先,在Excel工作表中输入目标函数的系数向量、约束条件的系数矩阵和右端常数项(每一个单元格输入一个数据);其次,选定一个单元格存储目标函数(称为目标单元格),用定义公式的方式在这个目标单元格内定义目标函数;再次,选定与决策变量个数相同的单元格(称为可变单元格),用以存储决策变量;再选择与约束条件个数相同的单元格,用定义公式的方式在每一个单元格内定义一个约束函数(称为约束函数单元格);最后,点击下拉列菜单中的规划求解按钮,打开规划求解参

5、数设定对话框(如图4 所示),完成规划模型的设定模型设定方法如下:( 1) 设定目标函数和优化方向:光标指向规划求解参数设定对话框中的“设置目标单元格 ”提示后的域,点击鼠标左键,然后选中Excel工作表中的目标单元格。然后3该 过 程 通 过 更 改 单 元 格 中 的 值 来 查 看 这 些 更 改 对 工 作 表 中 公 式 结 果 的 影 响 。 例 如 , 更 改 分 期 支 付表 中 的 利 率 可 以 调 整 支 付 金 额 。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - -

6、 第 3 页,共 13 页 - - - - - - - - - 4 根据模型中目标函数的优化方向,在规划求解参数设定对话框中的“等于 ”一行中选择“最大值”或“最小值”;( 2)设定(表示决策变量的)可变单元:光标指向规划求解参数设定对话框中的“可变单元格”提示后的域,点击鼠标左键,然后选中Excel 工作表中的可变单元组。可以点击“推测”按钮,初步确定可变单元格的范围,然后在此基础上进一步确定;( 3) 设定约束条件:直接点击规划求解参数设定对话框中的添加按钮,出现如下添加约束对话框:先用鼠标左键点击“单元格引用位置”标题下的域,然后在工作表中选择一个约束函数单元格,再点击添加约束对话框中向

7、下的箭头,出现= , int 和 bin 五个选项, 根据该约束函数所在约束方程的情况选择,其中int 和 bin 分别用于说明整型变量和0 1 型变量。选择完成后,如果还有约束条件未设定,就点击“添加”按钮,重复以上步骤设定约束条件,设定完所有约束条件后,点击确定完成约束条件设定,回到规划求解参数设定对话框。( 4) 设定算法细节:点击规划求解参数设定对话框中的“选项 ”按钮,出现如下规划求解选项对话框。该对话框为使用者提供了在一些可供选择的常用算法。主要是供高级用户使用,初学者不必考虑这些选择。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - -

8、 - - - - 名师精心整理 - - - - - - - 第 4 页,共 13 页 - - - - - - - - - 5 选择完成后点击确定按钮回到规划求解参数设定对话框( 5) 求解模型:完成以上设定后,点击规划求解参数设定对话框中的“求解”按钮,将出现如下求解结果对话框。根据需要选择右边列出的三个报告中的一部分或全部,然后点击确定按钮就可以在 Excel 内看到求解报告。四、用规划求解加载宏求解数学规划举例下面我们通过一个例子来解释怎样用“ 规划求解” 来求解数学规划问题。例 1公司通常需要确定每月(或每周)生产计划,列出每种产品必须生产的数量。具体来说就是,产品组合问题就是要确定公司

9、每月应该生产的每种产品的数量以使利润最大化。产品组合通常必须满足以下约束:产品组合使用的资源不能超标。对每种产品的需求都是有限的。我们每月生产的产品不能超过需求的数量,因为生产过剩就是浪费(例如,易变质的药品)。下面,我们来考虑让某医药公司的最优产品组合问题。该公司有六种可以生产的药品,相关数据如下表所示。表 1 消耗系数产品 1 产品 2 产品 3 产品 4 产品 5 产品 6 现有劳动力(小时)6 5 4 3 2.5 1.5 4500 原料(磅)3.2 2.6 1.5 0.8 0.7 0.3 1600 单位利润(元)6 5.3 5.4 4.2 3.8 1.8 需求量(磅)960 928 1

10、041 977 1084 1055 设该公司生产药品1 6 的产量分别为126,x xx(磅),则最优产品组合的线性规划模型为名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 13 页 - - - - - - - - - 6 123456123456123456123456max65.35.44.23.81.865432.51.545003.22.61.50.80.70.316009609281041.977108410550,16jzxxxxxxxxxxxxxxxxxxx

11、xxstxxxxj下面用规划求解加载宏来求解这个问题:首先,如下如所示,在Excel 工作表内输入目标函数的系数、约束方程的系数、右端常数项;其次,选定目标函数单元、可变单元、约束函数单元,定义目标函数、约束函数系数矩阵目标函数的系数系数矩阵右端常数可变单元约束函数单元目标函数单元名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 13 页 - - - - - - - - - 7 其中,劳动力约束函数的定义公式是“=MMULT(B3:G3, J5:J10) ” ,原料约束函数

12、的定义公式是“ MMULT(B4:G4,J5:J10) ” ,目标函数的定义公式是“MMULT(B5:G5, J5:J10) ” 。注:函数 MMULT(B3:G3, J5:J10) 的意义是:单元区B3:G3 表示的行向量与单元区J5:J10表示的列向量的内积。这一要特别注意的是,第一格单元区必须是行,第二格单元区必须是列,并且两个单元区所含的单元格个数必须相等。最后,打开规划求解参数设定对话框设定模型( 1)( 2)目标函数和可边单元的设定很简单,在此就不再赘述( 3)约束条件的设定(3.1) 约束条件12345612345665432.51.545003.22.61.50.80.70.3

13、1600 xxxxxxxxxxxx的设定:( 3.2 )约束条件123456960928104197710841055xxxxxx的设定名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 13 页 - - - - - - - - - 8 ( 3.3 )约束条件1260,0,0 xxx的设定这里值得注意的是:我们采用向量的形式设定同向不等式,并且不等式两边可以一个时行向量,另一个是列向量;对所有分量都是0 的向量,我们可以用一个0 来代替。( 4)求解:我们选择保存三个报告得到

14、的三张份告如下名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 13 页 - - - - - - - - - 9 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 13 页 - - - - - - - - - 10 补充说明:a)如果数学规划模型中包含整型变量或0 1 型变量,只需要在设定约束条件一步中设定相应的变量是整型变量或0 1 型变量即可。例如,

15、假定在上例中变量12,x x是整型变量,只需要增加如下图所示的整型约束设定即可。不过要注意的是,含整型变量或0 1 型变量的问题是不能进行敏感性分析的。b)求解报告中把输出目标函数单元、约束函数单元、和可边单元上方第一个输有文字单元及左边第一个输有文字单元内全部文字都作为对解释目标函数单元、约束函数单元、和可边单元的解释,例如,把Excel表改为名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 13 页 - - - - - - - - - 11 则求解报告输出变为c)另外

16、,非线性规划模型的求解方法类似,在此不再赘述。五、“规划求解”疑难解答1、尚未找到满足要求的结果,“规划求解”即停止了运行由于下列任意一个原因,“规划求解”在找到答案前,可能停止运行:中断了求解过程。在单击“求解”之前,选中了“规划求解选项”对话框中的“显示迭代结果”选项。在单步迭代过程中,或达到最长运算时间或最大迭代次数时,单击了“停止”按钮。选中了“规划求解选项”对话框中的“采用线性模型”复选框,但问题是非线性的。在“规划求解参数”对话框的“设置目标单元格”框中指定的数值不收敛地增加或减少。需要让“规划求解”运行更长的时间以求得结果。请调整“规划求解选项”对话框中的“最长运算时间”或“迭代

17、次数”的设置。对于具有整数约束条件的问题,应该减小“规划求解选项”对话框中的“允许误差”的设置,使“规划求解”找到更好的整数解。对于非线性问题,应该减小“规划求解选项”对话框中的“收敛度”的设置,使目标单元格数值变化缓慢时,“规划求解”仍可以运行,最终找到较好的结果。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 13 页 - - - - - - - - - 12 应该选中“规划求解选项”对话框中的“自动按比例缩放”复选框,可能一些输入数值相差几个数量级,或输入和输出数

18、值相差几个数量级。当“规划求解”停止运行时,在“规划求解结果”对话框中显示出完成信息。单击“保存规划求解结果”或“恢复为原值”,进行所需的更改,然后再运行一次。2、可变单元格与约束条件或目标单元格中的数值差别很大当可变单元格的典型数值与约束单元格或目标单元格中的数值相差几个数量级时,请选中“规划求解选项”对话框中的“自动按比例缩放”复选框。对于非线性问题,在单击“规划求解参数”对话框中的“求解”之前,请确认可变单元格的初始数值与期望的最终数值的数量级相同。3、未得到预期的结果对于非线性问题, 在可变单元格中尝试不同的初始值可能会有帮助,特别是在“规划求解”结果与期望的数值差别很大时。预先将可变

19、单元格的数值设置为预期的最优值,可以减少求解时间。对于线性模型 (也就是当“规划求解选项”对话框的“采用线性模型”复选框被选中时),改变可变单元格的初始值不会影响最终数值或求解时间。4、“规划求解”得到的结果与以前的结果不同“规划求解”显示如下消息:“规划求解已收敛到当前结果。满足所有约束条件”。这表明目标单元格中的数值在最近五次求解过程中的变化量小于“规划求解选项”对话框中“收敛度”设置的值。“收敛度”中设置的值越小,“规划求解”在计算时就会越精细,但求解过程将花费更多的时间。5、“规划求解”不能达到最优解下面列出“规划求解”显示的完整消息。“规划求解”不能改进当前解。所有约束条件都得到了满

20、足这表明仅得到近似值,迭代过程无法得到比显示结果更精确的数值;或是无法进一步提高精度,或是精度值设置得太小,请在“规划求解选项”对话框中试着设置较大的精度值,然后再运行一次。求解达到最长运算时间后停止这表明在达到最长运算时间限制时,没有得到满意的结果。若要保存当前结果并节省下次计算的时间,请单击“保存规划求解”或“保存方案”选项。求解达到最大迭代次数后停止名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 13 页 - - - - - - - - - 13 这表明在达到最大

21、迭代次数时,没有得到满意的结果。增加迭代次数也许有用,但是应该先检查结果数值来确定问题的原因。若要保存当前值并节省下次计算的时间,请单击“保存规划求解”或“保存方案”选项。目标单元格中的数值不收敛这表明即使满足全部约束条件,目标单元格数值也只是有增或有减但不收敛。这可能是在设置问题时忽略了一项或多项约束条件。请检查工作表中的当前值,确定数值发散的原因,并且检查约束条件,然后再次求解。“规划求解”未找到合适结果这表明在满足约束条件和精度要求的条件下,“规划求解”无法得到合理的结果,这可能是约束条件不一致所致。请检查约束条件公式或类型选择是否有误。“规划求解”应用户要求而中止这表明在暂停求解过程之

22、后,或在单步执行规划求解时,单击了“显示中间结果”对话框中的“停止”。无法满足设定的“采用线性模型”条件这表明求解时选中了“采用线性模型”复选框,但是“规划求解”最后计算结果并不满足线性模型。计算结果对工作表中的公式无效。若要验证问题是否为非线性的,请选中“自动按比例缩放”复选框,然后再运行一次。如果又一次出现同样信息,请清除“采用线性模型”复选框,然后再运行一次。“规划求解”在目标或约束条件单元格中发现错误值这表明在最近的一次运算中,一个或多个公式的运算结果有误。请找到包含错误值的目标单元格或约束条件单元格,更改其中的公式或内容,以得到合理的运算结果。还有可能是在“添加约束”或“改变约束”对

23、话框中键入了无效的名称或公式,或者在“约束”框中直接键入了“integer ”或“ binary ”。若要将数值约束为整数,请在比较运算符列表中单击“ Int ”。若要将数值约束为二进制数,请单击“Bin”。内存不足以求解问题Microsoft Excel 无法获得“规划求解”所需的内存。请关闭一些文件或应用程序,再试一次。其他的 Microsoft Excel 实例正在使用 SOLVER.DLL 这表明有多个 Microsoft Excel 会话正在运行,其中一个会话正在使用 SOLVER.DLL 。SOLVER.DLL 同时只能供一个会话使用。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 13 页 - - - - - - - - -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com