Gurobi是由美国 Gurobi Optimization 公司开发新一代大规模优化器。无论在生产制造领域,还是在金融、保险、交通、服务等其他各种领域,当实际问题越来越复杂,问题规模越来越庞大的时候,我们需要一个经过证明可以信赖的大规模优化工具,为我们的决策提供质量保证,为我们增强信心。在理论和实践中,Gurobi 优化工具都被证明是全球性能领先的大规模优化器,具有突出的性价比,可以为客户在开发和实施中极大降低成本。独立第三方优化器评估报告显示,Gurobi 以卓越的性能跻身大规模优化器新领袖地位,成为性价比最为优秀的企业大规模优化器首选。Gurobi 全球用户超过2600家,广泛应用在金融、物流、制造、航空、石油石化、商业服务等多个领域,为智能化决策提供了坚实的基础,成为上千个成熟应用系统的核心优化引擎。
Gurobi 是全局优化器,支持的模型类型包括: (1)连续和混合整数线性问题
(2)凸目标或约束连续和混合整数二次问题
(3)非凸目标或约束连续和混合整数二次问题
(4)含有对数、指数、三角函数、高阶多项式目标或约束,以及任何形式的分段约束的非线性问题
(5)含有绝对值、最大值、最小值、逻辑与或非目标或约束的非线性问题
Gurobi 技术优势: (1)可以求解大规模线性问题,二次型问题和混合整数线性和二次型问题
(2)支持非凸目标和非凸约束的二次优化
(3)支持多目标优化,既可以支持分层多目标优化,让不同目标具备不同的优先级,也可以支持加权组合多目标优化,让不同目标通过权重组合成单一目标。
(4)支持包括SUM, MAX, MIN, AND, OR等广义约束和逻辑约束
(5)支持包括高阶多项式、指数、三角函数等的广义函数约束
(6)问题尺度只受限制于计算机内存容量,不对变量数量和约束数量有限制
(7)采用最新优化技术,充分利用多核处理器优势。支持并行计算
(8)提供了方便轻巧的接口,支持 C++, Java, Python, .Net, Matlab 和R,内存消耗少
(9)支持多种平台,包括 Windows, Linux, Mac OS X
Gurobi 适合的企业: Gurobi 是全球顶尖的商业求解器,可以求解问题的广度和深度居于所有商业优化器领先地位。什么样的企业适合使用Gurobi?
(1)对于运筹学创造价值有深刻认同
(2)对于求解质量有高水平要求
(3)对于投资回报有较高期待
(4)对于项目落地有充分技术保障
(5)对于树立行业领先水平有不懈追求
(6)对于知识产权合规有严格自律
新功能介绍(一)性能提升
Gurobi 10.0在连续问题、整数问题、线性和二次凸问题、二次非凸问题、广义非线性问题等已有领域继续不断提升,以下是平均提升比例。
Gurobi 10.0 比 9.5 的速度提升比例
类型
整体提升
大于100秒的复杂问题提升
LP并发算法
10%
25%
线性混合整数
13%
24%
二次凸目标混合整数
57%
2.4倍
二次凸约束混合整数
28%
88%
非凸二次混合整数
51%
2.6倍
(二)机器学习和运筹优化融合,走向实质性落地
Gurobi 10.0 将是第一个允许将用户的机器学习模型嵌入到数学规划模型中的商业求解器。Gurobi 将在 Github 上建立开源平台,提供将多种主流机器学习软件包训练过的模型嵌入到Gurobi 数学模型中的方法,并且随着用户的反馈,不断进行扩展。链接地址
https://github.com/Gurobi/gurobi-machinelearning/blob/main/README.md (三)求解功能的提升
(1)全面完善Python 矩阵操作接口。在版本10.0中,用户可以定义和使用任何维度的矩阵变量、矩阵表达式、矩阵约束等,支持矩阵变量和常规变量混合操作,快速建立基于矩阵操作的数学模型。
(2)增加了网络单纯形算法(Network Simplex Algorithm),让求解网络规划问题时充分利用网络结构,让求解速度更快。
(3)重新组织了并发LP算法(Concurrent LP Algorithm),更好地利用先进多核的计算机架构和更好地进行内存管理。
(4)增加了基于优化的边界紧缩算法(OBBT,Optimization Based Bound Tightening),显著提升了非线性模型,特别是神经网络模型的求解速度。
(5)完善了QUBO启发式算法,对于 MIQP/MIQCP 有很好的加速作用。
(6)新增逻辑函数广义约束,可以应用在化工、制药、机器学习、统计等领域。
(四)系统架构的提升
(1)Gurobi 10.0 继续强化企业优化资源管理综合平台的角色。运算服务器许可新增了很多仪表盘功能,让任务进展、资源利用、用户使用情况实时记录、图表显示、一目了然。
(2)新增网络许可服务功能,支持管理全球更广泛的容器运行环境,同时也支持常规物理机和虚拟机。
(五)其他效率工具
(1)Gurobi Python 接口更方便容易地利用 Pandas 结构直接创造变量和约束。后续将会开源发布在 Github 上。
(2)允许 .NET 用户直接从 NuGet Server 下载 Gurobi 软件包
(3)新增加了SoftMemLimit 参数,允许用户达到一定内存限度后优雅退出。
本部分内容设定了隐藏,需要回复后才能看到