生产规划问题及LINGO求解

合集下载

Lingo求解多目标规划[新]

Lingo求解多目标规划[新]

例:某工厂生产Ⅰ、Ⅱ两种产品,需要用到A ,B ,C 三种设备,已知有关数据见下表。

企业的经营目标不仅仅是利润,还需要考虑多个方面:(1) 力求使利润不低于1500元;(2) 考虑到市场需求,Ⅰ、Ⅱ两种产品的产量比应尽量保持1:2;(3) 设备A 为贵重设备,严格禁止超时使用;(4) 设备C 可以适当加班,但要控制;设备B 即要求充分利用,又尽可能不加班。

在重要性上,设备C 是设备B 的3倍。

ⅠⅡ设备的生产能力/hA (h/件) 2 2 12B (h/件) 4 0 16C (h/件) 0 5 15 利润 元/件200300解:此题中只有设备A 是刚性约束,其余都是柔性约束。

首先,最重要的指标是企业的利润,将它的优先级列为第一级;其次是Ⅰ、Ⅱ两种产品的产量保持1:2的比例,列为第二级;再次,设备B 、C 的工作时间要有所控制,列为第三级。

在第三级中,设备B 的重要性是设备C 的3倍,因此它们的权重不一样,设备B 的系数是设备C 的3倍。

该计划问题可用数学模型表示为: 目标函数min)33()(433322211++-+--+++++=d d d p d d p d p z满足约束条件 2122x x + 12≤15003002001121=-+++-d d x x022221=-+-+-d d x x 14x 1633=-++-d d155442=-++-d d x3,2,1,0,,,21=≥+-i d d x x i i LINGO 程序为:求第一级目标。

LINGO 程序如下: model: sets:variable/1..2/:x;S_Con_Num/1..4/:g,dplus,dminus; S_con(S_Con_Num,Variable):c; endsets data:g=1500 0 16 15; c=200 300 2 -1 4 0 0 5; enddata min=dminus(1); 2*x(1)+2*x(2)<12;@for(S_Con_Num(i):@sum(Variable(j):c(i,j)*x(j))+dminus(i)-dplus(i )=g(i)); end求得dminus(1)=0,即目标函数的最优值为0,第一级偏差为0。

0-1规划在各种实际问题中的应用以及lingo求解

0-1规划在各种实际问题中的应用以及lingo求解

61 65 63 62
63 71 67 62
分析
• 以混合泳所用总时间最小为目标,以 每名运动员只游一个项目,每个项目 只能由一名运动员来完成为约束,这 就是标准的分派问题.
• 目标函数: min z
a
i 1 j 1
4
4
ij
xij
4 x ij 1 i 1 4 • 约束条件: s .t . x ij 1 j 1 x 0或1 ij
指标 厂址
投资金额 处理能力 处理能力 (万元) (万t/年) (元/万t)
污水处理指标(t/万t) 污染物Ⅰ 污染物Ⅱ
厂址A 厂址B 厂址C
400 300 250
800 500 400
300 300 400
80 50 40
60 40 50
• 设xi表示i(i=1,2,3)污水厂处理污水的数量(万t),yi (i=1,2,3)表示是否建立i污水厂.
各人完成各项目的时间
项目 人员
A
B
C
D
E
甲 乙 丙 丁
25 39 34 24
29 38 27 42
31 26 28 36
42 20 40 23
37 33 32 45
• 设xij表示第i个人完成第j项任务 • (1)由于任务大于人数,因此增加一个完成人 戊,完成多出的一个任务. • 而实际上,戊所完成的任务并不是正真的任 务,只是为了构造指派问题模型.所以戊完成 各任务的时间就均为0(除了任务E). • 戊不需要完成任务E,x55对应的系数为M(很 大的数,取1000),以保证x55=0 • 各人完成任务所需时间的如下表:
姿势 成绩 队员
自由泳

用Lingo求解整数(0-1)规划模型

用Lingo求解整数(0-1)规划模型
要求:
1、建立数学模型, 2、用lingo循环语句编写程序.
上机作业题 人员安排问题
某城市的巡逻大队要求每天的各个时间段都有一
定数量的警员值班, 以便随时处理突发事件, 每人连续 工作6h, 中间不休息. 如表所示是一天8个班次所需值 班警员的人数情况统计:
班次
时间段
人数 班次
时间段
人数
1
6:00~9:00
例 4 求函数 z x 22 y 22 的最小值.
例 4 求函数 z x 22 y 22 的最小值.
解: 编写Lingo 程序如下:
min=(x+2)^2+(y-2)^2; @free(x); 求得结果: x=-2, y=2
二、Lingo 循环编程语句
(1) 集合的定义 包括如下参数: 1) 集合的名称.
12,8 3,0; enddata
!数据赋值;
max=@sum(bliang(i):a(i)*x(i)); !目标函数;
@for(yshu(j):@sum(bliang(i):x(i)*c(j,i))<=b(j));
!约束条件;
例6:人员选拔问题
队员号码 身高 / m 位置 队员号码 身高 / m 位置
例 2 用Lingo软件求解整数规划问题
min z 2 x1 5 x2 3 x3
4 x1 x2 x3 0
2
x1
4 x2
2 x3
2
x1
x2
x3
2
xi 0 且取整数, i 1, 2, 3
Lingo 程序:
min=2*x1+5*x2+3*x3; -4*x1-x2+x3>=0; -2*x1+4*x2-2*x3>=2; x1-x2+x3>=2; @gin(x1);@gin(x2);@gin(x3);

