Beschreibung
Verfahren und Diagnosesystem zur Diagnose eines technischen Systems
Die Erfindung betrifft ein Verfahren und ein DiagnoseSystem zur Diagnose eines technischen Systems auf Basis eines semantischen Netzes.
Im privaten sowie im gewerblichen Umfeld eingesetzte technische Geräte und Systeme werden zunehmend komplexer. Je mehr Komponenten innerhalb eines derartigen technischen Gerätes bzw. Systems miteinander zusammenwirken und sich somit gegenseitig beeinflussen, desto schwieriger, zeitaufwendiger und somit kostenintensiver gestaltet sich auch die Suche nach
Fehlern oder deren Ursache. Als Beispiel sei hier ein industrielles Automatisierungssystem genannt, bei dem heutzutage verschiedenste Komponenten wie speicherprogrammierbare Steuerungen, Ein-/Ausgabegeräte, Sensoren und Aktoren usw. über Bussysteme miteinander gekoppelt sind und interagieren, um einen automatisierten Fertigungsprozess durchzuführen. Durch die hohe Anzahl der an einem Automatisierungsprozess beteiligten Komponenten und deren vielfältige Wirkbeziehungen untereinander gestaltet sich für einen Techniker die Aufgabe, eine Fehlerursache für eine Störung zu ermitteln, äußerst schwierig. Dies gilt insbesondere dann, wenn ein Automatisierungssystem auf Grund veränderter Prozessanforderungen häufig modifiziert wird, so dass der besagte Techniker nur begrenzt auf bereits erworbenes Erfahrungswissen zurückgreifen kann.
Zunehmend werden daher einem solchen Techniker (halb-) automatische Diagnosesysteme zur Seite gestellt. Derartige Diagnosesysteme sind spezielle Expertensysteme, die jedoch bisher trotz erheblicher Fortschritte der künstlichen Intelligenz- forschung in den letzten Jahren nur für Nischenanwendungen verwendet werden.
Heutige Diagnosesysteme arbeiten mit Wissensbasen, die speziell für ein zu diagnostizierendes System, Gerät oder eine zu untersuchende Domäne erstellt wurden. Die Wissensbasen sind üblicherweise austauschbar, so dass ein Diagnosesystem bei der Fehlersuche für verschiedene Geräte und Systeme eingesetzt werden kann.
Die verwendeten Wissensbasen sind in der Regel in Form eines semantischen Netzes implementiert. Bei einem semantischen Netz handelt es sich um ein formales Modell von Begriffen und ihren Beziehungen zueinander. Die Begriffe sind als Knoten eines Graphen darstellbar, der das semantische Netz repräsentiert. Die Beziehungen bzw. Relationen zwischen den Begriffen des semantischen Netzes werden durch die Kanten des Graphen realisiert. Ein semantisches Netz bildet die Grundlage dafür, um mit informationstechnischen Mitteln Wissen wiederzugeben.
Insbesondere bei der rechnergestützten Diagnose werden zunehmend Bayes-Netze eingesetzt. Diese dienen der Repräsentation von unsicherem Wissen und daraus möglichen Schlussfolgerungen. Sie stellen eine spezielle Form der Formulierung von wahrscheinlichkeitstheoretischen Modellen dar. So wird beispielsweise in "Automatische Ursachenanalyse von Fehlern und Störungen in Walzwerken - eine Übersicht und praktische Bei- spiele", in Proceedings of AKIDA, Seiten 399 bis 410, Germa- ny, Aachen, 9. - 10.November 2004, Weidl G., Rode M., Horch A., Shaw C., Vollmer A., eine Anwendung von Bayes' sehen Netzwerken für die Fehlersuche in automatisierten industriellen Systemen beschrieben.
Der Erfindung liegt die Aufgabe zugrunde, die Diagnose eines technischen Systems insbesondere mit veränderbarer Struktur zu erleichtern.
Diese Aufgabe wird durch ein Verfahren zur Diagnose eines technischen Systems gelöst, bei dem eine Diagnoseanfrage erfasst wird,
zur Bearbeitung der Diagnoseanfrage ein in einem Speicher abgelegtes semantisches Netz, umfassend mindestens ein erstes semantisches Teilnetz, ausgewertet wird, wobei das erste Teilnetz Wissen über einen ersten, mit der Diagno- seanfrage in Relation stehenden Teil des technischen Systems repräsentiert, während der Auswertung des ersten Teilnetzes ein zur Beantwortung der Diagnoseanfrage benötigtes zweites semantisches Teilnetz ermittelt wird, das Wissen über einen zweiten Teil des technischen Systems repräsentiert, das zweite Teilnetz in den Speicher geladen wird, das semantische Netz durch Verknüpfung des ersten Teilnetzes mit dem zweiten Teilnetz über mindestens eine semantische Abhängigkeit erweitert wird und - die Diagnoseanfrage durch Auswerten des erweiterten semantischen Netzes beantwortet wird.
Ferner wird die Aufgabe durch ein Computerprogrammprodukt enthaltend Codemittel zur Ausführung des genannten Verfahrens gelöst, wenn besagtes Computerprogrammprodukt auf einem Datenverarbeitungssystem ausgeführt wird.
Weiterhin wird die Aufgabe durch ein Diagnosesystem zur Diagnose eines technischen Systems gelöst, wobei das Diagnosesys- tem aufweist: eine Erfassungseinheit zur Erfassung einer Diagnoseanfrage, einen Speicher für ein zur Bearbeitung der Diagnoseanfrage vorgesehenes semantisches Netz, umfassend mindestens ein erstes semantisches Teilnetz, wobei das erste Teilnetz
Wissen über einen ersten, mit der Diagnoseanfrage in Relation stehenden Teil des technischen Systems repräsentiert, eine Auswertungseinheit zur Auswertung des semantischen Netzes , - Mittel zur Ermittlung eines zur Beantwortung der Diagnoseanfrage benötigten zweiten semantischen Teilnetzes, das Wissen über einen zweiten Teil des technischen Systems repräsentiert, wobei die ersten Mittel derart beschaffen
sind, dass das zweite Teilnetz während einer Auswertung des ersten Teilnetzes ermittelbar ist,
Mittel zum Laden des zweiten Teilnetzes in den Speicher, - Mittel zur Erweiterung des semantischen Netzes durch Ver- knüpfung des ersten Teilnetzes mit dem zweiten Teilnetz über mindestens eine semantische Abhängigkeit, wobei die Auswerteeinheit zur Beantwortung der Diagnoseanfrage durch Auswerten des erweiterten semantischen Netzes vorgesehen ist.
Vorteilhafte Ausführungsformen sind in den Unteransprüchen genannt .
Ein Kerngedanke der Erfindung ist darin zu sehen, dass das im Speicher abgelegte semantische Netz dynamisch, also während der Bearbeitung einer Diagnoseanfrage, erweitert werden kann. Dies ist insbesondere bei vernetzten und/oder modularisierten Systemen von Vorteil, wie sie beispielsweise im Bereich der Automatisierungstechnik mehr und mehr zum Einsatz kommen. Je- doch nicht nur im industriellen Bereich sondern auch im privaten und nichtindustriellen Bereich werden modular aufgebaute miteinander vernetzbare Baugruppen immer verbreiteter. Man denke hierbei nur an die vielfältigen Anschlussmöglichkeiten peripherer Geräte an einen Personal Computer, komplexe Gebäu- deautomatisierungssysteme oder umfangreiche Heimelektroniksysteme.
All die genannten Systeme unterliegen in der Praxis relativ häufigen Änderungen ihres strukturellen Aufbaus . Um einen An- wender eine effiziente Diagnosemöglichkeit an die Hand zu geben, wird daher eine ebenfalls dynamisch neu strukturierbare Wissensbasis für die Diagnose in Form eines erweiterbaren semantischen Netzes vorgeschlagen.
Bei einer beispielsweise auf Grund eines im technischen System auftretenden Fehlers gestellten Diagnoseanfrage wird, nachdem diese erfasst wurde, zunächst das im Speicher abgelegte semantische Netz ausgewertet. Zu diesem Zeitpunkt um-
fasst das semantische Netz zumindest das erste semantische Teilnetz, das Wissen über den ersten Teil des technischen Systems beinhaltet, der dem ersten Anschein nach einen Zusammenhang zu der Diagnoseanfrage aufweist. Es ist durchaus denkbar, das der Speicher vor dem Erfassen der Diagnoseanfrage völlig leer ist und das erste Teilnetz erst aufgrund der Diagnoseanfrage und des zu dieser in Relation stehenden Teilnetzes des technischen System in den Speicher geladen wird.
Auf Basis des zu diesem Zeitpunkt im Speicher abgelegten semantischen Netzes wird nun abgewogen, ob das gespeicherte Wissen für eine zufrieden stellende Beantwortung der Diagnoseanfrage ausreicht oder eine Erweiterung des semantischen Netzes sinnvoll erscheint. Sollte letzteres der Fall sein, so wird das zur Beantwortung der Diagnoseanfrage benötigte zweite Teilnetz ermittelt und in den Speicher geladen. Das zweite Teilnetz repräsentiert Wissen über einen zweiten Teil des technischen Systems, der während der Auswertung des semantischen Netzes als zur Beantwortung der Diagnoseanfrage rele- vant eingestuft wurde.
Erstes und zweites semantisches Teilnetz können jeweils als Wissensmodule zur Beschreibung abgegrenzter Teile des technischen Systems betrachtet werden. Beispielsweise könnte bei einem Auto das erste semantische Teilnetz zur Beschreibung der Autobatterie vorgesehen sein, während das zweite semantische Teilnetz die Lichtmaschine beschreibt. In einem realen Auto besteht zwischen der Batterie und der Lichtmaschine eine Korrelation aufgrund des technischen Zusammenwirkens dieser beiden Elemente. Diese sollte natürlich auch durch das bei der Beantwortung der Diagnoseanfrage verwendete semantische Netz repräsentiert sein. Zu diesem Zweck werden erstes und zweites semantisches Teilnetz in einem weiteren Verfahrensschritt miteinander über eine semantische Abhängigkeit ver- knüpft, so dass das nunmehr resultierende semantische Netz auch die Abhängigkeiten der Komponenten des ersten und zweiten Teils des technischen Systems - in dem Beispiel zwischen Batterie und Lichtmaschine - korrekt wiedergibt.
In der beschriebenen Art und Weise lassen sich selbstverständlich je nach Komplexität der gestellten Diagnoseanfrage auch noch beliebig mehr semantische Teilnetze mit dem bereits im Speicher abgelegten semantischen Netz verknüpfen, um zu einer zufrieden stellenden Beantwortung der Diagnoseanfrage zu kommen. In der Regel findet während der Auswertung des im Speicher abgelegten semantischen Netzes eine Art Frage- und Antwort-Spiel zwischen dem Diagnosesystem und seinem Anwender statt, welches dem Diagnosesystem hilft, den Fehler im technischen System genauer zu lokalisieren und gegebenenfalls das semantische Teilnetz entsprechend zu erweitern. Da die beschriebene Auswertung und das dynamische Nachladen von Teilnetzen während der Bearbeitung der Diagnoseanfrage zur Lauf- zeit erfolgt, muss nicht, wie im Stand der Technik vorbekannt, das gesamte technische System bereits vor Bearbeitung der Diagnoseanfrage vollständig modelliert sein. Es ist offensichtlich, dass hierdurch auch signifikant Rechenzeit eingespart werden kann, da nicht bei jeder Diagnoseanfrage ein das komplette technische System modellierendes semantisches Netz ausgewertet werden muss.
Der Vorteil, der sich durch die Möglichkeit ergibt, das semantische Netz zur Laufzeit situationsabhängig zu erweitern, soll anhand eines typischen Dialoges mit einem Druckratgeber verdeutlicht werden, wie er bei einem aus dem Stand der Technik bekannten Diagnoseverfahren ablaufen würde. In dem Beispiel hat ein Anwender einen Fotodrucker an seinen Computer angeschlossen. Es handelt sich um einen ThermoSublimations- drucker, der ein defektes Heizelement aufweist und daher eine schlechte Druckqualität zeigt. Der Anwender dieses Heim-PC- Systems ist sich der Fehlerursache nicht bewusst und möchte daher über die Hilfestellung seines Betriebssystems eine Antwort auf die von ihm gestellte entsprechende Diagnoseanfrage erhalten. Nachdem der Anwender den Druckratgeber startet, läuft typischerweise folgender Dialog zwischen Ratgeber und
Anwender ab:
Ratgeber: Welches Problem liegt vor?
Anwender: Die Fotodruckqualität ist nicht zufrieden stellend.
Ratgeber: [...] Verbessert sich die Druckqualität, nachdem Sie Papier für digitalen Fotodruck verwendet und den Papiertyp festgelegt haben? Anwender: Nein, die Druckqualität ist noch immer nicht zufrieden stellend.
Ratgeber: Funktioniert der Drucker einwandfrei? Lesen Sie in der Druckerdokumentation den Abschnitt über die Wartungsaufgaben, die sie selbst ausführen können. Möglicherweise müssen sie die Tintendüsen reinigen und justieren oder den Farbbereich überprüfen. Hat sich die Druckqualität nach Ausführen dieser Wartungsaufgaben verbessert?
Anwender: Nein, die Druckqualität ist noch immer nicht zu- frieden stellend.
Ratgeber: Gibt es ein Problem mit dem Druckertreiber? [Es folgen Anweisungen zum Neuinstallieren des Druckertreibers. ] Nachfolgend ausgeführte Schritte gelten nicht für alle Drucker, denn einige Druckerherstel- ler haben eigene Installationsschrittfolgen, die
Sie ausführen müssen. Der Druckerhersteller kann Ihnen sicherlich mitteilen, welche Schrittfolge sie verwenden sollen. [...]
Konnte das Problem durch die Neuinstallation oder Aktualisierung des Druckertreibers behoben werden?
Anwender: Nein, das Problem besteht weiterhin.
Ratgeber: Mit diesem Ratgeber lässt sich das Problem nicht beheben .
Der oben beschriebene Dialog ist typisch für ein Expertensystem, welches auf ein semantisches Netz aufbaut, dass eine starre Beschreibung eines technischen Systems darstellt. Der Fehlersuchedialog verläuft für den Anwender nicht zufrieden stellend, da ihm bei seinem Problem nicht geholfen wurde. Im Gegenteil, er musste sehr zeitaufwendige Aktionen durchführen, die letztlich überhaupt nichts bewirkt haben oder potentiell sogar noch neue Probleme verursacht haben könnten (beispielsweise durch die Reinstallation des Druckertreibers) .
Der nicht zufrieden stellende Verlauf ist also dadurch begründet, dass das zugrunde liegende semantische Netz nicht vollständig der Struktur des zu untersuchenden technischen Systems entsprach. Die Wissensredakteure der Druckerwissensbasis hatten offenbar einen Tintenstrahldrucker im Sinn, als sie die Wissensbasis erstellt haben. Selbstverständlich ist mit einer Wissensbasis, die Wissen über ein Heim-PC-System mit angeschlossenem Tintenstrahldrucker repräsentiert, keine sinnvolle Beratung für eine an einem Thermosublimationsdru- cker auftretende Störung möglich, da dieser ganz andere Probleme beim Druck aufweist als ein Tintenstrahldrucker.
Bei Verwendung des erfindungsgemäßen Diagnosesystems ließe sich eine für den Anwender wesentlich befriedigendere Verantwortung der Diagnoseanfrage erzielen. Hierbei würde der Anwenderdialog an geeigneter Stelle eine Frage beinhalten, die auf den vom Anwender verwendeten Druckertyp gerichtet ist. Vor dem Stellen dieser Frage würde das im Speicher abgelegte semantische Netz u.U. überhaupt kein Wissen über einen etwaigen Drucker enthalten. Erst nachdem beim Auswerten des semantischen Netzes festgestellt wurde, dass der Fehler mit dem verwendeten Drucker zusammenhängt und eine zufrieden stellende Antwort auf die Diagnoseanfrage nur geleistet werden kann, wenn detailliertes Wissen im semantischen Netz über den verwendeten Druckertyp vorliegt, wird ein den Drucker beschreibendes semantisches Teilnetz in den Speicher geladen und mit dem bereits vorliegenden semantischen Netz verknüpft.
In vorteilhafter Ausgestaltung der Erfindung wird vor und/oder während der Auswertung des semantischen Netzes die Angabe mindestens einer auf das technische System bezogenen Information von einem Anwender erfragt. Dies hilft wie oben beschrieben dem Diagnosesystem, einen weiteren relevanten Teil des strukturellen Aufbaus des zu diagnostizierenden technischen Systems zu erkennen und das semantische Netz entsprechend zu gestalten.
In weiterer vorteilhafter Ausgestaltung der Erfindung wird das erste Teilnetz in den Speicher geladen, sofern an einer Komponente des ersten Teils des technischen Systems Symptome einer Störung des technischen Systems erkannt werden. Zur Be- antwortung der Diagnoseanfrage benötigt das Diagnosesystem zunächst eine initiale Wissensbasis, mit der es sich an die korrekte Antwort herantasten kann. Ein sinnvoller Startwert ist das semantische Teilnetz, welches den Teil des technischen Systems beschreibt, an dessen Komponenten der Fehler als erstes erkannt wird.
Bei einer weiteren Ausführungsform der Erfindung wird die Diagnoseanfrage von einem Anwender innerhalb eines Anwenderdialogs gestellt. Hierbei erkennt der Anwender eine Fehlfunktion oder Störung des technischen Systems und formuliert eigeninitiativ eine entsprechende Diagnoseanfrage.
Es ist hingegen aber auch eine weitere Ausgestaltung der Erfindung denkbar, bei der die Diagnoseanfrage automatisch auf Basis einer Störung des technischen Systems generiert wird. Hierbei muss der Anwender gar nicht selbst eine Fehlfunktion erkannt haben. Die Störung kann auch automatisch vom technischen System selbst erfasst werden, welches daraufhin automatisch eine entsprechende Diagnoseanfrage generiert. Der An- wender wird hierbei beispielsweise automatisch sowohl auf das
Auftreten einer derartigen Störung aufmerksam gemacht als auch über eine geeignete Beseitigung dieser Störung in Kenntnis gesetzt.
In weitere vorteilhafter Ausgestaltung der Erfindung wird vor und/oder während der Auswertung des semantischen Netzes mindestens eine Zustandsgröße des technischen Systems mit einem Sensor automatisch erfasst und bei der Auswertung des ersten Teilnetzes und/oder bei der Ermittlung des zweiten Teilnetzes berücksichtigt. Hierbei wird mit Hilfe der Sensorik eines entsprechenden Diagnosesystems zumindest ein Teil der zur Beantwortung der Diagnoseanfrage benötigten Informationen automatisch erfasst, ohne dass hierzu ein Zutun des Anwenders
notwendig ist. Es ist auf diese Weise sogar denkbar, dass ein derartiges DiagnoseSystem von der Erfassung der Diagnoseanfrage über das Sammeln von Informationen mit entsprechenden Sensoren bis hin zur Erzeugung der Diagnoseantwort komplett automatisch und autark ohne Benutzerinteraktion arbeitet. Schließlich können im Anschluss auf Basis der so erzeugten Diagnoseantwort sogar entsprechende Maßnahmen zur Beseitigung einer Störung oder eines fehlerhaften Zustandes vollkommen automatisch durchgeführt werden.
Eine weitere vorteilhafte Ausgestaltung der Erfindung kennzeichnet sich dadurch, dass das semantische Netz semantisch verknüpfte Knotenvariablen enthält, die über jeweils eine Merkmalskennung identifizierbar sind, und die Verknüpfung des ersten und zweiten Teilnetzes durch folgende Verfahrensschritte vollzogen wird:
Identifikation einer ersten Knotenvariable des ersten Teilnetzes anhand einer gesuchten Merkmalskennung, Identifikation einer zweiten Knotenvariable des zweiten Teilnetzes anhand der gesuchten Merkmalskennung, Löschen der ersten oder zweiten Knotenvariable, Zuordnung von auf die gelöschte Knotenvariable bezogenen semantischen Abhängigkeiten zu der nicht gelöschten Knotenvariable .
Das semantische Netz ist hierbei aus Knotenvariablen aufgebaut, denen jeweils eine Merkmalskennung zugeordnet ist. Anhand dieser Merkmalskennung sind die einzelnen Knotenvariablen identifizierbar. Beispielsweise könnte eine solche Merk- malskennung bei einem einen Fahrradscheinwerfer repräsentierenden semantischen Teilnetz "Spannung" lauten. Eine Knotenvariable des besagten semantischen Teilnetzes wäre also durch den Begriff "Spannung" identifizierbar. Auch ein weiteres semantisches Teilnetz, welches einen Dynamo beschreibt, könnte eine Knotenvariable mit der Merkmalskennung "Spannung" aufweisen. Bei der beschriebenen Ausgestaltung der Erfindung würde zur Kopplung des ersten und zweiten Teilnetzes zunächst die Gleichheit dieser Merkmalskennungen erkannt. Das Diagno-
sesystem würde zu dem Schluss kommen, dass eine Kopplung der beiden semantischen Teilnetze über die beiden Knotenvariablen mit der Merkmalskennung "Spannung" zweckmäßig ist.
Die beiden Knotenvariablen mit der Merkmalskennung "Spannung" stehen mit weiteren Knotenvariablen ihrer jeweiligen Teilnetze in einer semantischen Beziehung. Beispielsweise wäre ein Ausfall des Scheinwerfers dadurch zu begründen, dass an den Klemmen des Scheinwerfers keine Spannung anliegt. Eine derar- tige Ursache-Symptombeziehung ist im semantischen Teilnetz des Scheinwerfers in Form von semantischen Relationen hinterlegt. Weiterhin wäre beispielsweise im semantischen Teilnetz des Dynamos, dessen Aufgabe es ist, die erwünschte Spannung zu erzeugen, mindestens eine semantische Relation hinterlegt, aus der sich eine Ursache für einen Spannungsausfall ableiten ließe.
Um nun die beiden Teilnetze miteinander zu verschmelzen, wird einer der beiden Knotenvariablen mit der Merkmalskennung "Spannung" gelöscht. Die zuvor auf die gelöschte Knotenvariable bezogenen semantischen Abhängigkeiten werden nun auf die nicht gelöschte Knotenvariable mit der Merkmalskennung "Spannung" umgebogen, so dass sich' eine Verknüpfung beider Teilnetze durch eine kausale Abhängigkeit ergibt.
Selbstverständlich kann die Verknüpfung zweier Teilnetze auch über mehrere Knotenvariablen der jeweiligen Teilnetze erfolgen, sofern mehrere Paare gleicher Merkmalskennung in den beiden semantischen Teilnetzen vorhanden sind.
Für die Implementierung einer Merkmalskennung stehen vielfältige Möglichkeiten zur Verfügung. So kann hierbei nicht nur mit Begriffen gearbeitet werden, sondern auch mit einfachen numerischen Identifikatoren, deren Bedeutung in einer zusätz- liehen für die beteiligten Wissensredakteure zugänglichen Datenbank hinterlegt sein kann. Durch die simple Verwendung einfacher identischer numerischer Identifikatoren für Knotenvariable gleicher Semantik lassen sich Wissensmodule in tra-
ditionellen Datenbanken sehr einfach verwalten, welche kompatible Schnittstellen mit minimalem Rechenaufwand in kürzester Zeit ermitteln können.
In weiterer vorteilhafter Ausgestaltung der Erfindung ist den Knotenvariablen jeweils eine bedingte Wahrscheinlichkeitsverteilung zugeordnet, wobei die Wahrscheinlichkeitsverteilung einer Knotenvariable von mindestens einer über eine semantische Abhängigkeit mit der besagten Knotenvariable verknüpften weiteren Knotenvariable bestimmt ist. Eine derartige Verknüpfung der Knotenvariablen wird beispielsweise bei Bayes-Netzen angewandt. Bayes-Netze werden zurzeit von vielen Experten als besonders vielversprechende Wissensrepräsentationsform für eine rechnergestützte Diagnose eingestuft.
Insbesondere wenn die Hardwareressourcen eines für die Diagnose verwendeten Systems begrenzt sind, ist eine Ausführungsform der Erfindung vorteilhaft, bei der das erste oder das zweite Teilnetz während der Bearbeitung der Diagnoseanfrage durch eine Ersatzknotenvariable ersetzt wird, die mindestens eine semantische Abhängigkeit zwischen dem ersten und dem zweiten Teilnetz zur Verknüpfung der Ersatzknotenvariable mit dem nicht ersetzten Teilnetz hat. Hierdurch kann insbesondere Rechenzeit gespart werden, was besonders dann von Vorteil ist, wenn das Verfahren auf einem Embedded System durchgeführt wird. Bei dem beschriebenen Verfahrensschritt wird ein für die Beantwortung der Diagnoseanfrage aktuell als wenig relevant angesehenes Teilnetz auf eine einzelne Knotenvariable reduziert. Hierdurch müssen bei der Beantwortung der Diag- noseanfrage die semantischen Abhängigkeiten des reduzierten
Teilnetzes nicht ausgewertet werden. Dies bietet sich vor allem dann an, wenn diese semantischen Abhängigkeiten mit der aktuellen Diagnoseanfrage nur sehr schwach korrelieren, so dass sie vernachlässigt werden können.
Darüber hinaus kann in weiterer Ausgestaltung der Erfindung auch der zur Durchführung des Verfahrens benötigte Speicher dadurch reduziert werden, dass das zweite Teilnetz nach der
Beantwortung der Diagnoseanfrage wieder aus dem Speicher gelöscht wird. Bei einem solchen Diagnosesystem wäre vorstellbar, dass initial vor der Beantwortung einer Diagnoseanfrage immer nur ein semantisches Teilnetz im Speicher abgelegt ist, welches ein zentrales Element des zu diagnostizierenden technischen Systems beschreibt. Erst wenn bei der Auswertung dieses Teilnetzes zur Beantwortung der Diagnoseanfrage festgestellt wird, dass Wissen über ein an diesen zentralen Teil angeschlossenen peripheren Teil benötigt wird, wird das se- mantische Teilnetz entsprechend erweitert. Nach Beantwortung der Diagnoseanfrage wird das erweiterte Wissen wieder aus dem Speicher gelöscht, so dass bei der Beantwortung der nächsten Diagnoseanfrage zunächst wieder allein mit dem semantischen Teilnetz des zentralen Elementes begonnen werden kann.
Nahezu unbegrenzte Ressourcen können für die Diagnose des technischen Systems in vorteilhafter Ausgestaltung der Erfindung dadurch bereitgestellt werden, dass das zweite Teilnetz von einem Server über eine Internet- oder Intranetverbindung in den Speicher geladen wird. Hierdurch müssen die Teilnetze bzw. Wissensbasen, die den einzelnen Teilen oder Komponenten eines komplexen technischen Systems zugeordnet sind, nicht alle zentral vorgehalten werden. Denkbar wäre beispielsweise, dass ein Zulieferer einer peripheren Komponente für ein Auto- matisierungssystem auch ein dieses beschreibendes Wissensmodul in Form eines semantischen Teilnetzes zur Verfügung stellt, welches im Bedarfsfall für eine Diagnose des vernetzten Automatisierungssystems über das Internet geladen werden kann und somit mit dem semantischen Netz, welches übrige Kom- ponenten des Automatisierungssystems beschreibt, verknüpft werden kann.
Auf Grund der hohen Komplexität und des zunehmenden Vernetzungsgrades automatisierter, insbesondere industrieller Sys- teme, ist eine Ausführungsform der Erfindung vorteilhaft, bei der das Verfahren zur Störungsanalyse eines Automatisierungssystems vorgesehen ist.
Im Folgenden wird die Erfindung anhand der in den Figuren dargestellten Beispiele näher beschrieben und erläutert.
Es zeigen:
FIG 1 ein Ablaufdiagrainm einer Ausführungsform des erfindungsgemäßen Verfahrens zur Diagnose eines technischen Systems,
FIG 2 schematisch den Aufbau eines Diagnosesystems zur Diagnose eines technischen Systems,
FIG 3 ein Wissensmodul, welches als Wissensnetzvorlage für im Speicher des Diagnosesystems abgelegte Teilwissensnetze dient, FIG 4 eine Wissensbibliothek, FIG 5 exemplarisch eine semantische Abhängigkeit zwischen einer ersten Knotenvariable und einer zweiten Knotenvariable,
FIG 6 eine als Fehlerknoten ausgeführte erste Knotenvariable, FIG 7 eine zweite Knotenvariable in Form eines Symptomknotens , FIG 8 eine dritte Art von Knotenvariablen, die als
Schlussfolgerungsknoten ausgeführt ist,
FIG 9 eine erste Knotenvariable, die als erweiterbarer Fehlerknoten ausgeführt ist,
FIG 10 einen erweiterbaren Symptomknoten, der durch eine zweite Knotenvariable 18 repräsentiert wird, FIG 11 schematisch eine Erweiterung eines semantischen
Netzes, welches als aktives Wissen im Speicher eines DiagnoseSystems abgelegt ist,
FIG 12 drei Wissensmodule einer Wissensbibliothek, FIG 13 ein erstes semantisches Teilnetz, welches durch Instanzierung aus einem ersten Wissensmodul aus FIG 12 hervorgegangen ist, FIG 14 eine Erweiterung des aktiven Wissens um eine Instanz eines zweiten Wissensmoduls,
FIG 15 eine Verschmelzung des ersten und eines zweiten semantischen Teilnetzes zu einem gemeinsamen semantischen Netz,
FIG 16 eine Erweiterung des semantischen Netzes mit ei- nem dritten semantischen Teilnetz, welches ebenfalls aus einer Instanzierung des zweiten Wissensmoduls hervorgeht,
FIG 17 die Integration des dritten semantischen Teilnetzes in das im aktiven Wissen abgelegte semanti- sehe Netz,
FIG 18 die Erweiterung des aktiven Wissens durch ein viertes semantisches Teilnetz, welches eine Instanz eines dritten Wissensmoduls aus der Wissensbibliothek darstellt, FIG 19 die Integration des vierten semantischen Teilnetzes und
FIG 20 das komplette resultierende semantische Netz.
FIG 1 zeigt ein Ablaufdiagramm einer Ausführungsform des er- findungsgemäßen Verfahrens zur Diagnose eines technischen
Systems. Der Startpunkt 1 des Verfahrens ist gekennzeichnet durch ein Erfassen bzw. Generieren der zu beantwortenden Diagnoseanfrage. Hierbei kann die Diagnoseanfrage entweder durch einen Anwender gestellt worden sein oder aber automa- tisch durch einen innerhalb des technischen Systems aufgetretenen Fehler getriggert werden. Beispielsweise kann ein automatischer Komponentenmonitor eine Störung identifizieren. Ein solcher Komponentenmonitor basiert auf einem semantischen Netz, beispielsweise einem Bayes-Netz, dessen Knotenvariablen bzw. deren Werte regelmäßig mit ausgewählten Istwerten des technischen Systems bzw. eines mit Hilfe des technischen Systems durchzuführenden Prozesses versehen werden. Ein solcher Komponentenmonitor kann mittels dieser Evidenzen eine Wahrscheinlichkeit dafür ermitteln, dass eine Komponente des technischen Systems gestört ist. Auf diese Art und Weise kann der Komponentenmonitor anstelle eines Anwenders die Fehlersymptomatik und die Identität der Komponente, an der sich
diese Symptomatik zeigt, an ein Diagnosesystem zur Ausführung des Diagnoseverfahrens melden.
Startet ein Anwender hingegen das Diagnoseverfahren, so teilt er dem Diagnosesystem zunächst mit, an welcher Komponente des technischen Systems sich die Startsympomatik manifestiert. Beispielsweise geschieht dies durch Ablesen und Eingeben der entsprechenden Geräteseriennuiraner oder Typ- bzw. Bestellnummer. Das Diagnosesystem kann alternativ die Identität der ge- störten Komponente selbständig z.B. durch Auslesen einer e- lektronischen Geräteseriennummer erfassen. So verfügen beispielsweise instabus EIB-Geräte der Firma Siemens für die Ge- bäudeautomatisierungstechnik über Programmiertaster, die sich für diesen Zweck umfunktionieren lassen. Der Anwender identi- fiziert das Automatisierungsgerät an dem sich die Fehlersymptomatik manifestiert nach Aufforderung des Diagnosesystems durch einen Druck auf den Programmiertaster des Geräts.
In einem ersten Verfahrensschritt 2 ermittelt das Diagnose- System ein erstes semantisches Teilnetz, welches Wissen über einen ersten, mit der Diagnoseanfrage in Relation stehenden Teil des technischen Systems repräsentiert. Bei diesem ersten Teil des technischen Systems handelt es sich um den Teil oder die Komponente, an der zuvor die Störung festgestellt wurde. Das erste Teilnetz wird in einen Speicher des Diagnosesystems geladen und wird auf diese Weise dem sogenannten aktiven Wissen des Diagnosesystems zugeordnet. Als aktives Wissen des Diagnosesystems wird das formalisierte Expertenwissen bezeichnet, mit dem das System "aktiv" Schlussfolgerungen zie- hen und Diagnosen erstellen kann.
In einem zweiten Verfahrensschritt wird nun ein zurzeit lediglich aus dem ersten semantischen Teilnetz gebildetes semantisches Netz mit dem Ziel ausgewertet, eine Diagnoseant- wort auf die Diagnoseanfrage zu finden. Das Diagnosesystem beginnt zunächst damit, vom Anwender unabhängig und selbständig Evidenzen zu sammeln, z.B. durch vorprogrammierte automatische Tests. Dies entspricht z.B. dem Verhalten eines Arz-
tes, der neben der Befragung des Patienten die eigenen Sinneswahrnehmungen in die Diagnosestellung mit einbezieht. Ein Arzt wird einem Patienten nicht fragen: "Ist ihre Gesichtsfarbe aschfahl?", wenn er dies selbst sehen kann. Ebenso wird auch das Diagnosesystem die Zustände des technischen Systems, auf die es Zugriff hat, ohne den Anwender zu befragen, selbst erfassen.
In dem semantischen Netz, welches insbesondere als Bayes-Netz ausgeführt ist, sind testbare Merkmale besonders gekennzeichnet und der durchschnittliche Aufwand für den jeweils anzuwendenden diagnostischen Test eingetragen. Da das Diagnosesystem sowohl den durchschnittlichen Testaufwand wie auch die aktuell wahrscheinlichsten Testergebnisse kennt, kann das System den Nutzen einer Durchführung des Tests vorhersagen. Wenn dem System ferner bekannt ist, welche Diagnosetests ungefährlich durchgeführt werden können, kann das System noch vor einer Befragung des Anwenders eine Wissensvorbelegung des zugrunde liegenden Bayes-Netzes durchführen. Sinnvollerweise wird hierbei in absteigender Reihenfolge des vorhergesagten
Testnutzens vorgegangen. Das System erhält hierdurch eine Art Vorahnung und kann dem Anwender gegebenenfalls sinnvollere Fragen stellen. Dies reduziert auch die Anzahl der notwendigen Fragen, die dem Anwender zur Beantwortung der Diagnose- frage gestellt werden müssen.
Dieses Vorgehen lässt sich wiederum gut am instabus EIB verdeutlichen: Ist das Diagnosesystem an das Hausbussystem eines Gebäudes angeschlossen, hat es Zugriff auf die internen Da- tenspeicher aller erreichbarer Busgeräte. Damit hat das Diagnosesystem bereits eine große Menge an Programmier-, Ver- schaltungs- und Konfigurationsdaten zur Verfügung, ohne überhaupt einen menschlichen Techniker befragt zu haben. So kann das Diagnosesystem z.B. von einem Busankoppler den Betrag seiner Speisespannung abfragen, oder die Parametrierung einer Helligkeitsschwelle, Ausschaltverzögerung etc. auslesen. Im Idealfall kann das System allein anhand dieser selbständig ermittelten Evidenzen eine Diagnose stellen.
Der zweite Diagnoseschritt 3 wird zweckmäßig in mehrere parallel laufende Threads unterteilt. Neben einem Hauptthread, der den Anwender befragt, werden zwei oder mehrere Paral- IeIthreads ausgeführt, die einen von der Befragung des Anwenders unabhängigen Test durchführen. Eine derartige Verfahrensweise ist besonders bei hochgradig vernetzten Systemen, wie sie z.B. in der Gebäudeautomatisierungstechnik häufig anzutreffen sind, viel versprechend, da ein DiagnoseSystem die- se Systeme quasi als „Sinnesorgane" einsetzen kann. Ein weiterer Vorteil dieser Vorgehensweise ist darin zu sehen, dass die von einem Diagnosesystem objektiv ermittelten Evidenzen in der Regel verlässlicher sind als die subjektiven Angaben des Anwenders .
Hat das Diagnosesystem eine selbständige Wissensvorbelegung durchgeführt, beginnt der eigentliche Diagnoseprozess . Hierbei findet in der Regel eine Kommunikation mit dem Anwender statt, die dem System hilft, den Fehler bzw. dessen Ursachen näher einzugrenzen.
Während der Auswertung des semantischen Netzes überprüft das Diagnosesystem kontinuierlich, ob schon eine Diagnoseantwort gefunden wurde. Falls dies nicht der Fall ist, wird über- prüft, ob eine Fortsetzung der Auswertung des bisher im Speicher abgelegten semantischen Netzes oder aber dessen Erweiterung zum Auffinden einer geeigneten Diagnoseantwort sinnvoll ist.
Eine erste Verzweigung 4 im Ablaufdiagramm kennzeichnet die hierbei aufgeworfene Frage, ob eine Diagnoseantwort bereits gefunden wurde. Ist dies der Fall, so ist der Endpunkt 8 des Verfahrens durch die Beantwortung der Diagnoseanfrage erreicht. Ist dies nicht der Fall, wird eine zweite Verzweigung 35 erreicht, bei der die Frage aufgeworfen wird, ob das aktive, durch das erste Teilnetz repräsentierte Wissen „erschöpft ist". Hierzu wird eine Wahrscheinlichkeit dafür ermittelt, dass mit dem derzeitigen aktiven Wissen eine zufrieden stel-
lende Diagnoseantwort gefunden werden kann. Sofern diese Wahrscheinlichkeit ausreichend hoch ist, eine weitere Auswertung des ersten semantischen Netzes zu rechtfertigen, wird zurück zum Verfahrenschritt 3 gesprungen und wie bereits oben beschrieben fortgefahren. Wird hingegen aufgrund der Wahrscheinlichkeitsbetrachtung nur ein geringer Testnutzen für eine weitere Auswertung auf Basis des ersten Teilnetzes prognostiziert und das aktive Wissen folglich als erschöpft betrachtet, wird in einem dritten Verfahrensschritt 5 ein zwei- tes Teilnetz ermittelt, welches auf Grund der vorhergehenden Auswertung des semantischen Netzes als geeignet angesehen wird, die Diagnoseantwort zu ermitteln. In einen vierten Verfahrensschritt 6 wird das zweite semantische Teilnetz in den Speicher geladen und schließlich in einem fünften Verfahrens- schritt 7 mit dem ersten semantischen Teilnetz verknüpft.
Das aus der Verknüpfung des ersten und zweiten Teilnetzes resultierende semantische Netz wird schließlich wie bereits beschrieben zur Auffindung der Diagnoseantwort weiter ausgewer- tet . Die Auswertung und die gegebenenfalls hierbei durchgeführte Erweiterung des semantischen Netzes werden solange durchgeführt, bis die gewünschte Diagnoseantwort und damit der Endpunkt 8 des Diagnoseverfahrens erreicht wird.
Der Nutzen der zuvor beschriebenen situationsadaptiven Erweiterung des semantischen Netzes zur Diagnose des technischen Systems wird im Folgenden anhand eines weiteren Beispiels aufgezeigt. Ein Fahrradfahrer verwendet eine Ausführungsform des erfindungsgemäßen Diagnosesystems, die in Form einer Di- agnosesoftware auf seinem Mobiltelefon vorliegt. Der Fahrradfahrer beobachtet, dass der Scheinwerfer an seinem Fahrrad ausgefallen ist und gibt dessen Seriennummer in das System ein. Das System lädt ein entsprechendes Scheinwerferwissensmodul (bzw. ein erstes semantisches Teilnetz, welches Wissen über den Scheinwerfer enthält) von der Webseite des Scheinwerferherstellers aus dem Internet. Der Anwender gibt die Startsymptomatik z.B. in Form von "Scheinwerfer: ausgefallen" ein. Das Diagnosesystem berechnet im Anschluss alle Wahr-
scheinlichkeiten sowie die Test- und Erweiterungsnutzen für das erste semantische Teilnetz (bzw. dessen test- oder erweiterbaren Knotenvariablen/Merkmalen) .
Zunächst erscheint es hierbei dem System am sinnvollsten zu testen, ob die Glühbirne des Scheinwerfers durchgebrannt ist. In einem Anwenderdialog stellt das Diagnosesystem daher dem Anwender eine entsprechende Anfrage, dies zu überprüfen. Der Anwender verneint das Durchbrennen der Glühbirne.
Das System berechnet nun aus dieser Eingabe und seinem Erfahrungswissen (z.B. repräsentiert durch a-priori- Wahrscheinlichkeiten von Merkmalswerten) eine hohe Wahrscheinlichkeit dafür, dass die Stromversorgung des Scheinwer- fers ausgefallen ist. Das System fragt daher beim Anwender nach, ob dies der Fall ist. Dieser Sachverhalt lässt sich für den Anwender aber nicht einfach feststellen, da er anstelle eines Multimeters lediglich ein Handy (auf dem das Diagnosesystem läuft) bei sich führt. Dementsprechend muss der Anwen- der die Frage nach dem Ausfall der Stromversorgung mit "Weiss ich nicht" beantworten.
Daraufhin ist das Wissen des Systems über den Fahrradscheinwerfer erschöpft. Auch der Anwender kann keine weiteren In- formationen hierzu liefern. Die Wahrscheinlichkeiten der verbleibenden noch bekannten Fehlerursachen sind derart minimal, dass es wenig Sinn macht, diese zu überprüfen.
Traditionelle Expertensysteme würden nun entweder aufgeben oder anfangen, dem Anwender unsinnige und zeitraubende Fragen zu stellen. Durch die situationsadaptive Erweiterungsmöglichkeit der beschriebenen Ausführungen der Erfindung hat das Diagnosesystem jedoch die Möglichkeit mit der Diagnose fortzufahren .
Das System wird nun den Anwender bitten, die mit seinem Scheinwerfer verbundene Stromversorgung zu spezifizieren. Dies geht beispielsweise über eine Auswahlliste, die dem An-
wender verschiedene Dynamotypen verschiedener Herstellern zur Auswahl angibt. Wählt der Anwender z.B. einen Nabendynamo der Marke A aus, so wird im Anschluss beispielsweise mit Hilfe des Handys von einem Portalserver des Herstellers besagten Nabendynamos ein in Form eines zweiten semantischen Teilnetz gestaltetes Wissensmodul geladen und mit dem ersten semantischen Teilnetz des Scheinwerfers über eine semantische Abhängigkeit verbunden. Somit ergibt sich ein semantisches Netz, welches sowohl Wissen über den Scheinwerfer als auch über den verwendeten Dynamo enthält und auch die Interaktion dieser beiden Komponenten beschreibt. Mit Hilfe dieses resultierenden semantischen Netzes wird eine Diagnoseantwort für den Anwender gefunden.
FIG 2 zeigt schematisch den Aufbau eines Diagnosesystems 9 zur Diagnose eines technischen Systems .
Ein Speicher 10 des Diagnosesystems 9 speichert das sogenannte aktive Wissen. Auf dieses aktive Wissen kann das Diagnose- System 9 unmittelbar zugreifen, um eine Diagnoseantwort zu ermitteln, ohne Wissen aus anderen Speicherkomponenten laden zu müssen. In dem dargestellten Fall beinhaltet der Speicher 10 ein erstes semantisches Teilnetz 11 und weitere Teilnetze 12, die jedoch nicht mit dem ersten semantischen Teilnetz 11 verknüpft sind.
FIG 3 zeigt ein Wissensmodul 13, welches als Wissensnetzvorlage für im Speicher 10 des Diagnosesystems 9 (siehe FIG 2) abgelegte Teilwissensnetze 11, 12 dient. Die Teilwissensnetze 11, 12 entstehen durch Instanzieren derartiger Wissensnetzvorlagen bzw. Wissensmodule 13. Ein Wissensmodul 13 umfasst ein Wissensnetz 14 und eine Schnittstelle 15, die zur Ankopp- lung an weitere Wissensnetze vorgesehen ist.
FIG 4 zeigt eine Wissensbibliothek 16. Die Wissensbibliothek 16 beinhaltet Wissensmodule 13, deren Instanzen im aktiven Wissen des Diagnosesystems 9 zu einem semantischen Netz verknüpft werden können.
Die FIG 5 bis 10 zeigen Darstellungsarten von Knotenvariablen, die in den darauffolgenden Figuren verwendet werden, um eine Erweiterung eines semantischen Netzes zur Laufzeit zu veranschaulichen.
FIG 5 zeigt exemplarisch eine semantische Abhängigkeit 19 zwischen einer ersten Knotenvariable 17 und einer zweiten Knotenvariable 18. Die Knotenvariablen 17, 18 werden im FoI- genden in drei Gruppen unterteilt: Fehlerknoten, Symptomknoten und Schlussfolgerungsknoten. Die in FIG 5 gezeigte erste Knotenvariable 17 stellt hierbei einen Fehlerknoten dar, die zweite Knotenvariable 18 einen Symptomknoten. Fehlerknoten haben allgemein ein als Ursache charakterisierbares Merkmal. Symptomknoten tragen hingegen ein als Wirkung charakterisierbares Merkmal. Die die semantische Abhängigkeit 19 repräsentierenden Pfeile zeigen von einem Fehlerknoten zu einem Symptomknoten und repräsentieren eine kausale Abhängigkeit von Ursache und Wirkung.
FIG 6 zeigt eine als Fehlerknoten ausgeführte erste Knotenvariable 17. Dieser Fehlerknoten 17 kann, wie zu erkennen ist, auch mehrere semantische Abhängigkeiten 19 aufweisen. In diesem Fall ist die Ursache des Fehlerknotens 17 entsprechend mit drei durch jeweils einen Symptom- oder Schlussfolgerungsknoten repräsentierten Wirkungen verbunden.
FIG 7 zeigt entsprechend eine zweite Knotenvariable 18 in Form eines Symptomknotens. Auch diese kann mit mehreren se- mantischen Abhängigkeiten 19 verknüpft werden. In dem dargestellten Beispiel führen drei Ursachen zu der mit dem Symptomknoten 18 repräsentierten Wirkung.
FIG 8 zeigt eine dritte Art von Knotenvariablen, die als Schlussfolgerungsknoten 20 ausgeführt ist. Diese ist sowohl mit eingehenden als auch mit ausgehenden Pfeilen verbunden, die jeweils eine semantische Abhängigkeit 19 darstellen.
FIG 9 zeigt eine erste Knotenvariable 17, die als erweiterbarer Fehlerknoten ausgeführt ist. Ein erweiterbarer Knoten wird hier und im Folgenden durch den doppelten Umriss dargestellt. Ein erweiterbarer Knoten stellt (neben seiner Bedeu- tung z.B. als Träger einer bedingten Wahrscheinlichkeitsverteilung, Merkmalsrepräsentant, oder Ursache bzw. Wirkung) eine Schnittstelle dar, über die das zugehörige semantische Teilnetz mit einem erweiterbaren Knoten eines weiteren semantischen Teilnetzes verschmolzen werden kann. Ein erweiterba- rer Fehlerknoten wie der in FIG 9 dargestellte durch die erste Knotenvariable 17 repräsentierte Fehlerknoten ist mit einem erweiterbaren Symptomknoten, der dieselbe Merkmalskennung (bzw. -semantik) aufweist, koppelbar.
FIG 10 zeigt einen erweiterbaren Symptomknoten, der durch eine zweite Knotenvariable 18 repräsentiert wird. Auch hier zeigt wiederum der doppelte Umriss die Erweiterbarkeit des Symptomknotens 18 an. Wie zuvor beschrieben, ist der erweiterbare Symptomknoten 18 mit dem erweiterbaren Fehlerknoten 17 aus FIG 9 koppelbar, sofern diese beiden Knotenvariablen 17, 18 dieselbe Merkmalskennung (bzw. -semantik) aufweisen.
FIG 11 zeigt schematisch eine Erweiterung eines semantischen Netzes, welches als aktives Wissen im Speicher 10 eines Diag- nosesystems abgelegt ist. Im Speicher 10 des Diagnosesystems ist zu Beginn der Diagnoseanfrage ein semantisches Netz abgelegt, welches lediglich ein erstes semantisches Teilnetz 11 umfasst. Zu diesem Zeitpunkt wird also das aktive Wissen des Diagnosesystems lediglich durch das vom ersten Teilnetz 11 repräsentierte Wissen dargestellt. Das erste semantische
Teilnetz 11 umfasst eine erste Knotenvariable 17, die als erweiterbarer Fehlerknoten ausgeführt ist und somit als Schnittstelle zum Verschmelzen des ersten semantischen Teilnetzes 11 mit einem weiteren semantischen Teilnetz dient.
Wird bei dem Versuch, die gestellte Diagnoseanfrage zu beantworten, festgestellt, dass ein Erweitern des im Speicher 10 abgelegten semantischen Netzes sinnvoll erscheint, so wird
zunächst ein weiteres semantisches Teilnetz beispielsweise in einer Wissensbibliothek mit Wissensmo&ulen gesucht, welches einen erweiterbaren Symptomknoten aufweist, der dieselbe Merkmalskennung (bzw. -semantik) trägt, wie der bereits im aktiven Wissen abgelegte erweiterbare Fehlerknoten 17.
Im nächsten Verfahrensschritt wird ein zweites semantisches Teilnetz 21 mit einer als erweiterbarer Symptomknoten ausgeführten zweiten Knotenvariable 18 gefunden, der diese Anfor- derung erfüllt. Entsprechend wird das zweite Teilnetz 21 in das aktive Wissen geladen. Da die Merkmalskennungen des erweiterbaren Symptomknoten 18 und des erweiterbaren Fehlerknotens 17 identisch sind und somit beide Knotenvariablen 17, 18 die gleiche Bedeutung aufweisen, können diese beiden Knoten zu einem einzigen Knoten verschmolzen werden. Praktisch wird dies wie im nächsten Verfahrensschritt dargestellt dadurch umgesetzt, dass eine der Knotenvariablen 17, 18 gelöscht wird. Die zuvor auf den gelöschten Knoten gerichteten semantischen Abhängigkeiten werden auf den nicht gelöschten Knoten bezogen. Es resultiert ein Folgerungsknoten 20, von dem sowohl semantische Abhängigkeiten 19 ausgehen als auch eingehen. Auf diese Art und Weise sind das erste semantische Teilnetz 11 und das zweite semantische Teilnetz 21 zu einem semantischen Netz 22 verschmolzen worden, welches das Wissen aus beiden den Teilnetzen zugrunde liegenden Wissensmodulen repräsentiert .
Die Figuren 12 bis 20 erläutern eine situationsadaptive Wissenserweiterung zur Laufzeit an einem etwas größeren Bei- spiel.
FIG 12 zeigt drei Wissensmodule 29, 30, 31 einer Wissensbibliothek. Ein erstes Wissensmodul 29 umfasst Fehler, Symptom- und Schlussfolgerungsknoten, wobei zwei Fehlerknoten als er- weiterbare Fehlerknoten 27 ausgeführt sind.
Weiterhin ist ein zweites Wissensmodul 30 dargestellt, welches zwei erweiterbare Fehlerknoten 27 und zwei erweiterbare
Symptomknoten 28 umfasst. Schließlich enthält die Wissensbibliothek ein drittes Wissensmodul 31, welches neben internen Fehler-, Symptom- und Schlussfolgerungsknoten auch einen erweiterbaren Symptomknoten 28 umfasst. Aus den dargestellten Wissensmodulen 29, 30, 31 lassen sich insbesondere zur Laufzeit einzelne semantische Teilnetze instanzieren.
FIG 13 zeigt ein erstes semantisches Teilnetz 11, welches durch Instanzierung aus dem ersten Wissensmodul 29 aus FIG 12 hervorgegangen ist. Das erste semantische Teilnetz 11 ist auf Grund einer Diagnoseanfrage in das aktive Wissen des Diagnosesystems geladen worden. Im Laufe der Fehlersuche erreicht das System eine erste Knotenvariable 17. Die erste Knotenvariable 17 ist aus der Instanzierung des ersten Wissensmoduls 29 und der damit verbundenen Instanzierung einer der erweiterbaren Fehlerknoten 27 hervorgegangen. Somit stellt die erste Knotenvariable 17 eine Erweiterungsmöglichkeit für das erste semantische Teilnetz 11 dar. Entsprechend der vorliegenden Situation sucht das Diagnosesystem nun ein Wissensmo- dul mit einem erweiterbaren Symptomknoten, der' die gleiche
Merkmalskennung (bzw. -semantik) besitzt wie erste Knotenvariable 17.
FIG 14 zeigt eine Erweiterung des aktiven Wissens um eine In- stanz des zweiten Wissensmoduls 30. Die Instanz des zweiten
Wissensmoduls 30 ist ein zweites semantisches Teilnetz 21, in dem eine zweite Knotenvariable 18 gefunden wurde, die dieselbe Merkmalskennung (bzw. -semantik) aufweist wie die erste Knotenvariable 17 des ersten semantischen Teilnetzes 11. Bei der zweiten Knotenvariable 18 handelt es sich entsprechend um eine Instanz eines der erweiterbaren Symptomknoten 28 des zweiten Wissensmoduls 30.
FIG 15 zeigt eine Verschmelzung des ersten und zweiten seman- tischen Teilnetzes 11, 21 zu einem gemeinsamen semantischen
Netz 22. Bei dieser Verschmelzung ist die erste Knotenvariable 17 gelöscht worden und die zweite Knotenvariable 18 in einen Folgerungsknoten umgewandelt worden. Entsprechend geht
die ursprünglich von der ersten Knotenvariable 17 ausgehende semantische Abhängigkeit 19 nunmehr von der zweiten Knotenvariable 18 aus.
Im Laufe der Fehlersuche erreicht das System eine dritte Knotenvariable 32, die ebenfalls aus einem erweiterbaren Fehlerknoten instanziert wurde. Entsprechend der vorliegenden Situation sucht das Diagnosesystem nun ein Wissensmodul mit einem erweiterbaren Symptomknoten, der mit der Fehlerursache, die durch die dritte Knotenvariable 32 repräsentiert wird, bedeutungsgleich ist.
FIG 16 zeigt eine Erweiterung des semantischen Netzes mit einem dritten semantischen Teilnetz 25, welches ebenfalls aus einer Instanzierung des zweiten Wissensmoduls 30 hervorgeht. Das dritte semantische Teilnetz 25 enthält eine vierte Knotenvariable 33, bei der es sich um die Instanz eines erweiterbaren Symptomknotens handelt (hier des zweiten Wissensmoduls 24 aus FIG 12) und dieselbe Merkmalskennung wie die dritte Knotenvariable 32 aufweist. Entsprechend wird das Diagnosesystem eine Verschmelzung der Teilnetze zwischen der dritten und der vierten Knotenvariable 32, 33 durchführen.
FIG 17 zeigt die Integration des dritten semantischen Teil- netzes 25 in das im aktiven Wissen abgelegte semantische Netz
22. Die dritte Knotenvariable 32 aus FIG 16 ist nunmehr gelöscht worden, wobei die ursprüngliche semantische Abhängigkeit 19 nunmehr von der vierten Knotenvariable 33 ausgeht, die durch die Verschmelzung in einen Folgerungsknoten über- führt wurde .
Im Laufe der Fehlersuche erreicht das Diagnosesystem eine fünfte Knotenvariable 34, bei der es sich um die Instanz eines erweiterbaren Fehlerknotens handelt. Entsprechend der vorliegenden Situation sucht das Diagnosesystem nun ein Wissensmodul mit einem erweiterbaren Symptomknoten,, der mit der Merkmalskennung der fünften Knotenvariable 34 bedeutungsgleich ist.
FIG 18 zeigt die Erweiterung des aktiven Wissens durch ein viertes semantisches Teilnetz 26, welches eine Instanz des dritten Wissensmoduls 31 aus der Wissensbibliothek darstellt, In dem dritten Wissensmodul 31 ist ein entsprechender erweiterbarer Symptomknoten gefunden worden.
FIG 19 zeigt die Integration des vierten semantischen Teilnetzes 26 in das im aktiven Wissen gespeicherte semantische Netz durch Löschen der fünften Knotenvariable 34 und Übernahme deren semantischer Abhängigkeit 19 durch die sechste Knotenvariable 35.
FIG 20 zeigt schließlich das komplette resultierende semanti- sehe Netz 22, welches durch die situationsabhängigen Erweiterungen des aktiven Wissens während einer Bearbeitung einer Diagnoseanfrage entstanden ist und zur Beantwortung der Diagnoseanfrage bearbeitet wird.