问题:给定下面的信息,这是在Azure上安装PySCIPOpt的问题吗?还是与在Azure上安装SCIP优化套件有关?这真的是32比64的问题吗?还是这里还有其他未知数阻止了这一切成为可能?我怎样才能智能地诊断出根本原因?谢谢所有先进的人!
背景
目的是通过python及其PySCIPOpt包部署一个可以使用SCIP优化套件解决IP问题的web应用程序。这个web应用程序已经成功地部署在我的本地机器上。
设置
Azure (免费层,Python3.6.4 x64扩展):操作系统是Windows (echo %PROCESSOR_ARCHITECTURE%
=> x86
)
SCIP版本4.0.1:(SCIPOptSuite-4.0.1-win32-VS14.exe
)安装在本地机器上,并将Program Files (x86)
中的文件夹/SCIPOptSuite 4.0.1
复制/粘贴到Azure上的文件夹D:/home/site/wwwwroot
中。PATH
和SCIPOPTDIR
变量通过.xdt
文件在Azure上更新。在Kudu控制台中测试了scip.exe
,它似乎可以在Azure上工作。
PySCIPOpt:包含在requirements.txt
文件(pyscipopt, Cython==0.28.2
)中,用于应用程序部署。由git push产生的消息..。在d:\home\python364x64\lib\site-包.D中的Cython==0.28.2:\home\python364x64\lib\site-packages
错误消息
D:\home\python364x64\lib\site-packages\pyscipopt\__init__.py in <module>
from pyscipopt.scip import Model
Django Version: 2.0.4
Exception Type: ImportError
**Exception Value: DLL load failed: %1 is not a valid Win32 application.**
Exception Location: D:\home\python364x64\lib\site-packages\pyscipopt\__init__.py in <module>, line 5
Python Executable: D:\home\python364x64\python.exe
Python Version: 3.6.4
Python Path:
['D:\\home\\site\\wwwroot',
'D:\\home\\site\\wwwroot',
'D:\\home\\python364x64\\python36.zip',
'D:\\home\\python364x64\\DLLs',
'D:\\home\\python364x64\\lib',
'D:\\home\\python364x64',
'D:\\home\\python364x64\\lib\\site-packages',
'D:\\home\\site\\wwwroot\\backend',
'C:\\gurobi10\\win32\\python2.5\\lib',
'C:\\gurobi10\\win32\\python2.5\\lib',
'D:\\home\\site\\wwwroot\\backend',
'D:\\home\\site\\wwwroot\\backend']
发布于 2018-06-25 08:08:14
您似乎使用了SCIP (4.0.1)的过时版本。PySCIPOpt只与最新版本5.0.1兼容。我强烈建议您不要使用任何一个软件包的旧版本。
你有没有确保你尊重SCIP的发牌条款
https://stackoverflow.com/questions/50953294
复制