Lune rendue en texte ASCII, avec

Aurich Lawson

Membres du Legendary Computer Bugs Tribunal, honorables invités, si je peux avoir votre attention ? Je voudrais humblement soumettre un nouveau prétendant à votre estimé jugement. Vous pouvez ou non trouver cela nouveau, vous pouvez même daigner l'appeler un « bug », mais je vous assure que vous le trouverez divertissant.

Considérer NetHack. C'est un de le roguelike de tous les temps jeux, et je veux dire cela dans le sens le plus strict de ce terme. Le contenu est généré de manière procédurale, les décès sont permanents et la seule chose que vous conservez d'un jeu à l'autre sont vos compétences et vos connaissances. Je comprends que la seule chose sur laquelle deux fans de roguelike peuvent s'entendre est à quel point le troisième fan de roguelike se trompe dans sa définition du roguelike, mais, s'il vous plaît, passons à autre chose.

Publicité

NetHack est idéal pour l’apprentissage automatique…

Étant un jeu difficile plein de choix conséquents et de défis aléatoires, ainsi qu'un jeu « à agent unique » qui peut être généré et joué à une vitesse fulgurante sur les ordinateurs modernes, NetHack est idéal pour ceux qui travaillent dans le domaine de l'apprentissage automatique – ou apprentissage par imitationen fait, comme détaillé dans Article de Jens Tuyls sur la manière dont la mise à l'échelle du calcul affecte l'apprentissage des jeux à agent unique. Utiliser le modèle d'expert de Tuyls NetHack comportement, Bartłomiej Cupiał et Maciej Wołczyk ont ​​formé un réseau neuronal pour jouer et s'améliorer en utilisant apprentissage par renforcement.

À la mi-mai de cette année, leur modèle marquait régulièrement 5 000 points selon leurs propres mesures. Puis, en une seule fois, le modèle s'est soudainement détérioré, de l'ordre de 40 pour cent. Il a marqué 3 000 points. En général, l’apprentissage automatique va progressivement dans une direction avec ce type de problèmes. Cela n'avait aucun sens.

Cupiał et Wołczyk ont ​​essayé plusieurs choses : restaurer leur code, restaurer l'intégralité de leur pile logicielle à partir d'une sauvegarde Singularity et restaurer leur CUDA bibliothèques. Le résultat? 3 000 points. Ils reconstruisent tout à partir de zéro, et ça fait quand même 3 000 points.

<em>NetHack</em>, joué par un humain ordinaire. » src= »https://cdn.arstechnica.net/wp-content/uploads/2024/06/13863751533_64654db44e_o.png » width= »821″ height= »506″/><figcaption class=

NetHackjoué par un humain ordinaire.

…sauf certaines nuits

Comme détaillé dans le fil de discussion X de Cupiał (anciennement Twitter), il s'agissait de plusieurs heures d'essais et d'erreurs confus entre lui et Wołczyk. « Je commence à me sentir fou. Je ne peux même pas regarder une émission de télévision en pensant constamment au bug », a écrit Cupiał. En désespoir de cause, il demande à l'auteur modèle Tuyls s'il sait ce qui pourrait ne pas aller. Il se réveille à Cracovie avec une réponse :

« Oh oui, c'est probablement la pleine lune aujourd'hui. »

Dans NetHackle jeu dans lequel la DevTeam a pensé à tout, si le jeu détecte sur votre horloge système qu'il devrait s'agir d'une pleine lune, il générera un message : « Vous avez de la chance ! Pleine lune ce soir. » Une pleine lune donne quelques avantages pour les joueurs: un seul point ajouté à la Chance, et les créatures étaient pour la plupart conservées dans leur forme animale.

C'est un jeu plus facile, tout bien considéré, alors pourquoi le score de l'agent d'apprentissage serait-il plus faible ? Il ne contient tout simplement pas de données sur les variables de la pleine lune dans ses données d'entraînement, donc une série de décisions ramifiées conduit probablement à des résultats moindres, ou simplement à de la confusion. C'était effectivement la pleine lune Cracovie lorsque les scores de 3 000 environ ont commencé à apparaître. Quelle nuit terrible pour avoir un modèle d'apprentissage.

Bien entendu, le « score » n’est pas une véritable mesure de réussite dans NetHackcomme Cupiał lui-même a noté. Demandez à un modèle d'obtenir le meilleur score, et il éliminera des monstres de bas niveau car il ne s'ennuiera jamais. « Recherche des éléments requis pour [ascension] ou même [just] faire une quête est trop pour un pur agent RL », a écrit Cupiał. Un autre réseau neuronal, Ascension automatiquefait un meilleur travail pour progresser dans le jeu, mais « même s'il ne peut que résoudre le sokoban et atteindre la fin des mines », Cupiał Remarques.

Est-ce un bug ?

Je vous soumets que, même si NetHack a répondu à la pleine lune comme prévu, cet arrêt original et très difficile à comprendre dans un voyage d'apprentissage automatique était en effet un bug digne du panthéon. Ce n'est pas un papillon de nuit de Harvardni un E-mail de 500 millesmais comment ça?

Parce que l'équipe a utilisé Singularité pour sauvegarder et restaurer leur pile, ils reportaient par inadvertance le temps machine et le bug qui en résultait à chaque fois qu'ils essayaient de le résoudre. Le comportement de la machine était si bizarre, et apparemment basé sur des forces invisibles, qu'il a mis un codeur en crise. Et l’histoire a un début, un milieu culminant et un dénouement qui nous apprend quelque chose, aussi obscur soit-il.

Le NetHack Lunar Learning Bug mérite, à mon avis, d’être commémoré. Merci pour votre temps.

5/5 - (430 votes)
Publicité
Article précédentIkea embauche (et paie) des travailleurs pour son magasin virtuel Roblox
Article suivantOpenAI corrige le problème qui a provoqué une panne de ChatGPT pendant plusieurs heures

LAISSER UN COMMENTAIRE

S'il vous plaît entrez votre commentaire!
S'il vous plaît entrez votre nom ici