Le paramètre concurrency contrôle le nombre de programmes générés et évalués simultanément. Ce paramètre est l'hyperparamètre d'exécution le plus important.
Impact de la simultanéité sur la recherche
n = 1(chaîne séquentielle) : générez un programme, attendez l'évaluation, puis générez le suivant. Chaque génération voit le résultat précédent, ce qui crée une chaîne d'améliorations incrémentales qui se concentre sur un optimum local. Cette approche permet une exploitation très ciblée, mais le débit est le plus lent. Utilisez ce mode pour converger intentionnellement vers une région spécifique.n = 3-12(Sweet spot) : il s'agit de la plage la plus utilisée en pratique, car elle permet d'équilibrer l'exploration et l'exploitation. Plusieurs programmes sont en cours d'exécution simultanément. Par conséquent, certaines générations ne voient pas les derniers résultats, ce qui introduit une diversité naturelle. La base de données évolutive maintient un débit suffisant pour une dynamique de population saine.n = 13-30(exploration élevée) : de nombreux programmes s'exécutent en parallèle. La plupart des générations ne voient pas les résultats des autres. Ce mode est utile pour les problèmes très non convexes avec de nombreux optima locaux où l'exploration large est plus importante que l'exploitation approfondie.n = 23-30(Débit limité ; à éviter) : le backend LLM est limité si vous dépassez 30 générateurs parallèles. Les requêtes sont mises en file d'attente, ce qui augmente la latence par génération. Sauf si vous disposez d'un quota dédié, restez en dessous de 30.
Recommandations
Les recommandations suivantes servent de point de départ pour configurer la simultanéité et le parallélisme pour AlphaEvolve.
| Type de problème | Simultanéité | Explication |
|---|---|---|
| Approche bien comprise, réglage connu | 3–5 | Exploitation ciblée |
| Optimisation générale, taille inconnue au format paysage | 8–12 | Équilibre entre exploration et exploitation |
| Très non convexe, nombreux optima locaux | 15–25 | Exploration large |
| Zoom avant intentionnel sur un optimum local | 1 | Chaîne séquentielle |
Commencez par concurrency=10 et ajustez-le en fonction des indicateurs suivants :
Plateau de score : augmentez la simultanéité pour échapper aux optima locaux.
Évaluations échouant souvent : diminuez la simultanéité pour réduire le gaspillage de ressources de calcul.
Évaluations lentes (plus de cinq minutes) : une simultanéité plus élevée permet de maintenir le pipeline d'évaluation occupé.
Évaluations rapides (moins de 10 secondes) : une simultanéité plus faible permet aux générations successives de s'appuyer directement sur les résultats des autres.