Find params that minimize function

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 Comment

x = Inf, y finite, but arbitrary minimizes the function.

Sign in to comment.

 Accepted Answer

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 Comments

yeah, it may need an abs() but, why have you added the e = 5 ?
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.
gotcha, everything is working
Thanks

Sign in to comment.

More Answers (0)

Products

Release

R2020a

Tags

Community Treasure Hunt

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

Start Hunting!