【问题标题】:CPLEX/DOCPLEX Run Time Problem on Apple SiliconApple Silicon 上的 CPLEX/DOCPLEX 运行时问题
【发布时间】:2022-09-30 20:38:47
【问题描述】:

我在 Apple Macbook (M2 CPU) 上安装了 CPLEX Studio 22.1。 几乎一切似乎都很好:

  • 我可以从/Applications/CPLEX_Studio221/cplex/bin/x86-64_osx/cplex和/Applications/CPLEX_Studio221/cpoptimizer/bin/x86-64_osx/cpoptimizer调用cplex和cpoptimizer交互,也可以成功优化一些mp/cp的例子。
  • 我通过命令安装了python包:cplex和docplex
python /Applications/CPLEX_Studio221/python/setup.py install

它似乎也很好。

  • 我用命令测试了系统 python -m docplex.cp.check_list 并得到以下信息:
Execution environment:
 * System: Darwin, 64bit
 * Python version: 3.10.6, 64 bits (/Users/username/.pyenv/versions/3.10.6/Library/Frameworks/Python.framework/Versions/3.10/bin/python)
 * Docplex version: 2.23.221
 * Optional packages: numpy: 1.23.2, panda: None, matplotlib: 3.5.3
 * Solver agent: local, executable file: \'/Applications/CPLEX_Studio221/cpoptimizer/bin/x86-64_osx/cpoptimizer\'
 * Solver version: 22.1.0.0
No problem found.
  • 然而,当我尝试使用python -m docplex.mp.check_list 时,我得到了
* system is: Darwin 64bit
* Python version 3.10.6, located at: /Users/username/.pyenv/versions/3.10.6/Library/Frameworks/Python.framework/Versions/3.10/bin/python
* docplex is present, version is 2.23.221
* CPLEX library is not available
* pandas is present, version is 1.4.3
Cplex runtime not found, error importing cplex: dlopen(/Users/username/.pyenv/versions/3.10.6/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/cplex-22.1.0.0-py3.10.egg/cplex/_internal/py310_cplex2210.so, 0x0002): tried: \'/Users/username/.pyenv/versions/3.10.6/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/cplex-22.1.0.0-py3.10.egg/cplex/_internal/py310_cplex2210.so\' (mach-o file, but is an incompatible architecture (have (x86_64), need (arm64e)))

* diagnostics: 1
  -- No local installation of CPLEX has been found.

据我所知,docplex.cp.model 在这里工作,但docplex.mp.model 失败,因为在系统上找不到本地 cplex。 变量PYTHONPATH 已设置为/Applications/CPLEX_Studio221/cplex/bin/x86-64_osx/。 我不知道我在安装过程中错过了什么配置。

此外,在尝试运行oplide 时,我仍然遇到一个小问题。它无法执行,但oplrun 工作正常。

    标签: cplex docplex


    【解决方案1】:

    如果您使用的是 Mx Apple cpu,我敢打赌您运行的 python 正在 arm64 模式下运行,这将无法加载基于 intel 的 CPLEX 库。 您应该尝试使用 '''arch -x86_64 python''' 运行它

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-03-02
      • 2021-05-11
      • 1970-01-01
      • 1970-01-01
      • 2023-02-16
      • 2021-10-22
      • 1970-01-01
      • 2019-07-20
      相关资源
      最近更新 更多