Battle der KIs auf Besen

Softwaregrundprojekt: Künstliche Intelligenzen spielen Quidditch

Unsportliches Verhalten ist den magischen Wesen im Fanblock nicht fremd. Und nicht immer merken die Schiedsrichter, wenn Elfen oder Kobolde aus den Zuschauerrängen heraus gegnerische Quidditch-Spieler teleportieren oder mit einem Schockzauber belegen. Was sich anhört wie eine Szene aus Harry Potter, gehört in Wirklichkeit zu einer zentralen Lehrveranstaltung der Informatik: dem Softwaregrundprojekt. Die Studierenden entwickeln hier ein Multiplayer-Spiel und zwar über einen professionellen Entwicklungsprozess. Beim „Fantastic Feast“-Abschlussturnier traten Künstliche Intelligenzen (KIs) zum Quidditch an.

„Die Entwicklung von Multiplayer-Spielen ist sehr anspruchsvoll und macht den Studierenden trotzdem sehr viel Spaß“, sagt Florian Ege. Der Informatiker ist wissenschaftlicher Mitarbeiter der Studienkommission Informatik und koordiniert das Softwaregrundprojekt seit 2016. Im 21-seitigen Lastenheft zu dieser Lehrveranstaltung, das Ege verfasst hat, sind neben den technischen Anforderungen auch die Spielregeln detailliert festgelegt. Wie verhalten sich Jäger, Treiber, Hüter und Sucher eines siebenköpfigen Quidditch-Teams? Welche Spielzüge und welche Fouls sind möglich? Doch der Hintergrund dieser fantastischen Spielerei ist ernst: Beim Softwaregrundprojekt lernen Informatikstudierende aus dem 3. und 4. Fachsemester größere Anwendungen im Rahmen eines systematischen Softwareprozesses in Teamarbeit zu entwickeln. Themen und Inhalte kennen die Studierenden bereits aus der Grundlagenvorlesung. Im Softwaregrundprojekt geht es dann um praktische Anwendung und Vertiefung. Neben der eigentlichen Programmierarbeit werden vielfältige Facetten der Softwareentwicklung behandelt, dazu gehören Anforderungsanalyse, Entwurf, Qualitätssicherung und Dokumentation. Besonders herausfordernd: das Projektmanagement im Team. Pro Jahr nehmen bis zu 170 Studierende an dieser besonderen Lehrveranstaltung teil, aufgeteilt in 6er-Gruppen. Betreut werden sie von einem Übungsleiter und 13 studentischen Tutoren.

Gearbeitet wird im Softwaregrundprojekt mit einer Client-Server-Architektur. Auf der Todo-Liste jedes Teams steht die Entwicklung eines Benutzer-Clients mit graphischer Nutzeroberfläche für menschliche Spieler sowie eines KI-Clients, der über Künstliche Intelligenz gesteuert wird. Dann braucht es noch einen Quidditchteam-Editor, um die Teams und die Partien zu konfigurieren sowie einen Server, über den alles zum Laufen gebracht wird und über den die Clients miteinander kommunizieren. Von diesen beiden Komponenten erstellt jedes Team aber nur eine. Was fehlt, muss auf einer eigenen Projekt-Messe von einer anderen Gruppe bezogen werden. Die Teams, deren Komponente dabei jeweils am begehrtesten ist, profitieren mit einem speziellen Highscore. „Die Studierenden müssen also nicht nur ein tolles Software-Produkt entwickeln, sondern das Ganze auch detailliert dokumentieren und gründlich testen“, erläutert Ege.

Am Ende des Sommersemesters ist es dann jeweils soweit: Das große Kräftemessen beginnt. Die Teams lassen ihre KI-gesteuerten Clients in der Vorrunde im KO-System gegeneinander antreten. „Die Künstlichen Intelligenzen, die die Studierenden im Projekt entwickelt haben, arbeiten völlig unterschiedlich. Die meisten sind ‚von Hand’ geschriebene Heuristiken für kluges Spielverhalten, die wie Schach-KIs sogenannte Baumsuche-Algorithmen verwenden, um die nächsten Züge zu bestimmen. Es gibt aber auch Machine Learning Frameworks auf der Basis von neuronalen Netzen“, erklärt der Projekt-Koordinator. Beim Turnier zählt aber nicht nur der Sieg. Preise gibt es auch für die schönste graphische Darstellung oder den professionellsten Workflow. Und dass die Informatiker außerdem einen ausgeprägten Sinn für Altruismus haben, zeigt der Sonderpreis für gemeinnützigen Einsatz. Beim letzten Mal ging er an eine Gruppe, die sich aufopferungsvoll um ein gemeinsames, standardisiertes Netzwerkprotokoll zum Datenaustausch zwischen Clients und Servern gekümmert hat. Dafür gab es den „Goldenen Wombat“.

Wombat

Text: Andrea Weber-Tuckermann

Abbildungen: 123rf, SOPRA