警告 cplexlink1261 使用 Cplex for Matlab:不支持的 Matlab 版本?

Warning cplexlink1261 using Cplex for Matlab: unsupported Matlab verions?

我编写了一个解决混合整数线性问题 (MILP) 的代码。为了尽可能快,我的代码使用 Cplex 函数来求解 MILP,cplexmilpcplexoptimset。 我在 cplexoptimset 上设置的唯一内容是:

 options =cplexoptimset ('Display','off');

比我运行:

x = cplexmilp(var1,var2,var3,var4,var5,var6,var7,var8,var9,var10,var11,var12,options)

当我 运行 代码时,我收到警告:

Warning: The function 'cplexlink1261' returned an mxArray with non-temporary scope
In cplexoptimset/secCplexOptions
In cplexoptimset /setCplexOptions
In cplexoptimset
In cplexoptimset
In myfunction

然而,在这个警告之后,代码保持 运行ning,它为我提供了似乎合理的结果。

上网找答案,发现原因可能是我的Matlab版本2015b不支持cplex

因此,我的问题是:我仍然可以相信从函数中获得的结果吗?我的解决方案是一个包含数千个变量的二进制向量,所以我无法实际检查。尽管如此,我注意到从代码中导出的其他结果与我在使用 cplexmilp 函数之前记录的结果相似。

I surfed the internet looking for an answer, and I found that the reason may be that my Matlab version, 2015b, is not supported for cplex.

是的,没错;不支持您的 MATLAB 版本。请参阅您的 CPLEX 版本(大概是 12.6.1)的 Detailed system requirements

Therefore, my question is: can I still trust the results I get from the function?

不支持,未测试。需要您自担风险使用它。如果您想确定结果,请使用受支持的 MATLAB 版本。我知道这不是一个非常令人满意的答案,但它可能是您能得到的最好的答案。

似乎可以禁用警告(如图所示here),但这并没有改变任何东西。