C 64
Software

Prolog 64 — Künstliche Intelligenz für den C 64

Seit jeher ist es der Traum der Menschen, ihren Maschinen Künstliche Intelligenz zu verleihen. Prolog 64 stößt für den Heimcomputer-Besitzer das Tor zu dieser neuen Welt auf.

Vergessen Sie alles, was Sie bisher im Zusammenhang mit Programmiersprachen wie Basic und Pascal gehört haben. Wenn Sie mit Prolog arbeiten wollen, eröffnen sich neue Dimensionen der Programmierung.

Der Aufbau von Prolog

Wie bereits erwähnt, sollten Sie, wenn Sie Prolog lernen wollen, alle anderen Programmiersprachen und deren Arbeitsweise vergessen. In Prolog kann man sich das oft langwierige Ausarbeiten von langen Algorithmen sparen. Das Problem muß nicht, wie beispielsweise in Basic, genau in der betreffenden Programmiersprache ausformuliert werden. Sie müssen lediglich das Problem schildern. Die genaue Ausformulierung übernimmt Prolog. Kurz gesagt, eine Problemstellung kann in Prolog zirka um das Zehnfache kürzer formuliert werden, als mit herkömmlichen Programmiersprachen. Die einzige Arbeit, die der Programmierer von Prolog hat, besteht im Aufbau von Grunddefinitionen, die nach bestimmten Regeln, die Sie im Programm aufstellen, verknüpft werden. Wenn das Programm abgearbeitet wird, sucht sich Prolog einen Pfad durch den Dschungel an Definitionen und Regeln, und versucht, die vom Anwender gemachte Aussage zu beweisen oder eine Frage durch Verknüpfen der vorhanden Daten zu beantworten. Prolog geht also immer einen bestimmten, vom Programm selbst gewählten Pfad. Führt der gewählte Weg nicht zum Erfolg, sucht Prolog einen anderen, eventuell vorhandenen Pfad. Erst wenn wirklich keine logische Verknüpfung durchgeführt werden kann, gibt Prolog eine negative Antwort. Man kann also auf jeden Fall davon ausgehen, daß Prolog alle vorhandenen und vorgegebenen Möglichkeiten überprüft, und das ohne seitenlange »IF«-Abfragen.

Doch nun endlich zu einem kleinen Beispiel, daß das bisher noch ziemlich abstrakte Phänomen Prolog ein wenig veranschaulicht. Betrachten wir dazu das folgende Listing für Prolog 64:

eltern(dieter,monika,herbert).
eltern(dieter,monika,norbert).
brueder(A,B) :-
eltern(P,M,A),eltern(P,M,B).

Die beiden »eltern»-Zeilen stellen für dieses Programm die Wissensbasis dar. Die erste Zeile sagt aus, daß Dieter und Monika die Eltern von Herbert sind, die zweite Zeile teilt mit, daß sie gleichzeitig die Eltern von Norbert sind. Die dritte Zeile stellt nun eine Regel auf. Doch zunächst zum Sinn dieses Beispiels. Bedenken Sie, daß es sich nur um ein sehr einfaches Beispiel handelt, das insbesondere die Arbeitsweise von Prolog 64 erklären soll. In unserem Beispiel wollen wir das Programm fragen, ob Herbert und Norbert Brüder sind. Vielleicht ist Ihnen schon aufgefallen, daß alle Angaben in der Wissensbasis klein geschrieben sind. Sobald Prolog auf einen Großbuchstaben am Anfang eines Wortes stößt, wird dieses als Variable definiert. Um nun unsere Frage für den Prolog 64-Interpreter verständlich zu machen, müssen wir folgende Formulierung eingeben:

?-geschwister
(herbert,norbert).

Der Punkt am Ende der Frage ist zwingend erforderlich, da er für Prolog als Endekennzeichen dient. Nun sind die Variablen A und B mit Herbert (A) und Norbert (B) belegt. In der Regel »brueder« ist nun genau definiert, wann A und B Brüder sind. Nämlich genau dann, wenn A und B dieselben Eltern haben. Die Zeichenkombination »:-« leitet dabei den »Wenn«-Zweig ein. Das Komma zwischen den beiden Eltern-Anweisungen steht für eine UND-Verknüpfung. Bei den beiden Eltern-Angaben in der Regel, werden jetzt als erstes die Variablen P und M mit den Daten aus der Wissensbasis ergänzt (P=dieter M=monika). Danach wird überprüft, ob sich die »UND«-Verknüpfung als wahr erweist. Dies ist hier natürlich der Fall. Das Prolog 64-System gibt hier ganz einfach ein »yes« als Antwort. Wenn Sie sich vorstellen, daß noch mehr Elternkombinationen in der Wissensbasis vorhanden wären, würde die Suche nach der Antwort für Prolog um einiges schwieriger, führt aber selbstverständlich auch zum richtigen Ergebnis. Wenn Sie sich eingehend mit der Supersprache Prolog beschäftigen wollen, finden Sie detaillierte Informationen in dem Buch »Programmieren mit Prolog«, das im Heinz Heise Verlag erschienen ist.

Die Eigenheiten von Prolog 64

Prolog 64 arbeitet mit dem C 64-Editor Hand in Hand. Nach dem Laden erscheint zuerst der Prolog-Bildschirm. Mit der Anweisung »user.« kann von hier aus in den Basic-Editor gesprungen werden. Hier können Sie nun das Prolog-Programm wie gewohnt, mit vorangestellten Zeilennummern eingeben. Das Speichern des Programms erfolgt ebenfalls über die Basic-Befehle SAVE und VERIFY. Wollen Sie das Programm starten, müssen Sie wieder in den Prolog-Modus schalten. Dazu werden die Tasten <RUN/STOP> und <RESTORE> gleichzeitig gedrückt. Wenn Sie nun das Programm für eine Beweisführung aufgebaut haben, können Sie sofort eine Frage stellen, wie das auch in obigem Beispiel geschehen ist.

In Prolog 64 sind auch die Besonderheiten des C 64 berücksichtigt worden. So gibt es spezielle Befehle, mit denen Grafik und Musik programmiert werden kann.

Fazit

Prolog 64 eröffnet dem C 64-Besitzer eine völlig neue Welt. Das Flair des Neuen und Revolutionären, das das Phänomen Künstliche Intelligenz umgibt, kann, wenn man sich eingehend mit Prolog beschäftigt, völlig neue Dimensionen der Computer-Anwendung eröffnen. Der etwas hohe Preis von 289 Mark dürfte die Attraktivität dieses Produkts um einiges verringern. Auch das etwas knapp ausgefallene Handbuch ist noch ein Hindernis auf dem Weg zur Künstlichen Intelligenz. Zum Erlernen der Sprache allerdings ist das System Prolog 64 aber ohne weiteres geeignet.

(rf)

Prolog 64, Brainware GmbH, Kirchgasse 24, 6200 Wiesbaden, Tel. (06121) 372011
Programmieren in Prolog, Heinz Heise Verlag, Postfach 2746, 3000 Hannover 1

PDF Diesen Artikel als PDF herunterladen
Mastodon Diesen Artikel auf Mastodon teilen
← Vorheriger ArtikelNächster Artikel →