GLPK MathProg - условное ограничение
У меня есть следующая проблема MILP, соответствующая часть кода:
param n, integer, >= 0;
set jobs := 1..n;
param P{i in jobs, j in jobs}, binary;
var s{i in jobs}, integer, >=0;
var e{i in jobs}, integer, >=0;
var Cmax, integer, >=0;
minimize total: Cmax;
s.t. crit_3{i in jobs,j in jobs}: s[i] >= e[j];
Я хочу, чтобы критерий crit_3 представлял следующее уравнение:
По сути, я хочу, чтобы ограничения активировались только для данной комбинации i и j, когда матрица P[i,j] = 1. Как я могу этого добиться?
1 ответ
Решение
Что-то вроде s.t. crit_3{i in jobs,j in jobs: P[i,j]=1}: s[i] >= e[j];
должен сделать работу.