05.12.2012 Views

User Modeling human-computer interaction

User Modeling human-computer interaction

User Modeling human-computer interaction

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

University of Paderborn<br />

AG Computergrafik, Visualisierung & Bildverarbeitung<br />

Prof. Dr. Gitta Domik<br />

<strong>User</strong> <strong>Modeling</strong><br />

in<br />

<strong>human</strong>-<strong>computer</strong> <strong>interaction</strong><br />

Seminar<br />

Personalization<br />

Markus Pauer<br />

pauer@upb.de<br />

March 10, 2004


Contents<br />

1 Introduction 3<br />

2 Basics 3<br />

2.1 Human-<strong>computer</strong> <strong>interaction</strong> (HCI) . . . . . . . . . . . . . . . . . . . . . 3<br />

2.2 The <strong>human</strong> factor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4<br />

2.3 Information about a user . . . . . . . . . . . . . . . . . . . . . . . . . . . 4<br />

3 UM-Shellsystems 5<br />

3.1 Overview of UM-Shellsystems . . . . . . . . . . . . . . . . . . . . . . . . 5<br />

3.2 The UM-Shell BGP-MS . . . . . . . . . . . . . . . . . . . . . . . . . . . 5<br />

4 Personalized <strong>computer</strong> systems 7<br />

4.1 The adaptive approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7<br />

4.2 Adaptive <strong>computer</strong> systems . . . . . . . . . . . . . . . . . . . . . . . . . 8<br />

4.3 A look in the future . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8<br />

5 Summary 8<br />

References 8<br />

2


1 Introduction<br />

Novels are the best source for new concepts in <strong>computer</strong> science, because they show us<br />

visions for the evolution of new ways in using <strong>computer</strong> systems. A good example of<br />

such a novel is from Arthur C. Clarke: 2001 - A space odyssey which was filmed in a<br />

movie by Stanley Kubrick in 1968. In this movie we can see the board <strong>computer</strong> from<br />

the spaceship ”Discovery” called HAL9000. Some of his features are the recognition of<br />

different users and the adaption of his user interface to each individual user. I think<br />

this shows us the potentiality in the research of the <strong>interaction</strong> of <strong>human</strong>s and <strong>computer</strong><br />

systems.<br />

So what we are looking for in this paper is a way to personalize <strong>computer</strong> systems.<br />

That means the <strong>computer</strong> system can be adapted or adapt automaticly to the needs of<br />

each individual user. To facilitate this, we have to collect some information about the<br />

users and develop a user model with this informations.<br />

Before we can think about a way to personalize a <strong>computer</strong> system, we have to talk<br />

about some basics in <strong>human</strong>-<strong>computer</strong> <strong>interaction</strong> (HCI) and user modeling (UM). In<br />

the next section we take a look at the tools to build a model of a user with the UM-<br />

Shellsystems. The last section is about the difficulties in the design of personalized<br />

<strong>computer</strong> systems and the difference between adaptive and adaptable systems. At the<br />

end there will be a short summary of what we have found out in this paper.<br />

2 Basics<br />

First we must talk about some basics about <strong>human</strong>-<strong>computer</strong> <strong>interaction</strong> and user modeling.<br />

2.1 Human-<strong>computer</strong> <strong>interaction</strong> (HCI)<br />

Let us begin with a definition of <strong>human</strong>-<strong>computer</strong> <strong>interaction</strong>:<br />

”Human-<strong>computer</strong> <strong>interaction</strong> is a discipline concerned with the design, evaluation<br />

and implementation of interactive computing systems for <strong>human</strong> use<br />

and with the study of major phenomena surrounding them.” ([Per96])<br />

As we will see the study of phenomena around the use of interactive <strong>computer</strong> systems<br />

gets more and more important in the last few years. When we take a look at the research<br />

in HCI we can see that there where 3 main stages in the history of research.<br />

3 stages in HCI research In the first stage the primary intention was the design<br />

of graphical user interfaces (GUIs) using windows, icons etc. to create more usable<br />

systems. The next step in the research of HCI was the question, how the people use<br />

the interfaces and components of a <strong>computer</strong> system. So that the actions not just the<br />

interfaces were focused in this stage of research. Today we want to improve the way<br />

people use <strong>computer</strong>s to work and communicate with.<br />

3


2.2 The <strong>human</strong> factor<br />

In the <strong>interaction</strong> of <strong>human</strong>s and <strong>computer</strong>s we normally have two different views. On<br />

the one hand we have the user with his so called ”mental model” of the <strong>computer</strong> system.<br />

On the other hand we have the <strong>computer</strong> system with the ”user model” and its view of<br />

