concurrency 參數可控制要同時產生及評估多少程式。這個參數是影響最大的執行階段超參數。
並行對搜尋的影響
n = 1(連續鏈結):先生成一個程式,等待評估結果,然後生成下一個程式。每一代都會看到先前的結果,進而形成一連串的漸進式改良,逐步找出局部最佳解。這種做法的處理量最低,但最能集中利用資源。使用這個模式可刻意收斂至特定區域。n = 3-12(最佳範圍):這是實務上最常使用的範圍,可平衡探索和開發。多個程式會同時執行,因此部分世代不會看到最新結果,進而產生自然多樣性。演化資料庫可維持足夠的輸送量,確保健康的族群動態。n = 13-30(高探索):許多程式會平行執行。 大多數世代不會看到彼此的結果。對於有許多局部最佳解的高度非凸問題,這個模式非常實用,因為廣泛探索比深入開發更重要。n = 23-30(已節流;請避免):超過 30 個並行產生器會節流 LLM 後端。要求會排隊,導致每次生成作業的延遲時間增加。除非您有專屬配額,否則請維持在 30 以下。
建議
以下建議可做為設定 AlphaEvolve 並行和並列的起點。
| 問題類型 | 並行 | 理由 |
|---|---|---|
| 已充分瞭解,可調整已知方法 | 3 到 5 | 有針對性的利用 |
| 一般最佳化、不明橫向紙張 | 8 到 12 | 平衡探索/開發 |
| 高度非凸,許多局部最佳化 | 15 至 25 | 廣泛探索 |
| 刻意將畫面局部放大到最佳狀態 | 1 | 依序鏈結 |
請先從 concurrency=10 開始,然後根據下列指標進行調整:
分數達到高原期:提高並行上限,擺脫局部最佳化。
許多評估失敗:降低並行程度,減少浪費的運算資源。
評估作業緩慢 (超過 5 分鐘):並行上限較高,導致評估 pipeline 忙碌。
快速評估 (不到 10 秒):降低並行程度可讓後續生成作業直接承接彼此的結果。