ortools解决tsp_Ortools调用第三方求解器

本文介绍了如何使用ortools结合第三方求解器GLPK, CPLEX和SCIP解决旅行商问题(TSP)。GLPK是GNU的线性规划工具包,免费且不限制使用。CPLEX是IBM的商业求解器,适用于多种优化问题。SCIP支持混合整数非线性规划。文章详细阐述了每个求解器的安装过程,以及ortools源码编译以调用这些求解器的方法,强调了可能遇到的坑和解决办法。" 118897788,11217760,JAX:NumPy 的加速版,带自动微分,"['编程语言', 'numpy', '机器学习', '深度学习', '自动微分', 'GPU加速']
摘要由CSDN通过智能技术生成

背景ortools在求解MIP问题时默认使用CBC求解器,但支持调用第三方求解器:GLPK、Gurobi、CPLE和SCIP,调用第三方求解器时需要单独安装,同时ortools源码编译。

很多人遇到CBC求解器不能求得最优解的情况,实际上默认求解器是基于启发式求解的,如果仍然使用ortools进行建模,需要调用第三方求解器。

网上几乎没有介绍如何利用ortools调用第三方求解器,各种第三方求解器安装方法比较繁琐,按照官方介绍的步骤踩了超级多的坑才形成本文(按照我的步骤,绝对没问题)。

即使默认求解器能够求得最优解,你也可以尝试第三方求解器(快的飞起)。

GLPK求解器GLPK (GNU Linear Programming Kit) 是 GNU 项目开发并维护的一个线性规划工具包,用于建立大规模线性规划LP和混合型整数规划MIP问题,并对模型进行最优化求解。由于是GNU下的项目,因此没有商业非商业的版本限制,可以自由使用。

tar -xzvf glpk-4.60.tar.gz

cd glpk-4.60

configure --prefix=你的路径/glpk (记住路径很重要,是安装的第一层路径,默认在usr/local,求解器glpsol在bin目录下)

make

make install

CPLEX求解器CPLEX 是 IBM 开发的一个商用线性规划求解器。该软件具有执行速度快、其自带的语言简单易懂、并且与众多优化软件及语言兼容(与C++,JAVA,EXCEL,Matlab,Python等都有接口)。

支持求解求解线性规划(LP)、二次规划(QP)、带约束的二次规划(QCQP)、二阶锥

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值