the user.<br />

Mental Model The so called ”mental model” of a user is the knowledge about the<br />

components of a system and the experience of how to use the <strong>computer</strong> system properly<br />

(see [CO88]).<br />

<strong>User</strong> Model If we want an personalized <strong>computer</strong> system we need to build a ”user<br />

model” so that the system knows the preferences, capabilities and skills of the user.<br />

If we put this two views together, we get a system that reacts in two different ways.<br />

The user can interact with the system and use it to perform his tasks, because of his<br />

knowledge about the <strong>computer</strong> system. The system ”knows” the intention and goals<br />

of the user and can adapt to the needs of him, because of the information in the user<br />

model.<br />

2.3 Information about a user<br />

As we have seen, if we want a personalized <strong>computer</strong> system that adapt to the needs of a<br />

user, we must collect some information about the user. We can divide these information<br />

into three types (see [Kob04] and [Fis01]).<br />

user data First we have the user data which is the information about the user himself,<br />

e.g. his knowledge, skills and capabilities. The interesting thing with this type of<br />

information is the intention and goal of the user when he uses a <strong>computer</strong> system.<br />

I would like to show the importance of this information by an example. If a user selects a<br />

new document in a word processor from a template to gererate a new letter, the system<br />

should infer the intention and possible goals (in this case the tasks a user wants to<br />

perform). Because normally the generation of a letter includes the lookup of an address<br />

in a personal addressbook or a public one to fill in the destination information. Another<br />

task is to print out the finished letter to put it in a cover and send it to its destination.<br />

usage data The example leads us to the second type of information that must be<br />

collected from a user – the usage data. In the example we observe the user and recognizes<br />

that he wants to write a letter. Now we can look up his usage regularities to infer that<br />

after he has looked up the destination address he wants to print out the document.<br />

environment data The last type of information that can be captured is what kind of<br />

software the user normally use, and what type of hardware is available for a user.<br />

4


3 UM-Shellsystems<br />

”A UM-Shell is a generic domain independent system whose purpose is to<br />

allow the development of user modeling systems.” (p. 24 in [Bla96])<br />

3.1 Overview of UM-Shellsystems<br />

To introduce UM-Shellsystems here is a short overview of some shell systems.<br />

• <strong>User</strong> modeling toolkit (UMT) – Brajnik 1992<br />

The UMT is a highly flexible and generic system to provide the development of<br />

user models.<br />

• General user modeling shell (GUMS) – Finin 1989<br />

Is based on a platform-independent architecture to develop individual, long-term<br />

user models.<br />

• Belief, Goal, Plan Management System (BGP-MS) – Kobsa 1993<br />

(see subsection 3.2).<br />

• PROlog based tool for user modeling (PROTUM) – Eydner 1992<br />

PROTUM is based on the GUMS from Finin and the BGP-MS from Kobsa.<br />

• General user model akquisition component (GUMAC) – Kass 1988<br />

The focus of this shell system is the akquisition of the information about a user.<br />

• Doppelgänger – Orwant 1995<br />

The Doppelgänger shell system was primarly build to provide a personal newspaper<br />

to each individual user. It is a server based system, so that it stores the user model<br />

in a distributed way.<br />

3.2 The UM-Shell BGP-MS<br />

The believe, goal, plan - management system (BGP-MS) is an integrated toolkit for<br />

user modeling. It builds up a schematic user model with stereotypes and stores it in a<br />

hierarchical partition system.<br />

system overview As we can see in figure 1 there are four main components in the shell<br />

system which communicate over the functional interface. The individual user model and<br />

the stereotypes are build upon the representation system which is based on the SB-ONE<br />

knowledge-representation tool. The user model developer can manipulate the knowledge<br />

of the representation system with a graphical interface.<br />

5


Figure 1: internal view of the BGP-MS shell-system (from [Bla96])<br />

KN-IPCMS The KoNstanz Inter-Process Communication Management System (KN-<br />

IPCMS) is a platform-independent, message-oriented communication protocol which is<br />

used to communicate between an application and the BGP-MS shell system. In figure<br />

2 we have three types of communication.<br />

1. If the application wants to tell the shell system about an observed believe or goal<br />

of a user, it can send an bgp-ms-tell message to the shell.<br />

2. The message type d-act is used to tell the shell system about an action that a<br />

user has performed in the application.<br />

3. Assumptions about a user are an important information for an application, so the<br />

application can request such an assumption with a bgp-ms-ask message send to<br />

the shell system, and the BGP-MS can send the answer in an bgp-ms-answer<br />

message to the application.<br />

