I have the function
where I know the , and σ
How can I find the two params x and y that minimize the function which variable is ξ ?

1 件のコメント

Torsten
Torsten 2020 年 4 月 12 日
x = Inf, y finite, but arbitrary minimizes the function.

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

 採用された回答

Thiago Henrique Gomes Lobato
Thiago Henrique Gomes Lobato 2020 年 4 月 12 日
編集済み: Thiago Henrique Gomes Lobato 2020 年 4 月 12 日

0 投票

You can define it as an annonymous function and then call fminsearch to solve it:
e = 5;
xi = [1,2,3,4];
yi = [3,4,5,6];
sigma = 2
fun = @(x,e,xi,yi,sigma) abs(4*e- sum(sqrt( (x(1)-xi).^2-(x(2)-yi).^2 ))/(2*sigma^2));
x0 = [1,1];
[x,fval] = fminsearch(@(x)fun(x,e,xi,yi,sigma),x0)
I changed your function with an abs() function, which I believe it was your intention, otherwise your function has no minimum since it can go to -inf.

3 件のコメント

Nico
Nico 2020 年 4 月 12 日
yeah, it may need an abs() but, why have you added the e = 5 ?
Thiago Henrique Gomes Lobato
Thiago Henrique Gomes Lobato 2020 年 4 月 12 日
I just added random values to all variables to get a result. From your question I understood that you want to find the x and y that minimizes your function for a given e. If you want also to minimize e you can add it to the optimization function as a parameter, although the resulting function will have infinite local minima.
Nico
Nico 2020 年 4 月 13 日
gotcha, everything is working
Thanks

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

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File Exchange で Language Fundamentals についてさらに検索

製品

リリース

R2020a

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by