找到全局最优解,使得目标函数值为 ,对应变量 , 的值分别为 和
,对应变量 , 的影子价格分别为 , 。
所谓的影子价格,就是指对应的变量增加 1 单位,其他变量无变化时目标函数改变
的单位数。
3. 建立 Lingo 优化模型需要注意的几个基本问题
(1)、尽量使用实数优化模型,尽量减少整数变量和整数约束;?????
(2)、尽量使用光滑优化模型,尽量避免使用非光滑函数。比如应尽量避免使用绝对
值函数,符号函数,求最大最小值函数,取整函数等;
(3)、尽量使用线性优化模型,尽量减少非线性约束和非线性变量的个数;
(4)、合理设定变量的上下界,尽可能给出变量的初始值;
(5)、模型中使用的单位的数量级要适当。系数最大数和最小数的绝对值超过 1000
倍以上会弹出警告信息。
4. 在 Lingo 中使用集合
4.1 集合的基本用法和 lingo 模型的基本要素
Lingo 虽然使用方便,但是如果要解决几万个,几十万个变量的优化问题时,我们
总不能一个一个地列出 x1,x2,…,x1000 来解决,而这样的问题在实际企业的应用中也
是经常遇到的。好在 Lingo 中设计了集合语言来表示大规模变量的输入,只需一行文字
就可以建立起含有大规模变量的目标函数和成千上万条约束。而 Lingo 的早期版本软件
Lindo 却不包含这样的功能。
现通过下例来对 Lingo 的集合、属性概念进行介绍。
例 2 SAILCO 公司需要决定决定下四个季度的帆船生产量。下四个季度的帆船需求
量分别为 40 条,60 条,75 条,25 条,这些需求必须按时满足。每个季度正常的生产
能力是 40 条帆船,每条帆船的生产费用为 400 美元。如果加班生产,每条船的生产费
用为 450 美元。每个季度末,每条船的库存费用为 20 美元。假定生产提前期为 0,初始
库存为 10 条船。如何安排生产可使总费用最小?
分析与解:用 DEM、RP、OP、INV 分别表示需求量,正常生产的产量,加班生产
的产量,库存量。则 DEM、RP、OP、INV 对每个季度都应有一个对应的值,也就是说
他们都应该是一个由 4 个元素组成的数组,其中 DEM 已知,而 RP,OP,INV 未知。现
在我们可以写出该问题的模型:
此外还有各变量非负的约束。