第五讲 利用集合 引言 模型的集合域 模型的数据域 集合循环诬数 利用集合建模举例 变量限定数 电子数据表与利LNGO 3
3 第五讲 利用集合 引言 模型的集合域 模型的数据域 集合循环函数 利用集合建模举例 变量限定函数 电子数据表与利LINGO
5.1引言 5.1引言 利用LINGO可以模拟大型系统。这是LINGO:最 强大的功能之一。实现这一功能的关键是引入表 示类似对象的集合概念。如果你从事建立实用模 型的工作,你就一定会遇到一组或多组类似的对 象群体。比如,工厂、产品、时期、客户、车辆 或雇员等等群体。LING0允许你将他们聚集在 起形成集合。一旦对象可以用集合来表示,你就 可以用单个语句作用于一个集合中的所有元素
4 5.1 引言 5.1 引言 利用LINGO可以模拟大型系统。这是LINGO最 强大的功能之一。实现这一功能的关键是引入表 示类似对象的集合概念。如果你从事建立实用模 型的工作,你就一定会遇到一组或多组类似的对 象群体。比如,工厂、产品、时期、客户、车辆 或雇员等等群体。LINGO允许你将他们聚集在一 起形成集合。一旦对象可以用集合来表示,你就 可以用单个语句作用于一个集合中的所有元素
5.1引言 5.1.1为什么要利用集合? 在多数大型模型中,往往需要进行一些很类 似的计算(或存在一些很类似的约束)。利用LI NG0处理集合的能力可以高效率地完成这样的计 算(或描述类似的约束) 例如,对于具有100个货栈的运输模型来说, 每一个货栈都有一个运输能力的约束。如果要明 确地一个一个地写出全部约束,那必定是单调乏 味的。 5
5 5.1 引言 5.1.1 为什么要利用集合? 在多数大型模型中,往往需要进行一些很类 似的计算(或存在一些很类似的约束)。利用LI NGO处理集合的能力可以高效率地完成这样的计 算(或描述类似的约束)。 例如,对于具有100个货栈的运输模型来说, 每一个货栈都有一个运输能力的约束。如果要明 确地一个一个地写出全部约束,那必定是单调乏 味的
5.1引言 例如,货栈1的运输量不能超过存储量,货 栈2的运输量不能超过存储量,货栈3的运输量不 能超过存储量.等等)。如果用LING0建立模型 我们就可以用一个语句来表示这些约束:“每个 货栈的运输量不能超过它的存货量”。 6
6 例如,货栈1的运输量不能超过存储量,货 栈2的运输量不能超过存储量,货栈3的运输量不 能超过存储量.等等)。如果用LINGO建立模型, 我们就可以用一个语句来表示这些约束:“每个 货栈的运输量不能超过它的存货量” 。 5.1 引言
5.1引言 5.1.2什么是集合? 集合是一些类似对象的全体。一些产品、一 些卡车或一些雇员等等都可以构成一个集合。集 合中的每一个元素都有一个或多个与其相关的特 性(例如,重量、单位产品的价格或收入)。我 们称这些特性为属性。同一个集合中的所有元素 具有同样类型的属性。在求解模型之前,集合属 性的值可以预先取定也可以待定 7
7 5.1.2 什么是集合? 集合是一些类似对象的全体。一些产品、一 些卡车或一些雇员等等都可以构成一个集合。集 合中的每一个元素都有一个或多个与其相关的特 性(例如,重量、单位产品的价格或收入)。我 们称这些特性为属性。同一个集合中的所有元素 具有同样类型的属性。在求解模型之前,集合属 性的值可以预先取定也可以待定。 5.1 引言