Zustand der Seite: DRAFT
      

Aktuelles

21. Juni 2007 / DL: Vorbesprechungstermin
Vorbesprechung ist am 4.7.2007 um 10.15h im Lichhof 6OG Gebäude Einsteinstr. 62 (Mathematik-Hochhaus)
Mai 2007 / DL:
Seite erstellt
3D-Spieldarstellung

Schwerpunktbereiche des Projektseminars

Unter Neuroinformatik wird das Zusammenwachsen der Bereiche Künstliche Neuronale Netze, Fuzzy-Logic, Genetische Algorithmen und Chaostheorie verstanden. Im Rahmen des Seminars werden in einer spezialisierten Softwareagenten-Umgebung - dem 3D-Soccer-Server - insbesondere die Bereiche Anwendung von Softcomputing und Lernen mit Künstlichen Neuronalen Netzen behandelt.

Nach einigen vobereitenden Seminaren haben wir uns ab Sommer 2006 intensiver mit der Entwicklung einer eigenen Mannschaft für die Simulationsliga beschäftigt. Im Sommersemester 2006 war dann eine Mannschaft für die 2D-Simulation fertiggestellt, die nocht nicht weltmeisterlich spielte, aber durchaus gehobenes Spielniveau bot.
Nun beschäftigen sich mit der 2D-SoccerWelt schon viele Arbeitgruppen intensiv und lange, und Fortschritt findet nur noch in kleinen Schritten statt.
Auch aus dem Grund haben wir uns im Wintersemester 06/07 für die Entwicklung einer 3D-Mannschaft entschlossen. Hier gelten wieder ganz anderer Regeln und Gesetzmäßigkeiten, und man kann schneller ein konkurrenzfähigfes Niveeau errreichen - hoffen wir.
Trotzdem haben wir uns nicht zur German Open angemeldet - zum Zeitpunkt der Anmeldungfrist war unklar, ob unserer Mannschaft einigermassen sinnvoll spielen würde. Zudem ist die Mannschaft noch etwas algorithmenlastig - wenig KI, wenig Lernen, wenig Flexibilität. Genau hier möchten wir mit zwei möglichen Punkten fortsetzen:

KI auf unterschiedlichen Niveaus, Vergleich Algorithmen / klassische KI mit NN/Fuzzy, Vergleich unterschiedlicher Lernansätze

Man darf nicht glauben, das ein einziges NN einen Spieler steuert. Ein Spieler ist zunächst mal ein relativ klassisch programmierter Softwareagent, der an einigen Stellen für Entscheidungen ggf. neuronale Netze zu Rate zieht: wie fest schiesse ich, wohin ziele ich, ...
Man kann nun Situationen in unterschiedliche Niveaus lernen lassen: eher "muskulär" wie in den Beispielen oben, oder auch auf der Taktik-Ebene (Mit wem spiele ich ggf. Doppelpass? Gehe ich mit in den Angriff, oder halte ich mich eher abwehrbereit?)
Je nach Modellierung der Welt können sich für diese unterschiedlichen Niveaus unterschiedliche Techniken/Lernregeln/Paramter-Kombinationen eigenen, das gilt es zu untersuchen.

Trainer und Spielkommentator

Im Soccer-Server ist vorgesehen, das Trainer-Agenten und Kommentator-Agenten das Spiel beobachten und analysieren. Trainer können dann versuchen, ihre Mannschaft auf Gegner einzustellen, und Spielkommentatoren müssen natürlich das Publikum mitreissen. Spielanalyse kann natürlich während des Spiels als auch nachträglich gemacht werden. All das ist bei uns noch nicht angegangen worden.

Technische Grundlagen, verwendete System

Die virtuellen Fußballer sind eigente Programme, die über ein Kommunikationsprotokoll über einem Multi-Agenten-Server in einer Simulationsumgebung spielen.
Die beiden entwickelten Mannschaften sind (mit Eclipse) in Java erstellt, die Basis-Kommunikation erfolgt über eingebundenen C++-Routinen. Das Umfeld für das Neuronale Netz ist ebenfalls über Java-Klassen realisiert.
Als Groupware wird BSCW verwendet.
Für die diversen Server und Programme stehen Systeme und Arbeitsplätze in einem Projektseminarraum zur Verfügung.

Zielgruppe

Zielgruppe des Projektseminars sind im wesentlichen Studierende mit Abschluss Diplom-Informatik.

Lernziele, Termine, Arbeitsablauf

Neben den eigentlichen Ergebnis soll als Ergebnis vor allem ein Lernprozess erfolgen: Zusammenarbeit in einer Gruppe, ggf. unter Zeitdruck, mit ggf. unscharf formulierten Zielen, Zwischenergebnissen, Deadlines, Kundenerwartungen, diversen Präsentationen, etc. Dazu gehört auch eine gewisse Selbstorganisation der Gruppe.
Teilnehmer sollten auch damit rechnen, das ein sehr wesentlicher Teil ihrer Arbeitskraft und -zeit in der Projekt einfließt, also deutlich mehr als für ein normales Seminar. Termine für (regelmäßige) Treffen mit den "Kunden",also den Seminarveranstaltern, werden dann on the fly vereinbart.

Was ist eigentlich ein (Software-)agent?

Ein Softwareagent ist ein Stück Software, das mehr oder weniger folgende Eigenschaften hat: Nach Übermittlung der Aufgabe handelt der Agent autonom und proaktiv, zur Lösung der Aufgabe kommuniziert er mit anderen Agenten und ggf. handelt er reaktiv in seiner Umwelt, er ist eventuell mobil, kann sich veränderten Umfeldern und Fragestellungen anpassen, lernt im Laufe seines Lebenszyklus dazu, insgesamt wirkt sein Handeln auf einen Beobachter intelligent.

Allgemeine Bedingungen

Leistungsnachweis

Projektseminarschein (16CP) durch ausreichende Mitwirkung an Projektorganisation, Design und Implementierung, Projektdokumentation, Protokoll der Treffen, Abschlussbericht und Präsentation.

Termine


Interessenten mögen sich bitte frühzeitig bei Dietmar Lammers anmelden, am besten per EMail, mit Angabe von Name, Email, Matrikelnummer, Studienfach. Eine Vorbesprechung findet dann nach Absprache mit den Interessenten gegen Ende des Sommersemesters statt.

Dr. Dietmar Lammers
Last modified: Thu Jun 21 11:38:41 CEST 2007