Interaktive Dialoge mit Robotern – Design und Entwicklung

Firmen setzen seit Kurzem Chatbots im Kundenservice ein. Interaktive Roboter bieten im Kundengespräch jedoch Möglichkeiten, die weit über konventionelle Chatbots hinausreichen. Christoph Spindler führt in seinem Artikel in die Möglichkeiten zum Dialog mit den Robotern ein und erläutert die Umsetzung eines konkreten Use Cases.

Autor Christian Spindler
Datum 29.08.2018
Lesezeit 11 Minuten

Dieser Blog ist eine Vertiefung zu meinem kürzlich erschienenen Artikel über «Humanoide Roboter in der Kundeninteraktion» Link zum Blog. Im Artikel gehe ich auf die konzeptionellen technischen Details zur Realisierung interaktiver Dialoge mit Robotern ein. Dies könnte insbesondere für Personen interessant sein, die die Kundenansprache ihrer Unternehmen durch Technologie interessanter und effizienter gestalten möchten.

Humanoide oder menschenähnliche Roboter eröffnen neue Wege zur Human-Machine-Interaction (HMI). Ihre vielfältigen Kommunikationskanäle lassen sie auf Sprache ebenso reagieren wie auf Berührung oder Eingaben auf zugehörigen Touch-Displays. Sie ermöglichen Kommunikation auf emotionaler Ebene wie mit keinem anderen technischen Produkt.

Der Artikel beruht auf den Erfahrungen, die wir mit den Robotern NAO und Pepper des Herstellers Softbank Robotics während der letzten Monate gewonnen haben. Der Artikel führt in die Möglichkeiten zum Dialog mit den Robotern ein und erläutert die Umsetzung eines konkreten Use Cases.

Vorstellung NAO/Pepper als physische Dialogpartner

Pepper und NAO sind zwei Ausführungen humanoider Roboter, die in den letzten Jahren Neugier am Markt weckten. Die Roboter können sehen, sprechen und sich im Raum bewegen. Pepper besitzt zusätzlich ein Tablet, das Inhalte wie Videos oder Websites darstellen kann und das menschliche Gegenüber durch Informationen browsen lässt. Ethernet und WLAN-Module ermöglichen es den Robotern, sich mit Netzwerken zu verbinden. Sie sind somit prinzipiell beliebig in ihrem Funktionsumfang erweiterbar. Viele Anwendungen, die Pepper und NAO ermöglichen, lassen sich zwar auch mit konventioneller Hardware und Software umsetzen. Die humanoiden Roboter vereinen jedoch die Interaktion zu einem Gesamterlebnis, das wir Holobotics nennen.

Die Konzeption eines Chatbots basierend auf einer Roboter-Plattform

Chatbots, wie sie beispielsweise auf Websites eingesetzt werden, um den Kundenservice zu erweitern, weisen heute eine hohe Funktionalität auf. Die Interaktion mit Chatbots ist immer besser auch durch natürliche Sprache möglich. Bei der Portierung eines web-basierten Chatbots auf einen Roboter (und entsprechend der Gestaltung des Dialogs durch Sprache, nicht durch Text) beobachten wir, wie die Erwartungshaltung von Benutzern an die künstliche Intelligenz wächst. Bei gleicher Logik des Chats ist der Wunsch nach einer Unterhaltung in natürlicher Sprache, auch über das eigentliche Thema des Dialogs hinaus (Stichwort Small Talk), deutlich stärker als bei einem gewöhnlichen Chatbot auf einer Website. Bei der Konzeption von Dialogen mit Robotern sollte dem Rechnung getragen werden.

Eine Hierarchie der Dialoge mit Robotern

Ähnlich wie bei konventionellen Human-Machine-Interfaces auf Laptops oder Mobiltelefonen lassen sich auf humanoiden Robotern verschiedene Anwendungen mit unterschiedlicher Komplexität implementieren. Eine Möglichkeit, diese Anwendungen zu kategorisieren, zeigt folgende Abbildung.

Dialog mit Robotern

Auf der linken Seite sehen Sie Anwendungen geringer Komplexität. Nach rechts wächst die Komplexität von Anwendungen, sei es durch Hinzunahme von Interaktionskanälen (erst Tablet, dann Tablet und Sprache etc.) oder durch die Schwierigkeit der Aufgabe: Ein regelbasierter Dialog ist simpler als unstrukturierter Small Talk.

