DIPARTIMENTO   DI   INFORMATICA
Università di Torino

Research Report Year 2002

Computer Science

Artificial Intelligence and Human-Computer Interaction

  People   Research Activities   Publications   Software Products   Research Grants

Intelligent User Interfaces

People

People

Last and first name

Position

Email

Torasso Pietro

Full Professor

torasso(at)di.unito.it

Console Luca

Full Professor

lconsole(at)di.unito.it

Ardissono Liliana

Associate Professor since November 1, previously Researcher

liliana(at)di.unito.it

Goy Anna

Researcher since November 1, previously Research Assistant

goy(at)di.unito.it

Torre Ilaria

Researcher since November 1, previously Ph.D. student Communication Science

ilatorre(at)di.unito.it

Magro Diego

Research Assistant

magro(at)di.unito.it

Petrone Giovanna

Computer Scientist

giovanna(at)di.unito.it

Segnan Marino

Computer Scientist

marino(at)di.unito.it

Gena Cristina

PhD Student in Communication Science

cgena(at)di.unito.it

Andrea Valente

PhD Student in Computer Science

valente(at)di.unito.it

 

 

Research activity in 2002

The activities of the Intelligent User Interfaces group concern the definition of techniques for improving the interaction between humans and computers. This activity has been coupled with a design and development activity, aimed at grounding such techniques by applying them to concrete examples.

Four main research topics can be identified: the design of agent-based architectures for the development of complex Web-based systems; the definition of personalization techniques to enhance the interaction with the user; the definition of problem-solving techniques for the resolution of complex problems; the analysis of the dimensions of user modeling.

  • The main result concerning agent-based architectures is Seta2000, a general-purpose, agent-based infrastructure for the development of Web-based systems supporting the personalization of the interaction with the user. In Seta2000, wrapping techniques are applied to enable heterogeneous agents to interact with each other in a shared communication language supporting the exchange of synchronous and asynchronous messages. This is essential to support the exploitation and the harmonic coordination, within a Multi-Agent system, of legacy software and of specialized tools for the execution of complex tasks. Moreover, Seta2000 supports the development of goal-based agents, which can display reactive and proactive behavior, therefore enabling the execution of autonomous tasks, in addition to service provision, during the management of the system activities. In the last year, the Seta2000 architecture has been extended to support the generation of User Interfaces suitable for the delivery of information through different communication channels. We have experimented the generation of user interfaces for Web browsers and WAP minibrowsers, starting from an XML-based internal representation of the user interface content. Moreover, we have experimented the support of services which can be delivered without requiring the continuous communication with the remote information server: this type of service is based on the exploitation of JME infrastructure, on Java-enabled mobile devices.
  • The research in the personalization area has produced interesting results concerning the generation of ubiquitous, user-adaptive interfaces for complex services.
  • Advanced user modeling and recommendation techniques have been developed within INTRIGUE project, which concerns the design and development of a personalized tourist information server. In particular, group recommendation has been addressed to model the requirements of possibly heterogeneous tourist groups (e.g., families with young children, groups including disabled people). Moreover, personalized recommendation techniques have been applied to support the suggestion of tourist attractions suited to the possibly conflicting needs of a heterogeneous tourist group (e.g., a family with elderly and children) and the explanation of the system's recommendations to the group. When generating a recommendation list, the system takes into account the preferences of the various subgroups in the tourist group, in order to select the features of the recommended attractions which best fit the (most relevant) group preferences. In this way, the user can identify, for each recommended item, the points of excellence w.r.t. the various subgroups and select the attractions to include in her/his itinerary in an informed way. Finally, personalization rules and dynamic text generation techniques have been applied to produce customized presentations "on the fly", on the basis of the user's interests and requirements, and complying with the (language and spatial) requirements of the specific device exploited by the user during the interaction (WAP phone, Web browser).

