该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
我的电脑是win7 64位,matlab 2014a,yalmip是2015.9版本。
遇到如下问题:
clc,clear
x=intvar(4,4);
f=sum(sum(x));
st=[zeros(4,4)<=x];
solvesdp(st,f);
x=double(x),double(f)
* Starting YALMIP integer branch & bound.
* Lower solver : LMILAB
* Upper solver : rounder
* Max iterations : 300
Node Upper Gap(%) Lower Open
1 : 1.000E+00 99.90 -0.000E+00 2 Successfully solved
2 : 0.000E+00 0.00 -0.000E+00 3 Successfully solved
+ 2 Finishing. Cost: 0
x =
21938 -12792 3481 -12627
-12792 15164 -10423 8051
3481 -10423 22817 -15875
-12627 8051 -15875 20451
ans =
0
结果很正常,但是如果将x(4,4)改为x(3,4),结果变为:
x =
NaN NaN NaN NaN
NaN NaN NaN NaN
NaN NaN NaN NaN
ans =
NaN
后经反复试验发现,只能求解方阵,不然结果均为NaN。
向吧中大神请教一下原因,谢谢!