Research activity in 2001
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 offering complex functionalities, among which the
personalization of the interaction with the user. This architecture
has been presented in major international conferences, such as IJCAI’01.
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. The
goal-based agents are defined by specifying the types of action they
can perform and the goals that the various actions achieve. A generic Agent
class defines; (i) the structure of the agent state; (ii) the
structure of its actions (characterized by goal, preconditions and
list of steps to be performed); (iii) an intepreter which, given the
current goal to be achieved, selects the action to be performed by the
agent. An agent instance is defined by extending the Agent
class: this extension consists in the definition of the type of
information included in the agents state and the individual action
types that the agent can perform. The agent interpreter, inherited
from the Agent class, exploits Java threads to speed up the
action execution process, therefore supporting a parallel service
provision. Moreover, it applies synchronization techniques to suspend
its own tasks when their execution is not possible (e.g., because the
preconditions of an action are not satisfied). Finally, the
interpreter exploits asynchronous communication to trigger the
autonomous execution of internal tasks, mainly related to the support
of proactive behavior.
-
The research in the personalization area has produced interesting
results concerning both user modeling and generation of personalized
interactions. In particular, the most recent application of user
modeling and recommendation techniques has been carried on within the
INTRIGUE project, which concerns the design and development of a
personalized tourist information server. As far as user modeling is
concerned, group recommendation has been addressed, in order to
support the recommendation of tourist attractions to possibly
heterogeneous tourist groups (e.g., families with young children,
groups including disabled people). This type of recommendation is
based on the exploitation of sterotypical information about the
preferences of typical tourist groups (e.g., disabled have special
requirements on transportation systems, etc.) and on the management of
structured group models, synthetizing the preferences of the various
homogeneous subgroups forming the tourist group. As far as the
personalization of the interaction with the user is concerned,
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, stored in the
group model. In INTRIGUE, such techniques have been applied, in
particular, in order to support 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.
The research about user modeling has been developed
also within a different project, funded by Telecom Italia Lab and
concerning the development of personalized electronic program guides.
Within this project, the focus has been placed on the integration of
alternative user modeling techniques in order to manage individual user
models that rely on extremely different information sources and
inference techniques. In particular, we have investigated the
integration of stereotypical information about TV viewers (which
contributes to the modeling task by predicting typical preferences of
the various types of viewer) with dynamic techniques, based on the
unobtrusive observation of the user’s zap-stream during the program
viewing activity.
-
We have investigated the capabilities of problem solving and
reasoning within an agent architecture supporting a costumer in a Web
store. In particular, we have investigated the issues relevant to
configuration of complex products. A complex product can be viewed as
a structured entity whose subparts can be complex products in their
turn, or atomic ones. Each product that can only be sold "as it
is", i.e. for which the customer has no way to change its
internal structure, is defined atomic. Thus, eventually, a complex
product can be considered as the result of an assembly of atomic ones.
Each complex product can be assembled in a huge number of different
variants to meet the customer's requirements. Since it is impossible
to list all of these variants, an intelligent system supporting the
customer should be able to build "on the fly" a description
of a complex product meeting the customer requirements (if any). In
order to approach this goal, we have developed a conceptual language
able to represent both taxonomic relations between the different types
of products and partonomic relations beween complex products and each
one of its parts. The language offers also the capability of
expressing constraints among the components and the subcomponents of
the products. Reasoning mechanisms have been developed able to support
the user in the interactive configuration: the agent is able to verify
the consistency of the requirements on the product specified so far by
the user and to configure either the whole product or only that part
relevant to the user’s requirements. The reasoning mechanisms
exploit both the taxo-partonomic knowledge and the constraints among
subcomponents. In order to limit the computational effort, specialized
mechanisms have been defined: in particular focusing mechanisms
exploiting constraint propagation techniques have been implemented.
The configuration agent includes also a graphical interface able to
support the user in the incremental definition of the requirements on
the product to be configured. Specific reasoning mechanism are able to
single out some types of inconsistency between the user’s
requirement and the taxo-partonomic knowledge. Additional graphical
interfaces have been developed for supporting domain knowledge
acquisition.
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 2000, 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 will end October 31st 2002.
The CAWICOMS project involves 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 is 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) focuses its
activity on the development of personalization strategies exploited by the
CAWICOMS Frontend, in order 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 avoide difficult questions which the user
might not be able to answer. 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
knowledgeability and interests, therefore gaining a reactive adaptation to
the user’s needs.
The generation of personalized user interfaces is
performed by the CAWICOMS Frontend. The two main tasks performed by the
Frontend are:
-
the acquisition of the information for the configuration process (by
asking the user, or by predicting suitable values, on the basis of the
user’s knowledgeability and estimated preferences);
-
the presentation of the (possibly partial) solutions produced by the
Backend to the user.
Both tasks can be personalized by exploiting specific
strategies, given the information stored in the user model. In order to do
that, the Frontend has to carry on the following activities:
-
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;
-
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;
-
a personalization activity, necessary to select the suitable
interaction steps, given the problem at hand and the characteristics
(expertise, interests) of the individual customer;
-
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 differend kind of agents. The protocol includes syncronous,
asyncronous 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 indipendently from the
other agents requests. Other agents, like the Personaliation 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. In particular, 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).
Dynamic user modeling for Web-based interaction
This project has been carried on in cooperation with TI
Lab; it started in September 2000 and lasted until August 2001.
The main goal of this project is the definition of
personalization techniques for the customization of the future television
services and the exploitation of such techniques within a prototype system
for the generation of personalized Electronic Program Guides (EPGs). The
customization of the EPG will concern the personalized selection of the TV
programs to be advertised, on the basis of the user’s interests.
The system is based on a multi-agent architecture,
where specialized agents collect data about the available TV programs,
monitor the user’s behavior to retrieve information about her/his
interests and select the events to be advertised in the personalized EPG,
depending on the user’s preferences at the time of day s/he wants to
watch TV. The system applies multi-agent technologies for supporting the
agent communication and it runs locally to the user’s Set Top Box, where
the tasks for the management of the EPGs are executed. The agent-based
infrastructure exploited for the integration of the system is JADE,
developed at TI Lab.
2001 Publications
L. Ardissono, L. Console, I. Torre An adaptive system
for the personalized access to news AI COMMUNICATIONS 2001 14(3) 129-147
L. Ardissono, A. Goy, G. Petrone, M. Segnan, L.
Console, L. Lesmo, C. Simone, P. Torasso Agent technologies for the
development of adaptive Web stores LECTURE NOTES IN ARTIFICIAL
INTELLIGENCE 2001 1991 194-213
L. Ardissono, A. Felfernig, G. Friedrich, D. Jannah, R.
Schaefer, M. Zanker Intelligent interfaces for distributed Web-based
product and service configuration LECTURE NOTES IN COMPUTER SCIENCE 2001
2098 184-188
D. Magro, P.Torasso Supporting product configuration in
a virtual store LECTURE NOTES IN ARTIFICIAL INTELLIGENCE 2001 2175 176-188
I. Torre Goals, tasks and Application domains as the
guidelines for defining a framework for User modelling LECTURE NOTES IN
COMPUTER SCIENCE 2001 2109 260-265
C. Gena Designing TV Viewer Stereotypes for an
Electronic Program Guide LECTURE NOTES IN COMPUTER SCIENCE 2001 2109
274-276
R. Schaefer, W. Schuetz, X. Ceugniet, J. Mitchener, L.
Ardissono, A. Goy, M. Zanker, D. Jannah, A. Felfernig, R. Simeoni, R.
Gavazzi Personalised customer interaction for the configuration of producs
and services in a supply chain. In E-work and E-commerce. Novel solutions
and practises for a global networked economy Brian Stanford-Smith e Enrica
Chiozza
Eds 209-304 IOS Press Amsterdam 2001
Anna Goy Lexical semantics of emotional adjectives
Linguistics in Cognitive Science: Proceedings of Student Conference in
Linguistics 10 - MIT Working Papers in Linguistics 37 S. Feist, S. Fix, J.
Hay and J. Moore Eds. 50-60 MIT Press Cambridge (MA) 2001
L. Ardissono, A. Goy, G. Petrone, M. Segnan Strategie
di personalizzazione per sistemi di commercio elettronico sul WEB Simposio
HCITALY ’01, Human computer interaction Italy 26-27 Settembre 2001
Firenze Italia SIE Società Italiana di Ergonomia
L. Ardissono, A. Goy, G. Petrone, M. Segnan, P. Torasso
INTRIGUE: presentation of tourist information on the Web Atti del Workshop
AIIA su Intelligenza Artificiale per i Beni Culturali e le biblioteche
digitali 25 Settembre 2001 Bari Italia
L. Ardissono, F. Portis, P. Torasso, F. Bellifemine, A.
Chiarotto, A. Difino Architecture of a system for the generation of
personalized Electronic Program Guides Proc. of UM2001 workshop on
personalization in future TV 13-14 Luglio 2001 Sonthofen Germany
C. Gena, L. Ardissono On the construction of TV viewer
stereotypes starting from lifestyles surveys Proc. of UM2001 workshop on
personalization in future TV 13-14 Luglio 2001 Sonthofen Germany
D.Magro, P.Torasso Interactive configuration capability
in a sale support system: laziness and focusing mechanisms Proc IJCAI 2001
Configuration Workshop August 6, 2001 Seattle USA