Next Article in Journal
Application of Random Forest and SHAP Tree Explainer in Exploring Spatial (In)Justice to Aid Urban Planning
Next Article in Special Issue
Analyzing Contextual Linking of Heterogeneous Information Models from the Domains BIM and UIM
Previous Article in Journal
Spatiotemporal Characteristics and Risk Factors of the COVID-19 Pandemic in New York State: Implication of Future Policies
Previous Article in Special Issue
Urban Overheating Assessment through Prediction of Surface Temperatures: A Case Study of Karachi, Pakistan
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Smart Tourism Recommendation Algorithm Based on Cellular Geospatial Clustering and Multivariate Weighted Collaborative Filtering

1
College of Computer Science, Sichuan University, Chengdu 610065, China
2
Institute of Geospatial Information, PLA Strategic Support Force Information Engineering University, Zhengzhou 450001, China
*
Author to whom correspondence should be addressed.
ISPRS Int. J. Geo-Inf. 2021, 10(9), 628; https://doi.org/10.3390/ijgi10090628
Submission received: 18 July 2021 / Revised: 2 September 2021 / Accepted: 14 September 2021 / Published: 19 September 2021

Abstract

:
Tourist attraction and tour route recommendation are the key research highlights in the field of smart tourism. Currently, the existing recommendation algorithms encounter certain problems when making decisions regarding tourist attractions and tour routes. This paper presents a smart tourism recommendation algorithm based on a cellular geospatial clustering and weighted collaborative filtering. The problems are analyzed and concluded, and then the research ideas and methods to solve the problems are introduced. Aimed at solving the problems, the tourist attraction recommendation model is set up based on a cellular geographic space generating model and a weighted collaborative filtering model. According to the matching degree between the tourists’ interest needs and tourist attraction feature attributes, a precise tourist attraction recommendation is obtained. In combination with the geospatial attributes of the tourist destination, the spatial adjacency clustering model based on the cellular space generating algorithm is set up, and then the weighted model is introduced for the collaborative filtering recommendation algorithm, which ensures that the recommendation result precisely matches the tourists’ needs. Providing precise results, the optimal tour route recommendation model based on the precise tourist attraction approach vector algorithm is set up. The approach vector algorithm is used to search the optimal route between two POIs under the condition of multivariate traffic modes to provide the tourists with the best motive benefits. To verify the feasibility and advantages of the algorithm, this paper designs a sample experiment and analyzes the resulting data to obtain the relevant conclusion.

1. Introduction

A smart recommendation system that provides suitable tourist attraction and route recommendations for tourists is a research highlight in the field of smart tourism [1]. It can automatically provide potentially interesting tourist attractions for tourists and offer them a convenient service. The current recommendation methods include the user-based method, the content-based method, the knowledge-based method, the user characteristics-based method, and the association rules-based method, etc. Each method has its advantages and disadvantages, and the user-based method and content-based method are frequently used [2,3].
Mou [4] used the collaborative filtering method to forecast tourists’ evaluation scores on tourist attractions in accordance with similar tourist attraction scores. Filipe Santos [5] proposed a recommendation system that considers users’ functionality levels. Yanqing Cui [6] designed a kind of tourist attraction label system. According to the association model among the tourist, tourist attraction and tourism label, the user interest model was set up to recommend tourist attractions. Choi Il Young [7] proposed a travel recommendation system based on collaborative filtering and constraint satisfaction filtering. Li Guangli [8] used a questionnaire survey and the crawler algorithm to obtain the tourist and tourist attraction data. The collaborative filtering method was used to calculate the textual similarity between the target user and each cluster center and finally obtain the recommendation list. Ya Zhou [9] presented a kind of collaborative filtering recommendation method based on tourists’ location labels and preferences. Mehrbakhsh Nilashi [10] presented a hybrid collaborative filtering recommendation method based on dimension reduction and prediction technology. Shi [11] designed a tourism collaborative filtering recommendation model that incorporates tourist attraction attributes. Chen [12] used the collaborative filtering algorithm to recommend the tourist attractions. Zhu [13] used a stratified sampling statistical model to obtain users’ preferences. Furthermore, the improved Bayes individualized sequencing method was used to optimize the recommendation system. Li [14] presented a collaborative filtering algorithm. It used the clustering method DBSCAN to set up a user consumption model and obtain a the recommendation system for the WeChat applet. Liu [15] studied the tourism recommendation systems based on a clustering algorithm, stratified sampling statistical model and SVD++ algorithm, respectively. Chen [16] presented a tourism group recommendation method combined with collaborative filtering and user preferences. Leila Esmaeili [17] set up a tourism recommendation system under the condition of social commerce. Shen [18] obtained massive historical tour data and sets up the personalized attraction similarity (PAS) model to recommend tourist attractions.
Analyzing the related work, it can be seen that the tourism recommendation method has the following problems. Problem (1): Previous studies mainly focus on the principle and theory of the collaborative filtering algorithm in terms of the aspects of algorithm efficiency, accuracy, data sparsity, and the cold start problem. Problem (2): The collaborative filtering algorithm is still a fuzzy recommendation mode without high accuracy. It only relies on the historical tour data and comment data to determine the current tourist’s interests and needs. Problem (3): The research on the precise matching degree between the tourist attraction feature attributes and tourist interest feature attributes is not sufficient. Problem (4): The collaborative filtering algorithm directly uses the historical tour route, neglecting the current tourist’s interest needs and the real-world geographic conditions for the tourist. The traditional route planning algorithm uses the main roads and avenues, while it neglects the secondary roads. It may not identify the optimal route.
Figure 1 shows the sequence of the paper. Aimed at addressing these problems, this paper presents a tourism recommendation model based on cellular automata geographic space clustering and a weighted collaborative filtering algorithm. This algorithm could be used as an embedded algorithm for a smart tourism recommendation system developed, managed, and operated by the tourism sectors. Moreover, the system is ultimately used by tourists on the website. This model is able to solve the analyzed problems. The first is the problem in the precise tourist attraction recommendation mechanism of the collaborative filtering algorithm. The second is the matching mechanism between the tourist attraction and tourist in the collaborative filtering algorithm. The third is the problem of optimal tour route planning based on the precise recommendation result.

2. Tourist Attraction Recommendation Model Based on Cellular Geospatial Generating and Weighted Collaborative Filtering

First, it is necessary to cluster the tourist attractions. A tourist usually takes a certain tourism city as their destination. The typical tourist attractions are the places that tourists will visit [19,20,21,22]. This paper takes the urban area as the research range to set up the algorithm. The tourist attractions in the urban area have the discrete characteristics within the geospatial range. Each tourist attraction is connected by an urban road network, and tourists can freely travel between tourist attractions by different transportation methods. The recommendation should combine feature attributes and its matching with tourists’ interest needs. Here, the first group of definitions and tourist attraction clustering are presented.
Def 1.1 Tourist attraction research domain X . The n number of urban tourist attractions that possess geospatial attributes and feature attributes are grouped into one set, and this set is defined as tourist attraction research domain X .
Def 1.2 The element x ( k ) of X . Tourist attraction in the domain X is the element x ( k ) of X , k ( 0 , n ] Z + .
Def 1.3 The feature attribute vector x ( k ) for the element x ( k ) of X . As to one element x ( k ) of X , its attributes can be quantified into a one-dimensional feature vector, defined as the feature attribute vector x ( k ) for the element x ( k ) of X .
Def 1.4 Tourist attraction cluster X ( j ) . Divide the n number of tourist attractions into c number of subsets X ( j ) and ensure that the tourist attributions of different subsets have a low intimacy degree while tourist attributions in the same subset have a high intimacy degree. The subset is defined as the tourist attraction cluster X ( j ) , j ( 0 , c ] Z + .

2.1. The Spatial Adjacency Tourist Attraction Clustering Model Based on the Cellular Space Generating Algorithm

Tourist attractions, urban roads and their intersections are the basic environment for tourism activities. The clustering of the tourist attractions is necessary to ensure the matching degree between the tourist attraction and tourist [23,24,25,26]. The tourist attraction clustering model based on the cellular space generating algorithm is set up.

2.1.1. Tourist Attraction Cellular Space Generating Algorithm

The cellular generating algorithm is set up to generate the optimized space structure of the tourist attraction element x ( k ) . It realizes the optimal clustering of domain X . The second group of definitions and the algorithm process are presented below.
Def 2.1 Tourist attraction cellular core O ( k ) . The element x ( k ) of X is defined as the tourist attraction cellular core O ( k ) . It is the generating root of the tourist attraction cellular generating unit C ( k ) .
Def 2.2 Tourist attraction cellular space anchor point P ( v ) . In a random and uniform manner, w number of intersections P ( v ) of the main roads are defined as the tourist attraction cellular space anchor point.
Def 2.3 Cellular generating unit C ( k ) . The irregular closed polygon C ( k ) , which is formed by points P ( v ) and contains the cellular core O ( k ) , is defined as the tourist cellular generating unit C ( k ) . It is the basic unit to generate the cellular space, and it is the minimum unit that contains the cellular core O ( k ) .
Def 2.4 Tourist attraction cellular space C . Expand the unit to form the neighborhood cellular core C ( k ) n e i , which contains the neighborhood core O ( k ) n e i . Starting from C ( k ) , perform the directional expansion. When all the points O ( k ) n e i converge and all C ( k ) are formed, the space C is generated. The cellular generating unit C ( k ) and cellular space C generating algorithm based on the core O ( k ) and points P ( v ) is set up, and it is defined as Algorithm 1. Below is the Algorithm 1 flow pseudo-code.
Algorithm 1 The cellular generating unit C ( k ) and cellular space C generating algorithm
1: Step 1: Generate and confirm the O ( k ) set for the tourist attraction cellular cores O ( k ) and the set P ( v ) for the cellular geospatial anchor points P ( v ) .
2:   Sub-step 1: Generate the set O ( k ) .
3:   Sub-step 2: Encode the points P ( v ) in set P ( v ) .
4:   Sub-step 3: Encode the points O ( k ) in set O ( k ) .
5:   Sub-step 4: Confirm the coordinate O ( k ) as y ( 1 , O ( k ) ) and y ( 2 , O ( k ) ) , P ( v ) as y ( 1 , P ( v ) ) and y ( 2 , P ( v ) ) .
6: Step 2: Generate the initial cellular generating unit C ( 1 ) .
7:   Sub-step 1: Generate one ray l O ( k ) to the north direction starting from the cellular core O ( k ) .
8:   Sub-step 2: Set up the open list O ( k ) and closed list C l ( i ) for P ( v ) .
9:   Sub-step 3: Turn l o ( k ) and search the neighborhood points P ( v ) n e i .
10: Step 3: Generate the unit C ( 2 ) of the initial cellular generating unit C ( 1 ) .
11: Step 4: Generate all the unit C ( 1 ) n e i of the cellular generating unit C ( 1 ) .
12: Step 5: Continue generating neighborhood units until all the points converge.
Figure 2 is an example to form the space C . Figure 2a–f illustrate the process of forming the cellular unit C ( 1 ) , and Figure 2g–h illustrate the topological process of forming the cellular space C based on the cellular unit C ( 1 ) .

2.1.2. Tourist Attraction Clustering Algorithm Based on Geospatial Feature Attribute

In the process of clustering, to generate the cluster C l ( u ) , the cellular core O ( k ) is defined as the dynamic clustering center C e . The C e will change with the spatial geometric topology of the cluster C l ( u ) in the process of multiple iterations and form the steady-state clustering center. The tourist attraction clustering algorithm based on the geospatial feature attribute is set up, and it is defined as Algorithm 2, and the Algorithm 2 pseudo-code is as follows. After the search, the tourist attraction space C forms the cluster C l ( u ) distribution state with the core of the steady-state clustering centers C e ( v ) .
Algorithm 2 The tourist attraction clustering algorithm based on the geospatial feature attribute
1: Step 1: Randomly and uniformly choose k number of dynamic clustering centers C e ( v ) . v ( 0 , k ] Z + , noted C e + .
2: Step 2: Store C e ( v ) into vector K ( 1 ) , store C e ( v 2 ) ¬ into K ( 2 ) , note the element as K ( 1 , v 1 ) and K ( 2 , v 2 ) . v 1 ( 0 , k ] Z + , and v 2 ( 0 , n k ] Z + . Calculate d ( C e ( v 1 ) , C e ( v 2 ) ) ¬ .
3:   Sub-step 1: Calculate d ( K ( 2 , 1 ) , K ( 1 , 1 ) ) .
4:   Sub-step 2: Converse v 1 ( 0 , k ] Z + , calculate d ( K ( 2 , 1 ) , K ( 1 , v 1 ) ) .
5:   Sub-step 3: Set up matrix ~ K ( 1 ) to store d ( K ( 2 , 1 ) , K ( 1 , v 1 ) ) in ascending order.
6:   Sub-step 4: Take the minimum element ~ K ( 1 ) of K ( 2 , 1 ) as the nearest O ( k ) for O ( v 1 ) and absorb in C l ( k ( 1 , v 1 ) ) .
7: Step 3: Calculate d ( K ( 2 , 2 ) , K ( 1 , 1 v ) ) , v 1 ( 0 , k ] Z + . Take the minimum element ~ K ( 1 ) of K ( 2 , 2 ) as the nearest O ( k ) for O ( v 1 ) and absorb in C l ( k ( 1 , v 1 ) ) .
8: Step 4: Converse to calculate d ( K ( 2 , v 2 ) , K ( 1 , 1 v ) ) , take the minimum element ~ K ( 1 ) of K ( 2 , v 2 ) as the nearest O ( k ) for O ( v 1 ) and absorb in C l ( k ( 1 , v 1 ) ) .
Figure 3 is an example for Algorithm 2. Four centers (red points) are chosen; see Figure 3a. For one point out of the center (blue point), calculate the value d between the blue point and all the red points and determine the minimum value; see Figure 3b. The blue point with the minimum value belongs to the red point cluster (with square); see Figure 3c. Perform the process on all the blue points and determine which blue point belongs to which red point cluster.

2.2. Tourist Attraction Recommendation Model Based on Weighted Collaborative Filtering

