Fminunc Stopping Critera beyond StepTol and FunTol

조회 수: 1 (최근 30일)
Lorcan Conlon
Lorcan Conlon 2020년 9월 15일
I have a function whos input is a 83 element vector and whos output is a 8x8 matrix. I am tryin to use fminunc to get my output matrix as close as possible to a target matrix which is just a random 8x8 unitary matrix. fminunc is already getting me very close to the desired matrix with the following code:
fun = @(x) sum(sum(abs(Urand-UT([x]))));
x0=randn(83,1);
options = optimoptions('fminunc','Display','Iter','FunctionTolerance',1e-30,'StepTolerance',1e-30,'MaxFunctionEvaluations',1e9,'MaxIter',1e9,'OptimalityTolerance',1e-30);
[x,fval] = fminunc(fun,x0,options);
This generates the target matrix to within 1e-5. However i want to know how I can get even closer. The stop message is
"fminunc stopped because it cannot decrease the objective function along the current search direction."
I assume there is some way which I can make the solver take smaller steps so that the function might decrease just a little bit more. However Ido not know how to do this beyond what i have done in setting the tolerances. Can anyone help with this?

답변 (0개)

카테고리

Help CenterFile Exchange에서 Solver Outputs and Iterative Display에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by