lingo !subscript out of range on attribute:y. 求助!急求!

lingo !subscript out of range on attribute:y. 求助!急求!
model:
!问题;
min=(@sum(x))^2-(@sum(ver))^2;
sets:
province/pr1..pr3/:pro;
vertical/ve1..ve5/:ver;
links(province,vertical):x,y;
endsets
data:
pro=15 9 5;
ver=9 8 10 1 1;
y=0.5 0.5 0.5 0.5 0.5 0.3 0.3 0.3 0.3 0.3 0.2 0.2 0.2 0.2 0.2;
enddata
@for(vertical(i)|i#le#5:
x(i,j)ver(i)*y(i,j)-1);
@for(vertical(i)|i#le#5:
@sum(province(j)|j#le#3:x(i,j))=ver(i));
@for(province(j)|j#le#3:
@sum(vertical(i)|i#le#5:x(i,j))=pro(j));
@for(vertical(i)|i#le#5:@gin(x));
end
蛋白质猪 1年前 已收到1个回答 举报

ndggspn 幼苗

共回答了23个问题采纳率:82.6% 举报

首先第一句语法就不对 @sum应该是@sum(集名:表达式) 你这个写的完全不对 另外你不要在集定义前面就写集循环函数
后面你@for只对i循环了 那j是多少?是某个确定的数还是要对j循环?你都没有写

1年前 追问

6

蛋白质猪 举报

@for循环里面,在某个固定的i下,对j进行1到3的循环。想要表达出这样的效果,应该怎么写? @sum函数,想要表达的是,所有的x值和的平方,减去所有ver和的平方。应该怎么写呢?

举报 ndggspn

@sum(link(i,j):x(i,j)^2) @for(set(i)|i#le#3: .....);

蛋白质猪 举报

按照你说的,改了之后,程序还是不能运行。还是"subscript out of range on attribute:y.".不知道怎么办了。。

举报 ndggspn

你看看你写的下标顺序和集定义里面的集的顺序是一直的吗
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 17 q. 0.017 s. - webmaster@yulucn.com