0

以前我使用命令conda install -c mosek mosek安装 mosek(我的 IDE 是 VS Code 并使用 anaconda 环境)。安装好之后,我运行了一个凸优化问题的程序,一行代码是(因为我想选择mosek作为求解器):

prob.solve(solver=cp.MOSEK)

然后弹出一个错误:

cvxpy.error.SolverError:未安装求解器MOSEK。

但是我安装了 MOSEK。我使用以下代码进行检测:

import cvxpy as cp

print(cp.installed_solvers())

结果是:

['ECOS', 'ECOS_BB', 'OSQP', 'SCIPY', 'SCS']

为什么会这样?

我使用该conda list命令检查是否安装了 mosek:

相关图片

但我确实安装了它!

我该如何解决?


此外,每次我运行程序时都会弹出此错误:

导入求解器MOSEK遇到意外异常:
ImportError('DLL load failed while importing _msk: 找不到指定的模块。')

4

2 回答 2

0

您是否测试过您的 conda 安装 Mosek 可以在 Cvxpy 之外使用,即直接从 Python 中使用。

于 2022-01-10T08:49:56.033 回答
0

确保您需要的模块安装在当前选择的环境中。打开一个新的集成终端并运行conda list mosek,检查它的位置是否是状态栏中显示的位置:

在此处输入图像描述

于 2022-01-11T09:09:59.693 回答