next up previous contents
Nächste Seite: Wissensquellen und ihre Anwendung Aufwärts: Die Wortketteninterpretation Vorherige Seite: Die Wortketteninterpretation   Inhalt


Einleitung

Durch die sprachliche Entwicklung hat der Mensch gelernt, ökonomisch mit Worten umzugehen. In einem Dialog wird eine Mischung aus Fakten und Hinweisen gegeben, die der Empfänger entsprechend ordnen muß. Der Empfänger interpretiert die Wortkette und gelangt so zu einem Verständnis der beschriebenen Fakten. Die Auffassungen des Begriffs Sprachverstehen sind sehr unterschiedlich. Allgemein könnte dies zum Beispiel als die Transformation der gegebenen Wortkette bzw. deren Bedeutung in eine dem zugrunde liegenden System verständliche interne Darstellung angesehen werden [9]. Im Hinblick auf die gegebene Aufgabenstellung kann dies auf eine Darstellung reduziert werden, die es dem Roboter erlaubt, das ihm gestellte Kommando zu erfassen und zu erfüllen. Ich nenne hier nur zwei mögliche Ansätze, dies umzusetzen.

\( \mathcal{W} \) bezeichne die Menge aller Wortfolgen. Eine einfache Möglichkeit ist die Abbildung der dargebotenen Wortkette ( \( W=w^{K}_{i}\in \mathcal{W} \)) mit \( K \) Elemeneten auf eine vorgegebene Menge von \( N \) Befehlen \( \mathcal {C}=\{c_{1},...,c_{n}\} \). Dabei sind \( N_{i} \) verschiedene feste Wortketten mit dem \( i \)-ten Kommando verbunden. Diese \( N_{i} \) Sätze (\( W_{i_{j}} \) mit \( 1\leq j\leq N_{i} \)) sind eine endliche Teilmenge \( \mathcal {W}_{i} \) aller Wortketten ( \( W_{i_{j}}\in \mathcal {W}_{i}\subset \mathcal {W} \)). \( F \) bezeichne die allgemeine interpretatorische Abbildung, dann gilt für jede Kommandoklasse \( i \):


\begin{displaymath}
F(W_{i_{j}})=c_{i}\, \, \, \, mit\, i\leq N,1\leq j\leq N_{i},W_{i_{j}}\in \mathcal {W}_{i}\end{displaymath}

Alle Eingaben, die von dieser starren Struktur abweichen, führen nicht zu der Ausführung einer Aktion des Roboters, d.h. alle nicht in einer der \( \mathcal {W}_{i} \)-Mengen enthaltenen Wortketten werden auf ein spezielles \( nil \)-Kommando abgebildet, welches keine weitere Verarbeitung beinhaltet. Da es aber beliebig viele Möglichkeiten gibt, einen Wunsch verbal zu formulieren, können diese auch nicht alle modelliert werden. Von der Modellierung abweichende Anfragen werden dadurch nicht ausgeführt. Ein Benutzer muß sich also strikt an die Kommandosätze halten. Diese Definition ist rein operational. Die Bewertung eines solchen Systems richtet sich nur nach der Korrektheit des ausgeführten Befehls am Ende.

Da ein System, wie gerade beschrieben, offensichtlich große Nachteile, in einer Umgebung mit häufig wechselnden und ungeübten Benutzern, bietet, wäre ein flexiblerer Ansatz sinnvoller. Als Nachteil wäre hier vor allem das Erlernen einer starren Kommandostruktur zu nennen. Ein Dialogsystem auf spontaner natürlich gesprochener Sprache wäre wünschenswert. Im folgenden werden die Begriffe natürliche Sprache und spontane Sprache synonym verwendet. Obwohl auch im ersten Ansatz bei ausreichender Modellierung, also Satzanzahl, freie natürliche Sprache akzeptiert wird, ist dieser Ansatz flexibler. Bei Unvollständigkeiten oder Mehrdeutigkeiten entscheidet das System ''selbständig'' aufgrund von Annahmen oder Rückfragen an den Benutzer, wie diese aufgelöst werden können. Dabei kann Wissen, welches früher bereits in die interne Wissensrepräsentation integriert wurde, zur Lösung des aktuellen Problems abgerufen werden. Eine Anfrage wird also grundsätzlich nicht zurückgewiesen. Die Güte eines solchen Systems ist nicht mehr so einfach zu definieren wie oben. Zwar hängt die Güte immer noch von der Ausführung des korrekten Befehls ab, es muß aber zusätzlich der Weg dorthin einbezogen werden. Dies beinhaltet zum Beispiel die Auflösung von Mehrdeutigkeiten, das Erfragen von benötigten Informationen oder die Anwendbarkeit bereits erhaltener Informationen für spätere Anfragen.

