The covariance matrix adaptation evolution strategy (CMA-ES) has been highly effective in black-box continuous optimization, as demonstrated by its success in both benchmark problems and various real-world applications. To address the need for an accessible and powerful tool in this domain, we developed cmaes, a simple and practical Python library for CMA-ES. cmaes is characterized by its simplicity, offering intuitive use and high code readability. This makes it suitable for quick use of CMA-ES, as well as for educational purposes and seamless integration into other libraries. Despite its simple design, cmaes maintains advanced functionality. It incorporates recent advancements in CMA-ES, such as learning rate adaptation for challenging scenarios, transfer learning, mixed-variable optimization, and multi-objective optimization capabilities. These advanced features are accessible through a user-friendly API, ensuring that cmaes can be easily adopted in practical applications. We present cmaes as a strong candidate for a practical Python CMA-ES library aimed at practitioners. The software is available under the MIT license at https://github.com/CyberAgentAILab/cmaes.
翻译:协方差矩阵自适应进化策略(CMA-ES)在黑盒连续优化领域表现出卓越效果,其在基准测试问题与各类实际应用中的成功已得到充分验证。为满足该领域对易用且强大工具的需求,我们开发了cmaes——一个简洁实用的CMA-ES Python库。cmaes以简洁性为核心特征,提供直观的使用方式与高度的代码可读性,既适用于快速部署CMA-ES,也适合教学用途及与其他库的无缝集成。尽管设计简洁,cmaes仍保留了先进功能。它融合了CMA-ES领域的最新进展,包括面向复杂场景的学习率自适应机制、迁移学习、混合变量优化以及多目标优化能力。这些高级功能通过用户友好的API即可调用,确保cmaes能在实际应用中轻松部署。我们将cmaes定位为面向实践者的实用型Python CMA-ES库的有力候选方案。该软件基于MIT许可证发布于https://github.com/CyberAgentAILab/cmaes。