Home
Konsistenz in hybriden wissensbasierten Systemen
Contents
1. Zusatzmodul hier Konsistenztest Konsistenz BI Untermodul 1 syntaktischer Test funktionaler Test Abbildung 3 3 Modulhierarchie einer leeren Wissensbasis mit Konsistenztest 3 1 DIE ENTWICKLUNGSUMGEBUNG 67 Die im Rahmen dieser Arbeit entwickelte Konsistenzkomponente ist in einem eigenen Modul mit Untermodulen zusammengefa t und kann nach Abschlu der Entwicklung entfernt werden um den Umfang der zur Ausf hrungszeit ben tigten Wissensbasis klein zu halten Werden sp ter Erg nzungen der Wissensbasis notwendig kann das Modul wieder eingebunden werden Die Basiskonfiguration einer leeren Wissensbasis mit Konsistenzpr fung Abbildung 3 3 wurde so angelegt da ein Grundmodul f r die zu entwickelnde Applikation zur Verf gung gestellt wird dem in der Modulhierarchie bereits das Konsistenzmodul un tergeordnet ist Mit dem Start der Inferenzmaschine steht damit sofort ein Konsistenz Experte zur Verf gung der bei der Entwicklung der Applikation hilft Abbildung 3 6 Neben einem Arbeitsblatt das dem gleichnamigen Grundmodul User Root zugeordnet ist wird das Arbeitsblatt Palette angezeigt Hier wird durch Anklicken mit der Maus ausgew hlt was erzeugt werden soll Als Repr sentationsform f r Wissen stellt G2 einen objektbasierten Ansatz zur Verf gung siehe Kapitel 1 3 2 sowie die Ei
2. Abbildung 1 2 Beispiel eines semantischen Netzes 1 3 STRUKTURIERTE OBJEKTE 15 1 3 2 Frames und objektorientierte Ans tze Eine andere Art Gegenst nde oder Begriffe mit ihren Eigenschaften und Beziehungen darzustellen sind Datenstrukturen die als Frames Rahmen bezeichnet werden Sie sind mit structures oder unions in der Programmiersprache vergleichbar Ein ganzer Satz von Angaben Werten Eigenschaften verschiedenen Typs wird in einer Einheit oder Struktur zusammengefa t Auf diese Weise k nnen zusammengeh rige Informatio nen leichter referenziert werden Im Kontext der Wissensverarbeitung kann man sagen da das Wissen ber ein Individuum an einer Stelle geb ndelt wird Damit kann Wis sen in einer bersichtlichen Art abgelegt werden die auch dem intuitiven Such und Speicherverhalten des Menschen entspricht Gegenst nde k nnen in ihren Eigenschaften genau beschrieben werden es k nnen aber ebenso Angaben zu Gruppenzugeh rigkeiten oder weiteren Verfeinerungen gemacht werden Ein Beispiel Eine Autovermietung besitzt verschiedene Typen von Fahrzeugen Eine Beschreibung k nnte folgenderma en aussehen konkret Auto 13 ist ein Kombi und hat 4 R der 5 T ren 75 kW Leistung Gruppenzugeh rigkeit Auto 13 geh rt zur Gruppe der Personenwagen oder allgemeiner zur Gruppe der Kraftfahrzeuge Verfeinerung Die Gruppe der PKW kann noch in die beiden Gruppen I Autos mit Anh ngerkupplung und I
3. Auf dieser Definition der Konsistenz von regelbasierten Systemen baut die Arbeit von Beauvieux 35 und 1 auf Regeln in Aussagenlogik bestehende Wissensbasis nach und w hrend ihrer Erstellung auf ann In Abbildung 2 1 ist das Ablaufdiagramm des Tests Konsistenz getestet werden k angegeben Darin wird ein Verfahren entwickelt mit dem eine aus Bilde die Menge aller Atome Voc WB Voc WB Vocabular der WB WB Wissensbasis BF Basis der Fakten Literalmengen BF Bilde alle maximalen konsistenten CR zu BF compatible Regeln Bilde alle Regelmengen CR der auf BF anwendbaren Regeln Bilde alle Modelle M durch Vereinigen der Atome der Konklusion aus CR mit BF JA M Bh j WB konsistent f r alle n NEIN WB inko nsistent Abbildung 2 1 Konsistenzpr fung nach Beauvieux nach 1 32 KAPITEL 2 DER KONSISTENZBEGRIFF Alle in den Regeln auftretenden Atome siehe Kap 1 1 1 Seite 5 in Angele Studer 1 im Gegensatz zur gebr uchlichen Praxis in der Computational Intelligence mit Literal bersetzt bilden zusammen das Vokabular Voc W B der Wissensbasis WB Da auch komplement re Atome im Vokabular auftreten k nnen werden alle maximalen konsis tenten Atommengen Faktenmengen Base of facts BF gebildet Konsistent bedeutet hier frei von komplement ren Atomen Maximal hei t da jede Obermenge von BF inkonsistent
4. implementiert und e die Syntax der Regeln wird im Aktionsteil eingeschr nkt auf F Regel das direkte nicht negierte Setzen von Attributwerten e Literale werden in der Form Attribut Objekt Wert gebildet Diese Einschr nkungen sind im Hinblick auf einen Konsistenztest f r Regeln unabding bar die Forderungen F Fra 1 F Fra 2 und F Fra 3 sind damit aber noch nicht erfa t Da physikalische Objekte von den meisten damit vertrauten Menschen auf die gleiche Weise beschrieben werden liegt das Problem eher bei logischen oder virtuellen Objek ten wie z B einem Bearbeitungsschritt oder einem Arbeitsablauf Formal gibt es keine M glichkeiten auf dieser Ebene Widerspr che zu verhindern da das wissensbasierte Sy stem keinen Zugang zur Bedeutung der Objekte hat Die Widerspruchsfreiheit der Ob jektdefinitionen mu der Wissensingenieur sicherstellen der die Frames implementiert Als Hilfsmittel k nnen eine Einordnung der Frames in eine hierarchische Struktur sowie Listen mit bereits implementierten Frames und deren Attributnamen dienen Um die Vorteile framebasierten Vorgehens nutzen zu k nnen ist es sinnvoll nicht beliebig viele einzelne und von einander unabh ngige Frames zu formulieren sondern eine Frame bzw Klassenhierarchie aufzubauen hnliche Objekte werden in Gruppen Klassen zusammengefa t die durch eine allgemeine Beschreibung der gemeinsamen Eigenschaften charakterisiert wird Durch spezielle Eigenschaften werden
5. Die Kombination des oben beschriebenen schrittweisen Vorgehens mit den Erfordernissen eines funktionalen Konsistenztests hat Auswirkungen auf die Art wie die Ausgangs frames zu implementieren sind Fehlerursachen k nnen nur erkannt werden wenn zum einen erfa t werden kann was ein Fehler ist und zum anderen wenn der Verursacher eines 56 KAPITEL 2 DER KONSISTENZBEGRIFF Objekt Objekt Ampel A1 Ampel A1 Attributname Wert Attributname Wert Quellenname Farbe rot Farbe Wartezeit 5 sec Wartezeit 4 sec Regel Z1 Status aktiv Status Eingangsobjekt Ausgangsobjekt Abbildung 2 2 Struktur der Ein und Ausgangsframes potentiellen Fehlers ermittelt werden kann Geht man davon aus da Fehler direkt oder indirekt mit Attributwertbelegungen zusammenh ngen mu gefordert werden da e die Verursacher von Attributwert nderungen erfa t werden F funk 3 Konkret kann man z B zu jedem Attribut nicht nur den jeweiligen Momentanwert abspei chern sondern auch ein eindeutiges Kennzeichen f r die Regel oder Prozedur die diesen Wert liefert Bei objektbasierten Entwicklungswerkzeugen wird beispielsweise auch jede Regel als ein spezielles Objekt aufgefa t dem ein Name zugeordnet wird Prozeduren werden generell ber ihren Namen referenziert so da als Kennzeichen f r eine At tributwertquelle ein Name gespeichert werden kann Abb 2 2 Da die Herkunf
6. gefeuert und ein neuer Knoten erzeugt wird von diesem neuen Knoten aus eine weitere ausf hrbare Regel gesucht Auf diese Weise entsteht zun chst eine Kette von Knoten die keine Verzweigungen aufweist Erst wenn das Abbruchkri terium maximale Tiefe erf llt ist wird r ckw rts der erste Knoten aufgesucht von 1 2 REGELBASIERTE REPR SENTATION 13 dem aus eine weitere Regel gefeuert werden kann In Abbildung 1 1 wird der Suchweg der Tiefensuche durch gestrichelte Pfeile angedeutet Breitensuche Von jedem Knoten aus werden erst alle m glichen Regeln ausgef hrt und damit die Nach folgeknoten erzeugt Man spricht auch von der vollst ndigen Expansion eines Knotens Jeder neu erzeugte Knoten wird an eine Liste der nicht expandierten Knoten angeh ngt an deren Spitze der n chste zu expandierende Knoten steht Der Suchweg dieser Suche wird in Abbildung 1 1 durch massive Pfeile angedeutet Abbruchbedingung kann z B die Suchzeit oder die maximale Arbeitsspeichergr e sein 0 m gt u 1 5 0 gt gt gt gt 1 2 4 4 v i Tiefensuche n gt 3 Breitensuche MN 3 Abbildung 1 1 Graph eines Suchbaumes 14 KAPITEL 1 REPR SENTATION VON WISSEN 1 3 Strukturierte Obj
7. ANHANG 117 a Erzeugung einer Prozedur GE Erzeugen und Bearbeiten bearbeiten 2 i eines Prozedurkopfes Vorhandene benutzerdefinierte Prozeduramen Prozeduren Erzeugen und Bearbeiten von Parametern Parameter eingeben A jun a Prozedur Text Prozedur Palette m J bearbeiten a OO gu Prozedur Werkstatt l l schen arbeitsblatt wechseln Abbildung A 11 Hierarchie der Men s und Dialoge einer Prozedur ANHANG DIDI Einfache Bausteine Kommentar Kommentar Attribut von Objekt bekommt aa Wert 2 o setze Wert a M gliche Werte k ka lokale Variable und deren Typ Lokale Variable Attribut von Objekt 3 hole Wert Em Em Variable Ariva von Objekt Aufbau einer 4 nu 4 Berechnung wi Eingabe a Wertes einen eren ren wer Wert Abbildung A 12 Dialoge der Prozedur Bausteine I ANHANG 119 ool Schleifen Bausteine 5 For each do E Klassenauswahl 6 lt Jf then else Aufbau ne Bedingung m E E A oder Variable direkte Eingabe eines Wertes Abbildung A 13 Dialoge der Prozedur Bausteine II 120 ANHANG m CC 0 Die Grafik wird berpr ft und in die interne Syntax bersetzt Die Arbeitsbl tter Prozedur Palette und Prozedur Werkstatt werden geschlossen 7 Prozedur erzeugen von Parametern
8. Abbildung 3 6 wurde durch die Entwickler so konfiguriert da f r den Benutzer Wissensingenieur die selbsgestalteten Sinnbilder von Klassen Objekten Regeln usw wie Schaltfl chen reagieren BES gie funktionaler Test x PALETTE L sche lade funktionalen Test A Yv P Palette NEUE KLASSE NEUES OBJEKT NEUE REGEL NEUE PROZEDUR MNEUES ARBEITSBLATT Arbeitsblatt 1 T Regeln 1 ARBEITSBLATT 1 Abbildung 3 6 Startbild einer leeren Wissensbasis mit Konsistenzmodul 72 KAPITEL 3 REALISIERUNG Nach dem Anklicken des Sinnbildes Neues Objekt wird eine Kopie des Sinnbildes an den Mauszeiger geheftet und der Benutzer kann das so symbolisierte Objekt auf einem Arbeitsblatt ablegen Durch den sofort danach gestarteten Frameeditor wird der erste selbst gestaltete Dialog ge ffnet Dieser bietet die Schaltfl chen Bestehende Klasse und Neue Klasse an um das Objekt einer Klasse zuzuordnen Die Reihenfolge erst ein Objekt erzeugen dann eine Klasse daf r definieren kann nur scheinbar durch den Frameeditor realisiert werden Tats chlich wird zun chst die Absicht des Benutzers er fa t und dann in die notwendigen Aktionen in korrekter Reihenfolge umgesetzt Da noch keine Klassen durch den Benutzer definiert worden sind ist die Schaltfl che Bestehende Klasse inaktiv und kann nicht bet tigt werden Der mit der Schaltfl che Neue Klasse gestart
9. wicklung eines geeigneten Testverfahrens Dabei ergeben sich weitere Forderungen an die Struktur der Wissenselemente sowie die Forderung nach einem schrittweisen Ablauf der Inferenz Dies ist erforderlich um durch das Testverfahren nicht nur eine Inkonsistenz zu erkennen sondern dem Entwickler auch die notwendigen Informationen zu den Quellen der Inkonsistenz zur Verf gung zu stellen Durch das hier entwickelte Verfahren der schrittweisen Inferenz ist es einem Entwickler m glich w hrend der Konsistenzpr fung die Quellen von erkannten Inkonsistenzen zu bearbeiten und die Auswirkungen auf die Gesamtkonsistenz sofort zu testen Die Realisierung eines Zusatzmoduls zu einer Entwicklungsumgebung f r hybride wis sensbasierte Systeme zeigt beispielhaft die Anwendung des entwickelten Konsistenz pr fungsverfahrens Die f r dieses Modul am Lehrstuhl f rAutomatisierungstechnik der Bergischen Uni versit t Gesamthochschule Wuppertal entwickelten Dialoge bef higen auch einen unge bten Benutzer schnell und fehlerfrei Objekte Regeln und Prozeduren zu erzeu gen Informationen f r einen strukturierten Aufbau der Wissensbasis werden gesammelt und in einer dem jeweiligen Kontext angepa ten Form dargestellt Zus tzlich wurde die M glichkeit geschaffen in jedem Stadium der Entwicklung oder Wartung einen funk tionalen Konsistenztest der gesamten Wissensbasis durchzuf hren Der Test wurde so gestaltet da der Benutzer beim Auftreten von I
10. Abbildung 1 3 Graph einer Klassenhierarchie Die betrachtete Klasse Kombi hat die gleichen Eigenschaften Anzahl R der Anzahl T ren Leistung wie die Elternklasse PKW und diese wiederum hat die Eigenschaften der Wurzel Kraftfahrzeug erg nzt um Anzahl T ren Die Unterklasse Autos hat eben falls diese Eigenschaften und zus tzlich die Eigenschaft Anh ngerkupplung Die Repr sentation einer Eigenschaft bezeichnet man auch als Attribut oder Slot Die konkreten Auspr gungen bei einem bestimmten Gegenstand Instanz sind die Werte Filler Values Die Klassen enthalten nur die allgemeine Bezeichnung der Eigenschaften und ihrer Werte Initialisierungswert Menge der m glichen Werte w hrend das Indi viduum Auto 13 jeweils einen konkreten Wert enth lt Eine solche Hierarchie der allgemeinen Beschreibungen Klassenhierarchie bietet ver schiedene Vorteile wie bersichtlichkeit und leichte nder und Erweiterbarkeit Gegenst nde und Begriffe k nnen leicht einer Klasse zugeordnet oder durch eine neue Klasse allgemein beschrieben werden nderungen oder Erweiterungen bei Klasseneigen schaften werden bei der abstraktesten Klasse vorgenommen und durch die Vererbung in alle Unterklassen weitergegeben Auch Ausnahmen von Klassenzugeh rigkeiten lassen sich leicht durch Hinzuf gen einer Unterklasse mit einem Attribut f r die Besonderheit repr sentieren Ein Pinguin oder ein Strau geh ren zwar zur Klasse der V gel haben aber die B
11. K nstliche Intelligenz in der Fertigungstechnik Carl Hanser Verlag M nchen Wien 1989 104 LITERATURVERZEICHNIS 26 Quiel Gerd Datenbanksysteme Grundlagen von Informationssystemen Verlagsgesellschaft Rudolf M ller K ln Braunsfeld 1981 27 Richter M Maurer F Hrsg Expertensysteme 95 Beitr ge zur 3 Deutschen Expertensystemtagung XPS 95 Proceedings in Artificial Intelligence Bd 2 Infix Sankt Augustin 1995 28 Richter R Sander P Stucky W Problem Algorithmus Programm Grundkurs angewandte Informatik II B G Teubner Verlag Stuttgart 1993 29 Rutz Peter Zweiwertige und mehrwertige Logik Franz Ehrenwirth Verlag M nchen 1973 30 Sinowjew Alexander A ber mehrwertige Logik Ein Abri Deutscher Verlag der Wissenschaften Berlin 1968 31 Sinowjew Alexander A Komplexe Logik Grundlagen einer logischen Theorie des Wissens Deutscher Verlag der Wissenschaften Berlin 1970 32 VDI VDE Gesellschaft Me und Automatisierungstechnik Wissensverarbeitung in der Automatisierungstechnik GMA Aussprachetag Tagung Langen VDI Berichte 897 VDI Verlag GmbH D sseldorf 1991 33 Zehnder Carl A Informationssysteme und Datenbanken Verlag der Fachvereine Z rich und Teubner Verlag Stuttgart 1989 LITERATURVERZEICHNIS 105 34 35 36 39 Artikel Aufs tze Konferenzbeitr ge Ahrens Wolfgang Expertensysteme f r die Proze f hrung Erfahrungen aus dem Verbu
12. Objekt Farbe Objekt BLAU Kaufabsicht EVA AUTO ist wahr Farbe Objekt ROT Farbe Objekt BLAU Die CGPP liefert einen Connection Graph der nur eine leere Klausel enth lt Die leere Klausel NIL ist das Kennzeichen einer Inkonsistenz Durch die zus tzliche Formulierung der Aussage ROT ist nicht BLAU liefert die CGPP also das erwartete Ergebnis Besteht die Wertemenge eines Attributes aus zwei Werten entspricht diese Aussage der Deklaration von beliebigen Begriffen oder Symbolen als Synonyme f r die booleschen Werte true und false Enth lt die Wertemenge beliebig viele Werte mu die Aussage Es gilt immer nur genau ein Wert der Menge formuliert werden F r das Attribut Farbe eines beliebigen Objektes sei die Wertemenge ROT BLAU gegeben Aussagen ber einzelne Zusammenh nge a Farbe Objekt ROT Farbe Objekt BLAU b Farbe Objekt BLAU Farbe Objekt ROT c Farbe Objekt ROT v Farbe Objekt BLAU d Farbe bjekt ROT gt Farbe Objekt BLAU Klauseln a Farbe Objekt ROT Farbe Objekt BLAU b Farbe Objekt BLAU Farbe Objekt ROT c Farbe Objekt ROT Farbe Objekt BLAU d i Farbe Objekt ROT Farbe Objekt BLAU ii Farbe Objekt BLAU Farbe Objekt ROT 48 KAPITEL 2 DER KONSISTENZBEGRIFF Es ist ersichtlich da f r die CGPP die quivalenz Aussage d als vollst ndige Abbil dung des gegenseitigen Ausschlusses in Frage kommt da hier
13. Prozeduren k nnen 1 Attributwerte setzen 2 Werte berechnen und als Attributwerte setzen Aktionen in einer vorgegebenen Reihenfolge ausf hren N weitere Prozeduren als Unterprogramme aufrufen 5 mathematische Modelle repr sentieren oder enthalten Desweiteren k nnen Prozeduren in unterschiedlichen Zusammenh ngen und mit unter schiedlichen Parametern durch die Inferenzmaschine aufgerufen werden 2 3 KONSISTENZ IN HYBRIDEN SYSTEMEN ol Werden Attributwerte mit Hilfe von Prozeduren gesetzt verbessert das prim r die bersichtlichkeit der Regeln Statt in einem Aktionsteil mehrere Wertzuweisungen einzeln aufzulisten kann eine Prozedur mit m glichst sprechendem Namen der Name deutet die Funktion an eingesetzt werden Wertzuweisungen zu verschiedenen At tributen des selben Frames k nnen im Aktionsteil mit nur einem Prozeduraufruf z B bernimm_werte Auto Leihwagenl erledigt werden Auch Berechnungen die auf mathematische Funktionen wie z B trigonometrische Funktionen oder Funktionen zum Rechnen mit Kalenderdaten zur ckgreifen lassen sich durch sprechende Prozedurna men abk rzen wie z B gesamt_leihgeb hr Leihwagenl 24 12 96 3 1 97 zur Berechnung der Leihgeb hr f r den Leihwagen in der Zeit vom 24 12 96 bis zum 3 1 97 unter Ber cksichtigung von Feiertag und Wochenendpauschalen Bei der Ableitung neuen Wissens kommen Prozeduren besonders dann zum Einsatz wenn z B die Erzeugu
14. Test der Regeln mit Hilfe der Connection Graph Proof Procedure verzichtet werden Wird die CGPP zus tzlich zum funktionalen Test eingesetzt beschleunigt das die Entdeckung von Inkonsistenzen der Regeln untereinander Dieser Geschwindigkeitsvorteil mu aber mit einem erhe blichen Aufwand bei Regel nderungen erkauft werden Nach jeder nderung m ssen die Klauseln der alten Regel unter Beachtung m glicher Redundanzen aus der Klausel menge entfernt und die neue Regel in Klauseln umgewandelt werden F r den funk tionalen Test m ssen trotzdem alle Regeln im Hinblick auf die Ein und Ausgangsframes berarbeitet werden Eine Implementierung der CGPP zus tzlich zu einem funktionalen Test wird daher von einer Aufwand zu Nutzen Betrachtung abh ngig sein 60 KAPITEL 2 DER KONSISTENZBEGRIFF Die Komponente f r den funktionalen Test ist f r die berpr fung des Gesamtsystems unabdingbar Neben Inkonsistenzen k nnen auch inhaltliche Fehler wie falsche Wahl eines an sich zul ssigen Attributwertes oder Zugriff auf einen unbeteiligten Frame durch die schrittweise Abarbeitung des Inferenzablaufes gefunden und leicht korrigiert werden Je nach Gestaltung der funktionalen Testkomponente steigt der Implementierungs aufwand mit dem Komfort der dem Benutzer geboten werden soll Die Geschwindig keit in der Testphase h ngt von der Anzahl der zu berwachenden Frames und ihrer Verkn pfung ab Die Verwendung von Ausgan
15. funktionalen Test den Urzustand wieder herzustellen Wurde der funktionale Test komplett durchlaufen dabei Inkonsistenzen festgestellt und deren Quellobjekte editiert mu die gesamte Schlu kette noch einmal von vorne gestartet 96 KAPITEL 3 REALISIERUNG werden Aus diesem Grund werden alle Attributwerte und die Farben der Sinnbilder so fort bei Beginn der Vorbereitungen zum funktionalen Test gespeichert Ein weiterer Satz dieser Informationen wird nach einem Inferenzschritt gespeichert um nach einer eventuell notwendigen nderung von Quellobjekten den gerade vollzogenen Schritt erneut mit den gleichen Startwerten auszuf hren Nach erfolgreichem Durchlauf es wurden keine Probleme detektiert m ssen theoretisch alle nderungen an den Regeln Prozeduren und Schaltfl chen im folgenden Inferenz Objekte genannt wieder r ckg ngig gemacht werden Es ist naheliegend da der Benutzer den funktionalen Test nicht nur einmal am Ende der Gesamtentwicklung aufrufen wird Vor einem erneuten Durchlauf m ssen alle nderun gen wie beschrieben erneut vorgenommen werden wenn nicht die bereits umgewan delten Strukturen deaktiviert und gespeichert wurden Nach der Ver nderung eines Inferenz Objekts wegen einer Inkonsistenz mu es ebenfalls neu umgewandelt werden Zur Verk rzung der Umwandlungszeit werden alle Inferenz Objekte die noch zu wandeln sind in eine Liste eingetragen Vor dem ersten Aufruf des funktionalen Tests enth lt di
16. in Abbildung A 1 verweisen auf die Kapitelnummern der Unter abschnitte von Anhang A 107 108 ANHANG A 2 Das Modul User Root USER ROOT funktionaler Test m L sche lade funktionalen Test B Palette D Arbeitsblatt 1 Ez Reaeln 1 Abbildung A 2 Arbeitsblatt beim Start der leeren Wissensbasis Als Basis f r eine konsistente Applikationsentwicklung wird dem Anwender in einer neuen Wissensbasis bereits ein Arbeitsblatt User Root mit einer Schaltfl che funktionaler Test und vier Navigationskn pfen zur Verf gung gestellt Die Navigationsschaltfl chen L sche lade funktionalen Test und Palette f hren auf Arbeitsbl tter die nicht zum Grundmodul User Root geh ren f r den Anwender aber direkt zug nglich sein sollen Die ber Arbeitsblatt 1 und Regeln 1 erreichbaren Arbeitsbl tter hingegen sind wie das Arbeitsblatt User Root selbst dem Grundmodul zugeordnet Alle vom Anwender w hrend der Entwicklung der Applikation erzeugten Objekte incl neuer Arbeitsbl tter geh ren automatisch zum Grundmodul ANHANG 109 A 3 Das Modul Konsistenz Das Modul Konsistenz stellt die Verbindung zwischen den Untermodulen syntaktischer Test und funktionaler Test her Das Modul enth lt die Arbeitsbl tter mit den sowohl f r die Eingabe als auch f r den funktionalen Test ben tigten Wissenselementen und Verwaltungsroutinen Konsistenz Listen der erzeugten Wissenselemente und ihrer Verkn pfungen s
17. A i m Erzeugen und Bearbeiten e Parameter il nderungen werden gel scht RN h e 9 BD Die alte Prozedur bleibt erhalten Verwerfen Alle Prozedurbausteine werden gel scht m Abbildung A 14 Aktionen der Schaltfl chen in der Prozedur Werkstatt z Erzeugung eines Arbeitsblattes E E Eingabe eines Namens Abbildung A 15 Dialog eines Arbeitsblattes ANHANG 121 A 5 Das Modul funktionaler Test In diesem Modul ist alles zusammengefa t was der Benutzer an zus tzlicher Funktio nalit t f r den schrittweisen Konsistenztest ben tigt Zwei Schaltfl chen dieses Moduls liegen auf dem Arbeitsblatt USER ROOT des Grund moduls User Root e die Schaltfl che funktionaler Test und e die Navigationsschaltfl che L sche lade funktionalen Test Mit der Bet tigung der Schaltfl che funktionaler Test wird der Testzyklus gestartet Wurde ein kompletter Inferenzzyklus beendet wurden entweder keine Inkonsistenzen ge funden d h die Wissensbasis ist konsistent oder ein Kontrolldurchlauf mu gestartet werden um sicher zu gehen da die vorgenommenen nderungen nicht Inkonsistenzen an anderen Stellen im Inferenzzyklus verursachen Ist die Entwicklung der gesamten Wissensbasis beendet kann nach dem funktionalen Test das Konsistenzmodul mit seinen Untermodulen aus dem endg ltigen wissensbasierten Sy stem entfernt werden Damit f r Wartungsarbeiten das Modul wiede
18. Da bei einer gro en Zahl von Regeln die Anzeige un bersichtlich werden kann sollte zus tzlich ein formaler Test der gesamten Regelbasis vorgenommen werden Wie bereits in Kapitel 2 3 2 dargelegt wurde ist die Connection Graph Proof Proce dure CGPP unter bestimmten Bedingungen Erf llung der Forderungen F CGPP und F Regel als Konsistenztest f r Regelbasen verwendbar Die Testkomponente mu die Aufbereitung der Regeln in eine f r die CGPP verwendbare Form bernehmen Konkret bedeutet das eine syntaktische Analyse der Regeln mit gleichzeitiger Umwandlung in pr dikatenlogische Formeln und dann deren Umwandlung in Klauseln Die Klauseln schlie lich k nnen mit Hilfe der CGPP auf Konsistenz getestet werden Weiterhin mu eine ad quate Reaktion auf eine nachgewiesene Inkonsistenz erfolgen Werden Redundanzen bei der Erzeugung von Klauseln vermieden indem eine bestimmte Klausel immer nur einmal existiert egal aus wievielen pr dikatenlogischen Formeln sie entstehen kann ist nur schwer feststellbar wo die Ursache der Inkonsistenz liegt Alle Regeln deren Umwandlung zu einer Klausel f hrt die an der Inkonsistenz beteiligt ist sind potentiell inkonsistent Wird erst nach der Implementierung vieler Regeln ein Kon sistenztest mit der CGPP gestartet k nnen mehrere Inkonsistenzen vorliegen die alle behoben werden m ssen Sinnvoll erscheint daher der sofortige Test nach Eingabe einer neuen Regel Auf diese Weise wird zu einer Regelmeng
19. Erweiterung des klassischen Datenbankansatzes mittels zus tzlicher Deduktionsregeln Der damit eingeschlagene Entwicklungsweg l t es sinn voll erscheinen wissensbasierte Systeme als eine erweiterte Form von Datenbanken zu in terpretieren F r hybride Systeme mit den Repr sentationsformen Regeln Objekte und im weiteren Sinne Prozeduren wird daher die bertragbarkeit bzw die Notwendigkeit zur Erweiterung des Konsistenzbegriffes erarbeitet Es wird versucht regelbasierte Sy steme auf Deduktionssysteme abzubilden um m glichst die bekannten Testverfahren f r Konsistenz bzw Inkonsistenz auch f r regelbasierte Systeme zug nglich zu machen Es werden komplexe L sungsans tze f r die einzelnen Bereiche Regelkonsistenz Frame oder Objektkonsistenz und Prozedurkonsistenz und deren Kombination in einer Gesamtkonsistenz sowie den dabei auftretenden Randbedingungen vorgestellt Die Abschnitte zur Konsistenz in Datenbanken beruhen auf den Arbeiten von G hler 5 Leikauf 18 und Moerkotte 20 23 24 KAPITEL 2 DER KONSISTENZBEGRIFF 2 1 Datenbanken Datenbanksysteme bestehen aus einer Ansammlung logisch zusammengeh render Daten der eigentlichen Datenbank Datenbasis und Programmen zu ihrer Verwaltung dem Datenbankverwaltungssystem 26 Die Daten sind in Datens tzen organisiert und k nnen mittels einfacher Elementaroperationen Einf gen ndern und L schen von Daten auch Mutationen genannt oder komplexeren Abl
20. KONSISTENZBEGRIFF Prozeduren m ssen mindestens die folgenden Forderungen erf llen e die Prozedur mu wie ein konventionelles Programm auf Korrekt F Proz 1 heit berpr ft werden 9 28 und e das Zusammenwirken der Prozedur mit Regeln und Frames darf F Proz 2 nicht zu Widerspr chen f hren F r die Korrektheit der Prozeduren ist ausschlie lich der Programmierer verantwortlich Eine erste Hilfe bietet bei einigen kommerziellen Systemen ein Editor der nur syntak tisch korrekte Eingaben zul t kontextsensitiver Editor Entweder wird schon w hrend der Eingabe die Syntax gepr ft oder nach dem Beenden des Editors wird der gesamte Prozedurtext auf syntaktische Zul ssigkeit gepr ft Korrektheit bedeutet aber mehr als korrekte Syntax vielmehr ist darunter die Gew hrleistung der Funktionssicherheit zu verstehen Allgemein wird die richtige Funk tion von Prozeduren Programmen durch praktische Tests berpr ft Die Testdaten werden je nach Art des Tests White Box Black Box statistischer Test 22 auf unter schiedliche Art gewonnen Egal ob statistisch Daten generiert werden die Spezifikation der Prozedur oder ihre implementierte Struktur zugrunde gelegt werden ein praktischer Test ist nur selten vollst ndig Auch ein erfolgreich bestandener Test bedeutet nur da kein Fehler gefunden wurde Um diese L cke zu schlie en gibt es einige Ans tze zur Ve rifikation von Programmen Hierbei werden mathematisch exakte
21. Kommentar Parameter setze Wert hole Wert el Tr ommentar FOR each DO u Bereshnung setze wert IF THEN k isan Abbildung 3 15 Arbeitsfl chen zur grafischen Erstellung einer Prozedur schaft von Objekt direkt auf den Wert eines beliebigen Attributes eines Objektes zugegriffen werden Eine Formel zur Berechnung eines neuen Wertes kann dadurch aber auch sehr un bersichtlich werden Besser ist es jeden ben tigten Attributwert in die Prozedur zu holen und einer lokalen Variable zuzuweisen um damit die Berechnungen durchzuf hren Diese Zuweisung kann mit dem hole Wert Block vorgenommen werden Berechnungen jeglicher Art werden mit dem Berechne Block realisiert Einer lokalen Variable kann eine Berechnungsformel mit beliebigen Rechenschritten zugeordnet wer den In einem darauf folgenden Setze Attributwert Block steht als Wert dann auch diese Variable zur Verf gung Um die schon angesprochenen For Schleifen aufzubauen steht ein weiterer Block zur Verf gung Kennzeichen ist der zus tzliche seitliche Ein und Ausgang Eine Schleife besteht aus Kopf Rumpf und Fu oder Schlu Der For Schleife Block enth lt nur Kopf und Schlu teil Der Rumpf kann aus einer beliebigen Kombination funktionaler Bl cke aufgebaut werden die zwischen dem seitlichen Ein und Ausgang angeschlossen sein m ssen 88 KAPITEL 3 REALISIERUNG Mit dem gleic
22. Krebs Volker Respondek Thomas Automatisierung komplexer chemischer Prozesse durch Echtzeit Expertensysteme In atp Automatisierungstechnische Praxis 33 1991 H 2 5 82 86 Omar Rosli Artificial Intelligence through Logic In AiCommunications AICOM 7 1994 H S 161 174 Owsnicki Klewe B Ein integriertes System zur Repr sentation von Wissen In Philips Unsere Forschung in Deutschland 1988 Bd 4 S 100 104 Reinfrank Michael Formeln und Modelle Wissensrepr sentation mit Logik In Informationstechnik it 31 1989 H 2 S 102 112 Rosenbaum Oliver Expertensystem contra Datenbank In miniMicro magazin 1991 H 12 S 58 59 Stru Peter Wissensrepr sentation Abschied vom Programmieren In Informationstechnik it 31 1989 H 2 5 91 94 Anhang A A 1 Struktur der realisierten Module vom Benutzer Grundmodul zu entwickeln User Root Zusatzmodul hier im A2 Rahmen der Arbeit ent wickelter Konsistenztest Untermodul 1 Konsistenz A3 syntaktischer Test funktionaler Test A4 A5 Abbildung A 1 Modulhierarchie einer leeren Wissensbasis mit Konsistenztest Die eingerahmten Module Konsistenz syntaktischer Test und funktionaler Test werden im folgenden in ihrer f r den Benutzer sichtbaren Struktur beschrieben Die Angaben A2 bis A5
23. Methoden gesucht und formale Sprachen entwickelt um die Programme mit ihren Spezifikationen beschreiben zu k nnen Der Aufwand einer solchen Verifikation ist f r Prozeduren als eine von mehreren Repr sentationsformen in einem wissensbasierten System zu hoch bzw nur vertretbar wenn besondere Anforderungen an die Qualit tsstufe des entwickelten Systems gestellt werden 9 11 Ist eine Prozedur in sich korrekt werden die Wechselwirkungen mit Regeln und Frames interessant Wie bereits in Kapitel 2 3 2 f r Regeln erl utert mu auch bei Prozeduren die e Einschr nkung auf direkte Wertzuweisungen F Proz 3 beachtet werden um technischen Systemen gerecht zu werden Die Konsistenz des gesamten Systems ist damit aber noch nicht sichergestellt Erst w hrend der Ausf hrung der Prozeduren bzw des gesamten Systems kann das Zusam menspiel von Frames Regeln und Prozeduren berpr ft werden und unerw nschte Ak tionen und Widerspr che k nnen erkannt und untersucht werden Kommerzielle Systeme bieten zur Zeit keinerlei Ans tze in dieser Richtung Im folgenden werden daher alle Bereiche der Wissensrepr sentation unter dem Aspekt des Verhaltens w hrend einer normalen Nutzung des Systems betrachtet 2 3 KONSISTENZ IN HYBRIDEN SYSTEMEN 53 2 3 5 Funktionaler Test Ziel einer Expertensystementwicklung ist ein korrekt funktionierendes System das in der erwarteten Weise auf gegebene Zust nde und Anfragen reagiert Die jeweilige Reak t
24. ROT f r Fahrrad 1 BLAU GELB ROT Die Bedingung da die Farbe eines Autos und eines Fahrrades gleich einem bestimmten Wert sein m ssen enth lt indirekt die Bedingung da die Farben gleich sind An dere Werte als solche aus der Konjunktion der Wertemengen sind nicht sinnvoll da die Pr misse dann nicht erf llt werden kann An dieser Stelle wird sogar f r die Verkn pfung von Attributwerten die Konsi stenzforderung F Fra 3 S 36 ber cksichtigt und ihre Einhaltung durch die entwickelten Dialoge erleichtert bzw erzwungen Im Listenfeld der m glichen Werte des Wert Eingabe Bausteins erscheint dazu die Konjunktion der Wertemengen BLAU ROT Der Dialog zu einem Ausgabe Baustein ist eine Zusammenfassung der Attribut und Wert Dialoge eines Eingabe Bausteins Abbildung 3 14 Nach der Auswahl von Attribut und Objekt Name steht die Information ber das Attribut in komprimierter Form als Hinweistext zur Verf gung Der Wert der dem Attribut zugewiesen werden soll kann direkt in einem Eingabefeld oder aus den m glichen Werten bestimmt werden DANN Attribut von Objekt bekommt den Wert Bitte geben Sie den Attribut Namen den Objekt Namen sowie den Attribut Wert ein und beachten Sie dabei den Hinweis zum Attribut Wert Listen Aktualisieren Attribut Name Objekt Name Hinweis zum Attribut Wert Gane Bitte beachten Sie Sense FAHRRAD da der von Ihnen angegebene Wert ebenfalls
25. Unterklassen von der Ur sprungsklasse und anderen Unterklassen abgegrenzt Damit f llt es leichter bei gro en Systemen die bersicht zu bewahren und nicht etwa ein Frame doppelt zu implemen tieren 2 3 3 Syntaktischer Test Die Betrachtungen zur Widerspruchsfreiheit in wissensbasierten Systemen im technischen Umfeld haben die quivalenz von Regeln und pr dikatenlogischen S tzen verdeutlicht 40 KAPITEL 2 DER KONSISTENZBEGRIFF Die in diesem Zusammenhang durchgef hrte Betrachtung der Faktenrepr sentation mit tels Frames f hrte bereits zu Einschr nkungen bzw Randbedingungen die bei der For mulierung der Regeln F CGPP und F Regel und Erzeugung der Frames F Fra 1 bis 3 beachtet werden m ssen Eine komfortable Entwicklungsumgebung sollte dem Entwickler die Pr fung solcher Grundbedingungen abnehmen da sie nicht speziell zu dem Weltausschnitt der Dom ne geh ren der im wissensbasierten System abgebildet werden soll Die Menge der vom System geleisteten Pr fungen bei der Erstellung der Wissensele mente s u kann als erweiterter syntaktischer Test interpretiert werden Eine solche Testkomponente kann aufgrund des Entwicklungszeitpunktes und des Vorgehens an dieser Stelle auch als Editor zur Akquisition des Wissens bezeichnet werden Im folgenden werden die Anforderungen an eine solche Komponente nach Wis sensrepr sentationsformen deren implementierte Einheiten z B eine Regel oder ein Frame auch als
26. aber nur die erarbeiteten Forderungen entsprechend den M glichkeiten bertragbar In vielen F llen wird das ein Arbeitsbereich des Softwareherstellers bleiben 100 KAPITEL 4 SCHLU BEMERKUNGEN 4 3 Ausblick In den Anf ngen der Expertensystem Entwicklung erforderten sehr komplexe und spar tanische Werkzeuge einen Team von Spezialisten f r die Analyse und Aufarbeitung der zu l senden Aufgabe sowie der Vorbereitung und Realisation der Implementierung Inzwis chen werden die Werkzeuge auch f r den Entwickler komfortabler und so gut bedienbar da keine Spezialisten sondern angelernte Fachkr fte aus dem Arbeitsgebiet aus dem die Aufgabe stammt die Implementierung des Wissens selbst vornehmen k nnen W hrend der Untersuchungen und der Entwicklung der Teilkomponenten der Konsistenz pr fung wurde das verwendete Entwicklungssystem nicht zuletzt auch wegen der dies bez glichen Fragen und Probleme in Richtung von M glichkeiten der Inferenzverfolgung verbessert Dem Entwickler stehen immer bessere Eingabem glichkeiten zur Verf gung die beispielsweise eine Typpr fung f r Attribute beinhalten Einen nicht zu vernachl ssigenden Einflu haben auch die Bestrebungen zur Software Zertifizierung Noch vor einigen Jahren war nur wichtig da die Applikation berhaupt die erwartete Funktionalit t zeigte In automatisierungstechnischen Aufgabenbereichen wurden wissensbasierte Systeme parallel zu herk mmlichen Proze f hrungssyste
27. cksichtigt werden Eine vereinfachte Auswertung kann dann erfolgen wenn nicht ein komplettes System sondern immer der letzte Entwicklungsschritt gepr ft wird Nach jeder Regeleingabe oder Frameerzeugung wird die Regel bzw die Ausschlu bedingungen in die Klauselform umgewandelt und der bereits bestehenden Klauselmenge hinzugef gt Tritt bei der nun folgenden Anwendung der Connection Graph Proof Procedure eine Inkonsistenz auf mu der Einflu der neuen Literale untersucht werden Dieses Vorge hen hat allerdings gravierende Nachteile Die Konsistenz mu auch dann gepr ft werden wenn ein Attribut einen zus tzlichen m glichen Wert erh lt da dadurch neue Aus schlu bedingungen und somit auch neue Klauseln erzeugt werden m ssen Durch die Verzahnung der CGPP mit den Editoren steigt der Implementierungsaufwand und eine funktionale Trennung der Komponenten z B in verschiedene Module der Entwicklungsumgebung Zusatzpakete ist nicht mehr m glich Der Zeitaufwand f r die Klauselerzeugung w hrend der Wissenseingabe hindert auch unge bte Benutzer an einer z gigen Arbeit Der Speicherplatzverbrauch f r die Klauseln ist sehr gro wie an den Beispielen in Kapitel 2 3 3 1 deutlich wird Ein funktionaler Test des aktuellen Entwicklungszustandes zeigt auch die Inkonsistenzen auf die in der Formulierung der Regeln begr ndet sind Wird auf jeden Fall ein funk tionaler Test durchgef hrt kann also auf einen syntaktischen
28. den Benutzer strenggenommen aber Frames Regeln und Prozeduren mit deren Sonderform Methode an Regeln oder Variable beispiels weise sind in diesem Zusammenhang allerdings auch als Objekte im formalen Sinn inter pretierbar da eine Kapselung besteht und Methoden Systemprozeduren zur Verf gung stehen Um nicht unn tig zu verwirren wird im folgenden die Bezeichnung Objekt auch f r die vom Benutzer erzeugten Frames verwendet Die in diesem Kapitel beschriebene Realisierung einer Konsistenzpr fungskomponente liefert ein Zusatzmodul zum G2 Basissystem durch dessen Einsatz ein konsistentes Expertensystem entwickelt werden kann Ein Schichtenmodell der Software ist in Ab bildung 3 1 zu sehen Da ein und dieselbe Person je nach Sichtweise oder Schicht sowohl ein Anwender als auch gleichzeitig ein Entwickler sein kann werden zun chst die hier verwendeten Bedeutungen erl utert 63 64 KAPITEL 3 REALISIERUNG Endanwender spez Applikation Konsistenzmodul Zusatzmodule Gensym Entwickler des Herstellers G2 Basissystem Abbildung 3 1 Blockbild einer G2 Applikation mit Konsistenzmodul e Der Endanwender ist der Benutzer der fertigen Applikation e die der Applikationsentwickler Wissensingenieur mit Hilfe der erweiterten Ex pertensystemshell realisiert hat W hrend der Entwicklung ist der Applikations entwickler der Benutzer der Shell e Die Teile der Sh
29. der internen Regel ber die Schaltfl che Regel erzeugen gestartet werden Eine erneute Bearbeitung der Regel beginnt dann mit der bereits erstellten Regelgrafik REGEL PALETTE E Hilfe REGEL WERKSTATT Abbrechen Verwerfen Regel erzeugen Eingabe Bausteine R B gt attribut name attribut name B klassen name objekt name attribut name objekt name E Logik Bausteine 5 attribut name attribut name el A objekt name objekt name attribut wert Vergleichs Bausteine wert RH zj BH 8 E farbe fahrrad 1 Ausgabe Bausteine KM a A attribut name attribut name prozedur z attribut name assen name objekt name objekt name attribut wert attribut wert attribut wert Abbildung 3 11 Arbeitsfl chen zur grafischen Erstellung einer Regel Mit der Regel Palette werden dem Benutzer vier Bausteingruppen angeboten Eingabe Bausteine repr sentieren Attribute von Objekten und konstante Werte die mit Hilfe der Logik Bausteine verkn pft und durch die Vergleichs Bausteine zu Pr missen kombiniert werden k nnen Aktionen f r die Konklusion stehen mit den Ausgabe Bausteinen zu Verf gung Objektorientierte Faktenrepr sentation f hrt zu zwei Ans tzen bei der Formulierung von Regeln Die Pr missen k nnen auf einen Attribu
30. einem um eine Stufe weiter geschachtelten Attribut wie z B class Auto class specific 3 farbe is a konsistenz attribut text attributes und class Konsistenz Attribut Text class specific wert is a text attributes min is a text max is a text mgl werte is a text list macht auch eine Schachtelung des Zugriffs notwendig die Eigenschaft von der Eigenschaft von Objekt in G2 Notation the wert of the farbe of Auto 1 Der normale Benutzer der Konsistenzkomponente soll von der internen Struktur der Datenorganisation Vorteile haben Die Auswahlm glichkeiten auf den Dialogen enthal ten bereits alle notwendigen Informationen d rfen bei der Verwendung zugeschnittener Klassendefinitionen also nicht umfangreicher werden Neben den Angaben Klassen Name Objekt Name und ein Attribut Name z B farbe in obiger G2 Notation m sste nach obiger Schachtelung noch ein zweiter Attribut Name hier wert durch den Benutzer ausgew hlt werden Dies ist nicht im Sinne der Benutzerfreundlichkeit und daher werden keine zugeschnittenen Klassendefinitionen sondern zus tzliche Listen wie in Kapitel 3 2 Seite 75 erl utert wurde gew hlt Die Eintr ge in den Listenfeldern der Dialoge stammen aus speziellen Listen die bei Ver wendung der Konsistenzkomponente zur Objekt und Klassenerzeugung angelegt bzw aktualisiert werden Es ist m glich diese Listen bei jedem Dialogaufruf neu zu erzeugen indem alle egal auf welche We
31. eingegebenen Werte statt Da der Benutzer prim r ein neues Objekt erzeugen wollte wird die Klassendefinition und automatisch eine Instanz dieser Klasse erzeugt Werden weitere Objekte erzeugt steht jetzt die Schaltfl che Bestehende Klasse im Startdialog zur Verf gung Der Auswahldialog bietet alle vom Benutzer erzeugten Klassen in einem Listenfeld an Der Klassenname kann mit der Maus ausgew hlt oder 74 KAPITEL 3 REALISIERUNG gt NEUE KLASSE 1 NEUES OBJEKT 4 NEUE KLASSE 1 1 Abbildung 3 9 Entstehung eines Objektes in einem Eingabefeld direkt eingegeben werden Nach einer direkten Eingabe wird der Name mit den vorhandenen Klassennamen verglichen und eine Fehlermeldung angezeigt wenn kein bereinstimmender Eintrag gefunden wird Auf diese Weise k nnen einer seits Suchvorg nge in langen Listenfeldern vermieden werden wenn der Klassenname bekannt ist andererseits werden Schreibfehler abgefangen ber die Schaltfl che Neues Objekt erzeugen wird eine Instanz der gew hlten Klasse generiert und erh lt den pro visorischen Namen lt Klassenname gt lt Nr gt siehe Abbildung 3 9 Wird der Dialog abgebrochen weil die gesuchte Klasse nicht vorhanden ist erscheint der vorherige Dialog und die Schaltfl che Neue Klasse kann gew hlt werden Weitere Aktionen wie die nderung des Klassennamens oder die ansprechende Gestaltung des Sinnbildes f r ein Objekt einer neuen Klasse werden durch Anklick
32. geben Durch diese Dialoge wird die Erf llung folgender Randbedingungen erzwungen e das System verlangt als Mindesteingaben einen Klassennamen und eine oder mehrere Oberklassen 70 KAPITEL 3 REALISIERUNG e der Benutzer ben tigt Hilfen bzgl m glicher Typen von Attributen sowie sinnvolle Angaben zu vorhandenen Namen und Objekten Forderungen F Fra 1 und 2 da ihm die Suchm glichkeiten innerhalb von G2 nicht bekannt sind und schlie lich e sollte f r die Konsistenzkomponente die M glichkeit bestehen Wertemengen f r Attribute festzulegen Forderung F Fra 3 Die Systemforderungen m ssen in jedem Fall erf llt werden da G2 sonst mit einer Fehler meldung reagiert oder was schwerere Folgen nach sich ziehen k nnte ohne Fehlermeldung in einen unsicheren Systemzustand l uft Auch die Anforderungen der Konsistenzkompo nente m ssen so weit wie m glich beachtet werden damit bei der Regelerzeugung siehe Kapitel 3 3 auf optimale Hilfestellung zur ckgegriffen werden kann Einzig die Feststellung der Benutzerfreundlichkeit ist ein subjektiver Ma stab f r den es in der Literatur zur Mensch Maschine Kommunikation einige Anhaltspunkte aber keine Vorschriften gibt Die weite Verbreitung des Betriebssystems Windows gibt gra fische Elemente und Bedienweisen vor die f r eine intuitive Bedienbarkeit sorgen Die Dialoge der Editoren wurden in Anlehnung an diesen Quasistandard gestaltet indem z B Schaltfl chen Eing
33. gepr ft wird Beim Ab schlu der Eingabe wird zus tzlich die Anzahl der ffnenden und schlie enden Klammern verglichen und kontrolliert ob alle lokalen Variablen im Prozedurkopf deklariert wurden Man kann die Funktion des Basissystems als ein Mittelding ansehen zwischen einem reinen Texteditor und einem Editor mit nachfolgendem Compiler wie sie bei der Entwicklung imperativer Programme verwendet werden F r den Benutzer ergeben sich daraus die gleichen Probleme wie f r alle Softwareentwickler Die bersicht z B ber die funk tional korrekte Anordnung von Klammern wird durch das System nicht unterst tzt Auch f r Prozeduren wurde daher ein neuer dialogorientierter Editor geschaffen der den Benutzer so weit wie m glich unterst tzt Wie bei Klassen Objekten und Regeln wird auch eine Prozedurerstellung durch Anklicken des Sinnbildes auf dem Palette Arbeitsblatt und Ablegen der Kopie auf einem beliebigen anderen Arbeitsblatt eingeleitet Der damit ge ffnete Dialog dient der Eingabe eines Prozedurnamens eventuell ben tigter Parameter und eines Textes der als Kommentar zur Erkl rung der Prozedurfunktion verwendet wird Dieser Text wird im Dialog f r einen Prozeduraufruf im Aktionsteil einer Regel als Hilfe Text angezeigt Zur Erleichterung der Prozedurauswahl sollte wenigstens ein kurzer Hinweis eingegeben werden Ben tigt die Prozedur Parameter sollte deren Verwendungszweck beschrieben werden Dieser Dokumentations Kom
34. ist dann ist folgendes zu unternehmen oder Wenn ein bestimmter Wert erreicht wurde dann bedeutet das Es ist mit diesen Regeln m glich eine bestehende Situation zu verstehen oder ziel gerichtete Handlungen vorzunehmen Nahezu jede Reparaturanleitung enth lt solche Regeln in Form von Tabellen als Dia gnosehilfe Man sucht eine passende Beschreibung der Situation um dann mit einer neuen genaueren Beschreibung erneut zu suchen oder mit der Handlungsanweisung sein Problem zu l sen Formal ergibt sich folgende Situation e die Situation wird durch bestimmte Tatsachen beschrieben e es existieren Regeln der Form WENN Bedingung DANN Schlu folgerung bzw Aktion e man sucht nach einer Regel deren Bedingungsteil Pr misse WENN mit den gegebenen Tatsachen erf llt wird e f hrt den Aktionsteil Konklusion DANN der Regel aus und e sucht erneut nach einer passenden Regel Eine Probleml sung nach diesem Ablaufschema kann sowohl durch einen Menschen als auch durch ein Programmsystem erfolgen das als Inferenzmaschine bezeichnet wird Die Formulierung der Regeln mit Wenn dann erinnert an die Formulierungen der aussagen bzw pr dikatenlogischen S tze Aus folgt oder impliziert umgangssprachlich formalisiert pr dikatenlogisch Wenn die Pumpe eingeschaltet ist Pumpe 1 ist eingeschaltet eingeschaltet P1 betr gt der Durchflu durch wenn dann das Ventil 5 Normeinhei
35. ist auch A3 wahr Modus Tollens Wenn Al A3 gilt und A3 falsch ist kann Al nicht wahr sein Kettenregel Wenn A2 A4 und A4 A3 gelten dann gilt auch A2 A3 Ist eine Menge wahrer Aussagen Fakten bzw Formeln Axiome gegeben so kann mit Inferenzregeln gepr ft werden ob ein Ausdruck mit unbekanntem Wahrheitswert Be hauptung aus den Axiomen geschlu folgert werden kann und somit wahr ist 19 Eine Behauptung die aus der Menge der Axiome gefolgert werden kann wird als The orem bezeichnet Den Vorgang bezeichnet man daher auch als theorem proving oder problem solving Wissen wird dabei nicht erzeugt sondern bewu t gemacht im plizit vorhandenes Wissen auf Nachfrage explizit best tigt Schwachpunkt der Aussagenlogik ist die fehlende M glichkeit allgemeine Aussagen un abh ngig von genau bekannten Objekten Individuen zu formulieren 1 1 2 Pr dikatenlogik Will man allgemeing ltige Aussagen f r einen bestimmten Gegenstandsbereich for mulieren ben tigt man Variablen f r die Objekte dieses Bereiches 1 1 LOGIKBASIERTE REPR SENTATION 7 Erweitert man die Aussagenlogik um Variable Funktionen und Quantoren kommt man zur Pr dikatenlogik bei der ein Pr dikat eine Eigenschaft eines Objektes oder die Beziehung zwischen mehreren Objekten beschreibt Wie in der Aussagenlogik besteht auch in der Pr dikatenlogik die Syntax aus Prim formeln die Pr dikate genannt werden sowie pr dika
36. ist die starke hnlichkeit der zu verwendenden Syntax um Werte zu setzen Aus die Eigenschaft von Objekt wird damit die Eigenschaft von Objekt Da ein Benutzer der Konsistenzkomponente keinen Zugriff auf die internen Strukturen und Abl ufe hat kann aber auf dieses gute Aussehen zugunsten besserer Handhab barkeit verzichtet werden Jeder einfache Datentyp erfordert ein Ausgangs Attribut das mehrere Werte dieses Typs aufnehmen kann In Abbildung 3 17 sind die Tabellen der Eigenschaften von zwei erstellten Ausgangs Attributen dargestellt Li E _ZEILE 1 _ZEILE 25 _ZEILE 1 a_zeile symbol _ZEILE 25 a_zeile integer Notes OK Notes OK Names _ZEILE 1 Names _ZEILE 25 Objektname auto 1 Objektname fahrrad 1 Objektklasse auto Objektklasse fahrrad Attribname farbe Attribname g nge Wert asymbol list Wert aninteger list Eintragendes objekt asymbol list Eintragendes objekt asymbol list Abbildung 3 17 Eigenschaften spezieller Ausgangs Attribute Diese Form ist nicht sehr anschaulich l t sich jedoch auf bersichtliche Weise innerhalb einer Prozedur erzeugen Grundlage hierf r sind die durch die Editoren erzeugten Li sten Klassennamen Attributnamen und Datentyp In Kapitel 3 2 wurde bei der Erl uterung der internen Darstellung bereits auf die Struktur der Listen hingewiesen und zur Veranschaulichung eine Tabelle Seite 76 geb
37. nach gew hlter Formulierung im folgenden auch als Form oder Muster bezeichnet mu sich die Syntax der Regeln im Bedingungsteil unterscheiden a Wenn das Auto rot ist dann b Wenn die Farbe des Autos rot ist dann 2 3 KONSISTENZ IN HYBRIDEN SYSTEMEN 37 Betrachtet man nun den Aktionsteil folgender Regel Wenn das Auto neu lackiert wird und die Farbe des Lackes gr n ist dann ist die Farbe des Autos nachher gr n in beiden Schreibweisen so werden unterschiedliche Abl ufe notwendig Bei einer Implementierung nach Muster a bedeutet diese Regel eine nderung von zwei Attributen des Frames Auto ATTRIBUT rot WERT ja gt nein ATTRIBUT gr n WERT nein ja Au erdem wird vorausgesetzt da das Attribut gr n existiert Eine einfache Wert nderung erf llt bei Muster b den gleichen Zweck ATTRIBUT Farbe WERT rot gt gr n Hier mu sichergestellt sein da gr n ein zul ssiger Wert des Attributes ist Der Aufwand bei der Frameerstellung sowie der Umfang des realisierten Systems un terscheiden sich f r die beiden Muster sehr stark Um verschiedene Farben eines Autos verarbeiten zu k nnen mu im Fall a jede erlaubte Farbe als eigenst ndiges Attribut des Frames vorhanden sein w hrend im Fall b ein einziges Attribut mit einer begrenzten aber erweiterbaren Wertemenge ausreicht Die Implementierung b ist also bei der Er stellung des wissensbasierten Systemes hinsichtlich des Arbeits und Speicheraufwa
38. nur noch die Objekt Namen von Fahrr dern da nur in dieser Klasse das Attribut G nge vorhanden ist Auch bei diesem Dialog wird also auf die jeweiligen Klassendefinitionen zur ckgegriffen W hlt der Benutzer den Objekt Namen aus werden im linken Feld alle Attribut Namen des Objektes angezeigt Bei einem Irrtum des Benutzers kann ber die Schaltfl che Listen Aktualisieren der Ausgangszustand mit allen Eintr gen wieder hergestellt werden Wie in Abbildung 3 12 k nnen mehrere gleiche Attribut Namen im Listenfeld angezeigt werden Diese scheinbare Redundanz wurde bewu t nicht verhin 80 KAPITEL 3 REALISIERUNG dert da der Benutzer so erf hrt da beispielsweise das Attribut Farbe in zwei Klassen vorkommt Wird einer dieser Eintr ge ausgew hlt enth lt das rechte Listenfeld in jedem Fall alle Objekte mit diesem Attribut Im Beispiel in Abbildung 3 11 soll das Attribut Farbe der Objekte Fahrrad 1 und Auto 1 auf einen konstanten Wert rot berpr ft werden Durch die Verbindung der Bausteine kann f r den Dialog zur Werteingabe Abbildung 3 13 ber den Vergleichs Baustein auf Informationen ber die verkn pften Attribute zugegriffen werden Statt nur einen beliebigen Wert eines beliebigen Datentyps mittels Texteditor einzugeben bekommt der Benutzer umfangreiche Informationen und Auswahlm glichkeiten Durch die indirekte Verbindung zum gew hlten Attribut ist bekannt um welchen Da
39. sowohl Aussage a und c als auch Aussage b und c enthalten sind Dadurch ist wie in der Mathematik ber die Formulierung der quivalenz als dann und nur dann die Forderung nach genau einem g ltigen Wert in den Klauseln ausgedr ckt worden Die Klausel i dr ckt die Be dingung h chstens ein g ltiger Wert aus in der Klausel ii ist mindestens ein Wert formalisiert F r eine Wertemenge der Form ROT BLAU GR N GELB ergeben sich folgende Aussagen f r alle Ausschl sse Farbe Obj ROT gt Farbe Obj BLAU A Farbe Obj GR N Farbe Obj BLAU lt gt Farbe Obj ROT A Farbe Obj GR N Farbe Obj GR N amp gt Farbe Obj ROT A Farbe Obj BLAU Farbe Obj GELB gt Farbe Obj ROT A Farbe Obj BLAU f A Farbe Obj GELB A Farbe Obj GELB A Farbe Obj GELB A Farbe Obj GR N S 8 h DEP ZEN ZEN ZN _ w Zur Formalisierung einer Wertemenge mit gegenseitigem Ausschlu sind alle Klauseln mit negierten Literalen zu erzeugen die sich aus der Kombination aller n Elemente der Menge zu Klassen mit r Elementen zur r ten Klasse ohne Wiederholung ergeben Zus tzlich mu eine Klausel mit den nicht negierten Literalen f r alle Werte erzeugt werden Bei dem hier gezeigten Beispiel sind also aus 4 Werten bzw den damit gebildeten negierten Literalen Klassen Klauseln mit 2 Elementen Literalen zu erzeugen Damit ergeben sich C n
40. vom Typ INTEGER ist und innerhalb der folgenden Grenzen liegt Minimal Wert 1 Maximal Wert 24 Attribut Name G NGE Objekt Name FAHRRAD 1 M gliche Werte Ausw hlen Attribut Wert OK Abbrechen Abbildung 3 14 Dialog zum Setzen eines Attributwertes Die Kombination aus m glichen Regelbausteinen deren Auswahldialogen und den darin angezeigten Informationen erf llt die Forderung F Regel S 39 und erm glicht dem Be 82 KAPITEL 3 REALISIERUNG nutzer etwaige Verst e gegen die Forderungen F Fra 1 bis 3 an verschiedenen Stellen zu entdecken Somit ist eine gute manuelle Kontrolle der Abbildung realer Objekte durch den Benutzer gegeben Die bisher vorgestellten Dialoge beziehen sich auf spezifische Pr missen und Konklusionen Bausteine mit dem O Symbol Selbstverst ndlich wurde die gleiche Funktionalit t auch f r die generischen Bausteine K Symbol realisiert An Stelle der Auswahllisten f r Objekt Namen enthalten die Dialoge dann Listen mit den Namen der vom Benutzer erzeugten Klassendefinitionen Um komplexere Aktionen durch eine Regel ausf hren zu lassen steht neben der direk ten Wertzuweisung als dritter Ausgabe Baustein ein Prozeduraufruf zur Verf gung Der Auswahldialog bietet in einem Listenfeld die Namen aller vom Benutzer erstellten Prozeduren an Sobald ein Name ausgew hlt wurde erscheint ein zugeh riger Hilfe Text siehe Kapitel 3 4 Seite 86 und wenn n tig wird di
41. wenn bereits nach wenigen Inferenzschritten ein Fehler aufge treten ist Je nach Umfang der automatischen Auswertung ben tigt der Entwickler In formationen ber Handlungsm glichkeiten oder zumindest ber das Umfeld des erkann ten potentiellen Fehlers Die gleichen Anspr che werden bei der Entwicklung kon ventioneller Programme gestellt und durch das sogenannte Tracing das schrittweise 2 3 KONSISTENZ IN HYBRIDEN SYSTEMEN 55 Abarbeiten von Anweisungen befriedigt Im Umfeld der wissensbasierten Systeme mu gekl rt werden was man unter schrittweise zu verstehen hat Wissensverarbeitung mit Hilfe von Regeln bedeutet die Pr fung der Regelbedingung und gegebenenfalls die Ausf hrung des Schlu folgerungsteiles oder Aktionsteiles die Regel hat oder wurde gefeuert Durch die nderung von Attributwerten k nnen Bedin gungsteile anderer Regeln erf llt und so weitere Schlu folgerungen ausgel st werden Der bergang vom Startzustand zu einem neuen Zustand kann als ein Schlu folgerungsschritt verstanden werden Ein Schlu folgerungsschritt Inferenzschritt beinhaltet im allgemeinen mehr als das Feuern einer Regel Schrittweises Abarbeiten oder Ausf hren eines wissensbasierten Sy stemes meint das Ausf hren aller m glichen Aktionen Regeln feuern Prozeduren werden aufgerufen bei einem gegebenen unver nderlichen Systemzustand Eine Analogie zu dieser Verfahrensweise findet sich bei speicherprogrammierbaren S
42. 36 Der Regeleditor mu so gestaltet werden da die Forderungen F CGPP und F Regel zuverl ssig erf llt werden Seite 38 und 39 Die Geschwindigkeit des Entwicklungssystems und somit die Arbeitsgeschwindigkeit des Entwicklers h ngt ebenfalls vom verwendeten Werkzeug und der Arbeitsoberfl che ab Der Aufbau eines ansprechenden Erscheinungsbildes der Editoren kann unter Umst nden zeitintensiv sein Bei den notwendigen berpr fungen von Syntax und Datentypen h ngt die Belastung zus tzlich vom Geschick des Werkzeugentwicklers ab Der zus tzlich ben tigte Speicherplatz schlie lich ist je nach Implementierung ber die Anzahl der Frames 2 3 KONSISTENZ IN HYBRIDEN SYSTEMEN 59 Attribute und m glichen Werte vom zu entwickelnden System abh ngig Insgesamt sind die Editoren besonders im Zusammenhang mit einem funktionalen Test notwendig Die Connection Graph Proof Procedure ist wie in Kapitel 2 3 3 1 gezeigt wurde prinzi piell f r Regeln in einem hybriden System anwendbar weist aber noch eine Schw che auf Wird eine Inkonsistenz im Gesamtsystem erkannt sollte eine Angabe der potentiellen Ursachen analog zu den Quellframes im funktionalen Test erfolgen siehe Forderung F funk 3 Seite 56 Dazu mu zu jedem Literal der Name der Ursprungsregel erfa t werden Da verschiedene Regeln zu gleichen Literalen bzw Klauseln mit gleichen Lit eralen f hren k nnen m ten Redundanzen in Kauf genommen und bei der Auswertung ber
43. 7 plus eine Klausel mit allen vier nicht negierten Literalen 3 6 Klauseln mit negierten Literalen Bisher ist sicher gestellt da Inkonsistenzen durch Regeln die das gleiche Attribut eines Objektes auf verschiedene Werte setzen erkannt werden k nnen Die Klauseln die den Systemzustand repr sentieren Fakten bestehen jeweils aus einem Literal das aus dem bekannten Wert eines Attributes eines konkreten Objektes erzeugt wird Auf diese Weise m ssen alle Attribute aller Objekte mit bekanntem Wert in die Klauselform berf hrt werden Im ersten dargestellten Connection Graph ist daher das f r dieses Beispiel relevante Faktum Eva hat die Kaufabsicht f r ein Auto als Klausel Kaufabsicht EVA AUTO enthalten 2 3 KONSISTENZ IN HYBRIDEN SYSTEMEN 49 In den klassischen logischen Systemen wird immer eine Menge wahrer Aussagen auf eine Menge bekannter wahrer Fakten angewandt Die Schlu folgerungen sind neue Fakten die der vorhandenen Menge an Fakten hinzugef gt werden siehe Kapitel 1 2 Eine Erweiterung um einen Zeitbezug f r die sinnvolle Anwendung der Pr dikatenlogik bei technischen Systemen wurde bereits in Kapitel 2 2 1 angesprochen und soll hier an hand eines Beispiels verdeutlicht werden Beispiel 2 Eine Verkehrsampel zeigt ein rotes Signal Nachdem eine Wartezeit abgelaufen ist wird die Ampel auf Gr n geschaltet Farbe Ampel ROT A Wartezeit Ampel 0 Farbe Ampel GR N Farbe Objekt ROT F
44. Eingabe des Regeltextes Die Syntax orientiert sich dabei an Horn klauseln analog zur Programmiersprache Prolog oder an aussagen bzw pr dikatenlo gischen S tzen wie bei G2 Der kontextsensitive Texteditor von G2 bietet dem Benutzer Schl sselbegriffe aber keine komplexeren Syntaxbl cke an Die Syntax der Regeln mu dem Benutzer also zu mindest in ihrer groben Struktur bekannt sein um sinnvolle Begriffe zu w hlen Wird die Eingabe abgeschlossen berpr ft G2 die Regel hinsichtlich der Syntax und der ver wendeten Objekte Klassen und Attribute Wurden in einer Regel Attribute oder ganze Objekte benutzt die nicht vorhanden sind erzeugt G2 Unkorrektheitsmeldungen im Sy stemattribut Notes der Regel und in einem Operator Logbook Beide Stellen m ssen vom Benutzer aber aktiv kontrolliert werden um die detaillierten Hinweise und Meldun gen zu erhalten Ein Benutzer k nnte zwar bewu t die Reihenfolge Regelerzeugung vor Objekterzeugung gew hlt haben Hauptgrund f r diese Meldungen zu fehlenden Objek ten ist jedoch ein Namensirrtum oder Schreibfehler Der Regeleditor der Konsistenzkomponente dagegen nutzt die syntaktischen Strukturen und den objektbasierten Ansatz von G2 um dem Benutzer Syntaxbl cke in Form von eigens daf r erzeugten grafischen Objekten als Bausteine zur Verf gung zu stellen Wie bei der Erzeugung von Objekten und Klassen klickt der Benutzer das Sinnbild Neue Regel des Arbeitsblattes
45. Erkennen der Inkonsistenzursache ist da her auch f r einen ge bten Programmierer nicht ohne Hilfe m glich Der Benutzer kann selbst entscheiden wieviele und welche Quellobjekte er ver ndert Mit den Schaltfl chen 3 5 FUNKTIONALER TEST 91 Editierung abgeschlossen und N chster Schritt wird das Arbeitsblatt geschlossen und mit den korrigierten Objekten der letzte Inferenzschritt wiederholt Gleiches geschieht bei Auftreten einer Oszillation Am Ende der Inferenzkette mu die Kette noch einmal von vorne gestartet werden wenn nderungen vorgenommen wurden um sicher zu stellen da dadurch nicht an anderer Stelle Probleme auftreten Nach einem fehlerfreien Durchlauf hat der Benutzer die Wahl das Modul des funktionalen Konsistenztests aus seiner Wissensbasis zu entfernen oder f r weitere Tests deaktiviert in den Hintergrund zu legen Der Vorteil der Einzelschrittbest tigung liegt in der M glichkeit Attributwerte zu ver folgen Der Benutzer kann sich von einem Objekt die Tabelle der Eigenschaften anzeigen lassen und nach jeder Weiterschaltung die neuen Attributwerte kontrollieren Dies ist die einzige M glichkeit das Auftreten definitiv falscher Werte zu entdecken die beispiels weise durch eine nicht korrekte Prozedur gesetzt werden An dieser Stelle besteht noch Entwicklungsbedarf um dem Benutzer Zugriff auf die Quellen eines bestimmten At tributwertes auf einfache Weise zu erm glichen Neben der durch Meh
46. Fakten beschrieben deren Repr sentationsform den Benutzerw nschen weitgehend entsprechen soll Jeder Mensch neigt dazu Fakten zu sinnvollen Gruppen zusammenzufassen Sei es da Eigenschaften einem physikalischen Gegenstand oder einzelne Fakten einem abstrakten Begriff z B Arbeitsgruppe zugeordnet werden Diesem Verhalten kann man in Expertensystemen durch die Verwendung von frame oder objektbasierten Repr sentationsformen entgegenkommen Kapitel 1 3 2 Frames k nnen als kleinste Gemeinsamkeit von Frames und strukturierten Objekten verstanden wer den und werden daher weiter untersucht Die an einem Problem beteiligten physikalischen Objekte lassen sich leicht finden und be nennen Auch die notwendigen Eigenschaften k nnen formuliert und zugeordnet werden Betrachtet man ganz allgemein die Repr sentation von Fakten mit Hilfe von Frames k nnen bei der Implementierung und Verwendung der Frames verschiedene Inkonsisten zen auftreten Ein Problempunkt ist die mehrfache Implementierung ein und desselben realen Objek tes beispielsweise durch verschiedene Entwickler zu verschiedenen Zeiten Des weiteren kann eine Eigenschaft eines Objektes durchaus durch unterschiedliche Bezeichnngen At tributnamen abgebildet werden und schlie lich kann einem Attribut ein Wert zugewiesen 36 KAPITEL 2 DER KONSISTENZBEGRIFF werden z B durch eine Berechnung der in der realen Welt nicht vorkommt und daher f r dieses Attribut nicht erwart
47. I Autos mit Klimaanlage unterteilt werden Mit Hilfe dieser Angaben kann eine Hierarchie aufgebaut werden die bei den st rksten Verallgemeinerungen beim gr ten Abstraktionsgrad beginnt Wurzel Eltern und sich dann durch immer gr ere Verfeinerungen ste Kinder bis zu einzelnen Individuen Bl tter Instanzen verzweigt Die Hierarchieebenen k nnen allgemein in Richtung Wurzel Oberklassen in Richtung Bl tter Unterklassen genannt werden Die Bezeich nungen Eltern bzw Kindklasse haben einen konkreten Hintergrund So wie Kinder von ihren Eltern gewisse Eigenschaften erben und andere Eigenschaften selbst entwickeln erbt auch eine Kindklasse die Eigenschaften der Elternklasse und kann neue eigene Eigenschaften erhalten Bild 1 3 veranschaulicht die Klassenhierarchie des Beispiels 16 KAPITEL 1 REPR SENTATION VON WISSEN Klasse Kraftfahrzeug Wurzel Attribute Anz R der Leistung Klasse PKW geerbt Anz R der Leistung Elternklasse eigene Attribute Anz T ren n Instanz Auto 13 Klasse Kombi Klasse Kombi pa betrachtete Klasse Anz R der 4 4 geerbt Anz R der Leistung Anz T ren mit Instanz Leistung 75 kW Anz T ren 5 y Klasse l Autos Klasse Il Autos Kindklassen geerbt Anz R der Leistung Anz T ren geerbt Anz R der Leistung Anz T ren eigene Attribute Anh ngerkupplung eigene Attribute Klimaanlage
48. Inferenzschritt ist mit einer Mutationsfolge bei einer Datenbank vergleich bar Eine Mutationsfolge ist eine Menge von Aktionen die zur Durchf hrung einer Datenmanipulation ben tigt wird die vom Benutzer ber ein Anwen dungsprogramm angefordert wurde Bei einem Inferenzschritt wird die Menge von Regeln ausgef hrt deren Pr missen in einem gegebenen Zustand erf llt ist Die berpr fung der Pr missen wird durch eine nderung der Fakten der Wissensbasis ausgel st wobei diese nderung entweder durch den Benutzer oder einen Inferenz schritt verursacht wird Diese Unterschiede sind so gravierend da sie eine eigenst ndige Betrachtung der Kon sistenz in wissensbasierten Systemen notwendig machen In der vorliegenden Arbeit kommen noch weitere wichtige Punkte hinzu Anwendungen wissensbasierter Systeme in der Automatisierungstechnik erfordern eine andere Regelstruktur Aktionsregeln und die Verwendung von Prozeduren Die in deduktiven Datenbanken eingesetzten Schlu folgerungsregeln dienen der Reduk tion der Basisdatenmenge Die zus tzlich bei wissensbasierten Systemen vorhandenen Aktionsregeln sind in der Lage au er dem Hinzuf gen neuer Daten wie durch Deduk tionsregeln auch bestehende Daten zu ver ndern oder zu l schen Dabei kann es sich um feste Ersetzungen genauso handeln wie um zustandsabh ngige nderungen die durch 2 2 WISSENSBASIERTE SYSTEME 29 Prozeduren realisiert werden Verwendet man bei Aktio
49. Konsistenz in hybriden wissensbasierten Systemen Vom Fachbereich Elektrotechnik der Bergischen Universit t Gesamthochschule Wuppertal genehmigte Dissertation zur Erlangung des akademischen Grades einer Doktor Ingenieurin von Diplom Ingenieurin Sabine Hagemann aus Wuppertal Konsistenz in hybriden wissensbasierten Systemen Vom Fachbereich Elektrotechnik der Bergischen Universit t Gesamthochschule Wuppertal genehmigte Dissertation zur Erlangung des akademischen Grades einer Doktor Ingenieurin von Diplom Ingenieurin Sabine Hagemann aus Wuppertal Tag der m ndlichen Pr fung 03 12 1999 Referent Professor Dr Ing J Heidepriem Korreferenten Professor Dr rer nat K H Becks Privatdozent Dr Ing R M ller Danksagung Mein besonderer Dank gilt meinem Doktorvater Herrn Prof Dr J Heidepriem der mir durch gro en pers nlichen Einsatz die Einhaltung aller relevanten Termine erm glichte Ebenfalls danke ich Herrn Prof Dr K H Becks und Herrn Privatdozent Dr R M ller f r die bernahme des Korreferats F r sein pers nliches Engagement und die Bereitschaft f r alle gro en und kleinen Sorgen ein aufmerksamer Ansprechpartner zu sein danke ich Herrn Prof E Forner sehr herzlich Er hat mein Bild von Forschung und Lehre entscheidend mitgepr gt Schlie lich danke ich allen Frauen die mich auf die eine oder andere Art unterst tzt und best rkt haben sowie all den M nnern die bei der Realisierung der So
50. Palette an und legt die Kopie des Sinnbildes auf einer be liebigen Arbeitsfl che ab Das Men einer Regel besteht aus den Punkten Arbeitsblatt wechseln l schen umbenennen und bearbeiten Der letzte Punkt ffnet zwei Ar beitsbl tter Das Arbeitsblatt Regel Palette enth lt Bausteine die auf dem zun chst leeren Arbeitsblatt Regel Werkstatt grafisch zu Regeln kombiniert werden k nnen In Abbildung 3 11 ist das Vorgehen beispielhaft angedeutet Der Benutzer kopiert durch einfaches Anklicken Regelbausteine von der Regel Palette und legt sie wie im oberen Teil der Regel Werkstatt zu sehen grob ausgerichtet ab Es ergeben sich dabei drei gedachte Spalten ganz links die Eingabe Bausteine mit Fak ten die logisch verkn pft werden k nnen in der Mitte ein Vergleichsbaustein und rechts ein Ausgabe Baustein Der Aktionsteil die Konklusion der Regel wird durch die rechte Spalte repr sentiert w hrend der Bedingungsteil die Pr misse immer durch den Ver gleich von Fakten gebildet wird der hier durch die linke und mittlere Spalte zusammen repr sentiert wird Sind alle notwendigen Bausteine plaziert werden sie durch Anklicken 78 KAPITEL 3 REALISIERUNG der Anschlu stellen an den Bl cken mit einander verbunden wie es im unteren Teil der Regel Werkstatt zu sehen ist Nach der Wertzuweisung f r die einzelnen Bl cke ber den jeweiligen Men punkt bearbeiten kann die Erzeugung
51. User Root bet tigen bevor er den geplanten normalen Start der Inferenz ausl st Das Arbeitsblatt Funktionaler Test Abbildung 3 16 bietet unter einem Begr ungs text zwei Gruppen von Optionsschaltern und eine Schaltfl che Start an Die Options schalter zur Sprachauswahl erm glichen die Ausgabe von Mitteilungen zum Testablauf in englischer oder deutscher Sprache Der Ablauf des Tests kann mit den Optionsschaltern zur Ablaufart beeinflu t werden Einzelschrittbest tigung erfordert durch die schritt weise Inferenz siehe Kapitel 2 3 5 S 55 mehr Aktionen vom Benutzer macht aber den internen Ablauf deutlich der bei der automatischen Weiterschaltung im Hintergrund abl uft Ist die Auswahl getroffen starten mit Bet tigung der Start Schaltfl che die Vorbereitungen zum Beginn der schrittweisen Inferenz Der Benutzer wird durch Mit teilungen auf einem gesonderten Arbeitsblatt ber zeitintensive Vorg nge informiert und zu bestimmten Handlungen aufgefordert Die Komponente f r den funktionalen Test verfolgt die nderungen der Attributwerte und entdeckt Inkonsistenzen Dazu ist ein schrittweiser Ablauf der Inferenz notwendig der mit Hilfe der in Kapitel 2 3 5 erarbeiteten Objektstruktur Framestruktur siehe Kapiteleinleitung S 63 realisiert wurde Lesende Zugriffe auf Attributwerte er folgen weiterhin auf die vom Benutzer erstellten Originalobjekte Eingangsobjekte Schreibende Zugrif
52. Wissenselemente bezeichnet werden getrennt zusammengestellt Regeln An dieser Stelle kann das wissensbasierte System eine effektive Hilfe bei der Entwicklung bieten indem bei der Eingabe von Regeln Hilfestellungen gegeben werden Neben Vorschl gen zur reinen Regelsyntax m ssen dabei auch relevante Teile des bereits im plementierten dom nenspezifischen Wissens angezeigt werden Der Entwickler der Wissensbasis auch als Wissensingenieur bezeichnet wird beispiels weise dadurch unterst tzt da zu einem neu eingegebenen Bedingungsteil einer Regel alle Stellen angezeigt werden an denen die abgefragten Attribute ebenfalls Verwendung finden Auf diese Weise k nnen Bedingungsteile erkannt werden die Ober oder Unter mengen der neuen Bedingungen enthalten und somit redundantes Wissen verk rpern Es werden durch die Anzeige der zugeh rigen Aktionsteile aber auch Widerspr che erkannt Beispielsweise kann so die Eingabe der beiden Implikationen aus Kapitel 2 2 1 Seite 30 als Regeln vermutlich verhindert werden Sei die Implikation P gt Q bereits als Regel R1 eingegeben worden Wird nach der Eingabe des Bedingungsteils P A R R1 angezeigt weil in deren Bedingungsteil ebenfalls das Attribut P enthalten ist hat der Wissensingenieur die 2 3 KONSISTENZ IN HYBRIDEN SYSTEMEN 41 M glichkeit die Inkonsistenz die durch den Aktionsteil entstehen w rde zu erken nen und entsprechend zu reagieren
53. __Zeile 8 _Zeile integer Auto 2 Auto Leistung Integer Liste Symbol Liste Abbildung 3 18 Tabelle der Ausgangs Attribute f r Auto 1 und Auto 2 Alle Wertzuweisungen an Attribute die im Aktionsteil von Regeln oder innerhalb von Prozeduren auftreten werden berarbeitet damit die Ausgangs Attribute an Stelle der Original Attribute verwendet werden Formulierungen der Form der Eigenschaft von Objekt wird der Wert X zugewiesen m ssen durch solche der Form der Liste Wert von _Zeile lt Nr gt wird der Wert X angeh ngt UND der Liste Eintragendes Objekt von __Zeile lt Nr gt wird der Name dieser Regel angeh ngt ersetzt werden Erf llung der Forderung F funk 3 S 56 Regeln Die mit dem Regeleditor erzeugten Regeltexte m ssen im Aktionsteil nach obigem Beispiel umgewandelt werden w hrend die Regelgrafiken unver ndert bleiben Zur besseren Trennbarkeit von syntaktischer und funktionaler Komponente wird jedoch nicht der Text der Originalregel sondern eine Kopie ver ndert Die Inferenzmaschine mu dann daran gehindert werden die Originalregel zu verwenden Zu diesem Zweck wird jedes originale Regelobjekt mit einer Systemanweisung als zu ignorieren verborgene unbenannte Eigenschaft des Objektes disabled gekennzeichnet was den gew nschten Effekt erzeugt 94 KAPITEL 3 REALISIERUNG Regeln mit generischen Aktionsteilen erfordern ein spezielles Vorgehen bei der berar beitung In einer Iteration ber alle Objekte
54. abefelder und Listenfelder verwendet wurden ELEMENTE E lt Schaltfl che zum Schlie en des Arbeitsblattes Schlie feld start lt Schaltfl che um selbstdefinierte Aktionen auszul sen Eingabefeld Listenfeld lt ausgew hlter Wert deutsch Objekte Optionsschalter w english Regeln V francaise E Prozeduren Abbildung 3 5 Beispiele f r Dialogelemente in G2 lWarenzeichen der Microsoft Corporation 3 2 KLASSEN UND FRAMEEDITOR 71 Das erste Objekt Ohne einen Editor mit zugeschnittenen Dialogen mu der Benutzer ber die System men s eine Klassendefinition ausw hlen und wenige Eintr ge in einer langen Tabelle der Eigenschaften mit dem Texteditor ndern Der Texteditor von G2 zeigt w hrend der Bearbeitung Syntaxbl cke an die an der betreffenden Stelle m glich sind Teilweise werden auch notwendige Angaben mit Standardwerten erg nzt wenn sie nicht explizit eingegeben werden F r einen unge bten Benutzer kann das allerdings eher verwirrend als hilfreich sein Eine berpr fung der notwendigen Eingaben erfolgt au erhalb des Editors nicht soda z B auch namenlose Klassen existieren k nnen was zum Abbruch der gesamten Entwicklungsumgebung f hren kann Diese Probleme und die unn tige Datenflut werden durch die Dialoge von Klassen und Frameeditor vom Benutzer ferngehalten Das zur neu entwickelten Konsistenzkompo nente geh rende Arbeitsblatt Palette
55. abelle eines Objektes Um ein Objekt von einer Arbeitsfl che auf eine andere zu bertragen mu der Men punkt Arbeitsblatt wechseln gew hlt werden Bewegt der Benutzer ein Sinnbild durch Anklicken und Gedr ckthalten des Mausknopfes auf einer Arbeitsfl che k nnen die Gren zen der Arbeitsfl che nicht berschritten werden Statt dessen wird die Fl che vergr ert wenn der Rand erreicht wird Das Men von Objekten unterscheidet sich vom dem der Klassendefinitionen dadurch da der Punkt bearbeiten fehlt neu ist der Punkt tafel Der Aufruf dieses Punk tes blendet die tabellarische Darstellung der Objekteigenschaften Attribute und deren Werte ein Abbildung 3 10 rechts Die Konfiguration der Oberfl che beschr nkt die Anzeige der Attribute auf solche die der Benutzer selbst erzeugt hat und das Sy stemattribut Names Das Sinnbild Neue Klasse auf dem Arbeitsblatt Palette dient zur Erzeugung einer neuen Klasse von der zun chst keine Objekte existieren Durch Anklicken des Sinnbildes und Ablegen der am Mauszeiger erscheinenden Kopie wird sofort der Dia log Erzeugen und Bearbeiten einer Klasse Abb 3 7 angezeigt Nach einem solchen Aufruf wird die neue Klassendefinition aber kein Objekt der neuen Klasse erzeugt Interne Darstellung Vergleicht man die interne Darstellung der klassisch oder mit den Editoren erzeugten Klassendefinitionen und Objekte ist kein Unterschied feststellb
56. anden werden k nnen Gibt es bei Frames f r einzelne Attribute D monen werden bei objektorientierten Ans tzen alle Zugriffe auf Attribute ber objekteigene Funktionen Prozeduren die hier Methoden genannt werden vorgenommen Ein Objekt stellt quasi eine Kapsel mit definierten Schnittstellen dar in der das Wissen gesch tzt wird Ein Attributwert kann nur verwendet werden indem das entsprechende Objekt mit tels einer Nachricht ber den Wert f r eine Eigenschaft befragt wird Ein mit diesem Ansatz erstelltes Programm repr sentiert also Fragen und Antworten die in Form von Nachrichtenaustausch zwischen Objekten realisiert werden Programmiersprachen und Entwicklungsumgebungen f r wissensbasierte Systeme mit ob jektorientierter Wissensrepr sentation bieten viele Zwischenstadien zwischen Frames und streng interpretierter Objektorientierung an H ufig wird das Schlagwort objektorien tiert benutzt und eine komfortable Frameverarbeitung angeboten Genaugenommen sollte man solche Verfahren frame oder objektbasiert nennen 18 KAPITEL 1 REPR SENTATION VON WISSEN 1 4 Mathematische Modelle Im Umfeld technischer Anwendungen werden Computer z B bei der Anla gen berwachung oder Qualit tskontrolle eingesetzt Unteranderem werden dabei ver schiedene Kenn und Steuergr en unter ber cksichtigung komplexer Zusammenh nge berechnet Die Darstellung dieser Zusammenh nge kann durch mathematische Modelle gesche
57. ar Die zus tzlichen In formationen Minimal Maximal und m gliche Werte erscheinen nicht in der Klassen definition sondern werden in speziellen Listen abgelegt Auch die anderen f r die Kon sistenzkomponente ben tigten Informationen wie Klassen Objekt und Attributnamen werden in Listen verwaltet Die Eintr ge sind so angeordnet da bei Anordnung der Listen nebeneinander eine Tabelle entsteht in deren Zeilen jeweils zusammengeh rige Werte zu finden sind 76 KAPITEL 3 REALISIERUNG Klassen Attribut Datentyp Anfangs Minimal Maximal m gliche namen namen werte wert wert Werte Auto Zubeh r value Alufelgen Min Max Keine Auto Gewicht float 1200 0 600 0 2000 0 Keine Auto Farbe symbol rot Min Max schwarz blau wei rot Auto Leistung integer 75 60 150 60 75 90 120 150 Fahrrad Farbe symbol blau Min Max rot gelb blau Fahrrad G nge integer 3 1 24 1 3 5 7 12 14 16 21 24 Die Listen mit Klassen und Attributnamen Datentyp und Anfangswert enthalten In formationen die auch in den Klassendefinitionen zur Verf gung stehen Diese Redun danz bringt jedoch Geschwindigkeitsvorteile je nach Gr e der Wissensbasis und Lei stungsf higkeit der Plattform durch die Verkettung der Daten ber die Listenindizes Prinzipiell ist eine Speicherung der Daten in einer erweiterten Klassendefinition m glich Denkbar ist das Format der Attributdeklaration in der Klassendefinition um d
58. arbe Objekt GR N Farbe Al ROT und Wartezeit Al 0 sind wahr Die CGPP liefert f r diese Aussagen eine leere Klausel Die nderung eines At tributwertes wie das Umschalten der Ampel wird mit der CGPP also als inkonsistenter Zustand interpretiert Das kann nur verhindert werden wenn die zus tzliche Information der zeitlichen Abfolge in den Klauseln formalisiert wird Die Aussagen lauten dann Farbe Ampel ROT TO A Wartezeit Ampel 0 T0 Farbe Ampel GR N T1 Farbe Objekt ROT Zeit Farbe Objekt GR N Zeit Farbe Al ROT TO und Wartezeit Al 0 T0 sind wahr Die CGPP liefert hierbei einen nicht leeren Connection Graph der keine leere Klausel enth lt Die Aussagen werden als konsistent erkannt Die Einf hrung eines Zeitbezuges zur Formalisierung einer vorher nachher Beziehung mit Hilfe der Zeitpunkte TO vorher und T1 nachher sowie der Variablen Zeit f r einen beliebigen aber in einer Aussage gleichen Zeitpunkt gleichzeitig erweitert den Einsatzbereich der CGPP auf Systeme die technische Abl ufe abbilden F r die vollst ndige Untersuchung einer Wissensbasis auf Konsistenz m ssen alle denk bzw realisierbaren Systemzust nde als Startzustand f r die Wissensbasis einmal getestet werden 50 KAPITEL 2 DER KONSISTENZBEGRIFF Die Anzahl der pro Startzustand zu erzeugenden Klauseln ist von der Gesamtzahl der At tribute in der Wissensbasis abh ngig Die Zahl der theoretisch m glichen Startz
59. athematik Wird diese Arbeit automatisch erledigt z B von einer Inferenzmaschine werden so viele einfache Regeln generiert wie es Kombinationen von Pumpen und Tanks gibt Eine generische Regel erleichtert also die Formulierung aber nicht unbedingt die Anwendung des Wissens Gegen ber der logikbasierten steht bei der regelbasierten Repr sentation zus tzlich die M glichkeit zur Verf gung bestehendes Wissen zu ver ndern da eine Konklusion Aktionsteil eine Handlungsanweisung zur Ver nderung der Situation enthalten kann Aktionsregel 19 Der Zustand der Wissensbasis nach Ausf hrung einer Regel kann ein grundlegend anderer sein als vor der Regelausf hrung Diese Eigenschaft bedeutet eine Ann herung an die dynamischen Verh ltnisse der Welt insbesondere der technischen und automatisierten Welt Andererseits verl t man damit die monotone Logik die keine nderungen sondern nur Erg nzungen der Wissensbasis behandelt 12 KAPITEL 1 REPR SENTATION VON WISSEN Insgesamt kann das Grundprinzip der Regeln formal als eine Sonderform der Pr dikaten logik interpretiert werden Ein wichtiger Unterschied besteht allerdings bei den Inferenzregeln s S 6 W hrend Modus Ponens die Grundlage der Inferenz in regelbasierten Systemen bildet und die Ket tenregel ebenfalls g ltig ist wird der Modus Tollens nicht verwendet Ein weiterer Unterschied ergibt sich aus der Betrachtungsweise der Regelverwendung Bei einer Diagnose ist
60. auf Die Angabe der Aufruf und R ckgabe Parameter der aktivierten Prozedur reicht nicht immer aus da Prozeduren intern auch direkt auf Attributwerte sowohl lesend als auch schreibend zugreifen k nnen Diese Zugriffe werden in Inferenzb umen nicht erfa t Eine sinnvolle Erg nzung zu einem Inferenzbrowser stellt ein Werkzeug dar mit dem e die Belegung der Attribute berwacht F funk 2 werden kann Dabei sind die folgenden Informationen interessant e Welches Attribut in e welchem Frame wird von e welcher Regel oder Prozedur e bei welchem Systemzustand gesetzt Erfolgt neben der Erfassung dieser Informationen auch eine Auswertung im Hinblick auf die Konsistenz des Systems kann dieses Werkzeug als dynamische Komponente in einem Konsistenztest verwendet werden Zus tzlich zu der in Kapitel 2 3 4 angesprochenen Problematik der Generierung von Test Startzust nden f r Prozeduren ist auch die Gestaltung des weiteren Ablaufes nicht trivial Ausgehend von einem Startzustand m ssen alle Ver nderungen an Attributwerten mit noch zu bestimmenden Zusatzinformationen protokolliert werden Die Datenmenge die parallel zu einer Standardnutzung des Systems anf llt mu dann unter Ber cksichti gung des Zeitablaufes ausgewertet werden Wird eine berpr fung der Ergebnisse erst als letzter Schritt einer Testnutzung des wissensbasierten Systems durchgef hrt tritt insbesondere dann eine Zeit und Speicher platzverschwendung auf
61. beiten also eher mit einem pr dikatenlogischen Ansatz in Verbindung gebracht werden k nnen Wenn eine Pumpe eingeschaltet ist steigt der F llstand eines angeschlossenen Tankes f r alle Pumpen und alle daran angeschlossenen Tanks gilt wenn die Pumpe x eingeschaltet ist steigt der F llstand des Tankes y 2 2 WISSENSBASIERTE SYSTEME 33 Au erdem soll die Dynamik Zeitbezug der technischen Systeme in der Wissensbasis abgebildet werden k nnen d h da nderungen der Wahrheitswerte durch Schlu fol gerungen m glich sein m ssen Wenn eine Pumpe P1 eingeschaltet und ein Tank an ihrem Ausgang voll ist dann wird diese Pumpe P1 abgeschaltet Dazu kann die Implikation in aussagen oder pr dikatenlogischen S tzen statt als rein logische Verkn pfung als zus tzlich zeitliche Verkn pfung interpretiert werden Wenn vorher A g ltig ist dann ist nachher B g ltig wobei B A erlaubt ist Erfolgt die Beschreibung des betrachteten Weltausschnittes technischen Systems mit pr dikatenlogischen S tzen ist nach einer Umwandlung der S tze in eine Klauselmenge Kapitel 1 1 2 der Konsistenztest f r diese Systeme mit der Connection Graph Proof Procedure CGPP anwendbar 41 17 Mit Hilfe der CGPP kann f r eine Klauselmenge eine Inkonsistenz mit einer endlichen Anzahl von Schritten festgestellt werden F r technische Systeme existieren trotz der Semi Entscheidbarkeit der Pr dikatenlogik erster Stufe Verfahren mit dene
62. berpr fung stellt sicher da alle Bausteine die notwendi gen Verbindungen besitzen alle Informationen eingegeben wurden und die Datentypen der Werte zu den Attributen passen Wird einer der Punkte nicht erf llt erscheint 3 3 REGELEDITOR 83 eine Fehlermeldung und das Arbeitsblatt Regel Werkstatt wird erneut angezeigt Ein aufmerksamer Benutzer kann allerdings schon bei der Erstellung der Regelgrafik Fehler vermeiden Die Sinnbilder der verwendeten Bausteine zeigen rote Symbole solange Verbindungen oder Informationen fehlen Wurde ein verbundener Baustein bearbeitet und alle Angaben sind vorhanden erscheint das Symbol in schwarz Es gibt zwei weitere M glichkeiten das Arbeitsblatt zu schlie en Soll die Regel Werkstatt verlassen werden ohne eine nderung vorzunehmen geschieht dies ber die Schaltfl che Abbrechen Eine bereits vorher erzeugte Regel bleibt dabei erhalten und es findet keine erneute Pr fung statt Die Schaltfl che Verwerfen l scht dagegen die eventuell bestehende Regel und erm glicht so einen Neuaufbau auf einem leeren Arbeits blatt Interne Darstellung Mit der Schaltfl che Regel erzeugen wird nicht nur eine berpr fung der Regelgrafik gestartet sondern auch der G2 interne Regeltext erzeugt Die Klasse rule besitzt ein Attribut ohne Namen vom Typ Text das als Wert die eigentliche Regel enth lt Wird der Text mit dem kontextsensitiven Editor direkt eingegeben mu der Benutze
63. chlicher Vorgehensweisen bei der L sung von numerischen Proble men erfolgt z B durch eine festgelegte Folge von Anweisungen an den Computer Die Anweisungen k nnen mit Hilfe imperativer Programmiersprachen abgebildete Operatio nen sein die ausgef hrt werden m ssen wenn die Probleml sung gefunden werden soll Daten in Form von Zahlen dienen einem solchen Algorithmus als Eingabewerte bzw Vorgaben Sollen andere als numerische Probleme gel st werden ist eine andere Art der Abbildung menschlichen Verhaltens notwendig Der Mensch verf gt ber verschiedene L sungsstrategien f r ein und das selbe Problem die je nach konkreten Vorgaben Fakten intuitiv ausgew hlt und zum Teil sogar angepa t werden Eine M glichkeit dieses Probleml sungsverhalten abzubilden ist an die Stelle eines Algorithmus Wissen und Steuerstrategien zur Verarbeitung des Wissens treten zu lassen Abh ngig von den Fakten wird durch die Wissensverarbeitung dynamisch ein Weg zur Gewinnung der L sung gefunden Im Bereich der wissensbasierten Systeme f hrt der Versuch einer Nachbildung des men schlichen Vorgehens zu verschiedenen Repr sentationsformen f r das ben tigte Wissen die mehr oder weniger stark die Trennung von 1 Fakten Daten aufgabenabh ngigen Auspr gungen die Fallwissen darstellen und 4 KAPITEL 1 REPR SENTATION VON WISSEN 2 Folgerungen Aktionen Verfahren allgemeine L sungsstrategien als Ausdruck von Bereichs Dom ne
64. deutungen genau zu unterscheiden mu der Kontext analysiert werden Einfacher ist es dem Benutzer als Kommentarkennzeichen eine Text Struktur vorzuschreiben Ein hnliches Problem ergibt sich bei Iterationen in Form von For Schleifen Eine Schleife wird immer mit der Anweisung end abgeschlossen Wird nach diesem Text gesucht um das Ende des Schleifenblocks zu identifizieren kann man unterschiedlich vorgehen e Ein einfacher Z hler f r alle ffnenden Strukturen begin if then else for do kann bei sequentieller Abarbeitung des Prozedurtextes durch jede ffnung inkre mentiert und durch jedes end dekrementiert werden Auf diese Weise ist eine eindeutige Zuordnung der betrachteten ffnenden Struktur zu ihrem end m glich 3 5 FUNKTIONALER TEST 95 e Fine andere auch f r den Benutzer hilfreiche M glichkeit besteht in der Kennzeich nung der end Anweisung durch einen Kommentar Eine Anweisung der Form for lt lokale Variable gt each lt Klassenname gt do wird beispielsweise mit end of for each lt lokale Variable gt abgeschlossen Jede For Schleife mu wie ein generischer Aktionsteil einer Regel in eine Folge von An weisungsbl cken f r spezielle Objekte umgewandelt werden Um auch hier wie bei den Regeln den Originalzustand zu erhalten wird eine neue Prozedur erzeugt die die gleiche Funktion erf llt wie die Originalprozedur Zur Unterscheidung wird dem alten Namen da
65. die Auswirkung einer unbekannten Ursache bekannt Betrachtet man Regeln als Ursache Wirkung Beschreibung ist sofort einsichtig da eine Diagnose in Gegenrichtung arbeitet Die Auswertung von Regeln durch berpr fung der Pr misse wird als Vorw rtsverket tung bezeichnet Wird dagegen die Konklusion getestet spricht man von R ckw rtsver kettung Im allgemeinen wird die Art der Problembeschreibung bereits der Richtung angepa t F r ein Diagnosesystem k nnen die Regeln auch so formuliert werden da die Auswertung mit Hilfe der Vorw rtsverkettung geschehen kann Neben der Wissensrepr sentation durch Regeln ben tigt ein System eine Strategie zur Auswahl der n chsten zu bearbeitenden Regel Es ist durchaus m glich da mehrere Regeln in einem gegebenen Zustand ausf hrbar sind feuern k nnen M gliche Steuerstrategien sind die Tiefensuche und die Breitensuche Diese Strategien stammen aus der Graphensuche wobei man einen Zustand als Knoten und alle Regel ausf hrungen als Kanten zwischen zwei Knoten dem Vorg ngerzustand und dem Nach folgezustand bezeichnet Bei regelbasierten Systemen umfa t ein Zustand die gesamte Regelbasis des Systems Von einem gegebenen Startzustand wird ein Weg zu dem vorgegebenen erw nschten Zielzustand gesucht Die Suche ist beendet wenn im Er folgsfall der Zielzustand erreicht wurde oder im Mi erfolgsfall eine Abbruchbedingung erf llt wird Tiefensuche Wurde eine Regel
66. e Liste alle vom Benutzer erzeugten Inferenz Objekte Im Zuge der Umwandlung werden die bearbeiteten Inferenz Objekte aus der Liste entfernt Treten beim Test Inkonsisten zen oder Oszillationen auf und werden deshalb Inferenz Objekte editiert oder erzeugt der Benutzer nach einem funktionalen Test neue Inferenz Objekte werden diese in die Liste aufgenommen Ist die Entwicklung der wissensbasierten Applikation abgeschlossen kann zur Ver ringerung des ben tigten Speicherumfanges der funktionale Test mit allen f r seine Durchf hrung erzeugten Objekten aus der Wissensbasis entfernt werden Die Editoren k nnen ebenfalls entfernt oder auch im System belassen werden Soll zu einem sp teren Zeitpunkt der funktionale Test doch wieder verwendet werden kann die Teilkomponente wieder in die Modulhierarchie aufgenommen werden Kapitel 4 Schlu bemerkungen 4 1 Zusammenfassung Im Rahmen dieser Arbeit ist ein Test auf Widerspruchsfreiheit von hybriden Wissens basen entwickelt und erprobt worden der es erm glicht eine hybride Wissensbasis zu erg nzen oder zu ndern und dabei auftretende Widerspr che innerhalb der Wissensba sis zu entdecken und zu beheben Bisher ist es dem Entwickler eines wissensbasierten Systems selbst berlassen wie er die Korrektheit und Funktionssicherheit der Applikation gew hrleistet Bereits bei der Erstellung insbesondere aber bei Wartungsarbeiten nach l ngerer Arbeitszeit des Sy stems kann unbemerkt wider
67. e die als konsistent erkannt wurde eine einzelne neue Regel zugef gt die beim Auftreten einer Inkonsistenz als deren Teil Ursache fest steht Nachteil dieses Verfahrens ist der zus tzliche Aufwand f r einen kompletten Kon sistenztest nach jeder Regeleingabe Wird von jeder Regel die einmal erstellte Klau selform gespeichert mu nur die letzte Regel transformiert und der Test mit der CGPP durchgef hrt werden Frames Die Erzeugung neuer Frames setzt sehr viel berblick ber bereits vorhandene Wissense lemente sowie ihre Hierarchie voraus Eine einfache und wirkungsvolle Hilfe ist die Anzeige der vorhandenen Klassen Frame und Attributnamen Dadurch ist der Wissensingenieur in der Lage auf vorhandene Frames oder einzelne Attribute als Vorlage oder als Erinnerung zur besseren sprachlichen 42 KAPITEL 2 DER KONSISTENZBEGRIFF Abgrenzung zur ck zu greifen Verwirrende Namensvielfalt f r ein und die selbe Eigen schaft bei verschiedenen Frames wie z B laufende_Nummer Nummer Nr ID oder hnliches f r eine Kennziffer oder einen Index k nnen vermieden werden Damit ist die Forderung F Fra 2 Seite 36 erf llt Gleichzeitig kann eine Hierarchie der Frames durch Bildung neuer Klassen oder Zuord nung zu bereits bestehenden Klassen mit Unterst tzung des Systems aufgebaut werden Der Wissensingenieur kann aus den Vorschl gen des Systems eine zutreffende Zuordnung ausw hlen oder mit Hilfe dieses berb
68. e Schaltfl che Parameter aktiviert Entscheidet sich der Benutzer f r eine Prozedur mit Parameter bergabe werden nach Anklicken der Parameter Schaltfl che alle Werte mit Angabe ihres Datentyps abge fragt Die prozedurinterne Bedeutung der Parameter sollte aus dem Hilfe Text hervorge hen den der Benutzer bei der Prozedurerstellung formulieren kann Durch die Art der Informationsauswertung im Regeleditor werden sowohl Schreibfehler als auch logische Fehler mit geringem Aufwand verhindert Zus tzlich w re es ber die Auswertung aller Regelgrafiken m glich Regeln anzuzeigen die mindestens ein At tribut enthalten das auch in der gerade bearbeiteten Regel verwendet wird Bei gro en Regelmengen ist es aber nicht mehr praktikabel die entsprechenden Regelgrafiken auf eigenen Arbeitsbl ttern anzuzeigen Es mu eigens eine geeignete Anzeigeform entwick elt werden die sowohl eine schnelle bersicht als auch einen einfachen Zugriff erlaubt Entstehen ohne diese Hilfe Redundanzen die zu Inkonsistenzen f hren werden diese durch den funktionalen Test gefunden und k nnen dort behoben werden Hier kann Entwicklungsaufwand eingespart werden wenn nur Konsistenz und nicht Benutzer freundlichkeit gefordert wird Hat der Benutzer eine Regelgrafik vollst ndig aufgebaut und alle notwendigen Informatio nen eingegeben kann das Arbeitsblatt mit der Schaltfl che Regel erzeugen geschlossen werden Die damit gestartete
69. echts In diesem Beispiel sind auf der Unterarbeitsfl che eine grafische Darstellung der Regel sowie der Regeltext in G2 Syntax abgelegt 68 KAPITEL 3 REALISIERUNG Sinnbild If the PS of MOTOR 1 gt 200 then einer Sz gt conclude that the OELZUSTAND of Regel arbeitsfl che MOTOR 3 schlecht PS MOTOR 1 Regel in G2 Syntax Tabelle der Eigenschaften PS MOTOR 1 adummy regel grafische Darstellung des Regeltextes Notes OK lo oelzustand motor 3 sr er gleich schlecht Names PS MOTOR 1 Gfr uuid Abbildung 3 4 Ein sinnloses Regel Objekt und seine Unterarbeitsfl che Auf die Bedeutung der einzelnen Angaben wie z B PS MOTOR 1 und MOTOR 3 wird in Kapitel 3 3 n her eingegangen Sind die Informationen auch bei anderen Objekten z B allen vom Benutzer erzeugten Regeln relevant kann eine Arbeitsfl che auch so angelegt werden da von jedem betrof fenen Objekt ein Verweis erfolgen kann Auf diese Weise ist eine flexible Strukturierung des Wissens m glich Der objektbasierte Ansatz von G2 erm glicht auch im Zusammenhang mit einem Test der Wissensbasis eine komfortable Benutzung da jedes Objekt einzeln deaktiviert bzw aktiviert werden kann Die Inferenzmaschine verwendet nur aktives Wissen und ig noriert deaktivierte Objekte Auf diese Weise kann die aktuell zur Verf gung stehende Wissensmenge ver ndert und der Einflu des deaktivierten Wissens auf das Gesamtsys tem sch
70. egeben kann die Reihenfolge als implizite Angabe einer Relation z B ist g nstiger als bei Lesart von links nach rechts oder ist h her als bei Lesart von rechts nach links zwischen den Symbolen verstanden werden Weiterhin ist hier nichts ber die Zuordnung eines numerischen Wertes zu einem oder eventuell auch mehreren Symbolen ausgesagt Dies hat Konsequenzen f r die Konsistenzbetrachtungen was im Unterpunkt Symbolfolgen n her untersucht wird Bei beiden Arten der Wertemenge ist es f r den Konsistenztest wichtig da alle m glichen Werte als Elemente der Menge angegeben werden Andernfalls kann der Wissensinge nieur beispielsweise durch einen Schreibfehler im Bedingungsteil einer Regel Attribute auf Werte abfragen die niemals auftreten Andererseits bedeutet ein Schreibfehler im Aktionsteil einer Regel die indirekte Deklaration eines neuen Attributwertes der niemals ausgewertet wird z B Attribut FARBE wird auf BLAI statt BLAU gesetzt 44 KAPITEL 2 DER KONSISTENZBEGRIFF Symbolfolgen Wie bereits in Kapitel 2 3 2 begr ndet sind frei formulierbare Attributwerte in einem anwenderfreundlichen Expertensystem rein booleschen Werten vorzuziehen Einige sich daraus ergebende Probleme wurden dort ebenfalls bereits angesprochen Einen Sonderfall stellen nun implizite Relationen zwischen Symbolen dar Wird beispiels weise f r das Attribut Temperatur des Frames Motor die Wertemenge kalt k h
71. egeln strukturierten Objekten und mathematischen Modellen bis hin zu den hybriden Systemen stehen Repr sentationsformen zur Verf gung die f r bestimmte Anwendungstypen zugeschnitten sind Die unter der berschrift wissens basierte Systeme angesiedelten Anwendungen in technischen Umfeldern lassen sich mit den hybriden Entwicklungssystemen am besten realisieren obwohl neben den Vorteilen auch die Nachteile der einzelnen Ans tze ber cksichtigt werden m ssen siehe auch Erl uterungen in Kapitel 2 2 und Kapitel 3 Bei allen Unterschieden zur Entwicklung imperativer Programme bleibt doch die Verantwortung f r bersichtlichkeit und allge mein gute Struktur beim Entwickler Welche Entwicklungsmethodik aus dem klassischen Softwareengineering f r wissens basierte Systeme g nstig ist wird im folgenden Kapitel n her betrachtet 22 KAPITEL 1 REPR SENTATION VON WISSEN Kapitel 2 Der Konsistenzbegriff Wissensbasierte Systeme werden oft mit komplexen Programmen verglichen Wissen schaftliche Arbeiten zur Konsistenz gibt es jedoch nicht nur in diesem Zusammenhang sondern auch auf dem Gebiet der Datenbanksysteme Es mu daher gepr ft werden in wie weit diese Konsistenzbetrachtungen auf wissensbasierte Systeme bertragen werden k nnen Nach einer kurzen Abhandlung ber Datenbanksysteme Datenbanken werden Gedanken zur berwachung bzw Wahrung der dort definierten Konsistenz vorgestellt Deduk tive Datenbanken bieten eine
72. einer Klasse wird f r das jeweils aktuelle Objekt ein Attributwert gesetzt In den neuen Anweisungen wird auf eine __Zeile zuge griffen die sowohl von dem verwendeten Attribut als auch von dem aktuellen Objekt abh ngt Da die Nummerierung der __Zeilen nur von der Reihenfolge bei ihrer Erzeugung anh ngt mu f r jedes Objekt bei der Iteration die zugeh rige __Zeile erst bestimmt wer den Eine Regel mit generischem Aktionsteil ist eine Kurzschreibweise f r den Benutzer die von der Inferenzmaschine bei Bedarf durch eine Reihe von Regeln mit gleicher Pr misse ersetzt wird in deren Aktionsteil jeweils nur auf ein spezielles Objekt der angegebe nen Klasse zugegriffen wird Der funktionale Test erfordert diese Konkretisierung in spezifische Regeln bereits vor dem Start des Inferenzprozesses f r die entwickelte Ap plikation Prozeduren Ebenso wie Regeln k nnen Prozeduren Wertzuweisungen in einfacher Form oder in Ite rationen ber alle Objekte einer Klasse enthalten Auch hier ist eine nderung der Formulierung und eine Ersetzung der Iteration durch konkrete Zuweisungen erforderlich Die daf r notwendige Analyse des Prozedurtextes ist sehr aufwendig wenn nicht einige Randbedingungen bez glich der Syntax eingehalten werden Die Syntax f r Prozeduren in G2 enth lt als Kennzeichen eines Kommentares die ein fache geschweifte Klammer Leider wird diese Klammer auch als Kennzeichen f r Mengen bzw Reihen verwendet Um die beiden Be
73. eitbl tter zur Vorlesung Computational Intelligence Lehstuhl f r Automatisierungstechnik Universit t Wuppertal 101 102 8 10 Tann 11 12 13 15 Tu 16 LITERATURVERZEICHNIS Hinz Michael Entwicklung von Datenstrukturen und Methoden einer Akquisitionskomponente zur dynamischen berpr fung der Widerspruchsfreiheit eines wissensbasierten Systems Diplomarbeit Universit t Wuppertal 1998 Hohlfeld Bernhard Struckmann Werner Einf hrung in die Programmverifikation Theorie und Anwendung der Hoareschen Methode am Beispiel der Programmiersprache Pascal B I Wissenschaftsverlag Mannheim u a 1992 Hohlfeld Bernhard Zur Verifikation von modular zerlegten Programmen Universit t Kaiserslautern Dissertation 1988 IT Sicherheitskriterien Kriterien f r die Sicherheit von Systemen der Informationstechnik Bundesanzeiger K ln 1989 41 99a T Evaluationshandbuch Handbuch f r die Pr fung der Sicherheit von Systemen der Informationstechnik IT Bundesanzeiger K ln 1990 42 151a Jakobi Anja Friedrich J rgen Expertensysteme Anwendungen Auswirkungen und Gestaltung Verlagsanstalt Courier GmbH Stuttgart 1993 Karbach W Linster M Wissensakquisition f r Expertensysteme Techniken Modelle und Softwarewerkzeuge Carl Hanser Verlag M nchen Wien 1990 Kleberhoff Ralf Einsatz des Varianten Connection Graphs f r realzeitf hige Anlagen berwachungssyste
74. ekte W hrend die bisher betrachteten Ans tze der Wissensrepr sentation die menschliche Vorgehensweise beim L sen von Aufgaben als Grundlage nehmen richtet sich das Au genmerk bei strukturierten Objekten auf die Art wie Objekte mit ihren Eigenschaften Zusammenh ngen und Abh ngigkeiten erfa t werden 1 3 1 Semantische Netze Semantische oder assoziative Netze sind im Rahmen der Sprachverarbeitung entstanden Nat rlichsprachige Information kann f r die automatische Verarbeitung zug nglich gemacht werden wenn es gelingt Satzteile und Worte grammatischen Grundstrukturen und Klassen zuzuordnen Es werden dabei ausschlie lich Fakten und ihre statischen Zuordnungen abgebildet Die grafische Darstellung eines semantischen Netzes kann auch als die Veranschaulichung von zweistelligen Relationen interpretiert werden Jedes Netz stellt ein eigenes strukturiertes Objekt dar Schlu folgerungen sind in semantischen Netzen nur unter Einhaltung von Randbedin gungen z B transitive Relationen m glich Bei der Sprachverarbeitung beispielsweise werden zwei Netze miteinander verglichen und so die Zuordnung der konkreten Worte zu den Wortklassen der Grammatik vorgenommen ist_ein Lora Vogel ee Au en a ist_ein Nest 2 Fl gel Zwitschern Tier z peure Dandy Hund ist_ein wohnt a Auer H tte 4 Beine Bellen
75. ell die nicht zum G2 Basissystem geh ren wurden von Werkzeug entwicklern entworfen und realisiert e Die Entwickler des G2 Basissystems werden in dieser Arbeit nicht erw hnt da sie nicht bekannt sind Dieses Kapitel beschreibt die Realisierung eines Konsistenztestes der die Ausf hrungen in Kapitel 2 2 ber cksichtigt Nach einem berblick ber die M glichkeiten der Experten systemshell G2 wird die Umsetzung der einzelnen Abschnitte aus Kapitel 2 2 beschrieben Die Realisierung erfolgte durch Werkzeugentwickler im folgenden kurz Entwickler genannt am Lehrstuhl f r Automatisierungstechnik an der Bergischen Universit t Gesamthochschule Wuppertal im Rahmen dieser Arbeit durch die Verfasserin sowie in Form von durch sie betreuten Projekt und Diplomarbeiten Dabei wurden alle Dialoge mit Hilfe der in Abbildung 3 5 dargestellten Grafikelemente selbst entworfen und f r jedes Element das Verhalten bei verschiedenen Benutzerreaktionen mit Hilfe komplexer selbstentwickelter Methoden festgelegt Das Konsistenzmodul wird von Wissensingenieuren w hrend einer Applikationsent wicklung benutzt die im folgenden kurz Benutzer oder Nutzer genannt werden 3 1 DIE ENTWICKLUNGSUMGEBUNG 65 3 1 Die Entwicklungsumgebung Die in der Literatur angegebene Trennung von Wissensbasis Inferenzmaschine und Dialogkomponente mit Akquisitions und Erkl rungsteil Abbildung 3 2 ist in der Entwicklungsumgebung G2 S
76. en der Klassen definition und Auswahl aus dem Men eingeleitet siehe Abbildung 3 10 Der Punkt bearbeiten ffnet den schon bekannten Dialog Erzeugen und Bearbeiten einer Klassen definition ber den Punkt umbenennen kommt man zu einem Eingabefeld auf dem Dialog nderung des Klassennamens Sobald hier ein Name eingegeben und best tigt wurde werden sowohl die Klassendefinition als auch alle Objekte dieser Klasse um benannt aus Neue Klasse 1 wird z B Auto und aus Neue Klasse 1 1 wird Auto 1 Selbstverst ndlich kann jedem Objekt ein individueller Name gegeben wer den indem der Punkt umbenennen aus dem Men des Objektes verwendet wird Mit dem Men punkt bearbeite grafik wird der systemeigene Grafikeditor f r Sinnbilder Icon Editor ge ffnet Einfache Grafikelemente k nnen in mehreren Ebenen layer miteinander kombiniert werden um ein ansprechenderes Sinnbild als das graue Quadrat zu erzeugen siehe Abbildung 3 10 Auto 1 gegen ber Abbildung 3 9 Neues Objekt bzw Neue Klasse 1 1 3 2 KLASSEN UND FRAMEEDITOR 75 AUTO 1 an auto class definition Er l bearbeite grafik AUTO 1 Names AUTO 1 NEUE KLASSE arbeitsblatt wechseln i Zubeh r alufelgen l schen auto tafel arbeitsblatt wechseln umbenennen Gewicht Farbe l schen umbenennen Leistung Abbildung 3 10 Men einer Klassendefinition sowie Men und T
77. erarchie der Men s und Dialoge eines Objektes 2 2 113 A 8 Hierarchie der Men s einer Regel 2 2 2 nme 114 A 9 Dialoge der Regel Bausteine 2 2 LE EC nn 115 A 10 Aktionen der Schaltfl chen in der Regel Werkstatt 2 2 2 2 116 A 11 Hierarchie der Men s und Dialoge einer Prozedur 2 2 2 117 A 12 Dialoge der Prozedur Bausteine I oaoa aaa a n nn 118 A 13 Dialoge der Prozedur Bausteine I oaoa aaa aa 119 A 14 Aktionen der Schaltfl chen in der Prozedur Werkstatt 120 A 15 Dialog eines Arbeitsblattes 22 2 22 on n nn 120 A 16 L sche lade funktionalen Test 2 2 22 cn nn 121 A 17 Ablauf des funktionalen Tests 2 2 2 om m nn 123 Verwendete Formelzeichen Elementare Aussagen Atome Primformeln A1 Die Sonne scheint Junktoren A konjunktive Verkn pfung und V disjunktive Verkn pfung oder Negation nicht gt Implikation impliziert lt quivalenz ist quivalent zu Formel in Aussagenlogik F l einstelliges Pr dikat P1 studiert_Elektrotechnik a Formel in Pr dikatenlogik Fp1 Vx studiert_Elektrotechnik x h rt_Mathematik x Quantoren Yx oder V f r alle x Jx oder J es existiert ein x Einleitung Computer bernehmen immer mehr Aufgaben am Arbeitsplatz und haben sich auch im privaten Umfeld etabliert Das Fachgebiet Computational Intelligence oder K nstliche Intelligenz ist ein Teilgebiet der Informatik das
78. erge bracht Zus tzlich zum Eingabefeld Anfangswert gibt es die Eingabefelder Minimal und Maximal Wert sowie die Schaltfl che Eingeben f r den Punkt M gliche Werte Die Eingabefelder und die Schaltfl che sind nur dann aktiv wenn die Eingaben f r den gew hlten Datentyp sinnvoll sind Die Funktion des Expertensystems wird ohne Eingabe dieser Werte nicht beeintr chtigt Auch der funktionale Konsistenztest greift nicht direkt auf die hier angegebenen Werte zur ck Trotzdem ist die Eingabe sehr empfehlenswert denn bei der Erzeugung von Regeln baut darauf eine effektive Hilfestellung durch den Regeleditor siehe Kapitel 3 3 auf die zur Einhaltung der Forderung F Fra 3 dient S 36 Die Schaltfl che Eingeben f hrt auf einen Dialog mit einem Listenfeld f r die Werte die der Benutzer f r das Attribut zulassen m chte und drei Schaltfl chen f r deren Bear beitung Abbildung 3 8 M gliche Werte vom Typ SYMBOL Einf gen Bearbeiten L schen OK Cancel Abbildung 3 8 Eingabe m glicher Werte Jedes neu erzeugte Listenelement enth lt als Vorbelegung einen Wert des erwarteten Da tentyps als Beispiel Die Eintr ge werden bei Abschlu des Dialoges OK Schaltfl che berpr ft Ist der Datentyp nicht korrekt erscheint eine Fehlermeldung und der Dialog wird nicht geschlossen Beendet der Benutzer den Hauptdialog Abbildung 3 7 findet die gleiche berpr fung f r die dort
79. ern dem Anwender die L sung des Problems oder die Antwort auf die gestellte Frage bei automatisierungstechnischen An wendungen ist dagegen der Ablauf also der Weg vom Start zum Zielzustand wichtig Selbst wenn den Anwender nur die L sung des Problems interessiert ist im Falle einer Fehlfunktion falsche Antwort des wissensbasierten Systems der Grund f r den Fehler im Ablauf der Wissensverarbeitung zu suchen Ein funktionaler Test ist also von der Art des berpr ften Systems unabh ngig und dient der e berwachung des tats chlichen Ablaufes der Schlu folgerungen Inferenzen F funk 1 Eine solche berwachung und Darstellung der Inferenzen kann beispielsweise mit einem sogenannten Inferenzbrowser erfolgen Einige kommerzielle Systeme bieten eine solche Komponente an die den zeitlich logischen Ablauf der Inferenzen grafisch in einem In ferenzbaum darstellt Da mit Hilfe dieser Grafik die Entscheidungen des Systems erkl rt 54 KAPITEL 2 DER KONSISTENZBEGRIFF werden k nnen wird eine solche Komponente teilweise auch als Erkl rungskomponente bezeichnet Erkl rung bedeutet hier da die aktiven Elemente Regeln Prozeduren mit den zum Zeitpunkt ihrer Aktivierung g ltigen Attributwerten dargestellt werden Es ist wohl leicht verst ndlich da ein solcher Inferenzbaum bei komplexen Systemen un berschaubare Ausma e annimmt Ein weiteres Problem tritt bei hybriden Systemen durch die Verwendung von Prozeduren
80. erweitert oder ver ndert wird siehe Abb 1 4 3 Die Inferenzmaschine steuert das Pr fen und Ausf hren der Regeln sowie die Ausf hrung der Methoden Reichen die den Objekten direkt zugeordneten Methoden zur Verarbeitung nicht aus stehen auch Entwicklungswerkzeuge zur Verf gung die zus tzlich konventionelle Proze duren erlauben Diese Werkzeuge sind ein Kompromi zwischen der bekannten Pro grammierweise und dem wissensbasierten Ansatz Mathematische Modelle die in vielen technischen Anwendungen die Grundlage f r Entscheidungen bilden sind mit dem Hilfs mittel Prozedur auch in wissensbasierten Anwendungen integrierbar 20 KAPITEL 1 REPR SENTATION VON WISSEN Leider lassen sich auch hier nicht nur die Vorteile beider Welten verbinden Einerseits erlaubt die Verwendung von Prozeduren eine bersichtlichere Gestaltung von Regeln und einen exakt planbaren Ablauf Andererseits sind Prozeduren selbst oft un bersichtlich komplex und somit schwer nachzuvollziehen Die Kombination von Wissensrepr sentationsformen erfordert hinsichtlich der Wider spruchsfreiheit eines Systems mehr als nur die Addition eventuell vorhandener einzel ner Definitionen und Testverfahren zum Begriff der Konsistenz Die Analyse und L sung dieses Problems ist Gegenstand der vorliegenden Arbeit 1 6 ZUSAMMENFASSUNG 21 1 6 Zusammenfassung Die formale Darstellung von Wissen kann mit verschiedenen Ans tzen erfolgen Mit der klassischen Logik den R
81. esonderheit nicht zu fliegen Wie eine Unterklasse f r solche Sonder V gel 1 3 STRUKTURIERTE OBJEKTE 17 aussieht h ngt von der Verwendungsart des Wissens ab und kann sehr unterschiedlich sein Mit dem bisher beschriebenen Aufbau von Frames und dem Vererbungsmechanismus allein ist noch keine Verarbeitung der abgelegten Fakten und Zusammenh nge m glich Eine Eigenschaft der Frames ist die M glichkeit Formeln oder Prozeduren in Attribute einzutragen die bei einem Zugriff auf das Attribut automatisch ausgef hrt bzw ge startet werden In diesem Zusammenhang wird eine Formel oder eine andere einfache Anweisung als Constraint und eine Prozedur auch als D mon bezeichnet Dieser gute Geist leistet unsichtbar im richtigen Moment wichtige Dienste Wird beispiels weise der Wert eines Attributes abgefragt der zur Zeit nicht zur Verf gung steht wird er durch den D mon ermittelt An Stelle eines festen Wertes wird dazu die Funktion angegeben mit der dieser Wert berechnet werden kann Ebenso kann auch bei nderung des Attributwertes ein D mon daf r sorgen da andere Attribute aktualisiert werden Komplexere Inferenzmechanismen die in Frames abgelegte Fakten und Beziehungen ver arbeiten sind vom Entwickler selbst anzulegen Frames sind also eine reine Repr senta tionsm glichkeit f r Fakten und Beziehungen Objektorientierte Ans tze basieren auf strukturierten Objekten die als Erweiterung der Frames verst
82. et sowie die Auswirkung auf die anderen verwendeten Repr sentations formen gekl rt Abschlie end wird ein komplexes mit dem Entwicklungssystem selbst realisiertes Testverfahren vorgestellt Daraus ergibt sich folgende Struktur der Arbeit Kapitel 1 stellt die gebr uchlichsten Formen der Wissensrepr sentation von formaler Logik ber strukturierte Objekte und mathematische Modelle als Grundlage f r das Verst ndnis der hybriden Systeme vor Hybride wissensbasierte Systeme bieten eine Kombination von Repr sentationsformen mit einer gemeinsamen Verwaltungskompo nente an und sind der Gegenstand der Untersuchungen dieser Arbeit In Kapitel 2 werden die verschiedenen Definitionen des Begriffs der Konsistenz f r Datenbanken allgemein wissensbasierte Systeme sowie speziell f r hybride Systeme un tersucht Aus der Analyse der Konsistenzprobleme werden Ans tze zum Test auf und zur Wahrung von Konsistenz entwickelt In Kapitel 3 wird die Realisierung der entwickelten Ans tze mit einem kommerziellen Werkzeug der Expertensystemshell G2 der Firma Gensym beschrieben Eine Wertung der Ans tze Vorteile und Probleme theoretischer und praktischer Art sowie ein Ausblick auf weitere Entwicklungen schlie en in Kapitel 4 die Arbeit ab Kapitel 1 Repr sentation von Wissen Die Darstellung menschlichen Wissens in einer der automatischen Bearbeitung zug nglichen Form ist eines der zentralen Anliegen der Software Entwicklung Die Abbildung mens
83. et und weiterverarbeitet wird Alle drei Punkte m ssen in einem konsistenten System verhindert werden oder als Forderungen formuliert e ein physikalisches Objekt darf nur einmal implementiert werden F Fra 1 e eine Eigenschaft mu durch genau ein Attribut mit genau einem F Fra 2 Namen abgebildet werden e einem Attribut darf nur ein Wert zugewiesen werden der in der F Fra 3 erlaubten Wertemenge liegt Bei der Repr sentation von Objekten mit ihren Attributen Eigenschaften gibt es kaum Einschr nkungen bzw Vorgaben die bei der Erf llung dieser Forderungen helfen Ein rotes Auto kann z B folgenderma en als Frame implementiert werden a FRAME Auto b FRAME Auto ATTRIBUT rot ATTRIBUT Farbe WERT ja nein WERT rot gr n Die erste Formulierung gestattet nur boolesche Attributwerte w hrend die zweite eine freie Formulierung sowie eine beliebige Anzahl von Werten zul t Niemand kommt auf die Idee einen Autobesitzer zu fragen Ist das Auto rot Ist das Auto gr n Die normale Fragestellung ist sicher Welche Farbe hat das Auto Die angenehmere Form der Abbildung eines Objekts wird f r einen normalen Benutzer daher die nat rlichere Form b sein F r einen Konsistenztest kommt im Hinblick auf die Verwendung bekannter Verfahren aus logik oder regelbasierten Systemen zun chst nur die Formulierung a in Frage Im folgenden werden daher beide Formulierungen weiter untersucht Je
84. ete Dialog erlaubt das Erzeugen und Bearbeiten einer Klassendefi nition Abbildung 3 7 Erzeugen und Bearbeiten einer Klassendefinition Sie haben nun die M glichkeit neue Attribute einzuf gen bestehende Attribute zu l schen oder zu bearbeiten Einf gen Bearbeiten L schen Attribut Name Attribut Typ MODELL Wert Anfangswert neu ENDGESCHWINDIGKEIT Zahl AKTUELLE GESCHWINDIGKEIT Gleitkomma MIMNEL VEN G hl KM STAND wien Maximal Wert Text ZUSTAND DES AUTOS ABS Symbol M gliche Werte Eingeben Wahrheitswert OK Abbrechen Abbildung 3 7 Dialog zur Erzeugung und Bearbeitung von Klassendefinitionen Mit dem Start des Dialoges Erzeugen und Bearbeiten einer Klassendefinition wird gleichzeitig im Hintergrund berpr ft ob die zu bearbeitende Klasse bereits einen Na men hat und anderenfalls der Name Neue Klasse lt Nr gt zugewiesen Eine neue Klasse enth lt zun chst keine Attribute die f r den Benutzer direkt zug nglich sind Das Listenfeld Attribut Name ist daher leer Der Benutzer mu mit der Schalt fl che Einf gen zun chst einen Platzhalter erzeugen und einen beliebigen Attributna men eingeben Der Datentyp des Attributes wird durch Auswahl eines Optionsschalters im Block Attribut Typ festgelegt Hier wurde zun chst eine Auswahl einfacher Daten typen vorgesehen 3 2 KLASSEN UND FRAMEEDITOR 73 Auf der rechten Seite des Dialoges sind Erweiterungen f r den Konsistenztest unt
85. fe hingegen greifen auf Ausgangsobjekte zu die ohne Beteiligung des Benutzers erstellt und verwaltet werden und die den Aufbau besitzen der zur Erf llung der Forderung F funk 3 notwendig ist Abbildung 2 3 blicherweise initiiert der Benutzer durch bestimmte Aktionen die Schlu folgerungs kette der entwickelten Applikation H ufig wird als Startsignal die Bet tigung einer Schaltfl che vorgesehen mit der entweder direkt durch Anweisungen oder indirekt durch einen Prozedur oder Regelaufruf Attributwerte ver ndert werden Sind alle Start aktionen durch den Benutzer vorgenommen worden werden die Ausgangsobjekte auf Problemkennzeichen wie Doppelbelegung von Attributen oder Oszillationen berpr ft Forderung F funk 2 S 54 90 KAPITEL 3 REALISIERUNG Herzlich Willkommen zum FUNKTIONALEN KONSISTENZTEST Wenn Sie Ihre Wissensbasis starten wird ein Wissensverarbeitungsproze angesto en Durch das Zusammenwirken der einzelnen Wissenselemente werden die Wissensverarbeitungsschritte eingeleitet Wegen dieses dynamischen Miteinanders k nnen w hrend der Laufzeit des Systems Inkonsistenzen entstehen Diese werden durch interaktive Zusammenarbeit zwischen Ihnen und diesem Testmodul beseitigt Bitte w hlen Sie im Feld Sprachauswahl die gew nschte Sprache in der die Benutzer Mitteilungen ausgegeben werden sollen W hlen Sie au erdem ob Sie jeden Inferenzschritt einzeln best tigen oder erst bei Auftreten einer I
86. ftware geholfen und die eine oder andere Katastrophe miterlebt haben Inhaltsverzeichnis Einleitung 1 Repr sentation von Wissen 2 1 1 Logikbasierte Repr sentation 22 2 2220 LiT Anssagenlogikr s ean aa nen este 1 1 2 Pr dilatenlogik 32 2 2 ra EEE I a 1 2 Regelbasierte Repr sentation 2 222200 ne 1 3 Strukturierte Objekte 222 nn nern 1 3 1 Semantische Netze 0220200 1 3 2 Frames und objektorientierte Ans tze 1 4 Mathematische Modelle 222222022 1 5 Hybride Systeme cas 432 nee an 1 6 Zusammenfassung 2220er Der Konsistenzbegriff 2 1 Datenbanken sa s sss 2 wa RR Er ee 2 1 1 Konsistenzbedingungen 2 2 220000 2 1 2 berpr fung der Konsistenzbedingungen 2 1 3 Deduktive Datenbanken 2 22 22 0000 2 2 Wissensbasierte Systeme 2222222 nern 2 2 1 Konsistenz in klassischen Deduktionssystemen 10 14 14 15 18 19 21 ii INHALTSVERZEICHNIS 2 2 2 Konsistenz in regelbasierten Systemen 2 3 Konsistenz in hybriden Systemen 2 2 2222 2 3 1 Regeln aa er RER RITTER DER EI 23 22 Brames u By Bra DET 2 3 3 Symtaktischer Test ur za sa 2 3 3 1 Die Connection Graph Proof Procedure 2 3 4 Prozeduren 2 5 3a 3ER RER RE 2 3 5 Funktionaler Test 22222000000 2 3 6 Bewertung und Auswahl der Testkomponenten 2 4 Zusammenfassung u 2 3 24 2 22 e ae Ra Realisierung 3 1 Die Entwic
87. g aber nie zu einer Verall gemeinerung f hren kann 8 KAPITEL 1 REPR SENTATION VON WISSEN Resolution Logikbasierte Systeme werden verwendet wenn es darum geht automatisch Theoreme zu beweisen Es soll dabei nachgewiesen werden da eine Behauptung aus gegebe nen Pr missen geschlu folgert werden kann Das Resolutionsprinzip hat sich dabei als geeignete Methode erwiesen Zun chst werden die aussagen oder pr dikatenlogischen Formeln so umgeformt da sie einer konjunktiven Normalform der booleschen Algebra entsprechen Die konjunktiv verkn pften Teile die disjunktiv verkn pfte Aussagen Pr dikate oder einzelne Aussagen Pr dikate enthalten werden Klauseln genannt Logische Gesetze zur Umformung sind beispielsweise die Gesetze von De Morgan die Assoziativgesetze die Distributivgesetze sowie die Ersetzung der Implikation ber A gt B gt AVB Die Formel Fal Die Sonne scheint und esist nicht Werktag gt Gelegenheit f r eine Wanderung wird dann zu Die Sonne scheint und es ist nicht Werktag oder Gelegenheit zu einer Wanderung Die Sonne scheint oder Es ist Werktag oder Gelegenheit zu einer Wanderung Die Sonne scheint V Es ist Werktag V Gelegenheit zu einer Wanderung N nn Klausel Die Quantoren der Pr dikatenlogik werden in der Klauselform nicht mehr dargestellt Pr dikatenlogische Formeln werden vorher so umgeformt da f r alle Variablen Allquan toren zutreffen die dann nicht mehr explizit gesch
88. gik werden allgemeine Sachverhalte d h Fakten und Folgerungen in einer symbolischen Form notiert Unter einer Aussage versteht man dabei einen Satz der eine Behauptung ber ein Objekt oder Beziehungen zwischen Objekten ausdr ckt und von dem entschieden werden kann ob er wahr oder falsch ist zweiwertige Logik Elementare Aussagen Atome Primformeln wie zum Beispiel A1 Die Sonne scheint A2 Es ist nicht Werktag A3 Gelegenheit f r eine Wanderung A4 Es steht Zeit zur Verf gung k nnen mit den Junktoren konjunktive Verkn pfung und disjunktive Verkn pfung oder Negation nicht Implikation impliziert quivalenz ist quivalent zu NR 6 KAPITEL 1 REPR SENTATION VON WISSEN zu Formeln verkn pft werden Fal Die Sonne scheint und esist nicht Werktag gt Gelegenheit f r eine Wanderung Solche aussagenlogischen Formeln verkn pfen die Wahrheitswerte von Ausdr cken und entsprechen den Folgerungen in einem bestimmten Wissensgebiet einer Dom ne Fak ten werden als elementare Aussagen mit bekanntem Wahrheitswert implementiert und bilden zusammen mit dem Dom nen Wissen die Wissensbasis die mit Ableitungsregeln erweitert werden kann Inferenz oder Ableitungsregeln gestatten es aus der Wahrheit gegebener Ausdr cke auf die G ltigkeit anderer Ausdr cke zu schlie en Wichtige Inferenzregeln sind Modus Ponens Modus Tollens und Kettenregel Modus Ponens Wenn Al A3 gilt und Al wahr ist dann
89. gsframes erh ht au erdem den Speicher platzbedarf wiederum in Abh ngigkeit der Frame und Attributanzahl Mit dem funktionalenTest kann die Erf llung der f r die Konsistenz erhobenen Forderun gen F Fra 3 Seite 36 F Proz 2 Seite 52 sowie F funk 1 bis 3 Seite 53 54 56 garantiert werden 2 4 ZUSAMMENFASSUNG 61 2 4 Zusammenfassung In Datenbanken fallen zwei Sachverhalte unter den Begriff Konsistenz e Wertkonsistenz F r ein und das selbe Attribut mu auch bei mehrfachem Auftreten im Datenbe stand bei einer Abfrage ein einheitlicher Wert auftreten Bei Wert nderungen darf der Datenbestand erst dann f r weitere Manipulationen freigegeben werden wenn alle betroffenen Datens tze ge ndert wurden e logische semantische Konsistenz Semantische Zusammenh nge werden durch Datenmanipulationen nicht verletzt Konsistenzbedingungen die die Semantik der Daten repr sentieren werden w hrend oder direkt nach einer Manipulation berpr ft und entsprechende Reak tionen ausgel st In hybriden wissensbasierten Systemen kann Konsistenz als Komplex aus mehreren Be reichen interpretiert werden e Regelkonsistenz Die Formulierung der Regeln mu bestimmten Bedingungen unterliegen Syntak tisch kann dann die Konsistenz mit Hilfe der Connection Graph Proof Procedure gepr ft werden e Frame oder Objektkonsistenz Aus den Bedingungen f r die Regelformulierung ergeben sich Vorgaben f r die Framestruktur Aus Gr
90. he Arbeitsblatt wie bei der Prozedurerzeugung ffnet Als weitere Schaltfl chen stehen noch Abbrechen und Verwerfen zur Verf gung um die Bear beitung ohne nderungen zu beenden bzw eine ganz neue Prozedur Grafik aufzubauen Interne Abl ufe Bei Prozeduren ist die Pr fung der Struktur im Gegensatz zu Regeln eher rudiment r da hier die Theorien zur Korrektheitspr fung von Programmen 28 eingebracht wer den m ssen was nicht Gegenstand dieser Arbeit ist Die Umsetzung der einzelnen Bl cke erfolgt unter Beachtung der in Kapitel 3 5 auf Seite 94 begr ndeten Randbedingungen f r Kommentare und Schleifen Die Inferenzmaschine greift nicht auf die grafische Repr sentation der Prozedur zu son dern auf den in Maschinencode bersetzten Prozedurtext Die bei der bersetzung eventuell auftretenden Fehlermeldungen des Compilers werden dem Benutzer auf einem neuen Arbeitsblatt angezeigt 3 5 FUNKTIONALER TEST 89 3 5 Funktionaler Test Die Voraussetzungen f r einen Inferenzvorgang sind mit der Implementierung der Fak ten und ihrer Verkn pfungen geschaffen worden Der Benutzer kann nun testen ob alle Verkn pfungen Regeln und Prozeduren auch zum gew nschten Zeitpunkt genauer bei einem bestimmten Zustand der Wissensbasis das gew nschte Ergebnis liefern Um bei diesem Funktionstest auch gleich die Konsistenz des Systems zu pr fen mu der Be nutzer die Schaltfl che funktionaler Test auf dem Arbeitsblatt
91. hell oder kurz G2 durch verschiedene Mechanismen realisiert Die Inferenzmaschine ist integraler Bestandteil der Entwicklungsumgebung und kann durch den Entwickler in bestimmten Grenzen ber Parameter gesteuert wer den Alle implementierten Klassendefinitionen und Instanzen bilden die Wissensbasis des Systems und die grafische Benutzeroberfl che vereinigt alle Anforderungen an die Dialogkomponente in sich WISSENSAKQUISITION WISSENSNUTZUNG Experte _Wissensingenieur Benutzer E DIALOGSYSTEM JAn Rn 4 Akquisitionskomponente Erkl rungskomponente Inferenzmaschine l Wissensbasis Expertensystem _ 4 Abbildung 3 2 Komponenten eines Expertensystems nach 7 Um in der Benutzeroberfl che verschiedenen Benutzertypen auch verschiedene Werkzeuge zur Verf gung zu stellen k nnen Benutzergruppen wie z B Administrator G2 erfahrener Entwickler Developer Entwickler Knowledge Engineer Benutzer oder beliebige an dere deklariert werden Der Administrator als Benutzer mit den gr ten Befugnissen kann ber Konfigurationsparameter und Beschr nkungen in verschiedenen Ebenen ein unterschiedliches Verhalten der Oberfl che f r jede Gruppe vorgeben Diese M glichkeit 66 KAPITEL 3 REALISIERUNG wird z B genutzt um dem Wissensingenieur zum einen die Nutzung der Konsistenzkom ponente zu erm glichen und zum anderen um ihn am Umgehen der Komponente zu hindern Diese Eigenschaft ist be
92. hen in denen Beschreibungen von Zusammenh ngen aus Physik und Chemie in Form von Formeln zusammengefa t werden Die Modellbildung kann auf der Grundlage von bereits realisierten Teilkomponenten aber auch ohne eine konkrete Anlage unter Verwendung von theoretischen Ans tzen erfolgen Vorteil der Modelle ist die M glichkeit die Parameter der Anlagen sowohl sp ter w hrend des Betriebs berechnen als auch schon in der Planung vorherberechnen zu k nnen oder die gesamte Anlage mit neuen Parametern zu Untersuchungszwecken zu simulieren Wie genau die mathematischen Modelle die Realit t abbilden kann fr hestens nach der Realisierung der Anlage oder der modellierten Teilkomponenten anhand von Me werten der Prozessgr e berpr ft werden Ohne diese Pr fm glichkeit mu der Entwickler des Modells besonders darauf achten da die verwendeten Formeln in sich korrekt sind alle Randbedingungen f r ihre G ltigkeit erf llt sind und sich keine Widerspr che durch die Verkn pfung vieler Formeln zu einem komplexen Modell ergeben Ist ein Modell erstellt worden mu seine Korrektheit also die bereinstimmung der weiter zu verwendenden Ergebnisse mit der Realit t getestet werden Nach der Best ti gung der Korrektheit stellt ein Modell eine komplexe abgeschlossene und in sich konsi stente Repr sentation des Wissens ber die modellierte Anlage dar Unter dem Aspekt der Wissensverarbeitung kann ein bereits bestehendes mathematisches Modell
93. hen Verfahren werden auch die Rumpfteile einer bedingten Anweisung aufgebaut Der If then else Block enth lt die zu erf llende Bedingung Die Aktionen f r den Fall der Erf llung then oder Nichterf llung else werden mit funktionalen Bl cken gebildet wobei f r den else Teil auch eine direkte Verbindung von Aus und Eingang zul ssig ist Der else Teil ist somit leer Als letzte Funktion mu ein Ende Block gesetzt werden um die Prozedur abzuschlie en Eine weitere Hilfestellung f r den Benutzer ist das Arbeitsblatt bersicht das neben der Prozedur Palette und der Prozedur Werkstatt ge ffnet wird Hier werden in Listenfeldern alle Klassen Objekt und Attributnamen sowie der Datentyp Minimal Maximal und m gliche Werte angezeigt W hrend der Prozedurentwicklung kann so in den Bestandslisten gebl ttert werden um Schreibfehler und Irrt mer zu vermeiden Werden w hrend der Entwicklung der Prozedur zus tzliche Parameter ben tigt kann ber die Schaltfl che Parameter neben dem Start Punkt der gleiche Eingabedialog aufgerufen werden wie bei dem ersten Prozedur Dialog Nach Abschlu der Prozedurentwicklung wird durch die Prozedur erzeugen Schaltfl che die grafische Repr sentation in die G2 interne Form umgesetzt und der Dialog geschlos sen Eine sp tere Bearbeitung der Prozedur ist durch den Men punkt bearbeiten m glich der das gleic
94. ichkeiten m ssen gewisse Bedingungen erf llt sein Eine Konsistenzbe dingung mu aus den Komponenten Pr fzeitpunkt Bedingung und Reaktion bei Verletzung bestehen Als Pr fzeitpunkt kommen dabei die Werte vor einer Mutations folge oder sofort nach einer Mutationsfolge in Frage Die eigentliche Bedingung wird im allgemeinen als pr dikatenlogischer Ausdruck formuliert Die Reaktion bei Verlet zung der Bedingung kann ein einfacher Abbruch der Mutationsfolge und das R ckg ngig machen bereits erfolgter nderungen in der Datenbank sein oder auch der Aufruf eines Unterprogrammes das f r die Behebung der Inkonsistenz sorgt Eine weitere Voraus setzung ist die Verwaltung der beteiligten Originaldatens tze der aktuellen Mutations folge und der tempor ren Datens tze durch das Datenbankverwaltungssystem Werden die Konsistenzbedingungen in den Anwendungsprogrammen angesiedelt ist kein umfassender berblick ber alle geltenden Bedingungen m glich Sinnvoll ist da her die Verwaltung durch das Datenbankverwaltungssystem vorzunehmen Auf diese Weise k nnen Anwendungsprogramme unabh ngig von Konsistenzbedingungen entwor fen und die Konsistenzbedingungen ohne Auswirkung auf die Programme ge ndert wer den Ein weiterer Vorteil dieser Zuordnung ist die M glichkeit die sogenannte Meta Konsistenz zu berwachen Dabei handelt es sich um die Konsistenz der einzelnen Konsistenzbedingungen untereinande
95. ie neuen Informationen zu erweitern Statt Gewicht is a float initially is 1200 0 kann Gewicht is a float initially is 1200 0 min is 600 0 max is 2000 0 oder Gewicht is a float initially is 1200 0 600 0 800 0 1000 0 1100 0 1500 0 2000 0 eingetragen werden Daf r sind nderungen an der internen Datenstruktur notwendig die nur vom Hersteller der Entwicklungsumgebung vorgenommen werden k nnen Eine andere M glichkeit besteht f r den Entwickler der Konsistenzkomponente Der Dialog zur Erzeugung und Bearbeitung von Klassendefinitionen kann so ver ndert wer den da nicht eine originale G2 Klassendefinition erzeugt wird sondern hier bereits eine zugeschnittene Klassendefinition Verwendung findet Statt eines vordefinierten Daten typs wird darin einem Attribut der Typ Konsistenz Attribut zugewiesen Dieser Typ ist eine Klassendefinition die den eigentlichen Datentyp Minimum Maximum und eine Liste der m glichen Werte als Attribute erh lt Nachteil dieses Vorgehens ist da die Syntax der Regeln wesentlich komplexer wird siehe auch Kapitel 3 3 Seite 83 Nachdem der Benutzer in die Lage versetzt wurde Objekte zu erzeugen und zu manipu lieren also Fakten in der Wissensbasis zu implementieren soll auch Verarbeitungswissen in Form von Regeln abgelegt werden 3 3 REGELEDITOR TT 3 3 Regeleditor Die Repr sentation von Regeln in wissensbasierten Systemen erfolgt haupts chlich durch alphanumerische
96. ildet Eine weitere Liste enth lt alle vom Benutzer erzeugten Objekte Sie wird Objekt f r Objekt abgearbeitet um f r jedes einzelne Attribut ein eigenes Ausgangs Attribut zu erzeugen Mit dem Namen der Klasse zu der ein Objekt geh rt werden alle Eintr ge der Liste Klassennamen verglichen Bei bereinstimmung wird der Index des Eintrags benutzt 3 5 FUNKTIONALER TEST 93 um direkt auf die Elemente der anderen Listen zuzugreifen die f r den Aufbau der Ausgangs Attribute Oberklasse __Zeile dieses Objekts ben tigt werden Die Liste der Datentypen wird verwendet um die Klasse der __Zeilen mit dem passenden Typ Zeile Integer _Zeile Float usw zu bestimmen Hat der Benutzer beispielsweise zwei Autos Auto 1 Auto 2 erzeugt sind die in Abbil dung 3 18 dargestellten Ausgangs Attribute erforderlich Zeilen __Zeile Objekt Objekt Attribut Wert eintragendes name klasse name klasse name Objekt __Zeile 1 __Zeile value Auto 1 Auto Zubeh r Value Liste Symbol Liste __Zeile 2 __Zeile oat Auto 1 Auto Gewicht Float Liste Symbol Liste _Zeile 3 Zeile symbol Auto 1 Auto Farbe Symbol Liste Symbol Liste __Zeile 4 _Zeile integer Auto 1 Auto Leistung Integer Liste Symbol Liste __Zeile 5 __Zeile value Auto 2 Auto Zubeh r Value Liste Symbol Liste __Zeile 6 __Zeile oat Auto 2 Auto Gewicht Float Liste Symbol Liste Zeile 7 __Zeile symbol Auto 2 Auto Farbe Symbol Liste Symbol Liste
97. inem ungleich gr eren Problem Zum einen ist ihm die Gedankenwelt des Erstentwicklers nicht vertraut und zum anderen wird der Umfang der Wissensbasis stetig gr er und somit un bersichtlicher Hier ist Hilfe in Form von algorithmischen Testverfahren f r die Konsistenz der Wissens basis unabdingbar Damit stellen sich folgende Fragen e Gibt es allgemein akzeptierte Testverfahren um Konsistenz eindeutig und algorith misch nachzuweisen 2 EINLEITUNG e Kann ein solches Verfahren f r alle theoretischen Ans tze zur Wissensrepr senta tion und alle auf dem Markt befindlichen Programmierwerkzeuge gelten Auf diese Fragen geht die vorliegende Arbeit ein und bietet insbesondere f r wissens basierte Systeme die mehrere Repr sentationsformen f r Wissen in sich vereinigen hy bride Systeme Ans tze zu deren L sung an Die Interpretation des Konsistenzbegriffes ist stark kontextabh ngig die Feststellung von Widerspr chen mu daher bei hybriden Systemen alle verwendeten Wissensrepr senta tionsformen einbeziehen Im Gegensatz z B zu rein pr dikatenlogischen Systemen mu dabei auch das Zusammenwirken der Repr sentationsformen untersucht werden F r ein vorgegebenes kommerzielles Werkzeug zur Entwicklung wissensbasierter Systeme wird in der vorliegenden Arbeit jede darin angebotene Wissensrepr sentationsform untersucht eine Interpretation des Konsistenzbegriffes gegeben Randbedingungen f r einen Konsi stenztest erarbeit
98. ion dieser Elemente voraus Die Konsistenz der Regeln und der Konsistenzbedingungen unter einander wird auch in der Arbeit von Moerkotte nicht untersucht Als weiterer Entwicklungsschritt kann die M glichkeit angesehen werden Regeln und Konsistenzbedingungen mit weniger komplexer Struktur zu verwenden wenn z B ein objektorientiertes Datenmodell verwendet wird Moerkotte Seite 3 28 KAPITEL 2 DER KONSISTENZBEGRIFF 2 2 Wissensbasierte Systeme Datenbanken dienen im allgemeinen der Speicherung gro er Datenmengen und dem schnellen Auffinden zusammengeh riger Fakten bei Anfragen von Benutzern Wissens basierte Systeme dienen der Speicherung von Wissen wie Probleme gel st werden und k nnen auch unsicheres Wissen nutzen also z B Aussagen machen wie k nnte mit 4 einer Sicherheit von 0 6 zusammengeh ren Ein wissensbasiertes System unterscheidet sich in den folgenden Punkten von Daten banksystemen e Fakten werden unabh ngig von einander gespeichert es existiert also keine vorgegebene Verkn pfung wie bei den Datenbankmodellen hierarchisch vernetzt oder relational e Aktionsregeln beschreiben die Verkn pfung von Fakten und l sen Aktionen aus die neue Daten generieren k nnen Sie repr sentieren das Wissen das ben tigt wird um einen L sungsraum aufzuspannen in dem ein komplexes Problem zu l sen ist e Eine Kontrolleinheit Inferenzmaschine steuert die Anwendung der Aktionsregeln Ein
99. ion kann alle M glichkeiten des verwendeten Werkzeuges umfassen Im allgemeinen werden Werte f r Attribute erzeugt und gesetzt um so weitere Schlu folgerungen zu initiieren Will man dem wissensbasierten Ansatz gerecht werden sind in hybriden Sy stemen haupts chlich die Regeln die Ausl ser f r Aktionen W hrend der Laufzeit des Systems werden Regeln berpr ft und ausgef hrt die den Zustand des Systems der unter anderem durch die Attributwerte repr sentiert wird ver ndern Unter Laufzeit ist hier die Zeit der Benutzung des wissensbasierten Sy stems zur L sung seiner eigentlichen Aufgabe gemeint W hrend der Systementwicklung uft die Entwicklungsumgebung das Programm auch im allgemeinen werden die entwickelten Regeln und Prozeduren aber nicht bzw nicht als Gesamtsystem ausgef hrt Bei komplexen Systemen ist f r den Entwickler nicht immer zu berblicken ob sich auch im Zusammenspiel aller Komponenten ausschlie lich zul ssige Zust nde Belegungen von Attributen Existenz von Frames ergeben und die Reaktion des Gesamtsystems in allen F llen korrekt ist An dieser Stelle setzt der funktionale Test an Zun chst mu gekl rt werden was f r einen funktionalen Test berhaupt wichtig ist Macht es einen Unterschied ob es sich bei dem entwickelten wissensbasierten System um ein Diagnose oder Beratungssystem oder ein System zur Steuerung einer verfah renstechnischen Anlage handelt Diagnosesysteme lief
100. ise erstellten Objekte und Klassen gesucht und ihre Eigen schaften extrahiert werden Bei gro en Wissensbasen wird dann jedoch viel Zeit ben tigt was den Vorteil zunichte macht auch ohne die Konsistenzkomponente erstellte Objekte und Klassen zu erfassen 3 4 PROZEDUREN 85 3 4 Prozeduren Als Entwicklungswerkzeug f r hybride wissensbasierte Systeme bietet G2 die System klasse Prozedur an Innerhalb der Prozedur Objekte ist eine Verkn pfung von Wis sen in einer genau vorgegebenen Reihenfolge realisierbar Die innere Struktur lehnt sich an imperative Programmiersprachen wie Fortran oder Pascal an wobei das Hauptaugen merk auf den Umgang mit Objekten gerichtet ist Im einfachsten Fall dient eine Prozedur als Zusammenfassung von Anweisungen zum spezifischen Setzen von Attributwerten da solche Aktionen unn tig gro e und un bersichtliche Regeln erfordern w rden Die Berechnung eines Attributwertes auf der Basis anderer Attributwerte kann innerhalb einer Prozedur deutlich komplexere Ver fahren beinhalten als in einer Regel und ebenso wie dort sind generische Anweisungen des Inhaltes f r alle Objekte der Klasse m glich Prozeduren k nnen au erdem mit Parametern aufgerufen werden und Werte an die aufrufende Stelle im allgemeinen eine andere Prozedur zur ckgeben Im G2 Basissystem kann der Benutzer mit dem kontextsensitiven Editor einen Prozedur text erzeugen der w hrend der Eingabe auf syntaktische Fehler
101. ist Zu jeder Atommenge BF wird die Menge aller Regeln maximal com patible rules CR gebildet die auf BF angewendet werden feuern k nnen Die Atome der Bedingungsteile aus CR sind dementsprechend in BF enthalten Durch die Vereinigung der Menge BF mit der Menge der Atome der Konklusionen aus CR entsteht ein Modell M eine Instanz der Wissensbasis Konsistenz ist dann gegeben wenn alle Modelle M konsistent sind was durch M BF gezeigt wird Wird eine neue Regel einer konsistenten getesteten Wissensbasis zugef gt mu der Konsistenztest erneut durchgef hrt werden Die bisher gebildeten Modelle werden um die Atome der neuen Regel erweitert und dann als Vokabular interpretiert das dem Konsistenztest nach Abbildung 2 1 unterworfen wird Die um die neue Regel erweiterte Wissensbasis ist dann konsistent wenn alle neuen Modelle M konsistent sind Einsatzgebiete solcher Deduktionssysteme sind Beratungs Informations und Diag nosesysteme Hier wird mit bekanntem Basiswissen gearbeitet und anhand der gegebe nen Situation implizites Wissen f r den Benutzer explizit dargestellt ausgegeben Man k nnte diese Systeme als automatische Handb cher interpretieren da sie auf bestimmte Wissensgebiete und Situationen zugeschnitten sind Innerhalb der Automatisierungstechnik sind zus tzlich solche Systeme interessant die allgemeine Das ist bei allen so oder Bei irgend einer Aussagen verar
102. keln die Konsistenz sicherstellen In diesen Arbeiten werden Wissens oder Datenbasen untersucht die aus aussagenlogi schen Regeln oder Hornregeln bzw Horn Klauseln bestehen Die Regeln werden dabei ausschlie lich als Schlu folgerungsregeln siehe Lunze 19 S 78 verwendet Moerkotte formuliert dazu Die Regeln dienen der Reduktion des Datenbestandes da nur die expliziten Daten in die Datenbasis aufgenommen werden m ssen Zitat aus Moerkotte 20 Seite 2 2 3 KONSISTENZ IN HYBRIDEN SYSTEMEN 35 Die Abbildung technischer Systeme mit Regeln erfordert aber die Verwendung von Ak tionsregeln wie z B die Regel aus Kapitel 1 2 Seite 11 VoY angeschlossen p t A ein p TO A l uft ber t T0 aus p T1 Zum einen wird hier die pr dikatenlogische Formulierung mit Quantoren verwendet und zum anderen ist ein Zeitbezug in den Pr dikaten enthalten 70 71 Die oben zitierten Ans tze m ten daf r erweitert werden F r diese Gegebenheiten ist ein Konsistenztest mit der CGPP siehe Kapitel 2 2 2 ohne gro e Erweiterungen anwendbar An die Pr dikate bzw die f r die CGPP ben tigten Klauseln werden aber zus tzliche Anforderungen gestellt die bei hybriden Systemen mit der Abbildung von Objekten zusammenh ngen die im weiteren n her betrachtet werden 2 3 2 Frames In den Bedingungsteilen der Regeln werden Eigenschaften des momentanen Zustandes der Datenbasis abgefragt Dieser Zustand wird durch
103. klungsumgebung 2 20200 3 2 Klassen und Frameeditor 222220 3 3 Regeleditor seiso Sera Sara 3 4 Prozeduren sosina moa ar aan Dee 3 5 Fuinktionaler Test s seinan ie aee a de herein Schlu bemerkungen 4 1 Zusammenfassung 22 n nennen 4 2 bertragbarkeit der Ergebnisse 2 2 222 222 20 4 3 Ausblick i 23 daa a aan r Ba e a a aa a aa a E Literaturverzeichnis A Anhang A 1 Struktur der realisierten Module a a aa aeo A 2 Das Modul User Root 2a 2a 23 erh area A 3 Das Modul Konsistenz 2222 20 nenne A 4 Das Modul syntaktischer Test 22 22 2020 00 A 5 Das Modul funktionaler Test 2 22 2222 000 63 65 69 TT 85 89 97 97 99 100 101 Abbildungsverzeichnis 1 1 1 2 1 3 1 4 2 1 22 2 3 3 1 3 2 3 3 3 4 3 5 3 6 3 7 3 8 3 9 3 10 3 11 3 12 3 13 Graph eines Suchbaumes o oo a a Beispiel eines semantischen Netzes 2 2 a a nn Graph einer Klassenhierarchie 22 2 22 a Blockvorstellung eines hybriden wissensbasierten Systems Konsistenzpr fung nach Beauvieux nach 1 2 2 2 2 2 Struktur der Ein und Ausgangsframes 2 22m rennen Struktur des erweiterten Ausgangsframes 2 2 2 none Blockbild einer G2 Applikation mit Konsistenzmodul Komponenten eines Expertensystems nach T 2 2 2 2 Modulhierarchie einer leeren Wissensbasis mit Konsistenztest Ein sinnl
104. kten die nicht aus der Datenbasis ableitbar sind gelten in negierter Form closed world assumption und die Regeln werden in Form von Horn Klauseln dargestellt siehe Moerkotte 20 Seite 21 Konsistenztests finden bei Moerkotte w hrend bzw unmittelbar nach einer Mutations folge statt Soll beispielsweise ein Faktum neu in die Datenbasis aufgenommen werden mu zun chst gepr ft werden ob die Negation des Faktums durch die Anwendung der Regeln aus den vorhandenen Fakten abgeleitet werden kann Des weiteren ist zu pr fen ob Regeln auf das neue Faktum angewandt werden k nnen die eine Negation eines Fak tums aus der Datenbasis ableiten lassen Als letzter Punkt ist noch die Einhaltung der formalisierten Konsistenzbedingungen f r das neue Faktum zu pr fen Hier wird deut lich da deduktive Datenbanken und wissensbasierte Systeme fast flie end ineinander bergehen da das beschriebene Vorgehen bereits dem Resolutionskalk l entspricht Wird bei dem Test der Datenbasis eine Inkonsistenz durch eine Mutationsfolge fest gestellt soll auch hier wie bereits fr her beschrieben die Mutationsfolge abge brochen und alle nderungen aus dieser Mutationsfolge r ckg ngig gemacht oder eine Reparatur Mutationsfolge durchgef hrt werden Eine Reparatur setzt sehr genaues Wissen ber m gliche Gr nde einer Inkonsistenz und die Ermittlung der Inkonsistenzur sachen Fakten Regeln Konsistenzbedingungen oder eine beliebige Kombinat
105. l warm hei angegeben sind die einzelnen Symbole zul ssig Setzt man weiterhin voraus da es verschiedene Regelgruppen Gruppe 1 Gruppe 2 gibt die f r ein solches Attribut einen Wert setzen kann folgendes Szenario entwickelt werden Gruppe 1 WENN AABAC DANN wird der Temperatur von Motor das Symbol warm zugewiesen Gruppe 2 WENN AAE DANN wird der Temperatur von Motor das Symbol hei zugewiesen Formal k nnen die beiden Regeln entweder durch eine sinnvolle Kombination der Pr mis sen in eine Regel zusammengefa t oder durch Erg nzung der Pr missen mit der negierten Pr misse der jeweils anderen Regel gegeneinander verriegelt werden Gruppe 1 WENN AABACA E DANN wird der Temperatur von Motor das Symbol warm zugewiesen Gruppe 2 WENN AAEA BA C DANN wird der Temperatur von Motor das Symbol hei zugewiesen Der Entwickler kann aber auch bewu t die beiden Regelgruppen unabh ngig von einander erstellt haben um beispielsweise einen kritischen Zustand durch eine Reihe von Sicher heitsregeln z B Gruppe 2 zu erkennen und entsprechend zu handeln In diesem Fall ist es notwendig dem System f r einen Konfliktfall Wissen ber dessen L sung zur Verf gung zu stellen Dabei sind zwei Vorgehensweisen denkbar 1 das Attribut Temperatur wird in der Pr misse mit abgefragt und nur dann neu gesetzt wenn der
106. lickes eine neue Klasse innerhalb der Hierarchie anordnen Eine hierarchische Strukturierung der Klassen erleichtert teilweise auch die Formulierung von Regeln da mit der Verwendung von Oberklassen allgemeing ltigere generische Regeln aufgestellt werden k nnen Statt eine Regel beispielsweise f r LKW eine f r PKW und eine f r KRAD aufzustellen kann eine generische Regel f r alle Kraftfahrzeuge for muliert werden Das verringert die Schreibarbeit und somit die Fehlerwahrscheinlichkeit und erh ht gleichzeitig die bersichtlichkeit Durch eine Analyse der im aktuellen Frame benutzten Attribute und die Auswertung der bereits vorhandenen Klassendefinitionen ist eine formale Einordnung in die Klassenhier archie automatisch durch die Entwicklungsumgebung m glich Somit ist auch die Forderung F Fra 1 Seite 36 erf llt Attribute Die Fehlerminimierung hinsichtlich der Attributnamen wird durch die Wahlm glichkeit aus bestehenden Namen unterst tzt Die m glichen Wertemengen der Attribute bed rfen aber noch der Betrachtung Forderung F Fra 3 Seite 36 Wie bereits fr her begr ndet wurde Kap 2 3 2 sind Attribute mit mehr als einem Wert und seiner Negation schwierig zu behandeln aber sehr w nschenswert und werden daher hier weiter betrachtet Bereits beim Anlegen der Attribute m ssen einige zus tzliche Aktionen systemintern ablaufen F r den Wissensingenieur ist nur von Interesse welche Werte ein Attribut annehmen kan
107. me BUGH Wuppertal Dissertation 1991 Koussev Traytcho Entwicklung einer Erkl rungskomponente f r ein Expertensystem Fortschritt Berichte VDI Reihe 9 Nr 101 VDI Verlag D sseldorf 1990 LITERATURVERZEICHNIS 103 17 18 19 20 21 22 23 24 25 Kowalski Robert Logic for Problem Solving North Holland New York 1979 Leikauf Peter Konsistenzsicherung durch Verwaltung von Inkonsistenzen ETH Z rich Dissertation Nr 9208 1990 Lunze Jan K nstliche Intelligenz f r Ingenieure Band 1 Methodische Grundlagen und Softwaretechnologie R Oldenbourg Verlag M nchen 1994 Moerkotte Guido Konsistenzpr fung in deduktiven Datenbanken Diagnose und Reparatur Informatik Fachberichte Nr 248 Springer Verlag Berlin 1990 Moritz Werner Entwicklung von Modulen einer Akquisitionskomponente zur benutzerfreundlichen Eingabe von Klassen Objekten und Regeln in ein wissensbasiertes System Diplomarbeit Universit t Wuppertal 1998 Myers Glenford J Methodisches Testen von Programmen R Oldenbourg Verlag M nchen 1987 Partridge Derek K nstliche Intelligenz KI und das Software Engineering der Zukunft McGraw Hill Hamburg New York 1988 Platz Heiko Entwurf und Realisierung einer Erkl rungskomponente f r die Expertensystem Shell G2 Unver ffentlichte Studienarbeit Lehrstuhl f r Automatisierungstechnik BUGH Wuppertal 1994 Pritschow G Spur G Weck M Hrsg
108. men zur Visualisierung oder Dokumentation der Prozesse eingesetzt Doch so wie auch das Ver trauen in Computer und herk mmliche Software erst nach und nach gewachsen ist mu te mit verschiedenen Applikationen erst die Brauchbarkeit und Zuverl ssigkeit von wissens basierten Systemen gezeigt werden Schlie lich f hren die Bestrebungen im Bereich des Qualit tsmanagements und der Zertifizierung dazu da sich auch Endkunden immer mehr Gedanken zu wissensbasierten Systemen machen m ssen Literaturverzeichnis 1 Angele J rgen Studer Rudi Konsistenzpr fung in wissensbasierten Systemen Institut f r angewandte Informatik und formale Beschreibungsverfahren Forschungsbericht Nr 239 Universit t Karlsruhe TH Januar 1992 Bibel Wolfgang H lldobler St Schaub T Wissensrepr sentation und Inferenz eine grundlegende Einf hrung Vieweg Braunschweig 1993 Curth Michael B lscher Andreas Raschke Bernhard Entwicklung von Expertensystemen Carl Hanser Verlag M nchen 1991 Ester Martin Konsistenzwerkzeuge f r PROLOG Wissensbasen ETH Z rich Dissertation Nr 8776 1989 auch Informatik Dissertationen ETH Z rich Nr 14 Verlag der Fachvereine Z rich 1989 G hler Felix berwachung von Konsistenzbedingungen ETH Z rich Dissertation Nr 9325 1990 Harmon Paul King David Expertensysteme in der Praxis Perspektiven Werkzeuge Erfahrungen Oldenbourg Verlag M nchen 1989 Heidepriem J rgen Arb
109. mentar wird im Prozedurkopf abgelegt 86 KAPITEL 3 REALISIERUNG Mit einer Schaltfl che Vorhandene Prozeduren kann der Benutzer ein Listenfeld anzeigen lassen das die Namen der bereits erzeugten Prozeduren enth lt Damit ist es einfacher gut unterscheidbare sprechende Namen zu w hlen Werden voraussichtlich Parameter f r die Prozedur ben tigt wird mit der Schaltfl che Parameter ein Eingabedialog ge ffnet Hier kann hnlich wie bei der Eingabe von m glichen Werten f r Attribute ein Parametername in ein Listenfeld eingetragen und der zugeh rige Typ mit Optionsschaltern festgelegt werden Diese Angaben k nnen auch noch nachtr glich ver ndert oder erg nzt werden Bei Abschlu des Dialoges ber die OK Schaltfl che wird gepr ft ob der notwendige Prozedurname eingegeben wurde und danach werden wie bei einer Regelbearbeitung die Arbeitsbl tter Prozedur Palette und Prozedur Werkstatt ge ffnet Die Palette bietet verschiedene funktionale Bl cke f r eine Prozedur an die zum Aufbau einfacher Strukturen verwendet werden k nnen Jeder Block stellt eine Syntaxstruktur dar die ein oder mehrere weitere Angaben ben tigt Der Benutzer klickt einen Block auf der Palette an und legt die entstehende Kopie in der Werkstatt ab Nachdem der Ein gang des Blockes mit dem Ausgang des vorhergehenden Blocks oder des Start Punktes verbunden wurde kann der Block durch einfaches Anklicken bearbei
110. modellex terne Konsistenzbedingungen angegeben werden Eine solche Bedingung w re z B die Forderung da nur Datens tze des Typs A eingef gt werden die im Nutzfeld 3 einen Wert gr er 4711 aufweisen Die impliziten Bedingungen werden durch die Definition der Datens tze der Datenba sis vorgegeben und sollten durch das Verwaltungssystem bei der Eingabe der Daten Eingabekonsistenz gepr ft werden Modellexterne Konsistenzbedingungen k nnen beliebig komplex sein und sich je nach Auswertung der Daten unterscheiden Prinzipiell kann jedes Anwendungsprogramm eigene Bedingungen enthalten die unabh ngig von der Datenbank gespeichert und verarbeitet werden Damit kann definiert werden Eine Datenbank ist konsistent falls sie die im Datenschema beschriebene Struktur hat und zudem einer Menge von Regeln Konsistenzbedingungen kurz KB gen gt welche sich auf die im Datenschema beschriebenen Strukturtypen beziehen Zitat aus G hler 5 Seite 11 26 KAPITEL 2 DER KONSISTENZBEGRIFF 2 1 2 berpr fung der Konsistenzbedingungen Die Konsistenzpr fung wird durch die Pr fung der Einhaltung der formulierten Konsi stenzbedingungen realisiert Wird eine verletzte Bedingung Inkonsistenz entdeckt mu entweder eine Mutationsfolge ausgel st werden die daf r sorgt da die Bedingung erf llt wird oder die Ursache der Verletzung die verursachende Mutationsfolge mu r ckg ngig gemacht werden F r beide M gl
111. mponenten e syntaktischer Test Regel und Frameeditor e syntaktischer Test Connection Graph Proof Procedure und e funktionaler Test vorgenommen um eine komfortable und vertretbare Kombination der notwendigen Komponenten zu erm glichen Editoren zur benutzerfreundlichen Eingabe der Wissenselemente bieten au er f r Kon sistenz und Kompaktheit auch am Markt Vorteile Ein intuitiv zu benutzendes Ent wicklungssystem erleichtert dem Wissensingenieur den Einstieg in die Implementierung des Wissens und wird mehr Akzeptanz finden als ein System mit kryptischen Befehlen Statt alle notwendigen Randbedingungen der korrekten Implementierung z B eines Ob jekts selbst nachhalten zu m ssen kann der Wissensingenieur sicher sein die system und konsistenzbedingten Mindestanforderungen durch die Hilfe der Editoren zu erf llen Der Aufwand solche Editoren zu implementieren h ngt sehr stark von der gew hlten Entwicklungsumgebung ab Je m chtiger das Werkzeug ist und je mehr Freiheiten dem Applikationsentwickler vom Hersteller zugestanden werden um so aufwendiger ist die Gestaltung benutzerfester Komponenten Die urspr nglich vorhandenen Frei heiten m ssen sinnvoll und korrekt eingeschr nkt werden ohne die Funktionalit t zu beeintr chtigen Hinsichtlich der Konsistenz kann mit Hilfe des Frameeditors die Erf llung der Forderungen F Fra 1 und F Fra 2 erleichtert und die Forderung F Fra 3 f r Regeln garantiert werden Seite
112. n wissen unterst tzen Im folgenden werden g ngige Repr sentationsformen mit ihren Eigenheiten vorgestellt Dabei k nnen zwei Ans tze unterschieden werden Sowohl die logik und regelbasierte Repr sentation als auch die mathematischen Modelle betrachten vorrangig den Vorgang der Wissensverarbeitung Die Darstellung von Fakten ist erst in zweiter Linie interessant Strukturierte Objekte entstammen dem zweiten Ansatz bei dem die Darstellung von Fakten statischem Wissen im Vordergrund steht und die Verarbeitung dieses Wissens darauf aufgebaut wird 1 1 LOGIKBASIERTE REPR SENTATION 5 1 1 Logikbasierte Repr sentation Die Grundlage logikbasierter Repr sentationsformen bildet die mathematische Logik Das bekannteste Beispiel ist die boolesche Algebra mit den Werten wahr und falsch bzw 0 und 1 sowie Junktoren wie und oder nicht Mengenalgebra und die Aussagenlogik sind andere Erscheinungsformen des selben Kalk ls bzw isomorph zur booleschen Algebra Logikbasierte Systeme mit den im folgenden dargestellten Repr sentationsformen Aussagen und Pr dikatenlogik nennt man auch Deduktionssysteme da spezielles Wissen aus allgemeinem bzw anderem Wissen geschlu folgert deduziert wird Desweiteren k nnen diese Systeme als Produktionssysteme interpretiert werden da die Komponenten Datenbasis Produktionsregeln und Kontrollstrategie vorhanden sind 1 1 1 Aussagenlogik In der Aussagenlo
113. n Eigenschaften erzeugt werden Fall 1 ist f r jeden Benutzertyp gleich einfach Von der bestehenden Klasse wird eine neue Instanz Objekt gebildet der ein eindeutiger Name zugewiesen wird Wie komfortabel eine Instanz erzeugt werden kann ist vom Benutzertyp und den Vorbereitungen durch den Administrator abh ngig Fall 2 erfordert bereits Vorwissen ber objektbasiertes Vorgehen und die verwendeten Strukturen F r den Benutzer bedeutet das nicht einfach ein Objekt zu erzeugen son dern zuerst eine Klassendefinition anzulegen Dazu mu er schon vorher mit der Syntax und den Systemwerkzeugen vertraut sein um wenigstens die unabdingbaren Eintragun gen wie Klassenname und Oberklasse sofort festzulegen Die Eigenschaften Attribute die das neue Objekt schlie lich haben soll k nnen dann nach und nach eingetragen und ge ndert werden Auch die Form des Sinnbildes kann nachtr glich festgelegt bzw ge ndert werden F r all diese Aktionen ist in der Grundversion von G2 Erfahrung im Umgang und Wissen ber die vorhandenen Klassen erforderlich Diesem Umstand haben die Entwickler des Lehrstuhls f r Automatisierungstechnik an der Bergischen Universit t Gesamthochschule Wuppertal Rechnung getragen indem Editoren mit zugeschnittenen Dialogen f r die Erzeugung von Objekten bzw Klassende finitionen auf Basis der Grundfunktionen der User Interface Library gestaltet wurden die auch einem unerfahrenen Benutzer ausreichend Hilfestellungen
114. n auch die Konsistenz mit einer endlichen Anzahl von Schritten nachgewiesen werden kann 15 34 KAPITEL 2 DER KONSISTENZBEGRIFF 2 3 Konsistenz in hybriden Systemen Die Repr sentationsformen Regeln Frames bzw strukturierte Objekte und Proze duren stehen in den hybriden Systemen nicht unabh ngig nebeneinander sondern greifen auf unterschiedliche Art und Weise ineinander In den folgenden Abschnitten wird jeweils eine Repr sentationsform betrachtet und berpr ft in wie weit sich eine dort g ltige Definition des Konsistenzbegriffes auf eine bereits bekannte Definition abbilden l t Des weiteren wird untersucht ob und in wie weit bekannte Testverfahren f r die Kombination der Repr sentationsformen anwendbar sind Daran anschlie end wird zusammengestellt welche Anforderungen ein gutes Werkzeug erf llen mu um ein hohes Ma an Zuverl ssigkeit oder Konsistenz des entstehenden Systems zu erm glichen 2 3 1 Regeln Die Formulierung von Wissen in Form von Regeln erreicht eine hohe Akzeptanz sowohl bei den Entwicklern als auch bei den Benutzern von wissensbasierten Systemen Regel basierte Systeme waren daher in der Informatik Gegenstand von Untersuchungen zu verschiedenen Themen unter anderem auch zur Konsistenz In einigen Arbeiten wie z B Ginsberg 38 Moerkotte 20 Beauvieux 35 und An gele Studer 1 wird versucht Bedingungen f r konsistente Wissensbasen zu erarbeiten und Sprachen oder Kalk le zu entwic
115. n bzw darf Implizites Wissen ber die Beziehungen der Werte unter einander mu dem System zus tzlich mitgeteilt werden Ein Attribut editor der einen syntaktischen Test erm glichen und einen Zul ssigkeitstest sofort durchf hren soll mu dieses Wissen sozusagen selbst akquirieren 2 3 KONSISTENZ IN HYBRIDEN SYSTEMEN 43 Bei den Wertemengen f r Attribute sind zwei F lle zu unterscheiden 1 sich ausschlie ende Werte 2 Werte die in einer definierten Reihenfolge vorliegen Zu 1 Die Farbe eines einfarbigen Gegenstandes kann immer nur genau einen Wert an nehmen Sind also die Werte ROT BLAU und GR N als zul ssige Werte dekla riert so bedeutet das f r jede Farbe den Ausschlu der beiden anderen Farben Wird also im Verlauf einer Anwendung des Systems von verschiedenen Stellen die Farbe des selben Gegenstandes auf unterschiedliche Werte gesetzt so entspricht das einer Inkonsistenz da bei gleichen Bedingungen dem gleichen Systemzustand zwei verschiedene Werte geschlossen werden Durch die zus tzliche Information gegenseitiger Ausschlu k nnen z B Regeln als inkonsistent erkannt werden die bei gleichem Bedingungsteil verschiedene Werte im Aktionsteil setzen siehe Kapitel 2 3 3 1 Zu 2 Als Attributwert eines Attributs Temperatur wird ein Symbol f r einen Tempe raturbereich verwendet Sind beispielsweise die Symbole kalt k hl warm hei als Wertemenge ang
116. nden der bersicht ist eine klare Hierarchie anzustreben Inkonsistenzen werden durch die Verwendung zugeschnittener Eingabem glichkeiten mit berpr fung weitgehend vermieden e Prozedurkonsistenz Syntaktische Korrektheit wird durch kontextsensitive Editoren sichergestellt Funk tionale Korrektheit kann nur im Zusammenspiel mit den anderen Wissenselementen dynamisch gepr ft werden e Gesamtkonsistenz Zugeschnittene Editoren f r alle Wissenselemente stellen syntaktische Konsistenz sicher Das Zusammenspiel der Wissenselemente mu dynamisch funktional also w hrend der normalen Nutzung des Systems berpr ft werden Zus tzliche syntaktische Tests einzelner Wissenselemente sind daher nicht notwendig 62 KAPITEL 2 DER KONSISTENZBEGRIFF Kapitel 3 Realisierung W hrend der Entwicklung eines neuen wissensbasierten Systemes sollten alle M glichkeiten genutzt werden um die Konsistenz der Wissensbasis von Beginn an zu wahren Die kommerziell verf gbaren Werkzeuge stellen dem Wissensingenieur sehr ver schiedene Hilfsmittel zur Verf gung Die hybride Expertensystemshell G2 der Firma GENSYM GmbH in der Version 5 0 f r das Betriebssystem OpenVMS 6 2 bildet die Basis f r die im Rahmen dieser Arbeit vorgeschlagene Erweiterung der vorhandenen Hilfsmittel zu einer Konsistenzpr fungskomponente Die Entwicklungsumgebung G2 wird vom Hersteller als objektorientiert bezeichnet bietet als Repr sentationsform f r
117. ndes von Vorteil Die Erweiterung eines bestehenden Systems ist bei Verwendung von Muster a nur unter erheblichem Aufwand m glich Zum einen mu die Klasse um Attribute erweitert wer den zum anderen mu diese Erweiterung durchg ngig bei allen Instanzen vorgenommen werden Bei Verwendung von Muster b mu lediglich ein neuer zul ssiger Wert f r das Attribut in die Klasse eingetragen werden Welche Auswirkungen hat die Form der Implementierung von Frames auf einen Konsi stenztest f r Regeln Die Connection Graph Proof Procedure als ein m gliches Testverfahren ben tigt beispiels weise die Darstellung des Wissens in Pr dikaten Die im Frame enthaltenen Attribute m ssen in Pr dikate bersetzbar sein Das kann nach Frameformulierung getrennt so aussehen a ist_rot Auto b Farbe Auto rot 38 KAPITEL 2 DER KONSISTENZBEGRIFF F r negierte Pr dikate wie sie bei der Umwandlung in die Klauselform erzeugt werden Kapitel 1 1 2 bzw Regeln die bei nicht zutreffenden Eigenschaften feuern sollen gilt OBJEKT Auto ATTRIBUT rot WERT nein OBJEKT Auto ATTRIBUT Farbe WERT nicht rot a ist_rot Auto b Farbe Auto rot A A Je nach dem ob die Negationen im Bedingungs oder Aktionsteil einer Regel auftreten sind verschiedene Effekte zu beachten e Aktionsteil a Die Negation entspricht einer Wert nderung des Attributes von ja nach nein also einer booleschen Negation w hrend bei b die Negation nich
118. ndet arbeitsblatt wechseln Abbildung A 7 Hierarchie der Men s und Dialoge eines Objektes 114 ANHANG 5 E Erzeugung einer Regel Regel Palett Regel Werkstatt a arbeitsblatt wechseln Abbildung A 8 Hierarchie der Men s einer Regel Die weiterf hrenden Aktionen bzw Dialoge der Schaltfl chen 1 2 3 und der Regelbl cke Wenn 4 5 6 und Dann 7 8 9 werden auf den folgenden Seiten dargestellt ANHANG 115 Bedingungsteil Bausteine generisch Attribut von allen Objekten der Klasse 2 spezifisch 2 Attribut von Objekt 3 Konstante u Attribut verkn pft mit Wert m gliche Werte Aktionsteil Bausteine 4 K i Attribut von allen Objekten der pans Klasse bekommt den Wert E m gliche Werte Objekt Attribut von Objekt bekommt den Wert u m gliche Werte 6 Prozedur starte die Prozedur Abbildung A 9 Dialoge der Regel Bausteine 116 ANHANG m CO U ee zH 7 Regel erzeugen Die Grafik wird berpr ft und in die interne Syntax bersetzt Die Arbeitsbl tter Regel Palette und Regel Werkstatt werden geschlossen oe 5 7 nderungen werden gel scht Abbrechen Die alte Regel bleibt erhalten 9 Verwerfen Alle Regelbausteine werden gel scht ED Abbildung A 10 Aktionen der Schaltfl chen in der Regel Werkstatt
119. ndprojekt TEX I In Chemie Ingenieur Technik Bd 62 1990 H 8 S 635 644 Beauvieux Alain A Method to Check Knowledge Base Consistency In Nori K V Kumar S Hrsg Foundations of Software Technology and Theoretical Computer Science Lecture Notes in Computer Science 338 S 455 468 Springer Verlag Berlin 1988 Beuschel J B hme B Ein Zuverl ssigkeitsmodell f r Expertensysteme in der Produktionsautomatisierung In msr Messen Steuern Regeln Wissenschaftlich technische Zeitschrift f r die Automatisierungstechnik 33 1990 H 9 S 438 442 Brewka Gerhard Nichtmonotone Logiken Ein kurzer berblick In KI 1989 H 2 S 5 12 Ginsberg A Knowledge base Reduction a new approach to checking knowledge bases for inconsistency and redundancy In Gupta Uma G Validating and Verifying Knowledge Based Systems S 585 589 IEEE Computer Society Press Los Alamitos u a 1991 Heinzel Werner Schrobar Michael Realisierung eines Expertensystems zur Fehlerdiagnose in LAN In ntz Bd 47 1994 H 1 S 16 21 106 40 42 43 pS N 47 LITERATURVERZEICHNIS Klapproth Uwe Perner Petra B hme Berndt Einsatz eines Expertensystems zur Diagnose von Druckfehlern im Offsetdruck In msr Messen Steuern Regeln 34 1991 H 3 S 116 120 Kowalski Robert A Proof Procedure Using Connection Graphs In Journal of the Association for Computing Machinery 22 1975 S 572 595
120. nell erkannt werden denn neu auftretende bzw fehlende Werte oder Aktionen h ngen mit dem deaktivierten Wissen zusammen F r die Gestaltung der Benutzeroberfl che bietet G2 mit verschiedenen vorgefertigten Grafikelementen ein Skelett das durch die Werkzeugentwickler f r jegliche Aktion mit und durch die Grafikelemente mit Leben gef llt werden mu F r den Aufbau der dazu notwendigen komplexen Prozedurstrukturen bietet G2 Systemprozeduren der User In terface Library Benutzerschnittstellenbibliothek Zusammenstellung von Grundproze duren zur Manipulation der Grafikelemente als Minimalelemente an eine weitere Un terst tzung gibt es jedoch nicht 3 2 KLASSEN UND FRAMEEDITOR 69 3 2 Klassen und Frameeditor Startpunkt jeder Implementierung in einer hybriden Entwicklungsumgebung sind die Objekte In ihnen wird das Faktenwissen repr sentiert Auf der Benutzeroberfl che erscheinen Objekte als Sinnbilder mit deren Hilfe weitere Informationen zu dem Ob jekt abgerufen werden k nnen Die allgemeine Beschreibung der Objekteigenschaften wird nicht im Objekt selber vorgenommen sondern in der Klassendefinition der Klasse abgelegt deren Instanz das Objekt ist Ohne Klassendefinition kann kein Objekt existie ren Will ein Nutzer ein neues Objekt erzeugen gibt es zwei M glichkeiten 1 es existiert bereits eine Klasse die die Eigenschaften des gew nschten Objektes beschreibt oder 2 es soll ein Objekt mit bisher unbekannte
121. neue Wert besser im Sinne von sicherer f r die korrekte Funk tion des Systems ist Soll beispielsweise ein Motor vor dem berhitzen gesch tzt 2 3 KONSISTENZ IN HYBRIDEN SYSTEMEN 45 werden ist es besser eine bestimmte Temperatur zu hoch zu bewerten worst case Dem Attribut Temperatur wird also im Zweifel wenn mehrere Regeln feuern besser der h here Wert zugewiesen WENN A A E A Temperatur von Motor ist kalt DANN wird der Temperatur von Motor das Symbol warm zugewiesen WENN AAEA Temperatur von Motor ist k hl DANN wird der Temperatur von Motor das Symbol warm zugewiesen Die implizite Relation warm ist h her als zwischen den Symbolen wird so auch in den Regeln ber cksichtigt es mu aber f r jede m gliche Kombination der Sym bole in Abh ngigkeit von der Relation eine eigene Regel erzeugt werden Bei einer Erweiterung der Wertemenge mu der Entwickler oder die Akquisitionskompo nente alle betroffenen Regeln berarbeiten bzw neue Regeln erzeugen 2 Umwandlung des Attributes Temperatur mit einer Wertemenge bestehend aus Symbolen oder Texten in ein Attribut Temperatur ist hei mit einem Wertein tervall 1 4 0 10 oder hnlichem Das weitere Vorgehen ist dann analog zu Punkt 1 bietet aber den Vorteil der leichteren Abfrage z B mit lt und besseren Erweiterbarkeit der We
122. nf hrung zu diesem Kapitel in dem zus tzlich Proze duren als Objektklasse integriert sind Neben den vom Entwicklungssystem vorgegebenen Objektklassen Systemklassen wie Regel Prozedur Variable Parameter usw k nnen durch den Benutzer eigene Klassen erzeugt werden deren Instanzen Objekte das Fak tenwissen aufnehmen Jede Instanz kann direkt ber ihren Namen und indirekt ber die Klassenzugeh rigkeit referenziert werden Ein Vorteil von G2 liegt in der grafischen Repr sentation der einzelnen Objekte Sinnbild icon Ikone Einerseits ist damit eine Visualisierung der Wissenskomponenten und ber Gruppierungen der Sinnbilder die Darstellung ihrer Verkn pfung gegeben Andererseits sind die Bearbeitungsm glichkeiten f r die Objekte durch Auswahl Anklicken ihres Sinnbildes icons mit der Maus aktivierbar Der Entwickler hat vielf ltige M glichkeiten die Informations und Bearbeitungsm glichkeiten zu strukturieren und an das jeweilige Objekt zu binden Informationen zu einem Sinnbild sind in erster Linie die Eigen schaften des dadurch symbolisierten Objektes die blicherweise in tabellarischer Form G2 Terminus table angezeigt werden siehe Abbildung 3 4 links Weitere Objekte wie Prozeduren und Variablen die mit diesem Objekt Regel PS Motor 1 zusammenh ngen k nnen auf einer Arbeitsfl che angeordnet werden die direkt der Regel PS Motor 1 zugeordnet wird Unterarbeitsfl che subworkspace Abbildung 3 4 r
123. ng neuer Frames mit mehreren Aktionen verbunden ist Die einfache Information des Benutzers durch Ausgabe eines Textes ist noch mit wenigen Anweisungen realisierbar die Erzeugung eines komplexen Frames mit neu zu ermitteln den Attributwerten Punkt 2 und unter Umst nden die Anordnung auf einer grafischen Oberfl che dagegen erfordert komplexere Aktionen die in einer bestimmten Reihenfolge Punkt 3 erfolgen m ssen F r den Einsatz von wissensbasierten Systemen in der Proze f hrung ist die M glichkeit mathematische Modelle durch Prozeduren in die Anwendungen zu integrieren eine wichtige Eigenschaft Punkt 5 Funktionale Zusammenh nge zwischen Proze gr en bilden oft die Grundlage f r Steuergr en und sind allein wissensbasiert regelbasiert nicht abzubilden An dieser Stelle findet die Integration von klassischen Modellen in die wissensbasierte Arbeitsweise statt Wie in den meisten F llen m ssen die Vorteile auch hier durch Nachteile erkauft werden Innerhalb der Prozeduren kann blicherweise auf alle Frames direkt zugegriffen werden was sowohl f r das Auslesen als auch das Setzen von Werten gilt Geschieht dieser Zu griff ber Aufruf und R ckgabeparameter der Prozedur k nnen Verkn pfungen verh lt nism ig leicht erkannt werden H ufiger sind aber Zugriffe innerhalb der Prozeduren Als Folge davon wird die Definition des Konsistenzbegriffes sowie die Pr fung und Wahrung der Konsistenz komplexer 92 KAPITEL 2 DER
124. nkonsistenz eingreifen wollen Dr cken Sie danach bitte den Knopf Start SPRACHAUSWAHL Ablaufart DEUTSCH Einzelschrittbest tigung V ENGLISCH W automatische Weiterschaltung V NICHT BELEGT Abbildung 3 16 Start Arbeitsblatt des funktionalen Tests Die Inferenzkette wird durch Bet tigen der Schaltfl che N chster Schritt gestartet die in der rechten unteren Ecke des Bildschirms auf einem neuen Arbeitsblatt eingeblendet wird Bei automatischer Weiterschaltung wird die Inferenz erst dann gestoppt wenn m glicherweise ein Problem vorliegt Wurde Einzelschrittbest tigung gew hlt mu der Benutzer immer den n chsten Inferenzschritt ansto en egal ob ein Problem erkannt wurde oder nicht Beide Varianten erf llen die Forderung F funk 1 S 53 Sobald die Konsistenzkomponente eine Inkonsistenz erkennt werden entsprechende Mel dungen auf dem zus tzlich erscheinenden Arbeitsblatt Konsistenz Informationen aus gegeben Dort werden auch die als Quelle der Inkonsistenz festgestellten Objekte plaziert und stehen sofort f r eine berarbeitung zur Verf gung Ein speziell generierter Hin weistext gibt an welches Attribut welchen Objektes in allen Quellobjekten vorkommt und unterschiedliche Werte erh lt Dies ist besonders bei Beteiligung von Prozeduren wichtig da f r jede Prozedur einzeln der Editor aufgerufen werden mu um Einblick in den Programmcode zu erhalten Ein schnelles
125. nkonsistenzen optimal bei deren Behe bung unterst tzt wird auch ohne mit der Wissensbasis vertraut zu sein 4 2 BERTRAGBARKEIT DER ERGEBNISSE 99 4 2 bertragbarkeit der Ergebnisse Die Betrachtungen zur Konsistenz in hybriden wissensbasierten Entwicklungsumgebun gen wurden in Kapitel 2 2 so allgemein wie m glich gehalten Jedes kommerzielle Werkzeug hat Eigenheiten sowohl in der Bedienbarkeit der Oberfl che als auch in der Art der Wissensrepr sentation Einige Forderungen die in Kapitel 2 3 formuliert wur den k nnen in verschiedenen Werkzeugen bereits erf llt sein ein langzeitig ber Jahre anwendbarer Test auf Widerspruchsfreiheit ist bisher aber in keinem System realisiert Die beispielhafte Realisierung einer Konsistenztest Komponente wurde unter an derem deshalb mit dem Werkzeug G2 vorgenommen weil das Grundkonzept dieser Entwicklungsumgebung auf Erweiterungen ausgerichtet ist Es existieren einzelne Werkzeug Module die hierarchisch in eine Wissensbasis integriert werden k nnen und es besteht die M glichkeit eigene Module zu entwickeln Des weiteren erm glicht die grafi sche Oberfl che mit den daf r zur Verf gung stehenden Werkzeug Modulen den Aufbau von benutzerfreundlichen Dialogen Abh ngig davon wie offen eine Entwicklungsumgebung f r die Implementierung einer neuen oder ver nderten Benutzerschnittstelle ist k nnen Ans tze der vorgestellten Re alisierung ebenfalls bernommen werden Grunds tzlich sind
126. nsregeln die Konsistenzans tze f r Datenbanken mu entweder in jedem Pr dikat ein G ltigkeitszeitpunkt enthalten sein oder auf eine andere Art mu sichergestellt werden da der neue Datenzustand als Ausgangspunkt f r die Konsistenzuntersuchungen verwendet wird Abschlie end kann also festgestellt werden da wissensbasierte Systeme durchaus mit Datenbanken in Verbindung gebracht werden k nnen da aber f r die Interpretation des Konsistenzbegriffes besonders in hybriden Systemen durch die Verwendung von Proze duren neue Ans tze gefunden werden m ssen Konsistenz Die bersetzung von Konsistenz mit Widerspruchsfreiheit l t grunds tzlich zwei In terpretationsm glichkeiten offen die sich darauf beziehen wozwischen Widerspr che auftreten k nnen Global betrachtet existiert die reale Welt der betrachtete Weltaus schnitt und als Abbild oder Modell dessen Repr sentation in einer formalen Sprache Widerspr che zwischen diesen beiden Dingen sind nur dann erkennbar wenn der Be trachter den Weltausschnitt und die formale Repr sentation mit der jeweiligen Bedeu tung erfa t hat und vergleichen kann Die so berpr fte Widerspruchsfreiheit wird in der Literatur z B 9 auch mit Korrektheit bezeichnet Betrachtet man die formale Repr sentation allein sozusagen die k nstliche Welt sind Widerspr che zwischen einzelnen Wissenselementen z B zwei Aussagen oder Regeln m glich Konsistenz kann als Widerspruchsf
127. onsistenz in regelbasierten Systemen Eine andere Definition des Konsistenzbegriffes wird bei regelbasierten Systemen notwendig Das Dom nenwissen repr sentiert das allgemein formulierte Wissen ber Zusammenh nge in einem bestimmten Diskursbereich Dom ne Durch Hinzuf gen von Fakten die einen aktuellen Zustand der Welt abbilden kann man weiteres Wissen ber diesen aktuellen Zustand durch Spezialisierung des Dom nenwissens ableiten deduzieren siehe Kapitel 1 1 Jeder neue Zustand Wissensstand enth lt das unver nderte Wissen des Vorg ngerzustandes alte Fakten und deduzierte neue Fakten Verwendet man obige Implikationen als Regeln in einer Wissensbasis kann bei der Bele gung P 1 und R 1 sowohl Q als auch Q geschlu folgert werden Q kann nicht gleichzeitig sowohl wahr als auch falsch sein Sehr wohl k nnen aber P und R gleichzeitig wahr sein Eine der Regeln mu daher unzul ssig sein Da f r Q kein Wahrheitswert vorgegeben ist dieser soll ja erst durch die Regeln ermittelt werden kann nicht berpr ft werden welche der Regeln zul ssig ist und welche nicht Konsistenz mu in regelbasierten Systemen also enger gefa t werden als in der formalen Aussagenlogik 2 2 WISSENSBASIERTE S Konsistenz liegt bei regelbasierten Systemen vor wenn es keine Belegung mit Wahrheitswerten gibt die die Bedingungsteile von Regeln erf llt deren Schlu YSTEME folgerungen oder Aktionen aber widerspr chlich sind nach 1
128. oses Regel Objekt und seine Unterarbeitsfl che Beispiele f r Dialogelemente in G2 2 2 nn nn Startbild einer leeren Wissensbasis mit Konsistenzmodul Dialog zur Erzeugung und Bearbeitung von Klassendefinitionen Eingabe m glicher Werte 4 2 4 4 Us 4 4 erde re Entstehung eines Objektes 2 2 2 2 2 E on nn nn Men einer Klassendefinition sowie Men und Tabelle eines Objektes Arbeitsfl chen zur grafischen Erstellung einer Regel Dialog zur Eingabe einer spezifischen Regel 2 2 2 2 2 2 Dialog f r den Eingabe Baustein Wert 2 2 222 iii iv ABBILDUNGSVERZEICHNIS 3 14 Dialog zum Setzen eines Attributwertes 2 222m e 81l 3 15 Arbeitsfl chen zur grafischen Erstellung einer Prozedur 87 3 16 Start Arbeitsblatt des funktionalen Tests 2 2 2 2 nn 90 3 17 Eigenschaften spezieller Ausgangs Attribute 2 22 22 20 92 3 18 Tabelle der Ausgangs Attribute f r Auto 1 und Auto 2 93 A 1 Modulhierarchie einer leeren Wissensbasis mit Konsistenztest 107 A 2 Arbeitsblatt beim Start der leeren Wissensbasis 2 2 2 2 2 108 A 3 Module f r den Konsistenztest mit ihren Inhalten 2 2 109 A 4 Palette der m glichen Wissenselemente 2 2 222mm nenn 110 A 5 Legende der Symbole in den folgenden Strukturen 2 2 2 111 A 6 Hierarchie der Men s und Dialoge einer Klasse 2 2 22 22 112 A 7 Hi
129. r In den betrachteten Arbeiten wird die Meta Konsistenz nicht behandelt Leikauf bemerkt dazu Es ist aber noch offen wie man die Konsistenz von Restriktionen zeigen soll die als pr dikatenlogische Ausdr cke oder gar mittels Triggerprozeduren Unterprogrammen formuliert wurden die dazu n tigen Techniken m ten wohl aus der Welt der Programm verifikation stammen Zitat aus Leikauf 18 Seite 37 Konsistenzbedingungen in der hier vorgestellten Art repr sentieren einen Teil der Se mantik der Daten Dehnt man diesen Ansatz weiter aus kommt man zu deduktiven Datenbanken 2 1 DATENBANKEN 27 2 1 3 Deduktive Datenbanken In der realen Welt existieren vielf ltige Gesetzm igkeiten oder Abh ngigkeiten von Daten untereinander Bildet man zus tzlich zu den Daten auch Gesetzm igkeiten beispielsweise mit Hilfe von Ableitungsregeln in der Datenbank ab kann sich die zu spei chernde Datenmenge reduzieren Fakten die sich aus der Verkn pfung anderer Daten ableiten lassen m ssen nicht explizit in die Datenbasis aufgenommen werden Es reicht die Formulierung der Abh ngigkeit um im Bedarfsfall das Faktum explizit zu bilden In der Arbeit von Moerkotte 20 wird als Beschreibungssprache f r die Ableitungsregeln Deduktionsregeln oder kurz Regeln die Pr dikatenlogik erster Stufe verwendet Eine Datenbasis besteht hier also aus den Daten Deduktionsregeln und den schon fr her beschriebenen Konsistenzbedingungen Alle Fa
130. r einige syntaktische Feinheiten in Abh ngigkeit von den Datentypen beachten Da die Regel syntax nach bekannten Regeln aufgebaut ist kann aus der Regelgrafik des Benutzers automatisch ein Regeltext mit der korrekten Syntax generiert werden Die Inferenzmaschine greift f r die Wissensverarbeitung auf die so erzeugte original G2 Regel zu w hrend f r den Benutzer die Regelgrafik das Wissen repr sentiert Die durch den Benutzer erzeugten Regel Objekte besitzen jeweils ein Unterarbeitsblatt das sowohl die Regelgrafik als auch die original G2 Regel enth lt F r die Bearbeitung der Regel durch den Benutzer wird die zugeh rige Regelgrafik auf das Arbeitsblatt Regel Werkstatt bertragen Die automatische Erzeugung der Regeltexte wird um so komplexer je komplexer die syntaktischen Strukturen sind die verwendet werden m ssen Kritisch sind dabei die Zugriffe auf Attributwerte sei es um sie f r einen Vergleich abzufragen sei es um neue Werte zu setzen Die einfachste Struktur ist ein Zugriff der Form die Eigenschaft von Objekt oder in G2 Notation z B the farbe of Auto 1 Voraussetzung daf r ist die einfache Struktur der Klassendefinition mit class Auto class specific i farbe is a text attributes 84 KAPITEL 3 REALISIERUNG In Kapitel 3 2 wurde bei der internen Darstellung der Objekte die M glichkeit ange sprochen zugeschnittene Klassendefinitionen zu verwenden siehe Seite 76 Eine Klassendefinition mit
131. r geladen werden kann verbleibt ein Arbeitsblatt des Moduls Konsistenz mit einer Schaltfl che und den zugeh rigen Prozeduren im Modul User Root Dialog mit Auswahl L sche lade nlanalei Tosi Editoren und Test entfernen nur funktionalen Test entfernen Abbildung A 16 L sche lade funktionalen Test 122 ANHANG ANHANG 123 Dialog mit Auswahllisten funktionaler Test Sprachauswahl Sprache der Mitteilungen Ablaufart Art der Inferenzweiterschaltung Mitteilungen ber den Ablauf nu des funktionalen Tests tempor res Arbeitsblatt zur Anzeige einer Schaltfl che Umwandlung Mitteilungen ber den Ablauf nn des funktionalen Tests tempor res Arbeitsblatt zur Anzeige einer Schaltfl che N chster Schritt Mitteilung ber das Ende des funktionalen Test I Schritt wiederholen Bee INKONSISTENZ tempor res Arbeitsblatt zur Anzeige der Verursacher Guslisbjekte Darstellung der Verursacher Editierung abgeschlossen Abbildung A 17 Ablauf des funktionalen Tests
132. reiheit des bereits formalisierten Wissens in sich interpretiert werden Die Interpretation des Begriffes Widerspruch erf hrt bei den untersuchten verschiedenen Repr sentationsformen wiederum unterschiedliche Konkretisierungen Im folgenden wird zun chst die spezielle Interpretation des Konsistenzbegriffes in klassischen Deduktionssystemen die auf den Repr sentationsformen Aussagen bzw Pr dikatenlogik aufbauen untersucht 2 2 1 Konsistenz in klassischen Deduktionssystemen Da die Aussagenlogik wie bereits in Kapitel 1 1 dargelegt die Grundlage von Deduk tionssystemen ist soll auch der Begriff Konsistenz zun chst in diesem Zusammenhang betrachtet werden 30 KAPITEL 2 DER KONSISTENZBEGRIFF Konsistenz wird in der Aussagenlogik definiert als das Vorhandensein mindestens einer Belegung mit Wahrheitswerten f r die alle betrachteten Implikationen erf llt werden 1 38 F r die beiden Implikationen P Q PAR gt Q ergibt sich mit Hilfe der Wahrheitstabellen P PvQ P R PV RV Q 1 0 1 1 0 1 0 1 1 1 0 1 0 0 1 da sie konsistent sind da mit P 0 beide erf llt werden k nnen In einem Deduktionssystem der Aussagenlogik wird eine Datenbasis die die Elemente P R P gt Q und P A R Q enth lt als nicht korrekt bezeichnet da der Widerspruch bereits aufgrund der Modellbildung vorhanden ist Unkorrektheit ist also eine Form semantischer d h nicht syntaktisch pr fbarer Inkonsistenz 2 2 2 K
133. rfachbelegung eines Attributes gekennzeichneten Inkonsistenz erkennt die Komponente auch eine einstufige Oszillation Da ein st ndiger Wechsel eines Attributwertes auch Absicht des Entwicklers sein kann werden Oszillationen zwar erkannt und die Quellobjekte angezeigt es mu aber keine Bearbeitung erfolgen F r diesen Fall steht dem Benutzer die Schaltfl che Objekte sollen so bleiben zur Verf gung Interne Abl ufe Hauptpunkt des funktionalen Tests ist die schrittweise Verfolgung der Inferenz Ein Schritt ist immer dann abgeschlossen wenn alle Regeln gefeuert haben deren Pr misse vor dem Schritt erf llt war Damit f r alle Regeln der gleiche Ausgangszustand gilt werden Attribut nderungen nicht bei den Original Objekten vorgenommen sondern bei gesondert erzeugten Ausgangs Objekten Frames Objekte Zu Beginn des funktionalen Tests mu f r jedes Attribut ein Ausgangs Attribut erzeugt werden das alle notwendigen Informationen zur Erkennung und Bearbeitung einer Inkon sistenz aufnehmen kann Die Datenstrukturen dieser Ausgangs Attribute k nnen nach unterschiedlichen Kriterien angelegt werden Es kann ein exaktes Abbild der Klassende finitionen und Objekte erzeugt und z B mit einem gekennzeichnet werden Statt der einfachen Attributtypen werden neue Typ Klassen verwendet die alle Anforderungen f r die Auswertung erf llen 92 KAPITEL 3 REALISIERUNG Vorteil dieser Methode
134. rieben werden Existenzquantoren werden dabei durch die Benennung des existierenden Objekts mit einer sogenannten Skolem Funktion eliminiert Klauseln die nur aus einer Aussage bzw einem Pr dikat bestehen werden auch als Literal bezeichnet Liegen alle Axiome in Klauselform vor kann die Resolution mit Hilfe der Resolutionsregel durchgef hrt werden Resolutionsregel Aus den Elternklauseln A V B und A Vv C kann die Resolvente B V C gefolgert werden Die Literale B und k nnen auch eine Disjunktion mehrerer Literale darstellen 1 1 LOGIKBASIERTE REPR SENTATION 9 Das automatische Theorembeweisen geschieht mit dem Resolutionskalk l durch einen Widerspruchsbeweis Die zu beweisende Behauptung wird negiert und zusammen mit den Pr missen der Resolution unterworfen Es werden so lange Resolventen gebildet bis der Widerspruch z B in Form einer leeren Klausel gefunden ist Existiert kein Wider spruch mu das f r die verwendete Kontrollstrategie definierte Abbruchkriterium erf llt werden Man erh lt die Information da eine Behauptung aus den vorhandenen Pr missen geschlu folgert werden kann also ber die Aussage da die Negation der Behauptung zu einem Widerspruch f hrt 10 KAPITEL 1 REPR SENTATION VON WISSEN 1 2 Regelbasierte Repr sentation Eine Grund berlegung beim L sen von Problemen ist in jedem Benutzerhandbuch von technischen Ger ten zu finden Wenn dieser oder jener Zustand eingetreten
135. rtemenge An dieser Stelle k nnen prinzipiell auch Werteintervalle der Form 1 0 1 0 oder 0 1 0 zugewiesen werden wenn die Entwicklungumgebung die Verwendung von Fuzzy Logic unterst tzt Diese Variante findet hier keine weitere Ber cksichtigung Insgesamt ist die Verwendung von Symbolfolgen mit impliziten Relationen als Werte menge eines Attributes ein Sonderfall der im Rahmen dieser Arbeit nicht ber cksichtigt wurde 2 3 3 1 Die Connection Graph Proof Procedure In Kapitel 2 2 2 wurde bereits darauf hingewiesen da mit Hilfe der CGPP mit einer endlichen Anzahl von Schritten Konsistenz und Inkonsistenz einer Wissensbasis nachgewiesen werden kann wenn sie in Klauselform vorliegt und auf pr dikatenlogi schen S tzen beruht die bestimmte Bedingungen hinsichtlich der Konfluenz usw erf llen siehe Kleberhoff 15 Dieses Verfahren liefert nur dann als Konsistenztest der gesamten Wissensbasis korrekte Aussagen wenn tats chlich alles verf gbare Wissen in der Wis sensbasis repr sentiert und daraus alle Klauseln siehe Kapitel 2 3 2 entwickelt wurden 46 KAPITEL 2 DER KONSISTENZBEGRIFF Das folgende Beispiel zeigt Schritt f r Schritt welches Wissen f r den Nachweis einer Inkonsistenz mindestens erforderlich ist Au erdem wird gezeigt welche Klauseln bei einer Wertemenge mit mehr als zwei sich gegenseitig ausschlie enden Werten notwendig und hinreichend f r die CGPP sind In den Beispielen wird folgende Symbolik ver
136. s u Symbol f r einen Dialog Dialog Aufruf durch eine Schaltfl che auf dem bergeordneten Dialog EEE Informations Dialog Alternative 1 i Alternative 2 je nach Zustand der Wissensbasis G Nummerierte Fortsetzungspunkte zu drei Schaltfl chen in dieser Zeile Nummerierter Fortsetzungspunkt zu einer Schaltfl che in dieser Spalte O generisch Fortsetzungspunkte mit Beschriftung an der ausgew hlten Schaltfl che beschriftete nai Angabe der Schaltfl che die bet tigt wurde Abbildung A 5 Legende der Symbole in den folgenden Strukturen 112 A ANHANG Erzeugung einer Klasse Erzeugen und Bearbeiten bearbeiten f ER einer Klassendefinition M gliche Werte vom Typ E nderung des Klassennamens Frage Objektnamen anpassen Hinweis Frage Die Klasse wird in Regeln verwendet Hinweis Frage zn u Die Klasse wird in Prozeduren verwendet arbeitsblatt wechseln bearbeite grafik Abbildung A 6 Hierarchie der Men s und Dialoge einer Klasse ANHANG 113 M Erzeugung eines Objektes __ Zuordnung des Objektes zu einer Klasse E Ausan einer bestehenden Klasse ES Ea bearbeiten Ea i nderung des Objektnamens a il Hinweis Frage l Das Objekt wird in Regeln verwendet Hinweis Frage Das Objekt wird in Prozeduren verwe
137. s Kennzeichen Kons_ vorangestellt und durch die Anpassung aller Aufrufe an den neuen Namen ist die Originalprozedur quasi deaktiviert Schaltfl chen G2 spezifisch Wie bereits zu Beginn dieses Kapitels gesagt wurde wird h ufig die Bet tigung einer Schaltfl che als Startsignal f r die Inferenzkette der Applikation verwendet Dabei wer den Aktionen ausgel st wie das Setzen eines oder mehrerer Attributwerte oder ein Proze duraufruf Auch diese Aktionen werden bei der Vorbereitung zur schrittweisen Inferenz gepr ft und bei Bedarf umgewandelt Schaltfl chen stellen f r die Umwandlung eine besondere Herausforderung dar da G2 hier eine Reihe von Gestaltungsm glichkeiten bietet 8 Ein praktikabler Weg ist die Nachbildung der Aktionen durch Regeln die nach den besprochenen Methoden aufgebaut werden Diese Knopf Regeln existieren nur in der G2 internen Darstellung und werden bei Bet tigen der Schaltfl che ber den Mechanismus der Regelkategorie aufgerufen Regeln k nnen durch die Angabe einer Kategorie in eine Gruppe zusammengefa t wer den wobei die Abarbeitung aller Regeln der Gruppe durch die Inferenzmaschine mit dem Befehl invoke lt Kategorie Name gt rules ausgel st wird Auf diese Weise werden die von den Regeln ausgel sten Aktionen an die Bet tigung der Schaltfl che gebunden aus deren Aktion die Regeln generiert wur den Der Originaltext der Schaltfl chenaktion wird als Textkopie abgelegt um nach dem
138. s eingehalten werden m ssen Als Datenmodell wird hier das erweiterte Relationenmodell nach Zehnder 33 benutzt welches die Beschreibung von Beziehungen zwischen Gruppen von Datenobjekten En tit tsmengen zul t Je zwei Kardinalit ten beschreiben eine Beziehung Eine Kardi nalit t ja ist die Anzahl der Entit ten Datenobjekte der Entit tsmenge E2 die einer Entit t der Menge El zugeordnet werden k nnen Angegeben werden im allgemeinen Unter u und Obergrenze o 2 1 DATENBANKEN 25 Wird ein Modell gebildet in dem Daten in eine vorher festgelegte Datenstruktur eingef gt werden sind bereits Konsistenzbedingungen verschiedener Art zu beachten e Ein Datum darfnur dann bernommen werden wenn der Datentyp des betreffenden Feldes eingehalten wird e Fin Datensatz darf nur dann erzeugt werden wenn die f r einen solchen Datensatz definierten Kardinalit ten eingehalten werden e Werden in einem neuen Datensatz z B Schl sselfelder anderer Datens tze als Werte in Nutzfeldern ben tigt m ssen diese Datens tze existieren damit aktuell g ltige Werte eingetragen werden k nnen Konsistenzbedingungen repr sentieren also Beschr nkungen der zul ssigen Zust nde bestimmter Datenelemente oder deren Kombinationen Neben den durch die Da tentypen elemente und Kardinalit ten bedingten sogenannten impliziten Konsi stenzbedingungen k nnen auch weitere Bedingungen f r die Daten als
139. sich mit der Frage intel ligenter Leistungen von Computerprogrammen besch ftigt Mit verschiedenen Darstel b lungsarten f r Wissen und dessen Verkn pfung kommt man zu sogenannten wissens basierten Ans tzen oder Systemen die in begrenzten Bereichen wie menschliche Ex perten reagieren Solche Expertensystem Anwendungen versprachen in der Anfangszeit in den Jahren 1980 1985 viele Vorteile auch f r industrielle Aufgabenstellungen Es zeigten sich je doch rasch Schw chen bei der Einbindung wissensbasierter Systeme in ein bestehendes industrielles Umfeld Die vorliegende Arbeit besch ftigt sich mit der Frage nach der Widerspruchsfreiheit Konsistenz von wissensbasierten Programmsystemen im folgenden kurz als Systeme bezeichnet Um ein zuverl ssiges Verhalten der Systeme zu gew hrleisten mu das ver wendete Wissen widerspruchsfrei repr sentiert werden Diese Forderung kann w hrend der Entwicklung des Systems unter Umst nden auch ohne Hilfsmittel relativ gut durch den Entwickler erf llt werden sofern nur ein Entwickler t tig ist und er fundiertes Wis sen und Erfahrung im abgebildeten Themenbereich besitzt Sobald ein wissensbasiertes System aber ber Jahre oder gar Jahrzehnte hinweg kom petent sein soll ist Wartung in Form von Erg nzungen und nderungen des implemen tierten Wissens notwendig Der mit der Wartung beauftragte Entwickler steht bez glich der zu gew hrleistenden Widerspruchsfreiheit vor e
140. sonders wichtig denn wird bei einer Entwicklung auch nur ein Teil der Strukturen ohne Verwendung der Konsistenzkomponente implementiert ist kein sinnvoller Konsistenztest mehr m glich Die Entwicklungsumgebung G2 stellt eine grafische Benutzeroberfl che mit beliebig vie len Arbeitsfl chen Arbeitsblatt G2 Terminus workspace zur Verf gung die an die Oberfl che verschiedener Betriebssysteme erinnert Jede Arbeitsfl che kann als grafi sche Zusammenfassung von Wissenselementen Objekten G2 Terminus objects genutzt werden wobei eine weitere logische Zusammenfassung von Arbeitsfl chen in Teilwissens basen G2 Terminus module erfolgen kann Die Modularisierung macht es m glich ein vollst ndiges Expertensystem aus verschiedenen allgemeinen und einigen speziell f r eine Anwendung erstellten Modulen zusammenzusetzen Besondere Vorteile ergeben sich f r die Wiederverwendbarkeit von Teilwissensbasen die allgemeine Werkzeuge enthalten sowie f r die Gr e des an die Kunden ausgelieferten Expertensystems Werkzeuge wie Dialoge zum bequemen Speichern oder Ausdrucken von Informationen oder auch allge meing ltige Komponenten k nnen f r andere Entwicklungen zur Verf gung gestellt wer den Werden Entwicklungswerkzeuge module nach Fertigstellung des Gesamtsystems entfernt kann die f r den Endanwender notwendige Speichergr e ohne Funktionsverlust reduziert werden vom Benutzer zu entwickeln Grundmodul User Root
141. spr chliches Wissen implementiert werden Ausgehend von bestehenden Definitionen der Konsistenz in Datenbanken klassischen Deduktionssystemen und regelbasierten Systemen wird untersucht in wie weit Testver fahren aus diesen Bereichen f r hybride wissensbasierte Systeme anwendbar sind Es wird gezeigt da die bei der Pr dikatenlogik vorhandene M glichkeit eine Menge von pr dikatenlogischen S tzen mit Hilfe der Connection Graph Proof Procedure auf Konsi stenz zu pr fen unter bestimmten Bedingungen auch f r regelbasierte Systeme anwend bar ist Die Frage ob durch Erweiterungen oder zus tzliche Bedingungen die CGPP auch bei hybriden Systemen einsetzbar ist f hrt zur Untersuchung der einzelnen Wis sensrepr sentationsformen F r die Bereiche Regelkonsistenz Frame oder Objektkonsistenz und Prozedurkonsistenz werden jeweils spezifische Konsistenzbedingungen erarbeitet und daraus Anforderungen an die Struktur der Frames sowie die Syntax der Regeln und Prozeduren abgeleitet 97 98 KAPITEL 4 SCHLU BEMERKUNGEN Durch die komplexe Verzahnung der Faktenrepr sentation durch Objekte und ihrer Ver arbeitung durch Regeln insbesondere aber durch den Einsatz von Prozeduren ist eine getrennte Betrachtung der Konsistenzbereiche nicht ausreichend um auf die Konsistenz des Gesamtsystems w hrend der Nutzung der wissensbasierten Applikation zu schlie en Parallel zur daher notwendigen Definition einer Gesamtkonsistenz erfolgt die Ent
142. t werden Objekt Ampel A1 Attributname Liste Farbe Liste 1 Liste 1 Wert Quellenname gr n Regel Fl rot Regel S1 rot Prozedur Pl Ausgangsobjekt Abbildung 2 3 Struktur des erweiterten Ausgangsframes Anstelle eines Wertes mit Quellenangabe mu es m glich sein mehrere Werte mit Quel lenangaben in der Reihenfolge des Auftretens abzulegen ohne da die alten Werte einfach berschrieben werden Statt einer einfachen Variablen kann beispielsweise eine Liste f r Wert Quelle Paare f r jedes Attribut vorgesehen werden Abb 2 3 Enth lt eine solche Attributwertliste mehr als einen Eintrag m ssen die Werte auf obige Fallunterscheidung hin untersucht werden Die Auswertung der festgestellten Mehrfachbelegung kann mehr oder weniger aufwendig gestaltet werden Der Entwickler ben tigt als minimale Ausgabe eine Meldung da im letzten Schritt ein unerw nschter Zustand aufgetreten ist Ein komfortables Werkzeug kann die Quellen der Attributwerte nennen oder sofort zur Bearbeitung zur Verf gung stellen 58 KAPITEL 2 DER KONSISTENZBEGRIFF 2 3 6 Bewertung und Auswahl der Testkomponenten Anhand der Repr sentationsformen in einem hybriden System wurden unterschiedliche Komponenten f r einen Konsistenztest erarbeitet Der Aufwand f r den Konsistenztest ist erheblich wenn alle angesprochenen Komponenten in vollem Umfang notwendig sind Im folgenden wird eine Bewertung der Ko
143. t eindeutig in Bezug auf den Wert des Attributes Farbe ist Werden nur zweiwertige Attribute mit frei formulierten Werten zugelassen kann man eine Analogie zu Fall a schaffen OBJEKT Auto ATTRIBUT Farbe UND Farbe Auto rot amp Farbe Auto gr n WERT rot gr n e Bedingungsteil a Der Wahrheitswert des Literals ist sofort durch den Wert des Attributes rot gegeben b Es kann nur dann ein Wahrheitswert ermittelt werden wenn auch hier die Beschr nkung auf zwei Werte gilt oder die Forderung F CGPP erf llt wird Verwendung einer begrenzten Wertemenge mit mehr als zwei Werten und Formulierung von Ausschlu regeln der Form Wenn die Farbe des Autos x ist dann ist die Farbe des Autos F CGPP nicht alle anderen m glichen Farben Bei vielen Eigenschaften ist es sicher unproblematisch nur zwei Auspr gungen f r den Wert zu erlauben Technische Anwendungen erfordern bei ihrer Implementierung oft erweiterte M glich keiten So bietet sich beispielsweise die Verwendung von Proze Frames mit dem mehrwertigen Attribut Proze zustand an um kontinuierliche Prozesse zu beschreiben Analog dazu eignen sich Chargen Frames mit dem mehrwertigen Attribut Bear beitungszustand oder Status bei automatisierten Chargenprozessen zur Repr senta tion 2 3 KONSISTENZ IN HYBRIDEN SYSTEMEN 39 Zusammenfassend kann gesagt werden e Objekte werden in Frames der Form OBJEKT Auto ATTRIBUT Farbe WERT rot gr n blau
144. t von Attributwerten somit eindeutig bestimmt ist k nnen Prozeduren in der auch sp ter im Anwendungsfall auftretenden Datenumgebung getestet werden Mit Hilfe der Ausgangsframes kann zu jedem Attribut die Quelle des aktuellen Wertes festgestellt werden Durch die Unabh ngigkeit der Wissenselemente s S 40 ist auch die Wert nderung eines einzelnen Attributes durch zwei verschiedene Quellen m glich Hier sind dann zwei F lle zu unterscheiden 1 alle Quellen liefern den gleichen Wert oder 2 f r das Attribut werden verschiedene Werte geliefert Den ersten Fall kann man als zun chst unkritische Redundanz auffassen Eine Redundanz als solche ist ein Hinweis auf nicht komplett strukturiertes Wissen aber kein direkter 2 3 KONSISTENZ IN HYBRIDEN SYSTEMEN 97 sondern nur ein potentieller Fehler Potentieller Fehler deshalb weil bei einer nderung eines Wissenselementes die anderen an der Redundanz beteiligten Elemente nicht mit in Betracht gezogen werden Dadurch kann es zum zweiten oben aufgef hrten Fall kommen Werden f r ein Attribut bei einem bestimmten Systemzustand verschiedene Werte geschlu folgert ist das ein Zeichen f r einen Widerspruch in den implementierten Wis senselementen das Wissen ist inkonsistent F r die Erkennung dieser Inkonsistenz ist es erforderlich Mehrfachbelegungen eines Attributes in einem Schritt zuzulassen und zu erfassen Die Implementation der Ausgangsframes mu an diese Anforderungen angepa
145. ten Durchflu durch Ventill ist 5 Durchflu V1 5 1 2 REGELBASIERTE REPR SENTATION 11 Wie sieht es bei Anwendungen aus dem t glichen Leben aus H ufig wird allgemeing ltiges Wissen als Wissen ber ein Exemplar formuliert Wenn diese Pumpe l uft und dieser Tank berl uft dann mu diese Pumpe ausgeschaltet werden Man kann diese Regel aussagenlogisch also auf ein Individuum objektorientiert aus gedr ckt auf eine Instanz bezogen interpretieren Pumpel l uft und Tankl l uft ber Pumpel abschalten Bem ht man sich um eine allgemeine allquantisierte Darstellung in Pr dikatenlogik kann man formulieren f r jede Pumpe die in einen Tank pumpt und jeden an eine Pumpe angeschlossenen Tank gilt Wenn eine Pumpe p eingeschaltet ist und der daran angeschlossene Tank t berl uft dann wird die Pumpe p abgeschaltet Mit der Umsetzung der Verben in Pr dikate T0 T1 repr sentieren aufeinanderfolgende Zeitpunkte ergibt sich VY angeschlossen p t A ein p TO A l uft ber t T0 aus p T1 Regeln die einen Zusammenhang in dieser allgemeinen Form beschreiben werden als generische Regeln bezeichnet und beziehen sich bei objektorientierter Faktenrepr senta tion auf Klassen F r die berpr fung der Pr misse mu diese Kurzform umgewandelt werden Alle bekannten Pumpen und Tanks m ssen in allen m glichen Kombinationen in die Pr misse eingesetzt werden hnlich wie bei einer Summenformel in der M
146. tenlogischen Formeln P1 studiert_Elektrotechnik a P2 h rt Mathematik B P3 ist Freund von c d Fp1 V studiert_Elektrotechnik x gt h rt_Mathematik x Fp2 3 h rt_Mathematik y A studiert_Elektrotechnik y Fp3 3 ist Freund von z K wobei P f r Pr dikat und Fp f r pr dikatenlogische Formel steht P1 wird auch als einstelliges Pr dikat bezeichnet da eine Variable Konstante z B B in P2 oder Funktion enthalten ist P3 ist dementsprechend ein zweistelliges Pr dikat In den Formeln Fp werden Geltungsbereiche der verwendeten Variablen mit Hilfe von Quantoren angegeben Va All Quantor f r alle x gilt Ir Existenz Quantor es existiert ein x f r das gilt Die Inferenzregeln Modus Ponens Modus Tollens und Kettenregel gelten auch in der Pr dikatenlogik wobei die beteiligten Pr dikate freie Variable enthalten k nnen Bei Anwendung der Inferenzregeln m ssen Pr dikate gleichen Namens allerdings auch gleiche Terme enthalten Aus diesem Grund wird der Algorithmus der Unifikation eingef hrt mit dem die syntaktische Gleichheit von Pr dikaten erreicht werden kann Gilt zum Beispiel Fpl sowie P1 in der Form studiert_Elektrotechnik Thomas so bedeutet Unifikation die Ersetzung der allgemeinen Variablen x in Fpl durch die spezielle Auspr gung der Variablen a Thomas Es ergibt sich also die Erkenntnis h rt_Mathematik Thomas Daraus folgt da die Unifikation wohl zu einer Spezialisierun
147. tentyp hier SYMBOL es sich handeln mu Sofern an der entsprechenden Stelle Eingaben gemacht wurden stehen auch der Minimal und Maximalwert oder die Menge der m glichen Werte Abbildung 3 13 zur Verf gung Die Hinweistexte werden den Gegeben heiten jeweils angepa t und die Schaltfl che Ausw hlen ist nur aktivierbar wenn tats chlich Werte zur Verf gung stehen WENN Attribut verkn pft mit Wert Bitte geben Sie den Wert unter Ber cksichtigung der folgenden Hinweise an Hinweis zum Wert Typ Hinweis zum Minimal Wert Hinweis zum Maximal Wert Bitte beachten Sie Es kann noch keine Aussage zum Es kann noch keine Aussage zum das der von Ihnen eingegebene Minimal Wert gemacht werden Maximal Wert gemacht werden Wert vom Typ SYMBOL sein mu M gliche Werte Ausw hlen Wert OK Abbrechen Abbildung 3 13 Dialog f r den Eingabe Baustein Wert Hier macht sich die zus tzliche Arbeit bezahlt Minimal und Maximalwerte oder eine Menge m glicher Werte bei der Klassendefinition anzugeben Der Dialog zur Auswahl m glicher Werte bietet besonders bei komplexeren Pr missen eine wertvolle Hilfe was an dem Beispiel in Abbildung 3 11 deutlich wird 3 3 REGELEDITOR 81 In der Pr misse der Regel tritt die Konjunktion des Attributes Farbe von Fahrrad 1 und Auto 1 auf und soll mit einem konstanten Wert verglichen werden Die m glichen Werte f r Auto 1 sind SCHWARZ BLAU WEI
148. tet werden Kommentar Bl cke erlauben nach dem Anklicken die Eingabe eines einfachen Textes Es ist dem Benutzer berlassen ob er Stichworte verwendet oder umfangreiche Beschrei bungen zur Funktion der folgenden Anweisungen eingibt Der Kommentar zur Prozedur funktion kann ber den Start Punkt auch von dieser Stelle aus bearbeitet werden Der Dialog des Setze Attributwert Blocks entspricht dem des O Ausgangsblocks bei Regeln Abbildung 3 14 Attribut und Objektname werden aus den angezeigten Li sten ausgew hlt und ein Wert wird direkt eingegeben oder aus m glichen Werten bzw okalen Variablen ausgew hlt Eine Besonderheit ergibt sich dann wenn ein Attributwert innerhalb einer generischen For Schleife gesetzt wird Wird als Objektname die lokale Variable z B X gew hlt ber die mit der Schleife F r alle Objekte der Klasse Auto oder in G2 Notation for X each AUTO do iteriert wird erscheinen in der Liste der Attributnamen auch nur diejenigen Attribute die in der Definition der gew hlten Klasse angegeben sind Vor aussetzung daf r ist die grafische Verbindung der Bl cke vor deren Bearbeitung Der funktionale Block hole Wert ist bei einer Prozedurentwicklung mit dem Texteditor nicht unbedingt erforderlich Innerhalb einer Prozedur kann mit der Syntax die Eigen 3 4 PROZEDUREN 87 PROZEDUR PALETTE PROZEDUR WERKSTATT Abbrechen Verwerfen Prozedur erzeugen
149. teuerungen SPS Die Signale an den Eingangsklemmen einer SPS Baugruppe werden zu einem definierten Zeitpunkt als Eingangsabbild gespeichert Die daraus abgeleiteten Steuersignale werden in einem anderen Speicherbereich dem Ausgangsabbild gespeichert soda das Eingangsabbild unver ndert f r alle Aktionen innerhalb einer Bearbeitungs folge eines Zyklus zur Verf gung steht Nachdem alle Programmschritte ausgef hrt wurden wird das Ausgangsabbild komplett an die Ausgangsklemmen bertragen Analog hierzu kann ein wissensbasiertes System aufgebaut werden indem die Bedingungsteile von Regeln und die Parameter von Prozeduren auf Attributwerte von Frames zugreifen die zu der Oberklasse Eingang geh ren w hrend alle Aktionen Attributwerte von Frames der Oberklasse Ausgang ver ndern Sind mit einer Belegung der Eingangs Attribute alle m glichen Schlu folgerungs schritte vollzogen worden steht das System Ein n chster Schritt kann begonnen werden wenn alle Wert nderungen aus den Ausgangs in die Eingangsframes umkopiert wurden Auf diese Weise wird ein schrittweises Arbeiten realisiert das eine wichtige Voraussetzung f r den Konsistenztest bildet da nur dann die Quellen einer Inkonsistenzen sofort ermittelt werden k nnen Der Speicheraufwand f r das Pro tokoll ist ber die Anzahl der im System verwendeten Attribute absch tzbar da nur ein einzelner Schritt protokolliert werden mu
150. twert eines speziellen Objektes zugreifen spezifische Regel oder auf den Attributwert aller Objekte einer Klasse gene rische Regel F r beide Regeltypen steht ein Eingabe Baustein bereit Der Baustein f r generische Pr missen ist durch ein K f r Klassen im Sinnbild gekennzeichnet f r spe 3 3 REGELEDITOR 79 zifische Pr missen wird der Baustein mit der O Kennzeichnung f r Objekt angeboten Informationen zu den Bausteinen kann der Benutzer ber die Hilfe Schaltfl che er halten WENN Attribut von Objekt Bitte geben Sie den Attribut Namen und den Objekt Namen ein Listen Aktualisieren Attribut Name Objekt Name FARBE AUTO 2 GEWICHT AUTO 3 GANGE FAHRRAD 1 LEISTUNG FAHRRAD 2 Attribut Name FARBE Objekt Name OK Abbrechen Abbildung 3 12 Dialog zur Eingabe einer spezifischen Regel Der Dialog f r die Eingabe der notwendigen Informationen zu einem Eingabe Baustein bietet zwei Listenfelder an die alle vom Benutzer erzeugten Attribut und Objekt bzw Klassennamen enthalten Hier besteht nicht die M glichkeit ber die Tastatur einen Namen vorzugeben es k nnen nur bestehende Eintr ge mit der Maus angeklickt werden Abbildung 3 12 Wurde in einem Listenfeld eine Wahl getroffen wird sofort das andere Listenfeld so aktualisiert da nur die noch m glichen Eintr ge angezeigt werden Wird beispielsweise der Attribut Name G nge gew hlt erscheinen im rechten Listenfeld
151. ufen aus mehreren Ele mentaroperationen hier kurz Mutationsfolgen genannt manipuliert werden Der Zu griff auf die Daten geschieht dabei durch Anwendungsprogramme die auf Funktionen des Verwaltungssystems zugreifen Aus den gespeicherten Daten k nnen von mehreren Anwendern zur gleichen Zeit beliebige Auswertungen gewonnen werden Selbstverst ndliche Forderung ist dabei da die Daten in der Datenbank richtig sind wenn auf sie zugegriffen werden kann Der Ausdruck richtig steht dabei f r zwei Aspekte die Korrektheit und die Konsistenz Unter Korrektheit einer Datenbasis wird die bereinstimmung zwischen der realen Welt und ihrer Abbildung durch die Daten verstanden Was unter Konsistenz zu verstehen ist wird in den folgenden Abschnitten behandelt 2 1 1 Konsistenzbedingungen Unter dem Begriff Konsistenz werden in Datenbanksystemen ganz allgemein zwei ver schiedene Sachverhalte verstanden Erstens das Auftreten unterschiedlicher Werte f r ein und das selbe Attribut und zweitens nach Quiel 26 die Abwesenheit von logischen Widerspr chen innerhalb der Datenbank die nach Zehnder 33 auch als semantische Integrit t bezeichnet und im weiteren genauer betrachtet wird Um Konsistenz zu gew hrleisten soll die Aufnahme widerspr chlicher Daten vermieden bzw verhindert werden Neben den Daten werden dazu Konsistenzbedingungen for muliert die bei Manipulationen an der Datenbasi
152. ust nde ist wiederum von dem jeweiligen Wertebereich bzw der Menge m glicher Werte f r jedes Attribut abh ngig Zur Begrenzung dieser Menge an Klauseln ist Wissen ber die Verkn pfung der einzelnen Attribute und Frames bzw der abgebildeten Objekte mit ihren Eigenschaften untereinander erforderlich Es ist denkbar ein eigenes wis sensbasiertes System zu entwickeln das die Aufgabe hat alle technisch sinnvollen Startzust nde zu erzeugen Damit w re ein vollst ndiger Konsistenztest vor der Aus lieferung des wissensbasierten Systems an den Kunden m glich Mit der in hybriden Systemen verwendeten Repr sentationsform der Prozeduren besch ftigen sich die folgenden Abschnitte Die beim objektbasierten Ansatz verwen deten Methoden siehe Kapitel 1 3 2 bed rfen keiner gesonderten Betrachtung da Sie aufgrund ihrer Struktur wie Prozeduren behandelt werden k nnen 2 3 4 Prozeduren Im Aktionsteil von Regeln k nnen mit den bisher vorgestellten Mitteln Attributwerte einzelner Frames neu gesetzt werden Schon die Ver nderung von mehr als zwei oder drei Werten zieht eine un bersichtliche Syntax der Regel nach sich Sind zudem die konkreten Werte nicht bekannt sondern durch Berechnungen zu ermitteln w chst der Wunsch Aktionen zusammenfassen zu k nnen Prozeduren sind das passende Werkzeug zur Erf llung dieses Wunsches Eine Regel die einen Prozeduraufruf im Aktionsteil enth lt kann einen ganzen Komplex von Aktionen ausl sen
153. wendet e Konstante werden vollst ndig in Gro buchstaben geschrieben ROT e Variable beginnen mit einem Gro buchstaben und setzen sich sonst nur aus Klein buchstaben zusammen Person e eine Negation wird durch ein vor dem Literal gekennzeichnet e Literale werden in der Form Farbe Objekt ROT geschrieben e Klauseln aus mehreren disjunktiv verkn pften Literalen werden als Kette der Lite rale dargestellt Farbe Objekt ROT Farbe Objekt BLAU wobei alle Variablen einem Allquantor unterliegen siehe Kapitel 1 1 2 Beispiel 1 Inkonsistente Aussagen Kaufabsicht Person Objekt gt Farbe Objekt ROT Kaufabsicht Person Objekt Farbe Objekt BLAU Kaufabsicht EVA AUTO ist wahr Aufgrund der L schregel f r isolierte Literale ist der Connection Graph dieser Aussagen leer Ein leerer Connection Graph ist aber ein Zeichen f r Konsistenz Die Begr ndun gen f r die hier getroffenen Aussagen finden sich in 15 Kapitel 3 3 Offensichtlich wurde nicht alles Wissen das zur Erkennung der Inkonsistenz notwendig ist in Klauseln umgewandelt Der leere Connection Graph hat seine Ursache in den fehlenden Links der Literale Farbe Objekt BLAU und Farbe Objekt ROT Der gegenseitige Ausschlu der Farben ROT und BLAU kann entsprechende Literale liefern 2 3 KONSISTENZ IN HYBRIDEN SYSTEMEN 47 Zus tzliche Aussage zum gegenseitigen Ausschlu Kaufabsicht Person Objekt gt Farbe Objekt ROT Kaufabsicht Person
154. wie ein Wissensblock in einem wissensbasierten System eingesetzt werden ohne da der Entwickler des Systems den inneren Aufbau des mathematischen Modells kennen mu Mathematische Modelle k nnen dabei z B als Prozeduren in einem Frame realisiert werden 1 5 HYBRIDE SYSTEME 19 1 5 Hybride Systeme W hrend der Entwicklung von industrietauglichen wissensbasierten Systemen wurde erkannt da eine Repr sentationsform allein nicht gen gend Flexibilit t bietet um f r ein gegebenes Problem in jedem Fall eine gute L sung zu erm glichen Marktf hige Entwick lungswerkzeuge wurden auf diese Anforderungen zugeschnitten Neben verschiedenen Repr sentationsformen stellen sie auch in weiten Bereichen konfigurierbare Inferenzme chanismen zur Verf gung Systeme die aus der Kreuzung mehrerer Ans tze zur Wis sensrepr sentation entstehen bezeichnet man als hybride Systeme Hybrides wissensbasiertes System Abbildung der FAKTEN i VERARBEITUNG 1 Regeln RR SERIEN ETE E ETETETT EAEE E NEES EEE E l Frames D monen l ip T Prozeduren Objekte Methoden Ber l Erate eaaet baretit REN EEA E E E ET Re RI E RREEN I Ir mathematische i Modelle Abbildung 1 4 Blockvorstellung eines hybriden wissensbasierten Systems Eine h ufig verwendete Kombination von Wissensrepr sentationsformen umfa t Regeln und einen frame bzw objektbasierten Ansatz In den Objekten wird Faktenwissen zusammengefa t das mit Regeln
155. yntaktischer Test funktionaler Test Dialoge zur Erzeugung von tempor re Kopien der Objekt Wissenselemente Klassen Inkonsistenzerkennung und Regel und Benutzerinformation Prozedurdefinitionen Abbildung A 3 Module f r den Konsistenztest mit ihren Inhalten 110 ANHANG A 4 Das Modul syntaktischer Test In diesem Modul ist alles zusammengefa t was der Benutzer an zus tzlicher Funktio nalit t zu den G2 Grundfunktion ben tigt um eine konsistente Wissensbasis erzeugen zu k nnen Alle zur Erzeugung und Bearbeitung von Wissenselementen notwendigen Aktio nen werden durch Sinnbilder Auswahlmen s und Dialoge f r den Benutzer bersichtlich zusammengestellt Das wichtigste Hilfsmittel ist dabei das Arbeitsblatt Palette das sofort nach dem Start der Entwicklungsumgebung sichtbar ist siehe Abbildung 3 6 auf Seite 71 oder durch einen Navigationsknopf auf dem ersten Arbeitsblatt des Grundmoduls aufgerufen werden kann siehe Abb A 2 Da aM E NEUE KLASSE NEUES OBJEKT NEUE REGEL NEUE PROZEDUR NEUES ARBEITSBLATT Abbildung A 4 Palette der m glichen Wissenselemente Von dieser Palette kann der Benutzer durch Anklicken der Sinnbilder ein neues Wis senselement des dargestellten Typs erzeugen und auf einem Arbeitsblatt ablegen Je nach Wissenselement sind verschiedene Benutzereingaben erforderlich die durch Dialoge abgefragt werden ANHANG 111 Bearbeiten Men punkt eines Dropdown Men
Download Pdf Manuals
Related Search
Related Contents
Dataram DTM64369A memory module Bafle profesional con amplificador Dernier inventaire avant liquidation Prime-Line B 647 Instructions / Assembly Copyright © All rights reserved.
Failed to retrieve file