Windows环境下安装pyscipopt(python)
pyscipopt在windows下安装有几个细节需要注意,直接pip install pyscipopt
会报错,报错情况大致有两种:一是SCIP环境变量不对;二是Microsoft Visual C++ 依赖组件缺少。
安装步骤如下:
-
安装SCIPOptSuite
在官网下载安装包,选择对应版本,地址https://www.scipopt/index.php#download
下面Visual C++ Redistributable Packages是包需要的依赖,如果电脑没装需要装一下,如果不知道自己装没有没就继续,如果报错报缺少依赖就回来装一下。
下载完毕后,正常安装,可指定任意文件夹。 -
设置环境变量
右键我的电脑——【属性】——【高级系统设置】——【高级】——【环境变量】——【path】——添加SCIPOptSuite安装路径\bin
(注意:添加bin,因为scip.exe等的求解器在bin里面)
看看自己添加成功否,win+R打开cmd,输入scip.exe
,如果可以打开,说明变量成功添加到路径里了。
-
安装pyscipopt
python通过pyscipopt包来调用安装好的SCIPOptSuite,所以还需要安装pyscipopt,直接pip install pyscipopt==版本号
安装pyscipopt包,建议直接指定版本号,默认的有时候会出错。
- 如果出现报错,注意看是什么,如果缺少依赖则安装相应依赖即可。
Microsoft visual C++ 14.0 is required.
- 如果是版本问题则要注意pyscipopt的版本是否和SCIPOptSuite的版本匹配,匹配关系见https://github/SCIP-Interfaces/PySCIPOpt/blob/master/INSTALL.md
另外一种特殊情况,如果没有指定版本号,即直接pip install pyscipopt
默认的PySCIPOpt包版本不对,就像这样子,所以最好指定版本号。
解决方法:这个时候可以指定一下版本号就好。可能因为SCIPOptSuite 7.0.3是测试版,所以默认的pyscipopt还没有windows的包,这里指定了版本号就好了。一个小问题,需要注意一下。(这小BUG坑了我两个小时)
安装后,在python环境中输入 import pyscipopt 不报错即证明安装成功!
测试代码:
import pyscipopt
from pyscipopt import Model
model = Model("Example")
x = model.addVar("x")
y = model.addVar("y", vtype="INTEGER")
model.setObjective(x + y)
model.addCons(2*x - y*y >= 0)
model.optimize()
sol = model.getBestSol()
print("x: {}".format(sol[x]))
print("y: {}".format(sol[y]))
Windows环境下安装pyscipopt(python)
pyscipopt在windows下安装有几个细节需要注意,直接pip install pyscipopt
会报错,报错情况大致有两种:一是SCIP环境变量不对;二是Microsoft Visual C++ 依赖组件缺少。
安装步骤如下:
-
安装SCIPOptSuite
在官网下载安装包,选择对应版本,地址https://www.scipopt/index.php#download
下面Visual C++ Redistributable Packages是包需要的依赖,如果电脑没装需要装一下,如果不知道自己装没有没就继续,如果报错报缺少依赖就回来装一下。
下载完毕后,正常安装,可指定任意文件夹。 -
设置环境变量
右键我的电脑——【属性】——【高级系统设置】——【高级】——【环境变量】——【path】——添加SCIPOptSuite安装路径\bin
(注意:添加bin,因为scip.exe等的求解器在bin里面)
看看自己添加成功否,win+R打开cmd,输入scip.exe
,如果可以打开,说明变量成功添加到路径里了。
-
安装pyscipopt
python通过pyscipopt包来调用安装好的SCIPOptSuite,所以还需要安装pyscipopt,直接pip install pyscipopt==版本号
安装pyscipopt包,建议直接指定版本号,默认的有时候会出错。
- 如果出现报错,注意看是什么,如果缺少依赖则安装相应依赖即可。
Microsoft visual C++ 14.0 is required.
- 如果是版本问题则要注意pyscipopt的版本是否和SCIPOptSuite的版本匹配,匹配关系见https://github/SCIP-Interfaces/PySCIPOpt/blob/master/INSTALL.md
另外一种特殊情况,如果没有指定版本号,即直接pip install pyscipopt
默认的PySCIPOpt包版本不对,就像这样子,所以最好指定版本号。
解决方法:这个时候可以指定一下版本号就好。可能因为SCIPOptSuite 7.0.3是测试版,所以默认的pyscipopt还没有windows的包,这里指定了版本号就好了。一个小问题,需要注意一下。(这小BUG坑了我两个小时)
安装后,在python环境中输入 import pyscipopt 不报错即证明安装成功!
测试代码:
import pyscipopt
from pyscipopt import Model
model = Model("Example")
x = model.addVar("x")
y = model.addVar("y", vtype="INTEGER")
model.setObjective(x + y)
model.addCons(2*x - y*y >= 0)
model.optimize()
sol = model.getBestSol()
print("x: {}".format(sol[x]))
print("y: {}".format(sol[y]))