GEP
菜芽地
回归
展开
-
GEP程序(C#语言描述)分析(一)
GEP(基因表达式程序算法)是遗传算法的一个分支。由于该算法尚处于研究阶段。所以除了发明者本人,没有其他作者写过相关的书籍。本人用c#语言。改写了四川大学唐教授的GEP程序(java语言描述)。希望有相同爱好的朋友指点。GEP程序的流程:由流程我们知道:我们首先要做的事情是1、给出函数集合和终止符号集合。2、给出基因结构和种群结构。3、适应性函数。我们先做这三件事情原创 2009-09-14 21:31:00 · 1273 阅读 · 1 评论 -
GEP程序(C#语言描述)分析(四)
以上我们做了一个基本的工作,将函数集合,终结符集合,和适应性函数构造起来了。以下的工作就是如何实现遗传操作。当然一些细节上的工作我们也将处理。 我们再回想一下,我们在前三部分都做了什么工作!一、总结 (1)建筑材料 在第一部分中,我们设置了函数集合和终结符集合。这些是我们GEP算法操作的基本元素。这称为基因表达式编程环境,可以表示成一个二元组,记为原创 2009-09-15 15:14:00 · 1225 阅读 · 2 评论 -
GEP程序(C#语言描述)分析(二)
以下我们将完成第二步!这一部分会涉及到一些数据结构的相关知识“2、确定基因结构与种群结构”GEP基因可能是由一些符号、常量、变量等组成的一个字符串,称为K表达式。一个k表达式称为一个基因。我们说一个染色体是我们的一个个体,他可能是由一个基因组成,也可能是多基因的或者说是一个基因组。我们对基因或基因组的表示使用string类型。仍然使用一个类去处理这个问题。首先定义一些标准接口。原创 2009-09-14 22:01:00 · 909 阅读 · 0 评论 -
GEP程序(C#语言描述)分析(三)
以下我们讨论第三步,也是GEP中最为控制性的一步。如何设置适应性函数。同样首先定义一些标准接口:/** * 适应度函数 根据训练数据的所有值, 计算适应度函数 */public interface Fitness{ /** * 返回该适应度函数返回的最小适应度值 (作为死基因的染色体适应度值) * @return */ double getMinFitness();}原创 2009-09-14 22:21:00 · 948 阅读 · 0 评论