2013-07-25 28 views
0

有人請指導如何解決下面的問題。我不是在尋找的答案,但一開始就解決R.這樣的問題我已經看過像lsolve和lsolveapi軟件包,但所有的例子都是隻用一個標求解2個下標優化運輸probs使用R

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

受到 constraint1:X11 + X12 + X21≤135
constraint2:X11 + X21 + X22≤56

xij≥0,所有的I,J

請幫忙推薦合適的R包相同爲了成功h大sclae問題

+1

變量的名字是無關緊要的。如果雙索引對你很麻煩,你總是可以將你的變量從'x11','x12','x21','x22'重命名爲'y1','y2','y3','y4'。所有線性編程包(' lpSolve'等)可以解決這個小問題(4個變量不會使問題「大規模」) –

+0

Vincent:這是客戶和供應商問題:x11用於表示客戶1和供應商1,相似x12表示客戶1和supplier2 ......請注意我剛纔複製了2-3行和4個變量的實際問題....希望這有助於.. – user2109967

回答

1

根據評論,它看起來好像你寫的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

+0

傑克感謝您的鏈接和給出一個開始....我將探索findFn(「運輸」)選項.... f.con < - 矩陣(c(1,1,1,0,1,0,1,1),ncol = 4 ,byrow = T)我不太確定它是否符合約束條件。 – user2109967