基因表达式编程(GEP)自学 第【8】天 GEP-ADF

目录

  • 1. 基因表达式编程 GEP-ADF
  • 2. 多基因染色体
  • 3. 自动定义函数(ADF)
    • 3.1 同源异型基因
    • 3.2 多细胞系统

1. 基因表达式编程 GEP-ADF

今天将对GEP-ADF进行一个简单介绍,该内容在前七天的代码实现部分已经实现,目的是补充一些概念
【PS:注意结合前边内容,需要对GEP的基本知识内容认识。今天内容对前7天的补充。】

基因表达式编程(GEP)自学 第【1】天 Python 实现
基因表达式编程(GEP)自学 第【2】天 Python 实现
基因表达式编程(GEP)自学 第【3】天 Python 实现
基因表达式编程(GEP)自学 第【4】天 Python 实现(代码)
基因表达式编程(GEP)自学 第【5】天 Python 实现(代码)
基因表达式编程(GEP)自学 第【6】天 Python 实现(代码)
基因表达式编程(GEP)自学 第【7】天 Python 实现

2. 多基因染色体

基因表达式编程(GEP)自学 第【8】天 GEP-ADF_第1张图片
在之前的几天的学习中,也曾提及到连接函数的作用。若是,将上面3个Sub-ET通过连接符“+”进行连接,从而形成一个更加复杂的表达式树。如图5所示:
基因表达式编程(GEP)自学 第【8】天 GEP-ADF_第2张图片
通过函数符”+“的连接,其最终的表达的复杂程度上升,这样也提高GEP在解决复杂问题的工作效率。

3. 自动定义函数(ADF)

自动定义函数是Koza在遗传编程中作为重用代码的一种方式首次引入的。

3.1 同源异型基因

同型异型基因与传统基因有着完全相同的结构,其构建过程也完全相同。包含头部和尾部。
【PS:具体头部和尾部不清楚的可看之前的相关内容】
如下图,该染色体包含了三个传统基因和一个同源异型基因。传统基因与之前的相同可以编码成三个不同的子表达式树。但不同的是,这些子树将被看作为ADF,并且通过同源异型基因控制发生相互作用。
基因表达式编程(GEP)自学 第【8】天 GEP-ADF_第3张图片
ADF0在同源异型基因的控制下在主程序中被使用两次。而ADF1和ADF2只被调用了一次。同时值得注意的,传统基因头部长度和同源异型基因的长度不一定相同,图中传统基因头部长度h = 3,而同源异型基因头部长度h = 4,并且同源异型基因可以拥有不同与传统基因的函数集,在传统基因的函数集由{+,-,,/,Q}组成,而同源异型基因的函数集由{+,-,,/}组成。

3.2 多细胞系统

同时多细胞系统不仅可以用于单个输出的问题,也可以用于多个输出的问题:
基因表达式编程(GEP)自学 第【8】天 GEP-ADF_第4张图片
如上图可知,该染色体由三个传统基因和两个同源异型基因组成,该染色的表达结果表达在两个不同的细胞中。这些多细胞系统的应用是多种多样的,和多基因系统一样,它们既可以用于只有一个输出的问题,也可以用于有多个输出的问题。在前一种情况下,最佳程序或细胞占个体的适配性;在后一种情况下,每个细胞负责多输出任务中的一个特定方面,如具有多个类别的分类任务。

你可能感兴趣的:(GEP,python)