附1:用LINGO求解线性规划的例子 一奶制品加工厂用牛奶生产A1、A2
Lingo基本用法总结

Lingo基本用法总结(除集函数部分)LINGO是用来求解线性和非线性优化问题的简易工具。
Lingo免费版可以支持30个未知数,lingo破解版可以支持几万个未知数、几万个约束条件。
当你在windows下开始运行LINGO系统时,会得到类似下面的一个窗口:外层是主框架窗口,包含了所有菜单命令和工具条,其它所有的窗口将被包含在主窗口之下。
在主窗口内的标题为LINGO Model – LINGO1的窗口是LINGO的默认模型窗口,建立的模型都都要在该窗口内编码实现。
下面举两个例子。
例1.1 如何在LINGO中求解如下的LP问题:在模型窗口中输入如下代码:min=2*x1+3*x2;x1+x2>=350;x1>=100;2*x1+x2<=600;然后点击工具条上的按钮即可。
得到如下结果:所以当x1为250,x2为100时目标函数得到最大值。
算术运算符Lingo 中变量不区分大小写,以字母开头不超过32个字符算术运算符是针对数值进行操作的。
LINGO 提供了5种二元运算符: ^ 乘方 ﹡ 乘 / 除 ﹢ 加 ﹣ 减 LINGO 唯一的一元算术运算符是取反函数“﹣”。
这些运算符的优先级由高到底为:高 ﹣(取反) ^ ﹡/ 低 ﹢﹣运算符的运算次序为从左到右按优先级高低来执行。
运算的次序可以用圆括号“()”来改变。
例:在x1+x2>=350,x1>=100,2*x1+x2<=600的条件下求2*x1+3*x2的最小值 在代码窗口中编写 min =2*x1+3*x2; x1+x2>=350; x1>=100;2*x1+x2<=600;然后单击上面菜单lingo 菜单下solve 键即可。
数学函数标准数学函数:@abs(x) 返回x 的绝对值@sin(x) 返回x 的正弦值,x 采用弧度制 @cos(x) 返回x 的余弦值 @tan(x) 返回x 的正切值 @exp(x) 返回常数e 的x 次方 @log(x) 返回x 的自然对数@lgm(x) 返回x 的gamma 函数的自然对数 @sign(x) 如果x<0返回-1;否则,返回1@floor(x) 返回x 的整数部分。
线性规划模型的LINGO软件求解

线性规划模型的LINGO软件求解作者:姜远彦来源:《新教育时代·学生版》2016年第06期摘要:本文通过实例介绍运用LINGO软件求解线性规划问题。
关键词:线性规划问题 LINGO软件求解线性规划是运筹学中形成最早、最成熟的一个分支,是优化理论最基础的部分,也是运筹学最核心的内容之一。
线性规划主要是用来确定具有多个变量的线性函数,在变量满足线性约束条件下的最优解。
目前广泛应用于工农业、军事、交通运输、决策管理、物流管理等领域,线性规划的方法已经成为求解各种优化问题的主要方法。
1947 年丹捷格(G.B.Dantzig)提出的单纯形方法是求解一般线性规划问题的通用方法,对于数据简单的线性规划问题用这种方法手工求解还是可行的,但对于数据较复杂的规划问题手工求解就变得比较困难,计算量太大,容易出错,因此运用计算机相关软件求解线性规划问题便成为首选的方式。
目前,已有多种软件可提供线性规划问题的计算机求解,其中包括专业优化软件LINDO/LINGO、WINQSB,具备强大计算功能的MATLAB、MATHEMATICA,以及具有规划求解功能的EXCEL软件。
本文介绍运用LINGO软件来求解具体的线性规划问题。
一、线性规划基本概念1.线性规划的定义线性规划是指如何最有效或最佳地谋划经济活动。
它所研究的问题有两类:一类是指一定资源的条件下,达到最高产量、最高产值、最大利润;一类是,任务量一定,如何统筹安排,以最小的消耗去完成这项任务。
如最低成本问题、最小投资、最短时间、最短距离等问题。
前者是求最大值问题,后者是求最小值问题。
总之,线性规划是在一定限制条件下,求目标函数最值的问题。
2.线性规划三要素(1)目标函数最优化——单一目标、多重目标问题如何处理?(2)实现目标的多种方法——若实现目标只有一种方法不存在规划问题。
(3)生产条件的约束——资源是有限的、资源无限不存在规划问题。
3.线性规划模型的基本结构(1)决策变量——未知数。
lingo教程_

