An Approach to Explainable Automations in Daily Environments
Authors: Maenza Sara , Mattioli Andrea , Paternò Fabio 
Published: January 2024

The main current technological trends are the Internet of Things and Artificial Intelligence. Indeed, current forecasts indicate that while the number of general purpose devices (e.g. smartphones, laptops) is slightly increasing, the number of connected objects (objects of our everyday life) is increasing in an almost exponential way. Thus, such technologies together with AI algorithms based on large data sets and statistical predictions are able to generate automations that can take place in the various places where we live (e.g. stores, older adults residences, industrial sites, smart homes).Such technological trends open up great opportunities, new possibilities, but there are also risks and new problems. There can be intelligent services that eventually generate actions that do not match the real user needs. The introduced automations can generate unwanted effects. People may have difficulties in understanding how to drive the automatically generated automations. Thus, one fundamental challenge is how to provide tools that allow users to control and configure smart environments consisting of hundreds of interconnected devices, objects, and appliances ? Tools that allow people to obtain “humanations”, which are automations that users can understand and modify.Trigger-Action Programming (TAP) is a useful connection point between the wide variety of technologies and implementation languages considered and people without programming experience. It is based on sets of personalization rules in the format: when something happens (trigger) something must be done (action). They do not require particular algorithmic skills or knowledge of complex programming structures. However, this approach presents nuances that may become apparent and critical in complex and realistic cases generating undesired effects. It is important that users are aware of the temporal aspects associated with triggers (events vs conditions) and actions (instantaneous vs sustained) otherwise the automations may not execute as the users expect. In a smart environment usually there are multiple active automations, whose resulting behaviours can interfere among them. Users should be made aware of the possible security and privacy issues (for example if they create an automation that whenever a photo is taken the image is uploaded on facebook, they should be aware that in some cases it may make public private information).In the paper we present a design space to consider such issues and an approach to addressing them. In order to better manage the temporal dimension of trigger and actions it is important to represent explicitly such aspects. In addition, it is important to consider them also when triggers and actions are composed in a rule to avoid unlikely situations (such as when composing two events in a trigger) or ambiguous ones (such as when a trigger condition is associated with an instantaneous action, should it be performed once on as long as the condition is verified?).For the management of multiple automations we have identified four possible cases to address. One is rule conflict that occurs when different automations require an object to perform different actions at the same time. Another case is rule prevention, which means that the performance of an automation does not allow the triggering of another one. A different case is “unexpected rule chain” in which the performance of an automation has the effect of triggering another one, which is not relevant for the user. The last case is rule loop in which the performance of an automation triggers one or more automations, which in the end trigger again the first one.In general, explaining automations for allowing users to manage such situations requires to decide what information to provide, when showing it, and in which modality. For deciding what explanation to provide it is important to consider the typical questions that users ask in such contexts and their actual goals. Such questions address various types of explanations. The most common is explaining why or why not a given automation can be triggered in a context of use. A typical follow up question is what if some aspects of the trigger are modified (to understand whether the automation can be actually triggered with such changes). A further follow-up question would be what is the scope of change permitted to get the same effect.In our experience we have noticed that in general the relevance of an automation depends on what the current user goal is. For example, in an Ambient Assisted Living project relevant user goals were safety, comfort, wellbeing, health, and socialization. Thus, it is important to introduce a user goal-oriented automatic adviser able to indicate what should be modified in the current automations in order to better achieve the desired goals.In the paper we will detail this design space for explainable automations, discuss how to support it, and show example applications.