浅析LINGO模型在疏散问题中的应用.docx

上传人:b****5 文档编号:5597330 上传时间:2022-12-28 格式:DOCX 页数:11 大小:292.34KB
下载 相关 举报
浅析LINGO模型在疏散问题中的应用.docx_第1页
第1页 / 共11页
浅析LINGO模型在疏散问题中的应用.docx_第2页
第2页 / 共11页
浅析LINGO模型在疏散问题中的应用.docx_第3页
第3页 / 共11页
浅析LINGO模型在疏散问题中的应用.docx_第4页
第4页 / 共11页
浅析LINGO模型在疏散问题中的应用.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

浅析LINGO模型在疏散问题中的应用.docx

《浅析LINGO模型在疏散问题中的应用.docx》由会员分享,可在线阅读,更多相关《浅析LINGO模型在疏散问题中的应用.docx(11页珍藏版)》请在冰豆网上搜索。

浅析LINGO模型在疏散问题中的应用.docx

浅析LINGO模型在疏散问题中的应用

本科生实践教学活动周实践教学成果

成果形式:

论文

成果名称:

浅析LINGO模型在疏散问题中的应用

 

学生姓名:

学号:

专业:

班级:

指导教师:

完成时间:

年3月8日

 

浅析LINGO模型在疏散问题中的应用

摘要

简述LINGO编写格式的特点,需要注意的部分。

LINGO的函数的使用介绍以及对LINGO函数分类和使用详情的介绍,LINGO模型在疏散问题中的应用,并且对疏散问题进行求解,建模。

上机对疏散问题的建模进行检验,并修改。

关键词:

编写格式函数分类疏散问题上机检验修改

目录

一、LINGO的简单介绍1

(一)LINGO编写格式1

1.语句的四大部分1

(二)编写LINGO程序要注意的几点2

(三)LINGO内部函数使用详解2

1.常用数学函数2

2.集合函数3

3.变量界定函数4

4.财务函数4

5.概率函数4

二、LINGO模型在疏散问题中的应用5

(一)对疏散问题的求解5

(二)对疏散问题进行建模6

(三)上机检验8

(四)结论10

三、总结11

一、LINGO的简单介绍

(一)LINGO编写格式

LINGO模型以MODEL开始,以END结束。

中间为语句,分为四大部分(SECTION)。

1.语句的四大部分

(1)集合部分(SETS)

这部分以“SETS:

”开始,以“ENDSETS”结束。

这部分的作用在于定义必要的变量,便于后面进行编程进行大规模计算,就象C语言在在程序的第一部分定义变量和数组一样。

在LINGO中称为集合(SET)及其元素(MEMBER或ELEMENT,类似于数组的下标)和属性(ATTRIBUTE,类似于数组)。

LINGO中的集合有两类:

一类是原始集合(PRIMITIVESETS),其定义的格式为:

SETNAME/memberlist(or1..n)/:

attribute,attribute,etc

另一类是是导出集合(DERIVEDSETS),即引用其它集合定义的集合,其定义的格式为:

SETNAME(set1,set2,etc。

):

attribute,attribute,etc

如果要在程序中使用数组,就必须在该部分进行定义,否则可不需要该部分。

(2)目标与约束

这部分定义了目标函数、约束条件等。

一般要用到LINGO的内部函数,可在后面的具体应用中体会其功能与用法。

求解优化问题时,该部分是必须的。

(3)数据部分(DATA)

这部分以“DATA:

”开始,以“ENDDATA”结束。

其作用在于对集合的属性(数组)输入必要的数值。

格式为:

attribut=value_list。

该部分主要是方便数据的输入。

(4)初始化部分(INIT)

这部分以“INIT:

”开始,以“ENDINIT”结束。

作用在于对集合的属性(数组)定义初值。

格式为:

attribute=value_list。

由于非线性规划求解时,通常得到的是局部最优解,而局部最优解受输入的初值影响。

通常可改变初值来得到不同的解,从而发现更好的解。

(二)编写LINGO程序要注意的几点

1.所有的语句除SETS、ENDSETS、DATA、ENDDATA、INIT、ENDINIT和MODEL,END之外必须以一个分号“;”结尾。

2.LINGO求解非线性规划时已约定各变量非负。

(三)LINGO内部函数使用详解

LINGO建立优化模型时可以引用大量的内部函数,这些函数以“@”符号打头。

1.常用数学函数

@ABS(X)返回变量X的绝对数值。

@COS(X)

返回X的余弦值,X的单位为弧度

@EXP(X)

返回

的值,其中e为自然对数的底,即

@FLOOR(X)

向0靠近返回X的整数部分。

如@FLOOR(3.7),则返回3;@FLOOR(-3.7),则返回-3。

@LGM(X)

返回

函数的自然对数值。

@LOG(X)

返回变量X的自然对数值。

@SIGN(X)

返回变量X的符号值,当X<0时为-1;当X>0时为1。

@SIN(X)

返回X的正弦值,X的单位为弧度

@SMAX(X1,X2,...,XN)

返回一列值X1,X2,...,XN的最大值。

@SMIN(X1,X2,...,XN)

返回一列值X1,X2,...,XN的最小值。

@TAN(X)

返回X的正切值,X的单位为弧度

2.集合函数

集合函数的用法如下:

set_operator(set_name|condition:

expression)