修改运行时的 内存限制
激活敏感 性分析
LINGO软件菜单——WINDOW
1. 命令行窗口(Open Command Window ) 从窗口菜单中选用“Open Command Window”命令或直接按Ctrl+1可以打开LINGO 的命令行窗口。在命令行窗口中可以获得命 令行界面,在“:”提示符后可以输入LINGO的 命令行命令。 2. 状态窗口(Status Window) 从窗口菜单中选用“Status Window”命 令或直接按Ctrl+2可以打开LINGO的求解状 态窗口。 3. 回到模型窗口(Sent To Back) Ctrl+B 4. 关闭所有窗口(Close All) Ctrl+3 5. 并行放置窗口 (Tile) Ctrl+4 6. 层叠放置窗口(Cascade) Ctrl+5 7. 放置图标(Arrange Icons) Ctrl+6
解的目标函数值
目前为止的 迭代次数
• 运行状态窗口
使用的特殊求解程序 : B-and-B (分枝定界算法) Global (全局最优求解程序) Multistart(用多个初始点求解的程序)
LINGO软件菜单——EIDT
1. 恢复(Undo) 从编辑菜单中选用“恢复”(Undo)命令或按Ctrl+Z组合键,将撤销上 次操作、恢复至其前的状态。 2. 剪切(Cut) 从编辑菜单中选用“剪切”(Cut)命令或按Ctrl+X组合键可以将当前选 中的内容剪切至剪贴板中。 3. 复制(Copy) 从编辑菜单中选用“复制”(Copy)命令、单击“复制”按钮或按Ctrl+C组 合键可以将当前选中的内容复制到剪贴板中。 4. 粘贴(Paste) 从编辑菜单中选用“粘贴”(Paste)命令、单击“粘贴”按钮或按Ctrl+V 组合键可以将粘贴板中的当前内容复制到当前插入点的位置。 5. 粘贴特定..(Paste Special。。) 与上面的命令不同,它可以用于剪贴板中的内容不是文本的情形. 6. 全选(Select All) 从编辑菜单中选用“Select All”命令或按Ctrl+A组合键可选定当前窗口 中的所有内容。 7. 匹配小括号(Match Parenthesis) 从编辑菜单中选用“Match Parenthesis”命令、单击“Match Parenthesis”按钮或按Ctrl+P组合键可以为当前选中的开括号查找匹配的 闭括号。 8. 粘贴函数(Paste Function) 从编辑菜单中选用“Paste Function”命令可以将LINGO的内部函数粘贴 到当前插入点。
excel线性规划实验:奶制品厂生产(销售)的最优化决策实验指导书