Lingo求解简单规划模型代码

Lingo求解简单规划模型代码

一、Lingo 能做什么——Lingo 的简单模型1、简单线性规划求解(目标函数)2134maxx x z += s.t.(约束条件)⎪⎪⎩⎪⎪⎨⎧≥≤≤+≤+0,781022122121x x x x x x x(决策变量) x 1,x 2手工计算的方法注:Lingo 中“<”代表“<=”,“>”代表“>=”,Lingo 中默认的变量都是大于等于0的,不用显式给出。

求解结果:z=26,x1=2,x2=62、整数规划求解219040Max x x z += ⎪⎩⎪⎨⎧≥≤+≤+0,702075679212121x x x x x xLingo 程序求解3、0-1规划求解Max 432215.18.04.0x x x x f +++=10106234321≤+++x x x x10,,,4321或=x x x x12344、非线性规划求解||4||3||2||min 4321x x x x z +−−=s.t. ⎪⎪⎩⎪⎪⎨⎧−=+−−=−+−=+−−2132130432143214321x x x x x x x x x x x x12345、背包问题一个旅行者的背包最多只能装 6kg 物品,现有4 件物品的重量和价值分别为 2 kg ,3 kg ,3 kg ,4 kg ;1 元,1.2元,0.9元,1.1元。

问应怎样携带那些物品使得携带物品的价值最大?建模:记j x 为旅行者携带第j 件物品的件数, 取值只能为 0 或 1。

求目标函数43211.19.02.1x x x x f +++=在约束条件643324321≤+++x x x x 下的最大值.用Lingo 软件求解0-1规划计算结果6、指派问题有四个工人,要指派他们分别完成4项工作,每人做各项工作所消耗的时间如下表: 问指派哪个人去完成哪项工作,可使总的消耗时间为最小? 设:第i 个工人做第j 项工作用时ij t ,标志变量ij f 定义如下:变量名 取值⎩⎨⎧=其他件工作个工人去做第指派第01j i f ijmin∑∑==×4141i j ij ijt fs.t. 141=∑=i ijf()4,3,2,1=j 每份工作都有一人做∑==411j ijf()4,3,2,1=i 每人都只做一项工作(1) 集合定义部分(从“SETS :”到“ENDSET ”):定义集合及其属性,语句“work/A,B,C,D/”其结果正是定义了4个集合元素,没有定义变量名。

线性规划问题的Lingo求解

线性规划问题的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,灵敏度分析。

一、问题重述与分析营养师要为某些特殊病人拟订一周的菜单,可供选择的蔬菜及其费用和所含营养成分的数量以及这类病人每周所需各种营养成分的最低数量如下表1所示。

有以下规定:一周内所用卷心菜不多于2份,其他蔬菜不多于4份。

问题一:若病人每周需要14份蔬菜,问选用每种蔬菜各多少份,可使生活费用最小.问题二:当市场蔬菜价格发生怎样波动时,所建模型的适用性。