Der Aufbau eines solchen allgemeinen sprachverstehenden Systems ist Gegenstand der Forschung. Es existieren mittlerweile einige Systeme, die mehr oder weniger vielversprechende Ergebnisse liefern. Darunter sind zum Beispiel DAWAI [15,39,38], CHAT [50], HAWK [56], CyCorp [1,30] und VerbMobil [57].

Die genannten Systeme werden aus verschiedenen Gründen nicht in diesem Projekt eingesetzt. Das DAWAI-Projekt beschäftigt sich ebenfalls mit begrenzten Kapazitäten im Zusammenhang mit der Semantikextraktion aus natürlicher Sprache. Für diesen Ansatz wird zum Beispiel keine allgemein zugängliche Software bereitgestellt. Eine eigene Implementierung würde den Rahmen dieser Arbeit sprengen, obwohl die Ansätze in diesem Zusammenhang sehr vielversprechend sind. Zusätzlich ist eine linguistische Grundbildung des Modellierers nötig, da syntaktische Zusammenhänge modelliert werden müssen. Dies könnte zu Problemen bei der Gewährleistung der einfachen Erweiterbarkeit durch Dritte führen. CHAT ist mehr für die natürlichsprachliche Informationsentnahme konzipiert, also für Dialoge. Wegen des Systemaufbaus ist es sinnvoller, die Dialogführung von der Roboterebene aus zu steuern. Bei einem Einsatz dieses Systems müßte eine aufwendige Kommunikation zwischen dem CHAT-Modul und der Planungsebene des Roboters integriert werden (siehe 3 und 4.2). Dies würde die einfache Erweiterbarkeit ebenfalls untergraben. Das HAWK-System ist für die Wissensabfrage aus großen Datenbanken ausgelegt, es ist aber keine verwendbare Software verfügbar. CyCorp ist auf allgemeines Verständnis ausgelegt und geht weit über das Ziel dieses Projekts hinaus. Des weiteren wären Probleme durch die begrenzten Kapazitäten zu erwarten. Das VerbMobil-System verursacht ebenfalls Komplikationen durch sehr hohe Systemanforderungen, außerdem stehen keine ausreichenden Daten, um die benötigten Modelle zu trainieren zur Verfügung.

Die meisten Systeme sind für allgemeinere Anfragen ausgelegt, so daß sie auch größere Rechen- und Speicherkapazitäten benötigen. Mit den zur Verfügung stehenden Kapazitäten können keine brauchbaren Antwortzeiten erwartet werden. An dieser Stelle muß in Betracht gezogen werden, daß für diese Aufgabenstellung nicht ein allgemeines sprachverstehendes System nötig ist. Ein Serviceroboter soll bestimmte Kommandos ausführen. Diese sind entweder als endliche Menge von Komplettkommandos (zum Beispiel bring_coffee_ to(Henrik)) oder mit einer endlichen Menge von Basiskommandos (zum Beispiel pick_up(Coffee), go_to(CoffeeRoom), ...) darstellbar. Für eine detailliertere Beschreibung sei auf 5.3 verwiesen.

Es ist also die Aufgabe, einen Verarbeitungsansatz zu finden, der zum einen natürliche Sprache zuläßt, und zum anderen die benötigten Strukturen zuverlässig extrahiert.


next up previous contents
Nächste Seite: Wissensquellen und ihre Anwendung Aufwärts: Die Wortketteninterpretation Vorherige Seite: Die Wortketteninterpretation   Inhalt

2001-01-04