4 x1 2 x2 480 。
因为一桶牛奶可加工成 3 公斤 A 产品或 4 公斤 B 产品,每天只能得到 50 桶 牛奶,所以原材的约束条件为:
x1 x 2 50 。又因为 1 号生产线每天至多只能加 3 4
工 100 公斤 A 产品,2 号生产线的加工能力没有限制,所以生产能力约束条件为
图 1-7 实验思考
极限值报告
1、 “猛牛”奶制品厂如果另有 500 元的资金可投入到两种产品的生产中, 请问: 应该将这笔资金用于增加生产能力、人力还是原材料?并请详细说明理由。 2、如果要使 1 号生产线满负荷运转,则需要安排工人加班。请问:支付给加 班工人每小时的加班工资最多为多少?
实验 1-2 "猛牛"奶制品厂原料供应站的分布决策
图 1-6 敏感性报告
可变单元格$C$9 和$D$9 允许的增量为 8 和 2,允许的减量为 2. 667 和 4,说 明决策 变量可允许的变化范围分别为(60-2.667,60+8)和(120-4,120+2)。约束变 量单元格$E$9、$E$10 和$E$11 允许的增量和减量说明生产能力、工时和原材料 供应量可允许的变化范围分别是( 60-40 , 60+1030 ) 、 (480-80 , 480+53.333) 和 (50-6.667,50+10)。 总产量的影子价格为 0,说明增加生产能力对总利润无影响;工时的阴影价 格为 2,说明每增加一个单位的工时,可以使总利润增加 2;原材料的阴影价格为 48,说明每增加一个单位的原材料供应量,可以使总利润增加 48。由此可看出原 材料供应量对总利润的影响较大。如果现在有多余资金可以增加人力和购买原材 料,这时应该优先考虑人力还是原材料,除了考虑阴影价格外,还应该考虑各自 的单位成本。阴影价格与单位成本的比值较大的资源就是应该优先考虑购买的资 源。另外,当资源限制发生改变,求解出新的最优解后,各资源的阴影价格也可 能会有相应的变化,这时应该重新生成规划求解报告进行分析。 “极限值报告”(见图 1-7)列出目标单元格$E$12 最大值为 3360,可变单元
讲义:用LINGO解线性规划和整数规划

用LINGO 解线性规划和整数规划在工程技术、经济管理、科学研究和日常生活等许多领域中,人们经常遇到的一类决策问题是:在一系列客观或主观限制条件下,寻求使关注的某个或多个指标达到最大(或最小)的决策。
例如:★ 结构设计要在满足强度要求条件下选择材料的尺寸,使其总重量最轻; ★ 资源分配要在有限资源约束下制定各用户的分配数量,使资源产生的总效益最大;★ 运输方案要在满足物资需求和装载条件下安排从各供应点到各需求点的运量和路线,使运输总费用最低;★ 生产计划要按照产品工艺流程和顾客需求,制定原料、零件、部件等订购、投产的日程和数量,尽量降低成本使利润最高。
上述这种决策问题通常称为优化问题。
人们解决这些优化问题的手段大致有以下几种:1.依赖过去的经验判断面临的问题。
这似乎切实可行,并且没有太大的风险,但是其处理过程会融入决策者太多的主观因素,难以客观地加以描述,从而无法确认结果的最优性。
2.做大量的试验反复比较。
这固然比较真实可靠,但是常要花费太多的资金和人力,而且得到的最优结果基本上离不开开始设计的试验范围。
3.用数学建模的方法建立数学规划模型求解最优决策。
虽然由于建模时要作适当的简化,可能使得结果不一定完全可行或达到实际上的最优,但是它基于客观规律和数据,又不需要多大的费用,具有前两种手段无可比拟的优点。
如果在此基础上再辅之以适当的经验和试验,就可以期望得到实际问题的一个比较圆满的回答,是解决这种问题最有效、最常用的方法之一。
1.1.1 数学规划模型数学规划模型一般有三个要素:一是决策变量,通常是该问题要求解的那些未知量,不妨用n 维向量12n x (x ,x ,,x )'= 表示;二是目标函数,通常是该问题要优化(最小或最大)的那个目标的数学表达式,它是决策变量x的函数,这里抽象地记作f(x);三是约束条件,由该问题对决策变量的限制条件给出,即x允许取值的范围x∈Ω,Ω称可行域,常用一组关于x的不等式(也可是等式)g i(x)≤0(I=1,2,…,m)来界定。
lingo与lindo

