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 连接的本地模型。
相关
- 项目
- 项目
- 项目
- 项目