表 1 所需营养和费用营养搭配是一个线性规划问题,在给定蔬菜的情况下,要求菜单所需的营养成分必须达到要求,并在此条件下求出什么样的搭配所花费的费用最少.第一个要求是满足各类营养的充足,根据表中数据列出不等式。

第二要求为问题一中,蔬菜的份数必须为14,第三要求为在一周内,卷心菜不多于2份,其他不多于4份,根据以上条件列出各类蔬菜份数的限定条件,并可表示出费用的表达式.对于第二问,就是价值系数的变化对总费用的影响,模型的适用范围。

三、模型假设第一,假设各蔬菜营养成分保持稳定,满足题干要求。

第二,假设各蔬菜价格在一定时间内保持相对稳定。

第三,假设各类蔬菜供应全部到位,满足所需要求量. 第四,假设所求出最优解时不要求一定为整数。

四、符号约定(1)Z 代表目标函数,此题即为费用。

(2)i c 为价值系数,此题即为每份蔬菜的价格。

下标i 代表蔬菜的种类。

(3)i x 为决策变量,表示各种蔬菜的数量。

(4)i b 为最低限定条件,表示蔬菜最低营养需要。

五、模型建立根据以上各种假设和符号约定,建立模型如下。

所求的值就是min,也就是最优化结果.s 。

用Lingo求解整数(0-1)规划模型.

用Lingo求解整数(0-1)规划模型.

Lingo 程序: max=2*x1+5*x2+3*x3+4*x4;
-4*x1+x2+x3+x4>=0; -2*x1+4*x2+2*x3+4*x4>=1; x1+x2-x3+x4>=1; @bin(x1);@bin(x2);@bin(x3);@bin(x4);
温州大学城市学院
例 2 用Lingo软件求解整数规划问题 min z 2 x1 5 x2 3 x3
温州大学城市学院
注意:
Lingo 默认变量的取值从0到正无穷大,
变量定界函数可以改变默认状态.
@free(x): 取消对变量x的限制(即x可取任意实数值)
例 4 求函数 z x 2 y 2 的最小值.
2 2
温州大学城市学院 例 4 求函数 z x 2 y 2 的最小值.
,8
温州大学城市学院
温州大学城市学院
上机作业题
要求:
1、建立数学模型,
2、用lingo循环语句编写程序.
温州大学城市学院
上机作业题
人员安排问题
某城市的巡逻大队要求每天的各个时间段都有一 定数量的警员值班, 以便随时处理突发事件, 每人连续 工作6h, 中间不休息. 如表所示是一天8个班次所需值 班警员的人数情况统计:
成绩 甲 乙 丙 丁 自由泳 / s 56 63 57 55 蛙泳 / s 74 69 77 76 蝶泳 / s 61 65 63 62 仰泳 / s 63 71 67 62
甲, 乙, 丙, 丁 四名队员各自游什么姿势 , 才最有可能取得好成绩?
温州大学城市学院

LINGO及规划实例

LINGO及规划实例

5 变量界定函数
变量界定函数实现对变量取值范围的附加限制,共4种:
@bin(x)
限制x为0或1
@bnd(L,x,U) 限制L≤x≤U
@free(x)
取消对变量x的默认下界为0的限制,即x可以取任意实
@gin(x)
限制x为整数
在默认情况下,LINGO规定变量是非负的,也就是说下界为0,上界为+∞。
@free取消了默认的下界为0的限制,使变量也可以取负值。
2.@sum 该函数返回遍历指定的集成员的一个表达式的和。
3.@min和@max 返回指定的集成员的一个表达式的最小值或最大。值。
精品课件
LINGO函数
8 输入和输出函数 输入和输出函数可以把模型和外部数据比如文本文件、 数据库和电子表格等连接起来。
1.@file函数
该函数用从外部文件中输入数据,可以放在模型中任何地方。 该函数的语法格式为@file(’filename’)。
n 1 1(1I)n
k1(1I)k
I
净现值就是在一定时期内为了获得一定收益在该时期初所支付
的实际费用。

2.@fpl(I,n)
返回如下情形的净现值:单位时段利率为I,第n个时段支付单位费用。
@fpl(I,n)的计算公式为 (1 I)n
n
@fp(aI,n精)品课件 @fp(Il,k) k1
LINGO函数
@sign(x)
如果x<0返回-1;否则,返回1
@floor(x)
返回x的整数部分。当x>=0时,返回不超过x的最大整
当x<0时,返
@smax(x1,x2,…,xn) 返回x1,x2,…,xn中的最大值
@smin(x1,x2,…,xn) 返回x1,x2,…,xn中的最小值
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

