lingo error code 72

来源:百度知道 编辑:UC知道 时间:2024/06/07 02:32:44
下面我的代码:
model:
!最小二乘法;
data:
N=12;
enddata
sets:
number1/1..N/:s;
number2/1..N/:A;
number3/1..N/:f;
number4/1..N/:g;
number5/1..N/:mini;
endsets
data:
A=2 2.8 0.8 0.8 3.2 2.6 3.6 9.6 7.2 18.8 16 4;
s=0 8.1 16.8 52 31.2 22.4 44.8 62 140 106.4 156.8 190.4;
enddata
@for(number3(i)|i#lt#N:f(i)=s(i+1)-s(i));
@for(number4(i)|i#le#N:g(i)=p*A(i)*(1-s(i)/M)-lmt*s(i));
@for(number5(i)|i#lt#N:mini(i)=(f(i)-g(i))^2);
min=@sum(number5(i)|i#lt#N:mini);
end
运算时出现 error code 72;
代码里lmt表示λ,由于lingo不支持希腊字母,所以用lmt带,
小弟刚学lingo,希望大大能指定下,谢谢了
求其中的p,M,lmt变量的值使sum(f(i)+g(i))取最小.
下面dfg25aw 的回答不对,依然是错的,error code 225 .....

model:
!最小二乘法;
data:
N=12;
enddata
sets:
number1/1..N/:s;
number2/1..N/:A;
number3/1..N/:f;
number4/1..N/:g;
number5/1..N/:mini;
endsets
data:
A=2 2.8 0.8 0.8 3.2 2.6 3.6 9.6 7.2 18.8 16 4;
s=0 8.1 16.8 52 31.2 22.4 44.8 62 140 106.4 156.8 190.4;
enddata
@for(number4(i)|i#le#N:g(i)=p*A(i)*(1-s(i)/M)-lmt*s(i));
min=@sum(number5(i)|i#lt#N:mini);
calc:
@for(number3(i)|i#lt#N:f(i)=s(i+1)-s(i));
@for(number5(i)|i#lt#N:mini(i)=(f(i)-g(i))^2);
endcalc
end