WICHTIG!!! Das Turnier (die Endabnahme) findet aus organisatorischen Gründen NICHT wie verabredet im Raum 709 statt, sondern im Grundausbildungspool (Keller des Rechenzentrums, HRS3 - R.105).
Wichtig: die Dokumentation zu
PlayerInterface hat sich geändert!
Unabhänging von der prinzipiellen Diskussion, ob informationsverarbeitende Systeme der Informatik als Basis für die Beschreibung und Erklärung kognitiver Phänomene geeignet sind, gibt es Teilgebiete der "künstlichen Intelligenz", in denen kognitive Systeme durch symbolische Informationsverarbeitung instantiiert werden können. Hier sind in erster Linie "Expertensysteme" zu nennen, die inzwischen die industrielle Einsatzfähigkeit erlangt haben. Ein grundsätzlich anderer Weg wird bei dem Versuch der Rekonstruktion von kognitiven Leistungen über künstliche Neuronen eingeschlagen. Künstliche neuronale Netze orientieren sich in ihren Verarbeitungsschritten an den Prinzipien der Informationsverarbeitung in neuronalen Geweben, soweit diese überhaupt schon bekannt sind. Trotz aller Unzulänglichkeiten heutiger Netze gibt es eine Fülle interessanter Anwendungen künstlicher neuronaler Netze, speziell zur Mustererkennung in einem sehr weiten Sinne. Im ersten Teil der Vorlesung soll der symbolische Ansatz für die KI-Programmierung vorgestellt werden. Ausgehend von einer Diskussion philosophischer Positionen werden typische Probleme und Verfahren zu ihrer Lösung im Rahmen der KI vorgestellt. Es folgen gebräuchliche Verfahren zur Wissensrepräsentation und zur Inferenz von ableitbarem Wissen als Kern wissensbasierter Systeme. Im zweiten Teil der Vorlesung sollen Möglichkeiten und Grenzen einiger typischer Modelle für künstliche neuronale Netze dargelegt werden. In der Übung soll ein umfangreicheres KI-Programm erstellt werden. Programmiert wird mit LISP, einer Sprache, die für die symbolische Informationsverarbeitung geeignet ist.
Es sei darauf hingewiesen, dass diese Vorlesung zusammen mit "Ausgewählte Kapitel der Künstlichen Intelligenz" von Herrn Dr. Salski einen Block im Rahmen des Prüfungsfaches Praktische Informatik bildet.
| Vorlesung: | Montag, 16-18h ct | CAP 2, Raum E [Audimax] |
|---|---|---|
| Übung: | Dienstag, 16-18h ct | CAP 2, Raum B [Audimax] |
Wie immer werden außerhalb der Vorlesung und der Übung wieder betreute Rechnerzeiten für die Studierenden angeboten, in denen auch die Abnahmen für die Übungsserien durchgeführt werden.
| Rechnerzeiten | |
|---|---|
| Montag, 14-16h st | CAP 4, Raum 709 |
| Donnerstag, 12-14h st | CAP 4, Raum 709 |
Das Semesterprojekt hat eine eigene Seite mit Informationen
Die Aufgaben bitte pünktlich zum Abgabetermin per Mail an proki@informatik.uni-kiel.de. Diese Mailadresse dient nur für die Abgabe der Aufgaben eurerseits und Informationen an euch unsererseits. Bei Fragen wendet euch bitte direkt an die Hilfskräfte (Mail-Adressen weiter unten).
WICHTIG: Ihr bekommt erst Punkte für eine Aufgabe, wenn ihr sie uns an den Rechnern im Computerlabor vorstellt. Es müssen nicht bei jeder Abnahme beide Gruppenmitglieder anwesend sein. Wenn ein Student zu beiden angebotenen Rechnerzeiten überhaupt keine Zeit hat, sollte er sich mit den Hilfskräften in Verbindung setzen um eine Lösung zu finden. Wer die Aufgaben schon vor dem Abgabetermin vorstellt, braucht sie nicht mehr zu schicken.
Zur Erinnerung: Bitte bringt zu jeder Übungsstunde einen Ausdruck eurer Lösung der jeweils zur Besprechung anstehenden Aufgaben mit, so daß ihr diese an der Tafel vorstellen könnt.
Die Betreffzeile eurer Abgabe muß folgendes Aussehen haben:
Serie 1 von Meier und Schulze sähe also so aus: 01 Meier/Schulze
Hier gibt es ein paar hilfreiche Hinweise zum benutzen von Lisp.
Nachdem der Gnu Common Lisp Interpreter durch Eingabe von gcl gestartet wurde, erscheint ein Prompt wie folgt:
>
Hier hat man nun die Möglichkeit Lisp-Ausdrücke direkt einzugeben. Eingegebene Funktions- oder Variablendefinitionen sind jedoch nur bis zum Beenden des Interpreters gültig. Also ist es besser, diese in einer Datei (Exentension .lsp oder .lisp) zu speichern. Das Laden von Definitionen aus einer Datei in das Gnu Common Lisp System geschieht mit folgenden Befehl:
>(load "name.lsp")
Sind fehlerhafte Definitionen in der Datei (oder wurde ein fehlerhafter Lisp-Ausdruck direkt eingegeben), so befindet der Interpreter sich im Anschluß im Debug-Modus, gekennzeichnet durch folgendes Prompt:
>>
Den Debug-Modus verläßt man durch folgenden Befehl:
>>:q
Zum Beenden des Gnu Common Lisp Systems dient folgender Befehl:
>(bye)
Ein kleiner Programmierleitfaden zum Erstellen von strukturierten Programmen
Und ein ebensolcher Leitfaden zum sinnvollen Dokumentieren von Quellcode
Damit man diese merkwürdigen kryptischen Funktionsnamen car und cdr (sprich: Kudder) versteht, hier eine "historisch" bedingte Erklärung:
In der ersten Implementierung von LISP auf einer IBM 7090 wurden die implementierten cons in Registerteile gespeichert, und zwar der erste im "Content of Adress part of Register" und der zweite im "Content of Decrement part of Register" und weil die Leute dazu neigen allem Ihre eigenen Namen zu geben evtl. auch weil first und rest einen Buchstaben mehr haben ...
Letzte Änderung war sicherlich irgendwann (nachts) durch irgendwen aus irgendeinem Grund.
| Das Team | ||
|---|---|---|
| Dr. Simon | Sven Boike | Marcel Hamann |