:基因表达式算法(Gene Expression Programming, GEP)在函数挖掘方面有较大的优越性,但容易过早收敛,且很难跳出局部最优解,导致最后的绝对误差较大,为此提出了一种带有余项误差的方法。该方法在当个体陷入局部最优时,将函数值与目标值的误差作为余项,进一步把该余项数据再进行函数挖掘,由此找到的新函数更接近目标值。反复多次用GEP 寻找跟余项数据逼近的函数,再计算新的余项,可让余项的绝对值也就是函数的绝对误差依概率收敛于0。并从理论上证明了这种算法的可行性。通过仿真例,结果表明该方法在降低绝对误差上起到良好的作用。
2000 年Ferreira 提出了一种新的遗传算法——基因表达式编程[1-3]。
它作为一种基于基因型组和表现型组的新型进化算法, 它结合了遗传算法(GA)和遗传规划(GP)的优点。
GEP 的个体是由多个长度固定的基因组成的线性字符串,这些个体在进行计算时被解码 成表达式树(Expression Trees, ET)。
其搜索空间为线性串,其解空间为表达式树,这种搜索空间和解空间分离的特点保证了GEP 的性能优于基本的GA。
从功能上,GEP 和GP 类似,能发现和揭示复杂问题内在的规则。在解决复杂问题时,比传统的GP 效率高2~4个数量级。
我们把GEP 应用到函数挖掘、符号回归、参数优 *基金项目:玉林师范学院青年项目(2009YJQN100)。
Copyright © 2012 Hanspub 221