生产规划问题及LINGO求解
摘要:本文根据生产规划问题的特点,建立了满足生产规划的线性规划模型,并且利用lingo软件进行求解,提出了一种可以合理解决此类问题的数学方法,效果比较令人满意。

关键词:线性规划模型 lingo软件
中图分类号:tb114 文献标识码:a 文章编号:
1007-9416(2012)01-0073-01
1、问题的提出
某工厂是生产某种电子仪器的专业厂家,该厂是以销量来确定产量的1~6月份各个月生产能力、合同销量和单台仪器平均生产费用如表1所示。

又知上年末积压库存103台该仪器没售出.如果生产出的仪器当月不交货,则需要运到分厂库房,每台仪器需增加运输成本0.1万元,每台仪器每月的平均仓储费、维护留出库存80台.加班生产仪器每台增加成本1万元。

试问应该如何安排1~6月份的生产,使总的生产成本(包括运输、仓储和维护)费用最少?
2、模型分析与假设
本模型的目标是使总的生产成本最小,其中总的生产成本包括正常生产仪器的费用、加班生产仪器的费用、当月不交货的运输费用及库存的仓储费、维护费.为此,我们作如下假设:
(1)设第个月正常生产台。

(2)设第个月加班生产台。

(3)设第个
月不交货台。

(4)设第个月售出上月库存台。

(5)设第个月库存台。

(6)记第个月销量。

(7)设第个月单台生产的费用。

(8)记第个月正常生产能力。

(9)记第个月加班生产能力。

3、模型的建立与求解
根据以上假设可知,第个月正常生产的成本为,第个月加班生产的成本为,第个月对不交货仪器的运输费为,第个月库存的仓储费及维护费为。

模型的目标函数为.
下面考虑本模型的限定条件
第个月销量的约束为
第个月正常生产能力的约束为:
第个月加班生产能力的约束为:
1~6月库存的约束为
于是问题的数学模型为
运行lingo软件求解模型,程序如下:
model:
sets:
num_i/1..6/:b,c,d,e,x,y,z,w,h;
endsets
data:
b=104,75,115,160,103,70;c=15,14,13.5,13,13,13.5;
d=60,50,90,100,100,80;e=10,10,20,40,40,40;
enddata
[obj]min=@sum(num_i(i):c(i)*x(i)+c(i)*y(i)+y(i)+0.1*z(i )+0.2*h(i));
@for(num_i(i):x(i)+y(i)-z(i)+w(i)>=b(i));
@for(num_i(i):x(i)=0);@for(num_i(i):y(i)>=0);
@for(num_i(i):z(i)>=0);@for(num_i(i):w(i)>=0);
@for(num_i(i):h(i)>=0);@for(num_i(i):@gin(x(i));@gin(y( i));@gin(z(i));@gin(w(i));@gin(h(i)););
end
运行该程序后,就可以得到最优解为,,,,最优值为.这样,该厂1~6月份的生产计划如下:1月份正常生产仪器41台,上月库存售出63台,库存40台;2月份正常生产仪器50台,加班生产仪器10台,上月库存售出15台,库存25台;3月份正常生产仪器90台,加班生产仪器20台,上月库存售出5台,库存20台;4月份正常生产仪器100台,加班生产仪器40台,上月库存售出20台,没有库存;5月份正常生产仪器100台,加班生产仪器40台,库存37台;6月份正常生产仪器80台,加班生产仪器33台,库存80台,总的生产成本为万元。

4、结语
本论文旨在应用数学工具为工厂的生产规划提出一整套分析方
法和应用程序,从而为更好的管理提供一种可参考的思路.同时,本文的建模思想和方法也可作为在其他领域中解决规划问题的良好借鉴。

参考文献
[1]韩中庚.实用运筹学[m].北京:清华大学出版社,2007,48.
[2]王冬林.数学建模及实验[m].北京:国防工业出版
社,2004,105~107.
[3]谢金星.优化模型与lindo/lingo软件[m].北京:清华大学出版社,2005,194~199.。

相关文档
最新文档