作业帮 > 综合 > 作业

运行如下lingo程序时,出现index variables may not share names with othe

来源:学生作业帮 编辑:搜狗做题网作业帮 分类:综合作业 时间:2024/05/05 12:30:54
运行如下lingo程序时,出现index variables may not share names with others variables,这是为什么?
model:
sets:
m/1..1000/;
n/1..100/;
numbers/v1..v100/:demand;
links(m,n):a,x,y;
endsets
max=@sum(links:0.8*a(I,J)*x(I,J)+0.8*a(I-400,J)*y(I,J)-demand(J));
@for(links:x(I,J)+y(I,J)
运行如下lingo程序时,出现index variables may not share names with othe
集循环函数的集名后面和变量名后面都带上下标
另外你的a(I-400,J)在I小于400的时候怎么办你考虑过吗
再问: 帅哥,你是专门回答lingo问题的吗?昨天也是你回答我的问题,昨天那个有1000X100变量的问题lingo居然算出来了。我的集名和变量名后面都加了下标,但还是出错了,那个a(I-400,J)方面,我的目标是让a*y只计算i=1...600而不是i=1...1000,然后我就这样编了
再答: 那也不对 你考虑i小于400的时候 而且你限制i小于600也要写出来啊 你在哪出现600这个数了
再问: 我现在就是不知道那个i小于600怎么在程序中体现
再答: 你先想清楚i小于600行不行 i小于600能保证i-400在合适的范围内吗 如果不能你的表达要改好吗
再问: 题目的要求就是a(I,J)*y(I,J)中i的范围是1-600,不能超过600;a(I,J)*x(I,J)中的i还是1-1000。程序应该怎么改?
再答: 那我问你 i=1的时候是什么样的 就因为你那里不对我才问你的好不
再答: 那我问你 i=1的时候是什么样的 就因为你那里不对我才问你的好不