2.1 为什么使用集
对比上节两个例子,例1非常直观,只要将数学模型表达出来即可,例2就难以理解.既然可以直接表达,为什么还要采用如例2中的“集模式”呢?实际上LINGO大部分采用这种模式编程.
对于线性规划问题:
采用例2的方式书写,当n增加时,书写量不会增加.使用集方式有如下优点:
简化变量定义:按照例1的写法需要n*n个变量,如果n较大,定义与书写则困难;
简化目标函数的书写:按照例1的写法,上述问题的目标函数会变得很长很长;
简化约束条件的书写:按照例1的写法,上述约束条件2*n行,每行又有很长;
方便使用系统函数:采用集模式还可以使用系统定义的函数.
集是LINGO建模语言的基础,是程序设计最强有力的基本构件.借助于集,能够用一个单一的、长的、简明的复合公式表示一系列相似的约束,从而可以快速方便地表达规模较大的模型.