R: Определение границ для конструктора задач оптимизации OP (пакет ROI). Ошибка в UseMethod(as.V_bound)

Я хочу определить границы для переменных при оптимизации с помощью пакета 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?


person user436994    schedule 28.04.2017    source источник