Keywords

These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

1 Introduction

Designing a multi-user adaptive interface means designing for diversity in end-users and contexts of use, and implies making alternative design decisions, at various levels of the interaction project, inherently leading to diversity in the final design outcomes. Towards this end, a method leading to the construction of a single interface design instance is inappropriate, as it cannot accommodate for diversity of the resulting dialogue artifacts. Therefore, there is a need for a systematic process in which alternative design decisions for different parameters may be supported. The outcome of such a process implements a design space populated with appropriate designed dialogue patterns, along with their associated parameters (e.g. user- and usage-context-attribute values).

The present study provides an overview of the methods currently applied to the definition and development of AUIs. To support the definition of a novel user interfaces able to react with the human psychophysical states, and interact in accordance with the environmental conditions monitored by local sensors, a new method is proposed.

2 Research Background

2.1 Adaptive & Adaptable User Interfaces

The concept of a system able to adapt itself depending on requirements or criteria other than, or even at user’s request, is not new. The research literature describes many approaches that can be used to design flexible user interfaces, which can be classified into two broad categories: adaptable and adaptive.

Benyon [1] defines Adaptive Systems as systems, which can alter aspects of their structure or functionalities in order to accommodate different users’ needs and their changes over time. Adaptive systems are based on the principle that the system should be capable of identifying those circumstances that necessitate adaptation, and accordingly, select and effect an appropriate course of action.

Accordingly, AUIs are able to adjust their displays and available actions to the user’s current goals and abilities by monitoring user status, the system state and the current situation, at run time, according to an adaptation strategy [2].

On the other hand, Adaptable systems offer to users the capability to select, or set between different alternative presentation and interaction characteristics, among the ones built into the system. Adaptable User Interfaces (AdUIs) can be defined as systems in which the activation and selection of user-computer interaction, is performed by the final user through the selection of a specific user profile from a predefined list. Adaptability is based on user characteristics and preferences that are known prior to interaction and, in any case, are assumed to remain static throughout a single interaction session.

The separation between the adaptivity and adaptability is very thin. Both approaches have their pros and cons. The most important advantage of adaptable systems is that the users are in total control of the individual appearance and interface. Otherwise, the use of adaptive user interface seems to help to improve user interaction with systems by facilitating user performance, minimizing the need to request help, easing system use, helping users deal with complex systems and avoiding cognitive overload problems ([3, 4]). Some studies indicate that an intermediate level of adaptivity should be consider as a good compromise, as it can help to keep users involved in the task and help them to become more skilled to perform routine and non-routine tasks [5].

2.2 Advantages and Disadvantages of the Principal Types of Interface

Currently, the main methods used to manage user interface adaptation can be classified in [6]:

  • Adaptable/Manual: the user manages the process and performs all actions;

  • Adaptable with system support/User Selection: the user dominates the adaptation process and the system supports it;

  • Adaptive with user control/User Approval: the system dominates the adaptation process under the supervision of the user. The system initiates the action and notifies the user about the alternative that he/she has to choose;

  • Adaptive/Fully adaptive: the whole process is managed by the system, which decides and implements the action based on the preferential model and the main uses.

In this context, due to the complexity of the issues and the lack of careful experimentation, it is difficult to determine the best method.

Founding ourselves on experimental data coming from the literature is however possible to provide a list of advantages and disadvantages related to the different types of interface (Table 1).

Table 1 Summary diagram

The most important advantage of adaptable interfaces is that the users are in total control of the individual appearance of the user interface. However, this advantage is at the same time the main shortcoming of adaptable user interfaces: for example, users with disabilities and lower levels of ICT (information and communication technology) literacy would benefit most from personalized user interfaces, as they often have severe problems with standard configurations. However, customization dialogues often are a significant barrier even for skilled users [7].

An adaptable with system support interface is more efficient than previous: it provides support to the user during the performance of duties. In this case the management of the interface is delegated mainly to the user, while the system plays a limited role of support. It is often used in complex systems where the consumer is assisted in the decision, in order to support the decision making process.