Furthermore, within MASTROcarONTE project, we have faced the problem of adaptation to the environment. The system runs on board car and provides personalized tourist information to the driver. Personalization strategies take into account the user model (containing the interests and preferences of the driver) but also a context model of the current driving conditions (location, speed, traffic, weather, etc.) and a consequent brief term user model with the status and cognitive load of the driver (coming from the combination of user model features, such as receptivity, and context features, such as driving hours). Personalization of contents (topics, items and ranking) is based on the user model, on current user location and time of the day (more some other weights). The amount of information and layout format depend mainly on the environment features, which are taken into account in order to satisfy the imperative safety requirement.

  • We have experimented the application of rule-based personalization strategies to the customization of the interaction with the user in complex problem solving tasks, such as the configuration of products and services in the Web. Within the CAWICOMS EU funded project (www.cawicoms.org), described below, we have developed an intelligent user interface that assists the user of a configuration system during the selection of the components and features of the product/service to be configured. The architecture of the user interface exploited in the CAWICOMS system is based on the exploitation of a rule engine which evaluates the alternative elicitation and presentation strategies (represented as weighted production rules) and selects, feature by feature, the best way to interact with the user. The user interface of the configuration system is generated on the fly, on the basis of the types of information to be elicited/presented. In particular, the user interface exploits a dynamic user model storing information about the user's expertise to elicit information about the user's requirements in personalized way. For instance, the system elicits the information about the needed features and the configuration parameters to be set on the basis of simple questions focused on the properties required by the user. Moreover, for any type of user (experts, novices) the system exploits the user's preferences and characteristics (e.g., type of company represented by the user interacting with the system) in order to suggest customized defaults to be selected during the configuration process. Finally, the system personalizes the presentation of the configuration solutions, in order to focus the description on the types of features which are most interesting to the specific user, and possibly links difficult information items and irrelevant ones as supplementary information pages, which the user may reach on demand.
  • We have investigated the capabilities of problem solving and reasoning mechanisms within an agent architecture supporting an user in configuring a complex service or product (possibly by accessing the services of the configurator via Web).

A complex entity can be viewed as a structured entity whose subparts can be complex entities in their turn, or atomic ones. Each entity that can only be "taken" as it is (i.e. whose "compositional structure" cannot be modified) is defined atomic. Thus, eventually, a complex entity can be considered as the result of an assembly of atomic ones. Each complex entity can be assembled in a huge number of different variants to meet the user requirements. Since it is impossible to list all of these variants, an intelligent system supporting the user should be able to build "on the fly" a description of a complex entity meeting the user requirements, if such a description exists or to detect the inconsistency of the requirements, otherwise. We say that such an intelligent agent solves "configuration problems". Theoretically, a configuration problem is computationally intractable in the worst case. We verified experimentally that such intractability does actually happen in practice.

Any configuration system for which efficiency is a major requirement (for instance, any configurator offering its services in the Web) must cope with this problem. In the past year we studied the role of problem decomposition in controlling, in practice, the computational complexity of the configuration process. The idea of decomposing a problem into a set of simpler (and possibly non-interacting) subproblems is well known in the Artificial Intelligence area. However, the research in configuration has not devoted much attention to problem decomposition until now.

We defined a set of decomposition strategies exploiting the partonomic knowledge as a basis for decomposing a configuration problem. We defined a set of decomposition strategies.

A first kind of decomposition is relevant to the capability of the configurator to recognize the components of its target complex entity that can be critical in the satisfaction of the user requirements. In this way, the whole problem can be portioned into two simpler subproblems: a first one concerning the configuration of the components possibly critical in the satisfaction of the requirements and a second one in completing such a configuration by inserting the other components. Such a decomposition proved to be very effective in practice, since it allows the configurator to detect the inconsistency of the user requirements as soon as possible. Moreover, such a decomposition strategy can be used in an interactive approach to configuration, in which the configurator should introduce in the complex entity only those components involved in the current set of requirements and it should leave the user the possibility of making choices on the othe components.

A second kind of decomposition tries to decompose the set of constraints relevant to a complex entity into a set of non-interacting classes of constraints. Such partitioning of the constraints induces a partitioning in the configuration problem. Such a decomposition can be applied only to the constraints directly associated to the target problem or recursively to those associated to each component.

A prototype of a configurator implementing all the above-mentioned decomposition mechanisms has been implemented and many experiments have been carried out that demonstrate the effectiveness of the decomposition in configuration.

The investigation of problem solving methodologies has also been addressed in the INTRIGUE project, where an intelligent agenda is being developed to support the user in the scheduling of itineraries. Given the tourist attractions that the user would like to see, the possible constraints concerning her/his visiting preferences, and the opening hours of such attractions, the intelligent agenda proposes itineraries complying with all such constraints. The scheduling of the itineraries is based on the exploitation of constraint-based techniques.

  • The goal of the analysis of the dimensions of user modeling is to single out a methodology of the user that need to be modeled, when tackling a specific application problem with specific goals for personalization. Preliminary usability evaluation of small applications (specifically, an active desktop) with limited and simple forms of personalization has been performed, to get a first impression of the techniques that are most promising in these very specific contexts.

