0.23.1版本是进去MindOpt发布的最新版本,实现了Mac M1芯片的兼容使用。目前此版本支持线性规划(LP)、混合整数线性规划(MILP)、半定规划(SDP)问题的求解。目前收到小伙伴反馈最多的一个问题是使用python语言调用MindOpt动态库报错。
问题描述:
python3 mdo_lo_ex1.py
Traceback (most recent call last):
File "mdo_lo_ex1.py", line 24, in <module>
from mindoptpy import *
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/mindoptpy/__init__.py", line 1, in <module>
from .mindoptpy import *
ImportError: dlopen(/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/mindoptpy/mindoptpy.so, 0x0002): tried: '/Users/xjp/mindopt/0.23.1/osx64-aarch/lib/mindoptpy.so' (no such file), '/Users/xjp/mindopt/0.23.1/osx64-aarch/lib/mindoptpy.so' (no such file), '/Users/xjp/mindopt/0.20.2/osx64-x86/lib/mindoptpy.so' (no such file), '/Users/xjp/mindopt/0.20.2/osx64-x86/lib/mindoptpy.so' (no such file), '/Users/xjp/mindopt/0.20.2/osx64-x86/lib/mindoptpy.so' (no such file), '/Users/xjp/mindopt/0.20.2/osx64-x86/lib/mindoptpy.so' (no such file), '/Users/xjp/mindopt/0.20.2/osx64-x86/lib/mindoptpy.so' (no such file), '/Users/xjp/Downloads/ls/0.20.2/osx64-x86/lib/mindoptpy.so' (no such file), '/Users/xjp/Downloads//mindoptpy.so' (no such file), 'wq!/0.20.2/osx64-x86/lib/mindoptpy.so' (no such file), '/Users/xjp/mindopt/0.23.1/osx64-aarch/lib/mindoptpy.so' (no such file), '/Users/xjp/mindopt/0.20.2/osx64-x86/lib/mindoptpy.so' (no such file), '/Users/xjp/mindopt/0.20.2/osx64-x86/lib/mindoptpy.so' (no such file), '/Users/xjp/mindopt/0.20.2/osx64-x86/lib/mindoptpy.so' (no such file), '/Users/xjp/mindopt/0.20.2/osx64-x86/lib/mindoptpy.so' (no such file), '/Users/xjp/mindopt/0.20.2/osx64-x86/lib/mindoptpy.so' (no such file), '/Users/xjp/Downloads/ls/0.20.2/osx64-x86/lib/mindoptpy.so' (no such file), '/Users/xjp/Downloads//mindoptpy.so' (no such file), 'wq!/0.20.2/osx64-x86/lib/mindoptpy.so' (no such file), '/mindoptpy.so' (no such file), '/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/mindoptpy/mindoptpy.so' (mach-o file, but is an incompatible architecture (have (arm64), need (x86_64)))
在这里我们是运行 mdo_lo_ex1.py 文件,这个文件是安装包自带的建模优化线性规划问题的案例。然后运行的时候出现了上面的报错,报错的内容大致是没有找到mindoptpy动态库,然后还返回了一些我们安装包版本以及python版本的信息。
解决方法:
在本文中出现这个错误的原因是因为我们python版本下载错误,下载的是x86版本的,我们可以去python官网重新下载一个。下载地址:https://www.python.org/downloads/macos/
注意下载3.8或者3.9或者3.10的 universal2的版本哦,因为0.23.1版本支持的python版本为3.8-3.10。
重新下载之后记得关闭终端,去lib目录下执行python3 setup.py install哦!
conda下也是可以运行的,但无论是 anaconda 还是 miniconda,下载的时候应该下载 M1版本的。
求解器安装包的发布渠道。请大家:
前往 https://www.aliyun.com/product/ai/opt 来下载求解器软件。
在阿里云上获取免费授权码:
• 请大家迁移到“云鉴权”自助申请licenseKey,配置fl_client.ini。新的“云鉴权”不需要绑定机器ID,只要阿里云账号并联网就好。
关于求解器的使用文档,请参考:https://help.aliyun.com/document_detail/298219.htm
其他联系我们:
钉钉群号:32451444
邮箱地址:solver.damo@list.alibaba-inc.com
更多更新通知:https://solver.damo.alibaba.com
目前我们还有建议反馈奖励活动哦!如果您对于MindOpt有什么更好的建议可以加入钉钉群32451444,快快提出你们的建议领取奖励吧!(带上反馈截图联系群内的 向管理员 即可)