Google Colab 中 Pyomo 中用于 MINLP 的 Python 求解器

计算科学 优化 约束优化 线性规划 造型
2021-12-05 01:51:11

我正在寻找与 Pyomo 模型一起使用的 MINLP 求解器,该模型可在 Google Colab 环境中使用。我已经找到了 MindtPy,但它在 google colab 中不起作用。

1个回答

那里有太多的 MINLP 求解器,以至于这并不是一个定义明确的问题。

无论如何,您可以通过以下方式获得一些:

# Install some solvers
# GLPK probably includes GLPK_MI which does MIP
!apt-get install -y -qq glpk-utils  

# CBC does MIP
!apt-get install -y -qq coinor-cbc  

# Ipopt does MINLP
!wget -N -q "https://ampl.com/dl/open/ipopt/ipopt-linux64.zip"
!unzip -o -q ipopt-linux64

# Bonmin does MINLP by mixing CBC and Ipopt
!wget -N -q "https://ampl.com/dl/open/bonmin/bonmin-linux64.zip"
!unzip -o -q bonmin-linux64

# Couenne is another MINLP solver
!wget -N -q "https://ampl.com/dl/open/couenne/couenne-linux64.zip"
!unzip -o -q couenne-linux64

#OSQP is a fast solver for quadratic programs. This makes it available via Python
!pip install osqp

#XPRESS is a commercial solver of many sorts of programs including MIPs. This installs it along with a community license that makes it free, but only for smallish problems
!pip install xpress

完成后,求解器将位于:

glpk      /usr/bin/glpsol
cbc       /usr/bin/cbc
ipopt     /content/ipopt
bonmin    /content/bonmin
couenne   /content/couenne
osqp      available via import in Python
xpress    available via import in Python

可在此处获得对上述某些内容的进一步测试和解释