07.02.2014 Aufrufe

7 Logik erster Ordnung - BIOTEC

7 Logik erster Ordnung - BIOTEC

7 Logik erster Ordnung - BIOTEC

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

7 <strong>Logik</strong> <strong>erster</strong> <strong>Ordnung</strong> 1<br />

7 <strong>Logik</strong> <strong>erster</strong> <strong>Ordnung</strong><br />

7.1 Syntax und Semantik<br />

7.1.1 Symbole<br />

7.1.2 Terme<br />

7.1.3 Atomare Sätze<br />

7.1.4 Zusammengesetzte Sätze<br />

7.1.5 Quantoren<br />

7.2 Erweiterungen und notationelle Varianten<br />

7.2.1 <strong>Logik</strong> höherer <strong>Ordnung</strong><br />

7.2.2 Der λ-Operator<br />

7.2.3 Eindeutigkeitsoperatoren<br />

7.2.4 Notationelle Varianten<br />

7.3 Zwei Anwendungsbereiche für die <strong>Logik</strong> <strong>erster</strong> Ordung<br />

7.4 Ein prädikaten-logischer Agent in der WUMPUS-Welt<br />

7.4.1 Eine Schnittstelle zwischen Umgebung und Agent<br />

7.4.2 Einfacher Reflex-Agent<br />

7.5 Repräsentation der Veränderungen in der Welt<br />

7.5.1 Der Situtationskalkül<br />

7.5.2 Wegverfolgung<br />

7.6 Entdeckung verborgener Eigenschaften in der Welt<br />

7.7 Rangfolge von Aktionen<br />

7.7.1 Präferenz zwischen Aktionen<br />

7.7.2 Ziele und gesteuerte Agenten<br />

Grundlagen der KI WS 2007/2008


7.1 Syntax und Semantik 2<br />

7.1 Syntax und Semantik<br />

Syntax der <strong>Logik</strong> <strong>erster</strong> <strong>Ordnung</strong><br />

Satz → atomarer Satz<br />

| Satz Junktor Satz<br />

| Quantor V ariable, ...Satz<br />

| ¬Satz<br />

| (Satz)<br />

atomarer Satz → Prädikat(Term, ...) | Term = Term<br />

Term → Funktion(Term, ...)<br />

| Konstante<br />

| V ariable<br />

Junktor → ∧ | ∨ |⇔|⇒| ¬<br />

Quantor → ∀ | ∃<br />

Konstante → A | X 1 | Hans | ...<br />

V ariable → a | x | s | ...<br />

Prädikat → V or | HatFarbe | V erwandtMit | ...<br />

Funktion → Mutter | LinkesBeinV on | ...<br />

Grundlagen der KI WS 2007/2008


7.1 Syntax und Semantik 3<br />

7.1.1 Symbole<br />

Konstantensymbole<br />

Bezeichner<br />

Variablensymble<br />

Bezeichner<br />

(repräsentieren Individuenkonstanten)<br />

KingJohn, 2, UCB<br />

(repräsentieren Individuenvariablen)<br />

x,y,...<br />

Funktionssymbole (repräsentieren funktionale Abhängigkeiten)<br />

Bezeichner Sqrt, F, ...<br />

Prädikatensymbole (Prädikate repräsentieren Eigenschaften<br />

über Objekte)<br />

Bezeichner Brother, p, q, ...<br />

Grundlagen der KI WS 2007/2008


7.1 Syntax und Semantik 4<br />

7.1.2 Terme<br />

• Jede Variable ist ein Term.<br />

• Jede Konstante ist ein Term.<br />

• Wenn f ein n-stelliges Funktionssymbol ist und<br />

t 1 , ...,t n Terme sind, dann ist f(t 1 , ...,t n ) Term.<br />

Terme sind insbesondere Ausdrücke zur Symbolverarbeitung<br />

durch den Computer und beschreiben Objekte, über<br />

die Aussagen formuliert werden soll.<br />

Grundlagen der KI WS 2007/2008


7.1 Syntax und Semantik 5<br />

7.1.3 Atomare Sätze<br />

Atomic sentence = predecate(term 1 , ...,term n )<br />

or term 1 = term 2<br />

Term = function(term 1 ,...,term n )<br />

or constant or variable<br />

E.g., Brother(KingJohn, RichardTheLionheart)<br />

