某公司有6个供货栈(仓库),库存货物总数分别为60,55,51,43,41,52,现有8个客户各要一批货,数量分别为35,37,22,32,41,32,43,38.各供货栈到8个客户处的单位货物运输价如下(元/每单位).试确定各货栈到各客户处的货物调运数量,使总的运输费用最小.要求附上LINGO程序.单位货物运输价(元)V1 V2 V3 V4 V5 V6 V7 V8 W1 6 2 6 7 4 2 5 9 W2 4 9 5 3 8 5 8 2W3 5 2 1 9 7 4 3 5W4 7 6 7 3 9 2 7 1W5 2 3 9 5 7 2 6 5W6 5 5 2 2 8 1 4 3
问题描述:
某公司有6个供货栈(仓库),库存货物总数分别为60,55,51,43,41,52,现有8个客户各要一批货,数量分别为35,37,22,32,41,32,43,38.各供货栈到8个客户处的单位货物运输价如下(元/每单位).试确定各货栈到各客户处的货物调运数量,使总的运输费用最小.要求附上LINGO程序.
单位货物运输价(元)
V1 V2 V3 V4 V5 V6 V7 V8
W1 6 2 6 7 4 2 5 9
W2 4 9 5 3 8 5 8 2
W3 5 2 1 9 7 4 3 5
W4 7 6 7 3 9 2 7 1
W5 2 3 9 5 7 2 6 5
W6 5 5 2 2 8 1 4 3
答
model:
sets:
w/1..6/:a;
v/1..8/:b;
link(w,v):c,x;
endsets
data:
a=60 55 51 43 41 52;
b=35 37 22 32 41 32 43 38;
c=
6 2 6 7 4 2 5 9
4 9 5 3 8 5 8 2
5 2 1 9 7 4 3 5
7 6 7 3 9 2 7 1
2 3 9 5 7 2 6 5
5 5 2 2 8 1 4 3;
@text('d:\x.txt')=x;
enddata
min=@sum(link:x*c);
@for(w(i):@sum(v(j):x(i,j))