云的隐逸 发表于 2011-9-3 17:28

LINGO非线性规划问题求改错,急~

MODEL
sets:
num_i/1..5/:r,x0,x;
endsets
data:
R=100,133,170,63,64;
init:
x0=0.2,0.2,0.2,0.2,0.2;
endinit
min=@sum(num_i(i):R(i)*x(i))/@sum(num_i(i):R(i));
@sum(num_i(i):x(i))=1;
x(2)/(x(1)+x(2))=0.6;
@for(num_i(i):x(i)>=0;);
END

云的隐逸 发表于 2011-9-3 17:30

num_i/1..5/:r,x0,x;

这个小r应该是R,但是还是错的

蓝色琉璃 发表于 2011-9-3 21:37

model:
sets:
num_i/1..5/:r,x0,x;
endsets
data:
R=100,133,170,63,64;
enddata
init:
x0=0.2,0.2,0.2,0.2,0.2;
endinit
min=@sum(num_i(i):R(i)*x(i))/@sum(num_i(i):R(i));
(@sum(num_i(i):x(i)))=1;
x(2)/(x(1)+x(2))=0.6;
@for(num_i(i):x(i)>=0;);
end


@sum那一句好像缺少括号啊~~~~

蓝色琉璃 发表于 2011-9-3 21:38

还有。。enddata

buptlijun 发表于 2011-9-7 14:57

1. model后缺一分号
2.data数据陈列完后缺enddata
3. 倒数第二行完全多余,lingo默认变量非负
4.init..endinit是初始化,便于迅速找到正确解,因此建议把x0换成x,而且数据定义时不要x0
ps:后面两点不改也不会错,但是习惯问题楼主好好注意一下呗~

buptlijun 发表于 2011-9-7 15:00

蓝色琉璃 发表于 2011-9-3 21:37 static/image/common/back.gif
model:
sets:
num_i/1..5/:r,x0,x;


@sum再加括号是有画蛇添足之嫌呀

alair006 发表于 2012-2-7 16:09

页: [1]
查看完整版本: LINGO非线性规划问题求改错,急~