matlab用模拟退火法求函数f(x,y)=sin(xy)+x^2+y^2的最小值。

急!!在线等!TAT

能解释一下为什么要用模拟退火法吗?

这个函数的最小值直接观察就能看出来在x=y=0处,或者用fminunc也可以求解:
x=fminunc(@(x)sin(x(1)*x(2))+x(1)^2+x(2)^2,[0 0])

当然,用模拟退火算法也很简单,换一下函数即可:
x=simulannealbnd(@(x)sin(x(1)*x(2))+x(1)^2+x(2)^2,[0 0])
温馨提示:答案为网友推荐,仅供参考
相似回答