Evolutionary Computation (EC), drawing inspiration from natural evolutionary processes, has solidified its place as an integral facet of Artificial Intelligence. Its unique attributes, such as adaptability and the capability to navigate vast problem spaces, have rendered it indispensable, especially in domains demanding optimization like engineering design. In today's data-driven landscape, the need for scalability in EC is more pronounced than ever, especially with the rise in complex systems and large-scale data. However, many existing EC libraries, designed for modest scales, fall short in catering to the heightened demands of modern problems. The advent of some pioneering GPU-accelerated EC libraries is a step forward, but they too grapple with limitations, particularly in terms of flexibility, computational efficiency, and architectural robustness. To address these challenges, this paper introduces EvoX: a comprehensive, scalable framework tailored for the automated, distributed, and heterogeneous execution of EC algorithms. Central to EvoX is a functional programming model that streamlines the EC algorithm development process, bolstered by a hierarchical state management strategy for efficient distributed execution. Alongside this, leveraging the capabilities of EvoX, we present a rich library of EC algorithms designed to handle a spectrum of problem-solving scenarios. Experimental results demonstrate both the superior system performance and model performance of EvoX. The code of EvoX is available at https://github.com/EMI-Group/EvoX.
翻译:进化计算(Evolutionary Computation, EC)受自然进化过程启发,已成为人工智能领域不可或缺的组成部分。其独特属性,如适应性和探索广阔问题空间的能力,使其在工程优化等亟需优化的领域中不可替代。在当今数据驱动的背景下,尤其是随着复杂系统和大规模数据的兴起,对进化计算可扩展性的需求比以往更为迫切。然而,许多现有进化计算库仅针对适度规模设计,难以满足现代问题日益增长的需求。尽管部分开创性的GPU加速进化计算库已迈出重要一步,但它们仍面临限制,尤其在灵活性、计算效率及架构鲁棒性方面。为应对这些挑战,本文提出EvoX:一个专为进化计算算法的自动化、分布式及异构执行而设计的全面可扩展框架。EvoX的核心是一种函数式编程模型,通过分层状态管理策略支持高效的分布式执行,简化了进化计算算法的开发流程。此外,基于EvoX的能力,我们提供了一套丰富的进化计算算法库,旨在处理多种问题求解场景。实验结果表明,EvoX在系统性能与模型性能方面均表现出色。EvoX的代码已开源至https://github.com/EMI-Group/EvoX。