Fully adaptive interfaces are the most interesting for researchers, but are also the most invasive. Such interfaces are potentially able to provide more increase in terms of effort and to reduce the cognitive load. In fact, they refer to systems capable of predicting human behaviour, as they are capable of learning the user’s profile and preferences. However, they can be considered invasive in terms of privacy. In addition, the exclusion of the user from the adaptation process can lead to unwanted information.

Finally, adaptive interfaces with user control can be considered a good compromise between adaptive and adaptable interfaces: in this case, the system manages the adaptation process under the user’s supervision. Nevertheless there are different opinions about the benefits provides by this kind of interfaces: some believe that this type of interface may have a negative impact on privacy too, and that the continued demand for confirmations from the user can create frustration and confusion. On the other hand, others believe that the user involvement is a positive thing, as it avoids the complete control of the system.

3 Design an Adaptive User Interface

The Adaptive User Interface research field aims to provide highly usable systems for people with different needs and characteristics in different context of use. Consequently, Adaptive User Interfaces constitute one of the major direction of Human Computer Interaction research.

The Adaptive User Interface design is not a simple task. In fact, its development requires:

  • Assessing the user state of mind, state of psychology and level of awareness; it means to operate with nondeterministic data, increasing the complexity of the system;

  • Defining an appropriate interface adaptation behaviour [8];

  • Assessing the timeliness of the adaptation [9];

  • Defining a general method in the absence of a experimentation;

  • Assessing the usability and acceptability of a user interface without an established methodology;

  • Avoid to damage user’s privacy, and give unwanted information.

In general, the Design of an AUI requires several fundamental choices to make:

  • Establish who should adapt and what should be the role of User Interface in the adaptation process;

  • Define what goals should be mainly considered in the adaptation process;

  • Define a proper set of rules to manage the adaptation;

  • Define what level of the interaction should be considered and what are the adaptation variables;

  • Define methods in the adaptation process, an inference mechanism for the user’s choice.

The term adaptivity goals is intended for those particular objectives we want to pursue due to the process of adaptation (e.g. in order to minimize the number of errors, optimize efficiency and effectiveness, in accordance with the type of application and user for which the final system is intended). Most adaptive systems, nowadays aim to simplify and speed up the activity in a complex system, or to minimize the costs in terms of time and computational resources and to maximize the user’s satisfaction.

The design of an interface able to meet the various objectives is not an easy task; in case of developing adaptive system capable to improve the usability of the user interface or heterogeneous groups of users with different needs and abilities.

Extremely complex systems for some may result more user friendly and understandable for others. It is necessary to assess user’s ability in early stages, so as to identify appropriate targets fitting in accordance with each user profile.

The Adaptation rules guide the aspects of interaction based on the user’s characteristics, on the main task or on the nature and objective of the application. In general, the rules that guide the adaptation are strictly related to the system’s characteristics. Some of these rules are available in literature such as:

  • “If what has to be displayed is a structural analysis of a complex abstract domain, then use network charts” [10];

  • “If the task sub-goal requires spatial information—prefer visual media resource” [11];

  • “Condition: composition of whole into parts of types, Chart Reference: pie chart” [12];

  • “Condition: judging accurate values; Chart reference: table” [13].

These rules are usually in hardcode mode in the user interface, therefore are not easily adaptable to different applications. Moreover, these rules are monolithic; as a matter of fact the selection of the interaction aspects that will be adapted (e.g. the information content), do not depend on the adaptivity goals, but only upon the factors that drive the adaptivity process, such as the characteristics of the user.

This is a strong limitation for the development of adaptable user interfaces. In fact, this would lead to have in the case of users with varying skill levels, the need to define different rules even for the same goals. In this case the challenge concerns the development of a method that allows to change even “a posteriori” adaptation rules depending on the objectives and independently from the characteristics of the users or by the context of use.

According to the Rothrock’s methodology the interfaces adaptation should be activated by several factors; in order to define the adaptation it is necessary first to outline the “adaptation variables”.

