# A Novel Hybrid Recommender System for the Tourism Domain
## 3 Content-Based Recommender Component  
In this section we describe the content-based (CB) component of our Hybrid RS. As mentioned in the introduction, this component makes use of two main sub-components: (i) a _hierarchy_ similarity measure-based sub-component and (ii) a hybrid similarity measure-based component which takes as input the output of the aforementioned sub-component and employs a novel non-hierarchy similarity measure (specifically, _WEJS_, the _Weighted Extended Jaccard Similarity_). We hereby refer to the former sub-component as the _Hierarchy Similarity Measure-based Recommendations_ (_Hierarchy SMbR_) algorithm, and to the latter as the _Hybrid Similarity Measure-based Recommendations_ (_Hybrid SMbR_) algorithm.  
The _Hierarchy SMbR_ calculates the most similar POIs with respect to the user preferences via a well-established hierarchy tree structure. The _Hybrid SMbR_ makes use of the aforementioned hierarchy similarity measure and the _WEJS_--which takes into account both the POIs' features (i.e., _content_ of POIs) and the user preferences, as we explain in detail later in this section. Our _CB Recommender_ constitutes an algorithmic engine combining the _Hierarchy_ and _Hybrid_ SMbRs along with two preference elicitation-related parts: (i) the _Show Generic Images_; (ii) the _Build User Profile_, as illustrated in Figure 3. The _POIs Database_ stores and also provides all the essential information for the proper operation of our proposed algorithmic engine. The connection of the three components of our implementation with the database is depicted with orange arrows in Figure 3, each of which inserts different input data to the sub-components, as required for their operation.  
Now, the construction of the _user profile_ is implemented by the combination of the _Show Generic Images_ part of the engine that takes as input 90 _generic images_ retrieved from the database, and the _Build User Profile_ part. In order for the _Hierarchy SMbR_ algorithm to work properly, it is important to have an appropriate hierarchy of POIs. To this end, we have constructed a hierarchy of POIs for our application domain, the resort town of Agios Nikolaos, in close collaboration with local stakeholders (e.g., the municipality authorities). A snapshot of the constructed tree hierarchy, containing some of the POIs' categories we identified, is shown in Figure 4. Our complete hierarchy tree can be found in Appendix A. In our hierarchy, the POIs are inserted in the last layer of the tree structure as leaves, under a layer containing the ninety (90) different POI categories included in the hierarchy. We included 430 POIs in our hierarchy, located in Agios Nikolaos and its vicinity.  
The POIs' database stores our hierarchy and, of course, POIs, and specifies 56 features (each one with a distinct value) for all 430 POIs. The POI's _character_ is represented by the first 12 features, with values ranging from 1 to 10, reflecting the extent to which each feature characterizes the POI in question. These 12 \"POI character\" features were identified as such given the findings of a survey we conducted among real tourists visiting Agios Nikolaos in order to collect data on the preferences of tourists visiting the city. In Appendix B we include the questionnaire we compiled and used in the aforementioned survey. For instance, the POI's _character_ could be a combination of cultural and leisure features, e.g., a monastery that offers wine to its visitors. The other 44 features represent the _characteristics_ of a POI (e.g., the amenities a POI may offer). In contrast to the _Hierarchy SMbR_ which only requires the POIs hierarchy in order to function, the _Hybrid SMbR_ exploits all such features of all POIs stored in our database, along with the _user profile vector_. We now proceed to describe all the main parts of the _CB Recommender_ algorithmic engine in detail.