並行與平行處理

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 秒):並行程度較低時,後續生成作業可直接承接彼此的結果。

並行實驗與有效實驗數量限制

請務必區分計畫層級並行限制和專案層級實驗限制:

  • 程式並行 (concurrency):在 runSettings 中設定 (介於 1 和 30 之間),可控制在單一實驗中同時生成及評估的候選程式數量。
  • 有效實驗數量限制:一項專案在每個位置最多只能同時執行 30 個有效實驗 (STARTED 或 RUNNING)。如果嘗試啟動或繼續進行超過上限的實驗,系統會傳回 RESOURCE_EXHAUSTED 錯誤。如要解決這個問題,請先停止或完成現有的實驗,再開始新的實驗 (修改實驗中的 concurrency 不會變更有效實驗的數量)。