Determining when to interact: The Interaction Algorithm
Current trends in society and technology make interruption a central human computer interaction problem. Many intelligent computer systems exist, but one that determines when best to interact with a user at appropriate times as s/he performs computer-based tasks does not. In this work, an Interaction Algorithm was designed, developed and evaluated that draws from a user model and real-time observations of the user’s actions as s/he works on computer-based tasks to determine ideal times to interact with the user. This research addresses the complex problem of determining the precise time to interrupt a user and how to best support him/her during and after the interruption task. Many sub-problems have been taken into account such as determining the task difficulty, the intent of the user as s/he is performing the task and how to incorporate personal user characteristics. This research is quite timely as the number of interruptions people experience on a daily basis has grown considerably over the last decade and this growth has not shown any signs of subsiding. Furthermore, with the exponential growth of mobile computing, interruptions are permeating the user experience. Thus, systems must be developed to manage interruptions by reasoning about ideal timings of interactions and determining appropriate notification formats. This research shed light on this problem as described below: 1. The algorithm developed uses a user model in its’ reasoning computations. Most of the research in this area has focused on task-based contextual information when designing systems that reason about interruptions. Researchers support additional work should be done in this area by including subjective preferences. 2. The algorithm’s performance is quite promising at 96% accuracy in several models created. 3. The algorithm was implemented using an advanced machine learning technology—an Adaptive Neural-Fuzzy Inference System—which is a novel contribution. 4. The algorithm developed does not rely on any user involvement. In other systems, users laboriously review video sessions after working with the system and record interruption annotations so that the system can learn. 5. This research shed light on reasoning about ideal interruption points for free-form tasks. Currently, this is an unsolved problem.