Rahmenproblem

Rahmenproblem

Das Rahmenproblem oder auch Frame-Problem bezeichnet in der künstlichen Intelligenz ein Problem bei der logischen Repräsentation der Effekte von Aktionen. In gewissen Logikkalkülen (etwa dem Situationskalkül) reicht es nicht aus, bloß die Effekte von Aktionen zu beschreiben, deren Wahrheitswerte sich ändern. Eine vollständige, explizite Beschreibung sämtlicher Auswirkungen von Aktionen auf alle in einer Welt geltenden Fakten (also nicht nur dessen, „was sich ändert“, sondern auch, „was gleich bleibt“) wäre allerdings zu aufwändig. Das Rahmenproblem beschäftigt sich somit mit der Frage, wie ein Logikkalkül vollständig sein kann, ohne triviale Nichtänderungen explizit zu beschreiben.

Als Rahmenprobleme werden eine Reihe von ähnlichen Problemen bezeichnet. Neben den gelösten repräsentationellen und inferentiellen Rahmenproblemen gibt es das Qualifikationsproblem, das keine vollständige Lösung hat.

Der Name Rahmenproblem bezieht sich auf das Referenzsystem (Englisch: Frame of reference) in der Physik. Das Frame-Problem besteht darin, nicht nur die sich ändernden Objekte, sondern auch den statischen Rahmen des Bezugsystems zu erfassen.

Inhaltsverzeichnis

Probleme

Für die Wissensrepräsentation werden vielfach Logikkalküle verwendet, die auf der Prädikatenlogik aufbauen. Sogenannte Fluents sind Prädikate, die von Situation zu Situation einen unterschiedlichen Wahrheitswert haben können (also nicht statisch sind). Im Folgenden wird vom Situationskalkül ausgegangen. Dabei steht A für die Anzahl der unterschiedlichen Aktionen, F für die Anzahl der Fluents und E für die maximale Anzahl an Effekten, die eine Aktion besitzt.

Repräsentationelles Rahmenproblem

Das repräsentationelle Rahmenproblem bezeichnet die Schwierigkeit der Repräsentation von Aktions-Effekten mit einem geringeren Aufwand als \mathcal{O}(A*F). Das folgende Beispiel veranschaulicht das Problem.

Der Initialstatus „Der Agent a befindet sich zur Situation s0 im Haus und hat keinen Hut auf“[A 1] wird wie folgt repräsentiert: Ort(a,ImHaus,s0), sowie \lnot HutAuf(a, s_0). Die darauf folgenden Situationen sind s1 = Result(HutAufsetzen,s0) und s2 = Result(HausVerlassen,s1). Der Agent setzt sich also den Hut auf und verlässt das Haus.

Es gibt die folgenden Möglichkeitsaxiome:[A 2] Ort(a, ImHaus, s ) \Rightarrow Poss(HausVerlassen, s) und \lnot HutAuf(a, s) \Rightarrow Poss(HutAufsetzen, s). Außerdem gibt es die Effektaxiome: Poss(HausVerlassen, s) \Rightarrow \lnot Ort(a, ImHaus, Result(HausVerlassen, s)) sowie Poss(HutAufsetzen, s) \Rightarrow HutAuf(a, Result(HutAufsetzen, s)).

Mit diesen lässt sich nun zeigen, dass der Agent in s1 den Hut auf hat. Die trivial erscheinende Aussage, dass dies auch für s2 gilt, lässt sich nicht ohne weiteres herleiten. Denn es wurde nicht spezifiziert, dass das Verlassen des Hauses den Fluent HutAuf nicht ändert.

