Я хочу определить границы для переменных при оптимизации с помощью пакета ROI. Я использую функцию OP для построения объекта задачи оптимизации.
По умолчанию: нижняя граница равна нулю, а верхняя граница равна +бесконечности.
Вот пример кода, который хорошо работает:
LP <- OP( c(2, 4, 3),
L_constraint(L = matrix(c(3, 2, 1, 4, 1, 3, 2, 2, 2), nrow = 3),
dir = c("<=", "<=", "<="),
rhs = c(60, 40, 80)),
max = TRUE )
Но если я добавляю границы "вручную", я получаю сообщение об ошибке:
LP <- OP( c(2, 4, 3),
L_constraint(L = matrix(c(3, 2, 1, 4, 1, 3, 2, 2, 2), nrow = 3),
dir = c("<=", "<=", "<="),
rhs = c(60, 40, 80)),
bounds = list(upper=c(100,100,100), lower=c(0,0,0)),
max = TRUE )
Error in UseMethod("as.V_bound") :
no applicable method for 'as.V_bound' applied to an object of class "list"
Но в описании сказано, что для "bounds" нужен список в качестве входных данных.
Есть ли у кого-нибудь идеи, как правильно передать границы функции OP?