Clear Filters
Clear Filters

Optimization Problem using fminunc

1 view (last 30 days)
christina
christina on 21 Jan 2019
Edited: christina on 21 Jan 2019
Does anyone know how to solve this problem?
Local minimum possible.
fminunc stopped because it cannot decrease the objective function
along the current search direction.
<stopping criteria details>

Answers (1)

John D'Errico
John D'Errico on 21 Jan 2019
Why is it a problem?
You are trying to minimize a function. fminunc stopped, having told you that is cannot go any further, because it cannot decrease the function from where it stopped. That sounds like success to me. At least, it MIGHt be success.
Does the resulting solution not make sense to you? That might be indicative that you chose poor starting values. Or it might indicate your objective function was written improperly, and you are minimizing the wrong thing.
But we have no real indication there is any problem at all.
  1 Comment
christina
christina on 21 Jan 2019
Edited: christina on 21 Jan 2019
I am writing you my code, as I might give you a better idea about what I am trying to do:
size of A is 576 x 576 and size of F is 1296 x 576.
A is a random matrix and F is some complex matrix.
A = ...;
F = ...;
d0 = ones(n,1)
d = fminunc(@(x)fun(x,A,F),d0)
% Objective function (spectral norm)
function obj = fun(d,A,F)
D = diag(d);
obj = norm(A-F'*D*F,2)
% obj = norm(A-F'*D*F,inf)
end

Sign in to comment.

Products


Release

R2018a

Community Treasure Hunt

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

Start Hunting!