混合整數二階錐規劃MISOCP求解器
混合整數凸二次(約束)規劃MIQ(C)P求解器
參數調優工具
大幅提升了半定規劃求解性能
杉數科技在2022年10月底正式發布了杉數求解器COPT 6.0。這距離COPT 5.0的發布僅有4個月的時間。很多朋友可能會問,這么短的時間做了哪些更新?本文結合COPT 6.0參與美國亞利桑那大學Mittelmann教授所維護的優化軟件測評榜單的結果,帶大家一探究竟。
自從2021年10月的COPT 3.0版推出二階錐規劃(SOCP)求解器以來,其求解性能比肩國際先進廠商。金融、能源、化工等領域的用戶試用過之后表示速度確實很快,但同時也期待能設定整數變量,滿足在這些領域實現徹底的國產化替代。杉數科技持續研發混合整數二階錐規劃(MISOCP)求解功能,與二階錐規劃求解器時隔一年,如今正式面世。
COPT 6.0混合整數二階錐規劃求解性能測評結果
在美國亞利桑那大學Mittelmann教授維護的最新公布的測評榜單可以看到,MISOCP測評榜單上共有四家求解器。除新上榜的COPT外,其中Mosek和Gurobi分別是來自丹麥和美國的老牌商業求解器廠商,SCIP是德國ZIB研究所發布的開源求解器。表格里求解器名稱上方的數據為一個求解器求解所有測評算例的相對平均時間,以平均時間最小的為1,而下方的數字是可成功求解的算例數量。
從測評榜單可以看出,COPT新發布的混合整數二階錐規劃求解性能超越了開源的SCIP和老牌商業廠商Mosek,平均求解時間和可成功求解的算例數量均明顯優于這兩個軟件。同時我們注意到,和美國廠商Gurobi相比,我們的平均求解時間還有一定的差距,且限定時間內可求解的數量也少1個,還有提升的空間。
但是COPT和Gurobi相比也有自己的優勢,Gurobi的求解數量旁邊加了個*號,Mittelmann教授在頁面的最底部解釋說“* 27 instances with constraint violations > 1e-6”,也就是說有多一半的算例,Gurobi盡管算出來了,但是解并不滿足算例的約束條件,換言之就是那不是嚴格意義上的可行解。而COPT的解不存在這樣的問題。
和二階錐規劃緊密相關的兩類數學規劃問題是凸二次規劃(QP)和凸二次約束規劃(QCP)。杉數科技于2022年初的COPT 4.0版本也新增了這兩個問題類型的求解功能。這兩項功能也和二階錐規劃一樣受限于無法設定整數變量。鑒于其緊密聯系,我們在開發整數二階錐規劃同時也開展了混合整數凸二次規劃(MIQP)和混合整數凸二次約束規劃(MIQCP)的開發,于COPT 6.0一并發布。
COPT 6.0混合整數凸二次(約束)規劃求解性能測評結果
在Mittelmann教授維護的測評榜單里,混合整數凸二次規劃和整數凸二次約束規劃的求解性能比對放在了同一個測評項目Convex Discrete QPLIB里。在這個榜單上,COPT6.0一登場,就明顯壓過了其余9家歐美廠商。和老牌求解器Gurobi相比,可正確求解的數量同為24個,而COPT的平均求解速度領先43%!這是一個標志性的成果,這是我們第一次在混合整數規劃的領域超過西方主流求解器!
當然,從詳細的測評數據可以看出,全部31個算例,還有7個我們未能完成計算。這里面有部分是其他廠商可以在規定時間內求解,而我們需要花更多時間才能完成求解的。我們的混合整數凸二次(約束)規劃求解性能還有進步的空間。
自從今年6月COPT 5.0發布半定規劃(SDP)求解器以來,由于其性能明顯超過了長期領跑的Mosek,因此受到了來自國內外學術界和商業界的廣泛關注。我們也在這個領域,進一步提升COPT半定規劃的求解性能。
COPT 6.0半定規劃求解性能測評結果
從Mittelmann教授維護的測評榜單上可以看到,新發布的COPT 6.0實現了全部75個問題的正確求解。且求解速度也明顯提升,和COPT 5.0相比,COPT 6.0相對Mosek 10.0的速度領先優勢從64%擴大為254%。
除了求解功能之外COPT 6.0還發布了新的功能:參數調優工具(tuner)。
參數調優是使用求解器時的一項常見操作,尤其是在求解混合整數規劃(MIP)時非常重要。COPT的混合整數規劃求解器實現了多種啟發式、割平面算法。有時候對某個問題,往往某個割平面多多益善;而對另一個問題,可能全靠某一種啟發式算法尋找最優解。盡管我們在開發求解器時,已經充分參考公開和客戶算例,設定了各類啟發式算法和割平面算法的最佳強度等參數。但這很難做到兼顧所有的情況。因此在面對某一特定類別的混合整數規劃問題的時候,往往需要調參數,實現最佳求解效果。我們在過去幫助很多客戶通過專業知識調參數,找到了最合適參數。而在COPT 6.0,我們發布了客戶可以自行使用的自動參數調優工具。
例如求解MIPLIB 2017中的app1-2這個算例,根據Mittelmann測試榜單中MIPLIB的詳細對比可知,COPT 6.0默認需要166秒才能完成求解,盡管明顯比其他開源求解器的10-20分鐘快,但是依然落后于Gurobi的19秒求解時間。通過使用tuner,我們可以找到一組改進參數
參數調優工具針對app1-2這個算例找到的一組改進參數
這組參數調低了割平面的強度,關閉了啟發式算法和預求解模塊,另適當增加了分支定界部分的割平面強度,最終實現了18.4秒求解這個算例,提升幅度超過8倍,最終求解時間也超過了Gurobi。
有關tuner的各種參數,如提升調參穩定性的TunePermutes和設定調參目標的TuneMode等,請參考COPT的文檔試用。此外我們后續會在杉數運籌與智能決策教學平臺https://coridm.d2d.ai/的COPT求解器教程專區推出參數調優工具的視頻使用介紹。敬請關注。
杉數求解器COPT (Cardinal Optimizer),是杉數自主研發的針對大規模優化問題的高效數學規劃求解器套件,也是支撐杉數端到端供應鏈平臺的核心組件。COPT是目前同時具備大規模混合整數規劃MIP、線性規劃LP、半定規劃SDP、(混合整數)二階錐規劃(MI)SOCP、以及(混合整數)凸二次規劃Convex (MI)QP和(混合整數)凸二次約束規劃Convex (MI)QCP問題求解能力的綜合性能數學規劃求解器,為企業應對高性能求解的需求提供了更多選擇。
COPT支持所有主流操作系統,如Windows、MacOS、Linux (包括蘋果自研芯片和arm64芯片)。您可以從多種語言及建模工具使用COPT,包括基于數據的C語言接口,面向對象的Python、C++、C#、Java接口,以及AIMMS、AMPL、GAMS、Julia、Pyomo、PuLP、CVXPY等第三方建模工具。
此外COPT支持多種部署方式。除了個人電腦、服務器之外,我們還提供浮動授權和計算集群等部署方式,方便學校實驗室和公司生產環境等場景的使用。歡迎通過shanshu.ai/copt申請免費的個人試用版本。如需試用服務器版、浮動授權或計算集群版本,請與我們取得聯系coptsales@shanshu.ai。
如果您在申請、使用求解器的過程中遇到任何問題,請寫郵件到coptsupport@shanshu.ai或加入COPT求解器QQ群811049651討論。
2024最值錢的物流上市企業是誰?哪些物流企業被看好,哪些被看跌?
1709 閱讀地緣政治重塑下的全球供應鏈:轉型、挑戰與新秩序
1389 閱讀物流供應鏈領域“吸金”不力,但能給投融資事件頒幾個獎
1364 閱讀連續5年的“春節主力軍”,德邦為何如此穩?
1282 閱讀CES 2025:NVIDIA OMNIVERSE驅動的智能倉儲數字孿生革命
1056 閱讀中遠海運回應被美國國防部列入“中國軍事企業”清單
1022 閱讀扎根供應鏈創新25年,一家“耐力長跑型”企業的破局啟示
991 閱讀拼多多引領電商西進:帝王蟹進村,非遺剪紙出山
982 閱讀制造業企業,不要逼物流公司降價了!
858 閱讀滿幫旗下山恩保險經紀2024年聯合保險公司提供9970億元貨運風險兜底
822 閱讀