Nelder–Mead method

Nelder–Mead method

声明来源:(结合了wiki和scholarpedia上的内容,外加自己的一点理解。

Link:https://en.wikipedia.org/wiki/Nelder%E2%80%93Mead_method    &&  http://www.scholarpedia.org/article/Nelder-Mead_algorithm)

Nelder–Mead algorithm ( NM算法 )其实是一种非常简单易懂的适用于在线最优化的算法。。。总的来说这个算法有些无脑。。。

收敛速度慢,效果一般般,因为适用范围较广(或者说unconstrained optimization,无固定模型也可以)

核心就是:向着最优的解收敛,不断抛弃更新现有的解

 

简介:

  n维空间中,由n+1个顶点,可以组成“最简单”的图形,叫单纯形。

  NM算法就是先构造一个出师的,包含给定点的单纯形。

  然后使用可能的三种手段(反射,扩展,压缩)去替换函数值最差的顶点。

  在以上三种手段失效的时候,使用收缩。

  知道该单纯形的半径足够的小。

  (半径的定义可以有很多,比如两两点的距离,两两点构成的向量中最大的维度的值,

只要当“半径”趋近与0的时候,该单纯形趋于一个点即可)

 

以下来自wiki:

Nelder–Mead method

x i = x 1 + σ ( x i − x 1 )  for all i  ∈ { 2 , … , n + 1 } {\displaystyle {\textbf {x}}_{i}={\textbf {x}}_{1}+\sigma ({\textbf {x}}_{i}-{\textbf {x}}_{1}){\text{ for all i }}\in \{2,\dots ,n+1\}} . go to step 1.

Nelder–Mead method

理解:

Reflection:以最优点为中心,做最差点的反射点,来达到抛弃最差点的目的。

Expansion:扩大最优点的优势,尝试是否能够得到更优的解。

Contraction:收缩搜索范围。

Shrink:整体向着最优解收缩。

转载于:https://www.cnblogs.com/topW2W/p/5559421.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/108987.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • idea注释模版配置(吐血推荐!!!)[通俗易懂]

    idea注释模版配置(吐血推荐!!!)[通俗易懂]idea注释模版配置idea作为越来越多程序员使用的开发工具,平时的代码注释也非常的关键,下面介绍一下类上注释和方法上注释,方便大家的开发配置,同时也为自己以后配置留一份记录(毕竟每次换环境都需要重新配置一遍)1、新建类的时候自动添加类注释(1)按照上图的提示,找到位置1的FileandCodeTemplates(2)选择右侧的Files选项卡,选择位置2的Class(如果需要设置接口和枚举的注释模版,只需要选择Interface和Enum,按照步骤3配置一下就ok了)(3)在

    2022年9月30日
    0
  • export symbol 与 export symbol gpl

    export symbol 与 export symbol gpl1.EXPORT_SYMBOLEXPORT_SYMBOL(my_pub_func);在预编译阶段会解析为:externvoid*__crc_my_pub_func__attribute__((weak));staticconstunsignedlong__kcrctab_my_pub_func__attribute__((__used__))__attri

    2022年7月12日
    15
  • 第五章 模拟跳转充值界面以及requestCode和resultCode的解释 2.8

    第五章 模拟跳转充值界面以及requestCode和resultCode的解释 2.81.requestCode和resultCoderequestCode:由跳转前的界面定义,通过startActivityForResult()来将定义的intent(同时也代表着要跳转的界面)与

    2022年7月3日
    26
  • python闭包详解_python闭包的使用场景

    python闭包详解_python闭包的使用场景闭包首先了解一下:如果在一个函数的内部定义了另一个函数,外部的我们叫他外函数,内部的我们叫他内函数。在一个外函数中定义了一个内函数,内函数里运用了外函数的临时变量,并且外函数的返回值是内函数的引用

    2022年7月29日
    4
  • Java学习之SpringMVC 拦截器

    Java学习之SpringMVC拦截器0x00前言继续SpringMVC最后一点小内容,后面就该学习如何整合SSM框架了。0x01拦截器拦截器和前面提到的一个过滤器类似,但是他们还是

    2021年12月12日
    45
  • android换机备份,安卓手机备份迁移指南

    android换机备份,安卓手机备份迁移指南原标题:安卓手机备份迁移指南买了新手机,本来是一件非常开心的事情,但是如何将旧手机上的有用信息转移到新手机上,这可是一件让大家很犯愁的事情,今天就跟着小编一起来看看安卓手机的四种转移数据的方法吧。1、一键换机现在很多的手机都有一键换机的功能,能直接将旧手机上的所有数据转移到新手机上,非常的方便。下面我们用小米手机来看看具体的换机操作。首先在小米手机“设置—更多设置”中,找到“一键换机”功能。然后…

    2022年5月22日
    72

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号