Find params that minimize function
4 次查看(过去 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
2020-4-12
编辑:Thiago Henrique Gomes Lobato
2020-4-12
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
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.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Particle Swarm 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!