snakeD 发表于 2009-7-22 05:21

一段lingo程序,希望高手进来,帮忙改正!!!

以下是一段lingo程序,不能运行,本人新手,第一次用lingo解题,希望高手帮忙指正,急用!!!!提前谢谢各位!!!!
model:
sets:
  days/d1..d6/;
  kinds1/k1..k2/:h1;
  kinds2/l1..l3/:h2;
  links1(days,kinds1):m1,x1,y1,v1;
  links2(days,kinds2):m2,x2,y2,v2;
endsets
data:
  h1=8.8 6.1;
  h2=2.0 4.2 5.0;
  v1=1100 1200
     1300 1300
     1100 1400
     1200 1100
     1000 1200
     900 1000;
  v2=1300 1100 1150
     1100 900 1150
     1300 1000 950
     1200 1200 1250
     1500 1100 1050
     1400 800 1350;
enddata

max=1530*@sum(links1:m1)+1490*@sum(links2:m2)-50*@sum(links1:y1)-50*@sum(links2:y2)-@sum(links1:x1*v1)-@sum(links2:x2*v2)

@for(days(i):
     @sum(kinds1(j):m1(i,j))<200;
    );
@for(days(i):
     @sum(kinds2(j):m2(i,j))<250;
    );
@for(days(i):
     @sum(kinds1(j):h1(j)*m1(i,j))+@sum(kinds2(j):h2(j)*m2(i,j))-3*sum(kinds1(j):m1(i,j))-3*sum(kinds2(j):m2(i,j))>0;
    );
@for(days(i):
     @sum(kinds1(j):h1(j)*m1(i,j))+@sum(kinds2(j):h2(j)*m2(i,j))-6*sum(kinds1(j):m1(i,j))-6*sum(kinds2(j):m2(i,j))<0;
    );
@for(kinds1(j):
     @for(days(i):
          m(i,j=x(i,j)+y(i,j)-@if(i#gt#1,y(i-1,j),500));
         );
    );
@for(kinds2(j):
     @for(days(i):
          m(i,j=x(i,j)+y(i,j)-@if(i#gt#1,y(i-1,j),500));
         );
    );

end

swufemcmer 发表于 2009-7-22 05:42

看看 呵呵 好

madio 发表于 2009-7-22 07:19

不知道程序的目的,只能改到没有语法错位,再自己看看吧,我在lingo11下运行通过!

model:
sets:
days/d1..d6/;
kinds1/k1..k2/:h1;
kinds2/l1..l3/:h2;
links1(days,kinds1):m1,x1,y1,v1;
links2(days,kinds2):m2,x2,y2,v2;
endsets
data:
h1=8.8 6.1;
h2=2.0 4.2 5.0;
v1=1100 1200
1300 1300
1100 1400
1200 1100
1000 1200
900 1000;
v2=1300 1100 1150
1100 900 1150
1300 1000 950
1200 1200 1250
1500 1100 1050
1400 800 1350;
enddata

max=1530*@sum(links1:m1)+1490*@sum(links2:m2)-50*@sum(links1:y1)-50*@sum(links2:y2)-@sum(links1:x1*v1)-@sum(links2:x2*v2);
@for(days(i):
@sum(kinds1(j):m1(i,j))<200;
);
@for(days(i):
@sum(kinds2(j):m2(i,j))<250;
);
@for(days(i):
@sum(kinds1(j):h1(j)*m1(i,j))+@sum(kinds2(j):h2(j)*m2(i,j))-3*@sum(kinds1(j):m1(i,j))-3*@sum(kinds2(j):m2(i,j))>0;
);
@for(days(i):
@sum(kinds1(j):h1(j)*m1(i,j))+@sum(kinds2(j):h2(j)*m2(i,j))-6*@sum(kinds1(j):m1(i,j))-6*@sum(kinds2(j):m2(i,j))<0;
);
@for(kinds1(j):
@for(days(i):m1(i,j)=x1(i,j)+y1(i,j)-@if(i#gt#1,y1(i-1,j),500));
);
@for(kinds2(j):
@for(days(i):
m2(i,j)=x2(i,j)+y2(i,j)-@if(i#gt#1,y2(i-1,j),500));
);


end

snakeD 发表于 2009-7-22 07:52

非常感谢,能问一下主要改动了哪几个地方吗?

madio 发表于 2009-7-23 07:07

你自己对一下呀,很容易发现不同

luoye_si 发表于 2009-7-23 08:57

你的目标函数是啥吗,目标不明确

minedoc 发表于 2009-8-18 00:45

能说明下程序干嘛的吗
页: [1]
查看完整版本: 一段lingo程序,希望高手进来,帮忙改正!!!