其中set_oprator部分是集合函数名(见下),set_name是数据集合名,expression部分是表达式,|condition部分是条件,用逻辑表达式描述(无条件时可省略)。

逻辑表达式中可以三种逻辑算符(#AND#(与),#OR#(或),#NOT#(非))和六种关系酸符(#EQ#(等于),#NE#(不等于),#GT#(大于),#GE#(大于等于),#LT#(小于),#LE#(小于等于))。

常见的集合函数如下:

@FOR(set_name|constraint_expressions)对集合(set_name)的每个元素独立地生成约束,约束由约束表达式(constraint_expressions)描述。

@MAX(set_name|expression)返回集合上的表达式(expression)的最大值。

@MIN(set_name|expression)返回集合上的表达式(expression)的最小值。

@SUM(set_name|expression)返回集合上的表达式(expression)的和。

@SIZE(set_name)返回数据集set_name中包含元素的个数。

@IN(set_name,set_element)如果数据集set_name中包含元素set_element则返回1,否则返回0。

3.变量界定函数

变量函数对变量的取值范围附加限制,共有四种。

@BND(L,X,U)限制

@BIN(X)限制X为0或1。

@FREE(X)取消对X的符号限制(即可取任意实数值)。

@GIN(X)限制X为整数值。

4.财务函数

返回如下情形下的净现值:

单位时段利率为

,连续

个时段支付,每个时段支付费用,即:

=

返回如下情形下的净现值:

单位时段利率为

,第

个时段支付单位费用,即:

=

5.概率函数

@PSN(X)标准正态分布的分布函数。

@PSL(X)单位正态线性损失函数(即返回

的期望值,其中Z为标准正态随机变量)

@PPS(A,X)均值为A的Possion分布的分布函数(当X不是整数时,采用线性插值进行计算)。

@PPL(X)Possion分布的线性损失函数(即返回

的期望值,其中Z为Possion分布随机变量)

@PBN(P,N,X)二项分布的分布函数当N或X不是整数时,采用线性插值进行计算)。

@PHG(POP,G,N,X)超几何分布的分布函数(当POP,G,N或X不是整数时,采用线性插值进行计算)。

@PFD(N,D,X)自由度为N和D的F分布的分布函数。

@PCX(N,X)自由度为N的

分布的分布函数。

@PTD(N,X)自由度为N的t分布的分布函数。

@RAND(X)返回0与1之间的伪随机数(X为种子数,典型用法为U(I)=@RAND(U(I+1)))。

二、LINGO模型在疏散问题中的应用

(一)对疏散问题的求解

甲市一家大公司由5个部门(A、B、C、D、E)组成。

现要将它的几个部门迁出甲市,迁至乙市或丙市。

除去因政府鼓励这样做以外,还有用房便宜,招工方便等好处。

对这些好处已作出数量估价,所值每年万元数如下表:

部门

迁市

A

B

C

D

E

10

15

10

20

5

10

20

15

15

15

然而,疏散之后各部门间的通讯费用将增加。

部门间每年通讯量如下表:

部门

B

C

D

E

A

0

1000

1500

0

B

1400

1200

0

C

0

2000

D

700

不同城市之间单位通讯量的费用如下表(单位:

元)

100

130

90

50

140

50

试求各部门应该置于何市,使年费用最少?

解:

其中各部门依次为A、B、C、D、E,各城市依次为甲、乙丙。

代表第

个部门迁往第

个城市的新增价值(元),

代表第

个部门与第

个部门的通讯量,

代表第

个城市与第

个城市的单位通讯量的费用

 

 

(二)对疏散问题进行建模

则可建立如下模型:

Lingo程序如下:

MODEL:

SETS:

part/1..5/;

city/1..3/;

part_city(part,city):

x,a;

part_part(part,part):

t;

city_city(city,city):

c;

ENDSETS

DATA:

a=0,100000,100000,

0,150000,200000,

0,100000,150000,

0,200000,150000,

0,50000,150000;

t=0,0,1000,1500,0,

0,0,1400,1200,0,

0,0,0,0,2000,

0,0,0,0,700,

0,0,0,0,0;

c=100,130,90,

130,50,140,

90,140,50;

ENDDATA

MIN=@SUM(part_part(i,j)|i#LE#4#AND#j#GE#(i+1):

t(i,j)*

@SUM(city_city(l,m):

x(i,l)*x(j,m)*c(l,m)))-

@SUM(part_city:

a*x);

@FOR(part(i):

@SUM(city(j):

x(i,j))=1);!

每个部门只能迁往一个城市

@FOR(part_city(i,j):

@BIN(x(i,j)));END

(三)上机检验

1.第一次上机

 

2.第二次上机

 

(四)结论

所求解为:

x(1,3)=1,x(2,3)=1,x(3,3)=x,x(4,3)=1,x(5,3)=1,其它为0,即各部门迁往丙市

最少费用为-360000元。

即这样迁市获利最多,为360000元。

三、总结

通过本次课题研究,对LINGO有了一定的了解,并且可以进行简单的实际建模,对获利最大化提出一些较之可行的建议和意见。

尽管在学习LINGO的过程中出了很多的错误,但是通过多次尝试最终解决了错误,并且从这些常犯的错误中吸取到一些教训,尽量在以后的使用中避免这些错误。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 文化宗教

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1