使用 PySCIPOpt 使 SCIP 优化在 Azure 应用服务上运行
Getting SCIP Optimization to work on Azure App Service with PySCIPOpt
问题:
根据以下信息,这是在 Azure 上安装 PySCIPOpt 的问题吗?或者在 Azure 上安装 SCIP Optimization Suite 有问题?这实际上是 32 对 64 的问题吗?还是这里还有其他未知因素阻止了这种情况的发生?如何智能诊断根本原因?先谢谢大家!
背景
objective 是通过 python 及其 PySCIPOpt 包部署一个可以使用 SCIP 优化套件解决 IP 问题的网络应用程序。此 Web 应用程序已成功部署到我的本地计算机上。
设置
Azure Web App(免费套餐,Python 3.6.4 x64 扩展):OS 是 Windows(echo %PROCESSOR_ARCHITECTURE%
=> x86
)
SCIP version 4.0.1:(SCIPOptSuite-4.0.1-win32-VS14.exe
) 安装在本地计算机上,Program Files (x86)
中的 copy/pasted 文件夹 /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 `... pyscipopt in d:\home\python364x64\lib\site-packages ... Cython==0.28.2 in d:\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']
您似乎使用了过时版本的 SCIP Opt Suite (4.0.1)。 PySCIPOpt 仅兼容最新版本 5.0.1。我强烈建议您不要使用旧版本的软件包。
您确定您尊重 licensing terms of SCIP 吗?
问题: 根据以下信息,这是在 Azure 上安装 PySCIPOpt 的问题吗?或者在 Azure 上安装 SCIP Optimization Suite 有问题?这实际上是 32 对 64 的问题吗?还是这里还有其他未知因素阻止了这种情况的发生?如何智能诊断根本原因?先谢谢大家!
背景
objective 是通过 python 及其 PySCIPOpt 包部署一个可以使用 SCIP 优化套件解决 IP 问题的网络应用程序。此 Web 应用程序已成功部署到我的本地计算机上。
设置
Azure Web App(免费套餐,Python 3.6.4 x64 扩展):OS 是 Windows(echo %PROCESSOR_ARCHITECTURE%
=> x86
)
SCIP version 4.0.1:(SCIPOptSuite-4.0.1-win32-VS14.exe
) 安装在本地计算机上,Program Files (x86)
中的 copy/pasted 文件夹 /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 `... pyscipopt in d:\home\python364x64\lib\site-packages ... Cython==0.28.2 in d:\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']
您似乎使用了过时版本的 SCIP Opt Suite (4.0.1)。 PySCIPOpt 仅兼容最新版本 5.0.1。我强烈建议您不要使用旧版本的软件包。
您确定您尊重 licensing terms of SCIP 吗?