全部版块 我的主页
论坛 站务区 十一区 新手入门区
534 0
2023-07-08

一、规划软件LINDO

美国Chicago大学:Linus Schrage教授于1980年前后开发,后来成立了LINDO系统公司。(LINDO Systems Inc.)

网址:www.lindo.com

二、数学规划模型

决策变量 x=(x1,x2,…,xn)

目标函数 min Z=f(x)

约束条件 s.t. x属于A

求解:单纯形法

三、Lingo菜单及对话框

Lingo的工具栏:

Lingo菜单栏:

Lingo的运行状态窗口:

Options7个选项卡:

四、Lingo基本语法

1、定义目标函数为MIN=MAX=.

2、以一个分号“;”结尾。除SETS,ENDSETS,DATA,ENDDATA,END之外。

3、可以放在约束条件的右端,同时数字也可放在约束条件的左端。

4、假定各变量非负。

5、注释:“!”

6、<\>≤、≥

建模时需要的几个基本问题:

1、尽量使用实数优化,减少整数约束和整数变量

2、尽量使用光滑优化,减少非光滑约束的个数

如:尽量少使用绝对值、符号函数、多个变量求最大/最小值、四舍五入、取整函数等

3、尽量使用线性模型,减少非线性约束和非线性变量的个数

如:x/y<5改为x<5y

4、合理设定变量上下界,尽可能给出变量初始值

5、模型中使用的参数数量级要适当。如小于十的三次方。

五、Lingo运算符和函数

1、运算符及其优先级

2、Lingo基本数学函数

3、Lingo变量定界函数

4、Lingo条件判断函数

@IF(logical_condition,true_result,false_result)

分段函数

5、Lingo集合循环函数

难点、重点

六、Lingo建模语言

构成:四个段

目标与约束段

集合段

数据段

初始段

(计算段)

集合SET

格式:集合名 元素列表 属性列表

      Setname[/member_list/][:attribute_list];

      [……] 表示可选项

元素列表:

显式列举法:列出全部元素,用逗号或空格分开

隐式列举法:1..n

属性列表缺省:集合可在程序中作为一循环变量使用,构造更复杂的派生集合

元素列表缺省:必须在数据段给出元素列表赋值

派生集合:

基于其他集合而派生出来的二维或多维集合

格式:集合名 父集合列表 元素列表 属性列表

  Setname(parent_set_list)[/member_list/][:attribute_list];

元素列表缺省:所有组合——稠密集合,或数据段列表赋值

元素列表——稀疏集合:元素列表法——枚举;元素过滤法——利用过滤条件

Setname(parent_set_list)[|filtrate_condition][:attribute_list];

七、Lingo集合循环函数

难点!重点!

循环操作函数——集合上的元素——下标:

集合名 集合索引列表 过滤条件 表达式

@function(setname{(set_index_list)[|condition]]:expression_list);

集合函数名:for max min sum prod


附件列表

Lingo数学规划软件.doc

大小:4.95 MB

只需: 5 个论坛币  马上下载

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群