05.12.2012 Views

User Modeling human-computer interaction

User Modeling human-computer interaction

User Modeling human-computer interaction

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

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!