# OpenAI Five

OpenAI Five ist ein Computerprogramm von OpenAI, das das 5-vs.-5-MOBA Dota 2 spielt. Sein erster öffentlicher Auftritt fand 2017 statt, als es live in einem 1-vs.-1-Match gegen den Profispieler Dendi vorgeführt wurde, der gegen es verlor. Im darauffolgenden Jahr war das System so weit fortgeschritten, dass es als komplettes Team von fünf Spielern auftreten konnte und begann, gegen professionelle Teams zu spielen und diese zu besiegen.
Durch die Wahl eines so komplexen Spiels wie Dota 2 zur Untersuchung des maschinellen Lernens glaubte OpenAI, die Unvorhersehbarkeit und Kontinuität in der realen Welt genauer erfassen und so allgemeinere Problemlösungssysteme konstruieren zu können. Die Algorithmen und der Code von OpenAI Five wurden schließlich von einem anderen neuronalen Netzwerk übernommen, das sich in der Entwicklung des Unternehmens befand und eine physische Roboterhand steuerte. OpenAI Five wurde mit anderen ähnlichen Fällen verglichen, in denen künstliche Intelligenz (KI) gegen Menschen spielte und sie besiegte, wie AlphaStar im Videospiel StarCraft II, AlphaGo im Brettspiel Go und Deep Blue im Schach.

## Geschichte

Die Entwicklung der für die Bots verwendeten Algorithmen begann im November 2016. OpenAI entschied sich für Dota 2, ein wettbewerbsfähiges 5-vs.-5-Videospiel, als Basis, da es auf der Live-Streaming-Plattform Twitch beliebt ist, Linux nativ unterstützt und über eine Anwendungsprogrammierschnittstelle (API) verfügt.
Bevor das Team zu einem Fünferteam wurde, fand die erste öffentliche Demonstration bei The International 2017 im August statt, dem jährlichen ersten Meisterschaftsturnier für das Spiel, bei dem Dendi, ein ukrainischer Profispieler, gegen einen OpenAI-Bot in einem Live-Einzelmatch verlor. Nach dem Match erklärte CTO Greg Brockman, dass der Bot zwei Wochen lang in Echtzeit gegen sich selbst gespielt und gelernt habe und dass die Lernsoftware ein Schritt in Richtung der Entwicklung von Software sei, die komplexe Aufgaben bewältigen könne, „wie ein Chirurg“. OpenAI verwendete eine Methode namens „Reinforcement Learning“, da die Bots im Laufe der Zeit lernen, indem sie monatelang hunderte Male am Tag gegen sich selbst spielen, wobei sie für Aktionen wie das Töten eines Gegners und das Zerstören von Türmen belohnt werden.
Im Juni 2018 wurde die Fähigkeit der Bots so erweitert, dass sie als vollständiges Team von fünf Spielern zusammenspielen und Teams aus Amateur- und semiprofessionellen Spielern besiegen konnten. Bei The International 2018 spielte OpenAI Five in zwei Spielen gegen professionelle Teams, eines gegen das in Brasilien ansässige paiN Gaming und das andere gegen ein All-Star-Team aus ehemaligen chinesischen Spielern. Obwohl die Bots beide Spiele verloren, betrachtete OpenAI es als erfolgreiches Unterfangen und gab an, dass das Spielen gegen einige der besten Spieler in Dota 2 es ihnen ermöglichte, ihre Algorithmen für zukünftige Spiele zu analysieren und anzupassen. Die letzte öffentliche Demonstration der Bots fand im April 2019 statt, als sie bei einem Live-Event in San Francisco eine Best-of-Three-Serie gegen den Champion von The International 2018, OG, gewannen. Im selben Monat fand ein viertägiges, öffentliches Online-Event statt, bei dem die Bots gegeneinander antraten. Dort spielten die Bots in 42.729 öffentlichen Spielen und gewannen 99,4 % dieser Spiele.

## Architektur

