基因表达式程序设计在宏观经济预测中的应用

2018-02-13 08:41:40鄢靖丰
许昌学院学报 2018年12期

鄢靖丰

(许昌学院 信息工程学院,河南 许昌461000)

Gene Expression Programming,简称GEP[1]是葡萄牙科学家C. Ferreira 在2001年提出的一种新的自适应演化算法,它模拟生物界的自然选择和进化机制,具有自组织、自学习等特征,同时还具有优胜劣汰的自然选择、简单的遗传操作、结构与功能的复杂性等特点.它运用遗传算法[2](Genetic Algorithm, GA)和遗传程序设计[3](Genetic Programming, GP)的基本思想,通过生成计算机程序来解决问题,既吸收了GA和GP的优点:GA个体的固定长度线性串编码,容易进行遗传操作;GP个体的非线性树型表示,可以用来解决复杂的问题.同时又克服了GA和GP的缺点:GA只能解决一些简单问题;而GP过于复杂,不利于进行遗传操作.在GEP中,个体首先被表示成具有固定长度的线性串K-表达式,在计算的时候把K-表达式转换成表达式树.由于GEP利用树来表示计算机程序,因此,可以通过自动生成计算机程序来解决许多问题,如预测、分类、符号回归和图像处理等.

1 GEP算法思路框架与实现过程

图1 算法流程图

GEP求解函数优化与建模问题主要包括GEP个体编码及表示、适应度函数设计、常数创建以及GEP的遗传操作等,算法求解一般问题的思路框架如图1所示.

1.1 算法编码方案

在GEP中,个体是由一个或多个基因组成.基因是由头部和尾部组成,其中头部符号可以从函数集和终止符集中随机选取(其中第一个符号只从函数集中选取);尾部符号只能从终止符集中选取.如果基因的头部长度为h,则尾部长度t可由公式(1)计算得到,

t=h*(n-1)+1 ,

(1)

图2 基因表达树

其中,n表示在……

登录APP查看全文