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]; должен сделать работу.

Другие вопросы по тегам