Aufrufe
vor 5 Jahren

8 Werkzeuge f¨ur Rapid Prototyping mit verteilten Soft - tuprints

8 Werkzeuge f¨ur Rapid Prototyping mit verteilten Soft - tuprints

Abbildung 103: Anordnung

Abbildung 103: Anordnung der Ausgabekomponenten im EMBASSI-Projekt. Die Kommunikation der Komponenten untereinander erfolgte statisch. Komponente hinterlegt werden. Abbildung 103 zeigt die Anordnung der Ausgabekomponenten im EMBASSI-Projekt (Ausschnitt aus Abbildung 79). In EMBASSI realisierte die PMO-Komponente die in diesem Abschnitt beschriebene Konfliktlösungsstrategie [60]. Die Kommunikation der Komponenten untereinander verlief direkt mittels KQML. Dabei sendete die PMO-Komponente zuerst eine Nachricht an die Textgenerierung und verwendete deren Antwort dann für die Generierung von Renderaufgaben für den Avatar und die Sprachausgabe (Speechsynthesis). Zuletzt ging eine Nachricht an die GUI. Der Unterschied zu der in diesem Abschnitt beschriebenen Implementation der Konfliktlösungsstrategie für multimodale Ausgaben ist evident. Die direkte Kommunikation erlaubt nicht das Hinzufügen oder Entfernen von weiteren Komponenten und zwingt die PMO-Komponente zu sequentiellen Handlungen. Später erstellte Elting einen weiteren Demonstrator, der insgesamt vier Geräte umfasst [53, 59]. Das System beinhaltet einen Multimedia-Server, auf dem rechenintensive Anwendungen laufen wie die Komponenten zur Tonausgabe (Sound-Engine) und zur Spracherkennung (vgl. Abbildung 89). Weiterhin laufen auf diesem Gerät eine Komponente, die Zugriff auf eine multimediale Filmdatenbank besitzt, sowie die in diesem Kapitel beschriebene Dialogkomponente. Auf dem Server befindet sich ebenfalls eine Komponente, die das grafische Frontend eines animierten Charakters in Form von animierten GIF-Bildern zur Verfügung stellt. Als Interaktionsgeräte stehen ein Compaq h5550 PDA, eine Loewe Aconda Fernseher mit OnlinePlus- Zusatz sowie ein digitaler Bilderrahmen (Digiframe DF-1710) zur Verfügung. Abbildung 102 zeigt die hier beschriebenen Geräte im Einsatz. Der oben beschriebene Virtuelle Charakter wird in diesem Szenario durch die Realisierung von Ausgabekomponenten auf der Basis Synchronized Multimedia Integration Language SMIL 80 ersetzt. Die Implementierung der SODAPOP-Komponenten erfolgte mittels einer Personal Java Virtual Machine (Jeode auf dem PDA) bzw. mittels einer Sun Java 1.3.1 Virtual Machine (auf dem Fernsehgerät). 80 http://www.w3c.org/AudioVideo 211

7.3 Reiseradar - eine regelgestützte Inferenzmaschine für mobile Beraterassistenz In Zusammenarbeit mit der Mobility Research Group der Volkswagen AG Wolfsburg entstand auf Basis der in Kapitel 8.2.2 spezifizierten regelgestützten Inferenzmaschine eine Anwendung zur Interpretation von Points of Interests auf der Basis von Kontextinformation und persönlichen Präferenzen. Als Points of Interests werden in gebräuchlichen Navigationssystemen für Kraftfahrzeuge ausgewählte Orte wie Aussichtspunkte, historische Gebäude, aber auch öffentliche Plätze wie Sporthallen, Freizeitparks und auch kommerzielle Orte wie Kaufhäuser oder Restaurants bezeichnet. Abbildung 104 illustriert die prinzipielle Komponentenarchitektur der Reiseradar-Anwendung. Kernstück der Reiseradar- Anwendung ist die Interpreterkomponente, die es erlaubt frei Regeln zu definieren, auf Basis deren alle verfügbaren POIs evaluiert werden. Der Reiseradar-Interpreter empfängt hierbei zusätzlich die von der Umgebung eingehenden Kontextdaten und speichert diese in einem internen Kontextmanager zur weiteren Verwendung. Die im Projekt Reiseradar verwendeten Kontextdaten, auf die in den Regeln Zugriff genommen werden kann, werden in fünf unterschiedlichen Objekten verwaltet: • im context-Objekt finden sich alle für die Autofahrt relevanten Daten wie die eigene Position des Autos (context.location), die Identifikationsnummer des Benutzers (context.uid) oder der eingestellte Kartenausschnitt des Displays des Navigationssystems (context.lowerLeft bzw. context.upperRight) • im destination-Objekt finden sich nähere Angaben zum vom Benutzer eingestellten Ziel der Reise • das user-Objekt verwaltet personenbezogene Daten des Benutzers, z. B. dessen Alter (user.age), Präferenzen (user.preferences) oder Geschlecht (user.gender) • das events-Objekt verwaltet Ereignisse und stellt den Terminkalender des Benutzers dar • und zuletzt das gerade zu evaluierende poi-Objekt. Nur die Objekte selbst sind hierbei fest definiert, die Objektvariablen (wie location, gender, etc.) sind dynamisch zur Laufzeit erzeugbar und in Regeln auswertbar. Alle zwei Sekunden liest der Reiseradar-Interpreter auf der Basis der Dimensionen des Kartenausschnittes des Navigationsdisplays die Points of Interest aus der POI-Datenbank (siehe Abbildung 104) ein und evaluiert die Regeln gegen jeden einzelnen POI. Anders als unter Verwendung derselben regelgestützten Inferenzmaschine für den Aufbau intelligenter Umgebungen, deren Implementierung, deren verwendete Syntax und unterlagerte Prinzipien in Kapitel 8.2 im Detail spezifiziert werden, wird hier für jeden einzelnen POI jede Regel einmal durchlaufen. Wird eine Regel dabei zu wahr evaluiert, so ergibt die Auswertung des Aktionsteil der Regel eine Punktzahl. Zum Abschluss der Evaluierung werden für jeden POI die gewonnenen Punkte aufaddiert und eine absteigende Liste gebildet (vgl. Abbildung 105). Zur Anzeige auf dem Display gelangen dann diejenigen POIs mit den 212

eine infrastruktur f ¨ur das management von verteilten ... - DVS