没可行解要你自己看看 到底是你写的有问题 还是题目有问题
model:
sets:
point/1..9/:d,a,b;!d需求,a,b时间窗;
car/1..5/;
edge(point,point):c,t;
cartime(point,car):s;
caredge(edge,car):x;
endsets
data:
d=0 2 1.5 4.5 3 1.5 4 2.5 3;
a=0 1 4 1 4 3 2 5 1.5;
b=10000 3 6 2 7 5 5 8 4;
c=0 40 60 75 90 200 100 160 80
40 0 65 40 100 50 75 110 100
60 65 0 75 100 100 75 75 75
75 40 75 0 100 50 90 90 150
90 100 100 100 0 100 75 75 100
200 50 100 50 100 0 70 90 75
100 75 75 90 75 70 0 70 100
160 110 75 90 75 90 70 0 100
80 100 75 150 100 75 100 100 0;
q=8;!车载量;
enddata
min=@sum(edge(i,j):@sum(car(k):x(i,j,k))*c(i,j));
@for(point(i)|i#ne#1:
@sum(point(j):@sum(car(k):x(i,j,k)))=1;
);
@for(car(k):
@sum(point(i):@sum(point(j):d(i)*x(i,j,k)))<=q;
@sum(point(j):x(1,j,k))=1;
@sum(point(i):x(i,9,k))=1;
@for(point(h):
(@sum(point(i):x(i,h,k))-@sum(point(j):x(h,j,k)))=0;
);
);
@for(caredge(i,j,k):
s(i,k)+t(i,j)-10000*(1-x(i,j,k)) <= s(j,k);
);
@for(point(i):
@for(car(k):
s(i,k) <= a(i);
s(i,k) >= b(i);
));
@for(caredge:@bin(x));
end