matlab中如何使用fminunc进行优化 Lei

首先是给出costFunction, 然后设置参数的优化选项,以及参数的初始值,最后是调用fminunc函数

代码如下:

function [jVal, gradient]=costFunction(theta)
  jVal=(theta(1)-5)^2+(theta(2)-5)^2;
  gradient=zeros(2,1);
  gradient(1)=2*(theta(1)-5);
  gradient(2)=2*(theta(2)-5);
end

options=optimset('GradObj','on','MaxIter',100);
initialTheta=zeros(2,1)
[optTheta, functionVal, exitFlag]=fminunc(@costFunction, initialTheta, options)

原文地址:https://www.cnblogs.com/guolei/p/2666404.html