> (Length(LeftLegOf(Richard)),<br />

Length(LeftLegOf(KingJohn)))<br />

Grundlagen der KI WS 2007/2008


7.1 Syntax und Semantik 6<br />

7.1.4 Zusammengesetzte Sätze<br />

Complex sentences are made from atomic sentences<br />

using connectives<br />

¬S, S 1 ∧ S 2 , S 1 ∨ S 2 , S 1 ⇒ S 2 , S 1 ⇔ S 2<br />

Grundlagen der KI WS 2007/2008


7.1 Syntax und Semantik 7<br />

7.1.5 Quantoren (1)<br />

Universelle Quantifizierung ∀ x p(x)<br />

Zur Repräsentation von natürlichsprachlichen Sätzen, die<br />

allgemeine regelartige Aussagen machen, kann der Allquantor<br />

benutzt werden.<br />

Schreibkonvention: Variable beginnen mit kleinen Buchstaben,<br />

Konstanten-, Prädikat- und Funktionssymbole<br />

mit Buchstaben.<br />

Eine Variable ist selbst ein Term und kann deshalb als Argument<br />

einer Funktion oder eines Prädikats benutzt werden.<br />

Ein Term, der keine Variable enthält, heißt Grundterm.<br />

Existentielle Quantifizierung ∃ x p(x)<br />

Existentiell quantifizierte Sätze können zur Repräsentation<br />

natürlichsprachlicher Sätze, die Aussagen über einige<br />

Objekte aus einer Menge machen, benutzt werden. Der<br />

logische Satz ∃xP ist wahr, wenn P wahr ist für irgendein<br />

Objekt aus einem Universum von Objekten.<br />

Grundlagen der KI WS 2007/2008


7.1 Syntax und Semantik 8<br />

Quantoren (2)<br />

Geschachtelte Quantoren<br />

Komplexere Sätze werden oft mit mehreren Quantoren<br />

formuliert. Im einfachsten Fall hat man eine Folge gleichartiger<br />

Quantoren, also Sätze der Form ∀x 1 ∀x 2 ...∀x n P<br />

oder ∃x 1 ∃x 2 ...∃x n P. Solche Sätze werden abgekürzend<br />

geschrieben ∀x 1 , x 2 ,...,x n P bzw. ∃x 1 , x 2 , ...,x n P.<br />

Kommen Allquantoren und Existenzquantoren gemischt<br />

vor, dann ist die Reihenfolge wichtig. Eine Vertauschung<br />

der Reihenfolge verändert die Bedeutung eines Satzes.<br />

Grundlagen der KI WS 2007/2008


7.1 Syntax und Semantik 9<br />

Quantoren und Negation<br />

Die beiden Quantoren lassen sich mittels Negation ineinander überführen.<br />

Den De Morganschen Regeln für die Konjunktion und Disjunktion<br />

entsprechen Regeln für den All- und Existenzquantor:<br />

∀x¬P ≡ ¬∃xP ¬P ∧ ¬Q ≡ ¬(P ∨ Q)<br />

¬∀xP ≡ ∃x¬P ¬(P ∧ Q) ≡ ¬P ∨ ¬Q<br />

∀xP ≡ ¬∃x¬P P ∧ Q ≡ ¬(¬P ∨ ¬Q)<br />

∃xP ≡ ¬∀x¬P P ∨ Q ≡ ¬(¬P ∧ ¬Q)<br />

Gleichheit<br />

Zur Bildung von Sätzen in der <strong>Logik</strong> <strong>erster</strong> Ordung kann auch das<br />

Gleichheitszeichen als eine Art spezielles Prädikat verwendet werden.<br />

Sind t 1 und t 2 Terme, dann ist t 1 = t 2 ein Satz. Er ist wahr, wenn<br />

t 1 und t 2 unter einer Interpretation auf das gleiche Objekt referieren.<br />

Die Gleichheit wird also als Identitätsrelation interpretiert. Diese ist<br />

die zweistellige Relation, in der alle Paare in der ersten und zweiten<br />

Komponente dasselbe Objekt enthalten.<br />

Mit Hilfe der Gleichheit und der Negation kann ausgedrückt werden,<br />

dass zwei Objekt nicht identisch sind.<br />

Einsetzungsaxiom:<br />

