GLPK 变量未定义

GLPK variable not defined

我有以下型号。

param nbpdt;
set J;
set I;
param p{i in I, j in J};
var S, integer, >=0;
var O, integer, >=0;
var E, integer, >=0;
#objectif
minimize surface: sum{i in I} p[i,1]-(p[i,2] * S)-(p[i,3] * O)-(p[i,4] * E);

当我尝试 运行 时出现此错误:

pv.mod:9: i not defined
Context:  ; minimize surface : sum { i in I } p [ i , 1 ] - ( p [ i ,

有人有想法吗?

求和运算符与加号和减号运算符具有相同的运算符优先级。

所以在你的任期内

sum{i in I} p[i,1] - (p[i,2] * S)

sum 仅适用于 p[i,1] 而不适用于后续项。只需根据需要添加括号,例如

sum{i in I} ( p[i,1] - (p[i,2] * S) )