Zunächst einmal wird die Anwendungsdomäne Diagnostik genauer

Werbung
Studienarbeit
Kommunikation zweier Agenten in d3web
Raphaela Niklaus
Februar 2003
Betreuer:
Dipl. Inform. Mitchel Berberich
Prof. Dr. Frank Puppe
Lehrstuhl für Künstliche Intelligenz
und angewandte Informatik
Bayerische Julius-Maximilians-Universität Würzburg
People can’t share knowledge
if they don’t speak
a common language“
(T. Davenport, Working Knowledge)
1. Problemumfeld, Motivation und Zielsetzung
In diagnostischen Agentensystemen versuchen mehrere Diagnoseagenten, gemeinsam in
Teamarbeit, ein Diagnoseproblem zu lösen. Ihnen ist es möglich zu agieren („gezieltes
Fragestellen“, „Erstellen von Diagnosen“,…,), und zu
interagieren („Konsultation eines
anderen Agenten“, „Kritik der Lösung eines anderen Agenten“, „Fallabgabe an andere
Agenten“,… und vor allem „Verhandlung über eine bestmögliche Falllösung“), also
miteinander zu kommunizieren.
Ein Problem der Kommunikation ist, dass häufig Daten verschiedener Diagnoseagenten intern
anders repräsentiert werden. D.h. es sind Abbildungen nötig, die die Falldaten der einzelnen
Diagnoseagenten aufeinander abgleichen.
Um die Kommunikation zwischen Diagnoseagenten in dieser Arbeit zu realisieren wird als
erster
Schritt
„die
Kommunikation“
allgemein
untersucht.
Anschließend
wird
die
Anwendungsdomäne „Diagnostik“ genauer betrachtet, und wir werden die allgemeine
Agentenkommunikation auf Diagnoseagenten übertragen.
Darauf aufbauend wird dem Experten unter KnowMe ein Editor zur Verfügung gestellt, in den
er sein Abbildungswissen zur Kommunikation eingeben kann. Zur Durchführung der
Abbildungen wird eine Laufzeitkomponente bereitgestellt.
Zuletzt werden noch einmal alle angewandten Verfahren und die gewonnenen Ergebnisse
zusammengefasst. In einer Diskussion werden anschließend Vorteile und Nachteile gezeigt und
auch Verbesserungsvorschläge und Ausblicke erläutert.
-2-
2. Grundlagen
Beschreibung des Problembereichs und Begriffsbestimmung
Zunächst wird nun die Anwendungsdomäne Diagnostik genauer untersucht.
Die „Diagnostik“ charakterisiert
durch bestimmte Eigenschaften den Lösungsprozess für
Probleme. D.h. genauer, dass nach Puppe[90] der Problembereich aus zwei explizit gegebenen
disjunkten Mengen von Problemmerkmalen (Symptomen) und Problemlösungen (Diagnosen),
und aus typischerweise unsicherem Wissen über die Beziehungen zwischen Symptomen und
Diagnosen besteht. Dabei ist ein Problem durch eine eventuell unvollständige Teilmenge der
Symptome charakterisiert und die Lösung eines Problems besteht aus einer oder mehreren
Diagnosen. Wenn die Qualität der Problemlösung durch Erfassung zusätzlicher Symptome
verbessert werden kann, so ist es eine Teilaufgabe der Diagnostik zu bestimmen, ob und welche
zusätzlichen Symptome angefordert werden sollen. Dies kann graphisch anschaulich in
Abbildung 1 dargestellt werden:
X
?
X
X
X
X
X
X X
X
X
X
X
Problemmerkmale
X
Problemlösungen
Abbildung 1: Graphische Darstellung der „Diagnostik“
Diagnostisches Wissen kann unterschiedlich dargestellt und ausgewertet werden.
Es gibt zum Beispiel fallvergleichende (statistische) Diagnosesysteme, modellbasierte
Diagnosesysteme oder heuristische Diagnosesysteme.
In dieser Arbeit werden ausgehend von d3web ausschließlich heuristische (assoziative)
Diagnosesysteme im Bereich der medizinischen Diagnostik verwendet.
Heuristische Diagnosesysteme basieren auf Problemen, bei denen Erfahrungswissen verfügbar
ist. Man hat das Wissen, welche Merkmale oder Merkmalskombinationen mit welcher
Unsicherheit auf Zwischen- und Endlösungen hindeuten.
„Merkmal deutet auf Lösung“ (M -> L mit Unsicherheit x). Es wird die Lösung ausgewählt, die
die höchste Gesamtbewertung auf der Basis der beobachteten Merkmale erzielt.
Da heuristische Diagnosesysteme auf Erfahrungswissen von verschiedenen Experten beruhen,
ist es schwierig die Kombination sehr vieler Einzelbewertungen für eine Lösung überschauen zu
-3-
können. Daher ist die Technik der schrittweisen Abstraktion von Merkmalen zu Lösungen
notwendig. Einzelne Merkmalen, die von jedem Experten auf eine andere Art formuliert
werden, können zu einem Merkmal zusammengefasst werden.
Z.B.
Patient sagt: Mein Puls ist sehr schnell.
Arzt sagt:
Sie haben einen Puls von über 90 Schlägen pro Minute.
Diese beiden Aussagen können zusammengefasst werden zu dem Begriff „Tachykardie“.
Jeder Agent stellt ein Diagnosesystem dar, das selbständig Probleme in seinem Problembereich
lösen kann. Es gibt unzählige Definitionen von Agenten, in dieser Arbeit wird die allgemeine
Definition nach [Russelt und Norvig, 95]verwendet:
„For each possible percept sequence, an ideal rational agent should do whatever action is expected to maximize its performance measure, on the basis of the evidence provided by the percept sequence and whatever built-in knowledge the agent has.”
Übertragen auf diagnostische Agentensysteme heißt das, dass jeder Diagnoseagent seine eigene
Wissensbasis besitzt.
Eine Wissensbasis umfasst die zur Problemlösung notwendige Information z.B. Wissen,
Dokumente, Merkmalsmenge, Regeln, Diagnosen.
Dabei versteht man unter Wissen nach [Puppe, 90], Daten mit impliziten oder expliziten
Angaben über ihre Verwendung zur Lösung von Problemen.
Regeln (z.B. A->C) haben immer eine Vorbedingung und eine Aktion, welche dann ausgeführt
werden darf, wenn die Vorbedingung erfüllt ist.
Der Agent benutzt seine Wissensbasis autonom, jedoch auch abhängig von der Kommunikation
mit anderen durch Wissensaustausch zur Problemlösung.
D.h., das mitgegebene Wissen ermöglicht es dem Diagnoseagenten Teilprobleme zu lösen,
jedoch ist es hier für die Lösung diagnostischer Probleme unverzichtbar Informationen
untereinander im „Team“ auszutauschen.
Jeder Agent besitzt also seine eigene Wissensbasis mit seinem persönlichen Wissen. Zusätzlich
gibt es noch eine für alle Agenten gemeinsam Terminologie-Wissensbasis, die in unserem
System den Kern aller Verbindungen, im Idealfall vollständig vom Benutzer abgekapselt,
darstellt. Siehe dazu auch Abbildung 2.
-4-
AGENT1
AGENT2
Wissensbasis1
Wissensbasis2
„Teminologie-Wissensbasis“
AGENT3
AGENT4
Wissensbasis3
Wissensbasis4
Abbildung
2:
Kommunikation
von
Agenten
über
eine
gemeinsame
Terminologie-Wissensbasis
Es können also alle Wissenslieferanten selbst ihr Abbildungswissen von den einzelnen Agenten
zur Terminologie-Wissenbasis eingeben oder verändern. Das heißt, um bei unterschiedlichen
internen Begriffswelten eine gemeinsame Terminologie zur Kommunikation verwenden zu
können, müssen jeweils die Daten der verschiedenen Agenten in eine gemeinsame
Terminologie übersetzt werden.
Das eigentliche Hauptziel dieser Arbeit ist es also Möglichkeiten zu schaffen, Abbildungen
zwischen den Daten des Agenten und er Terminologie-Wissensbasis zu erstellen, um dadurch
semantische Unterschiede auszugleichen.
Die wichtigste Grundlage für die Kommunikation, also für den Datenaustausch, ist die
Erstellung einer gemeinsamen Terminologie/Ontologie zwischen den Diagnoseagenten.
Eine Terminologie [Puppe, 90] besteht aus Begriffen, die wichtige Konzepte des Fachbereichs
bezeichnen und im Gegensatz zur Alltagssprache präzise definiert sind.
Die Ontologie spezifiziert nach [WS 2001/2002 Vorlesung Verteilte KI] bereits die Objekte,
Konzepte und Beziehungen in einem bestimmten (realistisch begrenzten) Gebiet – „Vokabular“.
-5-
Die Entwickler sollen sich bereits vor Beginn der Agentenentwicklung auf eine möglichst
einheitliche Terminologie einigen, die dann auch als agenteninterne Terminologie Verwendung
findet. Damit wird die spätere Übersetzung erheblich vereinfacht.
Z.B.:
TEMINOLOGIE VON AGENT 1: „TEMPERATUR = ÜBER 37“
TEMINOLOGIE VON AGENT 2: „TEMPERATUR = ERHÖHT“
So kann beides auf den Begriff „FIEBER“ gesetzt werden.
Aus Gründen der Normierung wird dem Benutzer in dem entwickelten Editor dieser Arbeit zum
einen die Möglichkeit geboten alle bereits definierten Begriffe in der TerminologieWissensbasis anzuschauen und diese in der eigenen Wissensbasis exakt zu verwenden. Er kann
Teilbäume der Terminologie direkt in seinen Wissensbasis übernehmen oder eigene Begriffe,
die noch nicht in der Terminologie vorhanden sind dort hinzufügen.
Die Kernelemente der Wissensrepräsentation sind Merkmale und Merkmalsabstraktionen:
Es gibt hierzu verschiedene Typen:
Multiple-Choice
Welche Sprachen sprichst du?
O Englisch
O Deutsch
O Französisch
O Japanisch
O unbekannt
O nein/sonstiges
Der Benutzer kann eine/mehrere Sprachen oder „unbekannt“ oder „nein/sonstiges“ auswählen.
Wählt er unbekannt oder nein/sonstiges so kann er keinen Sprache auswählen. Diese drei
Gruppierungen schließen sich gegenseitig aus.
-6-
One-Choice
Wo ist dein Geburtsort?
O Berlin
O Würzburg
O Rom
O nein/sonstiges
Der Benutzer hat nur eine Auswahlmöglichkeit. Er markiert entweder
eine der drei Städte oder „nein/sonstiges“
Boolsch
Bist du älter als 18 Jahre
O ja
O nein
Boolesche Werte stellen eine Art von One-Choice-Typ dar.
Der Benutzer hat nur eine Auswahlmöglichkeit, d.h. er muss entweder ja oder nein markieren.
Numerisch
Wie alt bist Du
O __________
Bei dem numerischen Typ muss der Benutzer seinen Antwortwert selbst eingeben, Hier z.B. 24.
Gibt der Benutzer keinen oder einen falschen, also nicht definierten Begriff ein, so muss eine
Anzeige erscheinen, die ihn darauf hinweist und ihn zu einer erneuten, anderen Eingabe
auffordert.
-7-
Lösungsklassen und Lösungen
-
Status (etabliert, unsicher oder ausgeschlossen)
Dargestellt werden die Abbildungen zwischen den Daten der einzelnen Agenten und der
Teminologie-Wissensbasis im Editor in Tabellen.
In diesen Tabellen stehen die Quell-Merkmale, von denen ausgegangen wird in der ersten Zeile
und die Ziel-Merkmale, auf die abgebildet wird, in der ersten Spalte.
Nun kann man entsprechend der Zeile und der Spalte Abbildungen durch „ankreuzen“
definieren.
Hier nun einige Beispiele:
Welchen Ausbildungsabschluss hast Du?
Abitur
Abitur
Diplom
Realschule
Hauptschule
X
anderen Abschl.
1X
2X
3X
keinen Abschl.
Die Tabelle behandelt die Abbildung einer One-Choice-Frage auf eine
Multiple-Choice-Frage.
Die erste Spalte zeigt drei Abschlussmöglichkeiten als Antwortmöglichkeiten der
One-Choice-Antworten.
Die erste Zeile zeigt vier Abschlussmöglichkeiten als Antwortmöglichkeiten der
Multiple-Choice-Antworten.
Abgebildet wird „Abitur“ auf „Abitur“.
Die Rückabbildung von „Abitur“ kann exakt auf „Abitur“ definiert werden.
Abgebildet wird „Diplom“ oder „Realschule“ oder „Hauptschule“ auf „anderen Abschluss“.
In diesem Fall ist von „anderen Abschluss“ keine exakte Rückabbildung möglich.
Entweder kann „anderen Abschluss“ auf „Diplom“ oder auf „Realschule“ oder auf
„Hauptschule“ abgebildet werden.
-8-
Auf „keinen Abschluss“ wird nichts abgebildet.
Welchen möchtest Du trinken?
Wasser Apfelsaft Orangensaft
Apfelsaftschorle
1X
Orangensaftschorle
1X
1X
1X
Nein/sonstiges
Die Tabelle behandelt die Abbildung einer One-Choice-Frage auf eine
Multiple-Choice-Frage.
Die erste Spalte zeigt vier Abschlussmöglichkeiten als Antwortmöglichkeiten der
One-Choice-Antworten.
Die erste Zeile zeigt vier Abschlussmöglichkeiten als Antwortmöglichkeiten der
Multiple-Choice-Antworten.
Abgebildet wird „Wasser“ und „Apfelsaft“ auf „Apfelsaftschorle“.
Es muss also beides, „Wasser“ und „Apfelsaft“, markiert sein, um sie auf „Apfelsaftschorle“
abzubilden.
Bei der Rückabbildung wird „Apfelsaftschorle“ direkt auf „Wasser“ und „Apfelsaft“
abgebildet.
Abgebildet wird „Wasser“ und „Orangensaft“ auf „Orangensaftschorle“.
Bei der Rückabbildung wird „Orangensaftschorle“ direkt auf „Wasser“ und „Orangensaft“
abgebildet.
Abgebildet wird „Tomatensaft“ auf „Tomatensaft“.
Die Rückabbildung kann exakt von „Tomatensaft“ auf „Tomatensaft“ abgebildet werden.
Es gibt auch die Möglichkeit numerische Werte abzubilden:
Jedoch ist hier das Problem, dass der Benutzer nichts auswählen kann, sondern seinen eigenen
Wert über ein Editor-Fenster eingibt.
Z.B. bei Abbildungen von numerischen Antworten auf numerische Antworten.
Die Frage, „Wie hoch ist die Temperatur? (in Celsius). Ist nun die Temperatur in der
Terminologie-Wissensbasis in Fahrenheit abgespeichert, so muss eine Abbildung des CelsiusWertes auf den Fahrenheit-Wert definiert werden.
Verwirklicht wird dies mit einem zusätzlichen Editor für den Experten, in den er eine Formel
für die Umrechnung eingeben kann.
In diesem Fall muss für die Umrechnung von Celsius in Fahrenheit die Formel
„ 1,8 * (‚den eingegebenen Wert’) + 32“ eingegeben werden.
-9-
Gibt der Benutzer nun seinen Celsius-Wert ein, so wird er anschließend durch die Formel in
Fahrenheit umgewandelt.
Bei Abbildungen von One-Choice auf numerische Werte sieht es folgendermaßen aus:
Wie groß bist Du?
gering
160cm
mittel
groß
sehr groß
X
175cm
X
190cm
X
205cm
X
Die erste Zeile zeigt vier Größenbewertungen als Antwortmöglichkeiten der
One-Choice-Antworten.
Die erste Spalte zeigt vier Größenangaben in cm als Antwortmöglichkeiten der
numerischen Antworten.
Numerische Werte stehen für eine Intervall von null oder einem bereits gegebenen Wert bis
zum dem entsprechenden numerischen Wert.
Abgebildet wird gering auf 0 bis 160cm.
Abgebildet wird mittel auf >160cm bis 175.
Abgebildet wird groß auf >175cm bis 190.
Abgebildet wird sehr groß auf >190cm bis 205 .
Alle Rückabbildungen sind möglich.
Hat man also ausschließlich UND-Verknüpfungen und keine ODER-Verknüpfungen, so ist
immer eine exakte Rückabbildungen möglich. Doch dazu mehr in dem Kapitel „Erweiterung“
- 10 -
Die Durchführung und die anschließende Abspeicherung der Abbildungen werden in XSL
gemacht. Als Beispiel werden nun die oben in Tabellenform gezeigten Beispiele in XSL
abgebildet. Siehe also zum Vergleich jeweils oben.
Welchen Ausbildungsabschluss hast Du?
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="/">
<xsl:apply-templates></xsl:apply-templates>
</xsl:template>
<xsl:template match="//Question/Answer[@value='Diplom']">
<Answer value="anderen Abschluss"/>
</xsl:template>
<xsl:template match="//Question/Answer[@value='Realschule’]“>
<Answer value="anderen Abschluss"/>
</xsl:template>
<xsl:template match="//Question/Answer[@value='Hauptschule’]“>
<Answer value="anderen Abschluss"/>
</xsl:template>
<xsl:template match="//Question/Answer[@value='Abitur’]“>
<Answer value="Abitur’]>
</xsl:template>
</xsl:stylesheet>
- 11 -
Was möchtest du trinken?
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="/">
<xsl:apply-templates></xsl:apply-templates>
</xsl:template>
<xsl:template match="//Question/Answer[@value='Wasser']">
<xsl:choose>
<xsl:when test="//Question/Answer[@value='Apfelsaft']">
<Answer value="Apfelsaftschorle"/>
</xsl:when>
</xsl:choose>
</xsl:template>
</xsl:template>
<xsl:template match="//Question/Answer[@value='Wasser']">
<xsl:choose>
<xsl:when test="//Question/Answer[@value='Orangensaft']">
<Answer value="Orangensaftschorle"/>
</xsl:when>
</xsl:choose>
</xsl:template>
</xsl:stylesheet>
Wie hoch ist deine Temperatur?
Im Beispiel wird 36C in 96,8Fahrenheit umgerechnet.
- 12 -
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="/">
<xsl:apply-templates></xsl:apply-templates>
</xsl:template>
<xsl:template match="//Question/Answer[@value<='36']">
<xsl:variable name="fahrenheit" select="1.8*number(@value)+32"></xsl:variable>
<Answer value="{$fahrenheit}"/>
</xsl:template>
</xsl:stylesheet>
Abbildungsmöglichkeiten
Für die Kommunikation zweier Diagnoseagenten werden Abbildungen zwischen der
Terminologie der jeweiligen Agenten und der gemeinsamen Terminologie erstellt, die
Unterschiede in der Wissensrepräsentation aufeinander abgleichen.
Es werden folgende Arten von Abbildungsmöglichkeiten betrachtet:
1:1-Abbildung,
1:n-Abbildung,
n:1-Abbildung,
n:m-Abbildung
Es gibt die Möglichkeit von
 1 : 1 –Abbildungen
