並行與平行處理

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 分鐘):並行程度越高,評估管道就越忙碌。

  • 快速評估 (不到 10 秒):降低並行程度可讓後續生成作業直接承接彼此的結果。