フィルターのクリア

How can I do this L1 integral minimization?

2 ビュー (過去 30 日間)
Sijie Huang
Sijie Huang 2018 年 10 月 29 日
編集済み: Bruno Luong 2018 年 10 月 30 日
Greetings,
I have the following integral
where kdx = [pi/16, pi/2], and
I want to minimize the integral above and solving corresponding a_j. But I have no clue how do to it. Can anyone give me some hint?
Thanks.

回答 (2 件)

Bruno Luong
Bruno Luong 2018 年 10 月 29 日
編集済み: Bruno Luong 2018 年 10 月 29 日
The problem of linear L1 fit (your case); meaning
argmin_x | M*x - y |_l1
argmin sum abs(M*x - y)
can be reformulated and solved by linear programming (opt toolbox required) using slack variables trick as following
n = length(y);
Aeq = [M speye(n) -speye(n)];
Aeqpr=nonzeros(Aeq);
beq = y(:);
c = [zeros(1,size(M,2)) ones(1,2*n)];
LB = [-inf(1,size(M,2)) zeros(1,2*n)];
UB = [];
c = c(:);
LB = LB(:);
UB = UB(:);
x0 = zeros(size(c)); % guess vector
[sol, f, exitflag] = linprog(c,[],[], Aeq, beq, LB, UB, x0);
x = sol(1:size(M,2));
You just need to build M with sin(k*j*dx) and log(dx).
  8 件のコメント
Sijie Huang
Sijie Huang 2018 年 10 月 30 日
Oh, I see. Sorry I didn't understand your subscript _l1.
Bruno Luong
Bruno Luong 2018 年 10 月 30 日
編集済み: Bruno Luong 2018 年 10 月 30 日
I don't know how to type a curly "l" (lowercase L), which is the right notation.

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


Matt J
Matt J 2018 年 10 月 30 日

カテゴリ

Help Center および File ExchangeProblem-Based Optimization Setup についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by