lingo求解线性规划问题时,代码无法运行
sets:
time /1..7/; !时间段;
plant /1..4/; !发电机型号;
number /1..10/;
link (plant,time) : a, b, c, e, f, g, m, n, x;
endsets
!目标函数;
min = @sum( link(i,j) :
m(i,j) * a(i,j) + ( b(i,j) + ( x(i,j) - e(i,j) ) * c(i,j) ) * n(i,j) ) ;
@for( link(i,j) : e(i,j) <= x(i,j) );
@for( link(i,j) : x(i,j) <= f(i,j) ) ;
@for( link(i,j) :
@sum( link(i,j) : x(i,j) * n(i,j) ) = g(i,j) );
!报错代码
@for( link(i,j) :
@if( i#ge#2 , m(i,j) = n(i,j) - n(i-1,j) , m(1,j) = n(1,j) ) );
!报错代码
@for( link(i,j) :
@if( m(i,j)#lt#0 , m(i,j) = 0 , m(i,j) = m(i,j) ) );
@for( link(i,j): n(i,1) <= 10);
@for( link(i,j): n(i,2) <= 5 );
@for( link(i,j): n(i,3) <= 8 );
@for( link(i,j): n(i,4) <= 4 );
@for( link(i,j) : @free( m(i,j) ) );
@for( link(i,j) : @gin ( n(i,j) ) );
@for( link(i,j) : @gin ( m(i,j) ) );
!数据;
data:
a = 5000 5000 5000 5000 5000 5000 5000
1600 1600 1600 1600 1600 1600 1600
2400 2400 2400 2400 2400 2400 2400
1200 1200 1200 1200 1200 1200 1200 ;
b = 13200 6600 6600 4400 8800 8800 4400
10800 5400 5400 3600 7200 7200 3600
22800 11400 11400 7600 15200 15200 7600
28800 14400 14400 9600 19200 19200 9600 ;
c = 2.7 2.7 2.7 2.7 2.7 2.7 2.7
2.2 2.2 2.2 2.2 2.2 2.2 2.2
1.8 1.8 1.8 1.8 1.8 1.8 1.8
3.8 3.8 3.8 3.8 3.8 3.8 3.8 ;
e = 800 800 800 800 800 800 800
1000 1000 1000 1000 1000 1000 1000
1200 1200 1200 1200 1200 1200 1200
1800 1800 1800 1800 1800 1800 1800 ;
f = 1800 1800 1800 1800 1800 1800 1800
1500 1500 1500 1500 1500 1500 1500
2000 2000 2000 2000 2000 2000 2000
3500 3500 3500 3500 3500 3500 3500 ;
g = 11000 33000 25000 36000 25000 30000 18000
11000 33000 25000 36000 25000 30000 18000
11000 33000 25000 36000 25000 30000 18000
11000 33000 25000 36000 25000 30000 18000;
enddata
end
lingo错误代码12, 缺少正确的括号
报错的部分在注释中表出
百度说可能是模型存在矛盾