R语言目标优化

优化目标就是找到比当前解更合适的解。
有些时候我们并不能直接算出最优的解,只能逼近最优解,这就需要进行目标优化。

R语言的优化函数

对于解的搜索,我们可以通过网格搜索,也就是一一尝试解,看当前优还是原解忧。但是效率太低了,不适合大型目标。
R语言提供了封装了主流优化算法的函数:
optim函数

optim(par, fn, gr = NULL, ...,
      method = c("Nelder-Mead", "BFGS", "CG", "L-BFGS-B", "SANN",
                 "Brent"),
      lower = -Inf, upper = Inf,
      control = list(), hessian = FALSE)

optimHess(par, fn, gr = NULL, ..., control = list())

par 是初始值,fn是需要优化的函数。

了解一下从optim函数中得到的返回值:
par:优化的变量值
value:平方误差值
counts:迭代次数
convergence:是否有足够把握找到最优点

另外,可以使用curve()函数画出变化图像。

猜你喜欢

转载自blog.csdn.net/weixin_33851429/article/details/86928411