p(t) ⇒ ∃x p(x)<br />

Gleichheitsaxiom:<br />

((t 1 = t ′ 1 ) ∧ (t 2 = t ′ 2 ) ∧ . . . ∧ (t n = t ′ n ))<br />

⇒ f(t 1 , . . . .t n ) = f(t ′ 1 , . . . , t′ n )<br />

Grundlagen der KI WS 2007/2008


7.2 Erweiterungen und notationelle Varianten 10<br />

7.2 Erweiterungen und notationelle<br />

Varianten<br />

7.2.1 <strong>Logik</strong> höherer <strong>Ordnung</strong><br />

Der Name ”<br />

<strong>Logik</strong> <strong>erster</strong> <strong>Ordnung</strong>“ kommt daher, dass<br />

man in dieser <strong>Logik</strong> nur über Objekte, d.h. über Entitäten<br />

<strong>erster</strong> <strong>Ordnung</strong> in de Welt, quantifizieren kann. In der<br />

<strong>Logik</strong> höherer <strong>Ordnung</strong> wird die Möglichkeit des Quantifizierens<br />

auf Relationen und Funktionen ausgedehnt. Damit<br />

lässt sich z.B. ausdrücken, dass zwei Objekte gleich<br />

sind, wenn sie in aller ihren Eigenschaften übereinstimmen,<br />

oder dass zwei Funktionen gleich sind, wenn sie für<br />

alle Argumente denselben Wert haben:<br />

∀x, y(x = y) ⇔ (∀p p(x) ⇔ p(y))<br />

∀f,g(f = g) ⇔ (∀x f(x) = g(x))<br />

Grundlagen der KI WS 2007/2008


7.2 Erweiterungen und notationelle Varianten 11<br />

7.2.2 Der λ-Operator<br />

Mit Hilfe des λ-Operators ist es möglich, Funktionen und<br />

Prädikate durch komplexe Ausdrücke statt nur durch<br />

einfache Symbole zu repräsentieren. Ist exp ein Ausdruck<br />

der die Variablen x 1 , x 2 ,...,x n enthält und eine<br />

Funktion auf diesen Variablen darstellt, dann ist<br />

λx 1 ,x 2 , ...,x n exp, genannt λ-Ausdruck, eine Repräsentation<br />

der Funktion, die in der gleichen Weise verwendet<br />

werden kann wie ein Funktionssymbol.<br />

Grundlagen der KI WS 2007/2008


7.2 Erweiterungen und notationelle Varianten 12<br />

7.2.3 Eindeutigkeitsoperatoren<br />

Um auszudrücken, dass es genau ein Objekt mit einer<br />

bestimmten Eigenschaft gibt, kann man den modifizierten<br />

Existenzquantor ∃! verwenden. Der Satz ∃!x P(x)<br />

besagt, dass es genau ein Objekt x mit der Eigenschaft<br />

P gibt. Er kann durch den Satz<br />

∃x P(x) ∧ ∀y P(y) ⇒ x = y<br />

umgeschrieben werden, d.h. der Eideutigkeitsoperator<br />

vergrößert nicht die Ausdrucksstärke der <strong>Logik</strong>.<br />

Mit Hilfe des Jota-Operators kann man ein als eindeutig<br />

existierend angenommenes und durch eine Eigenschft<br />

beschriebenes Objekt direkt bezeichnen. Mit dem Jota-<br />

Operator kann man also aus einem Satz einen Term bilden.<br />

Ist der Satz ∃!x P(x) gegeben, dann bezeichnet<br />

ι x P(x) genau das eine Objekt mit der Eigenschaft P.<br />

Grundlagen der KI WS 2007/2008


7.2 Erweiterungen und notationelle Varianten 13<br />

7.2.4 Notationelle Varianten<br />

Als Varianten der hier verwendeten Notationen werden<br />

in anderen Büchern, insbesondere in anderen Gebieten<br />

wie Mathematik oder Philosophie, manchmal<br />

die in der folgenden Tabelle aufgeführt verwendet.<br />

Operation Hier wen- Alternative Notationen<br />

wendete<br />

Notation<br />

Negation ¬P ∼ P P<br />

(nicht)<br />

Konjunktion P ∧ Q P&Q P · Q PQ P, Q<br />

(und)<br />

