AGENT-SUPPORTED DYNAMIC PERSONALIZATION


Dynamic personalization, or user profiling, can be understood as "matching customers and content in real time" (ILOG Press Release, 2000). But this definition is very general and, as further analysis shows, it gives rise to various interpretations. The study of several systems demonstrates that the term dynamic personalization is used in several ways. We describe three cases that are not mutually exclusive.

  • Case 1: In this case, dynamic personalization means that the content and/or parts of the user interface are dynamically generated according to a (static) user profile (e.g., http://www.interactivesites.com/ pdfs /DARTmail_dynamicpers.pdf). Such systems are mostly commercial products for CRM (customer relationship management) activities, such as email campaigns , targeted advertisement, etc. Most commercial products claiming to provide dynamic personalization belong to this type.

  • Case 2: In the second case, there may be some a priori stored information about the user, but it is augmented by the dynamically varying "current context" of the user (e.g., http://www.indasea.com/dyper.htm or MIT media lab research in the domain of context-aware computing).

  • Case 3: In the third case, the user profile, or user's interest itself, is dynamic. The changes over time are captured through a chosen set of factors pertinent to the user. This approach is described in Hannigan and Palendrano (2002), and it is gaining popularity although it is still at the research stage (e.g., IBM Dynamic Personalization research project [3] ). It can be combined with data about current user contexts when applicable . For example, a system of this kind has been suggested by Goto and Kambayashi (2001) for mobile passenger support systems in the use of public transportation.

In most cases, described in the e-commerce literature, dynamic personalization serves as a means to better target marketing campaigns. It is applied in refining the profile of an "ideal" customer to whom the advertisement and other promotional materials should be addressed, based on the mining logs of customers' acceptance or rejection of offers. Applying dynamic personalization to the maintenance of individual profiles of repeat customers in a store is a more challenging task that has not been given the attention it deserves , despite the popularity of the concept of one-to-one marketing. Most likely, this is due to the complexity of the task.

Creating and especially maintaining a dynamic user profile is a timeconsuming, complex task that puts considerable load on the end-user and the knowledge engineer. To reduce the amount of effort required, software agents could possibly be employed at different stages of the process.

Software agents have been around for about two decades and have gained a considerable popularity in different areas of human-computer interaction [4] . There is no universally accepted definition of the term "agent" or " intelligent agent" (see Bradshaw, 1997; multiple references can be found in Terpsidis et al., 1997; Moukas et al., 1998; Negroponte, 1997). Software agents possess certain qualities that are common to this technology: they are autonomous, proactive, and knowledge-based; they assist the user and manifest social behavior [5] . E-commerce has been among the domains where agents play the most important role, ranging from "search-bots" to "auction-bots".

Most of the applications of agent technology to e-commerce have been centered in assisting sellers in web-service maintenance and monitoring, or helping buyers in the process of searching, auctioning and price negotiations (Desharnais, 2000). User modelling in the context of agent technology has been mostly interpreted in terms of building user profiles as part of an agent's knowledge base. However, in this chapter we are concerned with knowledge acquisition for personalization of the interaction between a virtual store and a customer rather than simply for transaction support in e-commerce (even though it is true that these two aspects influence each other).

Two distinct approaches to KA can be identified with regard to the knowledge about the individual user:

  1. "Knowledge capturing" by monitoring the dialog between the user and the system and intercepting the relevant data. This approach is useful for data mining operations that create new knowledge about the user. In this approach, the user does not contribute explicitly to the KA process. The captured data is used in ˜data mining, and the mined information is reviewed by knowledge engineers or by other specialists before it is used. A variant of this approach would be to apply the traditional AI-based machine learning techniques with no human intervention.

  2. "Knowledge elicitation " by a KA tool. This is a stand-alone phase in which the user contributes explicitly and directly to the building of a knowledge base about that individual.

It is possible to use agent technology in both of these approaches to reduce the burden on the human participants . Let us consider the following aspects of agent assistance that are labeled Assist-1, Assist-2, etc. These aspects will be illustrated through a wellness products store that will be our running example throughout the rest of the chapter.

The wellness store is a specialized boutique that sells healthy products such as organic food, vitamins and minerals, food supplements, etc. This kind of store has been growing in popularity in both brick-and-mortar and click-and-order versions. It has a specific customer base: people who shop there are health-conscious individuals who are willing to spend more for the perceived benefits of a healthy life-style. At the same time, their concerns and interests are very different, and there exists a large variety of products to cater to these diverse needs. Selecting the right kind of product is a complex task. A system that has information about a user's needs and constraints can considerably facilitate that task.

In the following, we will show how agents can assist in gathering and using user information in this case. The system under consideration has a product database, a user database containing individual user profiles, and a product taxonomy.

  • Assist-1: Agent assists in the initial profiling stage. Setting the initial profile will influence the further updates and usage of it; therefore, special care should be taken at this stage to assist the user in completing the questionnaire, as well as in selecting the most suitable stereotypes for filling in the missing values. At this stage, the agent will use stored knowledge about typical user characteristics to set missing values in the user model or to explain to the user how the parameter values might affect the system performance. The goal is to make a new user, just registering into the system, comfortable and informed about the questions asked in the building of the ˜initial user profile that is individualized.

For example, a first-time user who is registering in a wellness store can provide the system with some personal information, such as health concerns, age, etc. At this stage, the user input is the main source of information supplied to the agent. At the same time, this source has a priority over other sources ” a parameter values set based on this input should have highest certainty and should overwrite any system's inferences. To ensure the reliability of this information, the agent will help the user

  1. understand the implications of the supplied information,

  2. make correct choices, and

  3. alleviate privacy concerns related to the use of information given to the system.

At the same time, we cannot ask the user to complete a really long questionnaire; and, due to privacy concerns or a lack of time, the user might not want to give all the information during the first visit to a new store. The information that the user supplies can go directly in the user profile, but many parameter values will remain empty because of the lack of direct user input. To fill the missing slots of the user profile, the agent can apply a set of rules based on stereotypes.

  • Assist-2: The agent can process the information supplied by the web log mining module and make changes to the user profile when necessary. The agent will autonomously complete the task of collecting information from these sources and decide if there is a need for modification. The agent can also assist the user in clarifying the changes before committing to them. The goal is to provide the ultimate control to the user in deciding how his/her interests are represented in the system through appropriate user models.

For example, suppose the user has told the system at profile initialization that she is vegetarian but she is now buying meat. As we have noted in Assist-1, the information from these two sources has different weight ” values directly based on data supplied by the user get highest certainty; values inferred by the system have lower certainty and should not overwrite user-supplied data. The agent detects the inconsistency between the initial constraints and the results of observations that seem to violate these constraints. It asks the user if any changes to the profile should be made.

The goal of the agent is to create a profile that will maximize the satisfaction of the user. Therefore, the agent wants to relax the existing constraints in order to give the user immediate access to necessary information. Before making these changes, the agent explains that, by making the adjustment, the user may get access to the list of meat products at the login time without doing a special search for them because this information is usually not displayed to vegetarians.

  • Assist-3: The agent can assist in tracking the effects of the changes made to the user profile and report back to the user at a suitable point so that the user may revoke the changes (or modify them). The goal is to enhance the user's confidence by knowing whether the changes made in the model are yielding better performance or not. Since the ultimate goal is maximal performance of the system and maximum customer satisfaction, the agent can help in the tedious process of adjusting the profile and monitoring the results of these adjustments for the overall trend as well as for particular constraints.

For example, after a change to the profile has been made ” e.g., preferred brand of yogurt has been changed from Danone to Yoplait ” the products of the former producer have been moved from the first browsing screen to the second. The user might not realize that the new constraint was too rigorous and might be frustrated by not finding familiar products at the usual place. The agent should then volunteer information about this change and let the user know about its effects. The user can then either choose to keep the constraints as they are and make extra effort to browse more categories or relax the constraint and get easier access to the desired information. Using such a feedback loop, the agent will achieve faster convergence of the profile to the desired performance level.

  • Assist-4: The agent can assist the user in trust-related issues. For example, it could proactively warn about certain vendors , or products. This case is similar to Assist-3, but here, the agent deals with external knowledge about the world. The agent's task is twofold ” it finds information relevant to the user (e.g., sources of in-depth knowledge, facts relevant for the user's decision-making) in the "outside world" and, at the same time, it filters the requests coming for user information (e.g., by filtering out queries that violate the user's privacy). The knowledge about the user can be kept locally by the user agent. Other agents or software can ask questions to this user-agent using a standard interface, such as KQML (http://www.cs.umbc.edu/kqml/) or FIPA (http://www.fipa.org/). The user agent may answer such queries on its own, when permitted by the user, or after getting the approval of the user.

In all four cases mentioned above, the knowledge engineer's task will be limited to setting up the agents and testing and fine-tuning their behavior instead of making decisions in every single case. Building such an agent to assist the KE would require a very clear understanding of the knowledge acquisition process. When such agents are in operation, they are expected to reduce the amount of time and effort required by the end-user in making the profile reflect the dynamic changes in his/her lifestyle or circumstances. Instead of manually resetting the profile and answering questions every time when significant changes occur, the agent-supported approach should reduce the human effort.

Finding a perfect balance between providing transparency and sense of control to the user on one side, and minimizing the user's time and annoyance on the other side is a major issue when it comes to user agents. One of the possibilities for solving this problem, particularly when it is due to the mode of interaction, is to provide the user with a choice of different modes of interaction with the agent; the user can select one that suits him/her best. We suggest providing three modes of user-agent interaction:

  • Maximal user involvement . The agent should report to the user and get his/her approval for any decision (e.g., changes made to user profile). It will ensure maximum transparency and control, but will also require a significant investment of time and effort by the user;

  • Intermediate user involvement . The agent initiates the dialog only when in doubt (e.g., when observed behavior strongly contradicts previously set values). It is a challenge to design an algorithm to detect when an agent is in doubt.

  • Minimal user involvement . The agent does not initiate any interaction with user. Instead, the user asks the agent in cases when he/she wants to have system behavior explained or changed. In this mode, the actions of the system are less transparent but, by the same token, the user saves the time and effort needed for constantly monitoring the agent's actions.

The choice of the mode of interaction should be a part of the user profile. The value for this characteristic can be set in two ways:

  1. Manually, by the user (e.g., the user can be provided with a menu with the three choices that he/she can access any time);

  2. Automatically, by the processing agent. In this case, the starting value would be maximal user involvement , which corresponds to high degree of interaction, because a novice user not familiar with the system might need considerable support from the agent during the registration process. When the profile is initialized , the certainty for this value will decrease slightly; it will decrease considerably if the user chooses not to pay attention to the agent's advice (e.g., closes the dialog box). If the user, on the contrary, seems to need more help (e.g., accesses the help very often), the value can be increased.

There will be two thresholds that separate three modes of interaction: T1 will serve as a boundary between high and intermediate involvement; T2, between intermediate and minimal. For example, when the value drops below T1 (e.g., 0.5), the interaction mode is switched to intermediate . If the value becomes even smaller (e.g., close to 0), the mode is set to minimal interaction. The exact values for thresholds should be validated empirically and may differ , depending on the kind of characteristics of the customer base of a particular shop/boutique (e.g., customers in a virtual computer store might rely more on the agent than visitors of a cosmetic store; people who shop for computer games are more likely to prefer maximal user involvement interaction, while grocery shoppers don't want to spend extra time communicating with the agent when doing routine shopping).

[3] http://www.trl.ibm.com/projects/mrm/dp/index_e.htm

[4] Information about various aspects of agents' development and use can be found at http://agents.umbc.edu/

[5] Other attributes often considered pertinent for agents include reactivity, temporal continuity, personality, and mobility (see Etzioni & Weld, 1995; Franklin & Graesser, 1996).




(ed.) Intelligent Agents for Data Mining and Information Retrieval
(ed.) Intelligent Agents for Data Mining and Information Retrieval
ISBN: N/A
EAN: N/A
Year: 2004
Pages: 171

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net