我想用以下附加约束进一步约束下面的系统,它使用绝对值运算符:
abs(x1)+abs(x2)+abs(x3) <= 10
是否有可行的方法在 R 中实现这些额外的绝对值约束?
方程组:
maximize: x1 + 9x2 + x3;
subject to:
x1 + 2x2 + 3x3 <= 9
3x1 + 2x2 + 2x3 <= 15
代码:
require(lpSolve)
# objective function, constants, constraints
obj = c(1,9,1)
con = matrix(c(1,2,3,3,2,2), nrow=2, byrow=TRUE)
rel = c("<=", "<=")
rhs = c(9,15)
解决方案:
my.lp = lp("max", obj, con, rel, rhs)
my.lp$objval
my.lp$solution
显然这是一个简单的例子来说明我在网上搜索后得出的问题。正如在线帮助指南中所证明的lp_solve
,它本身似乎有一种方法。但是,如果可能,我更愿意将问题保留在 R 中。lp_solve