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 ξ ?
1 件のコメント
採用された回答
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!