MATLAB: Vary step size for fminunc

fminuncgradientpremature convergencestep size

Is there a way to adaptively update DiffMinChange during execution of fminunc? I ask because I am using fminunc in a problem where it's sometimes converging to the initial point, which is not the minimum, because it does not use a large enough step-size in evaluating the gradient so the function does not appear to change.
I thought it may be possible using an output function, but from what is says here : "Using an output function you can view, but not set, optimization quantities", it appears this may not be the case. Has anyone tried this before, or have any suggestions?
Thanks,
CY

Best Answer

Sorry, no, you cannot set DiffMinChange adaptively. You might want to use the FinDiffRelStep option instead, but I don't know that this will really help.
As the note in the link states, it is hard to know how to set these finite differencing options.
Alan Weiss
MATLAB mathematical toolbox documentation