Disjunktion P ∨ Q P | Q P; Q P + Q<br />

(oder)<br />

Implikation P ⇒ Q P → Q P ⊃ Q<br />

(wenn-dann)<br />

Äquivalenz P ⇔ Q P ≡ Q P ↔ Q<br />

(genau wenn dann)<br />

Universelle<br />

Quantifizierung ∀x P(x) (∀x)P(x) ΛxP(x) P(x)<br />

(für alle)<br />

Existenzielle<br />

Quantifizierung ∃x P(x) (∃x)P(x) V xP(x)<br />

(es gibt ein) P(Skolem i )<br />

Relation R(x, y) (Rxy) Rxy xRy<br />

Grundlagen der KI WS 2007/2008


7.3 Zwei Anwendungsbereiche für die <strong>Logik</strong> <strong>erster</strong> Ordung 14<br />

7.3 Zwei Anwendungsbereiche für die<br />

<strong>Logik</strong> <strong>erster</strong> Ordung<br />

Grundlagen der KI WS 2007/2008


7.4 Ein prädikaten-logischer Agent in der WUMPUS-Welt 15<br />

7.4 Ein prädikaten-logischer Agent in<br />

der WUMPUS-Welt<br />

7.4.1 Eine Schnittstelle zwischen Umgebung<br />

und Agent<br />

• Wissensrepräsentationssprache:<br />

Prädikatenlogik (1. <strong>Ordnung</strong>)<br />

• Allgemeines Programm: (s.o. Fig. 6.1)<br />

A generic knowledge-based agent: [Fig. 7.2]<br />

function KB-AGENT(percept) returns an action<br />

static: KB, a knowledge base<br />

t, a counter, initially 0, indicating time<br />

TELL(KB,MAKE-PERCEPT-SENTENCE(percept,t))<br />

action ASK(KB,MAKE-ACTION-QUERY(t))<br />

TELL(KB,MAKE-ACTION-SENTENCE(t,action))<br />

t ←− t + 1<br />

return action<br />

• Typischer Wahrnehmungs-Satz:<br />

Percept([Stench,Breeze,Glitter,None,None],5)<br />

5 = Zeitindex<br />

• Typischer Aktions-Frage-Satz:<br />

∃a Action(a,5)<br />

ASK gibt Liste zurück für (beste) Aktion(en):<br />

z.B. a/Grab<br />

Grundlagen der KI WS 2007/2008


7.4 Ein prädikaten-logischer Agent in der WUMPUS-Welt 16<br />

Architekturen von Agenten<br />

(1) Reflex-Agenten<br />

Aktionen werden nur aus Wahrnehmungen abgeleitet.<br />

(2) Modell-gesteuerte Agenten<br />

Agent konstruiert und aktualisiert ein internes Modell<br />

der Welt und leitet daraus (kausal) Aktionen ab.<br />

(3) Ziel-gesteuerte Agenten<br />

Agent formuliert ein Ziel und sucht es zu finden.<br />

Grundlagen der KI WS 2007/2008


7.4 Ein prädikaten-logischer Agent in der WUMPUS-Welt 17<br />

Beispiel:<br />

7.4.2 Einfacher Reflex-Agent (1)<br />

∀ s,b,u, c,t Percept([s,b,Glitter, u, c],t)<br />

⇒ Action(Grab, t)<br />

o d e r<br />

.<br />

∀ s,b,u, c,t Percept([s,b,Glitter, u, c],t)<br />

⇒ AtGold(t)<br />

.<br />

∀ t AtGold(t) ⇒ Action(Grab, t)<br />

Die direkte Verknüpfung von Wahrnehmung und Aktion<br />

sollte aufgelöst werden in:<br />

– Wahrnehmung führt zu inneren Zuständen<br />

– von inneren Zuständen werden Aktionen abgeleitet<br />

Zerlegung notwendig bei sehr komplexen Wahrnehmungen,<br />

z.B. über Bilder (Computer Vision)<br />

Grundlagen der KI WS 2007/2008


7.4 Ein prädikaten-logischer Agent in der WUMPUS-Welt 18<br />

Einfacher Reflex-Agent (2)<br />

Probleme des Reflex-Agenten:<br />

• Nicht vollständig (logisch) entscheidbar:<br />

z.B. Wann ’climb’?<br />

Er weiß nicht, ob er Gold hat<br />

