Monday, December 8, 2014

iteration limit reached in robustfit matlab

Warning: Iteration limit reached.
> In stats\private\statrobustfit at 76
  In robustfit at 106

So, I tracked down the robustfit function. In MATLAB 2013a, it is located at:
C:\MATLAB\R2013a\toolbox\stats\stats\private
as statrobustfit.
Around line 70 was the iteration limit set to 50. Changed that to 250. So far my data does not seem to get any improvements by this; but it is here if it could be useful.

iter = 0;
iterlim = 250; % modified from 50
wxrank = xrank;    % rank of weighted version of x
while((iter==0) || any(abs(b-b0) > D*max(abs(b),abs(b0))))
   iter = iter+1;
   if (iter>iterlim)
      warning(message('stats:statrobustfit:IterationLimit'));

No comments: