algorithmicsuperintelligence/openevolve

Open-source implementation of AlphaEvolve

解决的问题

OpenEvolve 实现了算法和代码发现与优化的自动化。它用自主进化的流水线取代了耗时的人工优化过程,使 LLM 无需人类指导即可发现突破性算法、硬件特定优化(如 GPU 内核)以及新颖的数学解法。

工作原理

OpenEvolve 采用结合了 MAP-Elites 和 LLM 的“质量-多样性”进化方法。它在多个“岛屿”中维护多样化的代码候选群体,以防止过早收敛。LLM 集群根据性能和多样性指标生成新的代码迭代。该系统包含一个人工制品侧信道,可将执行错误反馈给 LLM 进行自我修正,并使用确定性种子来确保科学可复现性。

适用对象

  • 性能工程师:寻找人类可能会忽略的硬件特定优化的人员。
  • 算法研究人员:寻求经典数学或计算问题新方法的人员。
  • 科学计算专家:需要自动完成复杂过滤器或方程繁琐调优的用户。
  • 竞赛选手:希望针对单个问题生成多种多样解决方案策略的开发者。

亮点

  • 自主发现:能够将代码从简单的随机搜索进化到最先进的算法(例如:circle packing)。
  • 硬件优化:在 Apple M1 Pro 上实现了 GPU 内核 2.8 倍的加速。
  • 多语言支持:支持 Python、Rust、R 和 Metal 着色器。
  • 质量-多样性进化:使用 MAP-Elites 维护多样化且高性能的解决方案群体。
  • 广泛的 LLM 兼容性:集成了 OpenAI、Google Gemini、Claude Code CLI 以及通过 Ollama/vLLM 连接的本地模型。

相关

  • 项目
  • 项目
  • 项目
  • 项目