Supporting configuration choices in smart environments through personalized recommendations Federica Cena1 , Cristina Gena1 , Claudio Mattutino1 , Michele Mioli4 , Antonio Moreno4 and Fabiana Vernero4 1 University of Turin, Department of Computer Science, C.so Svizzera 185, 10149 Turin, Italy Abstract With the increasing availability of smart environments and IoT devices, end-users who might lack specific technical skills are more and more often confronted with configuration tasks. In this paper, we present a prototype we have built to experiment with personalized recommendations as a way to help end-users make configuration choices. On the one hand, it allowed us to test different similarity measures for user models. On the other hand, it offers different recommendation services which can be used to suggest trigger- and action-objects, as well as sample configuration rules. Keywords smart environments, user similarity, recommender systems, preferential choices 1. Introduction Smart environments integrate a large number of heterogeneous, connected IoT components, such as devices, operating systems and middleware solutions, in a single system aimed at supporting users in carrying out their tasks [1]. While technical challenges can arise regarding reliable communication, data exchange and timely reaction to local events, supporting end-users in the configuration of the environment itself can be non-trivial: this implies, on the one hand, designing usable composition interfaces [2], and, on the other hand, helping users to make preferential choices [3] in a domain they might know only superficially. Among other things, choices regard: 1. What IoT components to include in the smart environment; 2. Whether to establish an interaction pattern between two given components; 3. What event (trigger) should activate an interaction pattern; 4. What behaviour (action) should be carried out after a trigger event has occurred. In this short paper, we present a work-in-progress prototype1 we have built in the context of EMPATHY: Empowering People in Dealing with Internet of Things Ecosystems. Workshop co-located with INTERACT 2021, August 30, 2021, Bari, Italy Envelope-Open federica.cena@unito.it (F. Cena); cristina.gena@unito.it (C. Gena); claudio.mattutino@unito.it (C. Mattutino); michele.mioli@unito.it (M. Mioli); antonio.moreno@edu.unito.it (A. Moreno); fabiana.vernero@unito.it (F. Vernero) Orcid 0000-0003-3481-3360 (F. Cena); 0000-0003-0049-6213 (C. Gena); 0000-0002-0413-2436 (C. Mattutino); 0000-0002-8093-5943 (F. Vernero) © 2021 Copyright for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0). CEUR Workshop Proceedings CEUR Workshop Proceedings (CEUR-WS.org) http://ceur-ws.org ISSN 1613-0073 1 https://app.empathy.di.unito.it Figure 1: Web interface for the exploration of user similarity. the Empathy project2 to experiment with personalized recommendations as a way to help users make configuration choices. We assume that users can be described through user models (which are currently being defined) and we choose the smart home domain as a use case for our examples. 2. Prototype goals and functionality The prototype has got a double target. In the first place, the goal is to test different similarity measures on user models containing binary data. On the other hand, the target is to provide suggestions to the users based on the recommendation services (described below) that we have developed starting from an IFTTT dataset. Similarity measures. Our provisional user models describe binary features such as user goals (e.g. energy saving, comfort) and possessed smart objects. In order to test different similarity algorithms (Jaccard, Pearson, Cosine, Simple matching) we have built a web interface which allows to choose from: the users, the features of the user model, the similarity measures and it shows a table with most similar users based on the chosen index (Figure 1). Recommendation services. In our project we have applied some machine learning tech- niques (e.g., association rules) on an IFTTT rules dataset to extract the most relevant associations between smart objects. In order to achieve this purpose we have categorized all the objects of the dataset according to an ontology 3 Based on this data we have built the recommendation services which suggest the object categories to combine with the input category as a trigger or as an action to compose a trigger-action rule. We have also built two pages in the web interface to show these services. More specifically, one page suggests action object categories, given a 2 http://www.empathy-project.eu/ 3 For our purpose, we extended the EUpont ontology adding more classes [4] Figure 2: Web interface for the recommendation of action object categories. Figure 3: Web interface for the recommendation of configuration rules. trigger object category, while the other one suggests the trigger object categories, given an action object category. As we can see from Figure 2, when choosing the trigger (or the action in the other specular page) the different categories are shown with a number that represents the confidence originating from the machine learning algorithm that has been used4 . The categories with higher value of confidence represent the most used pairings in the IFTTT dataset. Once the categories have been chosen, three examples of rules from the IFTTT dataset are suggested (Figure 3). 4 Apriori algorithm for association rule learning Figure 4: Software architecture of our work-in-progress prototype. 3. Prototype implementation The software architecture is exemplified in Figure 4. The web interface is developed using Vue.js and Vuetify as a material design framework. The application server is implemented with Spring Boot and exposes a set of REST API. The recommender is a module built in Java which contains all the logic required to provide the different techniques of recommendation. The data are stored in a mongoDB instance and they are organized in different collections and databases. 4. Conclusion and future work The described prototype exemplifies a number of recommendation-related services to be used for the configuration of smart environments. In an interoperability perspective, future work includes the definition of open APIs which potentially enable any smart environment to query our services in order to get configuration recommendations, for example obtaining suggested action object categories to pair with a trigger object category provided as an input and vice-versa. In addition, we are planning to use our similarity calculation module to generate personalized suggestion in the style of collaborative filtering [5], for example by recommending smart objects owned by other users who have a similar profile. Finally, at the moment we are carrying out a user study with the goal of assessing how helpful trigger, action and rule recommendations are to users who are given a configuration task. Perceived usefulness and other user-experience related metrics will be studied in connection with psychological constructs such as self-efficacy, intellect and mindset, in order to determine whether these could be taken into account in the recommendation generation process. Acknowledgments This work is partially supported by the Italian Ministry of University and Research (MIUR) under grant PRIN 2017 “EMPATHY: EMpowering People in deAling with internet of THings ecosYstems”. References [1] S. Bansal, D. Kumar, Iot ecosystem: A survey on devices, gateways, operating systems, middleware and communication, International Journal of Wireless Information Networks 27 (2020) 340–364. [2] Y. Dahl, R.-M. Svendsen, End-user composition interfaces for smart environments: A preliminary study of usability factors, in: A. Marcus (Ed.), Design, User Experience, and Usability. Theory, Methods, Tools and Practice, Springer Berlin Heidelberg, Berlin, Heidelberg, 2011, pp. 118–127. [3] A. Jameson, B. Berendt, S. Gabrielli, F. Cena, C. Gena, F. Vernero, K. Reinecke, Choice architecture for human-computer interaction, Found. Trends Hum. Comput. Interact. 7 (2014) 1–235. URL: https://doi.org/10.1561/1100000028. doi:10.1561/1100000028 . [4] F. Corno, L. De Russis, A. M. Roffarello, A high-level approach towards end user development in the iot, in: Proceedings of the 2017 CHI Conference Extended Abstracts on Human Factors in Computing Systems, CHI EA ’17, Association for Computing Machinery, New York, NY, USA, 2017, p. 1546–1552. URL: https://doi.org/10.1145/3027063.3053157. doi:10. 1145/3027063.3053157 . [5] C. C. Aggarwal, Neighborhood-Based Collaborative Filtering, Springer International Publishing, Cham, 2016, pp. 29–70. URL: https://doi.org/10.1007/978-3-319-29659-3_2. doi:10.1007/978- 3- 319- 29659- 3_2 .