- GameNGen-KI-Modell von Google zeigt beachtliche Ergebnisse durch Künstliche Intelligenz. Forscher verwenden MarioVGG-Modell zur Generierung plausibler Videos von Super Mario Bros. nach Benutzereingaben. Ergebnisse noch mit vielen Fehlern und zu langsam für Echtzeit-Gameplay, jedoch beeindruckende Physik und Spieldynamik möglich.
- MarioVGG-Modell trainiert mit umfangreichem Datensatz von Super Mario Bros.-Gameplay. Forscher fokussieren sich auf begrenzte Eingaben („nach rechts laufen“ und „nach rechts laufen und springen“). Modell lernt unmittelbare Ergebnisse verschiedener Eingaben durch Vorprozessierung von Frames.
- MarioVGG generiert Videoframes aus statischem Startbild und Texteingabe („laufen“ oder „springen“). Generierte Sequenzen können theoretisch beliebig lange Gameplay-Videos erstellen. Output-Frames aus Effizienzgründen auf 64×48 herunterskaliert und verdichtet.
- MarioVGG kämpft mit Echtzeit-Videogenerierung, sechs Sekunden für sechs-Frame-Sequenz. Forscher hoffen auf Optimierungen und mehr Rechenressourcen zur Verbesserung der Rate. Modell lernt Spielphysik ohne explizite Regeln, glaubwürdige Schwerkraft und Hindernisverhalten.
- MarioVGG „halluziniert“ neue Hindernisse, kohärent mit der Grafiksprache des Spiels. Hindernisse derzeit nicht durch Benutzereingaben beeinflussbar.
Letzten Monat zeigte das GameNGen-KI-Modell von Google, dass Künstliche Intelligenz verwendet werden kann, um beachtliche Ergebnisse zu erzielen. Nun setzen Forscher ähnliche Techniken mit einem Modell namens MarioVGG ein, um zu untersuchen, ob damit plausible Videos von Super Mario Bros. als Reaktion auf Benutzereingaben generiert werden können. Doch die Ergebnisse, die von einem Krypto-adjacent KI-Unternehmen veröffentlicht wurden, weisen noch viele offensichtliche Fehler auf und sind zu langsam für echtes Gameplay in Echtzeit. Trotzdem zeigen sie, wie selbst ein eingeschränktes Modell beeindruckende Physik und Spieldynamik allein durch das Studium von Video- und Eingabedaten ableiten kann.
Erste Schritte zur Videospiel-Generierung
Die Forscher hoffen, dass dies einen ersten Schritt darstellt, um in Zukunft „ein zuverlässiges und kontrollierbares Videospiel-Generierungsmodell zu produzieren und zu demonstrieren” oder möglicherweise sogar „die Spieleentwicklung und Spiele-Engines vollständig durch Video-Generierungsmodelle zu ersetzen“. Um ihr Modell zu trainieren, begannen die MarioVGG-Forscher (GitHub-Nutzer werden als Mitwirkende aufgeführt) mit einem umfangreichen Datensatz von Super Mario Bros.-Gameplay, der 280 Level an Input- und Bilddaten enthielt, die für maschinelles Lernen aufbereitet wurden (Level 1-1 wurde aus dem Trainingsdatensatz entfernt, um es für die Evaluation zu nutzen). Die mehr als 737.000 einzelnen Frames in diesem Datensatz wurden in 35-Frame-Chunks „vorverarbeitet“, damit das Modell beginnen konnte, die unmittelbaren Ergebnisse verschiedener Eingaben zu lernen.
Viele Herausforderungen stellten sich den Forschern während dieses Prozesses. Um das Gameplay zu vereinfachen, fokussierten sie sich lediglich auf zwei mögliche Eingaben im Datensatz: „nach rechts laufen“ und „nach rechts laufen und springen“. Diese begrenzte Bewegungsmöglichkeit brachte jedoch einige Schwierigkeiten für das maschinelle Lernen mit sich, da der Vorprozessor einige Frames zurückblicken musste, bevor ein Sprung ausführt wurde, um herauszufinden, ob und wann das „Laufen“ begonnen hatte. Sprünge, die Luftanpassungen enthielten (d.h. die „Linkstaste“), mussten ebenfalls ausgeschlossen werden, um „Rauschen“ im Trainingsdatensatz zu vermeiden.
Von der Theorie zur Praxis
Nach der Vorverarbeitung und etwa 48 Stunden Training auf einer einzigen RTX 4090-Grafikkarte verwendeten die Forscher einen standardisierten Prozess zur Generierung neuer Videoframes aus einem statischen Startbild des Spiels und einer Texteingabe (entweder „laufen“ oder „springen“ in diesem begrenzten Fall). Während diese generierten Sequenzen nur wenige Frames dauern, kann der letzte Frame einer Sequenz als erster eines neuen verwendet werden, wodurch theoretisch Gameplay-Videos beliebiger Länge erstellt werden können, die laut den Forschern „kohärentes und konsistentes Gameplay“ zeigen.
Doch trotz all dieses Aufwands generiert MarioVGG nicht so flüssiges Video, dass es von einem echten NES-Spiel nicht zu unterscheiden wäre. Aus Effizienzgründen skalieren die Forscher die Output-Frames von der NES-Auflösung von 256×240 auf viel matschigere 64×48 herunter. Sie verdichten auch 35 Frames Videolaufzeit in nur sieben generierte Frames, die „in gleichmäßigen Abständen“ verteilt sind, wodurch das „Gameplay“-Video viel rauer aussieht als die reale Spielausgabe.
Die Limitierungen des Modells
Obwohl diese Einschränkungen bestehen, kämpft das MarioVGG-Modell immer noch mit der Annäherung an die Echtzeit-Videogenerierung. Die einzelne von den Forschern genutzte RTX 4090 benötigte ganze sechs Sekunden, um eine sechs-Frame-Videosequenz zu generieren, was nur etwas mehr als eine halbe Sekunde Video darstellt, selbst bei einer extrem begrenzten Framerate. Die Forscher geben zu, dass dies „nicht praktisch und benutzerfreundlich für interaktive Videospiele“ ist, hoffen jedoch, dass zukünftige Optimierungen in der Gewichtquantisierung und der Einsatz von mehr Rechenressourcen diese Rate verbessern könnten.
Trotz dieser Grenzen kann MarioVGG passabel glaubwürdige Videos von Mario erzeugen, der von einem statischen Startbild läuft und springt. Das Modell war sogar in der Lage, „die Physik des Spiels rein aus den Videoframes im Trainingsdatensatz zu lernen, ohne explizit einprogrammierten Regeln“, so die Forscher. Dies schließt das Ableiten von Verhalten wie das Fallen von Mario, wenn er von einem Cliff läuft (mit glaubwürdiger Schwerkraft) und das Stoppen von Marios Vorwärtsbewegung bei Hindernissen ein.
Während sich MarioVGG auf die Simulation von Marios Bewegungen konzentrierte, stellten die Forscher fest, dass das System neue Hindernisse für Mario „halluzinieren“ konnte, während das Video durch ein imaginäres Level scrollt. Diese Hindernisse „sind kohärent mit der grafischen Sprache des Spiels,“ so die Forscher, können aber derzeit durch Benutzereingaben nicht beeinflusst werden (z.B. ein Loch vor Mario platzieren und ihn darüber springen lassen).