Below the arrows we can see the messages which are described in the belief, goal, plan<br />

language (BGPL). As we take a look at the d-act message, we can interprete it, that the<br />

print command is executed on the user documentation. If you want more information<br />

about other types of messages you will find it in [KP95].<br />

6


Figure 2: communication with the application<br />

4 Personalized <strong>computer</strong> systems<br />

In the previous section we have seen, that we can use UM-Shellsystems to develop a<br />

user model. So the next step is to think about a way to adapt <strong>computer</strong> systems to the<br />

needs of the users.<br />

4.1 The adaptive approach<br />

Because <strong>computer</strong> systems are getting more and more complex and the developer must<br />

decide how he design the interfaces for the user at development time. He has to ... what<br />

skills and capabilities the user have. The adaptive approach is that the system adapt to<br />

this skills at use-time. Let us take a look at some types of adaptive <strong>computer</strong> systems.<br />

Types of adaptive systems<br />

• help systems<br />

• tutorial systems<br />

• intelligent DB-connectivity<br />

• expert systems<br />

• text generation<br />

• dialog modeling<br />

• <strong>computer</strong> games<br />

7


When it is useful to build an adaptive <strong>computer</strong> system? I think a good example is<br />

a tutorial system that adapt to the skills of the user. It stores not only the progress of<br />

the learning process of a participant, it recognizes the infirmities and can provide him<br />

to handle the next chapter better than the previous ones.<br />

4.2 Adaptive <strong>computer</strong> systems<br />

Today we have many adaptable systems, but less adaptive systems, why? Let me list<br />

some very relevant reasons for this.<br />

• it is very difficult to use the knowledge about a user in an adaptive <strong>computer</strong><br />

system<br />

• in an adaptable system the user decides whether or not he want to adapt something<br />

• in an adaptive system the <strong>computer</strong> system must decide what part of the system<br />

must be adapted to support the user<br />

The conclusion must be that personalized <strong>computer</strong> systems should be a mixture of<br />

adaptable and adaptive systems.<br />

4.3 A look in the future<br />

The demand in the research of HCI is that not the user must adapt to the <strong>computer</strong><br />

system that he want to use, the system adapts to the preferences and capabilities of the<br />

user and infers the intention and goals of him. Another directive is that: ”Wherever you<br />

are you take your preferred settings and programs with you and the <strong>computer</strong> knows<br />

you.”. If we want a distributed, personalized <strong>computer</strong> system we need a distributed<br />

user model which we can access over a network.<br />

5 Summary<br />

We have seen that we need to collect information about a user in a user model.<br />

• information about the user in a platform-independent user model<br />

• a distributed UM-Shellsystem<br />

• a communication-system between the UM-Shell and the application<br />

In the personalization of <strong>computer</strong> systems we have two main problems:<br />

• in an adaptable <strong>computer</strong> system the user decides about the adaption<br />

• adaptive systems must predict the intention of the user<br />

In the future we want personalized <strong>computer</strong> systems that gently adapt to the skills and<br />

preferences of the user and if the user want, he can adjust the system in any kind.<br />

8


References<br />

[Bla96] Karlheinz Blank. Benutzermodellierung für adaptive interaktive Systeme: Architektur,<br />

Methoden, Werkzeuge und Anwendungen. PhD thesis, Universität<br />

Stuttgart, 1996.<br />

[CO88] John M. Carrol and Judith Reitman Olson. Handbook of <strong>human</strong>-<strong>computer</strong><br />

<strong>interaction</strong>, chapter Mental Models in Human-Computer Interaction, pages p.<br />

45–66. Elsevier Science Publishers, Amsterdam (Netherlands), 1988.<br />

[Fis01] Gerhard Fischer. <strong>User</strong> modeling in <strong>human</strong>-<strong>computer</strong> <strong>interaction</strong>. <strong>User</strong> <strong>Modeling</strong><br />

and <strong>User</strong>-Adapted Interaction (UMUAI), Volume 11(No. 1/2):p. 65–86, 2001.<br />

Contribution to the 10th Anniversary Issue of the Journal UMUAI.<br />

[Kob04] Alfred Kobsa. Grundlagen der Information und Dokumentation, chapter Adaptive<br />

Methoden - Benutzermodellierung. K. G. Saur (München), 2004.<br />

[KP95] A. Kobsa and W. Pohl. The user modeling shell system bgp-ms. <strong>User</strong> <strong>Modeling</strong><br />

and <strong>User</strong>-Adapted Interaction, 4(2):p. 59–106, 1995.<br />

[Per96] Gary Perlman, editor. Curricula for Human-Computer Interaction. 1996.<br />

9

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!