早教吧 育儿知识 作业答案 考试题库 百科 知识分享

虽能帮我看看lingo程序哪里错了model:sets:a/1..3/:d;b/1..3/;c(a,b):f;endsets@for(a:@bnd(0,d,8));@for(c:@bnd(0,f,5));max=@sum(a(j):@sum(b(i)|i#lt#d(j):f(i,j)+d(j)));end应该是目标函数那行错了,但我觉得没什么逻辑上的错误

题目详情
虽能帮我看看lingo程序哪里错了
model:
sets:
a/1..3/:d;
b/1..3/;
c(a,b):f;
endsets
@for(a:@bnd(0,d,8));
@for(c:@bnd(0,f,5));
max=@sum(a(j):@sum(b(i)|i#lt#d(j):f(i,j)+d(j)));
end
应该是目标函数那行错了,但我觉得没什么逻辑上的错误,大侠帮我看看应该怎样才能实现这个要求
▼优质解答
答案和解析
变量一般不要出现在对元素的限制中 用一个@if函数在计算中限制应该可以
model:
sets:
a/1..3/:d;
b/1..3/;
c(a,b):f;
endsets
@for(a:@bnd(0,d,8));
@for(c:@bnd(0,f,5));
max=@sum(a(j):@sum(b(i):(@if(i#lt#d(j),1,0)*(f(i,j)+d(j)))));
end