[英]Install SCIP solver on Python3.5 Numberjack (OSX)
我正在學習Python中的Constraint Programming,為了解決這些問題,我應該使用SCIP求解器。 我已經安裝了Github女士的Numberjack標准包,包括Mistral,Mistral2,Toulbar2,MipWrapper,SatWrapper,MiniSat和Walksat求解器。
運行我的代碼我收到以下錯誤:
Traceback (most recent call last):
File "/Users/angelocoelho/anaconda3/lib/python3.5/site-packages/Numberjack/__init__.py", line 910, in load
lib = __import__(solverstring, fromlist=[solverspkg])
ImportError: No module named 'Numberjack.solvers.SCIP'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "grafosdefluxos.py", line 42, in <module>
solver = model.load('SCIP')
File "/Users/angelocoelho/anaconda3/lib/python3.5/site-packages/Numberjack/__init__.py", line 915, in load
solvername)
ImportError: ERROR: Failed during import, wrong module name? (SCIP)
我已經在' scipoptsuite-3.1.0 '和' scip-3.2.1 '中運行了make
,安裝了Numberjack-master的'setup.py'並嘗試了這個:
python setup.py -solver SCIP
女巫歸來了錯誤
Error: the solver 'SCIP' is not known, please use one of: Mistral, SatWrapper, Toulbar2, Walksat, MipWrapper, MiniSat, Mistral2
我在Numberjack文件夾旁邊和里面都有SCIP文件夾。 我閱讀並運行README和INSTALL文件中的所有命令,了解如何配置此解算器,但我無法正確完成。 我怎樣才能獲得SCIP來解決Numberjack中的問題?
在與助理老師交談后,我得到了這個問題的答案。
Numberjack / SCIP的安裝文件夾不是它應該的文件夾,因此它並沒有真正包含在求解器列表中。 在完成python setup.py build
和python setup.py install
安裝后,我運行了python setup.py build -solver SCIP
和終端反饋聲明
Successfully built solver interfaces for MipWrapper, SCIP
但jupyter筆記本沒有認出解算器。
已經安裝了Anaconda(python3.5)的解決方案應該有效:
scipoptsuite-3.1.0.tgz
。 將其粘貼到 Numberjack-master解壓縮目錄中。 它的路徑應該是~/Downloads/Numberjack-master/scipoptsuite-3.1.0.tgz
。 cd ~/Downloads/Numberjack-master
(或你的Numberjack-master目錄路徑)。 然后運行python3.5 setup.py install --user
。
在我的情況Jupyter一直在尋找的求解~/anaconda3/lib/python3.5/site-packages/Numberjack/
和他們沒有被安裝在那里的話,而不是使用python
,我使用python3.5
,因為我的蟒蛇是Python 3.5包。
為什么有scip-3.2.1
目錄? SCIP Opt Suite 3.1.0包含SCIP 3.1.0。 您需要確保完全按照Numberjack安裝頁面上的說明運行所有設置和命令。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.