Lingo与线性规划
应用lingo软件实现线性规划和整数规划

一、 实验目的应用lingo 软件实现线性规划和整数规划。
二、 实验内容:1.线性规划方法的lingo 软件实现。
2.整数规划方法的Lingo 软件实现三、 实验环境:1 硬件要求:计算机一台2 操作系统:WindowsXP3 软件要求:lingo10四、实验步骤及程序编写:1.线性规划模型。
某战略轰炸机群奉命摧毁敌人军事目标。
已知该目标有四个要害部位,只要摧毁其中之一即可达到目的。
为完成此项任务的汽油消耗量限制为48000升、重型炸弹48枚、轻型炸弹32枚。
飞机携带重型炸弹时每升汽油可飞行2千米,带轻型炸弹时每升汽油可飞行3千米。
又知每架飞机每次只能装载一枚炸弹,每出发轰炸一次除来回路程汽为了使摧毁敌方军事目标的可能性最大,应如何确定飞机轰炸的方案。
解:设用了x 枚重型炸弹,用了y 枚轻型炸弹,攻击的是第i 个部位,再设一标志变量f 定义如下: ⎩⎨⎧=个部位不攻击第个部位攻击第i i f i 01目标函数为: ()[]∑=⨯⨯+⨯=41max i i li ih f p y px()()480002004/3/2004/2/≤++⨯+++⨯i i i i d d y d d x48≤x ,32≤y141=∑=i if2、整数规划模型。
某厂生产甲、乙两种产品,生产甲种产品每件要消耗煤9t ,电力4kw ,使用劳动力3个,获利70元;生产乙种产品每件消耗煤4t ,电力5kw ,使用劳动力10个,获利120元。
有一个生产日,这个厂可动用的煤是360t ,电力是200kw ,劳动力是300个,问应该如何安排甲、乙两种产品的生产,才能使工厂在当日的获利最大,并问该厂当日的最大获利是多少? 解:模型建立:⎪⎪⎩⎪⎪⎨⎧<+<+<++=取整x x x x x x x x x x t s f 2121212121,3001032005436049..12070max五、程序调试及实验总结1.线性规划模型。
线性规划问题的Lingo求解

Lingo中参数设置与调整
01
参数设置
02
调整策略
Lingo允许用户设置求解器的参数, 如求解方法、迭代次数、收敛精度等 。这些参数可以通过`@option`进行 设置。
如果求解过程中遇到问题,如无解、 解不唯一等,可以通过调整参数或修 改模型来尝试解决。常见的调整策略 包括放松约束条件、改变目标函数权 重等。
02
比较不同方案
03
验证求解结果
如果存在多个可行解,需要对不 同方案进行比较,选择最优方案。
可以通过将求解结果代入原问题 进行验证,确保求解结果的正确 性和合理性。
感谢您的观看
THANKS
问题,后面跟随线性表达式。
02 03
约束条件表示
约束条件使用`subject to`或简写为`s.t.`来引入,后面列出所有约束条 件,每个约束条件以线性表达式和关系运算符(如`<=`, `>=`, `=`, `<`, `>`)表示。
非负约束
默认情况下,Lingo中的变量是非负的,如果变量可以为负,需要使用 `@free`进行声明。
问题的解通常出现在约束条件的边界上 。
变量通常是连续的。
特点 目标函数和约束条件都是线性的。
线性规划问题应用场景
生产计划
确定各种产品的最优生产量, 以最大化利润或最小化成本。
资源分配
在有限资源下,如何最优地分 配给不同的项目或任务。
运输问题
如何最低成本地将物品从一个 地点运输到另一个地点。
金融投资
03
求解结果
通过Lingo求解,得到使得总加工时间最短的生产计划安 排。
运输问题优化案例
问题描述
某物流公司需要将一批货物从A地运往B地,可以选择不同的运输方式和路径,每种方式和路径的运输时间和成本不 同。公司需要在满足货物送达时间要求的前提下,选择最优的运输方式和路径,使得总成本最低。
lingo解决线性规划问题的程序(经典)