Eine mögliche Lösung wäre die Einführung von Frame-Axiomen. Frame-Axiome sind Regeln, die eine Nicht-Änderung explizit spezifizieren, in diesem Fall: HutAuf(a, s) \Rightarrow HutAuf(a, (Result(HausVerlassen, s)). Da es jedoch für jede der A Aktionen F Fluents und damit Frame-Axiome gibt, beläuft sich der Repräsentationssaufwand auf \mathcal{O}(A*F).

Sehr viel effizienter ist eine Repräsentation in \mathcal{O}(A*E), da die Anzahl der maximalen Effekte einer Aktion üblicherweise sehr viel geringer als die Anzahl der Fluents ist.

Lösung

Für das repräsentationelle Rahmenproblem gibt es zahlreiche Lösungen, etwa durch den Eventkalkül oder den Fluentkalkül. Im Folgenden wird die Lösung durch Nachfolge-Zustand-Axiome beschrieben.

Eine Nachfolge-Zustand-Axiom ist von der Form:

Aktion ist möglich \Rightarrow ( Fluent ist wahr \Leftrightarrow Aktions-Effekt hat Fluent wahr gemacht \vee Fluent war wahr und Aktions-Effekt hat es nicht modifiziert).

Das folgende Nachfolge-Zustand-Axiom beschreibt die Bedingungen für die Wahrheit und Falschheit des Fluents HutAuf. Es gibt eine Aktion, die als Effekt HutAuf wahr macht und zwei, die HutAuf falsch machen:

Poss(aktion, s) \Rightarrow (HutAuf(a, Result(aktion, s)) \Leftrightarrow aktion=HutAufsetzen \vee (HutAuf(a, s) \wedge aktion \neq HutAbsetzen \wedge aktion \neq HutVerlieren)).

Damit lässt sich zeigen, dass HutAuf(a, Result(aktion, s1)) gilt, da die Konjunktion im letzten Teil der Formel erfüllt ist.

Aktionen, deren Effekte ein Fluent wahr machen, werden im entsprechenden Axiom des Fluents unter Aktions-Effekt hat Fluent wahr gemacht aufgeführt; Effekte, die ein Fluent falsch machen, unter Aktions-Effekt hat es [das Fluent] nicht modifiziert. Für jedes Fluent gibt es einen Nachfolge-Zustand-Axiom. In allen Nachfolge-Zustand-Axiomen zusammen werden alle E Effekte aller A Aktionen genau einmal genannt, der Repräsentationsaufwand liegt also in \mathcal{O}(A*E). Somit sind Nachfolge-Zustand-Axiome im Situationskalkül eine Lösung für das repräsentationelle Rahmenproblem.

Inferentielles Rahmenproblem

Das inferentielle Rahmenproblem bezeichnet die Schwierigkeit, die Situation st effizient zu berechnen, die sich aus einer Sequenz an t Aktionen ergibt. Wenn der Aufwand für die Repräsentierung eines Zeitschrittes bei \mathcal{O}(A*E) liegt, dann wäre einem naiven Ansatz zufolge der Aufwand für t Zeitschritte bei \mathcal{O}(A*E*t). Tatsächlich lässt sich st in bloß \mathcal{O}(E*t) errechnen. Die Anzahl der überhaupt möglichen Aktionen A hat keinen Einfluss auf den Aufwand, da nur die tatsächlich in der Sequenz durchgeführten Aktionen berücksichtigt werden müssen.

Die Lösung des inferentiellen Rahmenproblem ist es, bloß die Änderungen an den Fluents zu speichern, anstatt die komplette Repräsentierung für jeden Zeitschritt zu kopieren und dann anzupassen. Mithilfe von Indizes ist es möglich, in konstanter Zeit auf Nachfolge-Zustand-Axiome und Aktions-Effekte zuzugreifen. Da bei jedem Zeitschritt nur maximal E Effekte (jeweils in konstanter Zeit) in den Axiomen nachgeschlagen werden müssen und bis zu E Fluents (ebenfalls in konstanter Zeit) angepasst werden müssen, liegt der Aufwand für einen Zeitschritt bei \mathcal{O}(E), bei t Schritten also bei \mathcal{O}(E*t).

Qualifikationsproblem

Das Qualifikationsproblem bezeichnet das nicht vollständig gelöste Problem, sämtliche Voraussetzungen für eine Aktion zu spezifizieren. Die Vollständigkeit von Möglichkeitsaxiomen kann nicht gezeigt werden.

Beispielsweise könnten sich zu dem obigen Möglichkeitsaxiom \lnot HutAuf(a, s) \Rightarrow Poss(HutAufsetzen, s) die zusätzlichen Bedingungen HutIstGreifbar, HutPasstAufKopf und Weitere als notwendig erweisen.

Rahmenproblem in der Philosophie

Das Rahmenproblem im philosophischen Kontext ist die epistemologische Frage, wie ein Agent die Menge an Erkenntnissen bestimmt, die nach einer Handlung erneut auf ihren Wahrheitsgehalt überprüft werden müssen. Der Mensch beschränkt sich bei der Neubewertung auf relativ zu der Handlung relevante Erkenntnisse. Unklar ist jedoch, wie die Einschätzung der Relevanz abläuft.

Das philosophische Rahmenproblem entwickelte sich aus dem der künstlichen Intelligenz und wurde 1978 erstmals von Daniel Dennett formuliert.

Quellen und Anmerkungen

  • Peter Norvig, Stuart Russell: Künstliche Intelligenz: Ein moderner Ansatz. 2 Auflage. Prentice Hall, 2004 (Originaltitel: Artificial Intelligence: A Modern Approach), ISBN 9783827370891.

Anmerkungen:

  1. Als Agent wird bezeichnet, was handelt oder agiert, also ein Mensch, Tier oder ein Computeragent.
  2. Poss steht für Possible, also die Möglichkeit einer Handlung zu einer Situation s.

Weblinks


Wikimedia Foundation.

Игры ⚽ Нужно решить контрольную?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Situationskalkül — Beim Situationskalkül handelt es sich um eine Methode der Künstlichen Intelligenz. Es werden Auswirkungen von Aktionen auf Situationen in einer Modellwelt unter Verwendung der Prädikatenlogik beschrieben. Angewendet wird der Situationskalkül zum… …   Deutsch Wikipedia

  • Dieter Leisegang — (* 25. November 1942 in Wiesbaden; † 21. März 1973 in Offenbach am Main) war ein deutscher Autor, Philosoph und Übersetzer. Inhaltsve …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”