Переменная с условием в миницинке

Я конвертирую модель по целям в миницинк. В прицелах у меня есть переменная, определенная как X с index domain (k,i)где i,s,t - индекс установленного часа

Определение X с индексами i,s,t:

sum((s,t) | (s <= i) and (t >= i), Pick(s,k,t) + OverPick(s,k,t))

Я не уверен, как написать эту переменную в мини-цинке.

1 ответ

Синтаксис MiniZinc для суммы элементов в Pick а также OverPickдля данной области k между временами s а также t является:

var int: X = sum([Pick[i,k] + OverPick[i,k] | i in s..t]);

Это предполагает, что Pick[i,k], или же OverPick[i,k], содержит время сбора i в области k,

Более подробную информацию о построении этих типов над утверждениями можно найти в документации по массивам.

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