Note the tourist attractions’ m dimension feature attributes and the topological attributes as the keywords for the text mining. By mining the tourist attraction feature attribute labels, tourists’ preferences regarding the tourist attraction classification can be obtained from the statistical data [27,28,29]. The K-neighborhood algorithm is used to obtain the historical tourists who best match the current tourists’ feature attributes so as to recommend the best-matching tourist attraction classification for the current tourists. Then, they choose a certain quantity of tourist attractions in each classification according to the time schedule. Below is the third group of definitions and the tourist attraction recommendation model based on the weighted collaborative filtering algorithm.
Def 3.1 Tourist attraction feature classification T ( i ) . Urban tourist attractions could be classified into c classifications T ( i ) . Its tourist attraction is noted as T ( i , j ) . The T ( i ) divides the domain X into n classifications. The tourist attractions T ( i , j ) of the same feature classification T ( i ) have similar feature attributes.
Tourist attractions T ( i , j ) in the two different T ( i ) and T ( ¬ i ) have different feature attributes. The domain X is divided into n classifications in order to divide the set T = { T ( i ) | 0 < i n } into certain finite classifications T ( i ) . The classification meets the condition: T ( 1 ) T ( 2 ) T ( c ) = T , T ( i 1 ) T ( i 2 ) = , 0 < i 1 i 2 c , T ( i ) , T ( i ) T , 0 < i c .
Def 3.2 Feature attribute label meta vector L ( i ) , feature attribute label topological vector L ( i ) t o and feature attribute label matrix L M . The m dimension feature attributes x ( k 1 ) , x ( k 2 ) ,…, x ( k m ) are extracted as the keywords and stored in the m × 1 dimension column vector, noted as L ( i ) = { L ( 1 ) , L ( 2 ) , , L ( m ) } T . It is called feature attribute label meta vector L ( i ) . Based on the single label element L ( i ) in the vector L ( i ) , expand n number of keyword labels L ( i , j ) with the same or similar semantics to the label L ( i ) and absorb them into the 1 × n dimension vector L ( i ) t o with the initial element L ( i ) . This vector is defined as feature attribute label topological vector L ( i ) t o , noted as L ( i ) t o = { L ( i , 1 ) , L ( i , 2 ) , , L ( i , n ) } . The m number of vectors L ( i ) t o are arranged in the sequence of the feature attribute label L ( i ) sign to form the m × n dimension matrix, defined as the feature attribute label matrix L M , noted as L M = { L ( 1 ) t o , L ( 2 ) t o , , L ( m ) t o } T . The topological vector L ( i ) t o and label L ( i , j ) in the matrix L M meet the conditions: L ( i ) L ( i ) t o L M , L ( i 1 ) L ( i 2 ) = , L ( i 1 ) t o L ( i 2 ) t o = L ( i , j 1 ) L ( i , j 2 ) = , L ( i , j 1 ) L ( i , j 2 ) = , L ( i ) L ( i ) t o L M .
Def 3.3 Feature attribute label word frequency matrix F q ( L M ) . In the process of text mining, the appearance time for the label L ( i ) or L ( i , j ) of the matrix L M is defined as the feature attribute label word frequency F q ( L ( i ) ) or F q ( L ( i , j ) ) . As to the element mark i and j of the attribute label in the matrix L M , the m × n dimension matrix F q ( L M ) with the feature attribute label word frequency F q ( L ( i ) ) or F q ( L ( i , j ) ) is defined as the feature attribute label word frequency matrix F q ( L M ) .
Def 3.4 Tourist feature attribute factor f ( k ) t o , feature attribute vector F ( i , j ) t o , feature attribute matrix F M t o and feature attribute factor weighted parameter δ ( k ) t o . Tourists usually predetermine certain conditions, such as the budget and cost, the traveling time, tourist attraction hot index, tour purpose, and transportation mode. Define the preset conditions as the tourist feature attribute factor f ( k ) t o . Set up a max k × 1 dimension matrix F ( i , j ) t o . According to the code sequence k of the feature attribute factor f ( k ) t o , store the factor f ( k ) t o into the element f ( i ) t o of the vector F ( i , j ) t o , and the vector F ( i , j ) t o is defined as the tourist feature attribute vector. Of all the factors f ( k ) t o , the budget and cost factor is defined as the weighted expense for the tourists (Unit: yuan). The traveling time factor is defined as the weighted traveling time for the tourists (Unit: hour). The tourist attraction hot index is defined as the weighted capability of the tourist attraction to attract tourists. The tour purpose factor is defined as the purpose for which the tourists visit the tourism city [30,31,32,33]. The transportation mode factor is defined as the transportation method that the tourists tend to use. For convenience of calculation, quantify the textual tourist feature attribute factor f ( k ) t o into numerical data. In order to ensure that the impact of each tourist feature attribute factor on the modeling is in the same order of magnitude, the normalization is performed on the factors by the weighted parameter, defined as the feature attribute factor weighted parameter δ ( k ) t o . Perform topology on each element F ( i ) t o of the vector F ( i , j ) t o and form the topology vector F ( i ) t o ; all the vectors F ( i ) t o form the matrix F M t o , defined as the feature attribute matrix. The matrix F M t o is the topological matrix that contains the tourists’ alternative needs and requirements. Define the vector F ( i , j ) t o and its factor f ( i , j ) t o as follows.
  • Tourist feature attribute vector F ( i , j ) t o : { F ( 1 ) t o : tour budget and cost; F ( 2 ) t o : traveling time; F ( 3 ) t o : tourist attraction hot index; F ( 4 ) t o : tour purpose; F ( 5 ) t o : transportation mode};
  • Tour budget and cost F ( 1 ) t o : { F ( 1 , 1 ) t o : f ( 1 , 1 ) t o [ 0 , 50 ] ; F ( 1 , 2 ) t o : f ( 1 , 2 ) t o ( 50 , 100 ] ; F ( 1 , 3 ) t o : f ( 1 , 3 ) t o ( 100 , 150 ] ; F ( 1 , 4 ) t o : f ( 1 , 4 ) t o ( 150 , + ] }, f ( i , j ) t o R + ;
  • Traveling time F ( 2 ) t o :{ F ( 2 , 1 ) t o : f ( 2 , 1 ) t o ( 0 , 1.00 ] ; F ( 2 , 2 ) t o : f ( 2 , 2 ) t o ( 1.00 , 2.00 ] ; F ( 2 , 3 ) t o : f ( 2 , 3 ) t o ( 2.00 , 3.00 ] ; F ( 2 , 4 ) t o : f ( 2 , 4 ) t o ( 3.00 , + ] }, f ( i , j ) t o R + ;
  • Tourist attraction hot index F ( 3 ) t o :{ F ( 3 , 1 ) t o : f ( 3 , 1 ) t o ( 0 , 0.25 ] ; F ( 3 , 2 ) t o : f ( 3 , 2 ) t o ( 0.25 , 0.50 ] ; F ( 3 , 3 ) t o : f ( 3 , 3 ) t o ( 0.50 , 0.75 ] ; F ( 3 , 4 ) t o : f ( 3 , 4 ) t o ( 0.75 , 1.00 ) }, f ( i , j ) t o R + ;
  • Tour purpose F ( 4 ) t o :{ F ( 4 , 1 ) t o : leisure, 0.25; F ( 4 , 2 ) t o : health care, 0.50; F ( 4 , 3 ) t o : on vacation, 0.75; F ( 4 , 4 ) t o : business affairs, 1.00};
  • Transportation mode F ( 5 ) t o :{ F ( 5 , 1 ) t o : taking taxi, 0.25; F ( 5 , 2 ) t o : cycling, 0.50; F ( 5 , 3 ) t o : walking, 0.75; F ( 5 , 4 ) t o : taking the public bus, 1.00}.
Set up the matrix F M t o . Tourists confirm their interests by the matrix F M t o . The intelligent system confirms the nearest neighborhood historical tourists and then recommends the preferred tourist attraction classifications. Equation (1) is the founded 5 × 4 dimension matrix F M t o ; and each row of the matrix represents one vector F ( i ) t o , and its elements are the specific quantified values of f ( k ) t o .
F M t o = [ F ( 1 , 1 ) t o F ( 1 , 2 ) t o F ( 1 , 3 ) t o F ( 1 , 4 ) t o F ( 2 , 1 ) t o F ( 2 , 2 ) t o F ( 2 , 3 ) t o F ( 2 , 4 ) t o F ( 3 , 1 ) t o F ( 3 , 2 ) t o F ( 3 , 3 ) t o F ( 3 , 4 ) t o F ( 4 , 1 ) t o F ( 4 , 2 ) t o F ( 4 , 3 ) t o F ( 4 , 4 ) t o F ( 5 , 1 ) t o F ( 5 , 2 ) t o F ( 5 , 3 ) t o F ( 5 , 4 ) t o ] , F ( i , j ) t o ~ f ( i , j ) t o
Def 3.5 Neighborhood tourist searching objective function G ( T ( h i ) , T ( c u ) ) . According to the definition of the Euclidean distance, the neighborhood relationship model between the historical tourists and current tourists is set up, shown as Equation (2). The weighted parameter δ ( i ) t o is brought into the objective function G ( T ( h i ) , T ( c u ) ) as the regulatory factor, i ( 0 , max k ] Z + , δ ( i ) t o ( 0 , 1 ] R + . Function G ( T ( h i ) , T ( c u ) ) represents the close relationship between the current tourists and historical tourists.
G ( T ( h i ) , T ( c u ) ) = [ i = 1 max k | δ ( i ) t o ( f ( i , j h i ) t o T ( h i ) f ( i , j c u ) t o T ( c u ) ) | 2 ] 1 / 2 s . t . j h i , j c u
The tourist attraction recommendation model based on the weighted collaborative filtering is set up, and it is defined as Algorithm 3. Below is the Algorithm 3 pseudo-code.
Algorithm 3 Tourist attraction recommendation algorithm based on the weighted collaborative filtering
1: Step 1: Set up tourist attraction feature attribute label word frequency matrix F q ( L M ) and word frequency storage vector T N ( F q ( L M ) ) .
2:   Sub-step 1: Initialize the word frequency matrix F q ( L M ) .
3:   Sub-step 2: Set up the evaluation data set F t e x t for the historical tourists T ( h i ) .
4:   Sub-step 3: Search word frequency F q ( L M ) r o 1 ~ F q ( L ( i , j ) ) of each row’s vector L ( i ) t o in the matrix F q ( L M ) . Define the total number of each label L ( i , j ) word frequency F q ( L ( i , j ) ) in the no. i vector L ( i ) t o as T N ( F q ( L M ) r o i ) .
5:   Sub-step 4: Form matrix F q ( L M ) via L ( i ) t o . Output the vector T N ( F q ( L M ) ) containing each row’s vector L ( i ) t o total word frequency.
6: Step 2: Set up the tourist attraction classification interest degree set T ( h i ) ( u ) ~ T N ( F q ( L M ) ) ( u ) of the historical tourists. The number of historical tourists: σ ; the no. u historical tourists: T ( h i ) ( u ) .
7: Step 3: Set up the tourist sight classification recommendation model based on the interest degree vector T N ( F q ( L M ) ) ( u ) of the nearest neighborhood historical tourists.
8:   Sub-step 1: Confirm each interest degree vector T N ( F q ( L M ) ) ( v i ) and its elements of the historical tourists related to the no. v 1 ~ v n ( L o ) location points.
   Sub-step 2: Set up the tourist attraction classification recommendation vector R .
   Sub-step 3: Define the recommendation degree function R ( j ) . The no. j element of vector T N ( F q ( L M ) ) ( v i ) relates to one kind of tourist attraction classification word frequency. The average value of the no. j element word frequencies calculated by the v n ( L o ) number of neighborhood historical tourists T ( h i ) ( v i ) is defined as the recommendation function.
R ( j ) = i = 1 n ( L o ) n ( T N ( F q ( L M ) ( v i , j ) ) ) / n ( L o ) .
   Sub-step 4: Calculate R ( j ) value for the n ( L o ) number of location points L o ( T ( h i ) ( v i ) ) . Store the values in the descending order in vector R .
 Step 5: Set up the precise tourist attraction recommendation algorithm based on the tourist attraction search-optimized generating space.
   Sub-step 1: Confirm the starting point S t of the tour route and the tourist attraction number n ( i ) for the tourists.
   Sub-step 2: Confirm the cellular generating unit C ( k ) containing the starting point S t .
   Sub-step 3: Set up the Open list O ( k ) and the Closed list C ( k ) for the tourist attraction.
   Sub-step 4: Confirm the number of common edges of C ( k ) n e i ( s ) containing S t ( c u ) and its related unit C ( k ) 2 n e i ( s ) and the cellular core O ( k ) 2 n e i ( s ) . Search O ( k ) 2 n e i ( s ) and store the feasible ones in R t o . Delete it from the list O ( k ) , and store it in the list C ( k ) . The current tourist attraction C ( k ) 2 n e i ( s ) is searched and stored in the vector R t o .
Figure 4 is an example for Algorithm 3. Calculate the R ( j ) value for the historical tourists. Then, determine the closest ones for the current tourist by G ( T ( h i ) , T ( c u ) ) . From the closest historical tourists’ choice (average value), search the nearby cluster from the starting point (green point). If the nearest point a in cluster C1 meets the needs, choose it (with square); see Figure 4a. Continue searching—if the next nearest point b in cluster C4 meets the needs, choose it (with square); see Figure 4b. Continue searching—if the next nearest point c in cluster C3 meets the needs, choose it (with square); see Figure 4c. If the quantity is sufficient, stop searching and obtain the precise points a, b, and c.
The above steps are modeled to form the vector R t o and finally output the precise tourist attractions for the tourists. Based on the precise tourist attractions, proper tour routes should be recommended to the tourists.

3. The Optimal Tour Route Recommendation Model Based on Precise Tourist Attraction Approach Vector Algorithm