The following is a list of variables referenced as trigger factors in literature [14]:

  • User Performance: defined as an error percentage in performing a task, in order to minimize number errors and minimize cost in term of resources and time;

  • User Goals: consist of level goal structures to accomplish a task;

  • User Knowledge is generally used in Human Computer Interaction domain: information about generally shared knowledge applicable across different domains business world, office work, human communication, etc.;

  • Cognitive workload: this should neither be too complex, otherwise the user will not be able to perform the task; the cognitive workload should not be homely otherwise not stimulate the user;

  • Situation and task variables: the interface should help the operator to find the problem and solve it; situation variables include system state, environmental conditions, etc.;

  • Interaction level: user presentation of input to the system, system presentation of information to the user, access to capabilities, task simplification.

Once goals, rules and variables are described, it is necessary to design a Computational Model to store the user’s profile and to develop the Adaptation Mechanism (AM).

There are several methods to develop AM: the most used are reported hereafter:

The “Artificial Neural Network” (ANN) represents a nonlinear statistical technique, principally used for the prediction. The ANN is a model constituted by a group of interconnections of artificial neurons and processes, using a connectionist approach to computation. An artificial neural network is an adaptive system that changes its structure, based on external or internal information that flows through the network during the learning phase. The ANN can be used to simulate the inputs/outputs (other analytic functions fail to represent) complex relationships.

In addition ANN is able to detect the relationship between different variables without any assumptions or any postulate model and to manage the data unreliability. However, the ANNs are significantly limited by the fact that it requires important database dimensions. Indeed, it is really important to train the ANN with an exhaustive learning basis, including representative and complete samples (e.g. samples in different seasons or in different moments of the day or during weekend).

The “Support Vector Machine” (SVM) is an artificial intelligence technique, usually used to solve classification and regression problems. Classification is a technique allowing to divide a set of data in several categories, whose characteristics are given by the user. Regression method allows one to describe a set of data by a specific equation. The complexity of the regression equation is given by the user. The main difficulty in the SVM technique is to select the best kernel function corresponding to a dot product in the feature space and the parameters of this kernel function. The main advantage of the SVM is the fact that the optimization problem is based on the structural risk minimization principle (SRM). It deals with the minimization of an upper bound of the generalization error consisting of the sum of the training error.

The “Bayesian networks” (BNs) represent another adaptation mechanism; the Bayesian rational provides a probabilistic inference approach. BNs are directed acyclic graphs where nodes relate to random variables. The nodes are connected by directed arcs, which may be seen as causal links from parent to children nodes. Each node is associated with a conditional distribution probability, which assigns a probability to each possible value of this node for each combination of its parent nodes.

The adaptive user interfaces require the software to be very flexible and quickly adaptable to any change in user behaviour.

BNs are more flexible than the models discussed above in the sense that they provide a compact representation of any probability distribution, they explicitly represent causal relations, and they allow predictions to be made about a number of variables (rather than a single variable, which is the normal usage of the above models). In addition, BNs can be extended to include temporal information [15] and utilities.

4 Proposed Method: Adaptive Management Interface

In order to study and develop an adaptive user interfaces with the purpose to guarantee socialization, safety and environmental sustainability in a domestic day-by-day living space, (e.g. a kitchen environment), new design methodologies have to be taken into account domotics environments related to different user’s profiles, so as to ensure addressing knowledge development, innovative technical solution and equipment.

This implies the definition and development of holistic and adaptive user interfaces aiming to satisfy the different utilization profiles/contexts and user requirements/skills.

Our target is the development of new methodologies for human-machine interaction and for user interfaces, according to the “design for all” paradigms. The user interfaces will be adaptive, in the sense that they will be easy and friendly for all including, to elderly and weak users. The novel user interfaces will react with the human psychophysical states, and interact in accordance with the environmental conditions monitored by local sensors. Moreover these interfaces will have to be able to define and represent user behavioural models with respect to the identified scenario.

The adaptation management system is based on the knowledge provided by three information models: the User Model, the Environment Model (or Domain Model) and the Interaction Model (Fig. 1).

Fig. 1
figure 1

Method to manage adaptive user interface

