遗传编程 – 种群初始化算法

有人能提供一些关于遗传编程的种群初始化算法的指导吗?

我已经了解了Grown、Full、Ramped half-half(来自《遗传编程实用指南》)的方法,并且看到了一个新的算法Two Fast Tree-Creation(我还没有阅读这篇论文)。


回答:

初始种群在启发式算法如遗传算法中扮演着重要角色,因为它有助于减少这些算法达到可接受结果所需的时间。此外,它还可能影响进化算法给出的最终答案的质量。(http://arxiv.org/pdf/1406.4518.pdf

正如你所知道的Koza的不同种群方法,你也必须记住,每个使用的算法都不是100%随机的,也不能作为算法使用。因此,你可以预测下一个值会是什么。另一种你可以考虑使用的方法是称为均匀初始化的方法(参考免费PDF《遗传编程实用指南》)。这个方法的理念是,初始创建种群时,由于交叉和选择,几个世代后整个语法树可能会丢失。Langdon(2000)提出了一个称为“渐进均匀分布”的概念,它有效地允许用户指定可能树的大小范围,如果在搜索空间中生成的树的排列不满足大小范围,则无论其适应度评估值如何,该树都会被自动丢弃。从这里开始,渐进均匀分布将根据你使用的范围创建等量的树——所有这些都是你使用的函数和终止值的随机、独特的排列。(同样,参考《遗传编程实用指南》获取更多细节)这种方法在采样所需解决方案不对称而不是对称的情况下(这是渐进半半方法处理的)可能非常有用。

其他推荐的种群初始化读物:http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.50.962&rep=rep1&type=pdf

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

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