草庐IT

Nelder-Mead

全部标签

非梯度类启发式搜索算法:Nelder Mead

算法介绍Hello,今天给大家介绍一种不基于梯度的优化算法NelderMead。NelderMead 算法通常是用来求解非线性(nonlinear)、导函数未知情况下目标函数的最大值或者最小值。学过梯度下降的同学应该知道,梯度下降类算法的每一步都需要计算当前位置的梯度,从而更新当前解使得最终逐渐逼近最优解。但在某一些情况下,目标函数的梯度难以求得或是函数值离散的情况下,这时候便无法直接使用梯度类算法来求解了。NelderMead算法的思想十分简单,它本质上是受空间中Simplex各个顶点之间关系所启发而迭代优化的一类算法。在经过多次迭代后,算法逐渐收敛到最优解。NelderMead是说,我既然

c++ - boost 库中的 Nelder-Mead 算法

我想知道Nelder-Mead算法是否在c++boost库中实现,例如toms748_solve。我在文档中找不到它,在我自己实现代码之前我会问你。非常感谢。 最佳答案 我发现变形虫(Nelder-Meadedownhillsimplex)算法是由vnl库(http://public.kitware.com/vxl/doc/release/core/vnl/html/classvnl__amoeba.html#details)实现的,所以我打算使用这个库而不是boost。我知道我一直在使用boost::math库寻找这个算法的实现,