在我的电脑上,我使用R2014a,我的脚本运行正常。我大学的模拟服务器运行R2012a,运行我的脚本时出错。
这是错误:
警告:默认的信任区域反射算法无法解决 您指定的约束的问题。 FMINCON将使用 相反,有效集算法。有关适用的信息 算法,请参阅文档中的选择算法。
使用svd输入到SVD时出错不得包含NaN或Inf。
pinv出错(第29行)[U,S,V] = svd(A,0);
qpsub中的错误(第463行) projSD = pinv(projH)*( - Zgf);
nlconst中的错误(第619行) [SD,lambda,exitflagqp,outputqp,howqp,ACTIND] ......
fmincon出错(第794行) [X,FVAL,LAMBDA,EXITFLAG,OUTPUT GRAD,粗麻布] = ...
simulation_coop中的错误(第85行) [q,fval] = fmincon(neg_aux_fun,q0,[],[],[],[],[],ub,@(q)约束(q,a_t,b_t,W,p_cell_lin,ss_lin, h_cell2bs(:,:,N), h_trans2bs(:,:,n),rate),options);
使用R2014a,我既没有警告也没有错误。所以你知道问题可能是什么吗?
答案 0 :(得分:3)
这个答案更像是一个方法:
首先,检查您是否在完全相同的数据上运行脚本。不同的数据(类型,大小,值)可能会产生不同的结果。
查看优化工具箱的发行说明。如果R2012a和R2014a之间有任何重大变化,您可以在R2012b,R2013a,R2013b或R2014b版本的工具箱的一个/几个发行说明中找到这些变化。以下是列表:http://de.mathworks.com/help/optim/release-notes.html
稍后修改
正如您在上面链接的页面中看到的那样,R2012b更改了fmincon
的默认算法。