Добавление ограничения к модели LP - требуется минимум смен - R - PullRequest
0 голосов
/ 07 февраля 2020

Я работаю над проблемой, у меня есть изменения дизайна. Подход, который я использую,

  1. время начала и окончания смены - уже определен. (У меня 10 смен при продолжительности 7 часов, которые перекрывают друг друга)
  2. Я использую lpsolver в R для вычисления чисел FTE.

Из 10 заданных смен я хочу, чтобы алгоритм давал мне FTE только на 4 смены, то есть я хочу добавить ограничение как нет. сдвигов - 4. Нет ограничений, какой сдвиг выбирается

Мой текущий код выглядит следующим образом

o=c(1,1,1,1,1,1,1)
C=rbind(c(0,0,0,1,1,1,1),
        c(0,0,0,1,1,1,1),
        c(0,0,0,0,1,1,1),
        c(0,0,0,0,1,1,1),
        c(0,0,0,0,0,1,1),
        c(1,0,0,0,0,1,1),
        c(1,0,0,0,0,0,1),
        c(1,0,0,0,0,0,1),
        c(1,1,0,0,0,0,1),
        c(1,1,0,0,0,0,1),
        c(1,1,0,0,0,0,0),
        c(1,1,0,0,0,0,0),
        c(1,1,1,0,0,0,0),
        c(1,1,1,0,0,0,0),
        c(1,1,1,0,0,0,0),
        c(1,1,1,1,0,0,0),
        c(0,1,1,1,0,0,0),
        c(0,1,1,1,1,0,0),
        c(0,0,1,1,1,0,0),
        c(0,0,1,1,1,1,0),
        c(0,0,1,1,1,1,0),
        c(0,0,1,1,1,1,0),
        c(0,0,1,1,1,1,0),
        c(0,0,0,1,1,1,1)


)

 d=rep(">=",24)


r=c(58,60,62,65,72,80,87,93,93,92,90,86,80,74,68,64,61,60,60,58,55,53,52,55)


sol=lpSolve::lp("min",o,C,d,r,compute.sens = TRUE)
sol$solution

Пожалуйста, дайте мне знать, как добавить ограничение на число смен в считаться

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...