contents previous up next
Previous: Repräsentation von Prädikaten mit einer Stelligkeit Up: Die CycL Repräsentationssprache Next: Ausblick

Inferenzmethoden im Detail

Folie 10

Die meisten KI-Programme besitzen nur eine Art von Inferenzschablonen. In CycL hingegen hat eine weitreichende Klassifizierung verschiedener Inferenzmechanismen stattgefunden. Jeder dieser Mechanismen besitzt optimierte Verfahren zur Ausführung. In diesem Kapitel werden drei dieser Verfahren näher betrachtet.

Inverse Relationen

Oft sind eine Beziehung P und ihr Inverses P' bekannt. Man kann entweder P(x, y) oder P'(y, x) in die Wissensbasis eintragen, aber da beide dasselbe bedeuten, sollte die inverse Beziehung automatisch auch eingetragen werden.

In CycL sind Inverse ,,total'', das heißt, das Inverse von parents enthält nicht sons oder daughters, sondern nur children; das Inverse von father ist fatherOf, nicht children. Aus diesem Grunde darf der Slot ``inverse'' nur einen Eintrag besitzen.

Jeder Slot, der nur Frame-Elemente als Einträge haben kann, kann einen inversen Slot besitzen. In Cyc sollte jeder solche Slot einen inversen Slot besitzen, und er wird sogar beim Erzeugen einer neuen Slot-Art automatisch von CycL angelegt.

Wird ein neuer Wert in einen Slot eingetragen, so fügt CycL automatisch die inverse Relation in die Wissensbasis ein (wird beispielsweise Tom in den children-Slot von Bill eingefügt, so fügt CycL automatisch Bill in den parents-Slot von Tom ein). Dies kann natürlich weitere Einfügungen auslösen.

Dieses Schema wird benötigt, denn in Cyc werden, wie in traditionellen Wissensbasen üblich, lediglich die Objekte und nicht die Einträge der Slots indiziert. Möchte man also herausfinden, welche Objekte einen bestimmten Eintrag in einem Slot enthalten, so müßte man ohne diesen Invertierungsmechanismus die gesamte Wissensbasis durchsuchen.

Generalisierte (Genl) Slots

Bestimmte Slots eines Frames enthalten eine Teilmenge der Einträge eines anderen Slots desselben Frames, zum Beispiel gehören alle guten Freunde eines Menschen zu seinen Freunden und Bekannten. Diese Beziehungen werden im genlSlot bzw. im specSlot des SlotUnits des betreffenden Slots gespeichert. Der genlSlot enthält dabei alle Slots, die eine Verallgemeinerung des betreffenden Slots darstellen, der specSlot enthält alle spezialisierenden Slots. Wird ein Wert in einen Slot eingetragen, so fügt CycL diesen Wert automatisch in alle generalisierenden Slots ein. Doch auch die umgekehrte Schlußfolgerung ist möglich, und zwar bei Negation. Weiß man, daß ein bestimmtes Element nicht zu einem Slot gehört, so kann man daraus folgern, daß es auch zu keinem specSlot dieses Slots gehören kann.

Dieser Mechanismus ist notwendig, um trotz vieler spezialisierter Beschreibungen das Allgemeine nicht aus den Augen zu verlieren, d. h. um auch aus speziellen Aussagen allgemeine Schlüsse ziehen zu können.

Verfeinerungen von Slots

Dieses Prinzip ist eng mit dem der generalisierten Slots verknüpft, aber es ist strenger: Ist ein Slot s, der als Verfeinerung eines Slots t angegeben wurde, nicht leer, so muß der Inhalt von s derselbe sein wie der Inhalt von t. Beispielsweise stellt der Slot famousFather eine Verfeinerung des Slots father dar. Besitzt eine Person einen berühmten Vater, muß er auch ihr Vater sein. Diese Beziehung wird in den Slots refinementOf bzw. refinements der SlotUnits der Slots famousFather bzw. father festgehalten.


contents previous up next
Previous: Repräsentation von Prädikaten mit einer Stelligkeit Up: Die CycL Repräsentationssprache Next: Ausblick