Expert Systems with Applications 38(2011)7683-7692 Contents lists available at ScienceDirect Expert Systems with Applications ELSEVIER journalhomepagewww.elsevier.com/locate/eswa On the design of individual and group recommender systems for tourism Inma garcia laura sebastia. Eva onaindia Universidad politecnica de valencia, Spain ARTICLE FO A BSTRACT This paper presents a recommender system for tourism based on the tastes of the users, their demo- graphic classification and the places they have visited in former trips. The system is able to offer recom Group recommenders endations for a single user or a group of users. The group recommendation is elicited out of the individual personal recommendations through the application of mechanisms such as aggregation and intersection. The elicitation mechanism is implemented as an extension of e-Tourism, a user-adapted tourism and leisure application whose main component is the Generalist Recommender System Kernel (GRSK) a domain-independent taxonomy-driven recommender system. 2010 Elsevier Ltd. All rights reserved. 1 Introduction ci, Schaumlechner, Wober, Zanella, 2003), ITR(Ricci, Arslan Mirzadeh, Venturini, 2002)or Trip@dvice(ricci, Cavada, ngu Tourism is an activity strongly connected to the personal prefer- yen, 2002: Venturini ricci, 2006), and(b)systems focused on ences and interests of people. Nowadays, more and more people recommending a list of activities that a tourist can perform in a realize the advantages of the new technologies for planning an particular destination. The main difference between these two agenda of leisure activities in a city(Werthner, 2003)as an increas- types of systems is that, whereas in the first case only a final result ing number of companies and institutions offer tourist information is requested, the second type of rS provide a list of activities and, easily accessible through web services. However, most of the exist- more preferable, the construction of a tour or travel plan with such ing tourism web sites can be regarded as booking services provid- activities. For instance, WebGuide( Fink Kobsa, 2002) generate rs,and there is usually no recommendation on the available personalized tour recommendations for the city of Heidelberg based ept for the typical users ratings that estimate the sat- on geographical information, information about points of interest faction level for the product and can serve as an indication for fur the individual users preferences and interests her customers. The reason why the successful application of movie The system we describe in this paper, e-Tourism, falls within the or book recommendation techniques has not had such an impact in second type of tourism web sites. e-Tourism is a tourist web-based tourism is because modeling accurate tourism user profiles is a Rs that assists a user on the generation of a personalized tourist much harder task than in other application domains. Tourism is a plan or agenda for the city of Valencia in Spain. e-Tourism eases much less frequent activity than movie-watching or book-purchas- the task of processing a large amount of information and selecting ing and thus the number of available rated tourism items is also the most preferable activities for a particular user. Additionally, it much smaller. On the other hand, the structure of a tourist product also allows for the arrangement and schedule of the tourist activ- is itself far more complex than a book or a movie. Despite these dif- ities by handling different sources of information like opening ficulties, the current trend in travel, leisure and tourism web sites is hours of places, distances between the places to visit or the time incorporate recommender systems(RS)to mimic the interaction spent on the visit. This way we create a personalized agenda for with a human travel agent(Delgado Davidson, 2002), and put the the tourist with the recommended activities. This paper is particu- emphasis on the design of adaptive dialogs(ricci, 2002)aimed at larly focused on the recommendation of the activities that are most eliciting the user preferences and requirements in order to come likely of interest to the user, and we refer readers interested in the up with process of building the agenda to Sebastia, Garcia, Onaindia, and Among the various travel web services that use RS techniques, Guzman(2009). we can distinguish two types: (a) systems focused on recommend- e-Tourism is also a group recommender system for tourism. ing a tourist destination to the trip like DieToRecs(Fesenmaier, Ric- Since traveling is an activity that usually involves a group of users Corresponding author. Tel. +34 963 870 000. TR and Tripadvice are specifically aimed at recommending a tourist E-mail addresses: ingarciaedsic upves(l. Garcia) lstarin@dsicupves(L Sebastia), destination, they do make use of a list of activities of interest to the user to obtain 0957-4174/s- see front matter e 2010 Elsevier Ltd. All rights reserved doi:10.1016/eswa2010.12.14
On the design of individual and group recommender systems for tourism Inma Garcia ⇑ , Laura Sebastia, Eva Onaindia Universidad Politecnica de Valencia, Spain article info Keywords: Recommender systems Group recommenders Tourism abstract This paper presents a recommender system for tourism based on the tastes of the users, their demographic classification and the places they have visited in former trips. The system is able to offer recommendations for a single user or a group of users. The group recommendation is elicited out of the individual personal recommendations through the application of mechanisms such as aggregation and intersection. The elicitation mechanism is implemented as an extension of e-Tourism, a user-adapted tourism and leisure application whose main component is the Generalist Recommender System Kernel (GRSK), a domain-independent taxonomy-driven recommender system. 2010 Elsevier Ltd. All rights reserved. 1. Introduction Tourism is an activity strongly connected to the personal preferences and interests of people. Nowadays, more and more people realize the advantages of the new technologies for planning an agenda of leisure activities in a city (Werthner, 2003) as an increasing number of companies and institutions offer tourist information easily accessible through web services. However, most of the existing tourism web sites can be regarded as booking services providers, and there is usually no recommendation on the available services – except for the typical user’s ratings that estimate the satisfaction level for the product and can serve as an indication for further customers. The reason why the successful application of movie or book recommendation techniques has not had such an impact in tourism is because modeling accurate tourism user profiles is a much harder task than in other application domains. Tourism is a much less frequent activity than movie-watching or book-purchasing and thus the number of available rated tourism items is also much smaller. On the other hand, the structure of a tourist product is itself far more complex than a book or a movie. Despite these dif- ficulties, the current trend in travel, leisure and tourism web sites is to incorporate recommender systems (RS) to mimic the interaction with a human travel agent (Delgado & Davidson, 2002), and put the emphasis on the design of adaptive dialogs (Ricci, 2002) aimed at eliciting the user preferences and requirements in order to come up with accurate tourism user profiles. Among the various travel web services that use RS techniques, we can distinguish two types: (a) systems focused on recommending a tourist destination to the trip like DieToRecs (Fesenmaier, Ricci, Schaumlechner, Wober, & Zanella, 2003), ITR (Ricci, Arslan, Mirzadeh, & Venturini, 2002) or Trip@dvice (Ricci, Cavada, & Nguyen, 2002; Venturini & Ricci, 2006), and (b) systems focused on recommending a list of activities that a tourist can perform in a particular destination. The main difference between these two types of systems is that, whereas in the first case only a final result is requested,1 the second type of RS provide a list of activities and, more preferable, the construction of a tour or travel plan with such activities. For instance, WebGuide (Fink & Kobsa, 2002) generates personalized tour recommendations for the city of Heidelberg based on geographical information, information about points of interest and the individual users preferences and interests. The system we describe in this paper, e-Tourism, falls within the second type of tourism web sites. e-Tourism is a tourist web-based RS that assists a user on the generation of a personalized tourist plan or agenda for the city of Valencia in Spain. e-Tourism eases the task of processing a large amount of information and selecting the most preferable activities for a particular user. Additionally, it also allows for the arrangement and schedule of the tourist activities by handling different sources of information like opening hours of places, distances between the places to visit or the time spent on the visit. This way we create a personalized agenda for the tourist with the recommended activities. This paper is particularly focused on the recommendation of the activities that are most likely of interest to the user, and we refer readers interested in the process of building the agenda to Sebastia, Garcia, Onaindia, and Guzman (2009). e-Tourism is also a group recommender system for tourism. Since traveling is an activity that usually involves a group of users 0957-4174/$ - see front matter 2010 Elsevier Ltd. All rights reserved. doi:10.1016/j.eswa.2010.12.143 ⇑ Corresponding author. Tel.: +34 963 870 000. E-mail addresses: ingarcia@dsic.upv.es (I. Garcia), lstarin@dsic.upv.es (L. Sebastia), onaindia@dsic.upv.es (E. Onaindia). 1 Although ITR and Trip@dvice are specifically aimed at recommending a tourist destination, they do make use of a list of activities of interest to the user to obtain such a destination. Expert Systems with Applications 38 (2011) 7683–7692 Contents lists available at ScienceDirect Expert Systems with Applications journal homepage: www.elsevier.com/locate/eswa
. Garcia et aL/ Expert Systems with Applications 38(2011)7683-7692 (family, friends, etc. ) travel recommendations should meet the Similarly to CATS or Travel Decision Forum, e-Tourism elicits an references of the majority of the group members(Ardissono, individual profile for each member in the group, and the group pro- Goy, Petrone, Segnan, Torasso ne way to achieve this file is maintained by combining the individual user models, thus is that users discuss among themselves and arrive at a satisfactory giving rise to a set of preferences labeled with a degree of interest. agreement that combines the tastes and preferences of all the whereas the systems described above only use aggregati group members into a single set of preferences, thus allowing the ods, our system also employs intersection mechanisms, a new system to elicit a recommendation as if they were a single user. functionality to elicit group recommendations such that no mem- task that requires the ber in the group is specially promoted or harmed with the deci- group members to previously agree on the way their particular sions: in other words, intersection mechanisms accounts for preferences will be gathered together and combined into a single balanced decisions such that the preferences of all the group mem- group profile. In order to alleviate the task of eliciting a group pro- bers are taken in account equally. Another distinguishing file, group RS offer some sort of mechanisms for aggregating the characteristic of our system is that, instead of making recommen- dividual models as to arrive at satisfactory recommendations dations that directly match the group preferences, e-Tourism ap- for the whole group ameson, 2004); that is, by taking into ac- plies a hybrid count the interests and tastes of the group as a whole and by iden demographic, content-based recommendation and likes-based fil- tifying the individual preferences, Rs are capable of finding a tering. This way e-Tourism is always able to offer a recommenda- compromise that is accepted by all the group members. This is tion, even when the user profile contains very little information. the crucial point in a group rs because how individual preference In comparison to other tourist group RS, e-Tourism provides a specification and elicitation is managed to come up with the group fully-automated mechanism for eliciting a group profile which model will determine the success of the recommendation game- does not require any interaction among the users, neither person- son, 2004: Plua Jameson, 2002) ally nor virtually. The resulting preferences of the e-Tourism prefer To the best of our knowledge, there are not many group travel ence elicitation could also be used as the starting point of a recommender systems. CATS(McCarthy, McGinty, Smyth, Salam, conversational mechanism in which users can further express 2006)and Travel Decision Forum (ameson, Baldes, Kleinbauer, and refine the group preference model. 003: Jameson, 2004; Jameson, Baldes, Kleinbauer, 2004)are, This paper is organized as follows. The next section sketches the or instance, two grou up Rs aimed at recommending, specifically e-Tourism architecture. The main module of the architecture. the vacation destination, whereas Intrigue(Ardissono et al., 2003) Generalist Recommender System Kernel(GRSK), is fully detailed in assists a group of users in the organization of a tour and provides Section 3. As we will explain below, the recommendation process an interactive agenda for scheduling the tour. Both CATS and Travel is divided into two steps, detailed in Sections 4 and 5, respectively Decision Forum build an individual user profile for each group The experimental results obtained from the evaluation of the member, and then maintain a group profile by means of a conve GRSK, for both individual users and groups, are shown in Section 6. sational mechanism. Specifically, in CATS, by critiquing a recom- We finally conclude and present some future work. mendation, the user can express a preference over a eature in line with their own personal requirements. The profile is maintained by combining the individual user 2. e-Tourism architecture and associating critiques with the users who contributed them Travel Decision Forum uses animated characters to help the mem e-Tourism is a system aimed at recommending a list of tourist bers of a group to agree on the organization of a vacation. Among activities for a single tourist or group of tourists in a city, particu the animated characters, there is a mediator who directs the inter- larly, in the city of Valencia( Spain). It also provides a tour sched- action between the users. The objective of Travel Decision Forum is uling with the list of recommended activities complying with that users reach an agreement on the set of preferences(group pro- constraints such as the distances between places or the opening file)that the recommendation must fulfil. The degree of interest of hours of places. e-Tourism is intended to be a service for foreigners a specific preference in the group profile is calculated out of the de- and locals to become deeply familiar with the city and to plan lei- gree of interest of each member by using measures like the sure activities. verage, median, etc. or through an automatically designed non- The e-Tourism architecture is shown in Fig. 1. It is composed of manipulable aggregation mechanism. Once the group profile is cre- four subsystems: the Control subsystem, the generalist Recom ated, the mediator asks each member of the group in turn whether mender System Kernel(GRSk) subsystem, the Planning subsystem the model can be accepted or not. By using the users critiques, the and the database Interface subsystem. The Control subsystem acts mediator reconfigures the preferences ratios, and the recommen- as an user interface initiates the execution of the other subsystems dation is done using the group preference model. and centralizes the exchange of information. This includes convert In Intrigue, individual participants are not described one by one ing the users request into a suitable recommendation query and of homogeneous subgroups, and their possibly conflicting individ i.e. the tourist plan. The Database Interface processes the queries preferences to define the subgroup requirements on the properties important modules in e-Tourism are the grSK and the planning f tourist attractions, paying attention to those preferences possi- subsystems. The grSK is a general-purpose recommender bly conflicting between subgroups. The group profile stores a rele- in charge of generating the list of recommended vance value to estimate the weight that the preferences of a the Planning subsystem schedules the selected m member should have on the recommendation building the tourist plan or agenda( Sebastia As a summary, we can conclude the three aforementioned e-Tourism works as follows. The first step is to build the individ- group RS use aggregation methods to elicit the group profile, asso- ual user profile. First, the user registers in the system and enters his ciating a weight or degree of interest to each preference in the personal details and general likes. In case of a group. it is necessary rofile. These values are obtained according to the user cri- to give the users that form the group, who must be already regis- the group preference model, the conflicts that may appear tered in the m. The second step, executed by the grSK subsys n them and, in general, through the interaction of the group tem, is to a list of activities that are likely of interest to the members within the group travel recommender system. user or the group of users. The last step is to schedule the selected
(family, friends, etc.), travel recommendations should meet the preferences of the majority of the group members (Ardissono, Goy, Petrone, Segnan, & Torasso, 2003). One way to achieve this is that users discuss among themselves and arrive at a satisfactory agreement that combines the tastes and preferences of all the group members into a single set of preferences, thus allowing the system to elicit a recommendation as if they were a single user. However, this is a tedious and complicated task that requires the group members to previously agree on the way their particular preferences will be gathered together and combined into a single group profile. In order to alleviate the task of eliciting a group pro- file, group RS offer some sort of mechanisms for aggregating the individual models as to arrive at satisfactory recommendations for the whole group (Jameson, 2004); that is, by taking into account the interests and tastes of the group as a whole and by identifying the individual preferences, RS are capable of finding a compromise that is accepted by all the group members. This is the crucial point in a group RS because how individual preference specification and elicitation is managed to come up with the group model will determine the success of the recommendation (Jameson, 2004; Plua & Jameson, 2002). To the best of our knowledge, there are not many group travel recommender systems. CATS (McCarthy, McGinty, Smyth, & Salam, 2006) and Travel Decision Forum (Jameson, Baldes, & Kleinbauer, 2003; Jameson, 2004; Jameson, Baldes, & Kleinbauer, 2004) are, for instance, two group RS aimed at recommending, specifically, a vacation destination, whereas Intrigue (Ardissono et al., 2003) assists a group of users in the organization of a tour and provides an interactive agenda for scheduling the tour. Both CATS and Travel Decision Forum build an individual user profile for each group member, and then maintain a group profile by means of a conversational mechanism. Specifically, in CATS, by critiquing a recommendation, the user can express a preference over a specific feature in line with their own personal requirements. The group profile is maintained by combining the individual user models and associating critiques with the users who contributed them. Travel Decision Forum uses animated characters to help the members of a group to agree on the organization of a vacation. Among the animated characters, there is a mediator who directs the interaction between the users. The objective of Travel Decision Forum is that users reach an agreement on the set of preferences (group pro- file) that the recommendation must fulfil. The degree of interest of a specific preference in the group profile is calculated out of the degree of interest of each member by using measures like the average, median, etc. or through an automatically designed nonmanipulable aggregation mechanism. Once the group profile is created, the mediator asks each member of the group in turn whether the model can be accepted or not. By using the users critiques, the mediator reconfigures the preferences ratios, and the recommendation is done using the group preference model. In Intrigue, individual participants are not described one by one but the system models the group as a set partitioned into a number of homogeneous subgroups, and their possibly conflicting individual preferences are separately represented. Intrigue elicits a set of preferences to define the subgroup requirements on the properties of tourist attractions, paying attention to those preferences possibly conflicting between subgroups. The group profile stores a relevance value to estimate the weight that the preferences of a member should have on the recommendation. As a summary, we can conclude the three aforementioned group RS use aggregation methods to elicit the group profile, associating a weight or degree of interest to each preference in the group profile. These values are obtained according to the user critiques to the group preference model, the conflicts that may appear between them and, in general, through the interaction of the group members within the group travel recommender system. Similarly to CATS or Travel Decision Forum, e-Tourism elicits an individual profile for each member in the group, and the group pro- file is maintained by combining the individual user models, thus giving rise to a set of preferences labeled with a degree of interest. Whereas the systems described above only use aggregation methods, our system also employs intersection mechanisms, a new functionality to elicit group recommendations such that no member in the group is specially promoted or harmed with the decisions; in other words, intersection mechanisms accounts for balanced decisions such that the preferences of all the group members are taken in account equally. Another distinguishing characteristic of our system is that, instead of making recommendations that directly match the group preferences, e-Tourism applies a hybrid recommendation technique by combining demographic, content-based recommendation and likes-based filtering. This way e-Tourism is always able to offer a recommendation, even when the user profile contains very little information. In comparison to other tourist group RS, e-Tourism provides a fully-automated mechanism for eliciting a group profile which does not require any interaction among the users, neither personally nor virtually. The resulting preferences of the e-Tourism preference elicitation could also be used as the starting point of a conversational mechanism in which users can further express and refine the group preference model. This paper is organized as follows. The next section sketches the e-Tourism architecture. The main module of the architecture, the Generalist Recommender System Kernel (GRSK), is fully detailed in Section 3. As we will explain below, the recommendation process is divided into two steps, detailed in Sections 4 and 5, respectively. The experimental results obtained from the evaluation of the GRSK, for both individual users and groups, are shown in Section 6. We finally conclude and present some future work. 2. e-Tourism architecture e-Tourism is a system aimed at recommending a list of tourist activities for a single tourist or group of tourists in a city, particularly, in the city of Valencia (Spain). It also provides a tour scheduling with the list of recommended activities complying with constraints such as the distances between places or the opening hours of places. e-Tourism is intended to be a service for foreigners and locals to become deeply familiar with the city and to plan leisure activities. The e-Tourism architecture is shown in Fig. 1. It is composed of four subsystems: the Control subsystem, the Generalist Recommender System Kernel (GRSK) subsystem, the Planning subsystem and the Database Interface subsystem. The Control subsystem acts as an user interface, initiates the execution of the other subsystems and centralizes the exchange of information. This includes converting the users request into a suitable recommendation query and show the list of recommended activities and the tour scheduling, i.e. the tourist plan. The Database Interface processes the queries coming from the rest of modules in the system. The two most important modules in e-Tourism are the GRSK and the Planning subsystems. The GRSK is a general-purpose recommender system in charge of generating the list of recommended activities, and the Planning subsystem schedules the selected activities thus building the tourist plan or agenda (Sebastia et al., 2009). e-Tourism works as follows. The first step is to build the individual user profile. First, the user registers in the system and enters his personal details and general likes. In case of a group, it is necessary to give the users that form the group, who must be already registered in the system. The second step, executed by the GRSK subsystem, is to generate a list of activities that are likely of interest to the user or the group of users. The last step is to schedule the selected 7684 I. Garcia et al. / Expert Systems with Applications 38 (2011) 7683–7692
. Garcia et aL/ Expert Systems with Applications 38(2011)7683-7692 85 e-Tourism Database Interface Subsystem GRSK Subsystem Subsystem commended Control Subsystem User Info User Info User Info User Info Group of Users Fig. 1. e-Tourism system. activities and e tourist plan or agenda, as indicated in tion levels become more specific towards the bottom. In a GRSK Fig. 1. As ed before, this paper does not deal with taxonomy, entities represent the features (f) that are commonly the problem of the agenda and interested readers are re- managed in a tourism domain like Gothic Art, Museums, religion ferred to Sebastia et al. (2009) uildings, etc as Fig. 2 shows. The leaf nodes of the taxonomy rep- 3. The Generalist Recommender System Kernel (GRSK est-level or most specific feature in the hierarchy. The edges linking an item to a feature are associated a value to indicate the he Generalist Recommender System Kernel(GRSK)is the core of degree of interest of the item(activity in the tourism taxonomy)un- e-Tourism. The two main tasks of the GRSK are the analysis of the der the corresponding feature, i.e. as a member of the category de- users profile to come up with a preference model, and the genera- noted by the feature. An item can also be categorized by more than tion of the list of activities to be recommended to a single user ne feature in the taxonomy. For instance, in Fig. 2, the item Visit to group of users. These two tasks are described in detail in Sections 4 Marques de dos aguas Palace is categorized with 80% of interest as Gothic Art and with 60% of interest as a Pottery Museum. In this section, we present the different elements and compo- Items are described by means of a list of tuples which represent nents of the GRSK, namely the hierarchical structure of the data all the incoming edges of a leaf node. a tuple is of the form( fd) handled in the GRSK, the input information that users provide where i is the item, fe f is a feature defined in the taxonomy such when building their profiles and the components that make that there is an edge connecting and i, and d'E[0. 100)is the de- the gsk architecture gree of interest of the item i under the feature f. Additionally, items are associated a numeric value vc(visit counter)to represent how 3. 1. The gsk data popular the item i is among users; this value indicates how many times the item i has been visited by the users when it was 3.1.1. Taxonomy recommended The GRSK relies on the use of a taxonomy to represent the users likes and the items to recommend(see Fig. 2). It has beer 3. 1.2. Input information of the user profil to be generalist, i.e. independent of the current catalog The gRSK records a profile for each user that contains the user ommend. Therefore, the gRSK can work with any tastes and general likes as well as his historical interaction with the domain provided that the data of the new domain ar system. The input information on the personal data and general through a taxonomy representation likes of the user is entered only on the first visit, i.e. when the user The entities in a taxonomy are arranged in a hierarchical struc- registers in the system for the first time. The information obtained ure connected through an is-a relationship in which the classifica- during the interaction of the user with the system after the visit REligious Pottery Science Fig. 2. GRSK taxonomy
activities and return the tourist plan or agenda, as indicated in Fig. 1. As we commented before, this paper does not deal with the problem of building the agenda and interested readers are referred to Sebastia et al. (2009). 3. The Generalist Recommender System Kernel (GRSK) The Generalist Recommender System Kernel (GRSK) is the core of e-Tourism. The two main tasks of the GRSK are the analysis of the users profile to come up with a preference model, and the generation of the list of activities to be recommended to a single user or a group of users. These two tasks are described in detail in Sections 4 and 5, respectively. In this section, we present the different elements and components of the GRSK, namely the hierarchical structure of the data handled in the GRSK, the input information that users provide when building their profiles and the components that make up the GRSK architecture. 3.1. The GRSK data 3.1.1. Taxonomy The GRSK relies on the use of a taxonomy to represent the user’s likes and the items to recommend (see Fig. 2). It has been designed to be generalist, i.e. independent of the current catalog of items to recommend. Therefore, the GRSK can work with any application domain provided that the data of the new domain are defined through a taxonomy representation. The entities in a taxonomy are arranged in a hierarchical structure connected through an is-a relationship in which the classification levels become more specific towards the bottom. In a GRSK taxonomy, entities represent the features (F) that are commonly managed in a tourism domain like Gothic Art, Museums, Religious Buildings, etc. as Fig. 2 shows. The leaf nodes of the taxonomy represent the items to recommend; they are categorized by the lowest-level or most specific feature in the hierarchy. The edges linking an item to a feature are associated a value to indicate the degree of interest of the item (activity in the tourism taxonomy) under the corresponding feature, i.e. as a member of the category denoted by the feature. An item can also be categorized by more than one feature in the taxonomy. For instance, in Fig. 2, the item Visit to Marques de Dos Aguas Palace is categorized with 80% of interest as Gothic Art and with 60% of interest as a Pottery Museum. Items are described by means of a list of tuples which represent all the incoming edges of a leaf node. A tuple is of the form (i,f,dif), where i is the item, f 2 F is a feature defined in the taxonomy such that there is an edge connecting f and i, and dif 2 [0,100] is the degree of interest of the item i under the feature f. Additionally, items are associated a numeric value VCi (visit counter) to represent how popular the item i is among users; this value indicates how many times the item i has been visited by the users when it was recommended. 3.1.2. Input information of the user profile The GRSK records a profile for each user that contains the user tastes and general likes as well as his historical interaction with the system. The input information on the personal data and general likes of the user is entered only on the first visit, i.e. when the user registers in the system for the first time. The information obtained during the interaction of the user with the system after the visit GRSK Subsystem Planning Subsystem Control Subsystem User Profile Reccomended Items Plan Recommended Items + Planning Information Recommended visits Agenda e-Tourism User Info Group of Users User Info User Info User Info Agenda Recommended visits Database Interface Subsystem Fig. 1. e-Tourism system. Taxonomy Science Religious Buildings Art Gothic Cathedral Visit to Valencia Cathedral 80 90 70 Visit to P . Felipe Museum Visit to Marques de Dos Aguas Palace 60 Modern Museum 90 Visit to Ivam Pottery 80 VC: 50 VC: 50 VC: 70 VC: 30 Fig. 2. GRSK taxonomy. I. Garcia et al. / Expert Systems with Applications 38 (2011) 7683–7692 7685
. Garcia et aL/ Expert Systems with Applications 38(2011)7683-7692 will be further used to better capture his her likes and update the query contains the users profiles and the maximum number of items the users want to be recommended The profile of a given user u stores th The result of the recommendation process is a list of recom mended items, or more specifically a list of activities to perform (1) Personal and demographic details like the age, the gender. in the city, which we will call RL. Ri is a set of tuples of the form he family or the countr RI=[(u/G, i, du/c)), where u G represents the user or the group of (2)The general-likes model of the user(GL )is a list of the fea- users, i is a recommended item, and du/g, 'is the estimated degree tures in the taxonomy which the user u is interested in along of interest of the user u or group G in the item L. After the visit, with the user ratings for those features. GL is represented users will individually rate the proposed activities or items. e-Tc by a list of tuples of the form GL =((uf r), where fe f, ism will use this feedback to increase the accuracy of the users pro- and rE [0, 100) is the rating given by the user u to the fea- file and thus make better estimations of the items that are likely to be of interest to the user in future visit (3)Information about the historical interaction of the user with the recommender system, namely the set of items the user 3.2. The GRSK architecture has been recommended and his degree of satisfaction with the recommended items. a rated item is described by the Fig 3 shows an sketch of the grSK architecture which is com- tuple(u, i, r), where u and i denote the user and the recom- posed of the following modules ended item, respectively, and rl E[0, 100) is the rating given by the user u to the item i(degree of satisfaction of The Engine module is the core of the GRSK. It is in charge of u with the item i). managing the recommendation query and of generating and updating the users profiles In case of a group of users, all the individuals must be previously The Single User/Group Manager controls the recommendation registered in the system. The GRSK will consider the profile of each process. This module receives the profiles created by the users user in the group to maintain a group profile and give the group and sends them one by one to the module that applies the basic recommendation For subsequent visits of the group, the grSK will Recommendation Techniques(see next paragraph). As a result nake up again the group profile so as to take into account the rat from this application, the manager receives a set of preferences ings of the users to past visits and thus work with a more accurate for each user. In our context, a preference is a feature in the tax onomy of likely interest to the user which is calculated by any of the basic recommendation techniques. If the user is a group. the er invokes the Group Preferences Manager to elicit 3.1.3. Information exchange during the recommendation process the group preferences out of the individual preferences. finally Each time a user or a group enters e-Tourism for a new visit, the it will call the Items Selector and the Hybrid Rs in order to system creates a recommendation query, a data structure which retrieve the list of items that best match the user/group represents the requested recommendation. A recommendation Demographic Items Selector Content-Based General Likes- Group Preferences Based Hybrid Technique Basic Recommendation Single User/Group Engin Recor dations Fig 3. GRSK architecture
will be further used to better capture his/her likes and update the profile. The profile of a given user u stores the following information: (1) Personal and demographic details like the age, the gender, the family or the country. (2) The general-likes model of the user (GLu ) is a list of the features in the taxonomy which the user u is interested in along with the user ratings for those features. GLu is represented by a list of tuples of the form GLu = {(u,f,r uf)}, where f 2 F, and r uf 2 [0,100] is the rating given by the user u to the feature f. (3) Information about the historical interaction of the user with the recommender system, namely the set of items the user has been recommended and his degree of satisfaction with the recommended items. A rated item is described by the tuple (u,i,r ui), where u and i denote the user and the recommended item, respectively, and r ui 2 [0,100] is the rating given by the user u to the item i (degree of satisfaction of u with the item i). In case of a group of users, all the individuals must be previously registered in the system. The GRSK will consider the profile of each user in the group to maintain a group profile and give the group recommendation. For subsequent visits of the group, the GRSK will make up again the group profile so as to take into account the ratings of the users to past visits and thus work with a more accurate group profile. 3.1.3. Information exchange during the recommendation process Each time a user or a group enters e-Tourism for a new visit, the system creates a recommendation query, a data structure which represents the requested recommendation. A recommendation query contains the users profiles and the maximum number of items the users want to be recommended. The result of the recommendation process is a list of recommended items, or more specifically a list of activities to perform in the city, which we will call RI. RI is a set of tuples of the form RI = {(u/G,i,du/G,i )}, where u/G represents the user or the group of users, i is a recommended item, and du/G, i is the estimated degree of interest of the user u or group G in the item i. After the visit, users will individually rate the proposed activities or items. e-Tourism will use this feedback to increase the accuracy of the users pro- file and thus make better estimations of the items that are likely to be of interest to the user in future visits. 3.2. The GRSK architecture Fig. 3 shows an sketch of the GRSK architecture, which is composed of the following modules: The Engine module is the core of the GRSK. It is in charge of managing the recommendation query and of generating and updating the users profiles. The Single User/Group Manager controls the recommendation process. This module receives the profiles created by the users and sends them one by one to the module that applies the Basic Recommendation Techniques (see next paragraph). As a result from this application, the manager receives a set of preferences for each user. In our context, a preference is a feature in the taxonomy of likely interest to the user which is calculated by any of the basic recommendation techniques. If the user is a group, the manager invokes the Group Preferences Manager to elicit the group preferences out of the individual preferences. Finally, it will call the Items Selector and the Hybrid RS in order to retrieve the list of items that best match the user/group preferences. Basic Recommendation Techniques Group Preferences Manager Demographic Hybrid Technique Single User/Group Manager Final Group Recommendations Mixed Recommendations Users Profiles Intersection Aggregation Users Preferences Group Preferences General LikesBased Content-Based User Preferences Engine Recommendation Query Ratings Hybrid RS User Profile Final Recommendations Recommendations Items Selector Preferences Recommendations Fig. 3. GRSK architecture. 7686 I. Garcia et al. / Expert Systems with Applications 38 (2011) 7683–7692
. Garcia et aL/ Expert Systems with Applications 38(2011)7683-7692 7687 User n daneralLikes-punAggr Step 2-GRemomaim Fig 4. Sketch of the analysis of the user profile. The Basic Recommendation Techniques(BRTs) module applies provided by the user u to the feature f at the time of creating the recommending techniques like demographic RS(Burke, 2007). general-likes model of his/ her profile(tuples of the form(u f, content-based RS(Burke, 2007 )and general likes-based filtering and thereby dur. or may be a value computed out of all of (Hanani, Shapira, Shoval, 2001)to elicit the preferences that the items described under the feature f, specifically from the inter embody the individual likes of each user. For a given user, each est-degree of the items under the feature f and the ratings of the of the three techniques technique creates a different list of pref- user to such items, ie computed from tuples(i f, d)and (u,i, r). erences according to the parameters and data handled by the It is important to note that, unlike most tourist RS, e-Tourism technique. Therefore, the three lists of user preferences are does not initially work with the items or activities that will be later independent of each other recommended to the user. In contrast, rather than using items, e- The Group Preferences Manager (GPM). This module is only Tourism makes use of the concept of feature to elicit the user pref- invoked when the user is a group, and it offers two mechanisms erence model, which is a more general and flexible entity. this such as aggregation and intersection to elicit the group prefer- makes the gRSK able to work with any application domain as long ences out of the individual preferences. Actually, the GPM gen- as the data can be represented through a taxonomy erates three lists- the group demographic preferences, the As Fig 4 shows, the first part of this eli group content-based preferences and the group filtering invoke the Basic Recommendation Techniques(BRTs)module. The application of the three recommendation techniques return each The Items Selector receives the three lists of preferences and, for a different list of individual preferences for a user. Therefore, after each list, it returns the set of items(activities)that better match this stage, we will have for each user three lists of individual pref- rences, namely a demographic, content-based and general-likes- The Hybrid Technique module gathers together the three lists of based list, which describe the usual tastes of the user. The three ems returned by the items Selector and creates a single list lists are then passed to the items Selector, which will select the items hat embodies the final user/group recommended items. Since that best match these preferences(see Fig 3) each BRT exhibits some advantages and disadvantages(Adom- In case of a group, prior to call the Items Selector, the sys avicius Tuzhilin, 2005), a common solution adopted by many will invoke the group preferences Manager which is the module in s is to combine various techniques into a hybrid RS(Burke, charge of eliciting the preferences of the whole group. Thus, the 2007: Pazzani, 1999), thus alleviating the limitations of one behavior of the Items Selector and the Hybrid RS is independent technique with the advantages of the others. The grSK applies from the fact that we are dealing with a single user or a group of a mixed hybrid recommendation technique that will be detailed users. 4. Analysis of the user profile 4. 1. Basic recommendation techniques The first step in the recommendation process is to analyze the As we said above, each recommendation technique generates profile and elicit the list of preferences for each user. When an independent list of preferences for each user and hence the lists working with a group of users, this elicitation mechanism is per- may contain different features or the same feature with different formed as many times as users in the group. degrees of interest. We will call these lists Pd for the demographic preference list, Pcb for the content-based preference list, and Pg for Definition 1. A preference is a tuple of the form(uf, dut)where u the general-likes-based preference list. denotes the user, f a feature in the taxonomy and duf e [0, 100)is the interest degree of the user u in the feature f. We opted for these techniques because we considered them more suitable for or a preference is a feature in the taxonomy with a interest-degree dation, which is the most widely used recommendation technique, because it of du for a user u selected by one of the three basic recommenda- presents some difficulties to be applied in this domain( Felfernig. Gordea, Jannach, tion techniques. The value d may be the rating value directly Teppan, Zanker, 2007)
The Basic Recommendation Techniques (BRTs) module applies recommending techniques like demographic RS (Burke, 2007), content-based RS (Burke, 2007) and general likes-based filtering (Hanani, Shapira, & Shoval, 2001) to elicit the preferences that embody the individual likes of each user. For a given user, each of the three techniques technique creates a different list of preferences according to the parameters and data handled by the technique. Therefore, the three lists of user preferences are independent of each other. The Group Preferences Manager (GPM). This module is only invoked when the user is a group, and it offers two mechanisms such as aggregation and intersection to elicit the group preferences out of the individual preferences. Actually, the GPM generates three lists - the group demographic preferences, the group content-based preferences and the group filtering preferences. The Items Selector receives the three lists of preferences and, for each list, it returns the set of items (activities) that better match the elements in the list. The Hybrid Technique module gathers together the three lists of items returned by the Items Selector and creates a single list that embodies the final user/group recommended items. Since each BRT exhibits some advantages and disadvantages (Adomavicius & Tuzhilin, 2005), a common solution adopted by many RS is to combine various techniques into a hybrid RS (Burke, 2007; Pazzani, 1999), thus alleviating the limitations of one technique with the advantages of the others. The GRSK applies a mixed hybrid recommendation technique that will be detailed in Section 5.2. 4. Analysis of the user profile The first step in the recommendation process is to analyze the user profile and elicit the list of preferences for each user. When working with a group of users, this elicitation mechanism is performed as many times as users in the group. Definition 1. A preference is a tuple of the form (u,f,duf) where u denotes the user, f a feature in the taxonomy and duf 2 [0,100] is the interest degree of the user u in the feature f. A preference is a feature in the taxonomy with a interest-degree of duf for a user u selected by one of the three basic recommendation techniques. The value duf may be the rating value directly provided by the user u to the feature f at the time of creating the general-likes model of his/her profile (tuples of the form (u,f,r uf), and thereby duf = r uf), or may be a value computed out of all of the items described under the feature f, specifically from the interest-degree of the items under the feature f and the ratings of the user to such items, i.e. computed from tuples (i,f,dif) and (u,i,r ui). It is important to note that, unlike most tourist RS, e-Tourism does not initially work with the items or activities that will be later recommended to the user. In contrast, rather than using items, eTourism makes use of the concept of feature to elicit the user preference model, which is a more general and flexible entity. This makes the GRSK able to work with any application domain as long as the data can be represented through a taxonomy. As Fig. 4 shows, the first part of this elicitation mechanism is to invoke the Basic Recommendation Techniques (BRTs) module. The application of the three recommendation techniques return each a different list of individual preferences for a user. Therefore, after this stage, we will have for each user three lists of individual preferences, namely a demographic, content-based and general-likesbased list,2 which describe the usual tastes of the user. The three lists are then passed to the Items Selector, which will select the items that best match these preferences (see Fig. 3). In case of a group, prior to call the Items Selector, the system will invoke the Group Preferences Manager which is the module in charge of eliciting the preferences of the whole group. Thus, the behavior of the Items Selector and the Hybrid RS is independent from the fact that we are dealing with a single user or a group of users. 4.1. Basic recommendation techniques As we said above, each recommendation technique generates an independent list of preferences for each user and hence the lists may contain different features or the same feature with different degrees of interest. We will call these lists Pu d for the demographic preference list, Pu cb for the content-based preference list, and Pu gl for the general-likes-based preference list. Fig. 4. Sketch of the analysis of the user profile. 2 We opted for these techniques because we considered them more suitable for our current domain (tourism and leisure). We do not use the collaborative recommendation, which is the most widely used recommendation technique, because it presents some difficulties to be applied in this domain (Felfernig, Gordea, Jannach, Teppan, & Zanker, 2007). I. Garcia et al. / Expert Systems with Applications 38 (2011) 7683–7692 7687
. Garcia et aL/ Expert Systems with Applications 38(2011)7683-7692 Preferences C: Cathedral User 1 G: Gothic User 2 (G,80),(SM5o MM: Modern Museum Intersection SM: Science museum Aggregation(G, 80), (SM, 50)(PM, 40), (MM, 65)I(C, 70) Fig. 5. Example of elicitation of the preferences of a group. The demographic Brt classifies the user u into a demographic to create a single set of preferences for each type of recommenda- category according to his profile details. For example, a person tion(Pa, Po, g). We denote by Pir the set of preferences corre- with children is classified into a different category than a retiree sponding to a particular BRT, where brt e(d, cb, gl) they will likely have different preferences We opted for a demo- PEr is the result of aggregating the preferences returned by the graphic Brt because it is a good alternative to solve the problem of corresponding Brt for at least one user in the group that is, a fea- the new user as it is always able to give a recommendation. In addi- ture f belongs to Pr if it belongs at least to one of the pbrrlistsThe tion, it can recommend items which contain characteristics differ- interest-degree of a group preference d is calculated as the aver- ent from other previously recommended items. age value'of the interest-degree of the users in G for the feature f. The content-based BRT computes a set of preferences by taking More formally into account the items that have been previously rated by the user Shisted al det traction) et e feature ndia it of items des pa(G d"): u f, d")e U Pamn(. where d"=avg(d") of the form( i.f. d f) for a particular feature f. Let rtu=((u,i, r"))be the set of items valued by a user u with respective ratings of r As the results presented in Section 6 will show, aggregating prefer a preference(u f. duf)is added to the list P where ences does not necessarily account for the preferences of the group as a whole 4. 2.2. Intersection gRT The intersection mechanism is introduced as a counterpoint of The value d denotes the interest-degree of a user u for the items the aggregation mechanism. This method finds the preferences described under the feature f amongst the whole set of items rate that are shared by all the members in the group and make up by u. The use of a content-based technique allows us to recommend the group preferences. More formally items similar to the ones already accepted by the user thus increas- useums. the system will tend recommending visits to other Pan( d"): (uf, d"e0) pen where d"=avg(dr) The general-likes-based BRT is an information filtering technique that works with the general-likes model specified by the user in his As the results presented in Section 6 will show, the advantage of profile(GL").In this case, the set of preferences Py is simply built as this mechanism is that all of the users in the group will be equally PM=GL: that is, the interest-degree of the preferences in Pg will satisfied with the resulting group profile. However, the risk of using be the ratings given by the user to that particular feature in his pro- intersection is that we might end up with an empty list of prefer file(du= ences if the group is rather heterogeneous. 4.2. Group Preferences Manager 4.2.3. Example of elicitation of group preferences Fig 5 shows an example of the elicitation of the preferences of a The elicitation of the group preferences is managed by the group by using aggregation and intersection. This example is based Group Preferences Manager(GPM)(Fig. 4). The GPM is fed with on the taxonomy in Fig. 2. The first three rows in the table show the three lists of individual preferences of each user and returns for each user. the lists of preferences computed by each BRT. The three lists of group preferences. The individual preferences of a intersection method obtains only one preference(Science Museum ser u are denoted by(Pd, Pcb, Pa). where a preference has the usual SM-)because it is the only feature shared by all the group mem- form of (u.f. duf). From these lists, the GPM returns Pa, the demo- bers. On the other hand, the aggregation mechanism creates one graphic group preference list, Pa, the content-based group prefer list per Brt with the individual preferences of all the users. For in- ence list, and PG. the general-likes group preference list. The GPM stance, the dd value associated to the feature Science Museum is makes use of two disjunctive methods to elicit the group prefer- computed as the average of the d values of all the group members ences: aggregation and intersection. These methods, detailed in for such a feature(user 1 (SM, 70), user 2(SM,50)and user 3 erences are combined 5. Calculation of the recommended items 4. 2. 1. Aggregation GRT The aggregation mechanism is a common techi The second step in the recommendation process is to call the been used in various group RS(see Section 1). Aggreg Items Selector to select, among all of the items in the taxonomy. the preferences, computed by the brt modules, of in the group to make up a single set of preferences s For the sake of simplicity, we compute the average but it could also be defined as cally, the individual preferences returned by each the maximum the median or the addition of the same set of values
The demographic BRT classifies the user u into a demographic category according to his profile details. For example, a person with children is classified into a different category than a retiree as they will likely have different preferences. We opted for a demographic BRT because it is a good alternative to solve the problem of the new user as it is always able to give a recommendation. In addition, it can recommend items which contain characteristics different from other previously recommended items. The content-based BRT computes a set of preferences by taking into account the items that have been previously rated by the user (historical interaction). Let f be a feature and I a list of items described under the feature f in the taxonomy; I will be a list of tuples of the form (i,f,dif) for a particular feature f. Let RTu = {(u,i,r ui)} be the set of items valued by a user u with respective ratings of r ui; a preference (u,f, duf) is added to the list Pu cb where: duf ¼ P 8i2I\RTu dif rui jRTu j The value duf denotes the interest-degree of a user u for the items described under the feature f amongst the whole set of items rated by u. The use of a content-based technique allows us to recommend items similar to the ones already accepted by the user thus increasing the user satisfaction. For example, if the user likes visiting museums, the system will tend recommending visits to other museums. The general-likes-based BRT is an information filtering technique that works with the general-likes model specified by the user in his profile (GLu ). In this case, the set of preferences Pu gl is simply built as Pu gl ¼ GLu ; that is, the interest-degree of the preferences in Pu gl will be the ratings given by the user to that particular feature in his pro- file (duf = r uf). 4.2. Group Preferences Manager The elicitation of the group preferences is managed by the Group Preferences Manager (GPM) (Fig. 4). The GPM is fed with the three lists of individual preferences of each user and returns three lists of group preferences. The individual preferences of a user u are denoted by ðPu d; Pu cb; Pu glÞ, where a preference has the usual form of (u,f,duf). From these lists, the GPM returns PG d , the demographic group preference list, PG cb, the content-based group preference list, and PG gl, the general-likes group preference list. The GPM makes use of two disjunctive methods to elicit the group preferences: aggregation and intersection. These methods, detailed in the following sections, differ on the way the lists of individual preferences are combined. 4.2.1. Aggregation GRT The aggregation mechanism is a common technique that has been used in various group RS (see Section 1). Aggregation gathers the preferences, computed by the BRT modules, of all members in the group to make up a single set of preferences. More specifi- cally, the individual preferences returned by each BRT are used to create a single set of preferences for each type of recommendation PG d ; PG cb; PG gl . We denote by PG brt the set of preferences corresponding to a particular BRT, where brt 2 {d, cb,gl}. PG brt is the result of aggregating the preferences returned by the corresponding BRT for at least one user in the group, that is, a feature f belongs to PG brt if it belongs at least to one of the Pu brt lists. The interest-degree of a group preference dGf is calculated as the average value3 of the interest-degree of the users in G for the feature f. More formally: PG brt ¼ ðG;f;dGfÞ: 9ðu;f;dufÞ 2 [ 8u2G Pu brt ( ); where dGf ¼ avg duf As the results presented in Section 6 will show, aggregating preferences does not necessarily account for the preferences of the group as a whole. 4.2.2. Intersection GRT The intersection mechanism is introduced as a counterpoint of the aggregation mechanism. This method finds the preferences that are shared by all the members in the group and make up the group preferences. More formally: PG brt ¼ ðG;f;dGfÞ: 9ðu;f;dufÞ 2 \ 8u2G Pu brt ( ); where dGf ¼ avg duf As the results presented in Section 6 will show, the advantage of this mechanism is that all of the users in the group will be equally satisfied with the resulting group profile. However, the risk of using intersection is that we might end up with an empty list of preferences if the group is rather heterogeneous. 4.2.3. Example of elicitation of group preferences Fig. 5 shows an example of the elicitation of the preferences of a group by using aggregation and intersection. This example is based on the taxonomy in Fig. 2. The first three rows in the table show, for each user, the lists of preferences computed by each BRT. The intersection method obtains only one preference (Science Museum -SM-) because it is the only feature shared by all the group members. On the other hand, the aggregation mechanism creates one list per BRT with the individual preferences of all the users. For instance, the dGf value associated to the feature Science Museum is computed as the average of the duf values of all the group members for such a feature (user 1 (SM, 70), user 2 (SM, 50) and user 3 (SM, 30)). 5. Calculation of the recommended items The second step in the recommendation process is to call the Items Selector to select, among all of the items in the taxonomy, Fig. 5. Example of elicitation of the preferences of a group. 3 For the sake of simplicity, we compute the average, but it could also be defined as the maximum, the median or the addition of the same set of values. 7688 I. Garcia et al. / Expert Systems with Applications 38 (2011) 7683–7692
. Garcia et aL/ Expert Systems with Applications 38(2011)7683-7692 7689 Step 1 Fig. 6. Sketch of the computation of the recommended items. GL SM Aggregation(G, 80), (SM, 50)(PM, 40), (MM, 6 G: Gothic Items recommended PM: Pottery Museum Items Aggregation MM: Modern Museum PFelipe Museum 190 Valencia Cathedral SM: Science museum P Felipe Museum Fig. 7. Example of the calculation of the items to recommend. those ones that best match the preferences of the lists Pa Pa and The outcome of the items selector is a set of three lists of ranked Pgr Regardless the recommendation is for a single user or for a items, one list per BRT group the outcome of the user profile analysis is a set of three lists f preferences, one per BRT. This information feeds the Items Selector, 5.2. Hybrid technique which retrieves the items that match the preferences in the lists Pa, Pc and pg. Afterwards, the Hybrid Technique will apply a mixed The three lists of recommended items computed by the Items hybrid recommendation( Burke, 2007)in order to obtain a single list Selector are then processed by the Hybrid Technique, which ap- of ranked recommendations. Fig. 6 sketches the process for calculat- plies a mixed hybrid recommendation(Burke, 2007)and returns ng the recommended items a single list of ranked items(Rr). By handling these lists of items The result of this step is, therefore, a list of ranked items that we independently, we give much more flexibility to the GRSK, because will denote as Rr=((G, i, da). where G is the group, i is the item, any other hybrid technique can be used by simply replacing one and da is the interest-degree of the item i for the group G. Sec- component by another the value dd of a tuple in rr is calculate tion 5. 1 explains how to select the items i, and Section 5.2 is de- as follows: oted to the calculation of the value dGa 5.1. Items selector where percentile(vc)refers to the percentile of the visit counter of (vC)with respect to the whole set of items visited by the users. The The method for selecting an item is quite simple: an item i rep- second part of the formula considers the average interest-degree of resented by the tuple(i f d')matches a preference in Pa if there is all the features that describe the item i in both the taxonomy(d') tuple( G.f. d f) in Port such that the item has not previously rated and in the group preferences(d). formed yet such an activity in the city. Formally, these two condi The Hybrid Technique computes all of the items that mat be expressed as fol group preferences and retrieves the best ranked elements ing the group has solicited N recommendations, the hybrid (1)a(i f,d)e taxonomy A(G /. d)e Pbrt ems an of the form(G, i, d)in RI for each of these N best items. (2)声(ur)∈RTwu∈G 5.3. of recommendation For the sake of simplicity, in the following sections, we assume that if we are inue here with the example introduced in Section 4.2.3. dealing with a single user u, then we have a group with only one member: G=u Fig. 7 shows that, when using intersection, the system will only
those ones that best match the preferences of the lists PG d ; PG cb and PG gl. Regardless the recommendation is for a single user or for a group4 , the outcome of the user profile analysis is a set of three lists of preferences, one per BRT. This information feeds the Items Selector, which retrieves the items that match the preferences in the lists PG d ; PG cb and PG gl. Afterwards, the Hybrid Technique will apply a mixed hybrid recommendation (Burke, 2007) in order to obtain a single list of ranked recommendations. Fig. 6 sketches the process for calculating the recommended items. The result of this step is, therefore, a list of ranked items that we will denote as RIG = {(G,i,dGi)}, where G is the group, i is the item, and dGi is the interest-degree of the item i for the group G. Section 5.1 explains how to select the items i, and Section 5.2 is devoted to the calculation of the value dGi. 5.1. Items Selector The method for selecting an item is quite simple: an item i represented by the tuple (i,f,dif) matches a preference in PG brt if there is a tuple (G,f,dGf) in PG brt such that the item has not previously rated by any user in the group, i.e. none of the group members have performed yet such an activity in the city. Formally, these two conditions can be expressed as follows: (1) 9 i; f; dif 2 taxonomy ^ 9 G; f; dGf 2 PG brt (2) 9= u; i;rui 2 RTu "u 2 G The outcome of the Items Selector is a set of three lists of ranked items, one list per BRT. 5.2. Hybrid technique The three lists of recommended items computed by the Items Selector are then processed by the Hybrid Technique, which applies a mixed hybrid recommendation (Burke, 2007) and returns a single list of ranked items (RIG ). By handling these lists of items independently, we give much more flexibility to the GRSK, because any other hybrid technique can be used by simply replacing one component by another. The value dGi of a tuple in RIG is calculated as follows: dGi ¼ percentileðVCi Þ þ avg8f dif þ dGf where percentile(VCi ) refers to the percentile of the visit counter of i (VCi ) with respect to the whole set of items visited by the users. The second part of the formula considers the average interest-degree of all the features that describe the item i in both the taxonomy (dif) and in the group preferences (dGf). The Hybrid Technique computes all of the items that match the group preferences and retrieves the best ranked elements. Assuming the group has solicited N recommendations, the hybrid technique will select the N best ranked items and will insert a tuple of the form (G,i,dGi) in RIG for each of these N best items. 5.3. Example of recommendation We continue here with the example introduced in Section 4.2.3. Fig. 7 shows that, when using intersection, the system will only Fig. 6. Sketch of the computation of the recommended items. Fig. 7. Example of the calculation of the items to recommend. 4 For the sake of simplicity, in the following sections, we assume that if we are dealing with a single user u, then we have a group with only one member: G = {u}. I. Garcia et al. / Expert Systems with Applications 38 (2011) 7683–7692 7689
. Garcia et aL/ Expert Systems with Applications 38(2011)7683-7692 recommend items described under the feature Science Museum: in of retrieved items was the same in both experiments, but, in the the taxonomy of Fig. 2, only one item is associated to this fed- first case only the first 10 items were considered whereas in the ture, Visit to Prince Felipe Museum. Assuming that percentile(vC rince second case we considered the first 25 items Regarding the second Fenpe Museum ) is 70, the estimated degree of interest of this item is parameter, we took into account four levels of historical informa- 70 and d=50): dgrince Felipe Museu- tion in the user profile; a new user(H=0) and user profiles that 70+avg(70+50)=190. On the other hand, when using aggre- store 25%(H-25), 50%(H= 50)and 75%(H-75)of(randomly gation, all of the items will be recommended, and the order of the selected) past visits, respectively. Figs. 8 and 9 show the F-value final recommendations will depend on the degree of interest of obtained for the 10 test users(X axis) when Ns= 10 and Ns= 25. each item. For example in this case the estimated interest-degree respectively. In Fig 8(NS=10). when dealing with a new user(H=O), we can (80+80,90+70)=210: this item is described under the conclude that the quality of the recommendations measured by the res Gothic Art and Cathedral with d' values of 80 and 90, F-value is neither good nor bad. As expected, when the information ctively. Assuming the group has solicited three items, the provided to the system increases(H=25, H= 50), the GrSK im best ranked items are recommended(valencia Cathedral, proves the quality of the recommendations. However, in some of rince Felipe Museum and IVAM Museum). Note that the IvaM the cases in which the user feedback is rather high(H=75 Museum is recommended although only one of the users has quality of the recommendation given by the F-value worsens Moden Museum among his /her preferences. is because the database does not contain a large number of and, therefore, the GRSK is not able to recommend places other 6. Experimental results than those ones already visited by the user. In Fig. 9(Ns=25 ). the general impression is quite similar. In this section, we detail the experiments we carried out to val- However, in this case, the F-values are better because, although idate our approach both for a single user( Section 6. 1)and for a the precision is a bit lower, the recall increases in a higher order group of users( Section 6.2). Here again, the more feedback, the better the quality of the recom- Due to the fact that we are working with our own domain, our mendation, and, unlike the previous case, the worsening in the first task was to obtain data from real users We prepared a ques- case of H-75 is not as noticeable tionnaire with questions about general preferences, demographic Fig. 10 shows a comparison between the average of precision data, visited places and the degree of satisfaction of the realized (P)and recall (R)for the four the different cases of user feedback. visits. The questionnaire was filled in by 60 people, and this infor- When Ns-10, the difference between the precision and the recall mation was used to create 60 users in our database. 50 out of the is remarkable, and the precision decreases as the recall increases, O users were used to train the system and the remaining 10 users as expected. However, when Ns= 25, this difference is not were used as test users noticeable. In both cases, the more feedback, the higher the F-value in average, except when Ns=10 and H=75, for the same reason 6. 1. Single user recommendation results explained above. In order to test the grSK for a single user, we selected two clas- sical Information Retrieval metrics: precision and recall. In an Infor Ns=10 mation Retrieval scenario, precision is defined as the number of retrieved relevant items divided by the total number of items re- trieved by the search; and recall is defined as the number of re- trieved relevant items divided by the total number of existing p400 FH=O relevant items. That is, precision represents the probability that a retrieved item is relevant to the user, and recall is the probability that a relevant item is retrieved 0.200 Specifically, we call Ns the number of retrieved items by the F H=75 GRSK, that is, the number of recommendations solicited by the user/group. The number of relevant items is denoted by Nr. We 0000 consider as relevant items those places that the test users have tionnaire. Finally, Nrs is the number of relevant items retrieved in Fig 8. Comparison of the F value obtained for 10 users when Ns= 10 and for the the recommendation, that is, Nrs= Nrn Ns. Then, precision and re four degrees of historical information. lI are calculated as follows Ns=25 Often, there is an inverse relationship between P and r, where it is possible to increase one at the cost of reducing the other. For exam- ple, R can be increased by increasing Ns, at the cost of increasing the number of irrelevant items retrieved and thus decreasing P. For this FH=25 reason, P and r ratios are not discussed in isolation. Instead, both 0.300 F,H=50 are usually combined into a single measure, such as the F-measure: 0.200 FH=75 P+R We ran our experiments in terms of two parameters, Ns, the num- ber of retrieved items, and the information about past visits in the Fig 9. Comparison of the F value obtained for 10 users when Ns =25 and for the user profile. As for Ns, we ran tests with Ns= 10 and Ns= 25. The list four degrees of historical information
recommend items described under the feature Science Museum; in the taxonomy of Fig. 2, only one item is associated to this feature, Visit to Prince Felipe Museum. Assuming that percentile(VCPrince Felipe Museum) is 70, the estimated degree of interest of this item is computed as (dif = 70 and dGf = 50): dG,Prince Felipe Museum = 70 + avg(70 + 50) = 190. On the other hand, when using aggregation, all of the items will be recommended, and the order of the final recommendations will depend on the degree of interest of each item. For example, in this case, the estimated interest-degree of Visit to Valencia Cathedral is computed as: dG,Valencia Cathedral = 50 + avg(80 + 80, 90 + 70) = 210; this item is described under the features Gothic Art and Cathedral with dif values of 80 and 90, respectively. Assuming the group has solicited three items, the three best ranked items are recommended (Valencia Cathedral, Prince Felipe Museum and IVAM Museum). Note that the IVAM Museum is recommended although only one of the users has Modern Museum among his/her preferences. 6. Experimental results In this section, we detail the experiments we carried out to validate our approach both for a single user (Section 6.1) and for a group of users (Section 6.2). Due to the fact that we are working with our own domain, our first task was to obtain data from real users. We prepared a questionnaire with questions about general preferences, demographic data, visited places and the degree of satisfaction of the realized visits. The questionnaire was filled in by 60 people, and this information was used to create 60 users in our database; 50 out of the 60 users were used to train the system and the remaining 10 users were used as test users. 6.1. Single user recommendation results In order to test the GRSK for a single user, we selected two classical Information Retrieval metrics: precision and recall. In an Information Retrieval scenario, precision is defined as the number of retrieved relevant items divided by the total number of items retrieved by the search; and recall is defined as the number of retrieved relevant items divided by the total number of existing relevant items. That is, precision represents the probability that a retrieved item is relevant to the user, and recall is the probability that a relevant item is retrieved by the search. Specifically, we call Ns the number of retrieved items by the GRSK, that is, the number of recommendations solicited by the user/group. The number of relevant items is denoted by Nr. We consider as relevant items those places that the test users have marked as visited with a positive degree of satisfaction in the questionnaire. Finally, Nrs is the number of relevant items retrieved in the recommendation, that is, Nrs = Nr \ Ns. Then, precision and recall are calculated as follows: P ¼ Nrs Ns R ¼ Nrs Nr Often, there is an inverse relationship between P and R, where it is possible to increase one at the cost of reducing the other. For example, R can be increased by increasing Ns, at the cost of increasing the number of irrelevant items retrieved and thus decreasing P. For this reason, P and R ratios are not discussed in isolation. Instead, both are usually combined into a single measure, such as the F-measure: F ¼ 2 P R P þ R We ran our experiments in terms of two parameters, Ns, the number of retrieved items, and the information about past visits in the user profile. As for Ns, we ran tests with Ns = 10 and Ns = 25. The list of retrieved items was the same in both experiments, but, in the first case only the first 10 items were considered whereas in the second case we considered the first 25 items. Regarding the second parameter, we took into account four levels of historical information in the user profile; a new user (H = 0) and user profiles that store 25% (H = 25), 50% (H = 50) and 75% (H = 75) of (randomly selected) past visits, respectively. Figs. 8 and 9 show the F value obtained for the 10 test users (X axis) when Ns = 10 and Ns = 25, respectively. In Fig. 8 (Ns = 10), when dealing with a new user (H = 0), we can conclude that the quality of the recommendations measured by the F-value is neither good nor bad. As expected, when the information provided to the system increases (H = 25, H = 50), the GRSK improves the quality of the recommendations. However, in some of the cases in which the user feedback is rather high (H = 75), the quality of the recommendation given by the F-value worsens. This is because the database does not contain a large number of items and, therefore, the GRSK is not able to recommend places other than those ones already visited by the user. In Fig. 9 (Ns = 25), the general impression is quite similar. However, in this case, the F-values are better because, although the precision is a bit lower, the recall increases in a higher order. Here again, the more feedback, the better the quality of the recommendation, and, unlike the previous case, the worsening in the case of H = 75 is not as noticeable. Fig. 10 shows a comparison between the average of precision (P) and recall (R) for the four the different cases of user feedback. When Ns = 10, the difference between the precision and the recall is remarkable, and the precision decreases as the recall increases, as expected. However, when Ns = 25, this difference is not so noticeable. In both cases, the more feedback, the higher the F-value in average, except when Ns = 10 and H = 75, for the same reason as explained above. Fig. 8. Comparison of the F value obtained for 10 users when Ns = 10 and for the four degrees of historical information. Fig. 9. Comparison of the F value obtained for 10 users when Ns = 25 and for the four degrees of historical information. 7690 I. Garcia et al. / Expert Systems with Applications 38 (2011) 7683–7692
. Garcia et aL/ Expert Systems with Applications 38(2011)7683-7692 If the value d is unknown for a certain item i. then it means the tem has not been recommended to the user and thereby d is set equal to 0. Given a recommendation RI for a group G such that u G, the utility of such a recommendation for a user u is calculated U R Ns=25 -FNs=10 This value gives a measure of the precision of the group recommen FNs=25 dation for each user in the group In order to analyze the quality of the recommendations, we consider the average and the standard deviation(dispersion)on the utility over all the group members Fig. 10. Comparison of the P, r and f values obtained when Ns= 10 and Ns=25 and We performed experiments with aggregation(Aggr)and inter- for the four degrees of historical information section(Int) by using groups of different size ranging from 2 to 6 members; the number of requested recommendations or retrieved In summary, the more feedback, i.e. the GRSK has more knowl- items(Ns)was set to 10 in all cases. We also ran the experiments dge about the past visits of the users, the better the quality of the with four levels of feedback or historical information, from 0% to recommendation. However, when a certain level of feedback is 75%. Fig. 11 shows the results obtained for H=0 and H= 25, and reached, a very large number of rated items may worsen the rec- Fig. 12 shows the results obtained for H= 50 and H=75 Bars rep- mmendation quality due to the lack of new items to recommend. resent the utility in average of the recommendations for each group size (2, 3, 4, 5 and 6 members)and elicitation mechanism. Likewise, the points in the lines determine the dispersion level in 6.2. Group recommendation results average for each group size and elicitation mechanism In all the experiments, it can be observed that the utility in Unlike individual recommendations, when dealing with groups, average is better with the intersection mechanism for all group the most important issue is to obtain recommendations as satisfac- sizes and levels of feedback. Also, the dispersion on the utility is tory as possible for all the group members. Through the exper lower when using intersection. The reason behind is that the inter nental setup presented in this section, we intend to analyze section considers the preferences that satisfy a larger number of which of the two mechanisms between aggregation or intersection users, whereas the aggregation recommends the most prioritized returns the best recommendations from the perspective of the sat- items for at least one member in the group, which obviously does isfaction of the whole group. not imply to be for all the group members. therefore, we can affirm Let rI be the recommendation for a single user u, such that that the utility or degree of satisfaction with the recommendations each element in RI has the form (u,i, du), where i is the recom- obtained by the intersection mechanism is higher than with mended item(ie Dand d is the estimated degree of interest of the solutions of the aggregation mechanism. In addition, the the item i for user u ntersection recommendations have also a lower degree of disper H=0 H=25 40 20 80000 Number of group members(from 2 to 6) Number of group members(from 2 to 6) Aggr. Avg Int Avg Aggr Std Dev. ---Int Std Dev r Avg Int Avg - Aggr Std Dev. --int Std Dev Fig. 11. Comparison of the quality of the recommendations(Aggr and Int)-H=0 and H =25. H=50 H=75 08000 Number of group members(from 2 to 6) Number of group members(from 2 to 6) Fig. 12. Comparison of the quality of the recommendations(Aggr and Int)-H=50 and H=75
In summary, the more feedback, i.e. the GRSK has more knowledge about the past visits of the users, the better the quality of the recommendation. However, when a certain level of feedback is reached, a very large number of rated items may worsen the recommendation quality due to the lack of new items to recommend. 6.2. Group recommendation results Unlike individual recommendations, when dealing with groups, the most important issue is to obtain recommendations as satisfactory as possible for all the group members. Through the experimental setup presented in this section, we intend to analyze which of the two mechanisms between aggregation or intersection returns the best recommendations from the perspective of the satisfaction of the whole group. Let RIu be the recommendation for a single user u, such that each element in RIu has the form (u,i,dui), where i is the recommended item (i 2 I) and dui is the estimated degree of interest of the item i for user u. If the value dui is unknown for a certain item i, then it means the item has not been recommended to the user and thereby dui is set equal to 0. Given a recommendation RIG for a group G such that u 2 G,the utility of such a recommendation for a user u is calculated as follows: UG u ¼ P 8i2RIG dui Ns This value gives a measure of the precision of the group recommendation for each user in the group. In order to analyze the quality of the recommendations, we consider the average and the standard deviation (dispersion) on the utility over all the group members: lGðUG u Þ and rGðUG u Þ; 8u 2 G. We performed experiments with aggregation (Aggr) and intersection (Int) by using groups of different size ranging from 2 to 6 members; the number of requested recommendations or retrieved items (Ns) was set to 10 in all cases. We also ran the experiments with four levels of feedback or historical information, from 0% to 75%. Fig. 11 shows the results obtained for H = 0 and H = 25, and Fig. 12 shows the results obtained for H = 50 and H = 75. Bars represent the utility in average of the recommendations for each group size (2,3,4,5 and 6 members) and elicitation mechanism. Likewise, the points in the lines determine the dispersion level in average for each group size and elicitation mechanism. In all the experiments, it can be observed that the utility in average is better with the intersection mechanism for all group sizes and levels of feedback. Also, the dispersion on the utility is lower when using intersection. The reason behind is that the intersection considers the preferences that satisfy a larger number of users, whereas the aggregation recommends the most prioritized items for at least one member in the group, which obviously does not imply to be for all the group members. Therefore, we can affirm that the utility or degree of satisfaction with the recommendations obtained by the intersection mechanism is higher than with the solutions of the aggregation mechanism. In addition, the intersection recommendations have also a lower degree of disperFig. 10. Comparison of the P, R and F values obtained when Ns = 10 and Ns = 25 and for the four degrees of historical information. Fig. 11. Comparison of the quality of the recommendations (Aggr and Int) – H = 0 and H = 25. Fig. 12. Comparison of the quality of the recommendations (Aggr and Int) – H = 50 and H = 75. I. Garcia et al. / Expert Systems with Applications 38 (2011) 7683–7692 7691
. Garcia et aL/ Expert Systems with Applications 38(2011)7683-7692 sion, which is interpreted as all the group members are equally References On the other hand, as the number of members in the group in- Adomavicius, G& Tuzhilin, A( creases, the utility in average usually decreases for both intersec stems:A survey of the tion and aggregation. Clearly, it is more difficult to find satisfying Ardissono, L, Goy group recommendations for large groups. As for the user feedback. ns sso, P.(2003). Intrigue we can conclude that the best results are obtained for h= 25: in devices Applied Al, 17(8-9). ssue on Artificial intelligen g:madm2m的中 increases. it becomes difficult to find items that have not n, R (2002). Knowledge bases and user profiling in travel and been previously visited by any user in the group. leminger y recommender systems. In Procee可 the Enter Conference A, Gordea, S. Jannach, D, Teppan, E, Zanker, M. (2007). A short survey 7. Conclusions and further work of recommendation technologies in travel and tourism. OEGAl Journal 25(7). Fesenmaier, D. R Ricci, F Schaumlechner, E, Wober, K,& Zanella, C.(2003 e-Tourism is a web-based service to make recommendations multiple decision styles. In about personalized tourist tours in the city of Valencia(Spain)for single user or a group of users. The component in charge of the Fink, J& Kobsa, A.(2002) User modeling for personalized cit Artificial recommendation process is the GRSK, a taxonomy-driven domain- Garcia, L, Sebastia, L,& Onaindia, E.(2009). A negotiation dependent recommendation kernel. Single user recommenda- tions are computed according to the user preferences by using a Hanani, U, Shapira, B. Shoval, P (2001) Information filtering: Overview of issues nendation techniques: demographic, content-based and general Jameson, A(20001 ms User modeling and user-a hybrid recommendation technique that mixes three basic recom- ore than the sum likes filtering Group preferences are elicited out of the individual ommender systems In Proceedings of the international working conferenc preferences through the application of the intersection and aggrega- Jameson, A Baldes. S,& Kleinbauer. T(2003). Enhancing mutual awareness in tion mechanisms. Finally, the list of elicited preferences yield to a st of items to recommend. The evaluation of this process shows Jameson, A, Baldes, S, Kleinbauer, T(2004) Two methods for enhancing mutual that the intersection mechanism obtains better results because it GRSK has been designed as a Generalist Recommender System Camby conference .o,. smyth B&, Salam. M(2006) Social interaction in the brings together the preferences of all the group members. Kernel. This allows us to easily add new basic, hybrid or group rec- er In Workshop on the social navigation and community ommendation techniques, thus providing the system a great demographic hitering. arific ice Review. 13. 393-408 Finally, we are also working in the use of agreement techniques recommender system. In Proceedings of the ah 2002 workshop on tempt achieving a reconciled solution for the whole group maxi- Rici 4 002) Travel re personalization in ecommerce to obtain group recommendations (Garcia, Sebastia, Onaindia 2009). The members of the group are modeled as agents who at- RCcL F mender systems. IEEE Intelligent Systems, 55-57. venturini, A.(2002).Itr: ravel advisory system. In proceedings of the 6th european conference on mizing the user satisfaction. The inclusion of this technique will allow us to account for more sophisticated user behaviors into dvances in case-based reasoning Lecture notes in computer science (VoL. the group Ricci F. Cavada, D, Nguyen, Q. N (2002) Integrating travel planning Acknowledgements rcia, L, Onaindia, E,& Guzman, C.(2009). e-Tourism: A tourist mendation and planning application. International Journal on Artificial Partial support provided by Consolider Ingenio 2010 CSD2007- Venturini, A&Ricci, F (2006). Applying trip@dvice recommendation technology to 00022, Spanish Government Project MICINN TIN2008-06701-C03- Werthner,, H(2003). Inteligent systems in travel and tourism. In Proceeding of the 01 and Valencian Government Project Prometeo 2008 /051 18th international joint conference on artificial intelligence ICAL
sion, which is interpreted as all the group members are equally satisfied. On the other hand, as the number of members in the group increases, the utility in average usually decreases for both intersection and aggregation. Clearly, it is more difficult to find satisfying group recommendations for large groups. As for the user feedback, we can conclude that the best results are obtained for H = 25; in the rest of cases, we obtain lower utility values that are quite similar among them. This occurs because, as the number of rated items increases, it becomes more difficult to find items that have not been previously visited by any user in the group. 7. Conclusions and further work e-Tourism is a web-based service to make recommendations about personalized tourist tours in the city of Valencia (Spain) for a single user or a group of users. The component in charge of the recommendation process is the GRSK, a taxonomy-driven domainindependent recommendation kernel. Single user recommendations are computed according to the user preferences by using a hybrid recommendation technique that mixes three basic recommendation techniques: demographic, content-based and general likes filtering. Group preferences are elicited out of the individual preferences through the application of the intersection and aggregation mechanisms. Finally, the list of elicited preferences yield to a list of items to recommend. The evaluation of this process shows that the intersection mechanism obtains better results because it brings together the preferences of all the group members. GRSK has been designed as a Generalist Recommender System Kernel. This allows us to easily add new basic, hybrid or group recommendation techniques, thus providing the system a great flexibility. Finally, we are also working in the use of agreement techniques to obtain group recommendations (Garcia, Sebastia, & Onaindia, 2009). The members of the group are modeled as agents who attempt achieving a reconciled solution for the whole group maximizing the user satisfaction. The inclusion of this technique will allow us to account for more sophisticated user behaviors into the group. Acknowledgements Partial support provided by Consolider Ingenio 2010 CSD2007– 00022, Spanish Government Project MICINN TIN2008–06701-C03– 01 and Valencian Government Project Prometeo 2008/051. References Adomavicius, G., & Tuzhilin, A. (2005). Toward the next generation of recommender systems: A survey of the state-of-the-art and possible extensions. IEEE Transactions on Knowledge and Data Engineering, 17(6), 734–749. Ardissono, L., Goy, A., Petrone, G., Segnan, M., & Torasso, P. (2003). Intrigue: Personalized recommendation of tourist attractions for desktop and handset devices. Applied AI, 17(8–9), 687–714 [Special issue on Artificial intelligence for cultural heritage and digital libraries]. Burke, R. (2007). The adaptive web. In Hybrid web recommender systems (pp. 377–408). Berlin/ Heidelberg: Springer. Delgado, J., & Davidson, R. (2002). Knowledge bases and user profiling in travel and hospitality recommender systems. In Proceedings of the Enter Conference. Springer Verlag. Felfernig, A., Gordea, S., Jannach, D., Teppan, E., & Zanker, M. (2007). A short survey of recommendation technologies in travel and tourism. OEGAI Journal, 25(7), 17–22. Fesenmaier, D. R., Ricci, F., Schaumlechner, E., Wober, K., & Zanella, C. (2003). Dietorecs: Travel advisory for multiple decision styles. In information and communication technologies in tourism. Fink, J., & Kobsa, A. (2002). User modeling for personalized city tours. Artificial Intelligence Review, 18(1), 33–74. Garcia, I., Sebastia, L., & Onaindia, E. (2009). A negotiation approach for group recommendation. In The international conference on artificial intelligence (IC-AI). Hanani, U., Shapira, B., & Shoval, P. (2001). Information filtering: Overview of issues, research and systems. User modeling and user-adapted interaction 11. Jameson, A. (2004). More than the sum of its members: Challenges for group recommender systems. In Proceedings of the international working conference on advanced visual interfaces. Jameson, A., Baldes, S., & Kleinbauer, T. (2003). Enhancing mutual awareness in group recommender systems. In Mobasher, B., Sarabjot, E., Anand, S. (Eds.), Proceedings of the IJCAI. Jameson, A., Baldes, S., & Kleinbauer, T. (2004). Two methods for enhancing mutual awareness in a group recommender system. In Proceedings of the international working conference on advanced visual interfaces. McCarthy, K., McGinty, L., Smyth, B., & Salam, M. (2006). Social interaction in the cats group recommender. In Workshop on the social navigation and community based adaptation technologies. Pazzani, M. J. (1999). A framework for collaborative, content-based and demographic filtering. Artificial Intelligence Review, 13, 393–408. Plua, C. & Jameson, A. (2002). Collaborative preference elicitation in a group travel recommender system. In Proceedings of the ah 2002 workshop on recommendation and personalization in ecommerce. Ricci, F. (2002). Travel recommender systems. IEEE Intelligent Systems, 55–57. Ricci, F., Arslan, B., Mirzadeh, N., & Venturini, A. (2002). Itr: A case-based travel advisory system. In Proceedings of the 6th european conference on advances in case-based reasoning. Lecture notes in computer science (Vol. 2416). Ricci F., Cavada, D., & Nguyen, Q. N. (2002). Integrating travel planning and on-tour support in a case-based recommender system. In Proceedings of the workshop on mobile tourism systems (in conjunction with mobile HCI’02). Sebastia, L., Garcia, I., Onaindia, E., & Guzman, C. (2009). e-Tourism: A tourist recommendation and planning application. International Journal on Artificial Intelligence Tools (IJAIT), 18(5), 717–738. Venturini, A. & Ricci, F. (2006). Applying trip@dvice recommendation technology to www.visiteurope.com. In ECAI. Werthner, H. (2003). Intelligent systems in travel and tourism. In Proceeding of the 18th international joint conference on artificial intelligence IJCAI. 7692 I. Garcia et al. / Expert Systems with Applications 38 (2011) 7683–7692