目录
Gurobi
http://www.gurobi.cn/about.asp?id=1
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
CBC
Cbc (Coin-or branch and cut) is an open-source mixed integer linear programming solver written in C++
项目地址 https://github.com/coin-or/Cbc
CPLEX
1988~2020年
CPLEX现在是IBM家的了
box@IBM 网盘地址 https://ibm.ent.box.com/s/p1g0mrjnb0rs6am5evuvndy8f7vsug3t
CPLEX Optimizer 以在C 编程语言中实现的单纯形法命名,尽管今天它
还支持其他类型的数学优化并提供 C 以外的接口。它最初由Robert E. Bixby开发,并于 1988 年由 CPLEX 进行商业销售Optimization Inc. 于 1997 年被ILOG收购,随后 ILOG 于 2009 年 1 月被 IBM 收购。[2] CPLEX 继续由 IBM 积极开发。
SCIP成套优化工具
解决有限制的整数规划程序SCIP
2022年10月仍然在维护
XPRESS
MATLAB
SAS
官网地址 https://www.sas.com/en_us/software/optimization/features-list.html
代数、符号优化建模语言
灵活的代数语法,用于直观的模型制定。
支持透明使用 SAS 功能。
直接调用线性、混合整数线性、二次、非线性、二次曲线、黑盒、约束规划和网络求解器。
支持定制优化算法的快速原型设计,包括支持命名问题和子问题。
使用行业标准的 MPS/QPS 格式输入数据集。
积极的预求解器以减少有效的问题规模。
在一台机器或计算网格上同时解决独立问题。
自动线性化和指标约束。
强大的优化求解器
线性规划求解算法:
原始和对偶单纯形。
筛选。
网络单工。
带交叉的内部点。
并发求解能力。
混合整数线性规划求解算法:
用切割平面进行分支定界。
原始启发式。
冲突搜索。
选项调整。
根节点(LP 松弛)算法选项。
报告最多 K 个最佳整数可行解或最多 K 个最优解。
用于线性规划和混合整数线性规划问题的分解算法(自动 Dantzig-Wolfe),具有用户指定或自动检测的块结构。
二次规划求解算法:内点采用最先进的求解器,专为大规模优化问题量身定制。
非线性规划求解算法:活动集、内点。并发求解能力。非凸问题的多启动算法。
网络优化
诊断和优化算法包括:
连接组件和双连接组件(带有关节点)。
最大集团枚举。
循环枚举。
路径枚举。
传递闭包。
拓扑排序。
最大流量。
最小切割。
最小生成树。
最小成本线性分配。
最低成本的网络流量。
最短路径。
旅行推销员问题。
车辆路线问题。
汇总统计。
可以输入和处理每对节点之间的多个链接。
黑盒优化
解决非线性函数的问题,这些函数可能是非光滑的、不连续的、不可连续可微的,等等。
混合并行算法,包括通用算法、全局 GA 类型启发式算法和模式搜索。多目标优化。
约束编程
使用有限域约束规划解决约束满足问题,包括域缩减/约束传播和搜索策略的选择(前瞻和回溯)。找到一个、几个或所有可行的解决方案。可以选择指定目标函数并找到最佳解决方案(二分搜索方法)。
分布式、可访问和云就绪
优化求解器在 SAS Viya(一个可扩展的分布式内存分析平台)上运行。
跨多个计算节点分布分析和数据任务。
分布式计算特点:
PROC OPTMODEL 中非线性 (NLP) 求解器的多启动选项。
PROC OPTMODEL、PROC OPTMILP 中的分解算法(MILP)。
解决独立优化场景:PROC OPTMODEL 中的 COFOR 循环。
MILP 求解器的并发模式(PROC OPTMODEL、PROC OPTMILP)。
分支定界 MILP 求解器算法(PROC OPTMODEL、PROC OPTMILP)。
PROC OPTMODEL 中的黑盒优化。
PROC OPTNETWORK 中的路径枚举、最短路径和连接组件网络算法。
PROC OPTNETWORK 中网络算法中的 BY-group 处理。
提供对内存中数据的快速、并发、多用户访问。
包括高可用性的容错。
让您可以使用 SAS Viya REST API 将 SAS 分析的强大功能添加到其他应用程序。