CMA-ES 算法

一、算法介绍

CMA-ES是Covariance Matrix Adaptation Evolutionary Strategies的缩写,中文名称是协方差矩阵自适应进化策略,主要用于解决连续优化问题,尤其在病态条件下的连续优化问题。进化策略算法主要作为求解参数优化问题的方法,模仿生物进化原理,假设不论基因发生何种变化,产生的结果(性状)总遵循这零均值,某一方差的高斯分布。注意这里进化策略和遗传算法不同,但是都是进化算法(EAs)的重要变种。

二、算法实现

三、主要特点

1. 使用多变量的正态分布产生新的搜索点

-遵循最大熵原理 
x⃗ i∼m⃗ +σN(0,C) for i = 1, 2, …, λ

2. 基于排序的选择过程

-暗含了不变性, 对于g(f(x))来说具有相同的性能,g是增函数

3. 步长控制使得快速收敛更加便捷

-基于进化路径

4. 协方差矩阵自适应算法增加了成功步长的似然性,可以根据问题规模的数量级改善性能。

-C∝H−1⟺调整变量的类型,由海森矩阵等价成更为简单的协方差矩阵 
-⟺产生一种新的问题表示方法 
-⇒f(x)=g(xTHx)问题简化为g(xTx)

最新文章

  1. R语言拆分字符串
  2. Generate Time Data(财务日期主数据)
  3. mysql日志与备份恢复
  4. 分离EF connectionString里的db连接串
  5. GitHub项目大全
  6. 【转载】利用Unity自带的合图切割功能将合图切割成子图
  7. Create Function
  8. webform工程中aspx页面为何不能调用appcode文件夹下的类(ASP.NET特殊文件夹的用法)
  9. php访问mysql工具类
  10. FluorineFx 播放FLV 时堆棧溢出解决 FluorineFx NetStream.play 并发时,无法全部连接成功的解决办法
  11. 【PyInstaller安装及使用】将py程序转换成exe可执行程序
  12. vim常用操作技巧与配置
  13. “战术竞技类”外挂打击已开始!揭秘腾讯We Test游戏安全服务新动作!
  14. 架构师之路->架构师思维的培养
  15. [Android FrameWork 6.0源码学习] View的重绘过程之WindowManager的addView方法
  16. 查看Chrome密码只需一段代码
  17. java提高(7)---TreeSet--排序
  18. Calendar打印日历
  19. Java导出txt模板——(一)
  20. linux系统管理 基本指令

热门文章

  1. [MySQL Reference Manual] 23 Performance Schema结构
  2. linux 守护程序小记(指定进程不存在则启动 )
  3. java基础算法之快速排序
  4. SVM一点心得体会
  5. 【repost】JavaScript完美运动框架的进阶之旅
  6. [LeetCode] Flatten Binary Tree to Linked List 将二叉树展开成链表
  7. python入门
  8. 【前端积累】常用事件的js公用方法
  9. xamarin.forms uwp app部署到手机移动设备进行测试,真机调试(device portal方式部署)
  10. Jenkins插件安装和系统配置