用R求解2个下标优化运输问题



有人能指导如何解决以下问题吗。我不是在寻找答案,而是在R中解决这些问题的开始。我看过像lsolve和lsolveapi这样的包,但所有的例子都只有一个下标

最小化132x11+12x12+97x21+103x22

受制于约束1:x11+x12+x21≤135
约束2:x11+x21+x22≤56

xij≥0,所有i,j

对于此类大型sclae问题,请帮助并推荐合适的R包。

根据注释,您编写的probelm与lpSolvelp()函数中给出的示例几乎完全匹配。看看这是否有效:

library(lpSolve)
f.obj <- c(132, 12, 97, 103)
f.con <- matrix(c(1, 1, 1, 0, 1, 0, 1, 1), ncol = 4, byrow = T)
f.dir <- c(">=", ">=")
f.rhs <- c(135, 56)
lp ("min", f.obj, f.con, f.dir, f.rhs)
#Success: the objective function is 6380 
lp ("min", f.obj, f.con, f.dir, f.rhs)$solution
#0 79 56  0

因此,您的问题的完整答案是安装包sos,然后使用findFn("solve")或类似性质的东西。事实上,如果您键入findFn("transportation"),您将看到几个专门解决线性程序的包(如果您无法从基本R中的某些内容(如?solve)中获得所需内容)。

最新更新