und ob er im Startkästchen ist.<br />

−→ nur darstellbar im Weltmodell, da keine<br />

Perzeption dafür existiert!<br />

• Gefahr von unendlichen Zyklen, da ein erreichter Perzeptionszustand<br />

bereits einmal vorkam und dann auch<br />

gleiche Aktion folgt.<br />

−→ nur durch Randonisierung vermeidbar,<br />

aber auf Kosten der Effizienz<br />

Grundlagen der KI WS 2007/2008


7.5 Repräsentation der Veränderungen in der Welt 19<br />

7.5 Repräsentation der Veränderungen<br />

in der Welt<br />

(1) Speichern der Wahrnehmungsfolge<br />

(Vergangenheit)<br />

−→ mühevolles Schließen<br />

(2) Konstruktion eines Modells der Welt und aktualisieren<br />

des Modells (diachronische Regeln)<br />

−→ Vergangenheit vergessen<br />

(1) in (2) überführbar<br />

(3) Situationen (zeitabhängige Modelle)<br />

• Speicherung einer Folge von Modellen<br />

−→ Vergangenheit (in Grenzen) aufbewahren.<br />

−→ Umschaltung, nicht gleichzeitig<br />

• Situationskalkül<br />

ein zeitabhängiges Modell<br />

Grundlagen der KI WS 2007/2008


7.5 Repräsentation der Veränderungen in der Welt 20<br />

7.5.1 Der Situtationskalkül<br />

In situation calculus, the world is a sequence of situations linked by actions: [Fig. 7.3]<br />

PIT<br />

Gold<br />

PIT<br />

PIT<br />

PIT<br />

PIT<br />

S 3<br />

Gold<br />

Forward<br />

PIT<br />

PIT<br />

PIT<br />

S<br />

2<br />

Gold<br />

PIT<br />

PIT<br />

Turn (Right)<br />

Gold<br />

PIT<br />

S<br />

1<br />

Forward<br />

PIT<br />

S<br />

0<br />

Grundlagen der KI WS 2007/2008


7.5 Repräsentation der Veränderungen in der Welt 21<br />

Situations-Kalkül<br />

• Statt Prädikat At(Agent, location):<br />

At(Agent, [1,1],S 0 )<br />

nur bei veränderlichen Prädikaten notwendig!<br />

• Verfolgung der Situation mit einer Funktion:<br />

Result(Forward,S 0 ) = S 1<br />

Result(Turn(Right),S 1 ) = S 2<br />

Result(Forward,S 2 ) = S 3<br />

allgemein:<br />

Result(action, S i ) = S j<br />

Grundlagen der KI WS 2007/2008


7.5 Repräsentation der Veränderungen in der Welt 22<br />

Effect-Axiome<br />

beschreiben Veränderungen der Welt<br />

∀ x, s Holding (x, Result(Grab, s))<br />

∀ x, s ¬Holding (x, Result(Release, s))<br />

allgemein:<br />

∀ x, s Pred(x, Result(action, s))<br />

Frame-Axiome<br />

beschreiben das Erhaltenbleiben der Welt<br />

∀ a, x, s Holding (x, s) ∧ (a ≠ Release) ⇒<br />

Holding (x, Result(a, s))<br />

Successor-State-Axiome<br />

Kombination von Effekt- und Frame-Axiomen<br />

∀ a, x, s Holding (x, Result(a, s)) ⇔ [(a = Grab ∧<br />

Present(x, s) ∧ Portable(x))<br />

∨ (Holding (x, s) ∧ a ≠ Release)]<br />

allgemein:<br />

true afterwards ⇔ [an action made it true ∨<br />

true already and no action<br />

made it false]<br />

Grundlagen der KI WS 2007/2008


7.5 Repräsentation der Veränderungen in der Welt 23<br />

7.5.2 Wegverfolgung (z.B. WUMPUS-Welt)<br />

Der Agent benötigt folgendes Wissen (1):<br />

• Die Richtung, in die er blickt. Sie wird durch einen<br />

Winkel in Graden angegeben, die x-Achse hat den<br />

Winkel 0, die y-Achse den Winkel 90 usw. Blickt der<br />

Agent am Anfang am Anfang nach Osten, d.h. in<br />

Richtung der x-Achse, dann heißt die anfangssituation<br />

