用ASP.NET AJAX开发Web程序 -- 入门篇
2.2.遗传编程(GP)简介
1985年由Cramer首次提出,1992由Koza教授将其完善发展。GP是一种全局性概率搜索算法,它的目标是根据问题的概括性描述自动产生解决该问题的计算机程序。GP吸取了遗传算法(GA)的思想和达尔文自然选择法则,将GA的线性定长染色体结构改变为递归的非定长结构。这使得GP比GA更加强大,应用领域更广。
GP的应用现状
(1)机器人路径规划
(2)响应agent
(3)预测和分类
(4)图像和信号处理
(5)数据挖掘
(6)信息检索
(7)进化硬件
(8)电子电路设计
GP的算法框架
Step1:随机产生初始化种群;
Step2:计算种群中个体的适应度值;
Step3:执行复制、交叉以及变异操作,产生新一代种群;
Step4:计算新种群中每个个体的适应度值;
Step5:当满足条件时,输出适应度值最优的个体,否则,转到Step3继续执行;
GP总结
(1)在只有问题的概括性描述而没有解决问题的具体算法细节的情况下自动解决问题;
(2)全局的(基于群体)、并行的(从群体到群体)、概率性(非确定的)的搜索,增大了发现优秀的解决方案的可能性;
(3)个体(解析树)既是基因型又是表现型,由整棵树构成问题解得表达方式不够简单灵活;
(4)所有的遗传操作都是直接在树上进行,为了产生有效的结构,不得不受诸多的语义限制;
(5)初始种群数量大(几百个),由于GP的遗传操作不能很好的产生新个体;
0
相关文章