направь меня, чтобы написать ограничение мощности - PullRequest
0 голосов
/ 30 января 2019

Я пытаюсь добавить еще несколько ограничений с существующей проблемой планирования проекта с ограничением ресурсов, доступными примерами OPL.Здесь я прилагаю файлы примеров проблемы RCPSP.В настоящее время в этом примере задачи я могу запустить как можно больше задач в зависимости от емкости ресурса.Я хочу добавить дополнительное ограничение на максимальное количество задач, выполняемых в переменной интервала, должно быть меньше или равно 5. Другими словами, одновременно я не могу выполнять более 5 задач одновременно.

Примерная проблема может быть найдена в OPL в examples / opl / sched_rcpsp

1 Ответ

0 голосов
/ 30 января 2019

Вы можете использовать функцию cumul:

Перед тем как блокировать объект, вы можете написать

cumulFunction nbTasks = 
   sum(t in Tasks) pulse(itvs[t],1);

, а затем в теме для блока просто добавить

nbTasks<=5;

С уважением

...