数学建模社区-数学中国

标题: 大家帮帮忙,有一个表达式不知道怎么表示 [打印本页]

作者: bugxiao    时间: 2010-4-11 16:46
标题: 大家帮帮忙,有一个表达式不知道怎么表示
TITLE soucing problem;
sets:
material/1..10/:h,b;!h原料i单位时间单位数量的库存费用,b代表原料i的单位数量单位距离内的运输费用;
supply/1..5/:d;!d代表供应商j到目的地的距离;
period/1/:t;
link1(material,supply):n,c,y;! n(i,j)代表j供应商提供i的数量(未知);!y(i,j)代表j 供应商提供i的最大供货能力;!c(i,j)代表供应商j提供i的单价;
link2(period,material):k,p,s;!p代表生产量,s代表销售量;
endsets
data:
b=300 320 400 420 450 500 460 370 375 400;
h=1.2 2.3 2.5 1.6 1.8 1.9 2.3 3.4 3.5 2.6;
d=1324,1456,2011,3011,2018;
c=1 2 3 4 5
  2 3 1 3 1
  2 2 1 1 3
  1 1 3 1 2
  2 5 2 2 3
  1 2 3 4 5
  2 3 1 3 1
  2 2 1 1 3
  1 1 3 1 2
  2 5 2 2 3;
y=11 21 31 41 51
  21 31 11 31 11
  21 21 11 11 31
  11 11 13 11 21
  21 15 12 21 13
  11 21 13 14 15
  21 31 11 31 11
  21 21 11 11 31
  11 11 13 11 12
  21 51 12 12 13;
k=100 200 300 400 500 600 300 100 100 400;
p=400 500 600 700 800 900 300 600 500 400 ;
s=500 300 700 1100 1000 1400 600 500 400 700;
enddata
init:
t=2;
endinit
[OBJ]
min=@sum(link1(i,j):c(i,j)*n(i,j))+@sum(link1(i,j):c(i)*d(j)*n(i,j))+@sum(link2(t,i):h(i)*(k(t-1,i)+p(t,i)-s(t,i));
@for(materail(i):n(i,j)<=y(i,j);); 在这里的时候总是出错说@for 无效,请问我想表示n(i,j)<=y(i,j)这个怎么表达才是对的
@for(supply(j):c#LE#10000;);
@for(materail(i):p(t,i)<=s(t,i););

作者: olh2008    时间: 2010-4-11 17:10
应该这样表示:
@for(link1:n<=y);
或者:
@for(link1(i,j):n(i,j)<y=(i,j));
作者: bugxiao    时间: 2010-4-11 18:35
不行哦,改了还是出那样的错误 1.jpg
作者: olh2008    时间: 2010-4-11 20:16
怎么你在里面还有还加了个分号,里里面的分号不要。
作者: 郑总    时间: 2010-4-12 09:14
应该去掉倒数第二个分号吧!我个人觉得。
作者: bugxiao    时间: 2010-4-12 10:06
大家帮帮忙,去掉分号了还是一样的错误[img][/img] 1.jpg
作者: bugxiao    时间: 2010-4-12 10:10
3.JPG 还是一样的错误
作者: bugxiao    时间: 2010-4-12 15:57
大家帮忙看看哦······~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
作者: shengshengchina    时间: 2011-4-14 12:59
哎,错的一塌糊涂
作者: gaoshanliu水    时间: 2011-4-14 13:52
高手请出来、。。。
作者: scarofsky    时间: 2011-7-2 09:48
乃用的是什么版本?这句前面也有不少错啊~
作者: chengmao    时间: 2011-8-4 19:34
没看出来多大问题啊,估计是数据的错误




欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5