The User Model provides the description of the user’s profile pattern, according to its cognitive and physical structure, status and preferences. The user’s profile pattern it is outline according to the coding provided by the International Classification of Functioning, Disability and Health (ICF) [16]. The ICF is a valuable tool to classify and evaluate the psychological and physiological ability of an user. It has a universal application [17]: it does not focus only on disable people but allow to describe the health condition of any person. The domains contained in ICF are described from the perspective of the body, the individual and society in two basic lists: “Body Functions and Structures” and “Activities and Participation”. The domains for the Activities and Participation cover the full range of life areas (from basic learning or watching to composite areas such as interpersonal interactions or employment) (Fig. 2).

Fig. 2
figure 2

The user profile in according to the coding provided by the ICF

The environment model supplies the information pattern necessary to describe the environment of the human-machine interaction. Such information are related to its physical characteristics (e.g. typology of interactive devices, available means of interaction, etc.) as so as to its functionalities (e.g., supported activities or tasks) and its logical characteristics (e.g., information relates to management of the system functionalities performed by the adaptive interface) (Fig. 3).

Fig. 3
figure 3

The environment model

To support the definition of the environment model a Functional Modeling (FM) approach [18] can be adopted. Such approach is normally used by designers to represent the design problem in terms of functions that the product must support. The essential feature of any FM approach, is given by a decomposition process that, starting from the definition of an activity allows you identify the basic functions (or tasks or actions) needed to carry out it.

The Interaction model is the core of the whole adaptive process; as a matter of fact this model is in charge of the user and environmental model data management. The IM must recognize the user, store it’s needs and preferences. In addition it must be able to extract human-computer interaction information, provide the correct logical and task interpretation, allow a much more suitable environmental usability and define the event activation schedule.

Such complex adaptive systems require inference and evaluation mechanisms, which need to learn and interact with the local environment.

In the formal logic based systems it is assumed that available information and conclusions resulting from inferential rules are simply true or false. In an adaptive mechanism there is no direct access to the whole domain reality; the system to be developed must act within a range of uncertain data: such as unreliable, missing and inaccurate data. In addition incorrect environmental data may raise inaccuracy. Probabilistic theories provide the methods to correctly deal with inaccurate data systems, resulting from lack of domain knowledge (Fig. 4).

Fig. 4
figure 4

The interaction model, the core of the whole adaptive process

The Bayesian approach, mentioned above, provides a robust theory that merges together different technologies.

Its approach to probability may be extended to the learning aspects. Merging the results is very powerful theory that provides a general solution for learning and optimal forecasting Automatic learning is based on the idea that experience may improve the “agent” capability behaviour and future events, providing the ability to automatically update users profiles and predict users behaviours.

5 Conclusions and Future Developments

In order to develop a novel AUI according to the “design for all” paradigms, a new method of holistic and adaptive user interfaces is proposed to support the modeling of information related to the user and the context of the interaction.

Such method will be implemented by developing suitable software architectures and tools to simulate the adaptive user interfaces.

In a context in which the adaptation mechanism has not access to the reality of the whole domain and taking into account that the system developed will act in uncertainty cases, our effort to implement the user interfaces will focus on the following two aspects:

  • Accessibility according to user profile;

  • Adaptivity according to the utilization profile in order to improve efficiency and usability.

To generate the user profiles, subjects older than 40 years with different levels of technology affinity will be considered. In this way we will obtain a significant number of users which allows to characterize different levels of usability and functionality interface.

In accordance with the project, some areas of weakness have been highlighted; these outline the specific characteristics of the user such as: sensory disturbances/perceptual, cognitive and mood disorders.

The adaptation protocol, currently being implemented, will be based on a complex Bayesian network written by Java/C API (Netica software support).

The whole system will be managed centred on the user psychophysical profile and on man-machine interaction.

This work aims to implement in the “design for all” context an approach based exclusively on the user.

The final goal is to produce goods able to automatically satisfy the different skills, abilities, needs and human preferences, and not simply finding a single solution for everyone.

These prototypes will be tested through different use cases in the context of smart home environments. Possible application scenarios will be the living room and the kitchen that are characterized by a large number of household appliances.