Orientation(Agent, S 0 ) = 0<br />

• Die Anordnung von Orten, d.h. eine einfache<br />

Landkarte. Diese Landkarte besteht aus den Werden<br />

der Funktion OrtInRichtung, die aus einer Ortsangabe<br />

und einer Richtung die Ortsangabe für einen<br />

Ort erzeugt, der einen Schritt vorwärts in der angegebenen<br />

Richtung liegt. Für einen Ort (Quadrat) mit<br />

den Koordinaten x und y liefert die Funktion für die<br />

vier Himmelsrichtungen folgende Werte:<br />

∀ x, y LocationToward ([x,y], 90) = [x, y + 1]<br />

Grundlagen der KI WS 2007/2008


7.5 Repräsentation der Veränderungen in der Welt 24<br />

Der Agent benötigt folgendes Wissen (2):<br />

• Damit lässt sich formulieren, welcher Ort vor einem<br />

Agnten p liegt, der sich in Situation s am Ort l befindet:<br />

∀p,l, sAt(p,l, s) ⇒ LocationsAhead(p, s) =<br />

LocationToward(l, Orientation(p, s))<br />

• Nachbarschaftsbeziehungen zwischen Orten kann<br />

man ebenfalls mit der Funktion definieren:<br />

∀ l 1 , l 2 Adjacent(l 1 , l 2 ) ⇔ ∃ d l 1 =<br />

LocationToward(l 2 ,d)<br />

• Informationen über den Inhalt von Orten. Es<br />

wird angenommen, dass auf den Quadraten des 4×4-<br />

Gitters sich keine Wände befinden, aber auf allen diese<br />

umgebenden Quadraten.<br />

∀x, yWall([x, y]) ⇔ (x = 0 ∨ x = 5 ∨ y =<br />

5 ∨ y = 0)<br />

Grundlagen der KI WS 2007/2008


7.5 Repräsentation der Veränderungen in der Welt 25<br />

Der Agent benötigt folgendes Wissen (3):<br />

• Wissen über Ortsveränderungen des Agenten.<br />

Die Ortsbefindlichkeit ist also zeitabhängig, deshalb<br />

wird für das Prädikat An ein Folgezustandsaxiom benötigt.<br />

∀a,d,p,sAt(p,l, Result(a, s)) ⇔ [(a =<br />

Forward ∧ l = LocationsAhead(p, s) ∧<br />

¬Wall(l)) ∨ (At(p,l, s) ∧ a ≠ Forward)]<br />

• Wissen über Richtungsveränderungen des<br />

Agenten. Die Orientierung ist also zeitabhängig,<br />

deshalb wird für die Funktion Orientierung ein Folgezustandsaxiom<br />

benötigt.<br />

∀a,d,p,sOrientation(p, Result(a, s)) = d ⇔<br />