Jeder OpenAI Five-Bot ist ein neuronales Netzwerk, das eine einzelne Schicht mit einem LSTM mit 4096 Einheiten enthält, die den aktuellen Spielzustand beobachtet, der aus der API des Dota-Entwicklers gewonnen wird. Das neuronale Netzwerk führt Aktionen über zahlreiche mögliche Aktionsköpfe aus (ohne menschliche Daten), und jeder Kopf hat eine Bedeutung. Zum Beispiel die Anzahl der Ticks, um eine Aktion zu verzögern, welche Aktion auszuwählen ist – die X- oder Y-Koordinate dieser Aktion in einem Raster um die Einheit. Darüber hinaus werden die Aktionsköpfe unabhängig voneinander berechnet. Das KI-System betrachtet die Welt als eine Liste von 20.000 Zahlen und führt eine Aktion durch, indem es eine Liste von acht Aufzählungswerten ausführt. Außerdem wählt es verschiedene Aktionen und Ziele aus, um zu verstehen, wie jede Aktion zu kodieren und die Welt zu beobachten ist.
OpenAI Five wurde als Allzweck-Trainingssystem für verstärkendes Lernen auf der „Rapid“-Infrastruktur entwickelt. Rapid besteht aus zwei Schichten: Es bringt Tausende von Rechnern in Gang und hilft ihnen, miteinander zu „reden“, und auf einer zweiten Schicht läuft Software. Bis 2018 hat OpenAI Five rund 180 Jahre an Spielen im Bereich des Reinforcement Learning gespielt, die auf 256 GPUs und 128.000 CPU-Kernen, unter Verwendung der Proximal Policy Optimization, einer Policy-Gradienten-Methode, ausgeführt wurden.
Vergleichstabelle :
| | OpenAI 1v1 bot (2017) | OpenAI Five (2018) |
| CPUs | 60,000 CPU-Kerne (Microsoft Azure) | 128,000 präemptive CPU-Kerne (Google Cloud Platform, GCP) |
| GPUs | 256 K80 GPUs (Azure) | 256 P100 GPUs (GCP) |
| Gesammelte Erfahrung | ~300 Jahre pro Tag | ~180 Jahre pro Tag |
| Beobachtungsfeld | ~3.3kB | ~36.8kB |
| Schnappschüsse pro Sekunde | 10 | 7.5 |
| Batchgröße | 8,388,608 Beobachtungen | 1,048,576 Beobachtungen |
| Batches pro Minute | ~20 | ~60 |

## Vergleich mit anderen KI-Systemen

Vor OpenAI Five wurden bereits andere KI-Experimente und -Systeme erfolgreich gegen Menschen eingesetzt, z. B. Jeopardy! mit Watson, Schach mit Deep Blue und Go mit AlphaGo. Im Vergleich zu anderen Spielen, bei denen KI-Systeme gegen menschliche Spieler eingesetzt wurden, unterscheidet sich Dota 2 wie folgt:
Langfristige Betrachtung: Die Bots laufen mit 30 Bildern pro Sekunde bei einer durchschnittlichen Spielzeit von 45 Minuten, was 80.000 Ticks pro Spiel ergibt. OpenAI Five beobachtet jedes vierte Bild und erzeugt so 20.000 Züge. Zum Vergleich: Schach endet in der Regel vor 40 Zügen, während Go vor 150 Zügen endet.
Teilweise beobachteter Zustand des Spiels: Die Spieler und ihre Verbündeten können nur die Karte direkt um sich herum sehen. Der Rest der Karte ist von einem Kriegsnebel bedeckt, der die gegnerischen Einheiten und ihre Bewegungen verbirgt. Um Dota 2 zu spielen, muss man also auf der Grundlage dieser unvollständigen Daten Schlüsse ziehen und vorhersagen, was der Gegner zur gleichen Zeit tun könnte. Im Vergleich dazu sind Schach und Go „Vollinformationsspiele“, da sie keine Elemente vor dem gegnerischen Spieler verbergen.
Kontinuierlicher Aktionsraum: Jeder spielbare Charakter in einem Dota 2-Spiel, ein sogenannter Held, kann Dutzende von Aktionen ausführen, die entweder auf eine andere Einheit oder eine Position abzielen. Die OpenAI Five-Entwickler lassen den Raum für 170.000 mögliche Aktionen pro Held. Ohne die ständigen Aspekte des Spiels mitzuzählen, gibt es durchschnittlich ~1.000 gültige Aktionen pro Tick. Zum Vergleich: Die durchschnittliche Anzahl der Aktionen beim Schach beträgt 35 und beim Go 250.
Kontinuierlicher Beobachtungsraum: Dota 2 wird auf einer großen Karte mit zehn Helden, fünf pro Team, sowie Dutzenden von Gebäuden und Einheiten von Nicht-Spieler-Charakteren (NPC) gespielt. Das OpenAI-System beobachtet den Zustand eines Spiels über die Bot-API der Entwickler in Form von 20.000 Zahlen, die alle Informationen darstellen, zu denen ein Mensch Zugang haben darf. Ein Schachbrett wird durch etwa 70 Listen dargestellt, während ein Go-Brett etwa 400 Aufzählungen hat.

