Re: [問題] python版本 與gurobi、conda的問題

看板Python作者 (好冷啊~~)時間7年前 (2016/11/24 14:36), 編輯推噓7(700)
留言7則, 4人參與, 最新討論串2/2 (看更多)
※ 引述《xakg (夤)》之銘言: : 大家好, : 小弟新手入門,有些觀念跟問題請教: : 1. 很多書上有推anaconda,是不是裝了以後就不要再裝python的核心(直譯器)? : 我本來安裝了官方python 3.5 又安裝了anaconda,這樣在ipython 在執行新檔案時會 : 出現兩個核心,是不是代表我兩個都可以裝? : 2. 因為研究需要,我需要gurobi 最佳化求解軟體,我已經安裝好了,後來發現anaconda : 也有提供他的安裝方法,那我還要在安裝一次嗎?我用pip裝的套件 conda的核心讀的到 : 嗎? : 3. 我執行gurobi 後 核心出來是 2.7.X版本的 可是我的python原先是裝3.5x版本的 : 為什麼會這樣呀? : http://imgur.com/a/RBjaW : http://imgur.com/a/PCLHs : 4. 版友有推薦pyomo +gurobi 但我不太了解pyomo的作用是如何,他的效果是屬於? : == : 我發覺python真的還蠻有趣的,就像excel一樣有好多函數可以拿來使用; : 跟其它程式有一點小差別,光是基因演算法都有套件可以解, : 好酷呀!! 1,2,3已經有人解釋了,我解釋一下pyomo的用途。 解設我們在解一個最佳化問題(例:線性規劃(LP)、兩次規劃(QP)等), LP的標準式是 min c^T x s.t. Ax <= b, x >=0。 如果我們的LP可以很簡單的化簡成標準式時,即可以直接呼叫解LP的函數求解, 比如說scipy的optimize套件中就有直接求LP標準式的套件, https://goo.gl/65FSX0 但是當我們在依據資料建立數學模型時,雖然可以知道模型是LP、QP或是其它規劃, 但非標準型式,如果要用基本的function call求解的話,就必須要自行轉換成標準式, 非常的麻煩,而且容易發生錯誤,特別是在問題較大時(比如說大於100個決策變數的 問題),因此有許多的建模語言幫助使用者達成此轉換的工作,如AMPL、GAMS等,而 pyomo是用python實際此功能的軟體。 但要注意的事這些建模語言只是幫忙做翻譯,實際上問題還需要用演算法求解, 因此還需要後端的solver幫忙解答,常見的商用solver有cplex, gurobi, xpress等, 雖然也有open source的版本如glpk,但是性能差異過大。 Prof. Mittelmann有在對市面上大多數的solver做性能測試,更新的非常頻繁, 最新的比較是2016年11月,可看出很明顯的商用 vs 開源solver性能差異。 pyomo後端支援相當多的solver,cplex, gurobi, glpk等都支援,而商用軟體 也大多有搭配自已的建模語言,所以不管用那一種方式都可以解答出問題,只 是在於方便性而已。 順便一提,cplex和gurobi校園使用都可以申請academic use,免費使用,只要免年 更新license即可。 http://plato.asu.edu/bench.html -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.117.168.49 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1479969390.A.683.html

11/24 17:52, , 1F
推G大的用心回覆
11/24 17:52, 1F

11/25 00:52, , 2F
感謝!gurobi已安裝好了~ 學術上是free的
11/25 00:52, 2F

11/25 08:22, , 3F
不過cplex還在尋找中,當初老闆對cplex還蠻有興趣的
11/25 08:22, 3F

11/25 09:04, , 4F
CPLEX 在pypi有一個docplex是一樣的東西嗎?
11/25 09:04, 4F

11/25 09:10, , 5F
謝謝g大提供網址,我會在研究研究的
11/25 09:10, 5F

11/26 02:19, , 6F
專業!
11/26 02:19, 6F

12/01 19:24, , 7F
gurobi現在比cplex強了阿!
12/01 19:24, 7F
文章代碼(AID): #1ODefkQ3 (Python)
文章代碼(AID): #1ODefkQ3 (Python)