Wissensbasiertes System: Fakten, Regeln, Inferenz
Ein wissensbasiertes System speichert Fachwissen ausdrücklich als Fakten und Regeln. Eine Inferenzmaschine wendet diese Regeln auf passende Fakten an und leitet daraus Antworten oder neue Fakten ab.
Du lernst dies an einer kleinen, abgeschlossenen Thermostat-Domäne. Dabei verwendest du eine vereinfachte Lernnotation, keine bestimmte Programmiersprache.
Hake ab, was du schon kannst — und komm am Ende hierher zurück!
Wie arbeitet ein wissensbasiertes System?
Stell dir ein Heizungsprogramm vor: Es kennt die aktuelle Situation und Regeln zur Steuerung der Heizung. Aus diesem Wissen soll es eine begründete Handlung ableiten.
Wissensbasiertes System
Ein wissensbasiertes System ist ein Computerprogramm, das ausdrücklich gespeichertes Wissen zur Problemlösung nutzt. Sein funktionaler Kern besteht aus einer Wissensbasis und einer Inferenzmaschine.
- Die Wissensbasis enthält das Wissen: Fakten und Regeln.
- Die Inferenzmaschine verarbeitet dieses Wissen und leitet Schlussfolgerungen ab.
- Eine Benutzerschnittstelle kann Anfragen entgegennehmen und Ergebnisse anzeigen.
- Eine Erklärungskomponente kann bei umfangreicheren Systemen zeigen, wie eine Antwort entstanden ist.
Wissensbasierte Systeme gehören zur künstlichen Intelligenz. Sie sind eng mit Expertensystemen verbunden, aber die Begriffe sind nicht völlig gleich: Nicht jedes wissensbasierte System besitzt alle zusätzlichen Eigenschaften, die ein Expertensystem zur Unterstützung oder Übernahme anspruchsvoller Expertenaufgaben benötigt.
Die Wissensbasis enthält das Was. Die Inferenzmaschine bestimmt das Wie des Ableitens.
Wie formulierst du Fakten, Regeln und Anfragen?
Für unsere Lernnotation gelten drei einfache Formen:
- Fakt:
temperatur_unter_20– eine Aussage, die in der Wissensbasis als gegeben gespeichert ist. - Regel:
WENN temperatur_unter_20 DANN waermebedarf– aus einer Bedingung folgt eine Schlussfolgerung. - Anfrage:
? waermebedarf– die Frage, ob sich diese Aussage aus der Wissensbasis ableiten lässt.
Mehrere Wörter verbinden wir mit einem Unterstrich. Jede Regel besitzt mindestens eine Bedingung und genau die hier notierte Schlussfolgerung.
Faktenwissen
Faktenwissen beschreibt gegebene Aussagen über einen konkreten Fall, zum Beispiel fenster_geschlossen.
Regelwissen
Regelwissen beschreibt allgemeine Beziehungen in der Form „Wenn Bedingungen erfüllt sind, dann gilt eine Schlussfolgerung“.
Das Thermostat-Beispiel enthält zunächst:
- Fakt F1:
temperatur_unter_20 - Fakt F2:
fenster_geschlossen - Regel R1:
WENN temperatur_unter_20 DANN waermebedarf - Regel R2:
WENN waermebedarf UND fenster_geschlossen DANN heizung_einschalten - Anfrage A1:
? heizung_einschalten
Die Namen und Regeln bilden nur eine bewusst kleine Übungsdomäne ab. Sie sind kein vollständiges Modell einer realen Heizungssteuerung.
Wie entsteht eine mehrstufige Ableitung?
Die Anfrage ? heizung_einschalten lässt sich nicht in einem einzigen Schritt beantworten. Die Inferenzmaschine muss eine Zwischenfolgerung bilden.
Gegeben: F1 temperatur_unter_20, F2 fenster_geschlossen, R1 und R2 aus dem vorherigen Kapitel.
- R1 verlangt den Fakt
temperatur_unter_20. F1 erfüllt diese Bedingung. - Deshalb wird
waermebedarfabgeleitet. - R2 verlangt
waermebedarfundfenster_geschlossen. - Der erste benötigte Fakt stammt aus Schritt 2, der zweite ist als F2 gegeben.
- Deshalb wird
heizung_einschaltenabgeleitet. - Die Anfrage
? heizung_einschaltenwird mit ableitbar beantwortet.
Die Ableitungskette lautet kurz: temperatur_unter_20 → waermebedarf → heizung_einschalten. Für den letzten Schritt wird zusätzlich fenster_geschlossen benötigt.
Bei jedem Ableitungsschritt nennst du drei Dinge: die verwendete Regel, die erfüllten Bedingungen und die neue Schlussfolgerung.
Was bedeutet eine nicht ableitbare Anfrage?
Entfernen wir F2 fenster_geschlossen, kann R1 weiterhin waermebedarf ableiten. R2 benötigt jedoch zusätzlich fenster_geschlossen. Deshalb lässt sich heizung_einschalten aus dieser Wissensbasis nicht ableiten.
Nicht ableitbar bedeutet hier: Die vorhandenen Fakten und Regeln reichen für die Schlussfolgerung nicht aus. Daraus folgt nicht automatisch, dass die Aussage falsch ist. Das System kann sie mit seinem aktuellen Wissen lediglich nicht begründen.
Vorhanden: temperatur_unter_20, R1 und R2.
Anfrage: ? heizung_einschalten
Diagnose: R1 liefert waermebedarf. R2 bleibt dennoch gesperrt, weil fenster_geschlossen fehlt. Die Anfrage ist daher nicht ableitbar.
Mögliche Verbesserung der Wissensbasis: Prüfen und als Fakt erfassen, ob das Fenster geschlossen ist. Der fehlende Fakt darf nicht einfach erfunden werden.
Wie erkennst und verbesserst du fehlerhafte Regeln?
Eine Inferenzmaschine wendet auch eine fachlich falsche Regel folgerichtig an. Deshalb hängt die Qualität der Ergebnisse stark von der Qualität und Vollständigkeit der Wissensbasis ab.
Betrachte diese fehlerhafte Thermostat-Regel:
WENN temperatur_ueber_24 DANN heizung_einschalten
Für das zugrunde liegende Schwellenmodell lautet die vorgesehene Handlung oberhalb von 24 °C jedoch heizung_ausschalten. Die Bedingung ist verständlich formuliert, aber die Schlussfolgerung ist vertauscht.
Fehlerdiagnose: Bei temperatur_ueber_24 würde die fehlerhafte Regel heizung_einschalten ableiten.
Korrektur: WENN temperatur_ueber_24 DANN heizung_ausschalten
Erneute Prüfung: Mit dem Fakt temperatur_ueber_24 ist nun heizung_ausschalten ableitbar.
Für Temperaturen von 20 °C bis 24 °C enthält dieses kleine Modell keine Handlung. Eine zusätzliche Regel dürfte erst ergänzt werden, wenn die gewünschte Handlung festgelegt wurde.
Eine nachvollziehbare Ableitung kann trotzdem fachlich falsch sein, wenn eine gespeicherte Regel falsch ist. Prüfe daher sowohl den Ableitungsweg als auch den Inhalt der Regeln.
Karteikasten
Überlege zuerst selbst und drehe die Karte anschließend zum Prüfen um.
Alles auf einen Blick
- Wissensbasiertes System
- Wissensbasis: Fakten und Regeln
- Inferenzmaschine: Regeln anwenden
- Anfrage: Ableitbarkeit prüfen
- Ableitung: Regeln und Bedingungen nennen
- Wissenslücke: keine unbegründete Ergänzung
- Qualitätsprüfung: Fakten und Regeln kontrollieren
Abschluss-Check
Du beherrschst den Kern, wenn du Fakten und Regeln sauber trennst, jeden Ableitungsschritt begründest und bei einer Lücke weder „falsch“ noch einen erfundenen Fakt annimmst.
Mit Google fortfahren