Agents Auto-Améliorants : Comment les LLM Révolutionnent le Jeu Settlers of Catan
Nous assistons à l’émergence d’une nouvelle génération d’agents IA auto-améliorants. La dernière innovation dans ce domaine concerne un agent apprenant à jouer à Settlers of Catan. Que demander de plus ?
Qu’est-ce qu’un Agent IA ?
Je sais que tout le monde n’apprécie pas le terme « agents IA ». C’est compréhensible, ce n’est probablement pas la meilleure terminologie, mais en l’absence d’alternative plus précise, nous l’utiliserons ici comme le fait l’étude elle-même. Ces agents sont basés sur une architecture utilisant des grands modèles de langage (LLM). Concrètement, nous prenons un grand modèle de langage et créons autour de lui une structure, une architecture qui lui permet de jouer à des jeux, d’écrire du code, de prendre des notes, etc.
Cette approche est devenue très populaire. C’est essentiellement ce qu’est Alpha Evolve, la grande percée de Google DeepMind. La machine Darwin Goal est également très similaire : un agent de codage auto-améliorant. On peut le considérer comme un grand modèle de langage avec un échafaudage. C’est la même chose pour tous ces LLM qui jouent à Pokémon, Minecraft (comme Voyager AI), ou GPT-4 qui a joué à Minecraft et s’est amélioré en écrivant son propre code. Il s’agit toujours d’un LLM plus un échafaudage, où l’échafaudage représente tout ce que nous lui fournissons pour le rendre plus performant : des outils, la capacité d’écrire du code, de la documentation, etc.
Les résultats de certaines de ces expériences ont été très prometteurs. Ici, nous examinons une approche visant à déterminer si ces agents IA peuvent devenir performants à Settlers of Catan. Voici à quoi ressemble le plateau de jeu : c’est un jeu assez complexe impliquant de la stratégie, des mathématiques, des négociations, etc. Je n’y ai jamais joué personnellement, mais j’ai vu des gens y jouer, et cela semble très intéressant avec beaucoup de profondeur stratégique.
Agents of Change : Des Agents LLM Auto-Évolutifs pour la Planification Stratégique
L’étude s’intitule « Agents of Change: Self-evolving LLM agents for strategic planning » (Agents du Changement : Agents LLM auto-évolutifs pour la planification stratégique). Les chercheurs affirment que les récentes avancées dans les modèles de langage ont permis leur utilisation comme agents autonomes dans diverses tâches. C’est vrai, nous le constatons de plus en plus.
Mais il existe un problème. Les chercheurs expliquent que ces agents continuent à avoir des difficultés à formuler et à maintenir des stratégies cohérentes sur le long terme. Nous voyons souvent des études où ces agents IA sont très performants dès le départ, atteignant un niveau surhumain, mais sur une période suffisamment longue, leur capacité à « suivre le fil » se détériore. C’est cette notion de cohérence à long terme qui fait défaut.
Cette approche est particulièrement intéressante car elle tente de déterminer si ces agents basés sur des grands modèles de langage peuvent s’auto-améliorer lorsqu’ils sont placés dans des environnements qui défient explicitement leurs capacités de planification stratégique. Peuvent-ils créer un échafaudage où ils s’améliorent avec le temps plutôt que de se dégrader ?
Pour ce faire, ils utilisent Settlers of Catan via le framework open source Katanatron. Il s’agit d’un outil Python open source qui permet de simuler et de jouer au jeu. Voici à quoi ressemble l’interface terminal : on peut simuler des parties rapidement avec quatre joueurs.
Une Architecture Multi-Agents
L’objectif est d’évaluer la progression des agents basés sur des LLM, depuis un simple agent de jeu jusqu’à des systèmes capables de réécrire de manière autonome leurs propres prompts et le code de l’agent joueur. Les chercheurs introduisent une structure multi-agents comprenant :
- Un analyseur
- Un chercheur
- Un codeur
- Un joueur
Ces agents travaillent ensemble pour analyser le gameplay, rechercher de nouvelles stratégies et modifier la logique ou le prompt de l’agent.
Cette approche rappelle le Minecraft Voyager de Nvidia, qui était guidé par GPT-4. C’était l’une des études les plus impressionnantes à l’époque, bien avant qu’on ne réalise où tout cela nous menait. L’équipe de chercheurs en IA de Nvidia l’avait publié, et c’était vraiment en avance sur son temps. Maintenant, quelques années plus tard, nous obtenons beaucoup de systèmes similaires à ce framework, mais plus avancés avec des modèles plus sophistiqués.
Ce qui est intéressant, c’est que cette étude a été réalisée avant l’avènement des modèles de vision. À l’époque, les grands modèles de langage étaient uniquement textuels, sans composante visuelle. Ils ne pouvaient pas voir d’images. Tout fonctionnait un peu comme dans Matrix, où l’IA pouvait voir le code. Elle travaillait avec un outil appelé Mineflayer, qui permettait d’écrire du code JavaScript pour interagir avec le jeu. Cela ne donnait que les capacités qu’un joueur aurait normalement – ce n’était pas un mode « dieu » – mais au lieu de devoir cliquer pour miner ou couper du bois, on pouvait créer une petite compétence en JavaScript qui le ferait automatiquement.
Par exemple, voici le code pour combattre un zombie. S’il fonctionnait après avoir été testé dans le monde du jeu, il était ajouté à la bibliothèque de compétences. Ce système a très bien fonctionné et, chose importante, il n’a pas atteint de plateau. Il a continué à s’améliorer constamment.
D’emblée, cette approche semble très prometteuse car nous savons que des méthodes similaires peuvent fonctionner. Les chercheurs affirment qu’en comparant des agents conçus manuellement à ceux développés entièrement par des LLM, ils évaluent l’efficacité avec laquelle ces systèmes peuvent diagnostiquer les échecs et s’adapter au fil du temps. Leurs résultats montrent que les agents auto-évolutifs, particulièrement lorsqu’ils sont alimentés par des modèles comme Claude 3.7 et GPT-4, surpassent les références statiques en adaptant de manière autonome leurs stratégies, en transmettant des comportements exemplaires aux agents de jeu et en démontrant un raisonnement adaptatif sur plusieurs itérations.
Cette approche est similaire à la Darwin Goal Machine, où les chercheurs ont comparé des agents de codage IA créés par des humains à travers l’innovation humaine (quelqu’un qui améliore constamment le code pour améliorer la performance de l’agent dans les tâches de codage) avec un agent de codage IA de base qui s’améliore lui-même via une recherche évolutive. Chaque fois qu’il ajoutait une modification, celle-ci était testée par rapport à un benchmark de codage. Si elle améliorait les performances, cette modification était ajoutée à sa base de code, lui permettant ainsi de s’améliorer.
Settlers of Catan : Un Défi Idéal pour l’IA Stratégique
Settlers of Catan est un excellent exemple de jeu de stratégie multi-agents qui oblige les joueurs à planifier la gestion des ressources, l’expansion et les négociations sur de nombreux tours. Voici un point important : les méthodes traditionnelles d’IA pour les jeux, comme l’apprentissage par renforcement sans LLM, ont atteint des performances surhumaines dans des jeux à information parfaite comme les échecs et le go.
Dans les échecs et le go, vous voyez tout ce qu’il y a à voir. Il n’y a pas de hasard, pas de probabilité, juste le plateau entier et vous pouvez observer où se trouvent toutes les pièces. Avec Catan, vous avez des lancers de dés, donc de la probabilité et une observabilité partielle. Vous n’avez pas toutes les données d’un coup d’œil. Certaines choses vous sont cachées, vous devez deviner ce qui s’y trouve. Cela peut être plus difficile pour l’approche par apprentissage par renforcement. C’est faisable, bien sûr, mais pas aussi simple que pour les jeux à information parfaite comme les échecs.
Quatre Architectures d’Agents
L’étude présente quatre architectures d’agents :
-
L’agent de base : Il mappe une description non structurée de l’état du jeu directement à une action.
-
L’agent structuré : Il reçoit une représentation de l’état du jeu, des actions disponibles et une stratégie de base en langage naturel pour une meilleure analyse et orientation.
Voici un exemple de prompt : « Vous jouez à Settlers of Catan », suivi des règles et d’un guide de compréhension du plateau. Il détaille l’état du jeu, l’état du plateau, le statut du jeu, la route la plus longue, la plus grande armée, les différentes ressources, etc.
Cela semble être un élément crucial, car lorsque ces études fournissent ce type d’information, elles rappellent constamment à l’agent son état avec chaque prompt. Cette approche fonctionne très bien. Minecraft Voyager l’a fait et n’a jamais perdu de vue ce qu’il faisait parce qu’il était constamment rappelé à l’ordre. Des études comme Vending Bench, où l’agent devait gérer une entreprise de distributeurs automatiques, ont montré une dégradation des performances au fil du temps, mais sans ce type de rappel. L’état du « jeu » n’était pas mis à jour à chaque tour, ce qui a conduit les grands modèles de langage à perdre le fil. Ce rappel constant semble donc être essentiel pour faire fonctionner ce type de système.
-
L’évoluteur de prompt : Un agent évoluteur et un agent joueur interagissent pendant jusqu’à 10 itérations pour affiner, tester et évaluer un prompt pour qu’un LLM joue à Catan.
-
L’évoluteur d’agent : Comprenant des rôles d’évoluteur, d’analyseur, de chercheur, de codeur et de joueur, il peut réécrire de manière autonome son code de jeu entre les parties.
Cette approche est très similaire à Minecraft Voyager, où plusieurs agents s’occupent de différentes parties du jeu. L’un joue au jeu, un autre essaie de l’améliorer, un troisième le teste, un autre écrit des descriptions. C’est une approche éprouvée qui semble fonctionner incroyablement bien.
Si vous avez déjà envisagé de créer un agent IA à des fins commerciales ou autres, ces études semblent fournir les recettes pour bien faire les choses. Et certaines études montrent aussi comment ne pas s’y prendre. Jusqu’à présent, celle-ci semble faire tout correctement.
Méthodologie d’Évaluation
Pour tester ces modèles, les chercheurs les comparent au bot heuristique le plus performant de Katanatron dans des parties en tête-à-tête. Il s’agit d’un bot basé sur la logique, une sorte de bot scripté simple, ou comme ils le disent, une IA de recherche alpha-beta, mais pas une IA au sens des grands modèles de langage.
Ils suivent des métriques pertinentes telles que les points de victoire moyens, le nombre de colonies et de villes, la plus grande armée et d’autres indicateurs de développement. Dans Catan, la victoire revient au premier joueur à atteindre 10 points, et on gagne des points pour les colonies, les villes, etc. Chaque tour commence par un lancer de dés qui produit des ressources, et le joueur actif peut échanger et construire. Si un 7 est obtenu, le voleur est activé, bloquant une tuile et volant une ressource.
L’Agent Évoluteur : Le Cœur de l’Auto-Amélioration
L’aspect auto-évolutif de ce système est l’agent évoluteur. Il commence avec un modèle vierge et développe ses capacités au fil du temps. Voici comment fonctionne cette structure :
- L’agent évoluteur : C’est le coordinateur central. Il lit les rapports de l’analyseur.
- L’agent analyseur : Il évalue le gameplay du joueur, identifie les faiblesses et résume les principaux domaines à améliorer, puis transmet ces informations à l’évoluteur.
- L’agent chercheur : Il traite des requêtes spécifiques sur Katanatron et sur la stratégie plus large de Catan, en utilisant l’accès aux fichiers locaux et la recherche web. Il fournit ses résultats de recherche approfondie à l’agent évoluteur. C’est intéressant car ils combinent non seulement un agent qui analyse le gameplay réel, mais aussi un qui peut effectuer des recherches approfondies pour trouver de nouvelles stratégies à essayer. Il fait une recherche web, consulte Reddit pour trouver les meilleures stratégies pour Catan, puis rédige un rapport qu’il remet à l’agent évoluteur. Cette approche est brillante.
- Le stratège : Il suggère des stratégies de jeu de haut niveau ou critique les choix stratégiques passés.
- L’agent codeur : Il traduit les modifications proposées en modifications concrètes du code. Chaque fois, il obtient le code existant, y apporte des modifications, puis produit une nouvelle version avec un résumé de ce qu’il a fait.
- L’agent joueur : C’est l’IA qui joue réellement au jeu et qui s’améliore au fil du temps.
Les données ont été collectées sur un MacBook Pro 2019 16 GB et un MacBook M1 Max 2021 avec 32 GB sur une durée totale de 60 heures. C’est assez accessible si vous vouliez exécuter une expérience similaire. Ce n’est pas hors de portée. Les MacBooks ne sont pas bon marché, mais ils ne coûtent pas non plus des dizaines de milliers d’euros.
Les modèles testés sont GPT-4, Claude 3.7 et Mistral Large. C’est le grand modèle de langage open source de Mistral. Je me demande pourquoi ils n’ont pas utilisé DeepSeek R1, qui est très peu coûteux.
Protocole Expérimental
Les agents de référence jouent 10 parties complètes contre Alpha Beta. Les graines aléatoires sont fixées pour la génération de l’état initial du plateau afin d’assurer la cohérence entre les exécutions. Ils minimisent ainsi la variabilité des jeux entre les exécutions, en essayant de maintenir tout aussi cohérent que possible. Il semble qu’ils fixent principalement la génération de l’état initial du plateau pour ne pas créer un monde complètement nouveau à chaque fois, ce qui pourrait être très différent – l’endroit où vous commencez pourrait avoir un impact énorme.
Ensuite, l’évoluteur de prompt s’exécute sur 10 évolutions, et l’évoluteur d’agent fonctionne de manière similaire à l’évoluteur de prompt. L’un essaie d’améliorer le prompt, l’autre essaie d’améliorer l’agent lui-même.
Résultats : Une Amélioration Spectaculaire
Comment pensez-vous que nos agents LLM se sont comportés ? Ont-ils battu l’alpha-beta heuristique de référence ? Ont-ils pu s’améliorer ? Je suppose qu’ils ont commencé moins bien, mais se sont-ils améliorés avec le temps ? C’est la question.
Voici les résultats pour les performances des agents à travers les modèles (GPT-4, Claude et Mistral Large) :
- Agent de base : Environ 3,6 points pour tous les modèles. C’est l’agent non évolué, non amélioré.
- Agent structuré : Amélioration de 6% pour GPT-4, 11% pour Claude 3.7, mais baisse de 31% pour Mistral Large. Je ne suis pas sûr de la raison de cette baisse. Mistral semble être le moins performant, tandis que Claude 3.7 est le meilleur.
- Évoluteur de prompt : Augmentation de 22% pour GPT-4, 95% pour Claude 3.7. C’est énorme !
- Évoluteur d’agent : Amélioration de 36% pour GPT-4, 40% pour Claude 3.7.
Le point essentiel est que ce système a réussi à améliorer les performances de l’agent en itérant de manière autonome sur les prompts stratégiques. Bien que le degré de succès dépende fortement du modèle utilisé (et nous avons probablement des modèles plus performants maintenant, ou si vous êtes prêt à payer plus), Claude 3.7 a montré les avancées stratégiques les plus significatives, développant systématiquement des prompts stratégiques détaillés qui décrivent des plans clairs à court et à long terme, y compris le placement précis des colonies, la priorisation des ressources, l’utilisation des cartes de développement et des stratégies de réponse robustes contre les actions des adversaires.
Claude 3.7 a donc excellé, avec une amélioration allant jusqu’à 95% par rapport à la référence. GPT-4 était moyen, et Mistral Large était le moins efficace.
La Limitation Principale : Le LLM Sous-Jacent
La plus grande limitation est le LLM sous-jacent : plus le LLM est performant, meilleur est le résultat. C’est ce dont Sam Altman parlait : si vous créez une startup, vous ne voulez pas essayer de corriger quelque chose qui est actuellement défectueux dans l’IA. Vous voulez avoir un système où, plus les modèles s’améliorent, meilleures sont les performances de votre entreprise.
C’est la même chose avec des études comme celle-ci et des systèmes similaires. Imaginez les améliorations que nous constatons maintenant avec ces modèles. Maintenant, projetez-vous quelques années en avant et imaginez ces modèles de nouvelle génération. Si vous les intégrez simplement en gardant tout le reste identique, il est probable que les améliorations que nous avons vues (95% d’amélioration) seront encore plus importantes si nous améliorons uniquement le modèle sous-jacent.
C’est un point important à retenir : ces modèles deviendront meilleurs en auto-amélioration à mesure qu’ils s’améliorent, grandissent et deviennent plus performants. Ils deviendront également meilleurs pour améliorer des systèmes comme ceux-ci de manière autonome.
Un autre point intéressant est qu’ils n’ont effectué que 10 étapes d’évolution. Et comme on peut le voir, surtout avec Claude 3.7, notre meilleur modèle, il continue à s’améliorer même jusqu’à l’évolution 7. Il atteint un plateau après 7 étapes, bien qu’il puisse s’améliorer davantage si vous continuez. Si vous projetiez 20 ou 30 évolutions supplémentaires, ce n’est pas comme si toutes les améliorations se produisaient au début puis plus rien. Même vers la fin des étapes évolutives, il continue à s’améliorer.
Je me demande comment il se comporterait si on lui accordait plus de temps, plus d’étapes évolutives. Va-t-il simplement stagner de l’étape 7 à 100, ou y aura-t-il des améliorations modestes si on continue ? Évidemment, les chercheurs avaient probablement des limitations en termes de financement. Je ne sais pas combien cela coûterait, mais cela pourrait être assez cher.
Conclusion
C’est un travail absolument phénoménal. J’adore ce projet et je me demande s’il est disponible en open source quelque part, car j’aimerais y jouer. Katanatron, le framework pour Catan, est open source et disponible sur GitHub, donc vous pouvez le télécharger et l’utiliser. Vous pouvez probablement y connecter votre propre API, votre propre grand modèle de langage.
Ceci est un autre exemple de ce que nous appellerions probablement un agent IA capable de s’auto-améliorer de manière récursive. Nous en voyons de plus en plus. La recette pour construire ces systèmes devient plus claire. Nous voyons plus d’exemples, nous commençons à comprendre ce qui fonctionne et ce qui ne fonctionne pas.
C’est une période vraiment passionnante et j’adore le fait qu’ils utilisent des jeux pour démontrer certaines de ces capacités. J’ai hâte de voir où tout cela nous mènera.