During 2002, the research in the above-mentioned areas has been carried on within the following projects:

CAWICOMS

CAWICOMS (Customer-Adaptive Web Interface for the Configuration of Products and Services with Multiple Suppliers) is a project founded by the European Union within the "Information Society Technology" Programme of the V Framework. It started July 1st 2000 and ended in December 31st 2002.

The CAWICOMS project involved the following international partners: German Research Center for Artificial Intelligence, GmbH (DFKI), BT Exact, ETIS, ILOG SA, Telecom Italia S.p.A., University of Klagenfurt , University of Torino.

Focus of this project was to enable businesses to market complex customizable products and services by the new ways of electronic commerce. CAWICOMS will develop the technology for:

  • A new generation of configurators that will be able to deal simultaneously with multiple suppliers over a network, to interact with other configuration systems as well as with component catalogues, and to deal with different interaction styles and levels, depending on the customer.
  • Web-based human computer interaction that will be able to identify the skill-level, preferences, and needs of the customer.

Within the CAWICOMS project, the working unit of the Dipartimento di Informatica of the University of Torino (UTO) focused its own activity on the development of personalization strategies applied in the CAWICOMS user interface to customize the interaction with the user of configuration systems.

Several aspects of the interaction can be personalized. For instance, the layout of the interface, the amount of information to be displayed and the type of questions asked during the configuration of the product/service. The first phase of the project has focused on the last aspect, which strongly depends on the user's knowledge level and interests, and is critical to the usability of the configuration system. The information about the user's interests and skills, together with the underlying domain-specific knowledge about configuration models, is exploited to predict the user's choices during the configuration process. The ultimate goal is to reduce the number of questions to the user during the configuration process and to replace difficult questions which the user might not be able to answer with simpler ones. The decision of the best strategy for the elicitation of information about configuration parameters (e.g., ask the user to choose the preferred value, question her/him about a property of the product/service which is directly related to the parameter and can therefore support the parameter instantiation, exploit a personalized default to set the parameter value automatically, etc.) is made by evaluating alternative elicitation strategies, represented as rules in a rule-based system. As the user interface is dynamically generated during the interaction, the level of detail addressed during the configuration process continuously adapts to the most recent hypotheses about her/his expertise and interests, therefore gaining a reactive adaptation to the user's needs.

The second phase of the project has focused on the improvement of the interaction with the user and on the generation of personalized presentations of product and service solutions. As far as the first topic is concerned, the interaction flow during the configuration process has been updated to support a component-based organization of the configuration process. The user is allowed to select the components of the product/service to be configured first, and she may switch from component to component, depending on her own interests. She also may postpone configuration decisions, when she is uncertain about the parameter values to be selected, and finally she may trigger the automatic configuration of a partial solution, which means that she delegates the system to complete the configuration of the product/service with its own defaults. All these facilities are essential to enhance the usability of a configuration system and require an intelligent user interface managing the interaction context and mediating between the user and the internal configuration engine.

As far as the second topic is concerned (personalized presentation of solutions), a rule based approach has been exploited to develop presentation rules which, parameter by parameter, choose the best presentation strategy (e.g., present the feature in the main page, link it as technical information, link it as supplementary information about the item). The rules are represented, similar to the requirement elicitation ones, as weighted production rules.

It should be noticed that the generation of the personalized user interface is a complex task and requires the coordination of different types of activity. In particular:

  1. a user modeling activity, aimed to estimate the customer's interests and knowledge level, on the basis of her/his behavior during the interaction with the system;
  2. a conversion activity, aimed to translate (back and forth) the information coming from the Backend (which reasons in terms of configuration problems) into concepts understandable to users, i.e., not strictly related to the management con constraints and configuration problems, but more related to an external (though, possibly very technical) description of the product/service to be configured;
  3. a personalization activity, necessary to select the suitable interaction steps, given the problem at hand and the characteristics (expertise, interests) of the individual customer;
  4. a dynamic user interface generation activity, as the information presented on the user's screen must be integrated "on the fly", step by step during the configuration process.

