This page is only available in german language. It describes the course "Artificial Intelligence", which will also be held in german, and provides links to the course material.
Inhalt der Vorlesung
Der Bereich der Künstlichen Intelligenz beschäftigt sich mit der Übertragung menschlichen Problemlösungsverhaltens auf den Computer. Hierbei soll erreicht werden, dass Computer selbstständig Probleme bearbeiten, von denen man gemein hin annimmt, dass deren Lösung Intelligenz voraussetzt. Die Veranstaltung beschäftigt sich mit grundlegenden Methoden zur Darstellung von Wissen, sowie Methoden, die mit Hilfe von Wissen Lösungen für komplexe Probleme berechnen.
Organisation
Es handelt sich um eine Veranstaltung, die in 2 Vorlesungstermine (2 Blöcke) + Übung (1 Block) unterteilt ist. Der zweite Vorlesungstermin wird je nach Bedarf auch als zusätzlicher Übungstermin bzw. zu Demonstrationszwecken genutzt.
- Vorlesung: Montags 15:30-17:00 in A5 C015, erstmals 18.02.2008
- Übung: Mittwochs 13:45-15:15 in A5 B144, erstmals 27.02.2008
- Vorlesung / Demo: Freitags 10:15-11:45 in A5 C014, erstmals 22.02.2008
Die Übung folgt dem klassischen Ablauf des Übungsbetriebs. Es werden alle ein bis zwei Wochen Übungsblätter ausgeteilt, die korrigiert zurückgegeben werden. Die Blätter können in Gruppen von 2 bis 4 Teilnehmern bearbeitet werden. In Ausnahmefällen ist auch eine Einzelabgabe möglich (hängt unter anderem von der Teilnehmerzahl ab).
Neben der Übung (in der es eher um ein besseres Verständnis der theoretischen Grundlagen geht) wird es eine Reihe von Programmierprojekten geben, die mit Hilfe des in der Vorlesung vermittelten Wissens gelöst werden sollen. Die Probleme werden zunächst einzelnen Arbeitsgruppen zugeordnet (bzw, können frei gewählt werden). Zur Lösung dieser Probleme sollen Computerprogramme entwickelt werden. In einer Präsentation (siehe unter Termine als 'Demo', jeweils ca 30 Minuten) soll den anderen Vorlesungsteilnehmern das Problem vorgestellt werden, mögliche Lösungsansätze diskutiert werden und der letztlich gewählte Lösungsansatz und dessen Implementierung präsentiert werden.
Programmierkenntnisse sind daher zwingend erforderlich (allerdings keine Einschränkung auf eine bestimmte Programmiersprache). Ohne die (halbwegs) erfolgreiche Bearbeitung eines Programmierprojekts, ist es nicht möglich an der abschließenden Prüfung teilzunehmen!
Scheinkriterien
- Mündliche Prüfung (Themen: Alles was in den angegebenen Kapiteln des Lehrbuchs steht), evtl. Klausur bei hoher Teilnehmerzahl.
- Aktive Teilnahme an der Vorlesung und insbesondere (!) an den Lektüre-Sitzungen.
- Mindestens einmal in einer Gruppe die Lösung einer komplexe Programmieraufgabe demonstriert.
- 50% der Punkte über alle Übungblätter (Abgabe in Gruppen)
Themenübersicht (grob)
Die folgenden Themengebiete werden in der Vorlesung vorraussichtlich behandelt. Mögliche Änderungen sind vorbehalten.
Einleitung
- Was ist Künstliche Intelligenz?
Block I: Suche und Constraints
- Problemlösen als Suche
- Suchalgorithmen für Spiele
- Problemlösen mit Constraints
Block II: Logik
- Aussagenlogik
- Relationale Logik
Block III: Planen
- Logik und Planen
- Planen mit KI Methoden
Block IV: Unsicherheit
- Unsicheres Wissen
- Maschinelles Lernen
Die Vorlesung basiert auf einem Standard-Lehrbuch zu dem Thema (nähere Informationen unter http://aima.cs.berkeley.edu/) und richtet sich an Studierende im Hauptstudium. Voraussetzung zur Teilnahme sind Grundkenntnisse in Komplexitätstheorie sowie Programmierung in einer höheren Programmiersprache. Grundwissen in den Bereichen formale Logik und Wahrscheinlichkeitsrechnung sind von Vorteil, jedoch nicht zwingend erforderlich.
Termine und Inhalte
Im folgenden die etwas genauere Planung der Themen und Termine. Änderungen sind jederzeit, auch kurzfristig, möglich.
- 1.Woche:
- 2.Woche
- 3.Woche
- 4.Woche
- 5. Woche + 6.Woche (Osterferien)
- 7.Woche
- Montag 31.03 (Demo): Präsentation der Programmierprojekte (A)
- Mittwoch 02.04 (Übung)
- Freitag 04.04. (Vorlesung): Constraintprobleme (Folien)(Algorithmen)
- 8.Woche
- 9.Woche
- 10.Woche
- 11.Woche
- Montag 28.04. ÄNDERUNG: (Demo): Präsentation der Programmierprojekte (B)
- Mittwoch 30.04. (Übung)
- Freitag 02.05. (Vorlesung): Planungssprachen (Folien)
- 12.Woche
- 13.Woche
- Montag 12.05.: Feiertag!
- Mittwoch 14.05. (Übung + Nachtrag zur Vorlesung 'Effizientes Planen')
- Freitag 16.05. (Vorlesung): Unsicherheit und Wahrscheinlichkeiten (Folien)
- 14.Woche
- Montag 19.05. (Demo): Präsentation der Programmierprojekte (C)
- Mittwoch 21.05. (Übung)
- Freitag 23.05. Entfällt, Lektürestunde als Heimarbeit (siehe Blatt 8)
- 15.Woche
- Montag 26.05. (Vorlesung): Bayessche Netze (Folien + Beschreibung des Variable-Elimination-Algorithmus)
- Mittwoch 28.05. (Übung)
- Freitag 30.05. (Vorlesung): Maschinelles Lernen: Einfuehrung und Entscheidungsbaumlernen (Folien)
- 16.Woche
- Montag 02.06. (Demo): PAC-Lerntheorie, Bayes'sches Lernen und Lernen von Bayes'schen Netzen (Folien)
- Mittwoch 04.06. (Übung)
- Freitag 06.06. (Vorlesung): EM-Algorithmus & Inductive Logic Programming (Folien)
Alle Angaben ohne Gewähr.
Übungsblätter und weitere Materialien
Programmierprojekte
A - Suche (Präsentation am 31.03. 2008)
A1: Das Seemannsspiel
A2: Das Bohnenspiel
B - Constraints (Präsentation am 25.04. 2008)
B1: Das Tal des Todes
B2: Der glückliche Würfel
C - Logik und Planen (Präsentation am 19.05.2008)
C1: Der Minenräumdienst (Minenfelder)
C2: Total verplant!
Ausführlichere Infos zu den Programmierprojekten (Bewerbung und Vergabe) im Forum.
Übungsblätter
- Blatt 1 (Ausgabe 27.02 -> Abgabe 05.03)
- Blatt 2 (Ausgabe 05.03 -> Abgabe 12.03)
- Blatt 3 (Ausgabe 12.03 -> Osterferien -> Abgabe 02.04)
- Blatt 4 (Ausgabe 02.04 -> 2 Wochen Berarbeitungszeit -> Abgabe 16.04)
- Benchmarkdatensätze: brock200_3.clq.gr, brock800_1.clq.gr, c-fat200-1.clq.gr, c-fat200-2.clq.gr, c-fat500-1.clq.gr
- Blatt 5 (Ausgabe 16.04 -> Abgabe 23.04) (! Upgedatete finale Version !)
- Blatt 6 (Ausgabe 23.04 -> Abgabe 04.05, 2 Wochen Bearbeitungszeit)
- Fehler beim Abgabetermin, Abgabe ist der 07.05 (wie üblich Mittwochs)
- Blatt 7 (Ausgabe 07.05 -> Abgabe 21.05, 2 Wochen Bearbeitungszeit)
- Blatt 8 (Ausgabe 21.05 -> Abgabe 28.05) 1 Woche Bearbeitungszeit
- Blatt 9 (Ausgabe 28.05 -> Abgabe 04.06) 1 Woche Bearbeitungszeit
Zusatzblätter (evtl, zur Vorbereitung auf die Prüfung):
- Blatt zu Prädikatenlogik (wurde von einigen offenbar kaum verstanden!)
- Blatt zu Planen (Formulierung als STRIPS Planungsproblem)
Bitte benutzt das Forum, wenn ihr Lösungsmöglichkeiten zu diesen oder den Standardaufgabenblättern diskutieren wollt.
Abgabe + Korrektur: Lösungen der Übungsblätter entweder (1) zur Übung mitbringen, (2) bis 10 Minuten vor Übungsbeginn in den Übungskasten einwerfen (3) oder als PDF per Mail an den Übungsleiter bis 10 Minuten vor Übungsbeginn. Bei Programmieraufgaben immer den Code + kleine Anleitung/Doku per Mail an den Übungsleiter schicken (auf dem Lösungszettel bei dieser Aufgabe dann bitte "bearbeitet, siehe Mail" notieren).
Forum und Mailingliste
Es gibt ein Forum zur Vorlesung. Fragen zur Übung und Vorlesung können dort jederzeit gestellt und diskutiert werden (Link zum Forum).
Studierende der Universität Mannheim können sich dort mit ihrem Universitätsaccount einloggen (oben rechts auf "Anmelden" klicken). Es muss kein zusätzlicher Forumsaccount angelegt werden. Studierende anderer Universitäten schreiben bitte an Christian Meilicke eine E-Mail (Name, Uni, Studiengang) und ihr bekommt in Kürze eure Zugangsdaten zugesendet. Was die Mailingliste betrifft, so könnt (und solltet) ihr euch anmelden über:
https://mailman.uni-mannheim.de/mailman/listinfo/ki
Bitte im Feld 'Name (optional)' Vor und Nachname eintragen. Nach der Anmeldung werdet ihr durch den Moderator freigeschaltet.

