我知道fminsearch函数,但它似乎只能解决一个变量。
如果我的函数看起来像f(x,y,z)并且我想找到给出最低结果的x,y,z的值,我将如何在MatLab中执行此操作? f的复杂性会使计算偏导数变得不合理。
任何帮助将不胜感激,谢谢!
答案 0 :(得分:8)
fminsearch是多变量的,例如:
a = fminsearch(@(x)((x(1)-1)^2+(x(2)-2)^2), [0,0]);
传递给目标函数的参数可以是向量,只需确保将x0参数(fminsearch中的第二个参数)指定为正确的大小。