写点什么

常用运筹学软件整理

用户头像
张利东
关注
发布于: 2020 年 06 月 12 日

1. 问题

最近在折腾运筹学的一些东西。理论学完了肯定是要借助工具,手算的时代已经过去了。那么常用的软件包有哪些呢?

2. 分析

2.1. Excel

把 Excel 排在第一肯定有很多人不服,毕竟这看起来也太不专业了。但就像我们之前说的,讨论工具的鄙视链没有意思。Excel 简单易用,普及范围最广,和其他软件结合也是最方便的。

Excel 求解线性规划、整数规划等需要用到 Solver 工具包,Excel 自带,免费使用。如果想要更强大的工具包,可以考虑其付费升级版Analytic Solver for Excel - solver

上得厅堂下得厨房,功能强大婉约可人,简直就像我的丫头。

2.2. CPLEX

CPLEX是 IBM 出品的一款运筹优化工具包,有免费的社区版。该工具继承了 IBM 软件的一贯的功能强大、使用复杂的特点。CPLEX 算是业界标准,很多公司都会要求会用 CPLEX 的人优先录用。

CPLEX 除了集成开发环境外,还有 Python 接口,可以在 Python 里面直接调用。但它依然继承了 IBM 的一贯风格,文档粗糙,资料少,需要自己啃文档。

哎,这等贵妇人,东哥还是离得远点好。

2.3. Lingo

我们上课用的是LINGO and optimization modeling。这款工具简单小巧,就像小乔一样惹人喜爱。可惜是收费软件,有试用版,但只有半年的试用期。

不爽。就像小乔一样让人可望不可即。

2.4. SciPy

SciPy 里面有优化模块,其中就有线性规划功能。作为普及度最高的 Python 科学计算工具包,不用再额外安装其他工具,的确很爽。但让人不爽的是只有线性规划功能,没有整数优化等其他运筹模块。

可惜,一个邻家妹妹,其他都挺好,就是有点遗憾。

2.5. XPress

XPress 是一款商业运筹软件,已经有三十多年的历史了。它还有免费社区版,真是业界良心。不过刚找到,还没有试用,所以暂不予评价。

不过考虑到其悠久的历史,应该不会差。就像女神贾静雯,啥时候都是赵敏第一。

2.6. Pyomo

Pyomo是 Python 下一款专门的优化工具包,在学界和工业界都有广泛的应用。功能强大,需要一段时间的学习才能应用自如。

和 SciPy 比的话,在运筹优化方面要胜过一筹,毕竟人家是专门干这个。有志在学界发展的可以考虑它。

就像美女大学老师吧。想起当年教古典文学的小龙女了,复旦中文系老师,比我们也就大了几岁,每次她的选修课大家都是得抢的。满屋子坐的都是黑压压的一帮愣头青。

人不疯狂枉少年啊~

3. 总结

今天我们大致聊了聊运筹学的一些工具和软件包。总的来说,运筹学不像统计学或数据分析等流行,所以工具包也相对少点。

不过现有的这些,已经足够我们搞定工作了。

4. 交流

独学而无友则孤陋寡闻。现有「数据与统计科学」微信交流群,内有数据行业资深从业人员、海外博士、硕士等,欢迎对数据科学、数据分析、机器学习、人工智能有兴趣的朋友加入,一起学习讨论。

大家可以扫描下面二维码,添加荔姐微信邀请加入,暗号:机器学习加群。

Lily

5. 扩展

5.1. 延伸阅读

  1. 一文道尽 Excel 的 Criterion

5.2. 参考文献

  1. Winston, W. L. (2016) Microsoft Excel 2016: data analysis and business modeling. Redmond, Washington: Microsoft Press.

  2. Hart, W. E. (2017) Pyomo -- optimization modeling in Python. New York, NY: Springer Science+Business Media.



Data2Science

本文使用 mdnice 排版

发布于: 2020 年 06 月 12 日阅读数: 136
用户头像

张利东

关注

运筹学与商业统计硕士 2019.02.13 加入

运筹学与商业统计硕士,擅长数据分析、数据挖掘、机器学习。欢迎关注公众号「统计与数据科学」Data2Science。

评论

发布
暂无评论
常用运筹学软件整理