



进化计算(Evolutionary Computation,EC)作为计算智能领域的一个活跃研究领域,在过去几十年中取得了长足的发展,并被广泛应用于解决复杂的优化问题。进化计算是受自然界生物进化过程的启发,以“物竞天择,适者生存”为选择机制而设计的一类算法集合,主要包括进化算法(Evolutionary Algorithm,EA),如遗传算法(Genetic Algorithm,GA)、遗传规划(Genetic Programming,GP)等,以及群智能(Swarm Intelligence,SI)算法,如蚁群优化(Ant Colony Optimization,ACO)算法、粒子群优化(Particle Swarm Optimization,PSO)算法等。由于具有良好的探索性、自学习、自组织、自适应性等特点,进化计算方法能够有效地解决具有规则或不规则搜索空间的复杂优化问题。然而,随着变量维数的增加,搜索空间呈爆炸式增长,基于迭代式的进化范式会导致进化算法在求解此类大规模复杂优化问题时的计算效率降低,使得传统进化计算方法难以在大规模优化问题中得到有效运用。进化计算方法具有内在并行性,使其天然具有能够和并行分布式计算系统相结合的优势,为提高大规模复杂优化问题的求解效率提供了良机。
随着多处理器系统(Multi-Processor System,MPS)、图形处理单元(Graphical Processing Unit,GPU)、集群(cluster)技术等高性能计算技术的快速发展,大量学者利用进化计算方法的内在并行性,将进化计算方法与高性能计算技术相结合,用以提高进化计算方法在解决大规模复杂优化问题时的效率。这类方法或将进化计算的种群进化过程并行化计算,即将种群中的不同个体或子种群放在不同的处理器或计算节点来计算,称为种群并行;或将待解问题的不同决策维度优化过程并行化计算,即将问题拆分为若干子问题,每个子问题的进化优化过程放在不同的处理器或计算节点来计算,称为维度并行;或将进化计算的进化过程向量化、矩阵化或张量化,从而可采用GPU及众核计算等提升进化计算方法的效率。例如,在种群并行方面,Tan等人利用分布在网络中的计算节点,设计了一种基于种群分布的分布式协同进化算法;在维度并行方面,Jia等人在多处理器系统上提出了一个双层分布式算法,既在维度级别上具有分布式并行性,又在种群级别上具有分布式并行性;在矩阵及张量计算方面,Zhan等人通过将进化计算方法矩阵化,实现了细粒度的基于维度分布的分布式进化算法。这类算法可以在保证算法性能的情况下极大地提高优化效率。此外,并行分布式进化计算方法在工业中也得到应用,例如电磁学、虚拟网络嵌入、车辆路由问题等。
随着大数据时代的到来和物联网的发展,边缘计算、云计算、多智能体系统(Multi-Agent System,MAS)等新型分布式计算技术不断涌现并引起了人们广泛的研究兴趣。在新场景下,大量的信息以分布式的形式生成、收集、处理和存储,但由于高昂的计算成本和有限的存储空间,同时出于对隐私保护的考虑,这些数据难以被聚合到一个数据中心进行共享利用。因此,分布式优化问题应运而生。与上述数据集中、信息可进行全局共享的集中式优化问题不同,在信息分布的分布式优化问题中,算法中的个体对整个问题没有全局信息,不能进行统筹控制,需要通过分布式节点之间的合作进行全局优化。虽然与面向集中式优化问题的并行分布式进化计算相比,面向分布式优化问题的分布式进化计算方法的研究较少,但它正在成为一个有吸引力的研究方向。
综上所述,一方面,进化计算方法与并行计算的结合显著提高了进化计算在大规模优化问题上的效率和可扩展性;另一方面,并行分布式进化计算方法在物联网、多智能体等分布式计算环境下的优化问题中已初步显示出潜力。本书将对并行分布式进化计算进行系统和全面的介绍,具体如下。
首先,本书从两个角度来考虑并行分布式的进化计算方法,包括面向集中式优化问题的并行分布式进化计算方法和面向分布式优化问题的并行分布式进化计算方法两大类。在面向集中式优化问题的并行分布式进化计算方法中,算法的个体或子种群共享相同的内存和数据,其目的通常是利用并行和分布式计算平台来提高优化效率。而在面向分布式优化问题的并行分布式进化计算方法中,算法的个体或子种群有自己的存储器来保存本地数据和信息,它们无法与其他个体或子种群共享记忆,需要通过特定的策略进行合作,以实现全局优化。物联网的蓬勃发展催生出的分布式优化问题已成为并行分布式进化计算方法研究中的一大研究方向,因此,本书将给出该类分布式优化问题的系统定义,包括维度分布式、数据分布式和目标分布式的分布式优化问题,并介绍在这三类优化问题中现有的有关并行分布式进化计算方法的研究。
其次,本书从问题特征、实现环境、通信模型和算法结构这四个部分来阐述并行分布式进化计算方法。在分布式计算环境中,并行分布式进化计算方法的设计应符合分布式优化问题的特点,其中与问题相关的信息,如环境数据、变量维度和问题目标等具有天然的分布式特性。此外,算法优化过程中的问题分解、节点通信、局部优化等具有较强的局部自主性,难以被全局控制。受到集中式和分布式优化问题特征的限制,其优化算法的实现环境各不相同。基于不同的实现环境,通信模型和算法结构在集中式环境和分布式环境中也有所不同。
最后,本书将讨论并行分布式进化计算方法所面临的挑战和该研究领域的前景。分布式计算环境中问题的分布式特征给并行分布式进化计算方法带来了巨大挑战,特别是在理论分析、新型并行分布式基础设施、大数据优化、隐私和安全性等方面。特别地,数据隐私和一致性共识进化对于并行分布式进化计算是全新的挑战,现有的针对集中式优化的并行分布式进化计算方法并没有考虑该类问题。本书对这些挑战进行讨论,并提出有潜力的研究方向,希望能促进并行分布式进化计算的发展。
本书章节设置如下。第1章对进化计算基础方法进行介绍,帮助读者掌握基础的进化计算方法;第2章根据优化问题类型介绍多类求解复杂优化问题的进化计算方法,帮助读者学习进化计算对复杂优化问题的求解;第3章从物理计算环境、实现环境、通信模型、描述与评估几个方面介绍并行分布式进化计算基础,帮助读者了解分布式进化计算的整体实现;第4章介绍了以加速为目标的并行分布式进化计算,包括并行分布式整体演化以及并行分布式协同演化的进化计算方法,使读者能够了解经典的并行分布式进化计算方法;第5章介绍以多智能体协作为目标的并行分布式进化计算方法,包括数据分布、维度分布、目标分布的分布式进化计算方法,为读者展示新型分布式进化计算研究方向;第6章介绍数据安全与隐私保护的并行分布式进化计算,使读者了解大数据环境下并行分布式进化计算隐私保护的动机、需求与方法。