1/22 Exploiting a Map-based Interface in Conversational recommender Systems for Mobile travelers francesco ricci Free University of bolzano, Italy Quang Nhat Nguyen Hanoi University of Technology, vietnam Olga Averianova Image Data Systems Ltd, UK ABSTRACT nowadays travel and tourism Web sites store and offer a large volume of travel related information and services. Furthermore, this huge amount of information can be easily accessed using mobile devices, such as a phone with mobile Internet connection capability. However, this information can easily overwhelm a user because of the large number of information items to be shown and the limited screen size in the mobile device. Recommender systems(RSs)are often used in conjunction with Web tools to effectively help users in accessing this overwhelming amount of information. These recommender systems can support the user in making a decision even when specific knowledge necessary to autonomously evaluate the offerings is not available. Recommender systems cope with the information overload problem by providing a user with personalized recommendations (i.e, a well chosen selection of the items contained in the repository ) adapting this selection to the user's needs and preferences in a particular usage context In this chapter, the authors present a recommendation approach integrating a conversational preference acquisition technology based on"critiquing"with map visualization technologies to build a new map based conversational mobile Rs that can effectively and intuitively support travelers in finding their desired products and services. The results of the authors' real-user study show that integrating map-based visualization and critiquing-based interaction in mobile RSs improves the system's recommendation effectiveness and increases the user satisfaction Keywords: recommender systems, location-based services, conversational systems, travel planning INTRODUCTION The users of travel and tourism web sites often find it difficult in choosing their desired travel products and services due to an overwhelming number of options to consider, and the lack of the systems help in making product selection decisions. The problem becomes even harder for users of the mobile Internet who browse travel sites and their product repositories using a mobile device. This additional difficulty is
1/22 Exploiting a Map-based Interface in Conversational Recommender Systems for Mobile Travelers Francesco Ricci Free University of Bolzano, Italy Quang Nhat Nguyen Hanoi University of Technology, Vietnam Olga Averjanova Image Data Systems Ltd, UK ABSTRACT Nowadays travel and tourism Web sites store and offer a large volume of travel related information and services. Furthermore, this huge amount of information can be easily accessed using mobile devices, such as a phone with mobile Internet connection capability. However, this information can easily overwhelm a user because of the large number of information items to be shown and the limited screen size in the mobile device. Recommender systems (RSs) are often used in conjunction with Web tools to effectively help users in accessing this overwhelming amount of information. These recommender systems can support the user in making a decision even when specific knowledge necessary to autonomously evaluate the offerings is not available. Recommender systems cope with the information overload problem by providing a user with personalized recommendations (i.e., a well chosen selection of the items contained in the repository), adapting this selection to the user’s needs and preferences in a particular usage context. In this chapter, the authors present a recommendation approach integrating a conversational preference acquisition technology based on “critiquing” with map visualization technologies to build a new mapbased conversational mobile RS that can effectively and intuitively support travelers in finding their desired products and services. The results of the authors’ real-user study show that integrating map-based visualization and critiquing-based interaction in mobile RSs improves the system’s recommendation effectiveness, and increases the user satisfaction. Keywords: recommender systems, location-based services, conversational systems, travel planning INTRODUCTION The users of travel and tourism web sites often find it difficult in choosing their desired travel products and services due to an overwhelming number of options to consider, and the lack of the system’s help in making product selection decisions. The problem becomes even harder for users of the mobile Internet, who browse travel sites and their product repositories using a mobile device. This additional difficulty is
/22 due to the intrinsic obstacles of the mobile usage environment, i. e, mobile devices have small screens and the data transfer rates of wireless networks are typically lower than those of wired ones Recommender Systems RSs are decision support tools aimed at addressing the information overload problem, providing product and service recommendations personalized to the user's needs and preferences at a particular request context(Resnick Varian, 1997; Adomavicius Tuzhilin, 2005). However, existing recommendation technologies have not been developed specifically for mobile users; and this chapter shows that recommendation techniques developed for the wired web must be adapted to the mobile environment in order to better exploit the available information, and provide software tools usable on mobile devices The evolution of mobile devices(e.g, PDAs and mobile phones), wireless communication technologies (e.g, wireless LAN and UMTS), and position detection techniques(e.g, RFID beacon-based and GPS), ave created favorable conditions for the development and commercialization of a large number of location-based mobile services(Mohapatra Suma, 2005; Steinfield, 2004), i.e., information services accessible by mobile devices through the mobile network, and utilizing the geographical position of the mobile device. As a consequence, many location-based mobile services have been introduced in the recent years, including emergency services, information services, navigation support services, etc For example, mobile travelers can access local tourist information services providing information about Pospischil et al., 2002 as pubs and restaurants(Dunlop et al., 2004) get routing guidance from their position to a target location(Pospischil et al., 2002). In many of these systems, maps and map-based interfaces are used to visualize points of interests (e.g, restaurants, museums,or hotels), their spatial relations, and various kinds of information related to these points(e.g menus, opening hours, or in-room services) However, map-based interfaces do not solve all the information access problems. In fact, a major problem This ap-based visualization is the need to keep the display readable and free from irrelevant information This is particularly true in the mobile usage environment. Because of the limitations of mobile devices especially small screens and limited computing power, displaying on an electronic map a large number of objects and their related information is computationally expensive and usually not effective. Hence systems providing mobile travel services should employ filtering mechanisms to reduce the amount of data(information objects)that is displayed on an electronic map Though the specific benefits of map-based interfaces and recommendation technologies have been demonstrated in a number of previous research projects, the integration of these two technologies and their empirical evaluation, in terms of usability and effectiveness, in mobile travel support systems have not been studied yet. In this chapter, we present an approach for integrating recommendation technologies and electronic map visualization technologies to build a map-supported travel rs that can effectively and intuitively provide personalized recommendations on mobile devices Our recommendation methodology integrates long-term and session-specific user preferences, uses a composite query representation, employs a case-based model of the recommendation problem and its lution, furthermore, it exploits a critique-based conversational approach(Ricci& Nguyen, 2007). The integration of long-term and session-specific user preferences enables the exploitation of multiple knowledge sources of user's data. The long-term user preferences are derived (inferred) from past recommendation sessions, and on the other hand, the session-specific user preferences are collected through the users explicit input including the critiques made in the current session The composite query representation consists of a logical query and a favorite pattern. This allows using both strict logical constraints and weak similarity-based conditions. The logical query component helps
2/22 due to the intrinsic obstacles of the mobile usage environment, i.e., mobile devices have small screens and the data transfer rates of wireless networks are typically lower than those of wired ones. Recommender Systems RSs are decision support tools aimed at addressing the information overload problem, providing product and service recommendations personalized to the user's needs and preferences at a particular request context (Resnick & Varian, 1997; Adomavicius & Tuzhilin, 2005). However, existing recommendation technologies have not been developed specifically for mobile users; and this chapter shows that recommendation techniques developed for the wired web must be adapted to the mobile environment in order to better exploit the available information, and provide software tools usable on mobile devices. The evolution of mobile devices (e.g., PDAs and mobile phones), wireless communication technologies (e.g., wireless LAN and UMTS), and position detection techniques (e.g., RFID beacon-based and GPS), have created favorable conditions for the development and commercialization of a large number of location-based mobile services (Mohapatra & Suma, 2005; Steinfield, 2004), i.e., information services accessible by mobile devices through the mobile network, and utilizing the geographical position of the mobile device. As a consequence, many location-based mobile services have been introduced in the recent years, including emergency services, information services, navigation support services, etc. For example, mobile travelers can access local tourist information services providing information about nearby points of interests (Pospischil et al., 2002), such as pubs and restaurants (Dunlop et al., 2004), or get routing guidance from their position to a target location (Pospischil et al., 2002). In many of these systems, maps and map-based interfaces are used to visualize points of interests (e.g., restaurants, museums, or hotels), their spatial relations, and various kinds of information related to these points (e.g., menus, opening hours, or in-room services). However, map-based interfaces do not solve all the information access problems. In fact, a major problem in map-based visualization is the need to keep the display readable and free from irrelevant information. This is particularly true in the mobile usage environment. Because of the limitations of mobile devices, especially small screens and limited computing power, displaying on an electronic map a large number of objects and their related information is computationally expensive and usually not effective. Hence, systems providing mobile travel services should employ filtering mechanisms to reduce the amount of data (information objects) that is displayed on an electronic map. Though the specific benefits of map-based interfaces and recommendation technologies have been demonstrated in a number of previous research projects, the integration of these two technologies and their empirical evaluation, in terms of usability and effectiveness, in mobile travel support systems have not been studied yet. In this chapter, we present an approach for integrating recommendation technologies and electronic map visualization technologies to build a map-supported travel RS that can effectively and intuitively provide personalized recommendations on mobile devices. Our recommendation methodology integrates long-term and session-specific user preferences, uses a composite query representation, employs a case-based model of the recommendation problem and its solution, furthermore, it exploits a critique-based conversational approach (Ricci & Nguyen, 2007). The integration of long-term and session-specific user preferences enables the exploitation of multiple knowledge sources of user’s data. The long-term user preferences are derived (inferred) from past recommendation sessions, and on the other hand, the session-specific user preferences are collected through the user’s explicit input including the critiques made in the current session. The composite query representation consists of a logical query and a favorite pattern. This allows using both strict logical constraints and weak similarity-based conditions. The logical query component helps
3/22 the system to precisely focus on the most relevant subsets of the product space, whereas the favorite pattern component enables the system to correctly sort the relevant products, ranking higher the products that are most suitable for their needs and wants In our approach, a travel product recommendation session is modeled as a case, and the Case- Based Reasoning( CBR) problem solving strategy is used(Aamodt Plaza, 1994). CBR is based on learning from previous experiences, and case-based RSs exploit(reuse) the knowledge contained in a set of past recommendation cases. In our recommendation methodology, CBR is used for building a personalized user-query augmenting(by specializing) the original query derived from the conditions explicitly entered by the user. This personalized query is adapted in such a way that, taking into account the knowledge contained in the case base, the set of recommended products better match the users preferences, even if these preferences are not expressed in the original query entered by the user Furthermore, our recommendation approach is based on the interactive elicitation of the user's preferences through critiques. The user, instead of being required to formulate a precise search query at beginning of the interaction, is involved in a dialogue where the systems product suggestions interleave with the user's critiques to the recommended products. A user's critique is a comment Judgment)on a displayed product, which points out an unsatisfied preference(e.g, "I would like a cheaper restaurant)or confirms the importance of a product feature for the user("I'd like to have dinner in a restaurant with a garden terrace ). This critique-based user preferences elicitation procedure results in the system building a better understanding the users needs and preferences, and hence, in constantly improving the recommendations Our recommendation methodology has been firstly implemented in Moby Rek(ricci Nguyen, 2007),a previous empirical evaluations of Moby Rek, consisting of a live-user test(Ricci Nguyen, any o mobile Rs that supports travelers in finding their desired travel products(restaurants ) The results of som number of simulations(Nguyen ricci, 2007: 2008a), showed that our critique-based recommendation methodology is effective in supporting mobile travelers in product selection decisions. However Moby Rek employs a text-based interface for recommendation visualization and system-user interaction where the recommendations are presented to the user in a ranked list, as in a standard search engines like Google. We conjectured that this visualization and interaction approach may not be optimal for mobile devices and for mobile recommendation problems. We believed that this type of" standard" interface used for web applications can, in fact, cause some difficulties and inconveniences for mobile users in their interactions with the system Hence, in this chapter, we analyze the usability limitations of Moby Rek, which we believe are typically found in all list-styled RSs, and we illustrate how this analysis leads to the design of an extended and improved version of the system called MapMoby Rek. MapMoby Rek implements the same core recommendation techniques used in Moby Rek, i.e., the computation of the recommended items and their anking are done exactly as in Moby Rek. However, MapMoby Rek uses maps as the main user interface for information display and access; furthermore, it provides new decision-support functions based on the map. The design of the map-based interface of MapMoby Rek focused on the ability to offer the following user functions to enter the search query by specifying preferences for item features, to see the systems recommendations on the map ecognize immediately the differences between good and weak recommendations to compare two selected recommendations to input critiques to the recommended items to see on the map how the expressed critique influences the system s recommendations, and to select the best item(s)
3/22 the system to precisely focus on the most relevant subsets of the product space, whereas the favorite pattern component enables the system to correctly sort the relevant products, ranking higher the products that are most suitable for their needs and wants. In our approach, a travel product recommendation session is modeled as a case, and the Case-Based Reasoning (CBR) problem solving strategy is used (Aamodt & Plaza, 1994). CBR is based on learning from previous experiences, and case-based RSs exploit (reuse) the knowledge contained in a set of past recommendation cases. In our recommendation methodology, CBR is used for building a personalized user-query augmenting (by specializing) the original query derived from the conditions explicitly entered by the user. This personalized query is adapted in such a way that, taking into account the knowledge contained in the case base, the set of recommended products better match the user’s preferences, even if these preferences are not expressed in the original query entered by the user. Furthermore, our recommendation approach is based on the interactive elicitation of the user’s preferences through critiques. The user, instead of being required to formulate a precise search query at the beginning of the interaction, is involved in a dialogue where the system’s product suggestions interleave with the user’s critiques to the recommended products. A user’s critique is a comment (judgment) on a displayed product, which points out an unsatisfied preference (e.g., “I would like a cheaper restaurant”) or confirms the importance of a product feature for the user (“I’d like to have dinner in a restaurant with a garden terrace”). This critique-based user preferences elicitation procedure results in the system building a better understanding the user’s needs and preferences, and hence, in constantly improving the recommendations. Our recommendation methodology has been firstly implemented in MobyRek (Ricci & Nguyen, 2007), a mobile RS that supports travelers in finding their desired travel products (restaurants). The results of some previous empirical evaluations of MobyRek, consisting of a live-user test (Ricci & Nguyen, 2007) and a number of simulations (Nguyen & Ricci, 2007; 2008a), showed that our critique-based recommendation methodology is effective in supporting mobile travelers in product selection decisions. However, MobyRek employs a text-based interface for recommendation visualization and system-user interaction, where the recommendations are presented to the user in a ranked list, as in a standard search engines like Google. We conjectured that this visualization and interaction approach may not be optimal for mobile devices and for mobile recommendation problems. We believed that this type of “standard” interface used for web applications can, in fact, cause some difficulties and inconveniences for mobile users in their interactions with the system. Hence, in this chapter, we analyze the usability limitations of MobyRek, which we believe are typically found in all list-styled RSs, and we illustrate how this analysis leads to the design of an extended and improved version of the system called MapMobyRek. MapMobyRek implements the same core recommendation techniques used in MobyRek, i.e., the computation of the recommended items and their ranking are done exactly as in MobyRek. However, MapMobyRek uses maps as the main user interface for information display and access; furthermore, it provides new decision-support functions based on the map. The design of the map-based interface of MapMobyRek focused on the ability to offer the following user functions: • to enter the search query by specifying preferences for item features, • to see the system’s recommendations on the map, • to recognize immediately the differences between good and weak recommendations, • to compare two selected recommendations, • to input critiques to the recommended items, • to see on the map how the expressed critique influences the system’s recommendations, and • to select the best item(s)
4/22 Moby Rek and Map Moby Rek are then compared, through a real-user test, with respect to functionality efficiency, and convenience. The objective measures taken during the test and the subjective evaluations of the real-users show that the map-based interface is more effective than the list-based one. We also find that the integration of a map-based interface in a RS results in increased user satisfaction The remainder of this chapter is organized as follows. In the next section, we survey some related work Then, we present our recommendation methodology, we discuss the limitations of Moby Reks interface, and we present MapMoby Rek- the improved system. Next, we state our research hypoth describe the test procedure, and present and discuss the test results. Finally, we give our conclusions and indicate some avenues for future research. We note that this chapter extends(Averjanova et al., 2008)that more briefly describes Map Moby Rek and its validation RELATED WORK There have been several research works focusing on map-based mobile services(Meng et al., 2008), map- based mobile travel guides(Baus et al., 2005 ), recommender systems(Adomavicius tuzhilin, 2005 Burke, 2007), and travel RSs(Ricci, 2002; Fesenmaier et al., 2006). In this section, we first discuss traditional recommendation techniques, and then we focus on related works that aim to integrate mobile computing, map visualization and recommendation technologies in providing personalized travel products and services to tourists Recommendation Techniques Many recommendation methods have been introduced in the RSs literature. Nevertheless, they are often classified into four well-known categories: collaborative, content-based, knowledge-based, and hybrid (Adomavicius tuzhilin, 2005; Burke, 2007) Collaborative RSs generate recommendations using the information of the ratings given by users on items. In the collaborative recommendation approach, the system recommends to a given user those items that have been highly rated by the other users who have similar taste (i.e, similar ratings for co-rated items). The collaborative recommendation approach is inspired by the daily habit of people, i.e., when finding information or choosing between options, people often consult friends who have similar likes and Content-based RSs generate recommendations for a given user exploiting feature-based descriptions of items and the ratings that the user has given on some items. In the content-based recommendation approach, a user is modeled by a profile that represents the user's needs and preferences with respect to items features; and the system recommends to the user those items whose features(highly) match the users profile The knowledge-based recommendation approach uses specific domain knowledge to reason on the relationship (i.e, suitability/appropriateness) between a user's needs and preferences and a particular item In knowledge-based RSs, the system acquires the user's requirements on items(e.g, the user's query), and then consults the knowledge base to determine the best fitting items Each of the three recommendation approaches (i.e, collaborative, content-based, and knowledge-based) has its own limitations and disadvantages(Adomavicius Tuzhilin, 2005; Burke, 2007). Therefore, some RSs take a hybrid recommendation approach that combines two(or more)recommendation techniques i order to take full advantages of each individual technique, or to overcome some of their disadvantages
4/22 MobyRek and MapMobyRek are then compared, through a real-user test, with respect to functionality, efficiency, and convenience. The objective measures taken during the test and the subjective evaluations of the real-users show that the map-based interface is more effective than the list-based one. We also find that the integration of a map-based interface in a RS results in increased user satisfaction. The remainder of this chapter is organized as follows. In the next section, we survey some related work. Then, we present our recommendation methodology, we discuss the limitations of MobyRek’s user interface, and we present MapMobyRek – the improved system. Next, we state our research hypotheses, describe the test procedure, and present and discuss the test results. Finally, we give our conclusions and indicate some avenues for future research. We note that this chapter extends (Averjanova et al., 2008) that more briefly describes MapMobyRek and its validation. RELATED WORK There have been several research works focusing on map-based mobile services (Meng et al., 2008), mapbased mobile travel guides (Baus et al., 2005), recommender systems (Adomavicius & Tuzhilin, 2005; Burke, 2007), and travel RSs (Ricci, 2002; Fesenmaier et al., 2006). In this section, we first discuss traditional recommendation techniques, and then we focus on related works that aim to integrate mobile computing, map visualization and recommendation technologies in providing personalized travel products and services to tourists. Recommendation Techniques Many recommendation methods have been introduced in the RSs literature. Nevertheless, they are often classified into four well-known categories: collaborative, content-based, knowledge-based, and hybrid (Adomavicius & Tuzhilin, 2005; Burke, 2007). Collaborative RSs generate recommendations using the information of the ratings given by users on items. In the collaborative recommendation approach, the system recommends to a given user those items that have been highly rated by the other users who have similar taste (i.e., similar ratings for co-rated items). The collaborative recommendation approach is inspired by the daily habit of people, i.e., when finding information or choosing between options, people often consult friends who have similar likes and tastes. Content-based RSs generate recommendations for a given user exploiting feature-based descriptions of items and the ratings that the user has given on some items. In the content-based recommendation approach, a user is modeled by a profile that represents the user’s needs and preferences with respect to item’s features; and the system recommends to the user those items whose features (highly) match the user’s profile. The knowledge-based recommendation approach uses specific domain knowledge to reason on the relationship (i.e., suitability/appropriateness) between a user’s needs and preferences and a particular item. In knowledge-based RSs, the system acquires the user’s requirements on items (e.g., the user's query), and then consults the knowledge base to determine the best fitting items. Each of the three recommendation approaches (i.e., collaborative, content-based, and knowledge-based) has its own limitations and disadvantages (Adomavicius & Tuzhilin, 2005; Burke, 2007). Therefore, some RSs take a hybrid recommendation approach that combines two (or more) recommendation techniques in order to take full advantages of each individual technique, or to overcome some of their disadvantages
5/22 (Burke, 2007). With respect to this categorization of recommendation methods, our recommendation approach can be considered a knowledge-based approach Many RSs, such as those based on collaborative filtering, follow the single-shot recommendation strategy, i.e., for a given user's request the system computes and shows to the user the recommendation list, and the session ends. If the user is not satisfied she could enter a new query, if possible, but this process is up to the user and the system does not provide any support through this sequence of requests Conversely, in comversational RSs a recommendation session does not terminate immediately after the first set of recommendations are shown to the user, but it evolves in a dialogue where the system tries to elicit step-by-step the user's needs and preferences to produce better recommendations( Bridge et al 2005). In our approach, the system-user conversation is supported through critiquing, where the systems recommendations are interleaved with the users critiques to the recommended items (Burke, 2002 Mcginty smyth, 2006) Mobile Recommender Systems The systems and techniques described above have been mostly applied in the Web usage context, without any special concern with the context of the user, i.e., in particular, if she is on the go and accesses the travel and tourism support systems that have been specifically designed for the mobile usage conter ed information service using a mobile device. In the rest of this section we will review some personal City Guide(Dunlop et al., 2004)is designed for Palmos devices and helps tourists in finding attractions (such as restaurants) around a city. This recommender system uses the constraint-based filtering approach to control which attractions are shown on the map. In particular, the user, through the systems map interface, is asked to specify constraints on attraction type, restaurant cuisine and price. The system retrieves from the database only those attractions that satisfy the user's indicated constraints, and then ranks these retrieved attractions according to their match to the preferences stored in the users profile The system builds and updates the user's profile, which maintains her long-term preferences, by mining and interpreting the users actions (such as writing a restaurant review, reading a review, viewing a restaurants details, etc )and collecting the user's ratings to the restaurants. Though the system ranks the recommended attractions and shows them on the map, it does not visualize how close each recommended attraction is to the user's preferences (i.e., the recommendation level) Burigat et al. (2005)illustrate a system running on PDa devices that supports tourists in searching for travel products (i.e, hotels or restaurants) in a geographic area that best satisfy their needs and preferences. The system builds the user-query used to search in the services repository by asking the user to indicate her constraints on the service attributes, e.g. the facilities offered by the hotel or the restaurant However, the system does not employ the constraint-filtering approach or a multi-attribute utility function. Instead, the system constructs the recommendation list by ranking the services according to their satisfaction score. A services satisfaction score is measured by the number of constraints(indicated in the user's query) that are satisfied by the service. Hence, each recommended service is visualized by an icon superimposed on the map of the geographic area, augmented by a " filled-in"vertical bar representing how much the service satisfies the users query. We observe that this system does not reuse the knowledge derived from past user interactions to provide better recommendations Dynamic Tour Guide (dtg)(ten Hagen et al., 2005) is a mobile tour guide system that helps travelers in discovering a destination. Given a users request, the system computes a personalized tour in the city by asking the user her interests and the time she would like to spend for the visit. In DTG a tour is composed of a set of points of interest (i.e, restaurants, attractions and events). The system then presents the recommended tour on the map and provides some audio guide information. This audio visual presentation lets the user to visualize the tour itinerary. The system computes and presents just one tour per user
5/22 (Burke, 2007). With respect to this categorization of recommendation methods, our recommendation approach can be considered a knowledge-based approach. Many RSs, such as those based on collaborative filtering, follow the single-shot recommendation strategy, i.e., for a given user's request the system computes and shows to the user the recommendation list, and the session ends. If the user is not satisfied she could enter a new query, if possible, but this process is up to the user and the system does not provide any support through this sequence of requests. Conversely, in conversational RSs a recommendation session does not terminate immediately after the first set of recommendations are shown to the user, but it evolves in a dialogue where the system tries to elicit step-by-step the user’s needs and preferences to produce better recommendations (Bridge et al., 2005). In our approach, the system-user conversation is supported through critiquing, where the system’s recommendations are interleaved with the user’s critiques to the recommended items (Burke, 2002; McGinty & Smyth, 2006). Mobile Recommender Systems The systems and techniques described above have been mostly applied in the Web usage context, without any special concern with the context of the user, i.e., in particular, if she is on the go and accesses the information service using a mobile device. In the rest of this section we will review some personalized travel and tourism support systems that have been specifically designed for the mobile usage context. CityGuide (Dunlop et al., 2004) is designed for PalmOS devices and helps tourists in finding attractions (such as restaurants) around a city. This recommender system uses the constraint-based filtering approach to control which attractions are shown on the map. In particular, the user, through the system’s map interface, is asked to specify constraints on attraction type, restaurant cuisine and price. The system retrieves from the database only those attractions that satisfy the user’s indicated constraints, and then ranks these retrieved attractions according to their match to the preferences stored in the user’s profile. The system builds and updates the user’s profile, which maintains her long-term preferences, by mining and interpreting the user’s actions (such as writing a restaurant review, reading a review, viewing a restaurant’s details, etc.) and collecting the user’s ratings to the restaurants. Though the system ranks the recommended attractions and shows them on the map, it does not visualize how close each recommended attraction is to the user’s preferences (i.e., the recommendation level). Burigat et al. (2005) illustrate a system running on PDA devices that supports tourists in searching for travel products (i.e., hotels or restaurants) in a geographic area that best satisfy their needs and preferences. The system builds the user-query used to search in the services repository by asking the user to indicate her constraints on the service attributes, e.g. the facilities offered by the hotel or the restaurant. However, the system does not employ the constraint-filtering approach or a multi-attribute utility function. Instead, the system constructs the recommendation list by ranking the services according to their satisfaction score. A service’s satisfaction score is measured by the number of constraints (indicated in the user’s query) that are satisfied by the service. Hence, each recommended service is visualized by an icon superimposed on the map of the geographic area, augmented by a “filled-in” vertical bar representing how much the service satisfies the user’s query. We observe that this system does not reuse the knowledge derived from past user interactions to provide better recommendations. Dynamic Tour Guide (DTG) (ten Hagen et al., 2005) is a mobile tour guide system that helps travelers in discovering a destination. Given a user’s request, the system computes a personalized tour in the city by asking the user her interests and the time she would like to spend for the visit. In DTG a tour is composed of a set of points of interest (i.e., restaurants, attractions and events). The system then presents the recommended tour on the map and provides some audio guide information. This audio visual presentation lets the user to visualize the tour itinerary. The system computes and presents just one tour per user
request, instead of providing a list of recommended tours. DIG also utilizes the content-based approach for building the recommendations(Burke, 2007), just as the previous one The George Square system Brown et al., 2005)runs on handheld tablet PCs. It is designed for supporting visitors to explore a city as well as share their visit experiences. As the user moves in the city and visits the attractions, her positions and activities are automatically recorded (logged )by the system. The user's activities include the attractions she encounters, the web pages (i.e, weblogs created by previous visitors she browses, and the photographs she takes. To build the recommendation list, the system makes use of patterns of co-occurrence of positions and activities, and employs the collaborative filtering recommendation technology(Adomavicius Tuzhilin, 2005). In particular, the system uses the user's recent activities (i.e, in the last few minutes) to define the user's current context, then finds in the previous visitors' log data those periods of time with similar contexts, and finally includes in the recommendation list the activities done in those periods of time by these visitors. In addition, when showing the recommended items (i.e, attractions, web pages, photographs) on the map, the system displays the positions of nearby visitors and supports their leisure collaboration. For instance, the system let the user to collaboratively producing pictures of the attractions, or to have(voice-over-IP)discussions on co-interested attractions and object Mobile Piste Map (dunlop et al., 2007)is designed to support mobile users in selecting ski routes,i.e dividual or combined runs appropriate to their level of ability, preferences, and current mood and track conditions. The system first asks the user to indicate her ski-run preferences, for instance the route difficulty level, and then uses the indicated preferences to compute a list of recommended routes. The system presents on the map the recommended routes and their suitability for the user Park et al.(2007) presents a restaurant Rs for mobile users. The system computes personalized recommendations using a Bayesian Network(Pourret et al., 2008 )that models the probabilistic influences of the input parameters, i.e., the user's personal and contextual information, in relation to the restaurant attributes. This approach represents a restaurant by three discrete-valued attributes: class (e.g, Korean or Italian restaurant), price(e.g, low or medium), and mood(e.g, romantic or tidy The Bayesian Network is defined by an expert, and is trained using a training dataset. To begin with, each user is required to provide personal information(e.g, age, gender, income, preferred restaurant class, etc. ) The users contextual information is automatically collected (detected) by the system, including season(e.g, spring), time in day (e.g, breakfast), position, weather(e.g, sunny), and temperature(e.g, warm). When a user requests for a restaurant recommendation, the system computes the recommendation score for all the restaurants in the database. A restaurants recommendation score is a weighted sum of the conditional probabilities of the restaurant's attribute values, where these conditional probabilities are derived (inferred) from the learned Bayesian network. The system presents on the map a small set of the restaurants,i.e, those achieving the highest recommendation scores Research Goals The main goal of our research work is similar to that addressed by the papers presented in the previous section,i.e, to provide personalized suggestions for travel products and services to mobile travelers, and to use the map as primary tool for visualizing these suggestions. However, our approach differs in the following aspects In our approach, the recommendation process begins with the user specifying explicit preferences, however, this user input is optional in our system, i.e., the user can obtain some recommendations even without explicitly providing any initial input. The main rationale for this esign solution is that the users preferences can be also acquired during the product search interaction phase, using the critiquing function( discussed in details in the next section) and exploiting the knowledge derived from the previous recommendations. We note that in all the referenced approaches either it is mandatory for the user to input initial preferences(Dunlop et
6/22 request, instead of providing a list of recommended tours. DTG also utilizes the content-based approach for building the recommendations (Burke, 2007), just as the previous one. The George Square system (Brown et al., 2005) runs on handheld tablet PCs. It is designed for supporting visitors to explore a city as well as share their visit experiences. As the user moves in the city and visits the attractions, her positions and activities are automatically recorded (logged) by the system. The user’s activities include the attractions she encounters, the web pages (i.e., weblogs created by previous visitors) she browses, and the photographs she takes. To build the recommendation list, the system makes use of patterns of co-occurrence of positions and activities, and employs the collaborative filtering recommendation technology (Adomavicius & Tuzhilin, 2005). In particular, the system uses the user’s recent activities (i.e., in the last few minutes) to define the user’s current context, then finds in the previous visitors’ log data those periods of time with similar contexts, and finally includes in the recommendation list the activities done in those periods of time by these visitors. In addition, when showing the recommended items (i.e., attractions, web pages, photographs) on the map, the system displays the positions of nearby visitors and supports their leisure collaboration. For instance, the system let the user to collaboratively producing pictures of the attractions, or to have (voice-over-IP) discussions on co-interested attractions and objects. Mobile Piste Map (Dunlop et al., 2007) is designed to support mobile users in selecting ski routes, i.e., individual or combined runs appropriate to their level of ability, preferences, and current mood and track conditions. The system first asks the user to indicate her ski-run preferences, for instance the route difficulty level, and then uses the indicated preferences to compute a list of recommended routes. The system presents on the map the recommended routes and their suitability for the user. Park et al. (2007) presents a restaurant RS for mobile users. The system computes personalized recommendations using a Bayesian Network (Pourret et al., 2008) that models the probabilistic influences of the input parameters, i.e., the user’s personal and contextual information, in relation to the restaurant attributes. This approach represents a restaurant by three discrete-valued attributes: class (e.g., Korean or Italian restaurant), price (e.g., low or medium), and mood (e.g., romantic or tidy). The Bayesian Network is defined by an expert, and is trained using a training dataset. To begin with, each user is required to provide personal information (e.g., age, gender, income, preferred restaurant class, etc.). The user’s contextual information is automatically collected (detected) by the system, including season (e.g., spring), time in day (e.g., breakfast), position, weather (e.g., sunny), and temperature (e.g., warm). When a user requests for a restaurant recommendation, the system computes the recommendation score for all the restaurants in the database. A restaurant’s recommendation score is a weighted sum of the conditional probabilities of the restaurant’s attribute values, where these conditional probabilities are derived (inferred) from the learned Bayesian network. The system presents on the map a small set of the restaurants, i.e., those achieving the highest recommendation scores. Research Goals The main goal of our research work is similar to that addressed by the papers presented in the previous section, i.e., to provide personalized suggestions for travel products and services to mobile travelers, and to use the map as primary tool for visualizing these suggestions. However, our approach differs in the following aspects. • In our approach, the recommendation process begins with the user specifying explicit preferences, however, this user input is optional in our system, i.e., the user can obtain some recommendations even without explicitly providing any initial input. The main rationale for this design solution is that the user’s preferences can be also acquired during the product search interaction phase, using the critiquing function (discussed in details in the next section) and exploiting the knowledge derived from the previous recommendations. We note that in all the referenced approaches either it is mandatory for the user to input initial preferences (Dunlop et
7/22 al., 2004, Burigat et al., 2005; ten Hagen et al., 2005; Dunlop et al., 2007)or the user is not even given the option to specify initial preferences( Brown et al., 2005; Park et al., 2007). In this respect, our approach is more flexible, since it give the option to the user to specify preferences if she wants In most of the systems described earlier, the user is not supported in providing feedback to the systems recommendations; or if supported, as in City Guide(Dunlop et al., 2004), such a feedback is exploited only in future recommendation sessions, but not immediately for personalizing the current one In our approach, various types of feedback are supported, i.e ritiquing the recommended items and rating the selected product(s). Moreover, critiquing is used immediately to refine the current user query Our approach allows the users to indicate their preferences at different levels, in particular as a wish or a must satisfy criteria, and it utilizes these preferences in computing the systems recommendation(s). None of the earlier mentioned approaches support such a real-time use of user's preferences and critiques Furthermore, none of the systems described earlier support the users in comparing two recommended items. In fact, given the systems recommended items, a user may first focus her interest on a few items, and then she may compare pairs of items by browsing their characteristics (see Figure 5, presented later on). Hence, our approach supports an item-to-item comparison, highlighting the differences between the two compared items, and hence provides additional support to users in selecting the best item In our approach, case-based reasoning and user-interaction mining methodologies are used to exploit the knowledge contained in the past recommendation cases for learning how to rank the recommendations. Of the systems discussed earlier, only City Guide(dunlop et al., 2004)and George Square(brown et al., 2005 )learn from past recommendation interactions; whereas City Guide exploits the users' ratings and implicit feedback, and George Square exploits the users past activities RECOMMENDATION METHODOLOGY In this section we summarize our proposed methodology for travel product recommendation in a mobile context, providing details about the product representation and the user preferences model. Moreover, we illustrate how the user can critique a product recommendation and how this action is interpreted exploited by the system. A more detailed description of the recommendation methodology is provided Ricci nguyen (2007) We observe that both Moby Rek -the system using text-based display of recommended items, and MapMoby Rek-- the system using a map-based interface, identify the recommendation set, i. e, the restaurants to suggest to the user, in the same way. The two systems differ only in the way they present the results to the user. i. e in their user interface Product Representation and User Preferences Model In our recommendation technology, a travel product is represented as a feature values vector x=(xl, xz xn), where a feature value xi may be numeric, nominal, or a set of nominal values. For instance, the restaurant x( Dolomiti, 1713, pizza, 10, fair-conditioned, smoking-room), ( Saturday, Sunday fcredit-card)) has: name xr"", distance from the user's position x2=1713 meters, type x=pizza, average cost xf10 Euros, characteristics xs=(air-conditioned, smoking-room), opening days x6(Saturday, Sunday), and payment method xf(credit-card)
7/22 al., 2004; Burigat et al., 2005; ten Hagen et al., 2005; Dunlop et al., 2007) or the user is not even given the option to specify initial preferences (Brown et al., 2005; Park et al., 2007). In this respect, our approach is more flexible, since it give the option to the user to specify preferences if she wants. • In most of the systems described earlier, the user is not supported in providing feedback to the system’s recommendations; or if supported, as in CityGuide (Dunlop et al., 2004), such a feedback is exploited only in future recommendation sessions, but not immediately for personalizing the current one. In our approach, various types of feedback are supported, i.e., critiquing the recommended items and rating the selected product(s). Moreover, critiquing is used immediately to refine the current user query. • Our approach allows the users to indicate their preferences at different levels, in particular as a wish or a must satisfy criteria, and it utilizes these preferences in computing the system’s recommendation(s). None of the earlier mentioned approaches support such a real-time use of user’s preferences and critiques. • Furthermore, none of the systems described earlier support the users in comparing two recommended items. In fact, given the system’s recommended items, a user may first focus her interest on a few items, and then she may compare pairs of items by browsing their characteristics (see Figure 5, presented later on). Hence, our approach supports an item-to-item comparison, highlighting the differences between the two compared items, and hence provides additional support to users in selecting the best item. • In our approach, case-based reasoning and user-interaction mining methodologies are used to exploit the knowledge contained in the past recommendation cases for learning how to rank the recommendations. Of the systems discussed earlier, only CityGuide (Dunlop et al., 2004) and George Square (Brown et al., 2005) learn from past recommendation interactions; whereas, CityGuide exploits the users’ ratings and implicit feedback, and George Square exploits the users’ past activities. RECOMMENDATION METHODOLOGY In this section we summarize our proposed methodology for travel product recommendation in a mobile context, providing details about the product representation and the user preferences model. Moreover, we illustrate how the user can critique a product recommendation and how this action is interpreted and exploited by the system. A more detailed description of the recommendation methodology is provided by Ricci & Nguyen (2007). We observe that both MobyRek -- the system using text-based display of recommended items, and MapMobyRek -- the system using a map-based interface, identify the recommendation set, i.e., the restaurants to suggest to the user, in the same way. The two systems differ only in the way they present the results to the user, i.e., in their user interface. Product Representation and User Preferences Model In our recommendation technology, a travel product is represented as a feature values vector x= (x1, x2, …, xn), where a feature value xi may be numeric, nominal, or a set of nominal values. For instance, the restaurant x= (“Dolomiti”, 1713, {pizza}, 10, {air-conditioned, smoking-room}, {Saturday, Sunday}, {credit-card}) has: name x1=“Dolomiti”, distance from the user’s position x2=1713 meters, type x3={pizza}, average cost x4=10 Euros, characteristics x5={air-conditioned, smoking-room}, opening days x6={Saturday, Sunday}, and payment method x7={credit-card}
8/22 Any recommender system, for generating personalized recommendations, requires a representation of the user's preferences. Preferences vary from user to user, and even the same user in different situations (contexts) may have different preferences. In our approach, the user preferences model, which is encoded in a product search query, includes both contextual preferences(such as the space-time constraints )and preferences on product features. Contextual preferences characterize a user's current context of request whereas product preferences express a user's taste and like. In the restaurant recommendation problem for example, space-time constraints guarantee that the recommended restaurants are open on the day of the request and not too far from the user's position. Preferences on product features may state that the ser, for instance, is interested in cheap restaurants, or prefers to go for pizza. The user preferences model incorporates both long-term and session-specific user preferences (Nguyen Ricci, 2008a; Ricci Nguyen, 2007). Long-term (stable) user preferences, such as a preference for non-smoking room, are inferred from the users recent interaction sessions with the system, and remain true throughout these sessions. In contrast, session-specific user preferences, such as a wish to eat pizza, are transient and specific to a session. Acquiring session-specific preferences helps the system to effectively capture the transient needs of the user, whereas exploiting long-term preferences allows the system to rely on more stable preferences, or default choices, and also avoids interrupting the user or requiring her effort in specifying preferences when these are not needed Session-specific and long-term preferences must be combined and used in the most appropriate way In our approach, the system acquires session-specific user preferences in two ways: by users initial specifications and by users critiques. The user's initial preferences explicitly specified at the beginning of the recommendation session help orient the system's initial search. Meanwhile, the user's critiques to the recommended products help the system refine its understanding of the users needs and preferences As noted earlier the initial preference specification is optional in our system In a recommendation session, the user query has the function of encoding the users preferences(both session-specific and long-term), and is used by the system to compute the recommendation list(more on this subject will be provided later). In our model, the user-query q consists of three components, (qi, p The logical query(qu models the conditions that must be satisfied by the recommended products The logical query is a conjunction of constraints: qF(cr AczA.. Acm), where c is a constraint on j-th feature. A constraint deals with only one feature, and a feature appears in only one constraint The favorite pattern (p) models the conditions that the recommended products should match as much as possible. The wish conditions allow the system to make trade-offs. The favorite pattern is represented in the same vector space of the product representation: P=(pl, P2,.,Pn), where x, and pi belong to the same feature type, Vi=l.n The feature importance weights vector()models how much each feature is important for the user with respect to the others: w=(w1, w2, .. Wn), where wi(E [o, 1]) is the importance weight of i-th feature. The system refers to the feature importance weights when it needs to rank the roducts or make trade-offs or to find relaxation solutions for over-constrained logical queries For instance, the query (q=(x2< 2000)A(x6(Saturday, Sunday D),=(,?,pizza,?,?,?,?), w=(0,0.4, 0.2, 0,0, 0.4, 0)) models a user interested only in those restaurants within 2 km from her position, open on Saturday and Sunday, and preferring pizza restaurants to the others. The user considers the distance and the opening day as the most important features and then the restaurant type, and she is indifferent to the other features Recommendation process In our approach, the overall model of a recommendation session is logically divided into three phases 1) initialization, 2)interaction and adaptation, and 3)retaining, as shown in Figure 1. Given a user's request
8/22 Any recommender system, for generating personalized recommendations, requires a representation of the user’s preferences. Preferences vary from user to user, and even the same user in different situations (contexts) may have different preferences. In our approach, the user preferences model, which is encoded in a product search query, includes both contextual preferences (such as the space-time constraints) and preferences on product features. Contextual preferences characterize a user’s current context of request, whereas product preferences express a user’s taste and like. In the restaurant recommendation problem, for example, space-time constraints guarantee that the recommended restaurants are open on the day of the request and not too far from the user’s position. Preferences on product features may state that the user, for instance, is interested in cheap restaurants, or prefers to go for pizza. The user preferences model incorporates both long-term and session-specific user preferences (Nguyen & Ricci, 2008a; Ricci & Nguyen, 2007). Long-term (stable) user preferences, such as a preference for non-smoking room, are inferred from the user’s recent interaction sessions with the system, and remain true throughout these sessions. In contrast, session-specific user preferences, such as a wish to eat pizza, are transient and specific to a session. Acquiring session-specific preferences helps the system to effectively capture the transient needs of the user, whereas exploiting long-term preferences allows the system to rely on more stable preferences, or default choices, and also avoids interrupting the user or requiring her effort in specifying preferences when these are not needed. Session-specific and long-term preferences must be combined and used in the most appropriate way. In our approach, the system acquires session-specific user preferences in two ways: by user’s initial specifications and by user’s critiques. The user’s initial preferences explicitly specified at the beginning of the recommendation session help orient the system’s initial search. Meanwhile, the user’s critiques to the recommended products help the system refine its understanding of the user’s needs and preferences. As noted earlier the initial preference specification is optional in our system. In a recommendation session, the user query has the function of encoding the user’s preferences (both session-specific and long-term), and is used by the system to compute the recommendation list (more on this subject will be provided later). In our model, the user-query q consists of three components, q= (ql, p, w). • The logical query (ql) models the conditions that must be satisfied by the recommended products. The logical query is a conjunction of constraints: ql= (c1 Λ c2 Λ … Λ cm), where cj is a constraint on j-th feature. A constraint deals with only one feature, and a feature appears in only one constraint. • The favorite pattern (p) models the conditions that the recommended products should match as much as possible. The wish conditions allow the system to make trade-offs. The favorite pattern is represented in the same vector space of the product representation: p= (p1, p2,…, pn), where xi and pi belong to the same feature type, ∀i=1..n. • The feature importance weights vector (w) models how much each feature is important for the user with respect to the others: w= (w1, w2, …, wn), where wi (∈ [0,1]) is the importance weight of i-th feature. The system refers to the feature importance weights when it needs to rank the products or make trade-offs or to find relaxation solutions for over-constrained logical queries. For instance, the query q= (ql = (x2 ≤ 2000) ∧ (x6 ⊇ {Saturday, Sunday})), p= (?, ?, {pizza}, ?, ?, ?, ?), w= (0, 0.4, 0.2, 0, 0, 0.4, 0)) models a user interested only in those restaurants within 2 km from her position, open on Saturday and Sunday, and preferring pizza restaurants to the others. The user considers the distance and the opening day as the most important features and then the restaurant type, and she is indifferent to the other features. Recommendation Process In our approach, the overall model of a recommendation session is logically divided into three phases: 1) initialization, 2) interaction and adaptation, and 3) retaining, as shown in Figure 1. Given a user’s request
for a product recommendation, the system builds the initial representation of the user's query. Then, the system finds the products most suitable to the initial query, and recommends them to the user. Given these recommendations the user can browse and evaluate them. Then the user may critique the recommended products, e.g,"This product is too expensive for me". This user's evaluation helps the system to adapt(update) the current understanding of the user's needs and preferences encoded in the user-query representation. These two steps, 1.e, the systems recommendation and the user's critiquing, iterate until when the user is satisfied with one of the recommended products or when she terminates the session with no product selection. At the end of the session, the system records the current recommendation session for future exploitations Step 2 Preferences Recommendation zation Computation Recommend Recommended Step 3 New Query Preferences Adaptation Critique Current Case constraints Recommendation Case Base Figure 1. The recommendation process Hence, a recommendation session starts when a user asks for a product suggestion( Figure 2a)and ends when the user selects a product or when she quits the system. A recommendation session evolves in cycles. In a recommendation cycle, Moby Rek shows a ranked list of recommended products(Figure 2b) that the user can browse and criticize( Figure 2c), and the cycle ends when a new recommendation list is requested and shown At the beginning of the recommendation session, Moby Rek and MapMoby Rek offer the user three options for search initialization( Figure 2a) No, use my profile". To let the system automatically construct the initial search query Let me specify. To let the user explicitly specify some initial preferences Similar to". To let the user specify a known product, which the user has consumed previously, as the starting point of the systems search
9/22 for a product recommendation, the system builds the initial representation of the user's query. Then, the system finds the products most suitable to the initial query, and recommends them to the user. Given these recommendations the user can browse and evaluate them. Then the user may critique the recommended products, e.g., “This product is too expensive for me”. This user’s evaluation helps the system to adapt (update) the current understanding of the user's needs and preferences encoded in the user-query representation. These two steps, i.e., the system's recommendation and the user's critiquing, iterate until when the user is satisfied with one of the recommended products or when she terminates the session with no product selection. At the end of the session, the system records the current recommendation session for future exploitations. Initial preferences and contextual constraints Query Initialization Query Initialization Preferences Recommendation Computation Recommendation Computation Recommended Items Recommend Critique Critique New Query preferences Adaptation Query Adaptation Select or quit Retain Current Case Retain Current Case Recommendation Case Base Step 1 Step 2 Step 3 Figure 1. The recommendation process. Hence, a recommendation session starts when a user asks for a product suggestion (Figure 2a) and ends when the user selects a product or when she quits the system. A recommendation session evolves in cycles. In a recommendation cycle, MobyRek shows a ranked list of recommended products (Figure 2b) that the user can browse and criticize (Figure 2c), and the cycle ends when a new recommendation list is requested and shown. At the beginning of the recommendation session, MobyRek and MapMobyRek offer the user three options for search initialization (Figure 2a). • “No, use my profile”. To let the system automatically construct the initial search query. • “Let me specify”. To let the user explicitly specify some initial preferences. • “Similar to”. To let the user specify a known product, which the user has consumed previously, as the starting point of the system’s search
NOKIA NOKIA NOKI Start-up screen restaurant(s) Page1/5 A Dolomiti lax distance (in m) dolomiti Distance from your current (1.713km,E10 position: 1.713km Search for today? Piedicastello Thursday I'd like to see others 1.807kme30 More preferences? at any distance in Trittico No, use my profile earer (79m,E10 o Let me specify Nuova Castell o Similar to o farther (1.221km,E10 Home options Search Figure 2. MobyRek user interface (a)Search initialization options;(b) Recommendation list:(c) User critique on a numeric feature my once the user selects an initialization option, the system builds the initial query (q) exploiting Itiple knowledge sources of users-related data, including a) the current users space-time information b)the current user's previous products' selections, c) the past selections of other users of the system, and d)the current users initial preferences, explicitly specified at the beginning of the interaction with the system. Basically, the initial logical query (qi) is built based on the users space-time constraints and initial preferences stated as a must-have option. The initial favorite pattern (p)is built by integrating th users long-term preferences pattern, the characteristics of the product that was selected in a past case that is most similar to the current case, and the initial preferences of the current user stated as a wish-have conditions. The initial feature weights vector (w is built by exploiting data collected in previous user's interactions with the system. The details of the query representation initialization are discussed in nguyen ricci, 2004; Ricci Nguyen, 2007) The initial query (q) is then used by the system to compute the first recommendation list. In the computation of the recommendation list, the system first filters out those products that do not satisfy the logical query(qD, and then ranks the remaining products according to their similarity to the (p, w),i.e the favorite pattern and the feature weights vector, respectively. The ranking is done so that the more similar to(p, w)a product is the higher that product appears in the ranked list of Moby Rek. a products similarity score is computed as described in Equation(1). It is 1, i.e., the maximum value for similarity. minus the generalized weighted Euclidean distance, d(x, p, w), between the product x and the favorite pattern p, using the weights in the vector w w,d(xi, pi) sim(x, p, w)=1-d(x, p, w)=l where d(( py is the distance( dissimilarity)between product x and the favorite pattern p with respect to feature fi, and wi is the importance weight of feature fi In the computation of the recommendation list, if no products in the catalogue satisfy the logical query D, then the system attempts to discard the minimum number of constraints for making the query satisfiable, i.e., such that the new relaxed query returns a non-empty set of items. In this procedure, which is a kind of constraint relaxation, a constraint involving a less important feature is eliminated before
10/22 (a) (b) (c) Figure 2. MobyRek user interface. (a)Search initialization options; (b) Recommendation list; (c) User critique on a numeric feature. Once the user selects an initialization option, the system builds the initial query (q 0 ) exploiting multiple knowledge sources of users-related data, including a) the current user's space-time information, b) the current user’s previous products’ selections, c) the past selections of other users of the system, and d) the current user's initial preferences, explicitly specified at the beginning of the interaction with the system. Basically, the initial logical query (ql 0 ) is built based on the user’s space-time constraints and initial preferences stated as a must-have option. The initial favorite pattern (p 0 ) is built by integrating the user’s long-term preferences pattern, the characteristics of the product that was selected in a past case that is most similar to the current case, and the initial preferences of the current user stated as a wish-have conditions. The initial feature weights vector (w 0 ) is built by exploiting data collected in previous user’s interactions with the system. The details of the query representation initialization are discussed in (Nguyen & Ricci, 2004; Ricci & Nguyen, 2007). The initial query (q 0 ) is then used by the system to compute the first recommendation list. In the computation of the recommendation list, the system first filters out those products that do not satisfy the logical query (ql), and then ranks the remaining products according to their similarity to the (p, w), i.e., the favorite pattern and the feature weights vector, respectively. The ranking is done so that the more similar to (p, w) a product is the higher that product appears in the ranked list of MobyRek. A product’s similarity score is computed as described in Equation (1). It is 1, i.e., the maximum value for similarity, minus the generalized weighted Euclidean distance, d(x,p,w), between the product x and the favorite pattern p, using the weights in the vector w: ∑ ∑ = = = − = − n i i n i i i i w w d x p sim x p w d x p w 1 1 ( , ) ( , , ) 1 ( , , ) 1 ; (1) where d(xi, pi) is the distance (dissimilarity) between product x and the favorite pattern p with respect to feature fi, and wi is the importance weight of feature fi. In the computation of the recommendation list, if no products in the catalogue satisfy the logical query (ql), then the system attempts to discard the minimum number of constraints for making the query satisfiable, i.e., such that the new relaxed query returns a non-empty set of items. In this procedure, which is a kind of constraint relaxation, a constraint involving a less important feature is eliminated before