An Abstraction Layer Exploiting Voice Assistant Technologies for Effective Human—Robot Interaction
Abstract
1. Introduction
- We propose an abstraction layer for HRI integrated with voice assistant technologies;
- Out of the proposed abstraction layer, we instantiated a use case;
- For the proposed use case, we show how to integrate voice assistant technologies (we used Google Assistant and its developer’s suite) with applications written for the used robotic platform; as such, we developed a Chess game by using Dialogflow [20] of Google that we integrated within the proposed use case;
- We illustrate the kinds of applications that can be developed for the proposed use case using and combining cloud or server platforms, DialogFlow, and Choregraphe, therefore leaving free the robotic platform’s resources;
- We identified six different stakeholders and five scenarios to evaluate the proposed use case using the Software Architecture Analysis Method (SAAM) and used questionnaires to test the related user experience.
2. Related Work
2.1. Robotic Wheelchairs
2.2. Voice Assistant Tools
3. The Proposed Abstraction Layer
3.1. HRI Component (HRIC)
- A voice assistant interface (VAI): this is an abstraction of the embedded voice assistant tool being used. It includes the software elements to receive the audio, analyze it, send it to the voice assistant cloud, and retrieve the answer. If an HRIC has been invoked (using a particular voice command), then a string is sent to the next element without forwarding the voice command to the voice assistant (i.e., the framework responsible for the control of HRICs takes over and internally handles the commands without forwarding to the voice assistant).
- Switch application: when the user invokes an existing HRIC (usually by calling the HRIC to invoke), the string returned from the previous application is forwarded to a switch element that routes the request and enables the called HRIC.
- HRIC interfaces: these are connected to the switch element and are linked to the HRIC that performs specific actions. They can be removed or extended as soon as new HRICs are included in the design. When the called HRIC ends its execution, the control is returned back to the voice assistant interface.
3.2. Voice Assistant Component (VAC)
- It is possible to send the user’s audio by using the SDK of the adopted voice assistant tool to its related cloud server handling the APIs for voice recognition;
- The answers to the user’s questions are returned in a text or audio format. If the former occurs, the robot voice (or text-to-speech tools if the robotic platform is not equipped with speakers) could be used to read the answer. If the latter, the audio is simply played;
- Custom script commands can be used to extend the voice assistant tools (e.g., Google Assistant’s Custom Device Actions if Google Assistant is employed). This would allow triggering of other behaviors and not forwarding the request to the voice assistant tool.
3.3. Server Side Support Component (SSSC)
- The same SSSC can be used by different robotic platforms and different HRICs at the same time;
- The HRICs, to interact with SSSCs, need to be connected to the Internet and perform HTTP requests, which are very simple and not CPU-consuming tasks. For this reason, it is possible to upload a large number of HRIC before ending the physical space of a given robotic platform;
- An unlimited number of SSSCs can be uploaded in the cloud or on external servers.
3.4. Action Component (AC)
4. The Proposed Use Case
4.1. The Developed Applications
4.1.1. Bingo Game
Bingo HRIC
4.1.2. Semantic Sentiment Analysis Application
4.1.3. Generative Conversational Agent Application
4.1.4. Robot Action Commands Application
4.1.5. Object Detection Application
4.1.6. Mr. Chess Application
Dialogflow Agent
- Default Welcome Intent is the default intent of the dialog. It starts when the user begins the conversation, and it first explains the rules of the game. At the first run, it asks for confirmation to extract the user’s name from the Google account used in the callback function triggered by the intent. If it is a replay, the robot greets the user. Next, the intent checks if there is a pending active game, and the user is asked if either he/she wants to re-join it or if he/she wants to create a new one.
- Make a Move manages most of the interaction between the action and the user. It is capable of understanding all the possible chess moves, which will be sent to the Chess REST APIs through an HTTP call. According to the answer of the REST APIs, the action will answer accordingly. If, for example, the move is invalid, the user will be informed. The game continues until either a stalemate or a checkmate occurs. The Make a Move intent can be seen in Figure 2;
- See Board is a helper whose purpose is to print the updated chessboard when the user wants. Note that this function works when the used robotic platform has a device to show output. As such, it does not work in our test-case.
Chess REST API
5. Use Case Evaluation
5.1. Use Case Architecture Evaluation
- Modifiability allows changes to be made to a system quickly and cost-effectively.
- Portability is the ability of the system to run under different computing environments.
- Subsetability is the ability to support the production of a subset of the system or incremental development.
- Variability represents how well the architecture can be expanded or modified to produce new architectures that differ in specific ways.
- Functionality is the ability of the system to do the work for which it was intended.
- Identify stakeholders;
- Develop, prioritize and classify scenarios;
- Perform scenario evaluation;
- Reveal scenario interactions;
- Generate overall evaluation.
5.1.1. Identify Stakeholders
5.1.2. Identifying and Classifying Scenarios
- A maintainer with the task of installing the entire use case using a different OS (Windows) than the one (MacOS) used for initial development (DIRECT);
- A user interacting with the robot using each of the presented modules (DIRECT);
- A tester that performs all the needed debugging of the use case installed software modules (DIRECT);
- A developer willing to integrate into the current use case a new module consisting of an HRIC and a SSSC (INDIRECT);
- A developer willing to integrate into the current use case a new AC (INDIRECT).
5.1.3. Scenarios Evaluation and Interactions
5.1.4. Overall evaluation
5.2. User Experience
- Q1. How do you find the interaction with the robot? Six users gave a good score and four very good.
- Q2. How effectively did the robot classify positive and negative sentences? Five users gave a score of (very good), whereas five more gave normal, as they found some errors in the ability to recognize the correct sentiment.
- Q3. How effectively did the robot perform the action commands you gave? Seven users gave (good) mentioning that the robot was able to perform the action from a list. Three users gave normal complaining about the robot that was it not always able to recognize their commands. It was easy to fix this problem because users employed peculiar words not covered within the dictionary. The solution was to update the dictionary with the new words.
- Q4. How effectively did the robot identify objects? Eight users gave good as the robot correctly identified the object they showed. Two users gave normal because they used the application at an incorrect distance from the robot. We fixed this by letting the robot say, when the object detection module was triggered, to maintain a certain distance from it.
- Q5. How effective was the robot in playing Bingo or chess? All users gave good as the robot played both the games smoothly and the users had fun playing with it.
- Q6. What are the main weaknesses of the resulting interaction? The only complaint was pointed out by two users mentioning that tiredness of the user might appear when used extensively.
- Q7. Can you think of any additional features to be included in the robot interaction? The suggested features were: (1) to have the robot say instructions better when it was turned on and each time a certain module was triggered; (2) the ability to save all the data pertaining to the interaction with the user.
6. Conclusions and Future Works
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Acknowledgments
Conflicts of Interest
References
- Feil-Seifer, D.; Mataric, M. Robot-assisted therapy for children with autism spectrum disorders. In Proceedings of the 7th International Conference on Interaction Design and Children, London, UK, 17–24 June 2008; pp. 49–52. [Google Scholar] [CrossRef] [Scilit]
- D’Onofrio, G.; Sancarlo, D.; Raciti, M.; Recupero, D.R.; Mangiacotti, A.; Russo, A.; Ricciardi, F.; Vitanza, A.; Cantucci, F.; Presutti, V.; et al. MARIO Project: Experimentation in the Hospital Setting. In Proceedings of the Ambient Assisted Living—Italian Forum 2017, Eighth Italian on Ambient Assisted Living Forum, ForItAAL 2017, Genoa, Italy, 14–15 June 2017; pp. 289–303. [Google Scholar] [CrossRef] [Scilit]
- Organisation for Economic Co-operation and Development. Health at a Glance: Europe 2018; OECD Ilibrary: Paris, France, 2018; p. 212. [Google Scholar] [CrossRef] [Scilit]
- Commision, E. Investing in Health. 2013. Available online: https://ec.europa.eu/health/sites/default/files/policies/docs/swd_investing_in_health.pdf (accessed on 30 June 2021).
- Singh, A.; Misra, N. Loneliness, depression and sociability in old age. Ind. Psychiatry J. 2009, 18, 51–55. [Google Scholar] [CrossRef] [Scilit] [PubMed]
- More Hospitals Investing in Robots to Cut Costs in the Long Run. 2015. Available online: https://www.healthcarefinancenews.com/news/more-hospitals-investing-robots-cut-costs-long-run (accessed on 30 June 2021).
- Belpaeme, T.; Kennedy, J.; Ramachandran, A.; Scassellati, B.; Tanaka, F. Social robots for education: A review. Sci. Robot. 2018, 3. [Google Scholar] [CrossRef] [Scilit] [PubMed]
- Panayiotou, M.; Eteokleous, N. Robotics as Means to Increase Students’ Stem Attitudes; Chapter Projects and Trends; InScience Press: Lisboa, Portugal, 2017; pp. 216–220. [Google Scholar]
- Elias. Available online: http://www.eliasrobot.com/ (accessed on 30 June 2021).
- mBot, Global-Known Robot that Helps Kids Get Smarter as They Play. Available online: https://www.makeblock.com/steam-kits/mbot/ (accessed on 30 June 2021).
- Recupero, D.R.; Alam, M.; Buscaldi, D.; Grezka, A.; Tavazoee, F. Frame-Based Detection of Figurative Language in Tweets [Application Notes]. IEEE Comput. Intell. Mag. 2019, 14, 77–88. [Google Scholar] [CrossRef] [Scilit]
- Discover What Google Assistant Is. Available online: https://assistant.google.com/ (accessed on 30 June 2021).
- Siri Does More Than Ever. Even before You Ask. Available online: https://www.apple.com/siri/ (accessed on 30 June 2021).
- Microsoft Cortana. Available online: https://www.microsoft.com/en-in/windows/cortana (accessed on 30 June 2021).
- Amazon Alexa. Available online: https://developer.amazon.com/alexa (accessed on 30 June 2021).
- Build Natural Language Experiences with Wit. Available online: https://wit.ai (accessed on 30 June 2021).
- Snips. Available online: https://snips.ai/ (accessed on 30 June 2021).
- Erol, B.A.; Wallace, C.; Benavidez, P.; Jamshidi, M. Voice Activation and Control to Improve Human Robot Interactions with IoT Perspectives. In Proceedings of the 2018 World Automation Congress (WAC), Stevenson, WA, USA, 3–6 June 2018; pp. 1–5. [Google Scholar] [CrossRef] [Scilit]
- Faria, B.M.; Reis, L.P.; Lau, N. A Survey on Intelligent Wheelchair Prototypes and Simulators. In New Perspectives in Information Systems and Technologies; Rocha, Á., Correia, A.M., Tan, F.B., Stroetmann, K.A., Eds.; Springer International Publishing: Cham, Switzerland, 2014; Volume 1, pp. 545–557. [Google Scholar]
- Dialogflow. Available online: https://dialogflow.com/ (accessed on 30 June 2021).
- Miller, D.P.; Slack, M.G. Design and testing of a low-cost robotic wheelchair prototype. Auton. Robot. 1995, 2, 77–88. [Google Scholar] [CrossRef] [Scilit]
- Marchal-Crespo, L.; Furumasu, J.; Reinkensmeyer, D.J. A robotic wheelchair trainer: Design overview and a feasibility study. J. Neuroeng. Rehabil. 2010, 7, 40. [Google Scholar] [CrossRef] [Scilit] [PubMed]
- Hsu, P.E.; Hsu, Y.L.; Chang, K.W.; Geiser, C. Mobility Assistance Design of the Intelligent Robotic Wheelchair. Int. J. Adv. Robot. Syst. 2012, 9, 244. [Google Scholar] [CrossRef] [Scilit]
- Prassler, E.; Scholz, J.; Fiorini, P. A robotics wheelchair for crowded public environment. IEEE Robot. Autom. Mag. 2001, 8, 38–45. [Google Scholar] [CrossRef] [Scilit]
- Sgouros, N.M. Qualitative Navigation for Autonomous Wheelchair Robots in Indoor Environments. Auton. Robot. 2002, 12, 257–266. [Google Scholar] [CrossRef] [Scilit]
- Hartman, A.; Gillberg, R.; Lin, C.T.; Nandikolla, V.K. Design and development of an autonomous robotic wheelchair for medical mobility. In Proceedings of the 2018 International Symposium on Medical Robotics (ISMR), Atlanta, GA, USA, 1–3 March 2018; pp. 1–6. [Google Scholar] [CrossRef] [Scilit]
- Leaman, J.; La, H.M. A Comprehensive Review of Smart Wheelchairs: Past, Present, and Future. IEEE Trans. Hum. Mach. Syst. 2017, 47, 486–499. [Google Scholar] [CrossRef] [Scilit]
- Sukerkar, K.; Suratwala, D.; Saravade, A.; Patil, J.; D’britto, R. Smart Wheelchair: A Literature Review. Int. J. Inform. Commun. Technol. (IJ-ICT) 2018, 7, 63. [Google Scholar] [CrossRef] [Scilit]
- Knote, R.; Janson, A.; Eigenbrod, L.; Söllner, M. The What and How of Smart Personal Assistants: Principles and Application Domains for IS Research. In Proceedings of the Multikonferenz Wirtschaftsinformatik (MKWI), Lüneburg, Germany, 6–9 March 2018. [Google Scholar]
- Fernando, N.; Tan, F.T.C.; Vasa, R.; Mouzaki, K.; Aitken, I. Examining digital assisted living: Towards a case study of smart homes for the elderly. In Proceedings of the 24th European Conference on Information Systems ECIS, Istanbul, Turkey, 12–15 June 2016. [Google Scholar]
- Portet, F.; Vacher, M.; Golanski, C.; Roux, C.; Meillon, B. Design and Evaluation of a Smart Home Voice Interface for the Elderly: Acceptability and Objection Aspects. Pers. Ubiquitous Comput. 2013, 17, 127–144. [Google Scholar] [CrossRef] [Scilit]
- Teixeira, A.; Hämäläinen, A.; Avelar, J.; Almeida, N.; Németh, G.; Fegyó, T.; Zainkó, C.; Csapó, T.; Tóth, B.; Oliveira, A.; et al. Speech-centric Multimodal Interaction for Easy-to-access Online Services—A Personal Life Assistant for the Elderly. Procedia Comput. Sci. 2014, 27, 389–397. [Google Scholar] [CrossRef] [Scilit]
- Gárate, A.; Herrasti, N.; López, A. GENIO: An Ambient Intelligence Application in Home Automation and Entertainment Environment. In Proceedings of the 2005 Joint Conference on Smart Objects and Ambient Intelligence: Innovative Context-aware Services: Usages and Technologies, Grenoble, France, 12–14 October 2005; ACM: New York, NY, USA, 2005; pp. 241–245. [Google Scholar] [CrossRef] [Scilit]
- Gordon, M.; Breazeal, C. Designing a Virtual Assistant for in-Car Child Entertainment. In Proceedings of the 14th International Conference on Interaction Design and Children, Boston, MA, USA, 21–24 June 2015; Association for Computing Machinery: New York, NY, USA, 2015; pp. 359–362. [Google Scholar] [CrossRef] [Scilit]
- Hauswald, J.; Laurenzano, M.A.; Zhang, Y.; Li, C.; Rovinski, A.; Khurana, A.; Dreslinski, R.G.; Mudge, T.; Petrucci, V.; Tang, L.; et al. Sirius: An Open End-to-End Voice and Vision Personal Assistant and Its Implications for Future Warehouse Scale Computers. In Proceedings of the Twentieth International Conference on Architectural Support for Programming Languages and Operating Systems, Istanbul, Turkey, 14–18 March 2015; ACM: New York, NY, USA, 2015; pp. 223–238. [Google Scholar] [CrossRef] [Scilit]
- Sarikaya, R.; Crook, P.A.; Marin, A.; Jeong, M.; Robichaud, J.P.; Celikyilmaz, A.; Kim, Y.B.; Rochette, A.; Khan, O.Z.; Liu, X.; et al. An overview of end-to-end language understanding and dialog management for personal digital assistants. In Proceedings of the 2016 IEEE Spoken Language Technology Workshop (SLT), San Diego, CA, USA, 13–16 December 2016; pp. 391–397. [Google Scholar] [CrossRef] [Scilit]
- Usachev, D.; Khusnutdinov, A.; Mazzara, M.; Khan, A.; Panchenko, I. Open source platform Digital Personal Assistant. arXiv 2018, arXiv:1801.03650. [Google Scholar]
- MQTT: The Standard for IoT Messaging. Available online: https://mqtt.org/ (accessed on 30 June 2021).
- Atzeni, M.; Recupero, D.R. Deep Learning and Sentiment Analysis for Human-Robot Interaction. In Proceedings of the Semantic Web: ESWC 2018 Satellite Events—ESWC 2018 Satellite Events, Heraklion, Crete, Greece, 3–7 June 2018; Revised Selected Papers. pp. 14–18. [Google Scholar] [CrossRef] [Scilit]
- Dridi, A.; Reforgiato Recupero, D. Leveraging semantics for sentiment polarity detection in social media. Int. J. Mach. Learn. Cybern. 2017, 10, 2045–2055. [Google Scholar] [CrossRef] [Scilit]
- Atzeni, M.; Dridi, A.; Recupero, D.R. Using frame-based resources for sentiment analysis within the financial domain. Prog. AI 2018, 7, 273–294. [Google Scholar] [CrossRef] [Scilit]
- Atzeni, M.; Recupero, D.R. Fine-Tuning of Word Embeddings for Semantic Sentiment Analysis. In Proceedings of the Semantic Web Challenges—5th SemWebEval Challenge at ESWC 2018, Heraklion, Greece, 3–7 June 2018; Revised Selected Papers. pp. 140–150. [Google Scholar] [CrossRef] [Scilit]
- Atzeni, M.; Dridi, A.; Recupero, D.R. Fine-Grained Sentiment Analysis on Financial Microblogs and News Headlines. In Proceedings of the Semantic Web Challenges—4th SemWebEval Challenge at ESWC 2017, Portoroz, Slovenia, 28 May–1 June 2017; Revised Selected Papers. pp. 124–128. [Google Scholar] [CrossRef] [Scilit]
- Gangemi, A.; Presutti, V.; Recupero, D.R. Frame-Based Detection of Opinion Holders and Topics: A Model and a Tool. IEEE Comp. Int. Mag. 2014, 9, 20–30. [Google Scholar] [CrossRef] [Scilit]
- Recupero, D.R.; Presutti, V.; Consoli, S.; Gangemi, A.; Nuzzolese, A.G. Sentilo: Frame-Based Sentiment Analysis. Cogn. Comput. 2015, 7, 211–225. [Google Scholar] [CrossRef] [Scilit]
- Dridi, A.; Atzeni, M.; Recupero, D.R. Bearish-Bullish Sentiment Analysis on Financial Microblogs. In Proceedings of the 3rd International Workshop at ESWC on Emotions, Modality, Sentiment Analysis and the Semantic Web Co-Located with 14th ESWC 2017, Portroz, Slovenia, 28 May 2017. [Google Scholar]
- Atzeni, M.; Reforgiato, Â.; Recupero, D. Multi-domain sentiment analysis with mimicked and polarized word embeddings for humanoid robot interaction. Future Gener. Comput. Syst. 2020, 110, 984–999. [Google Scholar] [CrossRef] [Scilit]
- Reforgiato Recupero, D.; Spiga, F. Knowledge acquisition from parsing natural language expressions for humanoid robot action commands. Inf. Process. Manag. 2020, 57, 102094. [Google Scholar] [CrossRef] [Scilit]
- Reforgiato Recupero, D. Technology Enhanced Learning Using Humanoid Robots. Future Internet 2021, 13, 32. [Google Scholar] [CrossRef] [Scilit]
- Bass, L.; Clements, P.; Kazman, R. Software Architecture in Practice. 2003. Available online: https://books.google.ro/books?hl=en&lr=&id=ZY6UZTjBnGQC&oi=fnd&pg=PA1&dq=Bass,+L.%3B+Clements,+P.%3B+Kazman,+R.+%5Cemph%7BSoftware+Architecture+in+Practice%7D%3B++%5Chl%7B2003.%7D&ots=gsptTsR_rh&sig=YhRFJCTVL4ldBqRggttYO-SIBck&redir_esc=y#v=onepage&q&f=false (accessed on 30 June 2021).
- Kazman, R.; Klein, M.; Barbacci, M.; Longstaff, T.; Lipson, H.; Carrière, S. The Architecture Tradeoff Analysis Method. In Proceedings of the Fourth IEEE International Conference on Engineering of Complex Computer Systems (Cat. No.98EX193), Monterey, CA, USA, 6 August 2002; pp. 68–78. [Google Scholar] [CrossRef] [Scilit]
- Kazman, R.; Bass, L.; Abowd, G.; Webb, M. SAAM: A method for analyzing the properties of software architectures. In Proceedings of the 16th International Conference on Software Engineering, Sorrento, Italy, 16–21 May 1994; pp. 81–90. [Google Scholar]
- Clements, P. Active Reviews for Intermediate Designs; Software Engineering Institute, Carnegie Mellon University: Pittsburgh, PA, USA, 2000; p. 26. [Google Scholar]
- Ali Babar, M.; Gorton, I. Comparison of Scenario-Based Software Architecture Evaluation Methods. In Proceedings of the 11th Asia-Pacific Software Engineering Conference, Busan, Korea, 30 November–3 December 2004; pp. 600–607. [Google Scholar] [CrossRef] [Scilit]



Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2021 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Alonso, R.; Concas, E.; Reforgiato Recupero, D. An Abstraction Layer Exploiting Voice Assistant Technologies for Effective Human—Robot Interaction. Appl. Sci. 2021, 11, 9165. https://doi.org/10.3390/app11199165
Alonso R, Concas E, Reforgiato Recupero D. An Abstraction Layer Exploiting Voice Assistant Technologies for Effective Human—Robot Interaction. Applied Sciences. 2021; 11(19):9165. https://doi.org/10.3390/app11199165
Chicago/Turabian StyleAlonso, Ruben, Emanuele Concas, and Diego Reforgiato Recupero. 2021. "An Abstraction Layer Exploiting Voice Assistant Technologies for Effective Human—Robot Interaction" Applied Sciences 11, no. 19: 9165. https://doi.org/10.3390/app11199165
APA StyleAlonso, R., Concas, E., & Reforgiato Recupero, D. (2021). An Abstraction Layer Exploiting Voice Assistant Technologies for Effective Human—Robot Interaction. Applied Sciences, 11(19), 9165. https://doi.org/10.3390/app11199165