## Aufnahme durch die Öffentlichkeit

Die OpenAI Five wurden von der KI-, Technologie- und Videospielgemeinde allgemein anerkannt. Microsoft-Gründer Bill Gates sprach von einer „großen Sache“, da ihre Siege „Teamwork und Zusammenarbeit“ erforderten. Der Schachspieler Garry Kasparow, der 1997 gegen die KI Deep Blue verlor, erklärte, dass die Bots trotz ihrer Niederlage bei The International 2018 schließlich „das Ziel erreichen werden, und zwar früher als erwartet“.
In einem Gespräch mit MIT Technology Review bezeichneten KI-Experten das OpenAI Five-System ebenfalls als bedeutende Errungenschaft, da sie anmerkten, dass Dota 2 ein „extrem kompliziertes Spiel“ sei, so dass selbst der Sieg gegen nicht-professionelle Spieler beeindruckend sei. PC Gamer schrieb, dass ihre Siege gegen professionelle Spieler ein bedeutendes Ereignis im Bereich des maschinellen Lernens seien. Im Gegensatz dazu schrieb Motherboard, dass der Sieg aufgrund der vereinfachten Heldenpools auf beiden Seiten sowie der Tatsache, dass die Bots direkten Zugriff auf die API hatten, im Gegensatz zur Verwendung von Computer Vision zur Interpretation der Pixel auf dem Bildschirm, „im Grunde genommen Betrug“ war. The Verge schrieb, dass die Bots ein Beweis dafür waren, dass der Ansatz des Unternehmens zum Reinforcement Learning und seine allgemeine Philosophie über KI „Meilensteine hervorbringt“.
Im Jahr 2019 stellte DeepMind einen ähnlichen Bot für Starcraft II vor, AlphaStar. Wie OpenAI Five nutzte AlphaStar Verstärkungslernen und Selbstspiel. The Verge berichtet, dass „das Ziel dieser Art von KI-Forschung nicht nur darin besteht, Menschen in verschiedenen Spielen zu besiegen, nur um zu beweisen, dass es möglich ist. Vielmehr geht es darum, zu beweisen, dass hochentwickelte KI-Software mit genügend Zeit, Mühe und Ressourcen den Menschen in praktisch jeder kognitiven Herausforderung schlagen kann, sei es ein Brettspiel oder ein modernes Videospiel.“ Sie fügten hinzu, dass die Siege von DeepMind und OpenAI auch ein Beweis für die Leistungsfähigkeit bestimmter Anwendungen des verstärkenden Lernens sind.
OpenAI hoffte, dass die Technologie auch außerhalb des digitalen Bereichs Anwendung finden könnte. Im Jahr 2018 konnten sie dieselben Algorithmen für das verstärkte Lernen und den Trainingscode von OpenAI Five für Dactyl wiederverwenden, eine menschenähnliche Roboterhand mit einem neuronalen Netzwerk, das für die Manipulation physischer Objekte entwickelt wurde. 2019 löste Dactyl den Rubik-Würfel.