[英]Formulating and solving a linear programming/assignment problem in python
[英]Getting "DUAL_INFEASIBLE" when solving a very simple linear programming problem
我正在使用 Gurobi 和對偶單純形法和預求解來解決一個簡單的 LP 問題。 我得到 model 是無界的,但我不明白為什么這樣的 model 是無界的。 誰能幫忙告訴我哪里出了問題?
我附上了日志以及 .mps 文件中的內容。
首先十分感謝。
親切的問候,
宏宇。
output 日志和.mps 文件:
.mps 文件的鏈接: https://studntnu-my.sharepoint.com/:u:/g/personal/hongyuzh_ntnu_no/EV5CBhH2VshForCL-EtPvPvBubbiFT8uZZkte-D
Gurobi Optimizer version 9.5.2 build v9.5.2rc0 (mac64[arm])
Thread count: 8 physical cores, 8 logical processors, using up to 8 threads
Optimize a model with 1 rows, 579 columns and 575 nonzeros
Coefficient statistics:
Matrix range [3e-02, 5e+01]
Objective range [7e-01, 5e+01]
Bounds range [0e+00, 0e+00]
RHS range [7e+03, 7e+03]
Iteration Objective Primal Inf. Dual Inf. Time
0 handle free variables 0s
Solved in 0 iterations and 0.00 seconds (0.00 work units)
Unbounded model
最簡單的調試方法是在目標上設置界限,因此 model 不再是無界的。 然后檢查解決方案。 這是一個超級簡單的技巧,不知何故很少有人知道。
當我們以 100000 的界限執行此操作時,我們看到:
phi = 100000.0000
gamma[11] = -1887.4290
(rest 為零)。 事實上,我們可以讓 gamma[11] 為負,因為我們想要服從 R0。 請注意, gamma[11] 不在目標中。
更多建議:寫出 model 的 LP 文件並仔細研究也很有用。 你可能會發現錯誤,這會阻止這篇文章。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.