Find params that minimize function

6 Ansichten (letzte 30 Tage)
Nicola Caldognetto
Nicola Caldognetto am 12 Apr. 2020
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 Kommentar
Torsten
Torsten am 12 Apr. 2020
x = Inf, y finite, but arbitrary minimizes the function.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Thiago Henrique Gomes Lobato
Bearbeitet: Thiago Henrique Gomes Lobato am 12 Apr. 2020
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 Kommentare
Thiago Henrique Gomes Lobato
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.
Nicola Caldognetto
Nicola Caldognetto am 13 Apr. 2020
gotcha, everything is working
Thanks

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Tags

Produkte


Version

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by