duckatyda 发表于 2015-4-23 17:06

水渠分配问题!求适合的方法!

题目:有128个水渠,流水速率分为4 6 8 10,这四种速率的水渠数目为k1 k2 k3 k4。水渠尽头有四块地需要浇灌,需水量分别为w1 w2 w3 w4。现给四块地分配水渠,要求浇灌完四块地的最终时长最短,求相应分配策略。(由于单位不同 t=w*(k1+k2+k3+k4)/2/n,w为需水量,n为分配的总速率,t为相应浇水时长)
设各类水渠数量如下:
k1=18;
k2=40;
k3=50;
k4=20;

设需水量如下:
w1=5;
w2=7;
w3=8;
w4=10;

x1是速率4的水渠分给w1的数目,x2是速率4的水渠分给w2的数目……r4是速率10的水渠分给w4的数目:
x1+x2+x3+x4=k1;
y1+y2+y3+y4=k2;
z1+z2+z3+z4=k3;
r1+r2+r3+r4=k4;

分给四块地的总速率:
n1=4*x1+6*y1+8*z1+10*r1;
n2=4*x2+6*y2+8*z2+10*r2;
n3=4*x3+6*y3+8*z3+10*r3;
n4=4*x4+6*y4+8*z4+10*r4;

四块地的浇水时长:
t1=w1*(k1+k2+k3+k4)/2/n1;
t2=w2*(k1+k2+k3+k4)/2/n2;
t3=w3*(k1+k2+k3+k4)/2/n3;
t4=w4*(k1+k2+k3+k4)/2/n4;

浇水的最小理想时长(不考虑水渠速率粒度时):
t=(w1+w2+w3+w4)*(k1+k2+k3+k4)/2/(4*k1+6*k2+8*k3+10*k4);

求浇灌完四块地的最终时长最短(下式表示最接近于最小理想时长):
F>=t1-t;
F>=t2-t;
F>=t3-t;
F>=t4-t;
MIN=F;
使用lingo软件时,自动使用分枝定界法,可以看出很快会出来最优分配,但是程序依然继续遍历很久。我觉得根据理想时间可以得出分给四块地的理想速率(可能非整数),从这出发在附近小范围搜索即可,不知道是否正确也不知道具体使用什么方法,求指导快速可行的规划方法!

duckatyda 发表于 2015-4-27 17:07

求回复。。。。。。
页: [1]
查看完整版本: 水渠分配问题!求适合的方法!