フィルターのクリア

Solving a Bilinear Optimization Problem

9 ビュー (過去 30 日間)
Royi Avital
Royi Avital 2012 年 8 月 9 日
Hello, I would like to optimize to following expression:
Note: All are matrices.
I'd like to find:
How would you do that in MATLAB?
How would you use 'lsnonlin'?
What would be the analytical Jacobian?
Thank You.
  1 件のコメント
Royi Avital
Royi Avital 2012 年 8 月 9 日
Anyone?!?!

サインインしてコメントする。

採用された回答

Alan Weiss
Alan Weiss 2012 年 8 月 10 日
I am not sure that I understand your notation, such as \|| . \||_F. But if you can write your objective function as a sum of squares, then you can use lsqnonlin. Otherwise, use fminunc.
You need to formulate your problem so there is a single vector or matrix of unknowns, x, that is what you want to vary. For example, if C^2 is M-by-N, and E^2 is N-by-K, then you could write
C2 = reshape(x(1:M*N),M,N);
E2 = reshape(x(M*N+1:end),N,K);
and minimize over a vector x that has MN + NK components.
Because I do not understand your notation, I cannot tell you what the Jacobian might be. You can look here or here for some help on calculating Jacobians.
Good luck,
Alan Weiss
MATLAB mathematical toolbox documentation
  1 件のコメント
Royi Avital
Royi Avital 2012 年 8 月 11 日
Hi, The A _F stands for the Frobenius norm. I could write it as a sum of squares yet 'lsnonlin' takes so much time to solve it and usually terminated prematurely.

サインインしてコメントする。

その他の回答 (0 件)

Community Treasure Hunt

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

Start Hunting!

Translated by