lingo解决线性规划问题的程序(经典)•线性规划问题概述•Lingo软件介绍•使用Lingo解决线性规划问题步目录骤•经典线性规划问题案例解析•Lingo在解决线性规划问题中的优势•总结与展望01线性规划问题概述定义:线性规划(Linear Programming,简称LP)是数学规划的一个分支,它研究的是在一组线性约束条件下,一个线性目标函数的最大或最小值问题。
特点目标函数和约束条件都是线性的。
可行域是凸集,即对于任意两个可行解,它们的凸组合仍然是可行解。
最优解如果存在,则一定在可行域的某个顶点上达到。
定义与特点生产计划资源分配运输问题金融投资01020304企业如何安排生产,使得在满足市场需求和资源限制的前提下,成本最低或利润最大。
如何合理分配有限的资源(如资金、人力、时间等),以达到最佳的效果。
如何安排货物的运输路线和数量,使得在满足供需关系的前提下,总运费最低。
投资者如何在一定的风险水平下,使得投资收益最大。
决策变量表示问题的未知量,通常用$x_1, x_2, ldots, x_n$表示。
目标函数表示问题的优化目标,通常是决策变量的线性函数,形如$z = c_1x_1 + c_2x_2 + ldots + c_nx_n$。
约束条件表示问题的限制条件,通常是决策变量的线性不等式或等式,形如$a_{11}x_1 + a_{12}x_2 + ldots + a_{1n}x_n leq (=, geq) b_1$。
01$begin{aligned}02& text{max} quad z = c_1x_1 + c_2x_2 + ldots +c_nx_n03& text{s.t.} quad a_{11}x_1 + a_{12}x_2 + ldots + a_{1n}x_n leq (=, geq) b_1& quadquadquad vdots& quadquadquad a_{m1}x_1 + a_{m2}x_2 + ldots + a_{mn}x_n leq (=, geq) b_m•& \quad\quad\quad x_i \geq 0, i = 1, 2, \ldots, n线性规划问题数学模型end{aligned}$其中,“s.t.”表示“subject to”,即“满足……的条件下”。
运用Lingo进行线性规划求解(实例)

LinDo
输入模型 求解
点击求解按钮 结果
即可
♂返回
!注释内容,可用中文
输
!目标函数:最大-max,最小-min,大小写不分
max 3 x1+5 x2+4 x3
入
!约束,以subject to开始
模
subject to
型
2 x1+3 x2<=1500
2 x2+4 x3<=800
3*x1+2*x2+5*x3<=2 000; end
注意与LinDo的区别
目标函数中加等号 变量与系数之间用“*” Model:-end可省略
♂返回
LinGo 模 式
Model: Sets: !定义集合
Endsets
Data:
!定义数据
Enddata 调用函数与计算
end
♂返回
model: !开始
数
@sum(set(set_index_list)|condition:expressi
on)
@min(max)(set(set_index_list)|condition:ex pression)
♂返回
Global optimal solution found at
iteration:
3
结
Objective value: 2675.000
果
Variable Value
Reduced Cost
C( 1) 3.000000
0.000000
C( 2) 5.000000
0.000000
C( 3) 4.000000
0.000000
用LINGO求解线性规划的例子

附1:用LINGO求解线性规划的例子一奶制品加工厂用牛奶生产A1、A2两种奶制品,1桶牛奶可以在设备甲上用12小时加工成3公斤A1,或者在设备乙上用8小时加工成4公斤A2。
根据市场需求,生产的A1、A2能全部售出,且每公斤A1获利24元,每公斤A2获利16元。
现在加工厂每天能得到50桶牛奶的供应,每天正式工人总的劳动时间为480小时,并且设备甲每天至多能加工100公斤A1,设备乙的加工能力没有限制。
试为该厂制定一个生产计划,使每天获利最大,并进一步讨论以下3个附加问题:1)若用35元可以购买到1桶牛奶,应否作这项投资?若投资,每天最多购买多少桶牛奶?2)若可以聘用临时工人以增加劳动时间,付给临时工人的工资最多是每小时几元?3)由于市场需求变化,每公斤A1的获利增加到30元,应否改变生产计划?数学模型:设每天用x1桶牛奶生产A1 ,用x2桶牛奶生产A2目标函数:设每天获利为z元。
x1桶牛奶可生产3x1公斤A1,获利24*3x1,x2桶牛奶可生产4*x2公斤A2,获利16*4x2,故z=72x1+64x2约束条件:原料供应:生产A1、A2的原料(牛奶)总量不超过每天的供应50桶,即x1+x2≤50劳动时间:生产A1、A2的总加工时间不超过每天正式工人总的劳动时间480小时,即12x1+8x2≤480设备能力:A1的产量不得超过设备甲每天的加工能力100小时,即3x1≤100非负约束:x1、x2均不能为负值,即x1≥0,x2≥0综上所述可得max z=72x1+64x2s.t.x1+x2≤5012x1+8x2≤4803x1≤100x1≥0,x2≥0显然,目标函数和约束条件都是线性的,这是一个线性规划(LP),求出的最优解将给出使净利润最大的生产计划,要讨论的问题需要考虑参数的变化对最优解和影响,一般称为敏感性(或灵敏度)分析。
LINGO求解线性规划用LINGO求解线性规划时,首先在LINGO软件的模型窗口输入一个LP模型,模型以MAX或MIN 开始,按线性规划问题的自然形式输入(见下面例子所示)。
LINGO 线性规划问题的求解

