缩略图

解决连续空间优化问题的花朵授粉算法

作者

姚远远

苏州健雄职业技术学院 经济管理学院

摘  要 近几十年来,受自然规律和生物群体智能行为的启发,许多群体智能优化算法被纷纷提出。花朵授粉算法是一种模拟自然界中开花植物自花授粉和异花授粉的生物学特性发展而来的随机全局优化算法。首先分析了该算法的仿生原理及特点,随后求解了函数极值优化问题。仿真结果表明花朵授粉算法的优化性能明显优于遗传算法和粒子群优化算法。

关键词 花朵授粉算法,全局优化,函数优化,自然计算

1 引言

无论是科学技术研究还是工程技术应用,或是在经济、管理、生活的具体实践中,优化现象都普遍存在,优化是个体和系统固有的发展规律。传统的优化方法对优化问题有条件限制,只能求解小规模问题,对于大规模、强约束、非线性等优化问题难以求解或效果不佳。在人类长期的生产和生活实践中,人们惊奇地发现:自然界中许多生态系统和生物体通过自身演化就能比较完美地解决在人类看来高度复杂的优化问题。自然界中这些自适应优化现象不断地启示着人类,“师法自然”理所当然地成为人们解决复杂优化问题的首选方法,借助于从生物系统的研究中获得的灵感,科学家们通过模仿自然世界的内在机制去获取解决复杂优化问题的新方法,并借此解决和攻克了研究中遇到的许多难题。

近几十年来,受自然规律和生物群体智能行为的启发,许多群体智能优化算法被纷纷提出。这些算法在科学计算和工程技术领域中显示出独特的特点和应用效果,受到学术界和工程界的日益关注。自然界中的很多植物通过开花进行传粉授精,从而达到种群延续的目的。从生物进化论的观点来看,花朵授粉其实是植物种类的一个优胜劣汰过程,最优的植物种类可以得到更好地繁殖。通常花粉粒借助传粉媒介如蜜蜂、蝙蝠和鸟类等生物进行异花授粉,当没有可靠的传粉载体时经常发生自花授粉。花朵授粉算法(flower pollination algorithm或flower algorithm),简称FPA,就是一种模拟自然界中开花植物自花授粉和异花授粉的生物学特性发展而来的随机全局优化算法,该算法最早由Yang于2012年提出。本文分析了该算法的仿生原理和特点,结合几个典型的函数极值优化问题给出了花朵授粉算法的具体应用,并将该算法与遗传算法、粒子群优化算法进行了比较。仿真测试结果表明:花朵授粉算法的优化性能明显优于遗传算法和粒子群优化算法。

2 花朵授粉算法的仿生原理

自然界中,大约80%的植物种类属于有花植物。花在植物的进化过程中扮演了重要的角色,开花的最终目的是进行授粉繁殖。花朵授粉过程通常需要借助传粉载体进行花粉粒的传送,实际上,许多花朵和昆虫之间已经共同进化形成专门的合作关系。

根据传粉媒介的不同,自然授粉主要有两种形式:生物传粉和非生物传粉。大约90%的有花植物属于生物传粉,即通过昆虫或动物为媒介进行传粉,可以作为传粉媒介的生物有蜜蜂、蝙蝠和鸟类等。大约10%的有花植物采用非生物传粉,它们借助风力或水力来传送花粉,例如木本植物中的栎、杨、桦木等,以及水生被子植物中的金鱼藻、黑藻、水鳖等。自然界中传粉载体种类繁多,据估计至少有20多万种,蜜蜂就是一个典型代表。经过长期的生物进化,传粉载体与花朵之间形成互为适应的关系,也就是说一些传粉者倾向于拜访某些特定种类的花而绕过其他种类的花。这种互为适应的关系一方面有助于同种植物间最大程度地传粉受精,从而保证其繁殖率的最大化;另一方面,在记忆力有限的条件下能够保证传粉者得到足够的花蜜供给,并使传粉者的学习或探索成本最低。

根据植物的授粉对象不同,可分为自花授粉和异花授粉两类。异花授粉是指一朵花的雌蕊接受另一朵花的花粉;自花授粉是指植物成熟的花粉粒传到同一朵花的柱头上,并能正常地受精结实的过程,如桃花。当没有可靠的传粉载体时经常发生自花授粉。

花朵授粉算法是通过模拟自然界中花朵授粉过程构造出的一类随机搜索算法,体现了自然的择优机制。其仿生原理是:将花粉粒个体映射为搜索空间中的点,将搜索和优化过程模拟成花粉粒个体的自花授粉和异花授粉过程,将求解问题的目标函数值度量成个体所处位置的优劣,将个体的优胜劣汰过程类比为搜索和优化过程中用好的可行解取代较差可行解的迭代过程。和真实的花朵授粉情形相比,算法中假设每朵花只生成一个花粉粒。

3 仿真实验

本文选用了8个经典函数来验证花朵授粉算法(FPA)的性能,并与基本粒子群优化算法(PSO)和遗传算法(GA)进行比较。仿真环境为Windows 7操作系统,处理器主频2.30GHz,CPU Intel(R) Core(TM)i5-2350M,和内存8G,采用MATLAB R2019a实现算法编程。各算法的相关参数设置如表1所示。

从测试结果可以看出,对于所选取的任意一个测试函数,FPA都可以达到80%以上的寻优成功率,其中有两个函数的测试中达到100%的寻优率,寻优效果总体较好。从测试平均值和标准差两项指标可发现,在解稳定性方面FPA远远优于PSO和GA算法,其标准差几乎都接近于0。

通过对上述3种群体智能优化算法性能的比较分析可以得出以下结论:第一,虽然FPA和PSO对测试函数均收敛到了最优解,但FPA的寻优率和解稳定性明显优于PSO算法;第二,PSO对函数问题的优化效果总体上比GA好;第三,综合来看,在相同维数和种群规模条件下,FPA在寻优精度、寻优率和收敛速度方面均优于PSO、GA算法,在多数情况下以较小的种群规模和较少的迭代次数就可以获得满意的解,FPA能够高效搜索,提高收敛速度避免算法陷入局部极值,防止早熟发生,具有更好的全局寻优能力和解稳定性,更好的求解精度和较快的收敛速度。

4 结束语

本文对花朵授粉算法进行了理论分析,该算法吸收了自然界中开花植物自花授粉和异花授粉的生物学特性,利用进化的方式来实现智能体的行为以达到优化的目的。算法参数少且简单,具有更好的通用性和本质并行性。通过对函数极值优化问题的仿真测试,结果表明花朵授粉算法能够高效搜索,提高收敛速度避免算法陷入局部极值,防止早熟发生,同时具有更好的全局寻优能力和解稳定性,更好的求解精度和较快的收敛速。由于花朵授粉算法优化理论和应用研究还处于初始阶段,许多问题还有待于人们不断地探索和解决。

参考文献

[1] Kennedy, J., Eberhart, R.C. Particle swarm optimization: In Proceedings of the 1995 IEEE International Conference on Neural Networks[C]. Piscataway, NJ: IEEE Service Center, 1995: 1942-1948.

[2] Yang X S. Flower pollination algorithm for global optimization[M]//Unconventional Computation and Natural Computation. Springer Berlin Heidelberg, 2012: 240-249.

[3] Yang Xin-She. Nature-Inspired Metaheuristic Algorithms[M]. 2nd Edition. Frome: Luniver Press, 2010:16.

[4] 刘长平, 叶春明. 一种新颖的仿生群智能优化算法:萤火虫算法[J]. 计算机应用研究, 2011, 28(9): 3295-3297.