Hintergrund der Erfindung
Feld der Erfindung
-
Die vorliegende Erfindung betrifft eine Abfrageeinrichtung,
die eine Vorwärtsinferenz auf Basis unsicherer Daten
vollziehen kann.
Beschreibung der bekannten Technik
-
Bislang werden bei der Lösung eines Problems mit Hilfe
einer Abfrageeinrichtung, von der die Inferenz entsprechend
einem Vorwärtsinferenzsteuersystem bearbeitet wird, Fakten
und Regeln als klar definierte Sache behandelt. Wenn die
Inferenz jedoch auf Basis unsicherer Daten vollzogen werden
soll, muß demzufolge ein die Sicherheit kennzeichnender
Wert als positiver Wert in das Schema eines
Konklusionsabschnittes für die Regel und den Fakt angegeben werden.
Die IEE Proceedings-D/Control Theory and Applications, vol.
134, part D, no. 4, July 1987, beschreibt auf den Seiten
231 - 237 derartige Expertensysteme und erwähnt, daß bei
Inferenzsystemen mit unsicheren Daten
Konfliktlösungsstrategien notwendig sind.
-
Die Konfliktlösung bei einem Vorwärtsinferenzsteuersystem
entsprechend dem Stand der Technik ist außerdem so
gestaltet, daß sie auf dem Neuigkeitswert des Faktes beruht, der
durch Anwendung der Regel aufbereitet wird.
-
Wie oben dargestellt ist, kann eine Abfrageeinrichtung
entsprechend dem Stand der Technik, basierend auf einem
Vorwärtsinferenzsteuersystem, lediglich mit klar definierten
Fakten und Regeln behandelt werden, und wenn ein unsicherer
Fakt und eine unsichere Regel behandelt werden sollen, muß
in das Schema der Fakten und das Schema des
Konklusionsabschnittes für die Regeln ein die Sicherheit kennzeichnender
positiver Wert eingegeben werden, und deshalb ist es
schwierig, mit unsicherem Wissen (Fakten und Regeln)
umzugehen. Außerdem gibt das Vorwärtsinferenzsteuersystem
entsprechend der Konfliktlösungsstrategien nach dem Stand der
Technik die Priorität dem neuen Fakt, der durch Anwendung
der Regeln aufbereitet wird, und es ist dadurch unmöglich,
schnell eine Konklusion hoher Wahrscheinlichkeit aus einem
Wissen hoher Wahrscheinlichkeit, wie es vorzugsweise
verwendet wird, abzuleiten.
-
Bei einer Abfrageeinrichtung mit
Rückwärtsinferenzsteuersystem ist es dagegen möglich, unter Verwendung des
Sicherheitswertes eine unscharfe Inferenz zu vollziehen. Da es
jedoch unmöglich ist, bei einem
Vorwärtsinferenzsteuersystem eine unscharfe Inferenz zu realisieren, ist es nicht
möglich, ein Vorwärtsinferenzsteuersystem in die
Abfrageeinrichtung mit Rückwärtsinferenzsteuersystem
einzubeziehen.
Zusammenfassung der Erfindung
-
Es ist eine vorrangige Aufgabe der vorliegenden Erfindung,
eine solche Abfrageeinrichtung zu schaffen, die durch
Hinzufügen eines Sicherheitswertes für Fakt und Regel schnell
eine Konklusion hoher Wahrscheinlichkeit ableiten kann, um
das Vorwärtsinferenzsteuersystem zu befähigen, eine
unscharfe Inferenz zu realisieren, so daß der Sicherheitswert
in die Konfliktlösung einbezogen werden kann, indem
bevorzugt Wissen hoher Wahrscheinlichkeit benutzt wird, und die
unter Verwendung der Wahrscheinlichkeit auf einfache Weise
eine kombinierte Inferenz mit der Rückwärtsinferenz
gestattet.
-
Um die oben beschriebene Aufgabe zu lösen, sieht die
vorliegende Erfindung die beanspruchte Abfrageeinrichtung vor.
-
Entsprechend der vorliegenden Erfindung werden der
Abfrageeinrichtung die in dem Vorwärtsinferenzsteuersystem
einzusetzenden Regeln und Fakten zugeführt und anschließend im
Speicher gespeichert. Wenn zu diesem Zeitpunkt die
Aufbereitung des Konklusionsabschnittes für die oben
beschriebenen Regeln unsicher ist, wird der den Grad der
Wahrscheinlichkeit kennzeichnende Sicherheitswert der Aufbereitung
zum Konklusionsabschnitt für die Regeln hinzugefügt und
dann im oben beschriebenen Speicher gespeichert, wenn
jedoch die Aufbereitung der Fakten unsicher ist, wird der den
Grad der Wahrscheinlichkeit kennzeichnende Sicherheitswert
der Aufbereitung zu den Fakten hinzugefügt und dann in dem
oben beschriebenen Speicher gespeichert. Demzufolge ist es
möglich, eine Inferenz mit unsicheren Daten als
Vorwärtsinferenz zu realisieren. Durch den Einsatz einer
Abfrageeinrichtung entsprechend der vorliegenden Erfindung ist es
außerdem möglich, unter Verwendung des Sicherheitswertes
bei der Konfliktlösungsstrategie für das
Vorwärtsinferenzsteuersystem schnell eine Konklusion hoher
Wahrscheinlichkeit abzuleiten.
Kurzbeschreibung der Zeichnungen
-
Diese und weitere Aufgaben und Merkmale der vorliegenden
Erfindung sollen durch die folgende Beschreibung deutlich
werden, die in Verbindung mit einem bevorzugten
Ausführungsbeispiel unter Bezugnahme auf die bei liegenden
Zeichnungen erfolgt, in denen:
-
Fig. 1 ein Blockschaltbild darstellt, das den Aufbau der
Abfrageeinrichtung entsprechend einem
Ausführungsbeispiel der vorliegenden Erfindung zeigt;
-
Fig. 2 ein Schema darstellt, das die Struktur der im
Arbeitsspeicher gespeicherten Fakten zeigt;
-
Fig. 3 ein Schema darstellt, das die Struktur der in der
Regelspeichereinheit gespeicherten Regeln zeigt;
-
Fig. 4 ein Schema darstellt, das die Speicherstruktur einer
Prämisseneinheit der Regeln zeigt;
-
Fig. 5 ein Schema darstellt, das die Speicherstruktur der
Konklusionseinheit der Regeln zeigt;
-
Fig. 6 ein Schema darstellt, das die Speicherstruktur der
Elemente eines Konfliktsatzes zeigt; und
-
Fig. 7 ein Schema darstellt, das die Elemente des
Konfliktsatzes zeigt, die in Form einer Kette miteinander
verbunden sind.
-
Fig. 1 veranschaulicht als Blockschaltbild den Aufbau einer
Abfrageeinrichtung 1, die sowohl einen
Vorwärtsinferenzsteuermechanismus als auch einen
Rückwärtsinferenzsteuermechanismus besitzt. Die Abfrageeinrichtung 1 enthält eine
Gesamtsteuereinheit 2, einen Vorwärtsinferenzteil 3, einen
Rückwärtsinferenzteil 4 und einen Arbeitsspeicher 5.
-
Die Gesamtsteuereinheit 2 hat die Aufgabe, eine
Abfrageoperation zu starten oder zu beenden, wie später beschrieben
werden soll, die Vorwärts/Rückwärtsinferenzsteuerung zu
bewerkstelligen, ein Eingabedatum zu analysieren, ein an die
Abfrageeinrichtung 1 gerichtetes Kommando zu verarbeiten
und die Schritte in die Tat umzusetzen, die während der
Abarbeitung aus der Inferenz resultieren.
-
Mit anderen Worten, die Eingabeverarbeitungseinheit 6 hat
die Aufgabe, die Dateien, welche die Fakten und Regeln
enthalten und von einer separaten Programmsyntheseeinrichtung
(nicht gezeigt) zusammengestellt werden, zu lesen und zu
analysieren, so daß die Inhalte der Dateien nach Fakten,
Vorwärtsinferenzregeln, Rückwärtsinferenzregeln und
Kommandos an die Abfrageeinrichtung 1 klassifiziert werden
können. Besteht das Ergebnis der Klassifizierung aus Fakten,
werden diese im Arbeitsspeicher 5 gespeichert; besteht das
Ergebnis der Klassifikation aus Vorwärtsinferenzregeln,
werden diese im Regelspeicher 11 des Vorwärtsinferenzteils
3 gespeichert; besteht das Ergebnis der Klassifikation aus
Rückwärtsinferenzregeln, werden diese im Regelspeicher 12
des Rückwärtsinferenzteiles 4 gespeichert; und ist das
Ergebnis der Klassifikation ein Kommando, dann wird die
Kommandoverarbeitungseinheit 7 aufgerufen. Wenn das der Fall
ist, bewirkt die Kommandoverarbeitungseinheit 7 je nach
Inhalt des Kommandos das Auslösen des Starts einer Inferenz
sowie die Verarbeitung eines von außen an die
Abfrageeinrichtung 1 gerichteten Kommandos, wie z.B. die Anzeige der
Inhalte des Arbeitsspeichers 5 oder die Spezifikation einer
Strategie. Wenn beispielsweise ein Kommando eingegeben
wird, das den Start der Inferenz anweist, wird die
Inferenzssteuereinheit 10 zur Ausführung der Inferenz
aufgerufen. Die Verarbeitungseinheit 8 für externe Funktionen
arbeitet die Schritte ab, die dann auszuführen sind, wenn
während der Ausführung der Inferenz eine externe Funktion
aufgerufen wird. Die Aktionsverarbeitungseinheit 9 hat die
Aufgabe, eine Aktion ausführen, die während einer
Vorwärtsinferenz oder einer Rückwärtsinferenz stattfindet, wie
später beschrieben werden soll.
-
Der Vorwärtsinferenzteil 3 vergleicht einen im
Arbeitsspeicher 5 stehenden Fakt mit den Prämissen der Regel, die im
Regelspeicher 11 gespeichert sind, um einen Konfliktsatz
zusammenzustellen, der aus einer Regel und dem
entsprechenden Fakt besteht, der die Prämisse befriedigt, wobei der
Konfliktsatz nachfolgend im Konfliktsatzspeicher 13
abgelegt wird. Dann wird entsprechend der
Konfliktlösungsstrategie eine der Regeln aus der Konfliktmenge ausgewählt und
die aus dem Konklusionsteil der ausgewählten Regel
resultierende Aktion eingeleitet.
-
Der Rückwärtsinferenzteil 4 ist in der Lage, ein Ziel
aufzustellen, das den im Regelspeicher 12 für die
Rückwärtsinferenz gespeicherten Regeln entspricht, und unter
Zuhilfenahme des Arbeitsspeichers 5 festzustellen, ob das Ziel
erreicht ist oder nicht.
-
Soll durch die Abfrageeinrichtung 1 mit dem oben
beschriebenen Aufbau eine Abfrage durchgeführt werden, laufen die
folgenden Arbeitsschritte ab.
-
(1) Durch eine nicht gezeigte Programmsyntheseanordnung
wird eine Datei, bestehend aus dem Fakt und der Regel,
vorbereitet.
-
(2) Die Inhalte dieser Datei werden durch die
Abfrageeinrichtung 1 analysiert und in einer Speichervorrichtung (den
Regelspeichern 11 und 12 und dem Arbeitsspeicher 5 nach
Fig. 1) abgelegt.
-
(3) Unter Verwendung des Faktes und der Regeln, die in den
Speichereinrichtungen 11, 12 und 5 stehen, wird die
Inferenz vollzogen, wie später beschrieben werden soll. Wenn
das nicht richtig funktioniert, wird der obige Schritt (1)
wieder aufgenommnen.
-
Die vorliegende Erfindung bezieht sich darauf, was für ein
Satzaufbau verwendet wird, um die Wissensdatei im Schritt
(1) zusammenzustellen, wie im Schritt (2) die Umwandlung
für das Abspeichern in den Regelspeichern 11 und 12 sowie
im Arbeitsspeicher 5 erfolgt, und wie die Inferenz im
Schritt (3) durchgeführt wird.
(A) Satzaufbau der Wissenselemente
-
Zu den oben genannten Wissenselementen gehören der Fakt und
die Regel. Nachfolgend soll der Satzaufbau jedes Faktes und
jeder Regel diskutiert werden. Der Sicherheitswert im
dargestellten Ausführungsbeispiel wird durch eine ganze Zahl
im Bereich von
-
-100 bis 100 ausgedrückt.
-
Ein Beispiel für den Satzaufbau eines Faktes in der
Wissensdatei ist in der folgenden Tabelle 1 veranschaulicht.
Tabelle 1
es ist Fieber vorhanden
der Name der Krankheit lautet Erkältung
der Name der Krankheit lautet Lungenentzündung
! Der Name der Krankheit lautet Lungenentzündung
-
Der erste Fakt von den Beispielen der in Tabelle 1
gezeigten vier Fakten lautet "es ist Fieber vorhanden" und
veranschaulicht das Schema eines Faktes (wie später beschrieben
werden soll), wobei ";" das Ende des Faktes anzeigt. Wenn
vor dem ";" keine Zahl steht, beträgt der Sicherheitswert
des Faktes 100, und ein solcher Fakt wird als klar
definierter Fakt behandelt. Der zweite Fakt zeigt an, daß der
Sicherheitswert des Faktes "die Krankheit ist eine
Erkältung" 80 beträgt. Beim dritten Fakt ist der Sicherheitswert
des Faktes "die Krankheit ist eine Lungenentzündung" mit
-50 angegeben. Wenn der Sicherheitswert mit einer negativen
Zahl belegt ist, bedeutet das, daß der Fakt bestritten
wird. Der vierte Fakt ist die Negativform des dritten
Faktes. Das am Kopfende des Satzes stehende Symbol "!" zeigt
die Negation an. Der dritte und vierte Fakt werden völlig
gleich behandelt.
-
Eine Art der Existenzform von Fakten ist die Ungültigkeit.
Die Existenz/Ungültigkeit wird jeder Prämisse im
Prämissenabschnitt der Regeln zugeordnet, wie noch erläutert werden
soll, und für die Prüfung verwendet, ob diese Prämisse
zutrifft oder nicht.
-
In Tabelle 2 wird ein Beispiel für den Satzaufbau einer
Regel in der Wissensdatei gezeigt.
Tabelle 2
-
Die Regel besteht aus der Regelbezeichnung < Diagnose der
Erkältung> , der Priorität "100", dem Prämissenabschnitt
"Wenn...", dem Konklusionssabschnitt "dann" und dem
Sicherheitswert "80", und das Ende einer Regel ist durch ";"
gekennzeichnet. Die Priorität dieser Regel beträgt 100. Die
Priorität im dargestellten Ausführungsbeispiel kann
irgendeinen Wert innerhalb des Bereiches von -32768 bis 32767
annehmen und ist Null (0), wenn die Bezeichnung weggelassen
ist. Demzufolge hat die oben in Tabelle 2 gezeigte Regel
Priorität gegenüber einer anderen Regel, bei welcher die
Bezeichnung weggelassen ist. Der Sicherheitswert kann
weggelassen werden und wird dann, wenn er weggelassen ist, als
100 angenommen, wie oben beschrieben wurde. Bei dem in
Tabelle 2 gezeigten Beispiel beträgt der Sicherheitswert 80.
-
Daß der Sicherheitswert der Regel 80 beträgt, bedeutet "der
Sicherheitswert des neu hinzukommenden Faktes beträgt in
dem Falle, daß der niedrigste der Sicherheitswerte aller
Fakten, die zu den Prämissen im Prämissenabschnitt passen
und im Arbeitsspeicher 5 gespeichert sind, 100 beträgt,
80". Wenn der niedrigste Sicherheitswert nicht 100 ist,
wird eine proportionale Verteilung vorgenommen, um den
Sicherheitswert 80 der Regel auf 100 zu bringen. Auf diese
Weise wird durch Hinzufügen eines negativen
Sicherheitswertes zum Sicherheitswert des Konklusionsabschnittes der
Regel und des Faktes eine Vorwärtsinferenz mit unsicheren
Daten ermöglicht.
(B) Speicherverfahren
-
Der Fakt und die Regel des oben beschriebenen Datensatzes
werden im Verlauf des Eingabeverarbeitungsprozesses durch
die in Fig. 1 gezeigte Eingabeverarbeitungseinheit 6 im
Arbeitsspeicher 5 beziehungsweise in den Regelspeichern 11
oder 12 abgespeichert.
-
Zunächst soll das Verfahren zum Abspeichern eines Faktes im
Arbeitsspeicher 5 beschrieben werden. Beispielsweise werden
die vier in Tabelle 1 gezeigten Fakten in Form solcher
Strukturen gespeichert, wie sie in Fig. 2 dargestellt sind.
Um den Wirkungsgrad des Speichers zu maximieren, enthält
die Abfrageeinrichtung 1 im dargestellten
Ausführungsbeispiel einen Speicherbereich, in dem gesondert eine
Strukturcharakteristik des Faktes abgespeichert ist. Ein Eintrag
in der Strukturcharakteristik des Arbeitsspeichers 5
enthält die Nummern der Anordnung der
Strukturcharakteristiken, entsprechen den Bereichen, in denen die eigentlichen
Strukturcharakteristiken gespeichert sind. Weiterhin sind
die Sicherheitswerte, Marken und Zeiger im Arbeitsspeicher
5 abgelegt. Das Verfahren zur Einteilung des oben
beschriebenen Bereiches hat keinen Einfluß auf die vorliegende
Erfindung.
Das heißt also, für die vorliegende Erfindung ist
es wichtig, daß jedes Element im Arbeitsspeicher 5 mit
einem Bereich zum Abspeichern des Sicherheitswertes
ausgestattet ist.
-
Gemäß Fig. 2 kennzeichnet die Strukturcharakteristik 1 im
ersten Eintrag eine Faktenstruktur der Art "Vorhanden ist
---", während die Strukturcharakteristik 2 eine
Faktenstruktur der Art "es ist ---" kennzeichnet. Im eigentlichen
Arbeitsspeicher 5 werden die Nummern der Anordnungen der
entsprechenden Strukturcharakteristiken wie oben beschrieben
gespeichert. Die Marke im dritten Eintrag ist eine Marke,
die verwendet wird, um auszudrücken, ob jedes Element im
Arbeitsspeicher 5 zu bejahen oder ob jedes Element im
Arbeitsspeicher negativ zu verwenden ist. Die Nummer der
Anordnung (oder Adresse) der Strukturcharakteristik steht im
letzten Eintrag in dem Zeiger.
-
Im weiteren soll das Verfahren zum Abspeichern einer Regel
im Regelspeicher 11 oder 12 beschrieben werden.
Beispielsweise werden die in Tabelle 2 gezeigten Regeln in Form
solcher Strukturen in den Regelspeichern 11 und 12
abgespeichert, wie sie in Fig. 3 dargestellt sind. Bei dem
dargestellten Ausführungsbeispiel werden, um ähnlich wie im
Falle des Faktes den Wirkungsgrad des Speichers zu
maximieren, der Prämissenabschnitt und der Konklusionsabschnitt
der Regeln in entsprechenden Bereichen gespeichert, und im
Prämissenabschnitt und Konklusionsabschnitt stehen die
jeweiligen Zeiger, die auf die Position des
Prämissenabschnitts und des Konklusionsabschnitts in den
entsprechenden oben beschriebenen Bereichen zeigen. Hier ist nur die
Struktur dargestellt, welche das Kernstück der Regel
bildet.
-
Obwohl die Regelspeicher 11 und 12 für die Vorwärts-
beziehungsweise Rückwärtsinferenz in Fig. 1 separat dargestellt
sind, belegen sie Regeln für die Vorwärts- und Rückwärts
inferenz in Wirklichkeit einen gemeinsamen Bereich, und
abhängig von dem im zweiten Eintrag in Fig. 3 angegebenen Typ
wird in Vorwärtsinferenzregel und Rückwärtsinferenzregel
unterschieden.
-
Jetzt soll das Verfahren zum Abspeichern der Regelprämissen
diskutiert werden. Die Struktur für das Abspeichern der
Prämissen wird in Fig. 4 gezeigt. Diese Struktur befindet
sich in einem Bereich, auf den der Prämissenzeiger in der
in Fig. 3 Regelstruktur zeigt. Ähnlich wie im Falle der
Faktenstruktur werden die Strukturcharakteristika für die
Prämissenstruktur in entsprechenden gesonderten Bereichen
gespeichert. Der erste Eintrag in der Prämissenstruktur
kennzeichnet die Art der Prämisse. Der genannte Art wird
bitweise im Speicher angezeigt. "Negation" ("Negat." in
Fig. 4) bedeutet dasselbe, wie die oben beschriebene
Negation eines Faktes. "Existenz" ("Exist." in Fig. 4) zeigt
das Vorhandensein der Prämisse an, wenn im Arbeitsspeicher
5 ein Fakt vorliegt, der diese Prämisse erfüllt. Die
Einträge für die Strukturcharakteristik und die Zeiger sind
dieselben, wie sie oben in Verbindung mit den Einträgen für
den Fakt beschrieben wurden. Der Eintrag für eine
Berechnungsgleichung wird in dem Fall verwendet, wenn die
Prämisse von einer Variablen Gebrauch macht und Beschränkungen
hinsichtlich der Variablen vorhanden sind. Der in
Wirklichkeit in dem Eintrag für die Berechnungsgleichung
gespeicherte Wert ist ein Zeiger auf die Struktur der Gleichung.
-
Im weiteren soll das Speicherverfahren für den
Konklusionsabschnitt der Regel beschrieben werden. Gemäß der in Fig. 3
gezeigten Regelstruktur handelt es sich um die Struktur
eines Bereiches, auf den der Zeiger des Konklusionsabschnitts
verweist. Wie in Fig. 5 gezeigt wird, besteht eine Aktion
im Konklusionsabschnitt aus dem Namen der Aktion und einem
Parameter. Die Aktion bei dem in Tabelle 2 gezeigten
Beispiel
lautet "ANZEIGEN" und "AUSFÜHREN (MAKE)" des Faktes.
Für das Anzeigen wird, da die Verarbeitung für die
Parameteranzeige und die Anzeige einer Zeichenfolge getrennt
erfolgt, im Falle der Anzeige einer Zeichenfolge der Wert für
"ANZEIGEN" eingetragen. Zum Hinzufügen des Faktes wird der
Wert für "AUSFÜHREN" eingetragen. Abschließend wird "ENDE
DER AKTION" eingetragen.
-
"ANZEIGEN", "AUSFÜHREN" und "ENDE DER AKTION" sind
eigentlich ganzzahlige Werte und bilden in dem dargestellten
Ausführungsbeispiel entsprechende Zeichenfolgen. In der Praxis
sind jedoch für "ANZEIGEN", "AUSFÜHREN" und "ENDE DER
AKTION" die Werte 1, 2 und 0 reserviert.
(C) Ausführen der Vorwärtsinferenz
-
Die Vorwärtsinferenz wird in folgenden Schritten vollzogen.
-
(1) Es erfolgt ein Vergleich zwischen jeder Prämisse im
Prämissenabschnitt der Regeln und dem Fakt im
Arbeitsspeicher 5, so daß die Regel ausgewählt werden kann, deren
Prämissen alle erfüllt werden. Wenn in dem Moment zu einer
bestimmten Regel im Arbeitsspeicher 5 eine Vielzahl von
Faktensätzen vorhanden ist, welche den Prämissenabschnitt
erfüllen, werden sie auseinandergehalten. Eine Regel, welche
auf Grund der Befriedigung ihrer Prämissen ausgewählt
wurde, wird nachfolgend als ausführbare Regel bezeichnet.
Ein Satz, bestehend aus dieser ausführbaren Regel und dem
dazugehörigen Fakt, wird Konfliktsatz genannt.
-
(2) Aus den in Schritt (1) ermittelten Konfliktsätzen wird
nur ein einziger ausgewählt. Die Auswahl des einen
Konfliktsatzes wird Konfliktlösung genannt, und die Art und
Weise der Auswahl heißt Strategie der Konfliktlösung, oder
einfach Strategie. Wenn kein Konfliktsatz vorhanden ist,
ist die Inferenz beendet.
-
(3) Der Konklusionsabschnitt der Regel, der im Ergebnis der
Konfliktlösung ausgewählt wurde, wird ausgeführt. Dies wird
als Feuern der Regel bezeichnet, oder einfach als Feuern.
Nach dem Feuern geht es zu Schritt (1) zurück.
-
Nach dem Ausführen der Regel wird stets ein Vergleich
zwischen der nächst folgenden Regel und dem Arbeitsspeicher 5
vorgenommen. Die Kombination einer Regel, die bereits
gefeuert hat, mit dem Fakt im Arbeitsspeicher 5 wird jedoch
nicht mehr zum Konfliktsatz hinzugefügt.
(C-1) Matching
-
Zwischen jeder Regelprämisse und dem Fakt im
Arbeitsspeicher 5 werden in folgender Weise Vergleiche des Schemas,
des Sicherheitswertes und des Bejahens/Negierens
durchgeführt.
-
(i) Das Schema wird auf Übereinstimmung geprüft. Ein
Schema bezieht sich auf eine Kombination mit
charakteristischem Aufbau, wie etwa "Es ist vorhanden ....", und einem
Wert "Fieber" in dem Satz "Es ist Fieber vorhanden". Als
Prämisse kann auch eine Variable verwendet werden, wobei in
einem solchen Fall die Prüfung unter Einsatz eines Wertes
in den Grenzen der Variablen erfolgt, um festzustellen, ob
die Schemata miteinander übereinstimmen.
-
(ii) Durch Kombination von Sicherheitswert und
Bejahungs-/Negierungs-Aussage wird das Matching entsprechend
der folgenden Tabelle 3 ermittelt.
Tabelle 3
Matching
Prämisse
Elemente im Arbeitsspeicher
Erfolgreich
Gescheitert
Bejahung
Negierung
Bejahung 20 < = Sicherheitswert
Bejahung Sicherheitswert < 20
Negierung Sicherheitswert < = -20
Negierung -20 < Sicherheitswert
Bejahung Sicherheitswert < = -20
Bejahung -20 < Sicherheitswert
Negierung 20 < = Sicherheitswert
Negierung Sicherheitswert < 20
-
Auf diese Weise werden, wenn alle Prämissen der Regel
zutreffen, die Sätze aus feuerbereiten Regeln und den Fakten
im Arbeitsspeicher 5 im Konfliktsatzspeicher 13 des in Fig.
1 gezeigten Vorwärtsinferenzabschnittes 3 erfaßt. Die
Speicherstruktur für die Konfliktsätze ist in Fig. 6
dargestellt. Die Struktur der Elemente des Konfliktsatzes
besteht aus der Regelnummer, der Anzahl der Elemente im
Arbeitsspeicher 5, in denen eine Übereinstimmung gefunden
wurde, der Beschränkung der Variablen während des Matching
und dem Zeiger für die Anordnung entsprechend der
Strategie. Diese Speicherstruktur wird nach erfolgreichem
Matching für jede Regel und den Fakt im Arbeitsspeicher 5
eingerichtet. Auf den Sicherheitswert kann über die
Regelnummer und die wm-Nummer zugegriffen werden.
(C-2) Konfliktlösung
-
Die Elemente des Konfliktsatzes, die im Schritt (C-1)
aufbereitet wurden, sind entsprechend der zu diesem Zeitpunkt
gültigen Strategie angeordnet. Bei dem dargestellten
Ausführungsbeispiel erfolgt das Anordnen nicht erst, nachdem
alle Elemente ermittelt wurden, sondern sobald ein Elemente
ermittelt wurde, werden die gefundenen Elemente
nacheinander
in eine Elementeliste eingetragen. Die Elemente werden
über entsprechende, in Fig. 6 dargestellte Zeiger
miteinander verkettet, wie in Fig. 7 gezeigt wird.
-
Wurde ein neues Element erzeugt, dann wird das neue Element
in folgender Weise in die Kette der Elemente eingefügt.
-
(A) Das Kopfelement des Konfliktsatzes wird einem Vergleich
unterworfen.
-
(B) Der Vergleich zwischen dem neuen Element und dem
Kopfelement erfolgt auf Basis der zu diesem Zeitpunkt gültigen
Strategie.
-
(C) Wenn in seinem Ergebnis dem neuen Element Priorität
gegeben wird, wird das neue Element vor dem Element
eingefügt, welches dem Vergleich unterworfen war, gefolgt vom
Abschluß.
-
(D) Wenn das neue Element nicht die Priorität erhalten hat,
wird das neue Element wieder mit dem nächstfclgenden
Element verglichen. Gibt es kein Element mehr, mit welchem es
verglichen werden kann, wird das neue Element nach dem
letzten Element eingefügt, gefolgt vom Abschluß.
(E) Zurück zu (B)
-
Für die Strategie, die im Schritt (B) zum Vergleichen
benutzt wird, existieren bisher die als "LEX" und "MEA"
bezeichneten Strategien. Dieser Typ von Strategien ist in der
Lage, die Konfliktlösung unter Berücksichtigung der Neuheit
des mit der Regelprämisse übereinstimmenden, im
Arbeitsspeicher 5 stehenden Faktes herbeizuführen. Wenn bei der
Inferenz der Sicherheitswert berücksichtigt werden soll,
ist es jedoch nicht einfach, auf Basis der Strategien "LEX"
und "MEA" eine gute Inferenz durchzuführen. Mit anderen
Worten, wenn eine Inferenz unter Einbeziehung des
Sicherheitswertes ausgeführt wird, ist es vorteilhaft, mit einer
Regel hohen Sicherheitswertes zu beginnen. Die Fakten hohen
Sicherheitswertes im Arbeitsspeicher 5 sind jedoch nicht
immer auf neue Fakten beschränkt. Deshalb wurden in dem
dargestellten Ausführungsbeispiel der vorliegenden
Erfindung die Sicherheitswerte von Regeln und Fakten negativ
gemacht, so daß der Sicherheitswert in die
Konfliktlösungsstrategie eingetragen werden kann und dadurch eine
effiziente Inferenz auf Basis unsicherer Daten ermöglicht wird.
-
Im Folgenden wird die Strategie bei Benutzung des
Sicherheitswertes beschrieben, wobei angemerkt werden soll, daß
dies dem Schritt (B) beim Einfügen eines Elementes
entspricht.
-
(a) In bezug auf das neue, durch das Matching gefundene
Element (Fakt) und das Vergleichselement im Konfliktsatz
wird auffolgende Weise ein "Sicherheitswert der Elemente"
ermittelt.
-
(a-1) Zur Ermittlung des "Sicherheitswertes der Regel"
beider Elemente mit Hilfe der Regelnummern dieser Elemente.
-
(a-2) An Hand der wm-Nummern werden die Sicherheitswerte
aller Fakten im Arbeitsspeicher 5 angeschaut, bei denen
eine Übereinstimmung mit den Regeln der beiden Elementen
gefunden wurde, und dann wird für jedes Element der
Sicherheitswert, der durch den kleinsten der Absolutwerte
gekennzeichnet ist, als "Sicherheitswert des Arbeitsspeicher"
ausgewählt.
-
(a-3) Aus dem in (a-1) gewonnenen "Sicherheitswert der
Regel" und dem in (a-2) ausgewählten "Sicherheitswert im
Arbeitsspeichers" wird der "Sicherheitswert der Elemente" für
jedes der Elemente durch Multiplikation des
"Sicherheitswertes
der Regeln" mit dem "Sicherheitswert des
Arbeitsspeichers" berechnet.
-
(b) Ausgehend von den "Sicherheitswerten der Elemente", die
in (a-3) ermittelt wurden, wird das Element mit dem höheren
Wert vor dem Element mit dem kleineren Wert in den
Konfliktsatz eingeordnet.
-
(c) Wurden für die "Sicherheitswerte der Elemente" gleiche
Werte gefunden, wird die "LEX"-Strategie eingesetzt, um zu
bestimmen, welchem der Elemente die Priorität zu geben ist.
(C-3) Ausführen der Regel
-
Nach Abschluß der Konfliktlösung in (C-2) wird das
Kopfelement des Konfliktsatzes herausgezogen, und es wird die
Aktion aus dem Konklusionsabschnitt der Regel ausgeführt, die
der Regelnummer des so herausgezogenen Elementes
entspricht. Lautet zu diesem Zeitpunkt die auszuführende
Aktion "AUSFÜHREN" oder "MODIFIZIEREN", dann wird der
"Sicherheitswert des Elementes", der in (C-2) ermittelt wurde,
zur oben genannten Aktion hinzugefügt (als Sicherheitswert
dem zu verändernden beziehungsweise im Arbeitsspeicher 5
hinzuzufügenden Fakt zugeordnet).
(D) Zusammenführung mit der Rückwärtsinferenz
-
Jetzt soll der Fall beschrieben werden, daß
Rückwärtsinferenz und Vorwärtsinferenz gleichzeitig stattfinden.
-
Gemäß der Rückwärtsinferenz wird die Baumstruktur der
gegebenen Regeln abgesucht und, wenn erforderlich (wenn z.B. zu
überprüfende Verzweigungen nicht länger verfügbar sind),
eine Abfrage durchgeführt, so daß der im Ergebnis der
Abfrage ermittelte Fakt und der Fakt, der als Ergbenis der
Konklusion der einzelnen Regeln erzeugt wurde, als Elemente
des Arbeitsspeicher 5 hinzugefügt werden können Die Suche
wird solange fortgesetzt, bis das Endziel erfüllt ist. Zu
diesem Zeitpunkt werden die Fakten, denen im Ergebnis der
Abfrage beziehungsweise durch die Konklusion der Regeln ein
Sicherheitswert zugeordnet wurde, in den Arbeitsspeicher 5
geschrieben.
-
Auf diese Weise ist die Struktur eines Faktes, dem der
Sicherheitswert bei der Rückwärtsinferenz zugeordnet wurde,
identisch mit der Struktur eines Faktes (zu dem der
Sicherheitswert hinzugefügt wird) für die Verwendung in einer
Vorwärtsinferenz, die entsprechend dem dargestellten
Ausführungsbeispiel der vorliegenden Erfindung als unscharfe
Inferenz möglich gemacht wird. Deshalb ist es möglich, den
Fakt, der mit einem Rückwärtsinferenzsystem ermittelt
wurde, für ein Vorwärtsinferenzsystem zu benutzen. Da die
Inferenz außerdem in der Reihenfolge mit den höheren
Sicherheitswerten begonnen wird, ist es möglich, eine
effiziente Inferenz zu vollziehen.
-
Entsprechend der vorliegenden Erfindung wird also dadurch,
daß der Sicherheitswert mit negativem Vorzeichen zum Fakt
und zur Regel hinzugefügt wird, die Inferenz unter Einsatz
unsicherer Daten in einer Vorwärtsinferenz ermöglicht.
Demzufolge ist es möglich, durch Nutzung des Sicherheitswertes
in der Strategie der Konfliktauflösung der Vorwärtsinferenz
vorzugsweise Wissen hohen Sicherheitsgrades zu verwenden,
um somit schnell eine Konklusion mit hohem Sicherheitswert
zu gewinnen. Weiterhin läßt sich auf einfache Weise eine
kombinierte Inferenz ausführen, bei der Vorwärtsinferenz
und Rückwärtsinferenz unter Benutzung des Sicherheitswertes
kombiniert werden.
-
Es ist anzumerken, daß das im vorangegangenen dargestellte
Ausführungsbeispiel zwar eine Abfrageeinrichtung des Typs
betrifft, bei dem gleichzeitig ein
Vorwärtsinferenzsteuermechanismus und ein Rückwärtsinferenzsteuermechanismus
verwendet wird, daß die vorliegende Erfindung jedoch nicht
ausschießlich darauf beschränkt ist, sondern auch auf eine
Abfrageeinrichtung anwendbar ist, die nur einen
Vorwärtsinferenzsteuermechanismus verwendet.
-
Aus der vorangehenden Beschreibung wird deutlich, daß mit
der vorliegenden Erfindung eine Abfrageeinrichtung
bereitgestellt wird, welche einen Speicher zur Speicherung von
Regeln und Fakten und einen Steuerteil enthält, der dazu
dient, durch Hinzufügen oder Löschen eines Faktes im
Speicher eine Vorwärtsinferenzsteuerung zu realisieren, wobei
zu dem Konklusionsabschnitt der Regel und dem im Speicher
abgelegten Fakt ein Sicherheitswert hinzugefügt wird, der
den Grad der Wahrscheinlichkeit des Zutreffens des
Konklusionsabschnitts und des im Speicher abgelegten Faktes
anzeigt und der eine Inferenz mit unsicheren Daten möglich
macht.
-
Durch Nutzung der vorliegenden Erfindung ist es demzufolge
möglich, einen Sicherheitswert in der Strategie der
Konfliktlösung der Vorwärtsinferenz zu verwenden und durch
bevorzugte Verwendung von Wissen mit einem hohen
Sicherheitswert schnell eine Konklusion hohen Sicherheitsgrades
abzuleiten. Es ist ebenfalls möglich, unter Benutzung des
Sicherheitswertes eine kombinierte Inferenz aus
Vorwärtsinferenz und Rückwärtsinferenz zu realisieren.