d.h. ein Begriff wird genau auf einen anderen Begriff abgebildet
(Identitätsabbildung)
F1
F1
 1 : n –Abbildungen
Ein Begriff kann auf mehrere Begriffe abgebildet werden
F1
F1
F2
F3
- 13 -
 n : 1 –Abbildungen
Mehrere Begriffe können auf einen Begriff abgebildet werden, hier ist das Problem,
sobald die Begriffe durch ein „Oder“ verknüpft sind, ist nicht immer eine
Rückabbildung möglich
F1
F4
WENN F1 UND F2 UND F3
DANN F4
F2
F3
Problem: WENN F1 ODER F2 ODER F3 DANN F4
 m : n –Abbildungen
d.h. mehrere Begriffe können auf mehrere Begriffe abgebildet
werden, aber auch hier gelten die gleichen Probleme wie bei
n : 1 –Abbildungen
F1
F4
F2
F5
F3
F6z
Kann hierbei ein Element auf mehrere Arten hergeleitet werden, so kann teilweise das Problem
entstehen, dass nicht immer eine Rückabbildung möglich ist. Doch dazu genaueres in
4. Erweiterungen.
Verschiedene Kommunikationsarten
Direkte Kommunikation zwischen den Agenten
Bei der direkten Kommunikation von mehreren Agenten untereinander gibt es zwischen je zwei
Agenten einen Kommunikationskanal, d.h. jeder Agent übersetzt seine Sprache direkt in die
Sprache seines Kommunikationspartners. Das setzt auch voraus, dass jeder Agent die
Repräsentation der Falldaten jedes anderen Agenten kennt. Für diese Art der Kommunikation
müssen zwischen je zwei kommunizierenden Agenten zwei Abbildungen definiert werden.
AGENT1
AGENT2
AGENT3
AGENT4
Hier im Beispiel sind 12 Abbildungen notwendig.
- 14 -
Kommunikation über eine „universelle Sprache“
Bei der Kommunikation von mehreren Agenten über eine „universelle Sprache“ werden die
verschiedenen Sprachen aller Agenten in eine gemeinsame Sprache übersetzt. Die Agenten
kommunizieren über diese gemeinsame Sprache miteinander. Es sind also nur Abbildungen von
den einzelnen Agenten in diese „universelle Sprache“ nötig.
AGENT1
AGENT2
„universelle Sprache“
AGENT3
AGENT4
Hier sind genau 8 Abbildungen notwendig.
Um sich nun für eine Kommunikationsart entscheiden zu können, werden zunächst Vorteile und
Nachteile der einzelnen Verfahren aufgezeigt werden.
Vorteile einer „universellen Sprache“:
-
es müssen weniger Abbildungen zum Ausgleich der semantischen Unterschiede
zwischen den einzelnen Agentensprachen erstellt werden
(im Beispiel sind 8 statt 12 Abbildungen notwendig)
die Aktualisierung und Wartung wird vereinfacht
Nachteile einer „universellen Sprache“:
-
kommuniziert jeder Agent über eine universelle Sprache, so leidet die
Gesamtperformance der Problemlösung
Vorteile der „direkten Kommunikation“
-
Agenten können sich bei speziellen Anfragen, Teilproblemen, usw., direkt an den
dafür
zuständigen Agenten wenden, dadurch ist eine bessere Übersetzung möglich
Nachteile der „direkten Kommunikation“
-
je zwei Agenten müssen sich verständigen können, d.h. es müssen Abbildungen von
jedem Agenten zu allen anderen Agenten erstellt werden
(im Beispiel sind 12 statt 8 Abbildungen notwendig)
-
die Aktualisierung und Wartung wird erschwert
- 15 -
Vergleichssysteme für die „Kommunikation von Agenten“
„Ontoprise entwickelt semantische Technologien und Anwendungen. Mit diesen Technologien
können heutige IT Systeme in Ihrer Funktionalität deutlich verbessert werden. Zudem gestalten
wir aktiv die zukünftige Internet-Landschaft. Eine Umgebung, die unsere Sprache spricht und
unseren Anforderungen gerecht wird. Eine Plattform, die den einfachen Austausch von Ideen
unterstützt. Das SemanticWeb™ wird diese Plattform sein. Semantik ist der entscheidende
Schritt von der Informationstechnologie zur Wissenstechnologie. Ontoprise ist führend in der
Entwicklung semantischer Technologien und ist damit in der Position, zukünftige Standards zu
definieren.“
Das Unternehmen „Ontoprise“
Die Ontoprise GmbH, Karlsruhe, entstand 1999 als Spin-Off der Universität Karlsruhe. Das
Unternehmen ist führender Anbieter von semantischen Technologien und Anwendungen. Die
Smarter Knowledge Suite von ontoprise auf Basis semantischer Technologien ermöglicht die
einfache Integration des kompletten Unternehmenswissens aus heterogenen Datenquellen.
Zudem erlaubt sie einen intelligenten Zugriff darauf.
Durch den Einsatz von Wissensmodellen rückt die Bedeutung von Informationen in den
Vordergrund.
Der Einsatz von Smarter Knowledge ermöglicht die einfache Integration, den intelligenten
Zugriff auf Wissen und das Retrieval von Wissen sowie die flexible Wartbarkeit der Systeme,
da diese nicht mühsam programmiert, sondern intuitiv modelliert werden. Die Software ist in
der Lage, Inhalte aus Dokumenten und Datenbanken zu lösen und über regelbasierte
Ableitungssysteme neues Wissen zu generieren.
Die Produkte von Ontoprise sind OntoBroker v3.0, OntoEdit v2.0 und SemanticMiner v1.0. In
dieser Arbeit wird nur näher OntoEdit und OntoMap (ein Zusatzprogramm) eingegangen, da
dies die eigentlichen relevanten Produkte für diese Arbeit sind.
- 16 -
OntoEdit
OntoEdit ist ein Editor, der den Benutzer bei der Erstellung von Ontologien und deren
Verwaltung unterstützen soll. Auch bietet OntoEdit eine Vielzahl an Funktionen und
Exportfiltern für alle gängigen Repräsentationssprachen des Semantic Webs ( auf Basis des
W3C Standarts).
Hier nun ein Beispiel zur Erstellung einer Ontologie.
Zunächst muss der Benutzer eine neue Ontologie öffnen.
Mit OntoEdit kann der Benutzer Ontologien in einer „ is - a“ Hierarchie erstellen. Das heißt,
dass subconcepts alle Eigenschaften ihrer superconcepts besitzen. Wird zum Beispiel „Mann“
als subconcept von „Person“ definiert, so hat „Mann“ alle Eigenschaften von „Person“, weil
„Mann“ „ is – a “ „Person“.Um ein neues Konzept einzufügen muss der Benutzer das
superconcept auswählen und den ‚+’-Button drücken.
Im folgenden Beispiel sind nun „Person“ und „Firma“ als subconcepts von „Root“ (die
vordefinierte Wurzel der Hierarchie) und „Mann“ und „Frau“ als subconcepts von Person
definiert.
Als nächstes werden relations/Attribute erstellt. Um eine relation zwischen Konzepten zu
definieren muss man zunächst die gewünschten Konzepte markieren und dann „insert relation“
im Kontextmenü auswählen. Es öffnet sich nun eine Dialogbox, in der der Benutzer den
Wertebereich und die Kardinalität festlegen kann.
Im Beispiel ist nun das Plugin „instance ausgewählt. Auf der rechten Seite kann man die
Instanzen des ausgewählten Konzeptes auf der linken Seite sehen. Hier sind wieder alle
Instanzen auch Instanzen der superconcepts. Das heißt also „Raphaela Niklaus“ ist eine Instanz
von „Frau“, und gleichzeitig eine Instanz von „Person“.
- 17 -
Sind bereits erstellte Ontologien vorhanden und der Benutzer möchte nun zwischen zwei
Ontologien Abbildungen erstellen, so ermöglicht dies
OntoMap
OntoMap ist ein Editor speziell für die Abbildungserstellung zwischen zwei Ontologien.
Durch die zwei „dropdown-lists“ kann der Benutzer zwei bereits erstellte Ontologien
auszuwählen. Anschließend gibt es verschiedene Abbildungsmöglichkeiten.
Der Benutzer kann durch Drag&Drop-Pfeile
-
Konzepte auf Konzepte abbilden (siehe blauer Pfeil)
-
Attribute auf Konzepte abbilden (siehe lila Pfeil)
-
Attribute auf Attribute abbilden, (siehe roter Pfeil), jedoch müssen bei dieser Art
von Abbildung zunächst deren Konzepte aufeinander abgebildet werden sonst wird
einfach eine Attribute auf Konzept Abbildung definiert
-
„relations“ auf „relations“ abbilden,
Attributes und „relations“ sind beide mit dem „R“-icon.
Relations verbinden Konzepte miteinander (im Bsp. Person works_for Company)
Attribute markierten auf Kozepte (im Bsp. name of Person is of range STRING).
Um relations mit relations zu verknüpfen, muss der Benutzer vorher alle
zugewiesenen Konzepte (hier Company und enterprise) auswählen, danach kann er
die relation auf relation Abbildung definieren.
- 18 -
OntoBroker™
Logik und Methoden der künstlichen Intelligenz sind anwendbar
Durch offene Architektur und den Einsatz von wohl definierten Schnittstellen =>
Einfache und flexibleIntegration in allen gängigen Umgebungen und Anwendungen
Modularer Aufbau => bedarfsgerechte und beliebig erweiterbare Implementierung
Hohe Skalerbarkeit => ermöglicht Anpassung an jegliche Einsatzszenarien
SemanticMiner
Der SemanticMiner ist eine Knowledge Retrieval Plattform, mit der man einfach und schnell
das relevante Wissen in einem Unternehmen entdecken kann. Auf Basis semantischer
Technologien
erleichtert
der
SemanticMiner
die
Navigation
und
ermöglicht
die
Zusammenstellung geeigneter Anfragen, welche die Relevanz der Suchergebnisse drastisch
erhöhen. Doch das ist erst der Anfang. Die Smarter Knowledge Access Anwendungen zur
direkten Integration in die gewohnte Arbeitsumgebung, zur graphischen Navigation in
Wissensnetzen, zum Aufbau intelligenter Berater, zur flexiblen Konfiguration von Produkten
und weitere Produkte ergänzen das Angebot der ontoprise.
- 19 -
Die Frage ist nun welche Sprache kann man verwenden, um Ontologien zu beschreiben?
Betrachten wir zunächst einmal XML (Extensible Markup Language).
Reinem XML fehlen die geeigneten Primitive als auch Domänenspezifische ontologisches
Vokabular. So kann die Metasprache lediglich die Struktur und Syntax bestimmen. Doch die
Semantik ist für XML ein Problem. Es fehlen die üblichen Begriffe einer Framesprache, wie
z.B. “Klasse” und “Attribut”. Diese könne zwar deklariert werden, es fehlt jedoch ein allgemein
anerkannter Rahmen.
Also ging man den nächsten Schritt in Richtung RDF/S.
RDF - Resource Description Framework
RDF bedient sich der Syntax von XML, ohne dabei Annahmen über ein bestimmte
Anwendungsgebiet vorauszusetzen. Es existiert auch kein vordefiniertes Vokabular zur
Beschreibung von Metadaten, sondern bietet die Möglichkeit, verschiedene Standards
einzubetten oder gar neue zu definieren.
RDF-Datenmodell : Subjekt – Prädikat – Objekt
So zum Beispiel die einfache Aussage,
“http://... has the creator Mustermann.“, die nach
dem Schema S-P-O aufgebaut ist.
Als Programm sieht dieses Beispiel folgendermaßen aus:
<?xml version="1.0"?>
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:s="http://description.org/schema/">
<rdf:Description about="http://…">
<s:Creator>Mustermann</s:Creator>
</rdf:Description>
</rdf:RDF>
In Zeile eins wird zuerst die zu verwendende XML-Version festgelegt, diese
Information ist für den Parser wichtig. Danach folgend in Zeile zwei und drei,
werden die XML-Namespaces [XMLNS99] (Namensräume, aus denen die
Worte der verwendeten Syntax stammen dürfen) referenziert. Die vierte Zeile
beinhaltet die zu beschreibende Ressource, welche durch ‚ Description
about=“...“ ’ bezeichnet wird.
- 20 -
Ein weiteres Merkmal für die Flexibilität von RDF ist die Verwendung von
Strukturierten Werten, d.h. verschachtelten Eigenschaften.
Z.B. die Eigenschaft Creator hat strukturierte Daten, im speziellen E-Mail und
Name:
"http://... has creator a1
and a1 has name Mustermann and e-mail [email protected]"
007
RDF-Schema
Das RDF-Modell beschreibt Ressourcen durch Eigenschaften, über die jedoch
zunächst keine näheren Aussagen gemacht werden hinsichtlich ihrer
Charakteristiken, diese werden erst im RDF-Schema als gültiges Vokabular definiert.
In diesen Schemas wird für jede Eigenschaft festgelegt, was sie für eine Bedeutung
hat, welche Werte für diese Eigenschaften erlaubt sind, welche Arten von
Ressourcen diese Eigenschaften besitzen und, welche Beziehungen sie zu anderen
Eigenschaften haben. Diese Typen von Eigenschaften (property types) werden
charaktersiert durch:
Klassen: Class, Property, Resource
Properties: SubClassOf, SubPropertyOf, seeAlso,
isDefinedBy,…
-> Einschränkungen: domain, range
RDF/S bietet zwar Möglichkeiten Ontologien zu beschreiben. Trotzdem fehlen
wesentliche Bestandteile, um die Mächtigkeit von Ontologien auszuschöpfen. Nämlich
die wesentlichen Konstrukte und Relationen innerhalb von Klassen und über Hierarchie
bzw. Klassenebene hinweg. Formale Semantik und ein ausgeklügeltes Inferenzenmodell
sind - neben einer verfeinerten Modellierung von Primitiven – wesentliche
Erweiterungen, welche die Sprachen bieten, welche genau aus dieser Anforderung heraus
entstanden.
Dann folgte die Entwicklung von OIL und DAML-ONT
OIL ist das Ergbenis im Rahmen von On-To-Knowledge, einem contentdriven Projekt
aus der Information Society Technologies (IST), welches seit 1999 läuft. Das Ziel ist es,
Webbasierendes Wissen effizient aufzubereiten, so daß jedermann ( ob IT-Spezialist
oder nicht ) intuitiv verständlich darauf zurückgreifen kann. Dabei stützte man sich stark
auf die Entwicklungen aus der KI ab, welche den Begriff der Ontologie mit sich
brachten und somit die daraus resultierende Ontologiesprache OIL entstand.
- 21 -
Etwa ein Jahr später initiierte die US-Regierung
ebenfalls aus denselben Beweggründen das Projekt
„DARPA Agent Markup Language (DAML)“,
dessen Produkt die Ontologiesprache
„DAML-ONT“ war.
Die RDF/S Klassen Definitionen wurden weiterentwickelt und verfeinert. Schnell
wurden Parallelen zu OIL entdeckt und anfangs Erfolge von OIL
integriert. Schließlich wurden beide Sprachen zusammengefasst und als W3C-Standard
zur Beschreibung von Ontologien definiert: „DAML+OIL“
war geboren.
Eine Möglichkeit Ontologien zu definieren, zu verändern oder zu vergleichen bietet „UBOT“,
ein Programm, welches aus verschiedenen Tools besteht .UBOT ist vergleichbar mit dem
Wissenserwerbssystem KnowMe.
Eines dieser Tools ist aerodaml-mapper, welches ein Editor speziell für Abbildungen zwischen
DAML-Ontologien ist. Vergleichbar ist dieses Tool mit dem entwickelten Plugin AgentsPlugin
dieser Arbeit.
Für die Wissensrepräsentation verwendet UBOT die Sprache DAML (DARPA Agent Markup
Language).
UBOT bietet die Möglichkeit in „aerodaml-mapper“ zwei Ontologien als Baumformat in 1 und
2 zu laden ( load Ontology). Der Benutzer kann jeweils ein Element in jeder Ontologie
markieren. Anschließend hat er die Möglichkeit zwischen diesen markierten Elementen eine
Abbildung als „SameClassAs“ zu erzeugen(create link), oder eine bereits bestehende Abbildung
zu löschen ( Remove link).
Hat der Benutzer Abbildungen definiert, so kann er sich die Definitionen in der DAML-Sprache
im unteren Editor anzeigen lassen ( Map).
Zu jeder Zeit kann der Benutzer seine Abbildungsdefinitionen abspeichern ( save)
Es können beliebig viele Abbildungen zu Elementen einer anderen Ontologie erstellt werden.
D.h. n:n -Abbildungen. Angezeigt werden die erstellten Abbildungen in einer Tabelle. Die
- 22 -
Tabelle ist angepasst an den oberen Editor, d.h. nach der Abbildungsdefinition erscheinen die
Elemente in der Tabelle jeweils direkt unter der zugehörigen Ontologie. Elemente einer
Abbildungen stehen in einer Zeile verbunden durch die Spalte „SameClassAs“.
.
Abb. 3 der aerodaml-mapper
Jedoch sind im Gegensatz zu OntoMap von Ontoprise in Ubot nicht s näheres zu Relationen
zwischen Elementen einer Ontologie erwähnt. Auch findet man nichts von
Attribut-concepts-Abbildung usw.
Vergleicht man beide Systeme miteinander, so haben die Tools Ontoprise bei weitem mehr
Möglichkeiten für den Benutzer, was Abbildungen zwischen Ontologien betrifft, als Ubot.
- 23 -
Hier ist nun ein Auszug aus der Daml Ontologie mit den Elementen aus dem aerodaml-mapper.
(die verwendeten Elemente sind markiert)
Extraction Class
Description
Examples
PERSON
EMAIL
An email address
[email protected]
PHONENUM
A telephone/fax number
212-555-5555
NATIONALITY
Membership in a particular nation
American, Russian, Arab
ABSOLUTEDATE
A specific day
May 31, 2002, Thu Jul 18
AGO
A time earlier than the present time
2 years ago, this morning
HOLIDAY
All US holidays
Time
New Year, Christmas, Labor
Day
Organizations
COMPANY
EDUCATION
LEGAL
A commercial organization
An organization that provides instruction; an institution for teaching
Citigroup Inc., Capital One
Financial Corporation
City College of New York,
Harvard University, Martin
Luther King School
An organization for the administration Fourth circuit court of apof justice
peal, The supreme court
- 24 -
Das Beispiel im Aerodaml Mapper sieht in DAML-Sprache folgendermaßen aus:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE rdf.RDF [
<!ENTITY a"http://ubot.lockheedmartin.com/ubot/2002/08/aerodaml-ont.daml#>
<!ENTITY rdf"http://www.w3.org/1999/02/22-rdf-syntax-ns#>
<!ENTITY rdfs"http://www.w3.org/2000/01/rdf-schema#>
<!ENTITY daml"http://www.daml.org/2001/03/daml&oil#>
]>
<rdf:RDF xmlns:a="&a;"
xmlns="&rdfs;"
xmlns:rdf="&rdf;"
xmlns:daml="&daml;"
>
<daml:Class
rdfabout="http://ubot.lckheedmartin.com/ubot/2002/08/aerodaml-
ont.daml#EDUCATION">
<daml:sameClassAs
rdf:resource="http://ubot.lockheedmartin.com/ubot/2002/8/aerodaml-
ont.daml#EMAIL"/>
<daml:sameClassAs
rdf:resource="http://ubot.lockheedmartin.com/ubot/2002/8/aerodaml-
ont.daml#HOLIDAY"/>
</daml:Class>
<daml:Class
rdfabout="http://ubot.lckheedmartin.com/ubot/2002/08/aerodaml-
ont.daml#LEGAL">
<daml:sameClassAs
rdf:resource="http://ubot.lockheedmartin.com/ubot/2002/8/aerodaml-
ont.daml#HOLIDAY"/>
</daml:Class>
</rdf:RDF>
- 25 -
Übertragung auf das hier betrachtete Diagnosesystem
Es wurden nun „Ubot/ aerodaml-mapper“ und „Ontoprise“, als zwei Vergleichssysteme
betrachtet. Nun werden diese auf das hier betrachtete Diagnosesystem übertragen.
In dieser Arbeit wird nun ausgehend von den Ideen der Vergleichssysteme ein Editor speziell
für KnowMe entwickelt, der es dem Experten ermöglicht zwischen einem Agent und einer
Terminologie-Wissensbasis
Abbildungen
zu
erstellen.
Das
heißt
es
wird
als
Kommunikationsverfahren eine „universelle Sprache“ verwendet, in diese universelle Sprache
muss die Sprache jedes einzelnen Agenten übersetzt werden, bzw. müssen Abbildungen erstellt
werden. Jedoch gibt es zu den vorgestellten Vergleichssystemen einige Unterschiede. Zum
einen verwenden die Agenten statt „Ontologien“, welche durch die Beschreibung von
Konzepten und Beziehungen von Datenelementen sehr mächtig sind, „Wissensbasis-Objekte“,
die aus einfachen D3-Wissensbasis-Attributen bestehen.
Es werden alle oben genannte Abbildungsmöglichkeiten, einschließlich „UND-Verknüpfungen,
als auch „ODER“- Verknüpfungen zwischen den einzelnen Elementen der Agenten zugelassen1.
Die Rückabbildungen werden, sofern es möglich ist (siehe Erweiterungen) automatisch mit
definiert.
1
Siehe auch 4. Erweiterungen
- 26 -
3. Entwurf eines Abbildungs-Editors
Aufbauend auf die besprochenen Vergleichsysteme, „Ontoprise“ und „Daml“ ist in dieser
Arbeit nun ein weiteres Plugin „Agents Plugin“ als Abbildungseditor für KnowMe entwickelt
worden. Dieses ermöglicht es zusätzlich zu einer geladenen Wissensbasis eine TerminologieWissensbasis in das System zu laden. Es werden keine Ontologien, wie in den
Vergleichssystemen verwendet, sondern die aus den D3-Wissensbasis-Attributen bestehenden
Wissensbasen der Agenten. Zunächst nun ein kurzer Überblick über den graphischen Aufbau
des Plugins.
Nach dem Öffnen von „Agents Plugin“ erscheint zunächst die „leere“, graphische
Benutzeroberfläche, wie sie in Abbildung 3.1 zu sehen ist. Die Zahlen 1-4 in Abbildung 3.1
sollen als Orientierungs- bzw. Erklärungshilfe dienen.
Nr.1 zeigt den Editor für eine zu ladende Wissensbasis.
Nr.2 zeigt den Editor für weitere Wissensbasis.
Nr.3 zeigt den leeren Editor für die spätere Abbildungs-Tabelle zur Wissenseingabe.
Nr.4 zeigt den leeren Editor für die Überblicks-Tabelle über alle erstellten Abbildungen.
Zwischen den Tabellen sind noch einige Buttons für verschiedene Funktionen zu sehen
(„Abbildung hinzufügen“, „Abbildung entfernen“, „Alle Abbildungen“, „Öffnen“, „Speichern“)
die jedoch erst später näher erläutert werden.
3
1
2
4
Abbildung 3. 1: Die leere Oberfläche von AgentsPlugin
- 27 -
Eine Wissensbasis/Terminologie – Wissensbasis laden
Zum Laden der Wissensbasis klickt man mit der Maus das Icon
in der Toolbar, angezeigt
durch die roten Pfeile im Screenshot. Wobei das Icon mit Pfeil Nr. 1 für das Laden einer
beliebigen Wissensbasis in den linken Editor, siehe Abbildung 3.1.Nummer 1,steht, und das
Icon mit Pfeil Nr. 2 für das Laden einer Wissensbasis in den rechten Editor, siehe Abbildung
3.1 Nummer 2.
In dem nun geöffneten Fenster kann der Experte eine Wissensbasis aus einer Datei auswählen
und anschließend durch das drückendes des Buttons „Öffnen“ in das Plugin laden.
Eine Abbildung definieren
Als nächstes wählt der der Experte nun ein Element der Wissensbasis und ein Element der
Terminologie – Wissensbasis aus. Anschließend erscheinen die Antwort-Alternativen der
ausgewählten Elemente in der nun erscheinenden Abbildungstabelle, dargestellt in
Abbildung…. Im Beispiel aus Abbildung
wurden die Alternativen der Elemente „Diagnose-
grob“ (erste Tabellenzeile) und Klin. Fragestellung-2 (erste Tabellenspalte) verwendet.
- 28 -
Nun kann der Benutzer an der Schnittzelle der gewünschten Eigenschaften durch Anklicken der
entsprechenden Zelle ein Pop-up Menü öffnen und die Abbildungen durch Auswählen einer
Zahl definieren. Es gibt für den Benutzer verschiedenen Verknüpfungsmöglichkeiten für die
abzubildenden Elemente, jedoch abgebildet wird immer von links nach rechts:
„UND“-Verknüpfungen
mit „UND“-Verknüpfungen ist zum Beispiel gemeint:
WENN TEMPERATUR ERHÖHT UND HALSSCHMERZ POSITIV DANN GRIPPE
Eigenschaften, die einer gemeinsamen „UND“-Gruppe/“UND“-Verknüpfung angehören
müssen alle die gleiche Zahl erhalten.
„ODER“-Verknüpfungen
mit „ODER“-Verknüpfungen ist zum Beispiel gemeint:
WENN BEINFRAKTUR POSITIV ODER SCHNITTVERLETZUNG GROß DANN
SCHMERZEN
Eigenschaften, die durch „ODER“-Verknüpfungen miteinander verbunden sind müssen
verschiedene aufsteigende Zahlen bekommen.
Für die Probleme bei den Rückabbildungen siehe Kapitel Erweiterungen.
- 29 -
Ein Beispiel für eine Abbildung ist die Identitäts-Abbildung von „männlich, weiblich“ auf sich
selbst in Abbildung…
Eine Besonderheit stellen noch die numerischen Elemente dar. Bei der Auswahl eines solchen
Elementes aus der Wissensbasis muss der Experte in den Editor in Abbildung… Intervalle
eingeben. Z.B. „10 35 60“. Das heißt für die Antwort-Alternativen „kleiner, gleich 10“,
„kleiner, gleich 35“, „kleiner, gleich 60“, größer, siehe auch Tabelle…..
kleiner, gleich 10 kleiner, gleich 35 kleiner, gleich 60 größer
männlich
weiblich
- 30 -
Eine Abbildung hinzufügen
Nach der Definition einer Abbildung muss der Experte seine Abbildung durch Klicken des
„Abbildung hinzufügen“-Buttons „Vorspeichern“. D.h. nach dem Hinzufügen einer Abbildung
erscheint diese in der Überblick-Tabelle, falls das Element in der linken Wissensbasis markiert
ist.
Eine Abbildung löschen
Ebenso wie eine Abbildung hinzugefügt wird kann eine Abbildung aus dem „Vorspeicher“ auc
gelöscht werden. Dazu muss die Abbildung in der Übersichts-Tabelle markiert werden und der
„Abbildung löschen“ Button gedrückt werden. Anschließend verschwindet die Abbildung in
beiden Tabellen.
Alle Abbildungen anzeigen
Durch den Button „Alle Abbildungen“ kann sich der Experte alle bereits definierten
Abbildungen in der Übersichts-Tabelle anzeigen lassen.
Datei speichern
Sobald alle Abbildungen zwischen beiden Abbildungen definiert wurden, können diese durch
Klicken des „Speichern“-Buttons endgültig gespeichert werden.
Datei öffnen
Durch drücken des „Öffnen“-Buttons kann eine Datei mit Abbildungen in den Editor geladen
werden
Teilbäume kopieren
Es gibt im Abbildungseditor aus Zwecken der besseren Normierung noch die Möglichkeit
Teilbäume aus der linken Wissensbasis in die rechte Wissensbasis zu kopieren. Man markiert
ein Element der linken Wissensbasis und zieht es durch Drag&Drop auf ein Element der rechten
Wissensbasis.
- 31 -
Der Teilbaum wird unterhalb des Knotens der rechten Wissensbasis eingefügt. Es werden neue
IDs erstellt speziell für die linke Wissensbasis. Auch werden automatisch Identitätsabbidlungen
zwischen den kopierten, identischen Elementen der beiden Wissensbasen gebildet, siehe
Abbildung….. Diese können jederzeit über die Tabellen bearbeitet oder gelöscht werden.
- 32 -
4. Erweiterungen
Der Editorentwurf aus dieser Arbeit ermöglicht es 1:1, 1:n, n:1 und n:m-Abbildungen
ausschließlich mit „UND“–Verknüpfung zwischen den Falldaten eines Agenten und einer
Terminologie-Wissensbasis zu erstellen.
Jedoch kann das Erstellen von Abbildungen auch sehr komplexe Formen annehmen, wenn nicht
nur Abbildungen mit „UND“ –Verknüpfungen möglich sind, sondern auch Abbildungen mit
„ODER“ - Verknüpfungen.
„UND“-Verknüpfung:
Falldaten:
TEMPERATUR ist erhöht
HALSSCHMERZ positiv
KOPFSCHMERZ positiv
Abbildungsregel:
WENN TEMPERATUR erhöht UND
WENN KOPFSCHMERZ ist positiv UND
WENN HALSSCHNERZ ist positiv DANN GRIPPE
Durch die Anwendung von „UND“-Verknüpfungen kann die Rückbbildung von GRIPPE exakt
„TEMPERATUR ist erhöht“, „HALSSCHMERZ positiv“ und „KOPFSCHMERZ positiv“
zugeordnet werden.
„ODER“-Verknüpfung:
Falldaten:
Patient hat Schock
Patient hat Sport gemacht
Abbildungsregel
WENN Patient hat Schock ODER
WENN Patient hat Sport gemacht DANN PULS ERHÖHT
Möchte man nun eine Rückabbildung von „PULS ERHÖHT“, so kann man nicht exakt
zuordnen, ob der Patient einen Schock hat oder, ob der Patient Sport gemacht hat.
Es müssten also zusätzlich noch weitere Merkmale zu Verfügung stehen, wie zum Beispiel
WENN PULS ERHÖHT UND PATIENT NACH AUTOUNFALL, dann kann man auf Patient
hat Schock Rückschließen.
In dieser Arbeit werden nur Abbildungen zwischen Daten mit „UND“-Verknüpfungen erstellt.
- 33 -
5. Literatur und Links
[1] Cand.Inform. Krellner, K.:
JavaBeans für grafische Wissenserwerbs- und Autorensysteme
Diplomarbeit Universität Würzburg, 30.Juli 2001;
[2] DUBOT AeroDAML:DAMLOntology Mapper Guide
http://ubot.lockheedmartin.com/ubot/hotdaml/aerodamlmapperguide.html
[3] „Ontoprise“
http://www.ontoprise.de
[4] Bamberger, S.: Verteiltes Problemlösen mit wissensbasierten Diagnosesystemen
Dissertation Universität Würzburg. DISKI 203, St Augustin: infix 1999;
[5] Puppe, F.: Einführung in Expertensysteme, 1990
[6] Puppe, F.: Problemlösungsmethoden in Expertensystemen, 1990
- 34 -
Herunterladen