数学建模培训系列讲座LINDO\LINGO软件的使用方法 刘弦 (计算机系)
1桶牛奶
3公斤A1
12小时
8小时
4公斤A2
或
获利24元/公斤
获利16元/公斤
50桶牛奶
时间480小时
至多加工100公斤A1
制订生产计划,使每天获利最大
例1
LINDO简要介绍
max 72x1+64x2
st
2)x1+x2<50
3)12x1+8x2<480
4)3x1<100
end
LINDO程序
x1桶牛奶生产A1
x2桶牛奶生产A2
决策变量
目标函数
每天获利
约束条件
0-1变量wt :wt=1~ 检修安排在第t周(t=1,2,3,4)
决策变量
例2:检修计划
在4周内安排一次设备检修,占用当周15千箱生产能力,能使检修后每周增产5千箱,检修应排在哪一周?
周次
需求
能力
1
15
30
2
25
40
3
35
45
4
25
20
成本
存贮费: (千元/周•千箱)
目标函数
x1~ x4:第1~4周的生产量
y1~ y3:第1~3周末库存量
约束条件
++++++
st
2)x1-y1=15
3)x2+y1-y2=25
4)x3+y2-y3=35
5)x4+y3=25
6)x1+15w1<30
x2+15w2-5w1<40
x3+15w3-5w1-5w2<45
x4+15w4-5w1-5w2-5w3<20
w1+w2+w3+w4=1
end
int w1
int w2
int w3
int w4
0-1型变量
gin:整型变量
free:可以为负数
butt
back
breast
free
S1
87
S2
66
53
S3
78
S4
70
S5
71
例3:5人4种泳姿成绩如下表,求4人混合泳接力的最好成绩。
MIN ++87x13+
+……
++71 x52++
SUBJECT TO
x11+x12+x13+x14 <=1
……
x41+x42+x43+x44 <=1
x11+x21+x31+x41+x51 =1
……
x14+x24+x34+x44+x54 =1
END
INT 20
LINDO模型特征
LINGO模型特征
目标函数的
表示方法:
max
max=
系数与变量之间的乘号用* 表示
约束名:
在[ ]之内
在)之内
约束条件用st标记
省略
模型以MODEL:开始以END结束
运算符:
LINGO模型要素:
集合段:
数据段:
以DATA开始,以ENDDATA结束
以SETS开始,以ENDSETS结束
目标与约束段:
计算段:
初始段:
以INIT开始,以ENDINIT结束
以CALC开始,以ENDCALC结束
没有标记
model:
data:
M=4; N=2; seed=1234567;
enddata
sets:
rows/1..M/;
cols/1..N/;
table(rows,cols): x;
endsets
data:
X=***@qrand(seed);
enddata
end
min 8w1+8w2+8w3+8w4+5x1++++++
st
2) x1-y1=15
3) y1+x2-y2=25
4) y2+x3-y3=35
5) y3+x4=25
6) x1-30w1<=0
7) x2-40w2<=0
8) x3-45w3<=0
9) x4-20w4<=0
end
int w1
int w2
int w3
int w4
实例对比:
集是LINGO建模语言的基础,是程序设计最强有力的基本构件。借助于集,能够用一个单一的、长的、简明的复合公式表示一系列相似的约束,从而可以快速方便地表达规模较大的模型。
sets:
students/ 1..11/: sex, age;
endsets
集是一群相联系的对象,这些对象也称为集的成员。每个集成员可能有一个或多个与之有关联的特征,我们把这些特征称为属性。属性值可以预先给定,也可以是未知的,有待于LINGO求解。
LINGO有两种类型的集:原始集和派生集
例:
LINGO软件的使用方法 (1) 来自淘豆网www.taodocs.com转载请标明出处.