AlphaEvolve 是專門的 AI 程式碼編寫代理程式,可使用演化方法解決演算法探索、數學搜尋和組合最佳化用途。特別適合用於 NP 完全或 NP 困難最佳化問題。
AlphaEvolve 的主要輸入內容是特定程式設計語言的程式碼區塊,用於定義需要解決的演算法探索或組合搜尋用途。輸入的程式碼應能正常運作,但仍需最佳化,才能符合一組使用者指定評估指標定義的特定全域 (非功能) 效能標準。
代理程式會使用最先進的演化啟發式方法,在所有可能的演算法設計選擇和數學決策變數空間中搜尋,AlphaEvolve 就能找出新程式,逐步提升目標最佳化目標的成效。
AlphaEvolve 會在多個連續世代的候選程式中反覆執行這項啟發式演算法,直到找到符合用途整體效能目標的全新解決方案。

不適合使用 AlphaEvolve 的情況
AlphaEvolve 不適用於下列情況:
- 基本程式碼生成:AlphaEvolve 不是一般用途的開發人員助理 (例如 Gemini CLI 或程式設計助理)。它不會接受純自然語言描述或不完整、無法運作的程式碼,來輸出基準功能程式碼。
- 程式碼檢查和程式碼樣式:AlphaEvolve 不適用於基本程式碼最佳化,例如根據軟體工程最佳做法或標準程式碼檢查清理程式碼。
AlphaEvolve 專為需要創新設計和執行圖的程式碼最佳化情境而設計。這項技術旨在搜尋可能的解決方案,這些解決方案在功能上都正確無誤,但只有部分符合全球效能標準。
最佳化求解器和啟發式演算法的範圍
下表列出 AlphaEvolve 相對傳統最佳化求解器和啟發式演算法的適用範圍。
| 解題工具類別 | 這類求解器通常可解決的問題類型 | 演算法範例 | 是否適用 AlphaEvolve? | AlphaEvolve 差異化功能 |
|---|---|---|---|---|
| 使用連續變數的凸函數最佳化方法 |
|
|
不適合。 現有演算法可提供精確的解決方案,且可能比 AE 更有效。 |
|
| 梯度式方法 |
|
|||
| 數學規劃和正式方法 (即「傳統」或「經典」方法) |
|
|
可能適用。 此外,AE 可用於擴充或調整現有工具。 |
|
| 元啟發式搜尋方法 |
|
|
可能適用。 此外,AE 可用來擴增或調整現有工具。 |
|
| 貝氏最佳化 |
|
|
絕對適用。 | |
| LLM + 採用元啟發式搜尋的代理 |
|
|
絕對適用。 (可做為直接最佳化方法,或用來改善現有的貝氏最佳化方法) |