CVX安装新版本Mosek求解器

在使用连续凸近似(SCA)求解优化问题时遇到了报错

Problem status : ILL_POSED 
Solution status : PRIMAL_ILLPOSED_CER

并且最后给出的结果为NaN。

在CVX论坛中找到一条回答
在这里插入图片描述
具体链接如下:
The status is failed

因为我使用的是CVX自带的Mosek求解器,其版本为9.1。因此考虑也可能是Mosek版本太低的缘故,故重新在Mosek官网下载安装了最新版的Mosek。故在此记录一下安装过程。

Mosek安装

Mosek下载

Mosek的下载网址如下:
Mosek Download

推荐安装Default Installers,只需要选择安装目录即可完成安装。
我选择的安装目录为:D:\Mosek

License申请

Mosek的License申请很简单,大学生可使用学校的邮箱免费获取,基本上申请后几分钟内就能收到邮件。申请链接如下:
License Apply

在申请的时候要选择“Request Personal Academic License”,之后填写相关信息,并在收到的邮件中进行确认即可。
在这里插入图片描述
得到Mosek.lic文件后,将其放到“C:\Users\你的用户名\mosek”目录下(如果没有这个目录,新建一个就好了)。比如说你的用户名为“admin”,则存放的位置为“C:\Users\admin\mosek\mosek.lic”。

到此就完成了Mosek的安装和License的申请,重启电脑后就能够正常使用了。

Matlab设置

添加路径

在环境设置中中点击设置路径,
在这里插入图片描述
在“设置路径”面板中右侧点击“添加并包含子文件夹”,将如下Mosek目录添加进去(两个选择一个添加即可)

<MSKHOME>/10.1/toolbox/r2017a
<MSKHOME>/10.1/toolbox/r2017aom

其中是Mosek安装目录,本例中为"D:\Mosek"。

这两个文件夹的区别在于:

  • 文件夹r2017a会重写MATLAB自带求解线性规划函数linprog 和 二次凸优化函数quadprog
  • 文件夹r2017aom不会重写Matlab自导的函数

CVX设置

首先运行

cvx_setup	

运行结束后,就将Mosek新版本的Solver添加进来了,如果添加失败,请重启计算机后重试。

之后运行

cvx_solver	

就能看到新安装的Mosek求解器了。
在这里插入图片描述

新安装的Mosek求解器Mosek_2和Mosek_3的版本号显示不准确。这是CVX的原因,并不影响实际调用。

Mosek卸载

如果以前安装了Mosek求解器,现在想卸载该版本Mosek。首先需要下载该版本的Mosek求解器的Default Installers安装文件。执行该安装文件,此时选择 Remove 就可以移除该版本的求解器了。
在这里插入图片描述

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zxfeng~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值