The user inputs and the defaults suggested by the Frontend are handed to the Backend and the distributed problem solving mechanism is initiated. After the calculation of results - that are passed back using the generic data exchange mechanism - these results are also presented to the user in a personalized way, i.e., for instance the technical details are omitted.

INTRIGUE: technologies for tourism services

The project focused on the re-design of the multi-agent architecture developed within the SETA project (SErvizi Telematici Adattativi, 1997-2000, founded by Telecom Italia) to build adaptive Web based systems.

The basic principles behind the design are:

  • the identification of roles needed to offer the main functionalities of the system;
  • the definition of agents for these roles;
  • managment of the interaction between the agents.

A set of specialized agents have been defined. Each of them has a key role (for instance, the communication with the Web, page generation, etc.) and manages the related activities, using knowledge and technologies specific to the task. In particular the architecture includes:

  • an agent managing the interaction with the user from a logical stand point, allowing the system to decide the next step of the interaction based on context of the previous interaction and on the user requests
  • a set of specialized agents for the user modeling, the selection of information to present and the Web page generation
  • some agents have inference capabilities to decompose and solve complex problems

The activity within the project involved also the definition of the internal architecture of a single agent. This architecture has been designed to enable the interaction of heterogeneous agents and includes a wrapper to provide a unified message protocol between different kind of agents. The protocol includes synchronous, asynchronous and multicast types of messages. Moreover, the wrapper allows the agents to manage requests in parallel using the Java thread mechanism. Internally the agents can follow different paradigms: action-based or standard Java objects. For example, the User Modeling component needs to provide user data to other agents, but has also some autonomous activities to carry on, such as revising the user model during the interaction with the system: these activities should be managed independently from the other agents requests. Other agents, like the Personalization Agent, responsible for building the personalized Web pages, simply respond to requests from the browser.

A prototype for personalized tourism services on the Web has been developed, based on this architecture. The system presents to the user artistic attractions as well as restaurants or other useful services. The navigation of the tourist site can be done on the basis of different criteria: information can be found geographically or searching by categories (museums, buildings, restaurants, etc.) or combining the two strategies, for example the user can search for all the Baroque buildings in Torino.

The system has reasoning capabilities, since it is able to schedule the visit during a day by taking into account both the user's choices and other constraints. The system enables the user to select and insert in the agenda a set of artistic attractions of interest and to ask for a suggestion about the schedule of the day, taking into account the selected items and other constraints the user might have (for example the starting time of the visit, morning or afternoon preferences). The agenda is indeed a downloadable service, which may be run on a Java-enabled mobile phone, without requiring the continuous connection with the central server. This is an important technological advance with respect to traditional ubiquitous services, which rely on the communication with the central server to manage the whole interaction with the user, and represents a reasonable way to manage the problem that, at least now, wireless communication is very expensive for the user of a mobile phone.

MASTROcarONTE

In the MASTROcarONTE project (carried on in co-operation with Centro Ricerche Fiat and Magneti Marelli Electronic Systems) we investigated the application of adaptation and personalization techniques on board vehicle.

This is a special context of application where the user (driver) operates in peculiar conditions: low bandwidth, non continuous connection, small display, limited input resources and the parallel driving task, which implies that the driver cannot be distracted and cannot browse alternatives form more then some seconds.

In MASTROcarONTE we studied how adaptation (to the driver preferences and capabilities, but also to the context of interaction, including the location, the driving conditions, the time of the day, the presence of passengers) can be a powerful technique to conciliate the use of information systems and the driving task. It is noticeable the number and complexity of these systems is increasing even on average class vehicles and indeed the use of these systems can create serious problems.

In order to experiment the methodologies we developed, we implemented a prototype system that provides tourist information in an adaptive way. The system is distributed with some agents running on the car (we implemented them on the platform used by Magneti Marelli for current generation route planners and on board computers) and some on the service provider. Different forms of adaptation have been implemented, all of them based on user model and context model: personalized selection of information (topic, item, ranking), adaptive presentation, adaptive proactive behavior, with the autonomous activation of the system.

The system has been also tested showing that indeed it can provide useful suggestions and, even more important, can indeed adapt to the conditions of use.

 

 

 

 

 

Department home [Information] [People] [Research] [Ph.D.] [Education] [Library] [Search]
[Bandi/Careers] [HelpDesk] [Administration] [Services] [Hostings] [News and events]

Administrator: wwwadm[at]di.unito.it Last update: May 17, 2018