shijiangtao 发表于 2009-1-18 20:18

200901网友求助《装配线平衡模型》

本帖最后由 为你奋斗 于 2009-12-3 16:08 编辑

有如下问题,请教高手:<BR><FONT color="#000000"><B><FONT face="黑体">装配线平衡模型<BR></FONT></B></FONT>

shijiangtao 发表于 2009-1-18 20:24

一条装配线含有一系列的工作站,在最终产品的加工过程中每个工作站执行一种或几种特定的任务。装配线周期是指所有工作站完成分配给它们各自的任务所化费时间中的最大值。平衡装配线的目标是为每个工作站分配加工任务,尽可能使每个工作站执行相同数量的任务,其最终标准是装配线周期最短。不适当的平衡装配线将会产生瓶颈——有较少任务的工作站将被迫等待其前面分配了较多任务的工作站。

问题会因为众多任务间存在优先关系而变得更复杂,任务的分配必须服从这种优先关系。

这个模型的目标是最小化装配线周期。有2类约束:

① 要保证每件任务只能也必须分配至一个工作站来加工;

② 要保证满足任务间的所有优先关系。

例  有11件任务(A—K)分配到4个工作站(1—4),任务的优先次序如下图。每件任务所花费的时间如下表。

(A)




(B)




(C)




(F)




(G)




(K)




(J)




(I)




(H)




(E)




(D)




(A)




(B)




(C)




(F)




(G)




(K)




(J)




(I)




(H)




(E)




(D)




(A)




(B)




(C)




(F)




(G)




(K)




(J)




(I)




(H)




(E)




(D)




  (A)




(B)




(C)




(F)




(G)




(K)




(J)




(I)




(H)




(E)




(D)





  (A)




(B)




(C)




(F)




(G)




(K)




(J)




(I)




(H)




(E)




(D)




(A)




(B)




(C)




(F)




(G)




(K)




(J)




(I)




(H)




(E)




(D)





  (A)




(B)




(C)




(F)




(G)




(K)




(J)




(I)




(H)




(E)




(D)















任务
A
B
C
D
E
F
G
H
I
J
K

时间
45
11
9
50
15
12
12
12
12
8
9







用lingo建模如下:

model:
sets:
task/a,b,c,d,e,f,g,h,i,j,k/:t;
station/1..4/;
pred(task,task)/a,b b,c c,f c,g d,e e,h e,i f,j g,j h,j i,j j,k/;
txs(task,station):x;
endsets
data:
t=45  11  9  50  15  12  12  12  12  8  9;
enddata
min=time;
@for(task(j):@sum(station(i):x(j,i))=1);
@for(pred(i,j):@sum(station(k):k*x(j,k)-k*x(i,k))>0);
@for(station(k):@sum(txs(i,k):t(i)*x(i,k))<time);
@for(txs:@bin(x));
end



但用红色标出来的语句总显得有错误,怎么设定x的值总为1或0呢?

wnqgz 发表于 2009-1-19 01:01

谢谢斑竹的好资料

律鹤扬 发表于 2009-1-19 01:45

????看不懂啊....

jiangming600 发表于 2009-8-6 01:52

啥也看不到啊?

渣七渣八 发表于 2018-9-14 09:02

装配线平衡模型
页: [1]
查看完整版本: 200901网友求助《装配线平衡模型》