Ich möchte die dargestellten Stufen an einem Beispiel verdeutlichen: Ein Gast, nennen wir sie Heidi, erlebt einen Roboter als Kellner im Restaurant.

  • Beginnen wir auf der linken Seite mit der leichtesten Aufgabe: Heidi möchte sich aus der Speisekarte ein Menü aussuchen. Dies entspricht dem Suchen von Informationen aus einer vorgegebenen Auswahl und könnte zum Beispiel durch Darstellung der Speisekarte auf dem Tablet erfolgen. Es gibt keine besonderen technischen Voraussetzungen für diesen Fall, ausser dass die Speisekarte auf dem Roboter verfügbar sein muss und das Tablet sie darstellen kann.
  • Von der Auswahl überwältigt, möchte sich Heidi nun speziell vegetarische Gerichte anzeigen lassen. Technisch entspräche dies dem zweiten Fall einer anfragebasierten, strukturierten Suche. Heidi kann diese Frage verbal an den Roboter richten, der lediglich das Wort «vegetarisch» versteht, die Menüs anhand der Zutaten klassifiziert und daraufhin die entsprechende Selektion auf dem Tablet darstellt.
  • Etwas komplexer wird es nun, wenn Heidi sich nur auf grüne Gerichte beschränken möchte. Ob ein Gericht grün aussieht, ist leider nicht aus den Zutaten ersichtlich. Allerdings sind Fotos der Gerichte auf dem Roboter hinterlegt, der nun auf diese unstrukturierten Informationen über Bilderkennungsverfahren zugreifen kann. Es erscheint eine Auswahl grüner, vegetarischer Gerichte auf dem Tablet.
  • Leider ist Heidi noch immer unentschlossen und fragt den Roboter, was er denn empfehlen würde. Nun sind die Small-Talk-Fähigkeiten des Kellnerbots gefragt. Guter Small Talk ist nicht strukturiert, spontan und kreativ. Dies sind Fähigkeiten, die sich nicht gut anhand von Regeln programmieren lassen. Auch moderne Verfahren, die Deep Learning für die Sprach- und Dialogerzeugung einsetzen, stossen hier noch an spürbare Grenzen.
  • Schliesslich hat sich Heidi entschieden und wenig später bringt der Roboter ihr Essen an den Tisch. Der Roboter muss sich sicher in einer dynamischen, schlecht belichteten (es ist ein stimmungsvolles Restaurant) Umgebung bewegen und dabei unbedingt vermeiden, das Gericht fallen zu lassen oder auch nur zu stark zu bremsen. Falls wir nicht von spezialisierten Transportrobotern ausgehen, sondern tatsächlich dem humanoiden Roboter mit seinen zwei Armen das Servieren überlassen, ist diese Aufgabe am komplexesten.

Diese Kategorisierung ist hilfreich, da sie erlaubt, neue Kundenanforderungen auf bestehende Strukturen abzubilden und somit gezielt und modular Software für die Umsetzung der Anforderungen zu entwickeln sowie die Kosten hierfür besser abzuschätzen. Dabei erhebt sie keinen Anspruch auf Vollständigkeit: Wir freuen uns über Kommentare mit Anregungen und eigenen Erfahrungen.

Im Folgenden beschreibe ich ein Beispiel, das innerhalb dieser Kategorisierung entwickelt wurden.

Ein Taxbot mit NAO

Der Prozess

Wir befinden uns nun in einem steuerrechtlichen Szenario. Das Auffinden relevanter Gesetzestexte zur Einschätzung eines steuerrechtlichen Sachverhalts ist mitunter zeitaufwändig und erfordert Fachkenntnisse. Gleichzeitig ist Steuerrecht relativ gut strukturiert und eignet sich daher, automatisiert abgefragt zu werden. Wir haben einen interaktiven Steuerrechtsroboter für eine spezifische Fragestellung zur Demonstration implementiert. Die Frage lautet: «Stellt ein Agent im Ausland für mein Unternehmen eine Betriebsstätte dar?» Wir wollen diese Frage mündlich unserem Roboter stellen und erwarten eine Antwort auf die Frage sowie die Begründung anhand des Gesetzestexts. Der Sachverhalt lässt sich als Entscheidungsbaum mit mehreren Fallunterscheidungen modellieren. Wir ordnen die Aufgabe in Kategorie 3, anfragebasierte, unstrukturierte Suche, ein.

