其他分享
首页 > 其他分享> > Lingo学习笔记一

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