Memetic Algorithm(文化基因算法)
1. 文化进化理论
威尔逊认为,从性质上来讲,文化进化总是以拉马克主义为特征的,即文化进化依赖于获得性状的传递,相对来说速度比较快;而基因进化是达尔文主义式的,依赖于经过几个世代的基因频率的改变,因而是缓慢的。威尔逊将可供选择的行为划分为分离的单位,称以文化基因。文化基因的传递可以是纯粹遗传的,也可以是纯文化的,此外,还可以通过基因──文化的方式传递,它同时兼有两者的某些特点:一方面,文化的发展在某种程度上要受到基因的制约和指导;另一方面,文化发明的压力又影响着基因的生存,且最终改变着遗传纽带的强度和韧力。人类的文化基因就是以这种方式传递的。(注:拉马克主义 Lamarckism 生物进化学说之一,为法国博物学家拉马克所创立。 认为生物在新环境的直接影响下,习性改变,某些经常使用的器官发达增大,不经常使用的器官则逐渐退化(用进废退),并认为这样获得的后天性状可传给后代,使生物逐渐演变,且认为适应是生物进化的主要过程。)
2.文化基因算法的思想
3.文化基因算法的实现
Pablo Moscato提出了一种基于竞争式作为文化基因算法的一个例子:对于一个给定的优化问题,可以先确定一定数量的初始个体,这些个体的状态可以是随机的,也可以根据某个启发式机制来确定,随后对每个个体都进行局部搜索,通过局部搜索提高个体适应度使种群达到一定的预备状后,就可以进行个体与个体之间的相互操作,这种相互作用可以是相互竞争,也可以是相互协作。相互竞争的操作类似于遗传算法中的个体选择过程,相互协作行为可以理解为遗传算法中的交叉机制或者其他产生新个体的方法,也可以更概括性的理解为信息的交换过程。局部搜索、竞争、协作操作都是循环进行的,知道满足终止条件。
参考文献: 刘漫丹。文化基因算法(Memetic Algorithm)研究进展[J]. 控制理论与应用。《自动化技术与应用》2007 年第 26 卷 第 11 期
Memetic Algorithm(文化基因算法)的更多相关文章
- Moore majority vote algorithm(摩尔投票算法)
Boyer-Moore majority vote algorithm(摩尔投票算法) 简介 Boyer-Moore majority vote algorithm(摩尔投票算法)是一种在线性时间O( ...
- 神经网络(9)--如何求参数: backpropagation algorithm(反向传播算法)
Backpropagation algorithm(反向传播算法) Θij(l) is a real number. Forward propagation 上图是给出一个training examp ...
- [Algorithm] 群体智能优化算法之粒子群优化算法
同进化算法(见博客<[Evolutionary Algorithm] 进化算法简介>,进化算法是受生物进化机制启发而产生的一系列算法)和人工神经网络算法(Neural Networks,简 ...
- Manacher's Algorithm(马拉车算法)
## 背景 该算法用于求字符串的最长回文子串长度. ## 参考文章 >[最长回文子串——Manacher 算法](https://segmentfault.com/a/1190000003914 ...
- Boyer and Moore Fast majority vote algorithm(快速选举算法)
问题来来自于leetcode上的一道题目,https://leetcode.com/problems/majority-element/,大意是是找出一个数组中,出现次数超过一个半的数字,要求是O(n ...
- algorithm之排序算法--待解决
简述:排序算法,参见http://www.cplusplus.com/reference/algorithm/?kw=algorithm 待解决问题:各种排序算法的实现 /* template < ...
- [Data Structure & Algorithm] 七大查找算法
查找是在大量的信息中寻找一个特定的信息元素,在计算机应用中,查找是常用的基本运算,例如编译程序中符号表的查找.本文简单概括性的介绍了常见的七种查找算法,说是七种,其实二分查找.插值查找以及斐波那契查找 ...
- [Data Structure & Algorithm] 八大排序算法
排序有内部排序和外部排序之分,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存.我们这里说的八大排序算法均为内部排序. 下图为排序 ...
- [Operate System & Algorithm] 页面置换算法
页面置换算法是什么?我们看一下百度百科对页面置换算法给出的定义:在地址映射过程中,若在页面中发现所要访问的页面不在内存中,则产生缺页中断.当发生缺页中断时,如果操作系统内存中没有空闲页面,则操作系统必 ...
随机推荐
- FineUIMvc随笔 - 动态创建表格列
声明:FineUIMvc(基础版)是免费软件,本系列文章适用于基础版. 用户需求 用户希望实现动态创建表格列,在 WebForms 中,我们通过在 Page_Init 中创建列来实现: 但是在 MVC ...
- 每天一个linux命令(49)--diff命令
diff 命令是 Linux 上非常重要的工具,用于比较文件的内容,特别是比较两个版本不同的文件以找到改动的地方.diff 在命令行中打印每一个行的改动.最新版本的diff还支持二进制文件,diff ...
- 自定义view(二)
这里是自定义view(二),上一篇关于自定义view的一些基本知识,比如说自定义view的步骤.会涉及到哪些函数以及如何实现自定义属性,同时实现了一个很基础的自定义控件,一个自定义的计时器,需要看的人 ...
- Yii 2.0 ActiveForm生成表单 ,控制表单label和filed样式,filed一旦报错,前面lable颜色跟着变,看图,帮你解决
需要生成如下图的表单样式,图一:
- Java面试08|Java重要的类和相关的方法
1.深入理解Class类及其中的方法 获取Class类的方法: 1.调用Object类的getClass()方法来得到Class对象,这也是最常见的产生Class对象的方法.2.使用Class类的中静 ...
- 【SSH项目实战三】脚本密钥的批量分发与执行
[SSH项目实战]脚本密钥的批量分发与执行 标签(空格分隔): Linux服务搭建-陈思齐 ---本教学笔记是本人学习和工作生涯中的摘记整理而成,此为初稿(尚有诸多不完善之处),为原创作品,允许转载, ...
- mybatis 使用场景
1.Database design is often a separate function (with separate management) from OO domain design 数据库设 ...
- ICC_lab总结——ICC_lab3:布局
PS:字丑,禁止转载. 做到了ICC workshop的第三个实验,理论与实践相结合,于是,先放一张总结图,这张总结图来自前面的博客,放在这里用来体现理论和实践的联系: 这个就是布局的理论部分,在IC ...
- 多线程爬坑之路-J.U.C.atomic包下的AtomicInteger,AtomicLong等类的源码解析
Atomic原子类:为基本类型的封装类Boolean,Integer,Long,对象引用等提供原子操作. 一.Atomic包下的所有类如下表: 类摘要 AtomicBoolean 可以用原子方式更新的 ...
- python安装paramiko需要的依赖
yum install gcc libffi-devel python-devel openssl-devel -y