汇丰游戏网-游戏玩家聚集地

汇丰游戏网-游戏玩家聚集地

lingo软件如何sets

59

在LINGO软件中,`sets`部分用于定义集合。集合是优化问题中一类重要的对象,可以包含多个成员,每个成员拥有与之相关联的属性。以下是定义集合的基本语法和步骤:

定义集合

使用关键字 `sets:` 开始定义集合部分。

集合名称是可选的,并且不区分大小写。

成员列表是可选的,可以显式列出每个成员,也可以隐式列出(只需输入首尾成员,中间成员由LINGO自动生成)。

属性列表也是可选的,用于描述集合成员的属性。

语法格式

原始集合定义:`setname[/member_list/][:attribute_list];`

派生集合定义:`derived_set_name(set_name1, set_name2):attribute_list;`

示例

定义一个包含三个成员(A, B, C)的集合,每个成员有两个属性(sex, age):

```lingo

sets:

students / Jhon, Mike, Rose /:sex,age;

endsets

```

定义一个一维集合,包含从1到10的整数,每个整数作为属性x:

```lingo

sets:

set / 1..10 / :x;

endsets

```

定义一个二维集合,其中第一个集合是一维集合 `set1`(1到3),第二个集合是一维集合 `set2`(1到3),并定义一个属性z:

```lingo

sets:

set1 / 1..3 / :x;

set2 / 1..3 / :y;

two_dim_set(set1, set2):z;

endsets

```

注意事项

集合名称和成员列表中的元素名称必须以字母或下划线开头,后续字符可以是字母、数字或下划线,且总长度不超过32个字符。

集合的属性用于描述集合成员的特性,可以有多个,每个属性对应一个成员。

定义集合时,必须以 `endsets` 结束集合部分。

通过以上步骤和语法,可以在LINGO中有效地定义集合,从而为后续的优化问题建模提供基础数据结构。