[(a = Turn(Right) ∧ d =<br />

Mod(Orientation(p, s) − 90,360))∨<br />

(a = Turn(Left) ∧ d =<br />

Mod(Orientation(p, s) + 90,360)) ∨<br />

(Orientation(p, s) = d∧<br />

¬(a = Turn(Left) ∨ (a = Turn(Right)))]<br />

Grundlagen der KI WS 2007/2008


7.6 Entdeckung verborgener Eigenschaften in der Welt 26<br />

7.6 Entdeckung verborgener<br />

Eigenschaften in der Welt<br />

Orten können Eigenschaften zugeordnet werden, die z.B.<br />

aus Wahrnehmungen abgeleite werden.<br />

• z.B. Feststellung, daß ein Feld ’windig’ ist:<br />

∀l,sAt(Agent, l, s) ∧ Breeze(s) ⇒ Breezy(l)<br />

s ... Situation<br />

l ... Ort<br />

−→ Wahrnehmung des Agenten → Eigenschaften eines<br />

Teiles der Welt<br />

• Gleichzeitig,<br />

daraus ableitbar, daß Nachbarfelder nicht OK sind<br />

Sichere Orte, d.h. solche, an denen sich weder das Wumpus<br />

noch Fallgruben befinden, werden durch Prädikat<br />

OK gekennzeichnet. Zur Ableitung von Wissen über sichere<br />

Orte aus den Wahrnehmungen bzw. Eigenschaften<br />

von Orten und dem Wissen ober das Wumpus, die Fallgruben<br />

und lokale Beziehungen werden Axiome formuliert,<br />

die ”<br />

synchrone Regeln “ heißen, weil sie verschiedene<br />

Eigenschaften desselben Weltzustandes zueinander<br />

in Beziehung setzen.<br />

Grundlagen der KI WS 2007/2008


7.6 Entdeckung verborgener Eigenschaften in der Welt 27<br />

Arten von Synchron-Regeln:<br />

• Kausale Regeln:<br />

Kausale Regeln geben die Richtung einer angenommenen<br />

Kausalität in der Welt wieder. Es wird angenommen,<br />

dass irgendwelche verborgenen Eigenschaften<br />

die wahrgenommenen Erscheinungen verursachen.<br />

∀l 1 ,l 2 ,sAt(Wumpus,l 1 ,s)<br />

∧Adjacent(l 1 ,l 2 ) ⇒ Smelly(l 2 )<br />

Ursache ⇒ Wirkung<br />

−→ model-based-reasoning!<br />

• Diagnostische Regeln:<br />

Diagnostische Regeln leiten das Vorhandensein verborgener<br />

Eigensachften direkt aus den Wahrnehmungen<br />

ab. Beispiele sind die bereits oben aufgeführtenbeiden<br />

Regeln.<br />

∀ l, s At(Agent, l, s) ∧ Breeze (s) ⇒ Breezy (l)<br />

Wahrnehmung ⇒ Weltzustand<br />

Grundlagen der KI WS 2007/2008


7.7 Rangfolge von Aktionen 28<br />

7.7 Rangfolge von Aktionen<br />

ZIEL:<br />

7.7.1 Präferenz zwischen Aktionen<br />

Beste Handlung (Optimierung)<br />

ACTION-VALUE-SYSTEM:<br />

Bewertungen: Great, Good, Medium, Risky, Deadly<br />

AUSWAHLAXIOM:<br />

∀a, s Great(a, s) ⇒ Action(a, s)<br />

∀a, s Good(a, s) ∧ (¬ ∃bGreat(b, s)) ⇒ Action(a, s)<br />

∀a, s Medium(a, s) ∧ (¬ ∃bGreat(b, s) ∨ Good(b, s))<br />

⇒ Action(a, s)<br />

∀a, s Risky (a, s) ∧ (¬ ∃bGreat(b, s) ∨ Good(b, s)<br />

∨ Medium(b, s)) ⇒ Action(a, s)<br />

IN WUMPUS-WORLD:<br />

Great:<br />

Good:<br />

Gold nehmen und aussteigen<br />

Gehen nach OK und noch nicht untersucht<br />

(z.B. (1, 1) → (1, 2))<br />

Medium: Gehen nach OK und bereits untersucht<br />

(z.B. (2, 1) → (1, 1))<br />

Risky:<br />

Gehen nach Kästchen, wo keine Gefahr bekannt<br />

(z.B. (3, 2) → (4, 2))<br />

Grundlagen der KI WS 2007/2008


7.7 Rangfolge von Aktionen 29<br />

7.7.2 Ziele und Aktionsfolgen<br />

In WUMPUS-Welt 2 Politiken (nacheinander ausführen)<br />

(1) Finden des Goldes,<br />

realisierbar durch action-value-System<br />

(2) Aussteigen mit dem Gold,<br />

so schnell wie möglich:<br />

∀s Holding (Gold, s) ⇒ GoalLocation([1, 1],s)<br />

(Explizites Ziel! → Ermittlung einer Handlungsfolge)<br />

Grundlagen der KI WS 2007/2008


7.7 Rangfolge von Aktionen 30<br />

Zur Bestimmung einer Aktionsfolge gibt es mindestens<br />

drei verschiedene Möglichkeiten:<br />

• SCHLIESSEN: (ASK nach sicherem Rückweg)<br />

mühevoll bei großen Welten, schwierig für Optimierung<br />

(Rückweg ist ein komplexer Satz)<br />

• SUCHE:<br />

Transformation in Zustandsraum<br />

(KB → Handlungsfolge<br />

→ Zustandsraum)<br />

• PLANUNG:<br />

spezielles Schlußfolgerungssystem (Kapitel 11)<br />

Grundlagen der KI WS 2007/2008

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!