CMA-ES 算法
2024-08-29 07:39:39
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)
最新文章
- R语言拆分字符串
- Generate Time Data(财务日期主数据)
- mysql日志与备份恢复
- 分离EF connectionString里的db连接串
- GitHub项目大全
- 【转载】利用Unity自带的合图切割功能将合图切割成子图
- Create Function
- webform工程中aspx页面为何不能调用appcode文件夹下的类(ASP.NET特殊文件夹的用法)
- php访问mysql工具类
- FluorineFx 播放FLV 时堆棧溢出解决 FluorineFx NetStream.play 并发时,无法全部连接成功的解决办法
- 【PyInstaller安装及使用】将py程序转换成exe可执行程序
- vim常用操作技巧与配置
- “战术竞技类”外挂打击已开始!揭秘腾讯We Test游戏安全服务新动作!
- 架构师之路->;架构师思维的培养
- [Android FrameWork 6.0源码学习] View的重绘过程之WindowManager的addView方法
- 查看Chrome密码只需一段代码
- java提高(7)---TreeSet--排序
- Calendar打印日历
- Java导出txt模板——(一)
- linux系统管理 基本指令
热门文章
- [MySQL Reference Manual] 23 Performance Schema结构
- linux 守护程序小记(指定进程不存在则启动 )
- java基础算法之快速排序
- SVM一点心得体会
- 【repost】JavaScript完美运动框架的进阶之旅
- [LeetCode] Flatten Binary Tree to Linked List 将二叉树展开成链表
- python入门
- 【前端积累】常用事件的js公用方法
- xamarin.forms uwp app部署到手机移动设备进行测试,真机调试(device portal方式部署)
- Jenkins插件安装和系统配置