dialog mit robotern

Diese Abbildung zeigt unsere Umsetzung des Taxbots mit NAO. Der Roboter fragt nach dem Sachverhalt und wird so lange nachfragen, bis alle benötigten Informationen, wie betroffenes Land, Jahr etc. genannt wurden. Anschliessend werden diese Informationen einer Knowledge-Datenbank übergeben, die passende Gesetzestexte sucht. Die Textpassagen werden noch mit Kontext versehen und schliesslich von NAO vorgetragen. Der Benutzer wird durch den Frageprozess geführt und erhält nach kurzer «Denkpause» eine passende Antwort, sodass sich ein flüssiger Gesamteindruck ergibt.

Die technische Realisierung

Der Gesamtprozess wurde in mehreren unabhängigen Modulen implementiert. Die Begrüssung zu Beginn der Interaktion wurde in der grafischen Oberfläche Choreograph des Herstellers umgesetzt. Für die Spracherkennung der Antworten des Benutzers testeten und nutzten wir einerseits die eigene Software des Roboters als auch die Google Speech API unter verschiedenen Umgebungsbedingungen. Die Spracherkennung übersetzt die aufgenommene Sprache in Wörter und gibt diese an unseren Server zurück. Wurden die Eingaben ausreichend verstanden, werden die Wörter nun an unser Knowledge-System übertragen. Es handelt sich um ein linguistisches Expertensystem, dem im Vorfeld ein Korpus relevanter Steuergesetze übergeben wurde. Das Expertensystem durchsucht diese Gesetze mit linguistischen Methoden und findet die relevanten Auszüge für die Fragestellung.

Alle Interfaces zwischen den Modulen sowie die Ansteuerung der Google Speech API wurden mit Python umgesetzt.

Ausblick

Im beschriebenen Beispiel wurde der Funktionsumfang von NAO erheblich erweitert, indem Komponenten durch APIs eingebunden wurden. Zusätzlich verlief die Kommunikation über einen Server, der zwischen NAO und externen Anbietern vermittelte. Diese Architektur erlaubt maximale Flexibilität, bei gleichzeitig hohen Sicherheitsstandards, da der Roboter nicht direkt an das Internet angebunden ist.

In einem folgenden Blogbeitrag werde ich näher auf den Einsatz von Pepper und NAO hinter der Firewall von Unternehmen eingehen und unseren Use Case als WelcomeBot vorstellen.

Ich freue mich, wenn dieser Artikel ihre Neugier an humanoiden Robotern wie Pepper sowie am Holobotics-Konzept wecken konnte.

Artificial-Intelligence-Seminare bei Digicomp


Über den Autor

Christian Spindler

Daten - ob von Maschinen, Geschäftsprozessen oder von externen Quellen - sind die Basis jedes Mehrwertes aus Digitalisierung und IoT. Mit der Software- und Modellierungs-Boutique  DATA AHEAD ANALYTICS unterstützt Sie Christian Spindler in allen Aspekten zur quantitativen Entscheidungsfindung mit Beratung, Proof-of-Concepts sowie Prozess- und Toolentwicklung. Christian Spindler hat mehr als 10 Jahre Erfahrung mit Data Science und künstlicher Intelligenz. Vor DATA AHEAD ANALYTICS war Christian Spindler Senior Manager bei der globalen Beratungsgesellschaft PricewaterhouseCoopers, wo er die IoT & AI Aktivitäten innerhalb der Data Analytics Abteilung leitete. Er führte eine Vielzahl von Analytics Projekten in Segmenten Financial Services, Manufacturing, Telecommunications, Pharma und Public Services durch. Vor dieser Station erlang Christian Spindler langjähriges Training in Simulation, Modellierung und Machine Learning durch Tätigkeiten in Managementberatung, industrieller Forschung und Entwicklung, sowie akademischer Forschung. Christian Spindler besitzt eine quantitative Ausbildung mit Doktorat in Physik and erlangte einen M.B.A. mit Auszeichnung der Hochschule St. Gallen.