实验报告课程名称:运筹学项目名称:线性规划问题的求解姓名:专业:班级:1班学号:同组成员:一、实验准备:1.线性规划(Linear programming,简称LP)是运筹学中研究较早、发展较快、应用广泛、方法较成熟的一个重要分支,它是辅助人们进行科学管理的一种数学方法。
研究线性约束条件下线性目标函数的极值问题的数学理论和方法。
英文缩写LP。
它是运筹学的一个重要分支,广泛应用于军事作战、经济分析、经营管理和工程技术等方面。
为合理地利用有限的人力、物力、财力等资源作出的最优决策,提供科学的依据。
从实际问题中建立数学模型一般有以下三个步骤;(1)根据影响所要达到目的的因素找到决策变量;(2)由决策变量和所在达到目的之间的函数关系确定目标函数;(3)由决策变量所受的限制条件确定决策变量所要满足的约束条件。
2.所建立的数学模型具有以下特点:(1)每个模型都有若干个决策变量(x1,x2,x3……,xn),其中n为决策变量个数。
决策变量的一组值表示一种方案,同时决策变量一般是非负的。
(2)目标函数是决策变量的线性函数,根据具体问题可以是最大化(max)或实际中,为保证完成100套工架,所使用原材料最省,可以混合使用各种下料方案。
设按方案A,B,C,D,E下料的原材料数分别为x1,x2,x3,x4,x5根据表可以得到下面的线性规划模型:解:虽然连续投资问题属于动态优化问题,但可以用静态优化的方法解决,用决策变量xi1,xi2,xi3,xi4(i=12…,5)分别表示第i年年初为项目A,B,C,D,的投资额,根据问题的要求各变量的对应关系如表,表中空白处表示当年不能为该项目投资,也可认为投资额为0.实验报告成绩(百分制)__________ 实验指导教师签字:__________。
运用Lingo进行线性规划求解(实例)

