Lingo学习笔记一
作者:互联网
某家具公司制造书桌、餐桌和椅子,所用的资源有三种:木料、木工和漆工。生产数据如下表所示:
每个书桌 | 每个餐桌 | 每个椅子 | 现有资源总数 | |
木料 | 8单位 | 6单位 | 1单位 | 48单位 |
漆工 | 4单位 | 2单位 | 1.5单位 | 20单位 |
木工 | 2单位 | 1.5单位 | 0.5单位 | 8单位 |
成本单价 | 60单位 | 30单位 | 20单位 |
若要求桌子的生产量不超过5件,如何安排三种产品的生产可使利润最大?
分析:这是一个典型的线性规划问题。我们用DESKS、TABLES和CHAIRS分别表示三种产品的生产量,建立LP模型。
max=60*desks+30*tables+20*chairs;
8*desks+6*tables+chairs<=48;
4*desks+2*tables+1.5*chairs<=20;
2*desks+1.5*tables+.5*chairs<=8;
tables<=5;
在变量较少的情况下,用这种格式是比较方便的,但是当变量增多时,这样的写法就会耗时耗力了。因此,我们提倡用lingo提供的函数来简化模型的结构,使之更加易写与易读。
sets:
products/desks,tables,chairs/:interest,volume;
materials/1..3/:capacity;
links(products,materials):x;
endsets
data:
interest=60,30,20;
capacity=48,20,8;
x=8,4,2
6,2,1.5
1,1.5,0.5;
enddata
max=@sum(products(i):interest(i)*volume(i));
@for(materials(j):@sum(products(i):x(i,j)*volume(i))<=capacity(j));
volume(2)<=5;
end
标签:单位,20,1.5,chairs,笔记,desks,学习,tables,Lingo 来源: https://blog.csdn.net/Recursions/article/details/121150004