In an optimal tour route, tourist attractions all satisfy tourists’ interests. The traveling cost should be the lowest [34,35,36,37]. The total cost of visiting tourist attractions can be seen as a fixed value. Thus, the travel cost should be considered; it is determined by the transportation mode, traveling distance, road congestion, and the traveling fee, etc. When tourists choose one transportation mode, the connecting route, traveling distance, road congestion condition, and the traveling fee are all different. Thus, the lowest road congestion index and the smallest traveling fee would be ideal [38,39,40]. Below is the fourth group of definitions and the modeling process of the optimal tour route recommendation based on the precise tourist attraction approach vector algorithm.
Def 4.1 Tourist attraction neighborhood section Z o ( R t o ( i ) , R t o ( j ) ) . Two arbitrary tourist attractions R t o ( i ) and R t o ( j ) form a road section, defined as Z o ( R t o ( i ) , R t o ( j ) ) .
Def 4.2 Neighborhood section edge weight model g ( Z o ( R t o ( i ) , R t o ( j ) ) ) and the global tour route weight iteration model G ( Z o ( R t o ( i ) , R t o ( j ) ) ) . The model formed by the three constraint factors of the shortest travel distance ξ 1 ( R t o ( i ) , R t o ( j ) ) (Unit: km), the road congestion index ξ 2 ( R t o ( i ) , R t o ( j ) ) and the traveling fee ξ 3 ( R t o ( i ) , R t o ( j ) ) (Unit: Ұ yuan) to determine the neighborhood edge weight value is defined as the neighborhood section edge weight model. Usually, the factors are normalized into ( 0 , 1 ) . Set the amended parameter of the constraint factor ξ ( i ) ( R t o ( i ) , R t o ( j ) ) as ε ( i ) ( R t o ( i ) , R t o ( j ) ) . Then, Equation (3) shows the neighborhood section weighted edge weight model g ( Z o ( R t o ( i ) , R t o ( j ) ) ) .
g ( Z o ( R t o ( i ) , R t o ( j ) ) ) = i = 1 3 ε ( i ) ( R t o ( i ) , R t o ( j ) ) ξ ( i ) ( R t o ( i ) , R t o ( j ) )
In Equation (3), the factor ξ 1 ( R t o ( i ) , R t o ( j ) ) is determined by the approaching vector algorithm. The factor ξ 2 ( R t o ( i ) , R t o ( j ) ) is obtained from the city statistical transportation information data. The traveling fee factor ξ 3 ( R t o ( i ) , R t o ( j ) ) is determined by the chosen transportation mode τ ( R t o ( i ) , R t o ( j ) ) and the actual cost generated by the travel process in the neighborhood section Z o ( R t o ( i ) , R t o ( j ) ) . If one tour route is formed by the z number of neighborhood sections Z o ( R t o ( i ) , R t o ( j ) ) connected by the starting point R t o ( 0 ) and each terminal point R t o ( i ) , i ( 0 , n ] Z + , the integral route model formed by the connecting z number of neighborhood sections Z o ( R t o ( i ) , R t o ( j ) ) is defined as the global tour route weight iteration model G ( Z o ( R t o ( i ) , R t o ( j ) ) ) , shown in Equation (4). The optimal solution of the model G ( Z o ( R t o ( i ) , R t o ( j ) ) ) is the global minimum value min G ( Z o ( R t o ( i ) , R t o ( j ) ) ) .
{ G ( Z o ( R t o ( i ) , R t o ( j ) ) ) = z = 1 max z g ( z ) ( Z o ( R t o ( i ) , R t o ( j ) ) ) G ( Z o ( R t o ( i ) , R t o ( j ) ) ) = z = 1 max z i = 1 3 ε ( z , i ) ( R t o ( i ) , R t o ( j ) ) ξ ( z , i ) ( R t o ( i ) , R t o ( j ) )
Def 4.3 Tourist attraction geospatial directed weighted graph D . Take all the element tourist attractions R t o ( i ) in the vector R t o as the vertexes of the graph. Take the neighborhood section Z o ( R t o ( i ) , R t o ( j ) ) between two tourist attractions as the directed edge, and each edge’s weight value is set as g ( Z o ( R t o ( i ) , R t o ( j ) ) ) . The closed graph D = < V , A > that is formed by the vertex set V = R t o and weight edge set A = Z o ( R t o ( i ) , R t o ( j ) ) is defined as the tourist attraction geospatial directed weighted graph D .
Def 4.4 The approaching model f ( Z o ( R t o ( i ) , R t o ( j ) ) ) of the tourist attraction neighborhood section Z o ( R t o ( i ) , R t o ( j ) ) . When the tourists travel between R t o ( i ) and R t o ( j ) , the shortest path is the road section combination that most closely approaches one certain fitting function curve in the trend between two points [41,42,43]. The R t o ( i ) and R t o ( j ) are set as the terminal points to fit the approaching function f ( Z o ( R t o ( i ) , R t o ( j ) ) ) , defined as the approaching model of the section Z o ( R t o ( i ) , R t o ( j ) ) . The order of the function is determined by the algorithm complexity and the actual geospatial data. It intersects with certain city roads between the points R t o ( i ) and R t o ( j ) . Equation (5) is the approaching model of the tourist attraction neighborhood section Z o ( R t o ( i ) , R t o ( j ) ) , in which p is the function order, a ( p ) and b are the function coefficients, and the footnote R t o is the selected point set.
y R t o ( 2 ) = a ( 1 ) y R t o ( 1 ) P + a ( 2 ) y R t o ( 1 ) p 1 + + a ( p ) y R t o ( 1 ) + b
Def 4.5 The access road set L and the road intersect point set K . Divide the city roads into the horizontal road and the vertical road. The horizontal road set is confirmed as L ( r o ) , and its element is the road l ( r o , i ) . The vertical road set is confirmed as L ( c o ) , and its element is the road l ( c o , j ) . The intersection point is noted as K ( i , j ) , in which the i is the mark for the horizontal road l ( r o , i ) , and the j is the mark for the vertical road l ( c o , j ) . If the two roads are both horizontal or vertical, the intersection point is noted as K s ( i , j ) .
Def 4.6 The approaching point set P . The function curve f ( Z o ( R t o ( i ) , R t o ( j ) ) ) on the tourist attraction neighborhood section Z o ( R t o ( i ) , R t o ( j ) ) intersects with certain horizontal roads l ( r o , i ) or l ( c o , j ) to form intersection points P ( f , l ) ( i ) , defined as the approaching point set P . The shortest route is searched using the method.
Set up f ( Z o ( R t o ( i ) , R t o ( j ) ) ) . Quantify set L , including the elements l ( r o , i ) and l ( c o , j ) . The quantify function of the horizontal and vertical road element is f ( l ( r o , i ) ) ( 1 ) and f ( l ( c o , j ) ) ( 2 ) . The intersection points between f ( Z o ( R t o ( i ) , R t o ( j ) ) ) and f ( l ( r o , i ) ) ( 1 ) or f ( Z o ( R t o ( i ) , R t o ( j ) ) ) and f ( l ( c o , j ) ) ( 2 ) form the set P ( Z o ( R t o ( i ) , R t o ( j ) ) ) of the shortest route. The intersection points of the function f ( l ( r o , i ) ) ( 1 ) and f ( l ( c o , j ) ) ( 2 ) form the set K ( Z o ( R t o ( i ) , R t o ( j ) ) ) , satisfying Equation (6).
{ ( f ( Z o ( R t o ( i ) , R t o ( j ) ) ) f ( l ( r o , i ) ) ( 1 ) ) ( f ( Z o ( R t o ( i ) , R t o ( j ) ) ) f ( l ( c o , j ) ) ( 2 ) ) = P ( Z o ( R t o ( i ) , R t o ( j ) ) ) ( f ( l ( r o , i ) ) ( 1 ) f ( l ( r o , ¬ i ) ) ( 1 ) ) ( f ( l ( c o , j ) ) ( 2 ) f ( l ( c o , ¬ j ) ) ( 2 ) ) ( f ( l ( r o , i ) ) ( 1 ) f ( l ( c o , j ) ) ( 2 ) ) = K ( Z o ( R t o ( i ) , R t o ( j ) ) )
Visualize all the elements in Figure 5. Figure 5a shows the relationship between the connecting lines formed by certain tourist attractions and the city roads. Figure 5b shows the intersection point set. Figure 5c is the abstracted intersection point set’s geospatial distribution of the approaching algorithm between two tourist attractions. Figure 5d shows the searching direction of the approaching vector.
Set up the closest approach vector algorithm.
Step 1
Take the closest neighborhood approach points P ( f , l ) ( 1 ) and P ( f , l ) ( max i ) for the terminal points R t o ( i ) and R t o ( j ) in the set P ( Z o ( R t o ( i ) , R t o ( j ) ) ) .
Step 2
Search the approach point set P ( Z o ( R t o ( i ) , R t o ( j ) ) ) and the set K ( Z o ( R t o ( i ) , R t o ( j ) ) ) .
Search the route S ( 1 , u ) from the point P ( f , l ) ( 1 ) to P ( f , l ) ( 2 ) . Start from the point P ( f , l ) ( 1 ) to search l ( c o , 1 ) to the point K ( 1 , 1 ) and form the vector a ( 1 , 1 ) ; search l ( r o , 1 ) to the point P ( f , l ) ( 2 ) and form the vector a ( 1 , 2 ) . There is no other access route, the searching process is completed, the route is S ( 1 , 1 ) , and the approach vector set is A ( 1 , 1 ) = { a ( 1 , 1 ) , a ( 1 , 2 ) } .
Search the route S ( 2 , u ) from the point P ( f , l ) ( 1 ) to P ( f , l ) ( 3 ) . Start from the point K ( 1 , 1 ) to search l ( c o , 1 ) to the point K ( 2 , 1 ) and form the vector a ( 2 , 1 ) ; search l ( r o , 2 ) to the point P ( f , l ) ( 3 ) and form the vector a ( 2 , 2 ) ; the route is S ( 2 , 1 ) , and form the vector set A ( 2 , 1 ) = { a ( 1 , 1 ) , a ( 2 , 1 ) , a ( 2 , 2 ) } . If it is judged that there is another access route, continue searching. Start from the point P ( f , l ) ( 2 ) to search l ( r o , 1 ) to the point K ( 1 , 2 ) and form the vector a ( 2 , 3 ) ; start from the point K ( 1 , 2 ) to search l ( c o , 2 ) to the point K ( 2 , 2 ) and form the vector a ( 2 , 4 ) ; start from the point K ( 2 , 2 ) to search l ( r o , 2 ) to the point P ( f , l ) ( 3 ) and form the vector a ( 2 , 5 ) ; the route is S ( 2 , 2 ) , and form the vector set A ( 2 , 2 ) = { a ( 1 , 1 ) , a ( 1 , 2 ) , a ( 2 , 3 ) , a ( 2 , 4 ) , a ( 2 , 5 ) } . If it is judged that there is no other access route, the searching process is completed. Judge S ( 2 , 1 ) and S ( 2 , 2 ) .
(i)
If S ( 2 , 1 ) S ( 2 , 2 ) , retain the access road of the S ( 2 , 2 ) and its approach vector A ( 2 , 2 ) .
(ii)
If S ( 2 , 1 ) < S ( 2 , 2 ) , retain the access road of the S ( 2 , 1 ) and its approach vector A ( 2 , 1 ) .
Search the route S ( 3 , u ) from the point P ( f , l ) ( 1 ) to P ( f , l ) ( 4 ) . Start from the point K ( 2 , 2 ) to search l ( c o , 2 ) to the point P ( f , l ) ( 4 ) and form the vector a ( 3 , 1 ) ; the route is S ( 3 , 1 ) , and form the vector set A ( 3 , 1 ) = { a ( 1 , 1 ) , a ( 1 , 2 ) , a ( 2 , 3 ) , a ( 2 , 4 ) , a ( 3 , 1 ) } . If it is judged that there is another access road, continue searching. Start from the point K ( 2 , 1 ) to search l ( r o , 2 ) and l ( c o , 2 ) , pass through the points P ( f , l ) ( 3 ) and K ( 2 , 2 ) and reach P ( f , l ) ( 4 ) , form the vector set A ( 3 , 2 ) = { A ( 2 , 1 ) , a ( 2 , 5 ) , a ( 3 , 1 ) } , and the route is S ( 3 , 2 ) . Start from the point K ( 2 , 1 ) to search l ( c o , 1 ) , l ( r o , 3 ) , l ( c o , 2 ) , pass through the points K ( 3 , 1 ) and K ( 3 , 2 ) and reach P ( f , l ) ( 4 ) , form the vector set A ( 3 , 3 ) = { a ( 1 , 1 ) , a ( 2 , 1 ) , a ( 3 , 2 ) , a ( 3 , 3 ) , a ( 3 , 4 ) } , and the route is S ( 3 , 3 ) . If it is judged that there is no other access route, the searching process is completed. Compare the three values S ( 3 , 1 ) , S ( 3 , 2 ) , and S ( 3 , 3 ) .
(i)
If the S ( 3 , 1 ) is the minimum one, retain the access road of the S ( 3 , 1 ) and its approach vector A ( 3 , 1 ) .
(ii)
If the S ( 3 , 2 ) is the minimum one, retain the access road of the S ( 3 , 2 ) and its approach vector A ( 3 , 2 ) .
(iii)
If the S ( 3 , 3 ) is the minimum one, retain the access road of the S ( 3 , 3 ) and its approach vector A ( 3 , 3 ) .
Continue searching:
(i)
If searching is complete, return to step ①~③ and continue searching the route S ( i - 1 , u ) between the point P ( f , l ) ( 1 ) and P ( f , l ) ( i ) . Choose the access road of the min S ( i 1 , u ) and A ( i 1 , u ) .
(ii)
If searching is not complete, continue searching the route S ( max i 1 , u ) between the point P ( f , l ) ( 1 ) and P ( f , l ) ( max i ) . Choose the access road of the min S ( max i 1 , u ) and A ( max i 1 , u ) . Output min S ( max i 1 , u ) as the shortest access road.
Confirm the set P ( Z o ( R t o ( i ) , R t o ( j ) ) ) according to the route min S ( max i 1 , u ) .
Due to the constraints on the traveling time, physical condition and traveling cost, the number of tourist attractions is no more than 10. When the node number is n = 10 , the maximum operation time complexity O ( n ) is 3.62 s. Thus, the algorithm time is feasible, and the exhaustive method on the heap sort is used to search the global optimal solution min G ( Z o ( R t o ( i ) , R t o ( j ) ) ) . The min G ( Z o ( R t o ( i ) , R t o ( j ) ) ) is stored in the last element of the last level in the maximum heap.

4. Experimental Results and Data Analysis

For the experiment, 20 typical tourist attractions in Zhengzhou city’s downtown area are selected. They are divided into four categories: T ( 1 ) : Venue and memorial; T ( 2 ) : Park and greenland; T ( 3 ) : Amusement park; T ( 4 ) : Leisure shopping. The experiment is performed on a real-world environment; the original basic data such as longitude and latitude data, the data of road distance, travel time, traveling fee, and road congestion index, etc., are obtained from the Zhengzhou city’s geospatial database, the GIS website and electronic maps [44,45,46]. Thus, the final results are obtained based on real-world data.

4.1. Basic Experimental Data Collection, Calculation and Analysis

The required basic data include the tourist attraction name and classification, latitude and longitude coordinates, tourists’ evaluation textual data and feature attribute data, geographic information data and traffic information data, etc.

4.1.1. The Basic Data of the Tourist Attraction Domain

Set up X with element x ( k ) . X = { x ( 1 ) : ErQi Memorial; x ( 2 ) : Bishagang Park; x ( 3 ) : Zhongyuan Wanda; x ( 4 ) : Zijingshan Park; x ( 5 ) : Dehua Pedestrian street; x ( 6 ) : CC mall; x ( 7 ) : Henan provincial museum; x ( 8 ) : Zhengzhou science and technology museum; x ( 9 ) : Zhengzhou zoo; x ( 10 ) : Zhongyuan tower; x ( 11 ) : Century amusement park; x ( 12 ) : Children fun park; x ( 13 ) : ErQi Wanda; x ( 14 ) : Xiliuhu park; x ( 15 ) : Zhengzhou museum; x ( 16 ) : Renmin park; x ( 17 ) : Zhengxin park; x ( 18 ) : Zhengzhou Wangfujing; x ( 19 ) : Dihu amusement park; x ( 20 ) : Guomao}. Set up the O ( k ) and P ( v ) . Figure 6a shows the distribution of each O ( k ) . Figure 6b is the distribution of P ( v ) . Figure 6c is the distribution that overlays the set O ( k ) and P ( v ) .

4.1.2. The Basic Information Data of the Tourist Attractions and Location Points

The latitude and longitude website GPSspg is used to obtain the coordinates of the tourist attractions and location points, shown in Table 1.

4.1.3. Data and Result Analysis

The tourist attractions are all the typical ones in Zhengzhou city. They are distributed discretely and connected by the city roads. The selection process is fair and balanced in that the quantity of each classification is commensurate. The tourist attractions are all surrounded by different levels of roads; thus, there are sufficient location points. The latitude and longitude of all the points are collected to quantify their locations. The coordinates cause the points to have spatial attributes. They are used in the model to generate the cellular space. In regard to data collection and point confirmation, the original data set selected in the experiment is accurate and feasible and contains real-world data. Therefore, this experiment is a real-world-based experiment and not a simulation experiment, and its output result could be directly used for tourist attraction and tour route recommendation.

4.2. The Output Result and Analysis of the Tourist Attraction Spatial Clusters

The tourist attraction spatial cluster C l ( u ) has the basic structural set-up, with a cellular core O ( k ) , cellular unit C ( k ) and the formed cellular space C . It is obtained by multiple searching processes. The spatial cluster C l ( u ) is generated to search the optimal tourist attractions in terms of spatial distance.

4.2.1. The Output Result of the Tourist Attraction Cluster

According to the tourist attraction cellular unit set O ( k ) and the location point set P ( v ) , the tourist attraction cellular space generating algorithm is performed and the Closed list C l ( i ) that is used to store the structural location point P ( v ) C ( k ) of the unit C ( k ) with the cellular core O ( k ) m in the form of level storage is confirmed, shown as the Table 2. The tourist attraction cellular space C is generated, as shown in Figure 7a, in which the number represents the tourist attraction’s code. The tourist attraction clustering algorithm based on geospatial feature attributes is set up and forms the clusters on the space C . After n = 8 iterations, the tourist attraction space cluster C l ( u ) are output, as shown in Figure 7b. The generated clusters are:
C l ( 1 ) = { O ( 6 ) , O ( 12 ) , O ( 14 ) , O ( 18 ) } ;   C l ( 2 ) = { O ( 1 ) , O ( 4 ) , O ( 5 ) , O ( 7 ) , O ( 9 ) , O ( 16 ) , O ( 20 ) } ; C l ( 3 ) = { O ( 2 ) , O ( 3 ) , O ( 8 ) , O ( 13 ) , O ( 15 ) , O ( 19 ) } ;   C l ( 4 ) = { O ( 10 ) , O ( 11 ) , O ( 17 ) } .

4.2.2. The Data Result Analysis

When the starting point is confirmed, the nearest tourist attractions that conform to the tourists’ interests are searched. The tourist attraction cellular units that have a common edge have two common location points. The space C and clusters are generated, and there are four spatially adjacent clusters, in which the cluster C l ( 1 ) includes 4 tourist attractions, the cluster C l ( 2 ) includes 7 tourist attractions, the cluster C l ( 3 ) includes 6 tourist attractions, the cluster C l ( 4 ) includes 3 tourist attractions. As shown in the figures, the tourist attractions in the same cluster have a close spatial relationship and high intimacy; conversely, the attractions that are far apart have a poor spatial relationship and low intimacy. The adjacency relationship between the tourist attractions within one cluster or in different clusters has no correlation to the clusters, and tourist attractions in the same cluster might be adjacent or might not be adjacent; in addition, the tourist attractions in different clusters might be adjacent or might not be adjacent.

4.3. The Output Result and Analysis of the Tourist Attraction Recommendation Based on Weighted Collaborative Filtering Algorithm

The nearest historical tourists for the current tourist are searched. By calculating the recommendation degree of the nearest historical tourists, the algorithm outputs the priority vector of the tourist attraction classification and then confirms the precise tourist attraction according to the tourists’ needs and interests.

4.3.1. The Tourist Attraction Recommendation Result Based on the Weighted Collaborative Filtering Algorithm

Baidu is used to obtain the textual data of the 20 tourist attractions and the crawler technique is used to obtain the evaluation data, including the historical tourists’ feature attributes f ( k ) t o and the tourist attraction classification feature labels L ( i , j ) . The list of f ( k ) t o is used to set up the feature attribute matrix F M t o . The objective function G ( T ( h i ) , T ( c u ) ) values are calculated between the current tourist and historical tourists. The weighted coefficients are δ ( 1 ) t o = 0.01 , δ ( 2 ) t o = 0.1 , δ ( 3 ) t o = 1.0 , δ ( 4 ) t o = 1.0 , δ ( 5 ) t o = 1.0 . The data of the 10 nearest neighborhood historical tourists are selected, as shown in Table 3, including the feature attribute factors of the historical tourists and the current tourist, as well as the searching objective function G ( T ( h i ) , T ( c u ) ) values. Figure 8a–e show the fluctuating curves of the five factors f ( k ) t o confirmed by the current tourist T ( c u ) t o and the 10 nearest neighborhood historical tourists T ( h i ) t o . Figure 8f shows the fluctuating curve of the searching objective function G ( T ( h i ) , T ( c u ) ) in the code sequence by the current tourist T ( c u ) t o and the 10 nearest neighborhood historical tourists T ( h i ) t o .
The recommended tourist attraction classification is determined by the output recommendation degree function R ( j ) based on the selected tourist attraction classification feature labels L ( i , j ) of multiple historical tourists. The experiment chooses the topological vector of each tourist attraction classification word frequency L ( 1 ) t o : history, science, venue, memorial, museum; L ( 2 ) t o : sightseeing, flower, park, reenland, scenery; L ( 3 ) t o : swim, sports, playground, theme park, children animation; L ( 4 ) t o : shop, commercial complex, leisure, restaurant. The tourist attraction feature attribute label matrix L M is set up. Via the matrix L M , the tourist attraction feature attribute label word frequency matrix F q ( L M ) of the nearest neighborhood historical tourists is formed. Then, the recommendation degree R ( j ) is output, as shown in Table 4. Figure 9a–d show an example of tourist attraction classification label word frequency and its related recommendation degree R ( j ) in the nearest neighborhood historical tourists’ evaluation data. In each figure, the last red point of the curve represents the degree R ( j ) . Figure 9e presents a comparison of the different tourist attraction classification word frequencies and the degrees R ( j ) of the historical tourists. Figure 9f shows a comparison of each tourist attraction classification recommendation degree R ( j ) . The priority vector R = { T ( 2 ) , T ( 4 ) , T ( 1 ) , T ( 3 ) } is obtained. Regarding the sample tourist, when he obtains the vector R , he makes a decision that, in one day, he will visit two tourist attractions of the cluster T ( 2 ) , one tourist attraction of the cluster T ( 4 ) , and one tourist attraction of the cluster T ( 1 ) . The coordinates of the starting point S t are (113.658,34.774), shown as the white circle with the letter S in Figure 7b. The vector R t o = { O ( 2 ) , O ( 7 ) , O ( 16 ) , O ( 20 ) } is output.

4.3.2. The Analysis of the Data Results

The generated nearest neighborhood historical tourists have feature attribute factors that have a small discrepancy. As shown in Figure 8, the traveling costs of the neighborhood tourists have a very tiny discrepancy, and it is displayed as a fluctuating curve with waved weighted values between 0.9 and 1.1. This illustrates that the tendency value for the tour process in the tourist attributes ranges between CNY 90 yuan and 110 yuan.(CNY: Chinese monetary unit) Regarding the attribute of traveling time, the weighted values of the traveling time requirement for the neighborhood historical tourists vary from 0.12 to 0.18. This illustrates that the preferred traveling time of the neighborhood historical tourists is 1.2–1.8 h within 2 h. The preferred tourist attraction hot indexes of the neighborhood historical tourist vary from 0.36 to 0.65, centering at 0.50. This illustrates that the historical tourists’ preference for the popular tourist attractions is average, and the tourist attraction hot index is not the determined factor in choosing a tourist attractions. Regarding the selection of a tourist attraction destination, the values 0.50 and 0.75 appear frequently, i.e., the main purpose of traveling tends to be health care or vacation. Regarding the selection of the transportation mode, the current tourist and historical tourists all choose cycling, and the weighted value is 0.50. The searching objective function values calculated by the feature attribute factor range from 0.054 to 0.287, and the values are all relatively small. This illustrates that the attributes of the current tourist and historical tourists are similar. These historical tourists’ interests can reflect the current tourist’s interests.
The tourist attraction classification label word frequency of each neighborhood historical tourist fluctuates with different values, but they are generally close. The word label frequency for the first, the second and the fourth classification is relatively high; the average value is 20.9, 29.2, and 23.1, respectively. This illustrates that the neighborhood tourists’ preferences regarding these classifications are high. Thus, the preferred tourist attraction classifications of the neighborhood historical tourists are the park and greenland, venue and memorial, and leisure shopping, which will be recommended.

4.4. The Recommendation Result and Analysis on the Optimal Tour Route Based on the Precise Tourist Attraction Approach Vector Algorithm

The tourist attraction geospatial directed weighted graph D is output, as shown in Figure 10. The edges’ weight values are calculated and the global route weight iteration value G ( Z o ( R t o ( i ) , R t o ( j ) ) ) of each tour route and the optimal tour route are output.

4.4.1. The Output Result of the Optimal Tour Route Recommendation Based on the Precise Tourist Attraction Approach Vector Algorithm

The constraint factors ζ ( i ) ( R t o ( i ) , R t o ( j ) ) and parameters ε ( i ) ( R t o ( i ) , R t o ( j ) ) of each section Z o ( R t o ( i ) , R t o ( j ) ) in different transportation modes ζ ( 3 ) ( R t o ( i ) , R t o ( j ) ) , and the weight value g ( Z o ( R t o ( i ) , R t o ( j ) ) ) for each section Z o ( R t o ( i ) , R t o ( j ) ) , are calculated, as shown in Table 5. The τ ( R t o ( i ) , R t o ( j ) ) = 1 represents cycling, the τ ( R t o ( i ) , R t o ( j ) ) = 2 represents the use of a taxi and the τ ( R t o ( i ) , R t o ( j ) ) = 3 represents the use of the public bus. The weight value g ( Z o ( R t o ( i ) , R t o ( j ) ) ) for each section Z o ( R t o ( i ) , R t o ( j ) ) of each tour route in different transportation modes, as well as the global weight iteration value G ( Z o ( R t o ( i ) , R t o ( j ) ) ) are output. The five values represent the five sections’ weight for one tour route, shown in Table 6. Each tour route’s starting point and terminal point are both the S t . The representation method for each tour route is O ( 1 , 2 , 3 , 4 ) , representing the tour route S t O ( 1 ) O ( 2 ) O ( 3 ) O ( 4 ) S t . Figure 11, Figure 12 and Figure 13 shows the fluctuating tendency of the weight value g ( Z o ( R t o ( i ) , R t o ( j ) ) ) for each section Z o ( R t o ( i ) , R t o ( j ) ) . According to the searching process of the global optimal solution min G ( Z o ( R t o ( i ) , R t o ( j ) ) ) and the difference value min G ( Z o ( R t o ( i ) , R t o ( j ) ) ) , the formed maximum heap T is output, as shown in Figure 14. According to the result of Table 6 and Figure 14, the global optimal solution min G ( Z o ( R t o ( i ) , R t o ( j ) ) ) and the difference value min G ( Z o ( R t o ( i ) , R t o ( j ) ) ) and the optimal tour route are output.

4.4.2. The Data Result Analysis

In Figure 10, the edge weight reflects the generated motive benefit value when the tourists travel between two points. The smaller the edge weight is, the lower the traveling cost and the higher the tourists’ motive benefit values will be. The positive and the negative direction of the edge represents the travel direction. Since the geographic information and traffic information are not influenced by the direction, the weight values will not be influenced by the direction.
According to the calculation result, when the tourists choose cycling, the optimal tour routes are S t O ( 2 ) O ( 16 ) O ( 20 ) O ( 7 ) S t and S t O ( 7 ) O ( 20 ) O ( 16 ) O ( 2 ) S t , and the minimum global weight iteration value is 2.292. When the tourists choose to use a taxi, the optimal tour routes are S t O ( 2 ) O ( 16 ) O ( 7 ) O ( 20 ) S t and S t O ( 20 ) O ( 7 ) O ( 16 ) O ( 2 ) S t , and the minimum global weight iteration value is 7.915. When the tourists choose to use the public bus, the optimal tour routes are S t O ( 2 ) O ( 16 ) O ( 20 ) O ( 7 ) S t and S t O ( 7 ) O ( 20 ) O ( 16 ) O ( 2 ) S t , and the minimum global weight iteration value is 3.770. Figure 11, Figure 12 and Figure 13 show that, for different transportation modes, each tour route’s output neighborhood section weight fluctuates throughout the entire traveling process and reaches the maximum value at the terminal point. The fluctuating waves for each tour route have different shapes. When cycling, the weight value ranges from 0 to 3.5. When taking a taxi, the weight value ranges from 0 to 12.0. When using the public bus, the weight value ranges from 0 to 6.0.
In the maximum heap, the global weight iteration values appear at the last two elements in the last level. In Figure 14, the elements storing the global weight iteration values are shown in red and relate to the optimal tour routes under the related transportation modes.

4.5. The Comparison of the Algorithms

Three electronic maps are chosen as the control group. The electronic maps include the Baidu map, Gaode map and Tengxun map. The embedded algorithms are defined as the Baidu Algorithm (BA), Gaode Algorithm (GA), and Sougou Algorithm (SA), and the proposed algorithm is referred to as PA.

4.5.1. The Comparison Result of the Algorithm Data

The searching methods of the algorithms are different. The proposed algorithm searches for the shortest path by using the approach function points, while the traditional maps frequently search the main roads. Therefore, when generating the directed weighted graph, the weight g ( Z o ( R t o ( i ) , R t o ( j ) ) ) of the section Z o ( R t o ( i ) , R t o ( j ) ) differs from each other since the shortest distance factor ζ ( 1 ) ( R t o ( i ) , R t o ( j ) ) , road congestion index ζ ( 2 ) ( R t o ( i ) , R t o ( j ) ) , and the traveling fee ζ ( 3 ) ( R t o ( i ) , R t o ( j ) ) are different; thus, the same section Z o ( R t o ( i ) , R t o ( j ) ) will generate different weight values. This will cause a difference in the optimal tour route.
Under the same experimental conditions, the final optimal tour route, each route’s weight g ( Z o ( R t o ( i ) , R t o ( j ) ) ) of each section Z o ( R t o ( i ) , R t o ( j ) ) , the global optimal solution min G ( Z o ( R t o ( i ) , R t o ( j ) ) ) and the difference value min G ( Z o ( R t o ( i ) , R t o ( j ) ) ) , and the difference value of the global optimal solution min Δ G ( Z o ( R t o ( i ) , R t o ( j ) ) ) in different transportation modes τ ( R t o ( i ) , R t o ( j ) ) are output, as shown in Table 7. The bold value of the weight g indicates the global optimal solution min G . Figure 15a–c show the weight tendency of the optimal tour route in the different algorithms under the modes of τ = 1 , τ = 2 , and τ = 3 . Different colors relate to the tourist attractions on the route. Figure 15d–f show the global optimal solution differences min Δ G ( Z o ( R t o ( i ) , R t o ( j ) ) ) between the BA, GA, SA, and the PA under the modes of τ = 1 , τ = 2 , and τ = 3 , represented by the blue, orange, and green color, respectively. The minimum time expense t (min) for the travel process in the entire route is different for each algorithm. Table 8 shows a comparison of the traveling time of the optimal tour route for each algorithm. Figure 15g–i show the traveling time of the optimal tour route for each algorithm under different modes. The blue, orange, green, and gray colors represent BA, GA, SA, and PA, respectively.

4.5.2. The Data Result Analysis

For the three transportation modes, the neighborhood section weights of the optimal route in each algorithm fluctuate to different degrees. When the tourists choose cycling, the BA experiences the largest fluctuation, followed by the GA and SA; the PA has the smallest fluctuation. The weights vary from 0 to 3.5. When the tourists choose to use a taxi, the fluctuation is roughly the same, and the weights vary from 0 to 12.0. When the tourists choose to use the public bus, the BA and GA have relatively large fluctuations, followed by the SA; the PA has the smallest fluctuation. The weights vary from 0 to 6.0. In this aspect, the PA has better stability than the control group algorithms.
When the tourists choose cycling, the global optimal solutions of BA, GA, and SA are larger than the PA, in which the BA, GA, and SA are larger than the PA for 0.148, 0.218, and 0.178, respectively. When the tourists choose to use a taxi, the global optimal solutions of BA, GA, and SA are larger than the PA, in which the BA, GA, and SA are larger than the PA for 0.655, 0.430, and 0.530, respectively. When the tourists choose to use the public bus, the global optimal solutions of BA, GA, and SA are larger than the PA, in which the BA, GA, and SA are larger than the PA for 0.370, 0.400, and 0.280, respectively. Regarding the comparison data, the control group algorithms’ global optimal solution values are all larger than that of the proposed algorithm, which illustrates that the output global optimal solution value of the proposed algorithm is the smallest, and the tourists will spend the least traveling time and money to achieve the best motive benefit satisfaction.
When the tourists choose cycling, the GA requires the most traveling time, followed by the SA and BA; the lowest time is needed for the PA. When the tourists choose to use a taxi, the BA requires the most traveling time, followed by the GA and SA; the least time is required for the PA. When the tourists choose to use the public bus, the SA requires the most traveling time, followed by the GA; the least time is needed for the PA and BA. The PA is the least time-consuming, except when the tourist chooses to use the public bus, for which the PA is equally as time-consuming as the BA. On the whole, the proposed algorithm is the optimal one.

4.6. The Proposed Algorithm and Other Recommendation Algorithms’ Difference Analysis

The proposed recommendation algorithm (PRA) and other recommendation algorithms (ORA) display great discrepancies.
The first discrepancy is the different algorithm essence. The PRA’s essence is to search the tourist attractions that best match tourists’ interests, and then to search the optimal tour route, which is different from ORA. The ORA’s essence is to make a fuzzy recommendation based on historical data—for instance, recommendations based on users, based on objects, based on content, and based on association rules. Recommendations based on users recommend related users’ favorite objects. Recommendations based on objects recommend the user’s previous favorite objects. Recommendations based on content are based on users’ evaluation data. Recommendations based on association rules use probability to recommend objects. Different in essence, the PRA directly obtains tourists’ precise interest data and searches tourist attractions one by one; it then searches the tour route along the road;
The second discrepancy is the different objective. In order to increase the accuracy, the ORA needs to solve the problems associated with cold start, data sparsity, etc. However, the PRA does not aim to solve these problems. Its aim is to obtain the best match between tourists’ interests and the tourist attraction attributes, as well as to search the optimal tour route;
The third discrepancy is the different accuracy degree. The PRA is based on the interest data directly generated by the tourists; thus, the recommended tourist attractions are guaranteed to satisfy their interests. This is the advantage of the PRA. The ORA is still a fuzzy recommendation in essence, which can only increase the accuracy, but it is unable to thoroughly match tourists’ precise interests;
The fourth discrepancy is the different principles and algorithm process. Due to the differences in essence and objectives, the realization process of the PRA is different from that of the ORA. Its main steps include the searching of precise tourist attractions and the searching of the optimal tour route, which is more accurate than the ORA, since the ORA usually directly recommends a tour route previously visited by historical tourists. The mode has relatively low accuracy and cannot meet the individualized needs.

4.7. The Discussion on the Method Execution and Other Use Cases

The aim of this study is to propose an intelligent algorithm for a smart tourism recommendation system; thus, the proposed algorithm can automatically realize tourist attraction and tour route recommendations. Regarding the data required to execute the algorithm, the tourist attraction data, attribute data, city geospatial information data, traffic information data, and the website evaluation data are fixed, and they form the algorithm’s underlying database. Meanwhile, the tourists’ interest data and the starting point of the tour are two variables, and they are key factors to determine the recommended results. When an arbitrary variable changes, the recommended results will alter accordingly because, under the control of the inner algorithm, the initial variable changes will cause different intermediate results in the searching process. Based on the experiment’s basic data, other use cases are discussed as follows.
The first use case is the condition that the tourist’s interest data change, but the starting location does not change. A tourist tends to choose labels from the word frequency vectors L ( 3 ) t o : swim, sports, playground, theme park, children animation and L ( 4 ) t o : shop, commercial complex, leisure, restaurant. He chooses two tourist attractions from each classification, while the other two vectors L ( 1 ) t o and L ( 2 ) t o are labeled 0. Additionally, the starting location (113.658, 34.774) does not change. The final recommended tourist attractions and tour routes for the different transportation modes are S t O ( 12 ) O ( 20 ) O ( 17 ) O ( 18 ) S t and S t O ( 18 ) O ( 17 ) O ( 20 ) O ( 12 ) S t ;
The second use case is the condition that the tourist’s interest data do not change, but the starting location changes. Under this condition, the recommendation system outputs R = { T ( 2 ) , T ( 4 ) , T ( 1 ) , T ( 3 ) } , while the tourist’s interest data do not change; two tourist attractions of the cluster T ( 2 ) , one tourist attraction of the cluster T ( 4 ) and one tourist attraction of the cluster T ( 1 ) . If the starting point changes to location (113.644, 34.699), the recommended tourist attractions and tour routes for the different transportation modes are S t O ( 13 ) O ( 15 ) O ( 2 ) O ( 16 ) S t and S t O ( 16 ) O ( 2 ) O ( 15 ) O ( 13 ) S t ;
The third use case is the condition that both the tourists’ interest data and starting point change. A tourist tends to choose labels from the word frequency vectors L ( 1 ) t o : history, science, venue, memorial, museum; L ( 2 ) t o : sightseeing, flower, park, greenland, scenery. He chooses two tourist attractions from each classification, while the other two vectors L ( 3 ) t o and L ( 4 ) t o are labeled 0. The starting point changes to location (113.682, 34.749). The recommended tourist attractions and tour routes are S t O ( 1 ) O ( 16 ) O ( 4 ) O ( 10 ) S t and S t O ( 10 ) O ( 4 ) O ( 16 ) O ( 1 ) S t for the different transportation modes.
From the use cases, it can be concluded that when one variable changes, the finally output tourist attraction and tour route will change accordingly. This confirms that the proposed algorithm is feasible and practical for a smart recommendation system.

4.8. Conclusions on the Problems Solved by the Proposed Algorithm

As to Problem (1), previous research focused on the algorithm itself, such as the algorithm efficiency, but the aim of the proposed method is different. It focuses on searching the very tourist attractions and optimal tour route that best match tourists’ interests, and this is the key aspect when setting up the algorithm process; in addition, its essence is different from that of other recommendation methods. In Section 4.6, a comparison between the proposed method and other recommendation methods is presented based on the entire research. As to Problem (2) and Problem (3), Algorithm 1 is set up in Section 2.1.1, the Algorithm 2 in Section 2.1.2, Algorithm 3 in Section 2.2, and the searching algorithm in Section 3 to solve the problems of precisely matching the tourist attractions to the tourists’ interests, searching the tourist attractions and searching the tour routes. The experiment chooses the city of Zhengzhou as an example and extracts the basic data of its tourist attractions, traffic information data, and geospatial data. In Section 4.3, the recommendation degree is calculated from the chosen interest labels and the tourist attraction classification priority sequence is recommended. According to the tour starting point, the four optimal tourist attractions that best match tourists’ interests are obtained. This experiment proves that the tourist attractions recommended by the proposed algorithm completely match tourists’ interests with optimal feature attributes, matching degree, and locations. In Section 4.4 and Section 4.5, the optimal tour routes for different transportation modes are output, which proves that they have advantages regarding the motive benefit, time consumption, etc. Moreover, Problem (2) and Problem (3) are well solved. Regarding the Problem (4), the recommended tour routes are based on the searching algorithm developed in Section 3, and through Section 4.4 and Section 4.5, this method is proven to have high accuracy, as it is directly based on tourists’ individualized interest data, contrasting the traditional recommendation mode with the fuzzy method in which historical tour routes are recommended to the tourists. Problem (4) is also well solved.

5. Conclusions

The current tourist attraction and tour route recommendation system experiences problems. Aimed at addressing these problems, this paper proposes an algorithm. The tourist attraction cellular generating space and the tourist attraction clustering model are set up. The aim is to recommend the optimal tourist attractions for the tourists. This paper also proposes a tourist attraction recommendation algorithm based on the weighted collaborative filtering algorithm. It also involves an optimal tour route recommendation model based on the precise tourist attractions using different transportation modes. This model uses the function approach to search for the shortest path. The proposed algorithm can reduce the tourists’ traveling time and costs. When the tourists choose certain modes, the output optimal routes will be different. An experiment is performed to verify the feasibility and advantages of the proposed algorithm.
This paper does not focus on the problem of cold start, data sparsity, etc. The main purpose is to study the precise matching and precise recommendations rather than to improve the algorithm’s efficiency. Another innovation of the paper is the proposed function vector approach algorithm, which is used to search for the shortest path and finally reduce the tourists’ traveling time and costs.
This algorithm could be used as an embedded algorithm for smart tourism recommendation system that is developed, managed, and operated by the tourism sectors and government. Then, the system is ultimately used by tourists on the website. When tourists use the system website, they can input the basic interests and needs to the system, and then it will directly recommends optimal tourist attractions and tour routes for tourists, which is automatic and intelligent. Though the proposed algorithm has advantages, it still has some limitations, which should be further studied in the future. First, the proposed algorithm is based on website big data: the accuracy of the big data mining should be improved, which will help to make the labels more accurate and better match the tourists’ interests, improving the recommendation accuracy. Second, the study area of the proposed algorithm is the downtown area of the city, and the transportation modes are limited. In a future study, the study area could be expanded to the subordinate counties and districts of the city, and the transportation modes could be diversified.

Author Contributions

Conceptualization, Xiao Zhou, Jian Peng, Jiangpeng Tian, and Mingzhan Su; methodology, Xiao Zhou and Jiangpeng Tian; validation and formal analysis, Mingzhan Su and Jiangpeng Tian; investigation, data resources and data processing, Xiao Zhou, Mingzhan Su, and Jiangpeng Tian; writing—original draft preparation, Xiao Zhou, Jian Peng; writing—review and editing, Xiao Zhou, Jian Peng, Jiangpeng Tian, and Mingzhan Su; visualization, Mingzhan Su; supervision, Jian Peng and Xiao Zhou; project administration and funding acquisition, Jiangpeng Tian; All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the Military “Double Key” construction project(2021KY05), the Key research and development program of Sichuan province(2020YFG0308), the Major research and development plan(2018GZDZX0010) and the program of Sichuan tourism development research center, key research base of Sichuan federation of sciences association (SCLY-2020-LY20-07).

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

The data presented in this study are available from the author upon reasonable request.

Acknowledgments

The authors would like to thank the postdoctoral innovation practice base of Sichuan province of Leshan vocational and technical college and Computer science postdoctoral mobile station of Sichuan University. Meanwhile, we thank the editors and reviewers for their valuable comments.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Kato, Y.; Yamamoto, K. A Sightseeing Spot Recommendation System That Takes into Account the Visiting Frequency of Users. ISPRS Int. J. Geo Inf. 2020, 9, 411. [Google Scholar] [CrossRef]
  2. Ullah, F.; Shirowzhan, S.; Sepasgozar, S. Smart digital marketing capabilities for sustainable property development: A case of Malaysia. Sustainability 2020, 12, 5402. [Google Scholar]
  3. Lee, P.; Hunter, W.C.; Chung, N. Smart tourism city: Developments and transformations. Sustainability 2020, 12, 3958. [Google Scholar] [CrossRef]
  4. Mou, J.; Luo, G.; Xiong, Z. Application of Collaborative Filtering Algorithm to Tourist Attraction Recommendation. Softw. Guide 2017, 16, 186–188. [Google Scholar]
  5. Santos, F.; Almeida, A.; Martins, C.; Goncalves, R.; Martins, J. Using POI Functionality and Accessibility Levels for Delivering Personalized Tourism Recommendations. Comput. Environ. Urban Syst. 2019, 77, 101173. [Google Scholar] [CrossRef]
  6. Cui, Y.; Huang, C.; Wang, Y. Research on personalized tourist attraction recommendation based on tag and collaborative filtering. In Proceedings of the 2019 China Control and Decision Making Conference, Nanchang, China, 6 June 2019; pp. 381–385. [Google Scholar]
  7. Young, C.; Young, U.R.; Kyeong, K. A Recommender System based on Personal Constraints for Smart Tourism City. Asia Pac. J. Tour. Res. 2021, 26, 440–453. [Google Scholar]
  8. Li, G.; Zhu, T.; Yuan, T.; Hua, J.; Zhang, H. Recommendation Model of Tourist Attractions by Fusing Hierarchical Sampling and Collaborative Filtering. J. Data Acquis. Process. 2019, 34, 566–576. [Google Scholar]
  9. Zhou, Y.; Hu, C.; Xiong, H.; Li, L.; Wei, X. Collaborative filtering recommendation algorithm based on label of tourist spots and user preference. In Proceedings of the 2017 2nd International Conference on Machinery, Electronics and Control Simulation, Taiyuan, China, 24 June 2017; pp. 58–65. [Google Scholar]
  10. Nilashi, M.; Ibrahim, O.; Bagherifard, K. A Recommender System based on Collaborative Filtering Using Ontology and Dimensionality Reduction Techniques. Expert Syst. Appl. 2018, 92, 507–520. [Google Scholar] [CrossRef]
  11. Shi, R. Design and Implementation of Travel Recommendation System Based on Improved Collaborative Filtering Algorithm. Master’s Thesis, Hebei University of Engineering, Handan, China, 2020; p. 12. [Google Scholar]
  12. Chen, S.; Tian, J. Research on Tourist Attraction Recommendation model based on Collaborative Filtering Algorithm. Mod. Electron. Tech. 2020, 43, 132–135. [Google Scholar]
  13. Zhu, T. Research on Tourist Attractions Recommendation System Based on Deep Collaborative Filtering and Multimodal Analysis. Master’s Thesis, East China Jiaotong University, Nanchang, China, 2019; p. 5. [Google Scholar]
  14. Li, Y. Research on the Improvement of Collaborative Filtering Algorithm Based on Tourism Recommendation. Master’s Thesis, Qiangdao University of Science and Technology, Qingdao, China, 2019; p. 4. [Google Scholar]
  15. Liu, B. Research on Tourist Attractions Recommendation System Based on Hierarchical Sampling Statistics and Collaborative Filtering. Master’s Thesis, East China Jiaotong University, Nanchang, China, 2018; p. 6. [Google Scholar]
  16. Chen, J.; Gu, T.; Chang, L.; Bin, C.; Liang, C. A Tourist Group Recommendation Method Combining Collaborative Filtering and User Preferences. CAAI Trans. Intell. Syst. 2018, 13, 999–1005. [Google Scholar]
  17. Esmaeili, L.; Mardani, S.; Golpayegani, S.; Madar, Z. A novel tourism recommender system in the context of social commerce. Expert Syst. Appl. 2020, 149, 113301. [Google Scholar] [CrossRef]
  18. Shen, J.; Deng, C.; Gao, X. Attraction recommendation: Towards personalized tourism via collective intelligence. Neurocomputing 2016, 173, 789–798. [Google Scholar] [CrossRef]
  19. Sasaki, R.; Yamamoto, K. A Sightseeing Support System Using Augmented Reality and Pictograms within Urban Tourist Areas in Japan. ISPRS Int. J. Geo Inf. 2019, 8, 381. [Google Scholar] [CrossRef] [Green Version]
  20. Katayama, S.; Isogawa, N.; Obuchi, M.; Nishiyama, Y.; Okoshi, T.; Yonezawa, T.; Nakazawa, H.; Takashio, K.; Tokuda, H. SpoTrip: Evaluation of Information Provision System for Hidden Spots to Promote the Increase Repeat Travellers. IEICE Tech. Rep. 2017, 116, 185–192. [Google Scholar]
  21. Kang, S.; Lee, G.; Kim, J.; Park, D. Identifying the Spatial Structure of the Tourist Attraction System in South Korea Using GIS and Network Analysis: An Application of Anchor-Point Theory. J. Destin. Mark. Manag. 2018, 9, 358–370. [Google Scholar] [CrossRef]
  22. Uchida, K.; Izumi, R.; Kunieda, T.; Yamada, S.; Yonetani, K.; Gotoda, A.; Yaegashi, M. Development “KadaSola”: A Sightseeing Support System for Long Stay. In Proceedings of the 81st Annual Meeting of the Information Processing Society of Japan, Fukuoka, Japan, 14–16 March 2019; pp. 841–842. [Google Scholar]
  23. Mukasa, Y.; Yamamoto, K. A Sightseeing Spot Recommendation System for Urban Smart Tourism Based on Users’ Priority Conditions. J. Civ. Eng. Archit. 2019, 13, 622–640. [Google Scholar] [CrossRef] [Green Version]
  24. Aoike, T.; Ho, B.; Hara, T.; Ota, J.; Kurata, Y. Utilising crowd information of tourist spots in an interactive tour recommender system. In Information and Communication Technologies in Tourism; Pesonen, J., Neidhardt, J., Eds.; Springer: Berlin/Heidelberg, Germany, 2019; pp. 27–39. [Google Scholar]
  25. Mizutani, Y.; Yamamoto, K. A Sightseeing Spot Recommendation System That Takes into Account the Change in Circumstances of Users. ISPRS Int. J. Geo Inf. 2017, 6, 303. [Google Scholar] [CrossRef] [Green Version]
  26. Zhou, J.; Yamamoto, K. Development of the System to Support Tourists’ Excursion Behavior Using Augmented Reality. Int. J. Adv. Comput. Sci. Appl. 2016, 7, 197–209. [Google Scholar] [CrossRef] [Green Version]
  27. Noguera, J.M.; Barranco, M.J.; Segura, R.J.; Martínez, L. A Mobile 3D-GIS Hybrid Recommender System for Tourism. Inf. Sci. 2012, 215, 37–52. [Google Scholar] [CrossRef]
  28. Braunhofer, M.; Elahi, M.; Ricci, F. Context-Aware Places of Interest Recommendations for Mobile Users, Design, User Experience, and Usability. Theory Methods Tools Pract. Lect. Notes Comput. Sci. 2011, 6769, 531–540. [Google Scholar]
  29. Ying, J.J.; Lu, E.H.; Kuo, W.; Tseng, V.S. Urban Point-of-interest Recommendation by Mining User Check-in Behaviors. In Proceedings of the ACM SIGKDD International Workshop on Urban Computing, Beijing, China, 12–16 August 2012; pp. 63–70. [Google Scholar]
  30. Ikeda, T.; Yamamoto, K. Development of Social Recommendation GIS Tourist Spots. Int. J. Adv. Comput. Sci. Appl. 2014, 5, 8–21. [Google Scholar] [CrossRef] [Green Version]
  31. Nguyen, L.V.; Jung, J.J. Crowdsourcing Platform for Collecting Cognitive Feedbacks from Users: A Case Study on Movie Recommender System. In Springer Series in Reliability Engineering; Springer International Publishing: Berlin/Heidelberg, Germany, 2020; pp. 139–150. [Google Scholar]
  32. Nguyen, L.V.; Hong, M.S.; Jung, J.J.; Sohn, B.S. Cognitive Similarity-Based Collaborative Filtering Recommendation System. Appl. Sci. 2020, 10, 4183. [Google Scholar] [CrossRef]
  33. Meng, S.; Dou, W.; Zhang, X.; Chen, J. KASR: A Keyword-aware Service Recommendation Method on Map reduce for Big Data applications. IEEE Trans. Parallel Distrib. Syst. 2014, 25, 3221–3231. [Google Scholar] [CrossRef]
  34. Thakkar, P.; Varma, K.; Ukani, V.; Mankad, S.; Tanwar, S. Combining User-based and Item-based Collaborative Filtering using Machine Learning. Inf. Commun. Technol. Intell. Syst. 2019, 15, 173–180. [Google Scholar]
  35. Liu, H.; Hu, Z.; Mian, A.; Tian, H.; Zhu, X. A New User Similarity Model to Improve the Accuracy of Collaborative Filtering. Knowl.-Based Syst. 2014, 56, 156–166. [Google Scholar] [CrossRef] [Green Version]
  36. Bao, J.; Zheng, Y.; Wilkie, D.; Mokbel, M. Recommendations in location-based social networks: A survey. GeoInformatica 2015, 19, 525–565. [Google Scholar] [CrossRef]
  37. Zhang, Y.; Shi, Z.; Zuo, W.; Yue, L.; Liang, S.; Li, X.J.N. Joint Personalized Markov Chains with Social Network Embedding for Cold-Start Recommendation. Neurocomputing 2019, 386, 208–220. [Google Scholar] [CrossRef]
  38. Xu, M.; Liu, S. Semantic-enhanced and Context-aware Hybrid Collaborative Filtering for Event Recommendation in Event-based Social Networks. IEEE Access 2019, 7, 17493–17502. [Google Scholar] [CrossRef]
  39. Li, A.; She, X. The Principle, Algorithm and Application of Data Mining, 2nd ed.; Xidian University Press: Xi’an, China, 2012; p. 220. [Google Scholar]
  40. Zhou, X.; Xu, C.; Kimmons, B. Detecting tourism destinations using scalable geospatial analysis based on cloud computing platform. Comput. Environ. Urban Syst. 2015, 54, 144–153. [Google Scholar] [CrossRef]
  41. Chen, Y.-C.; Huang, H.-H.; Chiu, S.-M.; Lee, C. Joint Promotion Partner Recommendation Systems Using Data from Location-Based Social Networks. ISPRS Int. J. Geo-Inf. 2021, 10, 57. [Google Scholar] [CrossRef]
  42. Renjith, S.; Sreekumar, A.; Jathavedan, M. An extensive study on the evolution of context-aware personalized travel recommender systems. Inform. Process. Manag. 2020, 57, 102078. [Google Scholar] [CrossRef]
  43. Feng, S.; Li, X.; Zeng, Y.; Chee, Y.M. Personalized ranking metric embedding for next new poi recommendation. In Proceedings of the Twenty-Fourth International Joint Conference on Artificial Intelligence, Buenos Aires, Argentina, 25–31 July 2015; pp. 2069–2075. [Google Scholar]
  44. Xie, M.; Yin, H.; Wang, H.; Xu, F.; Chen, W.; Wang, S. Learning graph-based poi embedding for location-based recommendation. In Proceedings of the 25th ACM International on Conference on Information and Knowledge Management, Indianapolis, IN, USA, 24–28 October 2016; pp. 15–24. [Google Scholar]
  45. Zhao, S.; Zhao, T.; King, I.; Lyu, M.R. Geo-teaser: Geo-temporal sequential embedding rank for point-of-interest recom-mendation. In Proceedings of the 26th International Conference on World Wide Web Companion, Geneva, Switzerland, 3–7 April 2017; pp. 153–162. [Google Scholar]
  46. Memon, I.; Chen, L.; Majid, A.; Lv, M.; Hussain, I.; Chen, G. Travel recommendation using geo-tagged photos in social media for tourist. Kluw. Commun. 2015, 80, 1347–1362. [Google Scholar] [CrossRef]
Figure 1. The sequence of the paper content.
Figure 1. The sequence of the paper content.
Ijgi 10 00628 g001
Figure 2. The process of forming the space C based on O ( k ) and P ( v ) . (af) illustrate the process of forming the cellular unit C ( 1 ) , and (g,h) illustrate the topological process of forming the cellular space C based on the cellular unit C ( 1 ) .
Figure 2. The process of forming the space C based on O ( k ) and P ( v ) . (af) illustrate the process of forming the cellular unit C ( 1 ) , and (g,h) illustrate the topological process of forming the cellular space C based on the cellular unit C ( 1 ) .
Ijgi 10 00628 g002
Figure 3. An example for Algorithm 2. (a) is the sample distribution, (b) shows the d samples, and the (c) shows the clustering sample.
Figure 3. An example for Algorithm 2. (a) is the sample distribution, (b) shows the d samples, and the (c) shows the clustering sample.
Ijgi 10 00628 g003
Figure 4. An example for Algorithm 3. (ac) shows the searching process of points a, b, and c.
Figure 4. An example for Algorithm 3. (ac) shows the searching process of points a, b, and c.
Ijgi 10 00628 g004
Figure 5. The point set spatial distribution of the tourist attraction approaching vector searching algorithm and the dynamic graph of the searching vectors. (a) shows the relationship between the connecting lines and the city roads. (b) shows the intersection point set. (c) is the abstracted intersection point set’s geospatial distribution. (d) shows the searching direction of the approaching vector.
Figure 5. The point set spatial distribution of the tourist attraction approaching vector searching algorithm and the dynamic graph of the searching vectors. (a) shows the relationship between the connecting lines and the city roads. (b) shows the intersection point set. (c) is the abstracted intersection point set’s geospatial distribution. (d) shows the searching direction of the approaching vector.
Ijgi 10 00628 g005
Figure 6. The distribution of tourist attraction cellular core set and road intersection point set and their overlying map. (a,b) show the distribution of tourist attractions and road intersections. (c) shows all the points.
Figure 6. The distribution of tourist attraction cellular core set and road intersection point set and their overlying map. (a,b) show the distribution of tourist attractions and road intersections. (c) shows all the points.
Ijgi 10 00628 g006
Figure 7. The tourist attraction cellular space C and cluster distribution generated by the algorithm. (a) shows the basic structure of space C and clusters. (b) shows the cluster results.
Figure 7. The tourist attraction cellular space C and cluster distribution generated by the algorithm. (a) shows the basic structure of space C and clusters. (b) shows the cluster results.
Ijgi 10 00628 g007
Figure 8. The fluctuating curves of the weighted feature attribute factors f ( k ) t o and the searching objective function G ( T ( h i ) , T ( c u ) ) . (af) represent the six column results in Table 4.
Figure 8. The fluctuating curves of the weighted feature attribute factors f ( k ) t o and the searching objective function G ( T ( h i ) , T ( c u ) ) . (af) represent the six column results in Table 4.
Ijgi 10 00628 g008
Figure 9. The fluctuating curves of the tourist attraction classification label word frequency and a comparison of the tourist attraction classification recommendation degree. (ad) represent the six column results in Table 5. (e) shows the four curves together. (f) shows the comparison of R ( j ) .
Figure 9. The fluctuating curves of the tourist attraction classification label word frequency and a comparison of the tourist attraction classification recommendation degree. (ad) represent the six column results in Table 5. (e) shows the four curves together. (f) shows the comparison of R ( j ) .
Ijgi 10 00628 g009
Figure 10. The tourist attraction geographic space directed weighted graph D .
Figure 10. The tourist attraction geographic space directed weighted graph D .
Ijgi 10 00628 g010
Figure 11. The increasing tendency of the weight g ( Z o ( R t o ( i ) , R t o ( j ) ) ) of each tour route tourist attraction adjacency section Z o ( R t o ( i ) , R t o ( j ) ) under the condition of transportation mode of cycling. The figure (ax) represent the No.1~No.24 tour routes shown in the Table 6 under the condition of transportation mode of cycling τ = 1 .
Figure 11. The increasing tendency of the weight g ( Z o ( R t o ( i ) , R t o ( j ) ) ) of each tour route tourist attraction adjacency section Z o ( R t o ( i ) , R t o ( j ) ) under the condition of transportation mode of cycling. The figure (ax) represent the No.1~No.24 tour routes shown in the Table 6 under the condition of transportation mode of cycling τ = 1 .
Ijgi 10 00628 g011
Figure 12. The increasing tendency of the weight g ( Z o ( R t o ( i ) , R t o ( j ) ) ) of each tour route tourist attraction adjacency section Z o ( R t o ( i ) , R t o ( j ) ) under the condition of transportation mode of using a taxi. The figure (ax) represent the No.1~No.24 tour routes shown in the Table 6 under the condition of transportation mode of using a taxi τ = 2 .
Figure 12. The increasing tendency of the weight g ( Z o ( R t o ( i ) , R t o ( j ) ) ) of each tour route tourist attraction adjacency section Z o ( R t o ( i ) , R t o ( j ) ) under the condition of transportation mode of using a taxi. The figure (ax) represent the No.1~No.24 tour routes shown in the Table 6 under the condition of transportation mode of using a taxi τ = 2 .
Ijgi 10 00628 g012
Figure 13. The increasing tendency of the weight g ( Z o ( R t o ( i ) , R t o ( j ) ) ) of each tour route tourist attraction adjacency section Z o ( R t o ( i ) , R t o ( j ) ) under the condition of transportation mode of using the public bus. The figure (ax) represent the No.1~No.24 tour routes shown in the Table 6 under the condition of transportation mode of using the public bus τ = 3 .
Figure 13. The increasing tendency of the weight g ( Z o ( R t o ( i ) , R t o ( j ) ) ) of each tour route tourist attraction adjacency section Z o ( R t o ( i ) , R t o ( j ) ) under the condition of transportation mode of using the public bus. The figure (ax) represent the No.1~No.24 tour routes shown in the Table 6 under the condition of transportation mode of using the public bus τ = 3 .
Ijgi 10 00628 g013
Figure 14. The maximum complete binary tree based on the global weight iteration value G ( Z o ( R t o ( i ) , R t o ( j ) ) ) . (ac) show the maximum heap result in different transportation modes.
Figure 14. The maximum complete binary tree based on the global weight iteration value G ( Z o ( R t o ( i ) , R t o ( j ) ) ) . (ac) show the maximum heap result in different transportation modes.
Ijgi 10 00628 g014
Figure 15. The weight fluctuation for each algorithm and a comparison of the global optimal solution difference values under the different transportation modes. (ac) show the weight tendency of the optimal tour route in different algorithms under the modes. (df) show the global optimal solution differences in different algorithms under the modes. (gi) show the ferry traveling time of the optimal tour route for each algorithm under different modes.
Figure 15. The weight fluctuation for each algorithm and a comparison of the global optimal solution difference values under the different transportation modes. (ac) show the weight tendency of the optimal tour route in different algorithms under the modes. (df) show the global optimal solution differences in different algorithms under the modes. (gi) show the ferry traveling time of the optimal tour route for each algorithm under different modes.
Ijgi 10 00628 g015aIjgi 10 00628 g015b
Table 1. The coordinate data of the tourist attraction cellular unit x ( k ) ~ O ( k ) and location points P ( v ) .
Table 1. The coordinate data of the tourist attraction cellular unit x ( k ) ~ O ( k ) and location points P ( v ) .
l , B l , B l , B l , B
O ( 1 ) 113.673, 34.757 O ( 15 ) 113.627, 34.745 P ( 9 ) 113.603, 34.763 P ( 23 ) 113.682, 34.826
O ( 2 ) 113.637, 34.758 O ( 16 ) 113.663, 34.761 P ( 10 ) 113.603, 34.742 P ( 24 ) 113.682, 34.786
O ( 3 ) 113.607, 34.752 O ( 17 ) 113.690, 34.698 P ( 11 ) 113.603, 34.736 P ( 25 ) 113.682, 34.763
O ( 4 ) 113.695, 34.767 O ( 18 ) 113.613, 34.762 P ( 12 ) 113.631, 34.763 P ( 26 ) 113.682, 34.756
O ( 5 ) 113.671, 34.757 O ( 19 ) 113.615, 34.715 P ( 13 ) 113.629, 34.757 P ( 27 ) 113.682, 34.752
O ( 6 ) 113.609, 34.763 O ( 20 ) 113.681, 34.784 P ( 14 ) 113.629, 34.742 P ( 28 ) 113.682, 34.737
O ( 7 ) 113.678, 34.790 P ( 1 ) 113.568, 34.826 P ( 15 ) 113.629, 34.736 P ( 29 ) 113.703, 34.737
O ( 8 ) 113.627, 34.746 P ( 2 ) 113.568, 34.808 P ( 16 ) 113.629, 34.695 P ( 30 ) 113.703, 34.695
O ( 9 ) 113.685, 34.789 P ( 3 ) 113.568, 34.794 P ( 17 ) 113.649, 34.754 P ( 31 ) 113.726, 34.826
O ( 10 ) 113.729, 34.723 P ( 4 ) 113.568, 34.736 P ( 18 ) 113.656, 34.737 P ( 32 ) 113.726, 34.756
O ( 11 ) 113.720, 34.730 P ( 5 ) 113.568, 34.695 P ( 19 ) 113.665, 34.695 P ( 33 ) 113.726, 34.737
O ( 12 ) 113.618, 34.781 P ( 6 ) 113.592, 34.772 P ( 20 ) 113.667, 34.826 P ( 34 ) 113.726, 34.695
O ( 13 ) 113.643, 34.717 P ( 7 ) 113.585, 34.736 P ( 21 ) 113.667, 34.774 P ( 35 ) 113.667, 34.787
O ( 14 ) 113.589, 34.779 P ( 8 ) 113.594, 34.779 P ( 22 ) 113.667, 34.756
Table 2. The Closed list C l ( i ) , which stores the structural location point P ( v ) C ( k ) of the unit C ( k ) with the cellular core O ( k ) m .
Table 2. The Closed list C l ( i ) , which stores the structural location point P ( v ) C ( k ) of the unit C ( k ) with the cellular core O ( k ) m .
P ( v ) C ( k ) P ( v ) C ( k )
O ( 1 ) P ( 17 ) P ( 22 ) P ( 26 ) P ( 27 ) O ( 11 ) P ( 29 ) P ( 30 ) P ( 33 )
O ( 2 ) P ( 13 ) P ( 14 ) P ( 15 ) P ( 17 ) P ( 18 ) O ( 12 ) P ( 1 ) P ( 2 ) P ( 8 ) P ( 12 ) P ( 20 ) P ( 21 )
O ( 3 ) P ( 6 ) P ( 7 ) P ( 9 ) P ( 10 ) P ( 11 ) O ( 13 ) P ( 15 ) P ( 16 ) P ( 18 ) P ( 19 )
O ( 4 ) P ( 25 ) P ( 26 ) P ( 27 ) P ( 28 ) P ( 29 ) P ( 32 ) P ( 33 ) O ( 14 ) P ( 2 ) P ( 3 ) P ( 6 ) P ( 8 )
O ( 5 ) P ( 17 ) P ( 18 ) P ( 27 ) P ( 28 ) O ( 15 ) P ( 10 ) P ( 11 ) P ( 14 ) P ( 15 )
O ( 6 ) P ( 6 ) P ( 8 ) P ( 9 ) O ( 16 ) P ( 12 ) P ( 13 ) P ( 17 ) P ( 21 ) P ( 22 )
O ( 7 ) P ( 20 ) P ( 21 ) P ( 9 ) P ( 23 ) P ( 24 ) O ( 17 ) P ( 18 ) P ( 19 ) P ( 28 ) P ( 29 ) P ( 30 )
O ( 8 ) P ( 9 ) P ( 10 ) P ( 13 ) P ( 14 ) O ( 18 ) P ( 8 ) P ( 9 ) P ( 12 ) P ( 13 )
O ( 9 ) P ( 23 ) P ( 24 ) P ( 25 ) P ( 31 ) P ( 32 ) O ( 19 ) P ( 4 ) P ( 5 ) P ( 7 ) P ( 11 ) P ( 15 ) P ( 16 )
O ( 10 ) P ( 30 ) P ( 33 ) P ( 34 ) O ( 20 ) P ( 21 ) P ( 22 ) P ( 24 ) P ( 25 ) P ( 26 ) P ( 35 )
Table 3. The feature attribute factors f ( k ) t o of the historical tourists T ( h i ) and the current tourist T ( c u ) , as well as the searching objective function G ( T ( h i ) , T ( c u ) ) values.
Table 3. The feature attribute factors f ( k ) t o of the historical tourists T ( h i ) and the current tourist T ( c u ) , as well as the searching objective function G ( T ( h i ) , T ( c u ) ) values.
f ( 1 ) t o f ( 2 ) t o f ( 3 ) t o f ( 4 ) t o f ( 5 ) t o G ( T ( h i ) , T ( c u ) )
T ( c u ) 100.001.500.500.750.500
T ( h i , 1 ) 90.001.200.380.750.500.159
T ( h i , 2 ) 100.001.800.650.750.500.153
T ( h i , 3 ) 100.001.500.360.500.500.287
T ( h i , 4 ) 95.001.600.450.500.500.260
T ( h i , 5 ) 90.001.800.600.750.500.144
T ( h i , 6 ) 95.001.500.600.500.500.274
T ( h i , 7 ) 110.001.500.450.500.500.274
T ( h i , 8 ) 95.001.300.500.750.500.054
T ( h i , 9 ) 100.001.600.550.500.500.255
T ( h i , 10 ) 95.001.800.500.750.500.058
Table 4. The statistical data and R ( j ) of tourist attraction classification topological label vector for neighborhood historical tourists.
Table 4. The statistical data and R ( j ) of tourist attraction classification topological label vector for neighborhood historical tourists.
n ( T N ( F q ( L M ) ( v i , 1 ) ) ) n ( T N ( F q ( L M ) ( v i , 2 ) ) ) n ( T N ( F q ( L M ) ( v i , 3 ) ) ) n ( T N ( F q ( L M ) ( v i , 4 ) ) )
T ( h i , 1 ) 2343516
T ( h i , 2 ) 3126811
T ( h i , 3 ) 1833125
T ( h i , 4 ) 1939320
T ( h i , 5 ) 2522729
T ( h i , 6 ) 2116231
T ( h i , 7 ) 1837119
T ( h i , 8 ) 2029827
T ( h i , 9 ) 1228835
T ( h i , 10 ) 2219328
R ( j ) 20.929.25.623.1
Table 5. The constraint factor ζ ( i ) ( R t o ( i ) , R t o ( j ) ) , correction parameter ε ( i ) ( R t o ( i ) , R t o ( j ) ) , and weight value g ( Z o ( R t o ( i ) , R t o ( j ) ) ) of each tourist attraction adjacency section Z o ( R t o ( i ) , R t o ( j ) ) in different transportation modes τ ( R t o ( i ) , R t o ( j ) ) .
Table 5. The constraint factor ζ ( i ) ( R t o ( i ) , R t o ( j ) ) , correction parameter ε ( i ) ( R t o ( i ) , R t o ( j ) ) , and weight value g ( Z o ( R t o ( i ) , R t o ( j ) ) ) of each tourist attraction adjacency section Z o ( R t o ( i ) , R t o ( j ) ) in different transportation modes τ ( R t o ( i ) , R t o ( j ) ) .
τ ( i ) τ = 1 τ = 2 τ = 3 τ = 1 τ = 2 τ = 3
ζ ( i ) ζ ( 1 ) ζ ( 2 ) ζ ( 3 ) ζ ( 1 ) ζ ( 2 ) ζ ( 3 ) ζ ( 1 ) ζ ( 2 ) ζ ( 3 ) g
ε ( i ) 0.101.000.100.101.000.100.101.000.10
S t , O ( 2 ) 5.5001.508.100.2515.109.200.251.000.7002.5701.270
S t , O ( 7 ) 1.1001.502.300.346.451.200.341.000.2601.2150.560
S t , O ( 16 ) 3.1001.505.400.3911.105.900.391.000.4602.0401.080
S t , O ( 20 ) 2.1002.002.300.356.452.200.351.000.4101.2250.670
O ( 2 ) , O ( 7 ) 7.0002.508.600.3015.909.500.301.000.9502.7501.350
O ( 2 ) , O ( 16 ) 3.8001.504.100.239.104.000.231.000.5301.5500.730
O ( 2 ) , O ( 20 ) 7.3003.008.400.4015.608.700.401.001.0302.8001.370
O ( 7 ) , O ( 16 ) 3.3002.004.200.369.303.800.361.000.5301.7100.840
O ( 7 ) , O ( 20 ) 0.9201.501.300.136.001.000.131.000.2420.8600.330
O ( 16 ) , O ( 20 ) 3.6002.004.600.379.904.100.371.000.5601.8200.880
Table 6. Tour route section weight and global weight iteration value in different transportation modes.
Table 6. Tour route section weight and global weight iteration value in different transportation modes.
τ ( i ) τ = 1 τ = 2 τ = 3
ζ ( i ) g G g G g G
1 O ( 2 , 7 , 16 , 20 ) 0.7, 0.95, 0.53, 0.56, 0.413.152.57, 2.75, 1.71, 1.82, 1.22510.0751.27, 1.35, 0.84, 0.88, 0.675.01
2 O ( 2 , 7 , 20 , 16 ) 0.7, 0.95, 0.242, 0.56, 0.462.9122.57, 2.75, 0.86, 1.82, 2.0410.0401.27, 1.35, 0.33, 0.88, 1.084.91
3 O ( 2 , 16 , 7 , 20 ) 0.7, 0.53, 0.53, 0.242, 0.412.4122.57, 1.55, 1.71, 0.86, 1.2257.9151.27, 0.73, 0.84, 0.33, 0.673.84
4 O ( 2 , 16 , 20 , 7 ) 0.7, 0.53, 0.56, 0.242, 0.262.2922.57, 1.55, 1.82, 0.86, 1.2158.0151.27, 0.73, 0.88, 0.33, 0.563.77
5 O ( 2 , 20 , 7 , 16 ) 0.7, 1.03, 0.242, 0.53, 0.462.9622.57, 2.8, 0.86, 1.71, 2.049.9801.27, 1.37, 0.33, 0.84, 1.084.89
6 O ( 2 , 20 , 16 , 7 ) 0.7, 1.03, 0.56, 0.53, 0.263.0802.57, 2.8, 1.82, 1.71, 1.21510.1151.27, 1.37, 0.88, 0.84, 0.564.92
7 O ( 7 , 2 , 16 , 20 ) 0.26, 0.95, 0.53, 0.56, 0.412.7101.215, 2.75, 1.55, 1.82, 1.2258.56000.56, 1.35, 0.73, 0.88, 0.674.19
8 O ( 7 , 2 , 20 , 16 ) 0.26, 0.95, 1.03, 0.56, 0.463.2601.215, 2.75, 2.8, 1.82, 2.0410.6250.56, 1.35, 1.37, 0.88, 1.085.24
9 O ( 7 , 16 , 2 , 20 ) 0.26, 0.53, 0.53, 1.03, 0.412.7601.215, 1.71, 1.55, 2.8, 1.2258.5000.56, 0.84, 0.73, 1.37, 0.674.17
10 O ( 7 , 16 , 20 , 2 ) 0.26, 0.53, 0.56, 1.03, 0.73.0801.215, 1.71, 1.82, 2.8, 2.5710.1150.56, 0.84, 0.88, 1.37, 1.274.92
11 O ( 7 , 20 , 2 , 16 ) 0.26, 0.242, 1.03, 0.53, 0.462.5221.215, 0.86, 2.8, 1.55, 2.048.4650.56, 0.33, 1.37, 0.73, 1.084.07
12 O ( 7 , 20 , 16 , 2 ) 0.26, 0.242, 0.56, 0.53, 0.72.2921.215, 0.86, 1.82, 1.55, 2.578.0150.56, 0.33, 0.88, 0.73, 1.273.77
13 O ( 16 , 2 , 7 , 20 ) 0.46, 0.53, 0.95, 0.242, 0.412.5922.04, 1.55, 2.75, 0.86, 1.2258.4251.08, 0.73, 1.35, 0.33, 0.674.16
14 O ( 16 , 2 , 20 , 7 ) 0.46, 0.53, 1.03, 0.242, 0.262.5222.04, 1.55, 2.8, 0.86, 1.2158.4651.08, 0.73, 1.37, 0.33, 0.564.07
15 O ( 16 , 7 , 2 , 20 ) 0.46, 0.53, 0.95, 1.03, 0.413.3802.04, 1.71, 2.75, 2.8, 1.22510.5251.08, 0.84, 1.35, 1.37, 0.675.31
16 O ( 16 , 7 , 20 , 2 ) 0.46, 0.53, 0.242, 1.03, 0.72.9622.04, 1.71, 0.86, 2.8, 2.579.9801.08, 0.84, 0.33, 1.37, 1.274.89
17 O ( 16 , 20 , 2 , 7 ) 0.46, 0.56, 1.03, 0.95, 0.263.2602.04, 1.82, 2.8, 2.75, 1.21510.6251.08, 0.88, 1.37, 1.35, 0.565.24
18 O ( 16 , 20 , 7 , 2 ) 0.46, 0.56, 0.242, 0.95, 0.72.9122.04, 1.82, 0.86, 2.75, 2.5710.0401.08, 0.88, 0.33, 1.35, 1.274.91
19 O ( 20 , 2 , 7 , 16 ) 0.41, 1.03, 0.95, 0.53, 0.463.3801.225, 2.8, 2.75, 1.71, 2.0410.5250.67, 1.37, 1.35, 0.84, 1.085.31
20 O ( 20 , 2 , 16 , 7 ) 0.41, 1.03, 0.53, 0.53, 0.262.761.225, 2.8, 1.55, 1.71, 1.2158.50.67, 1.37, 0.73, 0.84, 0.564.17
21 O ( 20 , 7 , 2 , 16 ) 0.41, 0.242, 0.95, 0.53, 0.462.5921.225, 0.86, 2.75, 1.55, 2.048.4250.67, 0.33, 1.35, 0.73, 1.084.16
22 O ( 20 , 7 , 16 , 2 ) 0.41, 0.242, 0.53, 0.53, 0.72.4121.225, 0.86, 1.71, 1.55, 2.577.9150.67, 0.33, 0.84, 0.73, 1.273.84
23 O ( 20 , 16 , 2 , 7 ) 0.41, 0.56, 0.53, 0.95, 0.262.711.225, 1.82, 1.55, 2.75, 1.2158.560.67, 0.88, 0.73, 1.35, 0.564.19
24 O ( 20 , 16 , 7 , 2 ) 0.41, 0.56, 0.53, 0.95, 0.73.151.225, 1.82, 1.71, 2.75, 2.5710.0750.67, 0.88, 0.84, 1.35, 1.275.01
Table 7. The comparison of the global optimal solution min G ( Z o ( R t o ( i ) , R t o ( j ) ) ) and the difference value min Δ G ( Z o ( R t o ( i ) , R t o ( j ) ) ) .The bold value of the weight g indicates the global optimal solution min G .
Table 7. The comparison of the global optimal solution min G ( Z o ( R t o ( i ) , R t o ( j ) ) ) and the difference value min Δ G ( Z o ( R t o ( i ) , R t o ( j ) ) ) .The bold value of the weight g indicates the global optimal solution min G .
τ (1) BA(2) GA(3) SA(4) PA g ~ min G min Δ G
1a O ( 2 , 16 , 20 , 7 ) O ( 2 , 16 , 20 , 7 ) O ( 2 , 16 , 20 , 7 ) O ( 2 , 16 , 20 , 7 ) (1) a0.730.550.610.260.292.440.148
(1) b0.290.260.610.550.732.440.148
(2) a0.720.60.620.280.292.510.218
(2) b0.290.280.620.600.722.510.218
b O ( 7 , 20 , 16 , 2 ) O ( 7 , 20 , 16 , 2 ) O ( 7 , 20 , 16 , 2 ) O ( 7 , 20 , 16 , 2 ) (3) a0.730.600.600.250.292.470.178
(3) b0.290.250.600.600.732.470.178
(4) a0.700.530.560.2420.262.292--
(4) b0.260.2420.560.530.702.292--
2a O ( 2 , 16 , 20 , 7 ) O ( 2 , 16 , 20 , 7 ) O ( 2 , 16 , 20 , 7 ) O ( 2 , 16 , 20 , 7 ) (1) a2.711.752.050.8251.2358.570.655
(1) b1.2350.8252.051.752.718.570.655
(2) a2.751.7851.810.7651.2358.3450.430
(2) b1.2350.7651.811.7852.758.3450.430
b O ( 7 , 20 , 16 , 2 ) O ( 7 , 20 , 16 , 2 ) O ( 7 , 20 , 16 , 2 ) O ( 20 , 7 , 16 , 2 ) (3) a2.6451.7752.0250.7751.2258.4450.530
(3) b1.2250.7752.0251.7752.6458.4450.530
(4) a2.571.551.710.861.2257.915--
(4) b1.2250.861.711.552.577.915--
3a O ( 2 , 16 , 20 , 7 ) O ( 2 , 16 , 20 , 7 ) O ( 2 , 16 , 20 , 7 ) O ( 2 , 16 , 20 , 7 ) (1) a1.360.830.980.350.624.140.370
(1) b0.620.350.980.831.364.140.370
(2) a1.330.821.030.350.644.170.400
(2) b0.640.351.030.821.334.170.400
b O ( 7 , 20 , 16 , 2 ) O ( 7 , 20 , 16 , 2 ) O ( 7 , 20 , 16 , 2 ) O ( 7 , 20 , 16 , 2 ) (3) a1.250.850.950.350.654.050.280
(3) b0.650.350.950.851.254.050.280
(4) a1.270.730.880.330.563.77--
(4) b0.560.330.880.731.273.77--
Table 8. A comparison of the traveling time expense of the optimal tour route for each algorithm under the different transportation modes.
Table 8. A comparison of the traveling time expense of the optimal tour route for each algorithm under the different transportation modes.
τ (1) BA(2) GA(3) SA(4) PA t (min)
(1) BA(2) GA(3) SA(4) PA
1a O ( 2 , 16 , 20 , 7 ) O ( 2 , 16 , 20 , 7 ) O ( 2 , 16 , 20 , 7 ) O ( 2 , 16 , 20 , 7 ) 941019777
b O ( 7 , 20 , 16 , 2 ) O ( 7 , 20 , 16 , 2 ) O ( 7 , 20 , 16 , 2 ) O ( 7 , 20 , 16 , 2 ) 941019777
2a O ( 2 , 16 , 20 , 7 ) O ( 2 , 16 , 20 , 7 ) O ( 2 , 16 , 20 , 7 ) O ( 2 , 16 , 7 , 20 ) 67515042
b O ( 7 , 20 , 16 , 2 ) O ( 7 , 20 , 16 , 2 ) O ( 7 , 20 , 16 , 2 ) O ( 20 , 7 , 16 , 2 ) 67515042
3a O ( 2 , 16 , 20 , 7 ) O ( 2 , 16 , 20 , 7 ) O ( 2 , 16 , 20 , 7 ) O ( 2 , 16 , 20 , 7 ) 167184196167
b O ( 7 , 20 , 16 , 2 ) O ( 7 , 20 , 16 , 2 ) O ( 7 , 20 , 16 , 2 ) O ( 7 , 20 , 16 , 2 ) 167184196167
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Zhou, X.; Tian, J.; Peng, J.; Su, M. A Smart Tourism Recommendation Algorithm Based on Cellular Geospatial Clustering and Multivariate Weighted Collaborative Filtering. ISPRS Int. J. Geo-Inf. 2021, 10, 628. https://doi.org/10.3390/ijgi10090628

AMA Style

Zhou X, Tian J, Peng J, Su M. A Smart Tourism Recommendation Algorithm Based on Cellular Geospatial Clustering and Multivariate Weighted Collaborative Filtering. ISPRS International Journal of Geo-Information. 2021; 10(9):628. https://doi.org/10.3390/ijgi10090628

Chicago/Turabian Style

Zhou, Xiao, Jiangpeng Tian, Jian Peng, and Mingzhan Su. 2021. "A Smart Tourism Recommendation Algorithm Based on Cellular Geospatial Clustering and Multivariate Weighted Collaborative Filtering" ISPRS International Journal of Geo-Information 10, no. 9: 628. https://doi.org/10.3390/ijgi10090628

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop