Мне нужно решить проблему (пример воспроизводимой игрушки ниже):
Существует матрица p (N = 3 x M = 2):
p<-matrix(c(3,17,14,20,0,3), nrow=3, ncol=2, byrow=TRUE)
Я стремлюсь максимизировать поэлементную сумму, где, скажем, X равен (3x2) и являются двоичными переменными:
Сумма, которую мы максимизируем:
У меня есть различные ограничения, сумма каждого столбца X равна> = a. Таким образом, это будет записано как ( РЕДАКТИРОВАТЬ: ДОЛЖНО БЫТЬ> = )
Другое: строки X должны быть <= 1. Это означает, что можно активировать не более одного X в строке (= 1): </p>
Назад к R :
Для целевой функции :
Вопрос № 1 : Нужно ли «растягивать» матрицу p в вектор:
obj<-c(3,17,14,20,0,3)
Для ограничений :
Вопрос № 2 Нужно ли измерять матрицу ограничений (строки = количество ограничений, столбцы = количество х в X)?
Так что для этих ограничений это будет (5,6)
?
Вопрос № 3
Будет ли матрица ограничений выглядеть следующим образом - при условии, что я правильно ответила на вопрос № 2?
Первая строка представляет x11 + x21 + x31 >= a1
Второй ряд представляет x12 + x22 + x32 >= a2
Третий ряд представляет x11 + x12 <=1
Четвертый ряд представляет x21 + x22 <=1
Пятая строка представляет x31 + x32 <=1
Затем, конечно, матрица направления и RHS-матрица устанавливаются соответственно.