Find params that minimize function

5 次查看(过去 30 天)
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 ξ ?

采纳的回答

Thiago Henrique Gomes Lobato
编辑:Thiago Henrique Gomes Lobato 2020-4-12
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 个评论
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.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Solver Outputs and Iterative Display 的更多信息

标签

产品


版本

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by