1 / 7
文档名称:

LINGO大规模规划求解.docx

格式:docx   大小:44KB   页数:7页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

LINGO大规模规划求解.docx

上传人:dlmus1 2022/3/30 文件大小:44 KB

下载得到文件列表

LINGO大规模规划求解.docx

文档介绍

文档介绍:.
lingo大规模规划求解
首先,让我们先看看一个非常简单的规划例子在LINGO软件中实现过程:目标函数:
??(??????2???+??-3???+5
约束条件:
??+??-3???<10{??-2???>5
orI
IHFLATIOI_KATE
匚皿mok
直接输入一个值再点击OK按钮,LING。就会把输入的值指定给inflation_rate,然后继续求解模型。
除了参数之外,也可以实时输入集的届性值,但不允许实时输入集成员名。
三、初始域初始域是专门为初始化决策变量而定义的一块区域。
初始部分是LINGO提供的另一个可选部分。在初始部分中,可以输入初始声明(initializationstatement),和数据部分中的数据声明相同。对实际问题的建模时,初始部分并不起到描述模型的作用,在初始部分输入的值仅被LINGO求解器当作初始点来用,并且仅仅对非线性模型有用。和数据部分指定变量的值不同,LINGO求解器可以自由改变初始部分初始化的变量的值。
一个初始部分以“init:”开始,以“endinit”结束。初始部分的初始声明规则和数据部分的数据声明规则相同。也就是说,我们可以在声明的左边同时初始化多个集届性,可以把集届性初始化为一个值,可以用问号实现实时数据处理,还可以用逗号指定未知数值。
init:
X,Y=0,.1;
endinit
Y=***@log(X);
XA2+YA2<=1;
好的初始点会减少模型的求解时间。
四、集合循环函数统一语法格式:
***@function(setname[(set_index_list)[|condition]]:expression_list);其中:
function是集合函数名,是FOR,MAX,MIN,PROD,SUME种之一;setname是集合名;set_index_list是集合索引列表(不需使用索引时可以省略);condition是逻辑表达式描述的过虑条件(通常含有索引,无条件时可省略)expression_list是一个表达式(对***@FOR函数,可以是一组表达式)。
五个集合函数名的含义如下:
***@FOR(集合元素循环函数):对集合setname的每个元素独立地生成表达式,表达式由expression_list描述(通常是优化问题的约束)。
***@MAX(集合届性的最大值函数):返回集合setname上的表达式的最大值。
***@MIN(集合届性的最小值函数):返回集合setname上的表达式的最小值。
***@PROD集合届性的乘积函数):返回集合setname±的表达式的积。
***@SUM(集合届性的求和函数):返回集合setname±的表达式的和。
对应数学表达式与LINGO命令:
数学表达式
lingo命令
君?=????(一维数组和)
***@sum(row(i):x(i));
舄?=?淳?=??务?(二维维数组和)
***@sum(links(i,j):x(i,j));
Z??=?淳?=??务?泓??矩阵点乘和)
***@sum(links(i,j):x(i,j)*Y(i,j));
口??=??务(岸组的积)
***@prod(row(i):x(i));
君?或务奔君?=??务??住????;••,??)
(比较m个一维数组的和)
***@f