用Yalmip中的sdpsettings()函数设置mosek参数提示参数无法识别的解决方法

我用的是mosek+Yalmip,有时候需要用Yalmip中的函数sdpsettings()设置mosek的一些参数,但是经常会报错。例如设置最大迭代次数参数’MSK_IPAR_INTPNT_MAX_ITERATIONS‘为10.按照官方的解决方法是

ops = sdpsettings('solver','mosek','MSK_IPAR_INTPNT_MAX_ITERATIONS',10);
        solvesdp(F,object_fun,ops)

但是这样会报错:

Error using sdpsettings (line 290)
Unrecognized property name 'MSK_IPAR_INTPNT_MAX_ITERATIONS'.

目前的解决方法如下:先设置求解器,然后再用域引用的方式赋值。

ops=sdpsettings
ops.mosek.MSK_IPAR_INTPNT_MAX_ITERATIONS=10

其实,运行ops=sdpsettings之后,你就可以打开ops变量里面的mosek变量,里面显示可所有可以设置的参数。

用Yalmip中的sdpsettings()函数设置mosek参数提示参数无法识别的解决方法_第1张图片

用Yalmip中的sdpsettings()函数设置mosek参数提示参数无法识别的解决方法_第2张图片

你可能感兴趣的:(Matlab)