Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

2. Programmstruktur – Teil 2

Ähnliche Präsentationen


Präsentation zum Thema: "2. Programmstruktur – Teil 2"—  Präsentation transkript:

1 2. Programmstruktur – Teil 2
Prolog Programmieren in Logik 2. Programmstruktur – Teil 2 GK Info 13 (Hö) PROLOG – Eine Sprache der Künstlichen Intelligenz

2 Inhalt - Programmstruktur
• Einführung  • Fakten  • Datenbasis  • Fragen an die Datenbasis  • Regeln • Verbesserung der Ausgabe GK Info 13 (Hö) PROLOG – Eine Sprache der Künstlichen Intelligenz

3 Regeln In den bisherigen Beispielen waren einige Grundbegriffe wie weiblich durch die Datenbasis erklärt, andere Begriffe wie Vater mussten bei der Anfrage in die Grundbegriffe übersetzt werden: ?- weiblich(hera). ?- elternteil(E,aplollon),maennlich(E). , bedeutet und Dieses umständliche Verfahren kann vereinfacht werden, wenn zu den Fakten der Datenbasis noch Regeln hinzugefügt werden. GK Info 13 (Hö) PROLOG – Eine Sprache der Künstlichen Intelligenz

4 Regeln Die Regel für Mutter lautet:
Y ist Mutter von X, wenn Y Elternteil von X ist und Y weiblich ist. In PROLOG: mutter(X,Y) :- elternteil(X,Y),weiblich(X). Kopf der Regel falls, wenn Rumpf der Regel GK Info 13 (Hö) PROLOG – Eine Sprache der Künstlichen Intelligenz

5 Regeln Die Regel für Bruder lautet:
Y ist Bruder von X, wenn X und Y die gleiche Mutter und den gleichen Vater haben, Y männlich ist und ungleich X ist. In PROLOG: bruder(X,Y):- vater(X,V),mutter(X,M), vater(Y,V),mutter(Y,M), maennlich(Y), Y\=X. \= bedeutet ungleich GK Info 13 (Hö) PROLOG – Eine Sprache der Künstlichen Intelligenz

6 Klauseln Sowohl Fakten als auch Regeln bezeichnen wir als Klauseln.
Die Gesamtheit aller Klauseln bildet ein PROLOG-Programm. Dieses wird mit Hilfe des Editors als Datei angelegt. GK Info 13 (Hö) PROLOG – Eine Sprache der Künstlichen Intelligenz

7 Goal Statt Frage sagt man auch Ziel oder Goal, weil es sozusagen Ziel des PROLOG-Systems ist, die Frage zu beantworten. GK Info 13 (Hö) PROLOG – Eine Sprache der Künstlichen Intelligenz

8 Prädikate mit mehreren Regeln
Ein Prädikat minimum zur Berechnung der kleineren zweier natürlicher Zahlen ist gesucht. Das Minimum min(X,Y) zweier Zahlen X, Y genügt folgender Regel: Wenn X=<Y Dann min(X,Y)=X Sonst min(X,Y)=Y. GK Info 13 (Hö) PROLOG – Eine Sprache der Künstlichen Intelligenz

9 Prädikate mit mehreren Regeln
In PROLOG definieren wir ein dreistelliges Prädikat minimum(X,Y,Z), das in Z das Minimum von X und Y liefert. Dazu brauchen wir (mindestens) zwei Regeln: minimum(X,Y,X) :- X=<Y. minimum(X,Y,Y) :- X>Y. GK Info 13 (Hö) PROLOG – Eine Sprache der Künstlichen Intelligenz

10 Beispiel 2 Das nebenstehende Rechteck besteht aus 4 Gebieten, die mit den drei Farben rot, gelb und blau so eingefärbt werden sollen, dass keine gleichfarbigen Gebiete längs einer Linie aneinandergrenzen. GK Info 13 (Hö) PROLOG – Eine Sprache der Künstlichen Intelligenz

11 Beispiel 2 Wir definieren die Farben (Fakten): farbe(rot).
farbe(gelb). farbe(blau). Dann definieren wir eine Regel: einfaerbung(F1,F2,F3,F4). Diese Regel bedeutet, dass die Farben F1, F2, F3, F4 eine erlaubte Einfärbung des Rechtecks sind. GK Info 13 (Hö) PROLOG – Eine Sprache der Künstlichen Intelligenz

12 Beispiel 2 Diese Regel lautet: einfaerbung(F1,F2,F3,F4):-
farbe(F1),farbe(F2),farbe(F3),farbe(F4), F1\=F2,F1\=F4,F2\=F3,F2\=F4,F3\=F4. GK Info 13 (Hö) PROLOG – Eine Sprache der Künstlichen Intelligenz

13 Aufgaben Lösen Sie die Aufgaben 3 bis 7. GK Info 13 (Hö)
PROLOG – Eine Sprache der Künstlichen Intelligenz


Herunterladen ppt "2. Programmstruktur – Teil 2"

Ähnliche Präsentationen


Google-Anzeigen