论文部分内容阅读
当前仿生算法有很多,其中遗传算法的理论研究相比于其他算法比较成熟,早期特别受到大家的关注。遗传算法借鉴进化生物学中个体繁衍遗传、变异和自然选择等生命现象和规律,将这些生命现象通过数学公式表示并利用计算机仿真技术用于解决最优化问题。仿生算法的启发源形式多种多样,而以植物特性为研究对象运用于求解优化问题的算法,还没有广泛的研究热情。模拟植物生长算法通过研究分析植物向光特性及其生长分枝方式并结合形态素浓度的概率随机发生模型而提出的算法。本文重点研究树木在自然界的一些生长分枝特性,光照对树木生长分枝的影响,借鉴树木枝梢向光性生长的形态特征,提出了一种基于树木枝梢生长分枝过程的仿生智能优化算法--生长树算法。自然界的任何生物都要进行生存与繁衍的过程,树木生存的方式是与周围的环境进行能量与物质交换,树木的繁衍则是通过细胞内的分裂,不断地分枝和生成树叶的方式而进行的。树木内在的基因遗传物质和环境共同决定树木的形态结构,遗传物质的继承则保留了原有的生长特性,多变的生存环境则使得树木枝梢改变形态结构。树木生存与繁衍的过程都需要光能量进行光合作用,不断地汲取周围的水、二氧化碳和无机盐等物质才能够生存下去。树木枝梢的向光性,使得枝梢不断的向着光源的方向生长,可以看作一种优化过程,生长树算法就是基于这一优化过程而设计的。将树木枝梢的形态和层次结构抽象地映射成算法的编码,每个末端枝梢看成一个个体,新一代的末端枝梢编码是上一代末端枝梢编码的继承和扩展,通过判断每个可能的新一代个体的生长优势的大小(生长素浓度)生成下一代种群,当算法达到一定的代数时,再加入枝梢编码变形机制,增强算法在解空间的搜索能力从而搜索到全局最优解。生长树算法模拟自然树的生长过程,分为发育期、成长期和衰落期。在发育期中利用单轴分枝方式快速的形成初始种群,进入成长期后对整个枝梢种群筛选出生长素浓度较大的枝梢个体,而且在衰落期加入枝梢变形机制使得算法达到最优。在数学理论的基础上,根据算法的流程特点,结合非齐次马尔科夫链和吸收态马尔科夫模型,证明了生长树算法当编码长度趋近于无穷时依概率收敛。为了验证算法的有效性,利用本算法分别对经典的优化函数进行寻优实验和对常微分方程求解。针对优化函数进行寻优实验,通过一个函数的求解实例详细说明的算法的求解过程及研究过程中枝梢个体生成方式的改进,最终确定了有关问题变量的枝梢个体生成下一代枝梢个体的方式。仿真实验的求解结果与遗传算法、蚁群算法的寻优结果进行对比,实验表明本文提出的算法迭代次数少、收敛速度快、求解精度高,拥有更好的寻优能力。生长树算法借鉴树木枝梢向光特性,抽象的模拟树木的生长分枝方式和层次结构,并加入枝梢变形机制使得算法达到最优,并利用马尔科夫链模型证明算法的依概率收敛性。生长树算法对于求解函数优化问题和常微分方程问题是可行的,对于求解函数优化问题更有效。