广西大学数学与信息科学学院 韦琳娜 ln_wln@
1 在Lingo中使用Lindo模型
• Lindo与Lingo都是LINDO系统公司开发的专门用 于求解最优化问题的软件包。与Lindo相比, Lingo软件主要具有两大优点: • (1)除具有LINDO的全部功能外,还可用于求解 非线性规划问题,包括非线性整数规划问题。 • (2)LINGO包含了内置的建模语言,允许以简 练、直观的方式描述较大规模的优化问题,模型 中所需的数据可以以一定格式保存在独立的文件 中。
X 1.272727 Y 1.636364
3)
.000000
.545455
NO.ITERATIDNS=2 DO RANGE (SENSITIVITY)ANALYSIS
?
:GO 减少的成本 LP OPTIMUM FOUND AT STEP 2 OBJECTIVE FUNCTION VALUE 1 ) 7.4545450 VARIABLE VALUE REDUCED COST X 1.272727 .000000 对偶价格 Y 1.636364 .000000 ROW SLACK OR SURPLUS DUAL PRICES 2) .000000 .090909 3) .000000 .545455 NO.ITERATIDNS=2 单纯形进行了2次迭代 DO RANGE (SENSITIVITY)ANALYSIS ?
注意LINDO软件在使用单纯形法时,目标函数行使用的 公式是: Z c1 x1 c2 x2 cn xn 0. 而我们第2章中使用 的公式是: Z c1 x1 c2 x2 cn xn 0. 因此它的检验数 值与我们第2章中介绍的差一个符号。
Lingo 入门
LINGO中级教程new
软件简介1、LINDO主要求解线性规划、整数规划、二次规划问题。
现在版本好像是6.1。
2、GINO最初这也是一个求非线性规划的工具,甚至她还用来求解一些非线性的方程根。
它的特点是:包含了丰富的数学函数,尤其是概率函数!但是随着像Mathematica/Matlab的迅速发展,他逐渐的消亡,并演化为现在的函数引擎LINDO API,现在版本2.0。
3、LINGO/LINGO NLLINGO8.0有两部分:LINGO and LINGO NL,他们分别用于求解线性、整数规划以及非线性、线性、整数规划问题,现在就统一成为了LINGO,它与LINDO的主要主要区别在于:她内建了建模语言,可以简约的得描述大规模的优化问题。
现在版本是9.0。
4、What's the best这是一个组件,主要处理由Excell/Access 生成数据文件的规划问题,安装之后会在你的Office中添加一个名为What's the best的宏,启用后会在Excell中生成一个工具条,就像Adobe的pdf插件一样。
现在版本是7.0。
LINDO是一种专门用于求解数学规划问题的软件包。
由于LINDO执行速度很快、易于方便输入、求解和分析数学规划问题。
因此在数学、科研和工业界得到广泛应用。
LINDO主要用于解线性规划、非线性规划、二次规划和整数规划等问题。
也可以用于一些非线性和线性方程组的求解以及代数方程求根等。
LINDO中包含了一种建模语言和许多常用的数学函数(包括大量概论函数),可供使用者建立规划问题时调用。
一般用LINDO(Linear Interactive and Discrete Optimizer)解决线性规划(LP—Linear Programming)。
整数规划(IP—Integer Programming)问题。
其中LINDO 6 .1 学生版至多可求解多达300个变量和150个约束的规划问题。
Lingo 入门
1 在Lingo中使用Lindo模型 Lingo中使用Lindo模型
Lingo 9.0完全支持Lindo模型程序的书写 9.0完全支持Lindo模型程序的书写 格式。在Lingo 9.0模型窗口中选择菜单命 格式。在Lingo 9.0模型窗口中选择菜单命 令“File|Open (F3)” (F3)” 9.0以前的版本中(如Lingo 注意 在Lingo 9.0以前的版本中(如Lingo 8.0), 8.0), “File|Import LINDO File (F12)”命令可以将Lindo模型文件转化成 (F12)”命令可以将Lindo模型文件转化成 Lingo模型。这个菜单命令的意思是“ Lingo模型。这个菜单命令的意思是“导入 Lindo文件”(在LINGO 9.0中已无必要, Lindo文件”(在LINGO 9.0中已无必要, 所以该命令已经被取消了)。
修改运行时的 内存限制
激活敏感 性分析
例3.1 一奶制品加工厂用牛奶生产A1,A2两种奶制品,1 一奶制品加工厂用牛奶生产A 两种奶制品,1 桶牛奶可以在甲车间用12h加工成3kgA 桶牛奶可以在甲车间用12h加工成3kgA1,或者在乙车间 用8h加工成4kg A2。根据市场需求,生产出的A1,A2全 8h加工成4kg 。根据市场需求,生产出的A 部能售出,且每千克A 获利24元,每千克A 获利16元。 部能售出,且每千克A1获利24元,每千克A2获利16元。 现在加工厂每天能得到50桶牛奶的供应,每天正式工人总 现在加工厂每天能得到50桶牛奶的供应,每天正式工人总 的劳动时间为480h,并且甲车间的设备每天至多能加工 的劳动时间为480h,并且甲车间的设备每天至多能加工 100kg A1,乙车间的设备的加工能力可以认为没有上限 限制(即加工能力足够大)。试为该厂制定一个生产计划, 使每天获利最大,并进一步讨论以下3 使每天获利最大,并进一步讨论以下3个附加问题: (1)若用35元可以买到1桶牛奶,是否作这项投资?若 )若用35元可以买到1 投资,每天最多购买多少桶牛奶? (2)若可以聘用临时工人以增加劳动时间,付给临时工 人的工资最多是每小时几元? (3)由于市场需求变化,每千克A1的获利增加到30元, )由于市场需求变化,每千克A 的获利增加到30元, 是否应该改变生产计划?
数学建模软件LinDoLinGo的简介(修改)
X——表示变量X可取任意实数值。 GIN X——表示变量X只取非负整数值。 INT X——表示变量X只能取0或1。 SLB X value——表示变量X以value为下界。 SUB X value——表示变量X以value为上界。 FREE m——表示问题的前m个变量为自由变量 GIN m——表示问题前m个变量为非负整数值 INT m——表示问题前m个变量为0-1变量。
LINGO 示例
查看简单例子
LINHGO程序
Lindo模型到Lingo模型的转换
“ST”在Lingo模型中不再需要,所以删除了; 在每个系数与变量之间增加了运算符“*”;
将目标函数的表示方式从“MAX”变成“MAX=”;
每行(目标、约束和说明语句)后面均增加了一
个分号“;”; 约束的名字被放ngo中模型以“Model:”开始,以“END”结束。 对简单模型,这两个语句也可以省略。
LINDO/LINGO软件 使用简介
LinDo/LinGo简介
LINDO(Linear Interactive and Discrete Optimizer),即“交互式的线性和离散优化求解 器”,可以用来求解线性规划(LP)和二次规划 (QP); LINGO(Linear Interactive and General Optimizer),即“交互式的线性和通用优化求解 器”,除了用来求解线性规划(LP)、二次规划 (QP)和非线性规划,还可用于线性和非线性方程 组的求解。 最大的特色:允许决策变量是整数(即整数规划,包 括0-1规划)。
Lindo求解整数规划
Lindo求解整数规划程序
LP OPTIMUM FOUND AT STEP 2 OBJECTIVE VALUE = 998.811951
lingo简介(1)
2
迭代次数 目标函数最优值
Reduced Cost 0.000000 影响值的变化率 0.000000
松弛变量值
Slack or Surplus Dual Price 800.0000 -1.000000 0.000000 -4.000000 150.0000 0.000000 对偶价格 0.000000 1.000000 250.0000 0.000000 100.0000 0.000000
LINGO程序(模型)的框架: 程序(模型)的框架: 程序
(1)集合段 集合段 (2)数据段 数据段 (3)优化目标与约束段 优化目标与约束段 (4)初始段 初始段 (5)数据预处理段 数据预处理段
LINGO软件的求解过程 软件的求解过程
1. 确定常数 2. 识别类型 LINGO预处理程序 预处理程序 LP QP NLP ILP IQP 线性优化求解程序 1. 单纯形算法 2. 内点算法 选) 内点算法(选 IP 分枝定界管理程序 INLP
setname(parent_set_list)[/member_list/][:attribute_list]; ②设置成员资格过滤器: 设置成员资格过滤器: 成员资格过滤器以“ 开头 之后为过滤条件。 开头, 成员资格过滤器以“|”开头,之后为过滤条件。 例2.5 sets: num_i/1..3 /; num_j/1..3/; link(num_i,num_j)|&1#gt#1#and#&2#lt#2:x; endsets &1:表示第一个原始父集的索引 :
模型代码如下: 模型代码如下: max=72*x1+64*x2; x1+x2<=50; 12*x1+8*x2<=480; 3*x1<=100;
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
附1:用LINGO求解线性规划的例子 一奶制品加工厂用牛
奶生产A1、A2
附1:用LINGO求解线性规划的例子
一奶制品加工厂用牛奶生产A、A两种奶制品,1桶牛奶可以在设备甲上用12
小时加工成3公斤A,121或者在设备乙上用8小时加工成4公斤A。根据市场需
求,生产的A、A能全部售出,且每公斤A获利212124元,每公斤A获利16元。
现在加工厂每天能得到50桶牛奶的供应,每天正式工人总的劳动时间为4802
小时,并且设备甲每天至多能加工100公斤A,设备乙的加工能力没有限制。
试为该厂制定一个生产计划,1
使每天获利最大,并进一步讨论以下3个附加问题:
1)若用35元可以购买到1桶牛奶,应否作这项投资,若投资,每天最多购买多
少桶牛奶,
2)若可以聘用临时工人以增加劳动时间,付给临时工人的工资最多是每小时几
元,
3)由于市场需求变化,每公斤A的获利增加到30元,应否改变生产计划, 1
数学模型:设每天用x桶牛奶生产A1 ,用x桶牛奶生产A2 12
目标函数:设每天获利为z元。 x桶牛奶可生产3x公斤A1,获利24*3x,x桶
牛奶可生产4*x公11122斤A2,获利16*4x,故z=72x+64x212
约束条件:
原料供应:生产A、A的原料(牛奶)总量不超过每天的供应50桶,即 12
x+x?50 12
劳动时间:生产A、A的总加工时间不超过每天正式工人总的劳动时间480小
时,即 12
12x+8x?480 12
设备能力:A的产量不得超过设备甲每天的加工能力100小时,即 1
3x?100 1
非负约束:x、x均不能为负值,即x?0,x?0 2121
综上所述可得
max z=72x+64x 12
s.t.
x+x?50 12
12x+8x?480 12
3x?100 1
x?0,x?0 21
显然,目标函数和约束条件都是线性的,这是一个线性规划(LP),求出的最优
解将给出使净利润最大的生产计划,要讨论的问题需要考虑参数的变化对最优解和
影响,一般称为敏感性(或灵敏度)分析。
LINGO求解线性规划
用LINGO求解线性规划时,首先在LINGO软件的模型窗口输入一个LP模型,
模型以MAX或MIN开始,按线性规划问题的自然形式输入(见下面例子所示)。
以下解加工奶制品的生产计划问题:
由于LINGO中已假设所有的变量都是非负的,所以非负约束条件不必输
入;LINGO也不区分变量中的大小写字符(实际上任何小写字符将被转换为大写字
符);约束条件中的“〈=”及“〉=”可用“〈”及
“〉”代替。在LINGO模型窗口输入如下:
max=72*x1+64*x2;
x1+x2<=50;
12*x1+8*x2<=480;
3*x1<=100;
用鼠标单击菜单中的求解命令(Solve)就可以得到解答,结果窗口显示如下:
LP OPTIMUM FOUND AT STEP 2
OBJECTIVE FUNCTION VALUE
1) 3360.000
VARIABLE VALUE REDUCED COST
X1 20.000000 0.000000
X2 30.000000 0.000000
ROW SLACK OR SURPLUS DUAL PRICES
2) 0.000000 48.000000
3) 0.000000 2.000000
4) 40.000000 0.000000
NO. ITERATIONS= 2
计算结果表明:
“LP OPTIMUM FOUND AT STEP2”表示单纯形法在两次迭代(旋转)后得到最优
解。
“OBJECTIVE FUNCTION VALUE 1) 3360.000”表示最优目标值为
3360.000(LINGO中将目标函数自动看作第1行,从第二行开始才是真正的约束条
件)。
“VALUE”给出最优解中各变量(VARIABLE)的值:x=20.000000,x=30.000000。
12
“REDUCED COST”的含义是(对MAX型问题):基变量的REDUCED COST值为0,
对于非基变量,相应的REDUCED COST值表示当非基变量增加一个单位时(其它非基
变量保持不变)目标函数减少的量。本例中两个变量都是基变量。
“SLACK OR SURPLUS”给出松弛(或剩余)变量的值,表示约束是否取等式约束;
第2、第3行松弛变量均为0,说明对于最优解而言,两个约束均取等式约束;第4
行松弛变量为40.000000,说明对于最优解而言,这个约束取不等式约束。
“DUAL PRICES”给出约束的影子价格(也称为对偶价格)的值:第2、第3、第4
行(约束)对应的影子价格分别48.000000,2.000000,0.000000。
“NO. ITERATIONS= 2”表示用单纯形法进行了两次迭代(旋转)。
灵敏度分析,则LINGO还会输出以下结果:
RANGES IN WHICH THE BASIS IS UNCHANGED:
OBJ COEFFICIENT RANGES
VARIABLE CURRENT ALLOWABLE ALLOWABLE
COEF INCREASE DECREASE
X1 72.000000 24.000000 8.000000
X2 64.000000 8.000000 16.000000
RIGHTHAND SIDE RANGES
ROW CURRENT ALLOWABLE ALLOWABLE
RHS INCREASE DECREASE
2 50.000000 10.000000 6.666667
3 480.000000 53.333332 80.000000
4 100.000000 INFINITY 40.000000
以上显示的是当前最优基(矩阵)保持不变的充分条件(RANGES IN WHICH THE
BASIS IS UNCHANGED),包括目标函数中决策变量应的系数的变化范围(OBJ
COEFFICIENT RANGES)和约束
的右端项的变化范围(RIGHTHAND SIDE RANGES)两部分。
前一部分的输出行
X1 72.000000 24.000000 8.000000
表示决策变量X1当前在目标函数中对应的系数为72,允许增加24和减少8。
也就是说,当该系数在
区间[64,96]上变化时(假设其它条件均不变),当前最优基矩阵保持不变。对
X2对应的输出行也可以类
似地解释。由于此时约束没有任何改变,所以最优基矩阵保持不变意味着最优
解不变(当然,由于目标函
数中的系数发生变化,最优值还是会变的)。
后一部分的输出行
2 50.000000 10.000000 6.666667
表示约束2当前右端项为50,允许增加10和减少6.666667。也就是说,当该
系数在区间[43.333333,
60]上变化时(假设其它条件均不变),当前最优基矩阵保持不变。对约束3、约
束4对应的输出行也可以
类似地解释。由于此时约束已经改变,虽然最优基矩阵保持不变,最优解和最
优值还是会变的。但是,由
于最优基矩阵保持不变,所以前面的“DUAL PRICES”给出的约束的影子价格
此时仍然是有效的。
用LINGO求解加工奶制品的生产计划,结果如下:
20桶牛奶生产A, 30桶生产A,利润3360元。 12
1)35元可买到1桶牛奶,要买吗,
由于原料的影子价格为48,35 <48, 应该买~
2)聘用临时工人付出的工资最多每小时几元,
由于工时的影子价格为2,聘用临时工人付出的工资最多每小时2元
3)A获利增加到 30元/千克,应否改变生产计划 1
由于要使最优解保持不变,X1系数的允许变化范围为[64,96]。x系数由
24*3=72增加为30*3=90,1
在允许范围内。所以不改变生产计划。