LINGO
支持多种线性规划算法,包括单纯形法、网络算法等。
要点二
Gurobi
主要采用高级优化算法,如分支定界法、动态规划等。
LINGO与Gurobi的比较
LINGO
支持各种类型的约束条件,包括整数约束、非线性约束 等。
Gurobi
特别擅长处理大规模、非线性问题,但对线性问题的处 理能力稍弱。
LINGO
界面简洁,建模语言直观,易于学习和掌握。
Excel
需要结合多个函数和工具进行建模,对于复杂问题操作相对繁琐。
LINGO与Excel的比较
LINGO
针对优化问题进行了优化,求解速度 较快,精度较高。
Excel
求解速度较慢,对于大规模问题可能 无法得到满意的结果。
LINGO与Gurobi的比较
LINGO软件特点
高效求解
LINGO采用先进的求解算法,能够快速求解大规 模线性规划问题。
灵活建模
LINGO支持多种建模语言,用户可以根据需要选 择合适的语言进行建模。
图形界面
LINGO提供直观的图形界面,方便用户进行模型 设计和结果查看。
LINGO软件应用领域
生产计划
LINGO可用于制定生产计划,优化资源配置, 提高生产效率。
金融投资
LINGO可以用于金融投资组合优化,帮助投 资者实现风险和收益的平衡。
物流优化
LINGO可以帮助企业优化物流配送路线,降 低运输成本。
资源分配
LINGO可用于资源分配问题,如人员、设备、 资金的分配,以达到最优效果。
2023
PART 02
线性规划基本概念
REPORTING
线性规划定义
线性规划是数学优化技术的一种,它通过将问 题抽象为数学模型,利用数学方法来寻找最优 解。
讲义:用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)来界定。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
.Word 文档Lingo 与线性规划线性规划的标准形式是11n n Min z c x c x =++L1111111..0,1,2,,n n m mn n m i a x a x b s t a x a x b x i n+≤⎧⎪⎪⎨+≤⎪⎪≥=⎩L M L L (1) 其中11n n z c x c x =++L 称为目标函数,自变量i x 称为决策变量,不等式组(1)称为约束条件.满足不等式组(1)的所有1(,,)n x x L 的集合称为可行域,在可行域里面使得z取最小值的**1(,,)n x x L 称为最优解,最优解对应的函数值称为最优值。
求解优化模型的主要软件有Lingo 、Matlab 、Excel 等。
其中Lingo 是一款专业求解优化模型的软件,有其他软件不可替代的方便功能。
本文将简要介绍其在线性规划领域的应用。
一、基本规定1、目标函数输入格式max=函数解析式; 或者 min=函数解析式; 2、约束条件输入格式利用:>、<、>=、<=等符号。
但是>与>=没有区别。
Lingo 软件默认所以自变量都大于等于0.3、运算加(+),减(-),乘(*),除(/),乘方(x^a),要注意乘号(*)不能省略。
4、变量名不区分大小写字母,不超过32个字符,必须以字母开头。
5、标点符号每个语句以分号“;”结束,感叹号“!”开始的是说明语句(说明语句也需要以分号“;”结束)。
但是,model ,sets ,data 以“:”结尾。
endsets ,enddata ,end 尾部不加任何符号。
6、命令不考虑先后次序7、MODEL 语句一般程序必须先输入MODEL :表示开始输入模型,以“END ”结束。
对简单的模型,这两个语句也可以省略。
8、改变变量的取值范围bin(变量名); 限制该变量为0或1. bnd(a,变量名,b ); 限制该变量介于a,b 之间. free(变量名); 允许该变量为负数. gin(变量名); 限制该变量为整数. 例1 求目标函数1223z x x =+的最小值,约束条件为.Word 文档1211212..35010022600,0s t x x x x x x x +≥⎧⎪≥⎪⎨+≤⎪⎪≥⎩ 输入Lingo 程序:min = 2*x1 + 3*x2; x1 + x2 >= 350; x1 >= 100;2*x1 + x2 <= 600; 有两种运行方式:1、点击工具条上的按钮 即可。
2、点击菜单:LINGO →Solve 运行结果如下:下面对其各个部分进行说明:Global optimal solution found :表示已找到全局最优解。
Objective value :表示最优值的大小。
可见本题函数最小值min z =800。
Infeasibilities :矛盾约束的数目。
Total solver iterations:迭代次数。
Variable :变量。
本题有两个变量。
Value :变量对应的最优解,即12250,100x x ==。
Reduced Cost :变量i x 在最优解的基础上增加一个单位,目标函数值的改变量。
例如,一个变量的Reduced Cost 值为8,那么当该变量增加一个单位,在最大化(最小化)问题中目标函数值将减少(增大)8个单位。
Slack or Surplus :表示接近等于的程度,即约束离相等还差多少。
在约束条件是<=中,表示松弛程度,在约束条件是>=中,不是过剩程度。
如果约束条件是=,则Slack or Surplus 为0,该约束是个紧约束(或有效约束)。
如果一个约束是矛盾的,即模型无可行解则Slack or surplus 的值是负数。
知道Slack or Surplus 的值,可以帮助我们发现优化模型中错误的约束条件。
在上例中第2和第4行松弛变量均为0,说明对于最优解来讲,两个约束(第2和4行)均取等号,即都是紧约束,第3行为150,即最优解使得第3行过剩150..Word 文档Dual Price :对偶价格的值,它表示约束条件中的常数,每增加一个单位,目标函数值改变的数量(在最大化问题中目标函数值是增加,在最小化问题中目标函数值是减少)。
比如,在上一个Min 模型中第四行的1,表示2*x1 + x2 <= 600增加一个单位到2*x1 + x2 <= 601,可以使目标值增加-1(因为第一行是目标函数的Dual Price 是-1),即Objective value = 799; 如果增加-1个单位到599会使目标值增加到801。
例2求目标函数2221234212z x x x =-++的最小值,约束条件为123123123..3291,,s t x x x x x x x x x R ++=⎧⎪++=-⎨⎪∈⎩ 输入Lingo 程序:min = 4*x1^2-x2^2+2*x3^2+12; 3*x1+2*x2+x3=9; x1+x2+x3=-1;free(x1); free(x2); free(x3); 运行结果:即当1231,8,10x x x ===-时,min 152z =。
二、灵敏度分析灵敏度分析是指:找出模型变量系数的一个变化范围,使得最优基(即最优解)保持不变。
一般只对线性规划模型做灵敏度分析。
1、灵敏度分析操作步骤第一步:菜单lingo-->options-->general solver-->dual computations:prices & ranges-->ok.第二步:菜单lingo-->range 2、灵敏度报告中常见的词汇Current coefficient :当前目标函数系数 Allowable increase :允许增加量 Allowable decrease :允许减少量 Current RHS :当前右边常数项.INFINITY:表示正无穷。
例1 求解下列模型:max = 72*x1+64*x2;x1+x2 <= 50;12*x1+8*x2 <= 480;3*x1 <= 100;并做灵敏度分析。
求解报告:灵敏度分析报告:灵敏度分析报告的解读:x1的系数变化范围是(72-8,72+24)=(64,96);x2的系数变化范围是(64-16,64+8)=(48,72)。
注意:x1系数的允许范围需要x2系数64不变,反之亦然。
由于目标函数的费用系数变化并不影响约束条件,因此此时最优基不变可以保证最优解也不变,但最优值变化。
右边常数项中,第2行原来为50,当它在[50-6.67,50+10] = [43.33,60]范围变化时,最优基保持不变。
第3行可以类似解释。
对第4行,原来为100,当它在[100-40,100+∞] = [60,+∞]范围变化时,最优基保持不变。
不过由于此时约束发生变化,最优基即使不变,最优解、最优值也会发生变化。
三、数据输入对于大型的优化问题,即自变量比较多的时候,还像上两节那样输入目标函数和约束条件就比较麻烦了。
一般输入数据的方法有两种:一、建立向量、矩阵Word文档.Word 文档输入;二、调用外部数据。
这里仅介绍第一种方法。
1、建立向量命令格式:集合名称/集合维数/:向量名称 例如: sets :set1/1..9/:x; set2/1..5/:a,b; endsets表示建立了两类集合。
第一类集合set1,维数为9,x 和y 是向量名。
向量x=(x(1),…, x(9)),其中x(i)是x 的元素。
第二类集合set2,维数为5,a 和b 都是向量名。
向量a=(a(1),…, a (5)),其中a (i)是a 的元素。
向量b=(b(1),…, b(5)),其中b (i)是b 的元素。
2、建立矩阵命令格式:集合名称(集合1,集合2)/:矩阵名称 例如: sets :set1/1..3/:x; set2/1..4/:a;link(set1, set2):A; endsets表示建立了一个矩阵类link ,其矩阵的阶数为34⨯,A 是具体的矩阵名。
有两个命令是比较常见的: 求和语句:sum(集合名(i):含集合名(i)的语句); 循环语句:for(集合名(i):循环的语句);例3:求目标函数121115z x x =+的最小值,约束条件为12121212..2030360302520003035300,0s t x x x x x x x x +≤⎧⎪+≤⎪⎨+≤⎪⎪≥⎩输入Lingo 程序:model : sets :set1/1..2/:c,x; set2/1..3/:b; link(set2,set1):A; endsetsmax =sum (set1(i):c(i)*x(i));for (set2(i):sum (link(i,j):A(i,j)*x(j))<=b(i));.Word 文档data : c=11 15; A=20 30 30 25 30 25;b=360 2000 300; enddata end运行结果报告:例4生产基地 A B C 蔬菜生产量(吨) 7 8 3地区 甲 乙 丙 丁 蔬菜生产量(吨) 6 6 3 3)为:地市 生产基地甲 乙 丙 丁 A 5 8 7 9 B 4 9 10 7 C8429(1) 根据以上资料表制订一个使总的运费为最少的蔬菜调拨方案. (2)如果有机会增加生产基地的产量1吨,问应当优先增加那个基地的产量?.Word 文档(3)如果将A 到乙市的运价减少为5万元/吨,问这会影响最优的调拨方案吗?设i A :第i 个蔬菜生产基地,1,2,3i =,分别对应生产基地A ,B ,C ; i B :第i 个蔬菜需求地,1,2,3,4i =,分别对应蔬菜需求地市甲、乙、丙、丁;Q :总运输费用;ij x :表示的是从第i 个生产基地向第j 个地市运输的蔬菜数量;ij c :表示的是从第i 个生产基地向第j 个地市运输蔬菜的运价;i b :第i 个蔬菜生产基地的蔬菜产量;i q :第j 个地市的蔬菜需求量; 那么有优化模型:3411minij ij i j Q c x ===∑∑..s t 11121314121222324231323334311213111222322132333314243440,1,2,3;1,2,3,4ijx x x x b x x x x b x x x x b x x x q x x x q x x x q x x x q x i j +++≤⎧⎪+++≤⎪⎪+++≤⎪++=⎪⎨++=⎪⎪++=⎪++=⎪⎪≥==⎩ 输入Lingo 程序求解模型:model : sets :set1/1..3/:b; set2/1..4/:q;link(set1,set2):c,x; endsetsmin =sum (link(i,j):c(i,j)*x(i,j));for (set1(i):sum (link(i,j): x(i,j))<=b(i)); for (set2(j):sum (link(i,j): x(i,j))=q(j)); data : c=5,8,7,9 4,9,10,7 8,4,2,9; b=7,8,3; q=6,6,3,3; enddata end运行结果如下:.Global optimal solution found.Objective value: 100.0000 Infeasibilities: 0.000000Total solver iterations: 6Variable Value Reduced CostB( 1) 7.000000 0.000000B( 2) 8.000000 0.000000B( 3) 3.000000 0.000000Q( 1) 6.000000 0.000000Q( 2) 6.000000 0.000000Q( 3) 3.000000 0.000000Q( 4) 3.000000 0.000000C( 1, 1) 5.000000 0.000000C( 1, 2) 8.000000 0.000000C( 1, 3) 7.000000 0.000000C( 1, 4) 9.000000 0.000000C( 2, 1) 4.000000 0.000000C( 2, 2) 9.000000 0.000000C( 2, 3) 10.00000 0.000000C( 2, 4) 7.000000 0.000000C( 3, 1) 8.000000 0.000000C( 3, 2) 4.000000 0.000000C( 3, 3) 2.000000 0.000000C( 3, 4) 9.000000 0.000000X( 1, 1) 1.000000 0.000000X( 1, 2) 6.000000 0.000000X( 1, 3) 0.000000 1.000000X( 1, 4) 0.000000 1.000000X( 2, 1) 5.000000 0.000000X( 2, 2) 0.000000 2.000000X( 2, 3) 0.000000 5.000000X( 2, 4) 3.000000 0.000000X( 3, 1) 0.000000 7.000000X( 3, 2) 0.000000 0.000000X( 3, 3) 3.000000 0.000000X( 3, 4) 0.000000 5.000000Row Slack or Surplus Dual Price1 100.0000 -1.0000002 0.000000 0.0000003 0.000000 1.0000004 0.000000 4.0000005 0.000000 -5.0000006 0.000000 -8.0000007 0.000000 -6.0000008 0.000000 -8.000000 Word文档.从该报告可以得到:1、最优的调拨方案为:2Dual Price来看生产基地A的供应量增加1个单位,费用不变;生产基地B的供应量增加1个单位,费用减少1;生产基地C的供应量增加1个单位,费用减少4;城市甲的需求量增加1个单位,费用减少-5,即增加5;城市乙的需求量增加1个单位,费用减少-8,即增加8;城市丙的需求量增加1个单位,费用减少-6,即增加6;城市丁的需求量增加1个单位,费用减少-8,即增加8;3、从Slack or Surplus来看,所有的约束都是紧约束。