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