我有一个使用 parfor 的 Matlab 函数,它是这样的:
sbestposition=zeros(8,38);
sbestvalue=zeros(8,1);
matlabpool open 8
parfor i=1:8
[ sbestvalue(i) sbestposition(i,1:i+30)] = pso(lb, ub, s2, i+31, 30,1,2,2 );
end
matlabpool close
sizeofsbestposition
取决于 的值,i
它是(1,31)
wheni=1
和(1,38)
when i=8
;我打算将它们的值保留在一个变量中。
该功能正常工作[ sbestvalue(i) sbestposition(i,:)] = pso(lb, ub, s2, i+31, 30,1,2,2 );
但是当我使用它时,由于尺寸不匹配错误,该功能将无法再次工作。
相反,这里它给出了一个错误
parfor 中的变量 sbestposition 无法分类
我该如何克服呢?
谢谢你。