Incorporating Memory-Based Preferences and Point-of-Interest Stickiness into Recommendations in Location-Based Social Networks

In location-based social networks (LBSNs), point-of-interest (POI) recommendations facilitate access to information for people by recommending attractive locations they have not previously visited. Check-in data and various contextual factors are widely taken into consideration to obtain people’s preferences regarding POIs in existing POI recommendation methods. In psychological effect-based POI recommendations, the memory-based attenuation of people’s preferences with respect to POIs, e.g., the fact that more attention is paid to POIs that were checked in to recently than those visited earlier, is emphasized. However, the memory effect only reflects the changes in an individual’s check-in trajectory and cannot discover the important POIs that dominate their mobility patterns, which are related to the repeat-visit frequency of an individual at a POI. To solve this problem, in this paper, we developed a novel POI recommendation framework using people’s memory-based preferences and POI stickiness, named U-CF-Memory-Stickiness. First, we used the memory-based preference-attenuation mechanism to emphasize personal psychological effects and memory-based preference evolution in human mobility patterns. Second, we took the visiting frequency of POIs into consideration and introduced the concept of POI stickiness to identify the important POIs that reflect the stable interests of an individual with respect to their mobility behavior decisions. Lastly, we incorporated the influence of both memory-based preferences and POI stickiness into a user-based collaborative filtering framework to improve the performance of POI recommendations. The results of the experiments we conducted on a real LBSN dataset demonstrated that our method outperformed other methods.


Introduction
Advances in mobile communication devices, the global positioning system, and wireless networking technologies have promoted the development of location-based social networks (LBSNs) such as Foursquare and Yelp, which encourage people to upload their locations and experiences with points of interest (POIs) such as restaurants, tourist attractions, and cinemas [1]. The abundance of location-based trajectory data provides us with sufficient information to generate meaningful knowledge for use in contexts such as personalized POI recommendations [2], traffic flow analysis [3], urban road network management [4], and urban space management [5]. In recent years, most researchers have placed increasing emphasis on personalized POI recommendations for further understanding people's shifts in location and predicting which as yet unvisited POIs might be of interest to them [6].
In traditional recommendation systems such as product recommendations or movie recommendations, users generally provide numerical ratings for items, with higher ratings indicating a higher degree of user satisfaction [7]. In contrast, POI recommendation systems usually first obtain implicit feedback data [8,9] and then try to derive people's personalized behavioral preferences. The implicit feedback data from users are usually regarded as a set of binary variables, e.g., whether a user has checked in at a POI. Obviously, these methods ignore the number of an individual's check-ins at a POI and assume that even rare visits to a POI by an individual indicate that they are interested in it [10,11]. However, some studies have argued that people's behavioral patterns with respect to mobility are related to visiting frequency [12,13] and that the POIs to which people make frequent repeat visits dominate their travel behaviors [14,15]. Moreover, in many real-world situations, people's activities are often strongly affected by various contextual factors. One factor, for example, is their friends' tastes, as people are more likely to go for dinner at a restaurant in which their friends are interested than at one in which they themselves are interested. In this case, just one or two check-ins at a restaurant by an individual do not indicate that they have any great interest in it, whereas multiple check-ins at a restaurant by an individual indicate that they have a high degree of recognition of it. To solve these problems, in this paper, we introduce the concept of POI stickiness as a way of exploring the effects of the various visiting frequencies of an individual at POIs for use in building POI recommendations.
Related studies on the dynamics of human behavior have found that human movement is usually driven by various kinds of interests and is full of diversity and complexity [16,17]. To explore the dynamic evolution of human interests, some existing POI recommendation methods take various contextual factors, e.g., temporal information [18], geographical information [19], and social relationships [20], into consideration. However, most existing studies ignore the effects of individual psychology, e.g., the memory effect, which is related to the non-Poisson properties of human mobility patterns [21]. For example, due to the physical nature of user-POI interaction and the continuous changes in POI environmental factors, an individual's travel preferences with regard to a given POI will change over time. Specifically, when people plan to visit a certain POI at which they have checked in before, they will recall some interesting experiences about it. Such personal psychology is strongly related to people's memories with regard to a POI [22]. The closer the time of the historical visit is to the current time, the clearer the memory will be; the further back in time the previous visit was, the less clearly it will be remembered. Therefore, POI recommendations should take into consideration the memory-based attenuation of people's travel preferences for POIs by analyzing their historical check-in records. Fortunately, relevant studies [23] have demonstrated that the evolution of people's memories is analogous to that of their preferences. To explore the memory effect in human mobility patterns, we resorted to Ebbinghaus's classical theory of memory [24], which argued that the evolution of an individual's memory follows a regular but unbalanced process [25] and can be described in the form of a forgetting curve [26].
Inspired by the two considerations above, in this paper, we propose a novel personalized POI recommendation method based on people's memory-based preference attenuation and POI stickiness, named U-CF-Memory-Stickiness. First, we study the memory effect in human mobility patterns, which implies the dynamic evolution of people's interest in POIs. Specifically, we introduce the memory-based preference-attenuation mechanism [22] for exploiting the psychological effects that influence an individual's travel behavior. In the mechanism, for a given POI, a recent check-in behavior should have more influence on an individual's travel preferences in the near future than an earlier check-in behavior. However, according to the time series of POI check-ins, the study of the memory effect of human travel behaviors is only reflected by the changes in people's check-in trajectories. To precisely identify the POIs that dominate human mobility patterns, we introduce the concept of POI stickiness, which signifies revisits by and retention of an individual at a given POI. In other words, people are more likely to check in at POIs with high POI stickiness, and less likely to visit POIs with low POI stickiness repeatedly. Lastly, we propose a unified user-based collaborative filtering framework for combining the influence of an individual's memory-based preferences and the influence of the stickiness of a POI for an individual. To verify the efficiency of our method, we crawled a real dataset from the Foursquare website. The results of our comparative experiments demonstrated that our method using memory-based preferences and POI stickiness outperforms multiple other methods.
The main contributions of our work are summarized as follows: • We introduced the concept of POI stickiness, which is strongly related to the visiting frequency of POIs and signifies revisits to and retention of an individual at a POI. The results of our method show that the POI stickiness is a meaningful indicator for POI recommendations in distinguishing the important POIs that attract repeated visits by an individual from unimportant POIs at which an individual only checks in once or twice.

•
We proposed a novel user-based collaborative filtering framework for POI recommendations that takes into consideration both memory-based preferences and the influence of POI stickiness. The memory effect emphasizes the dynamic attenuation of an individual's travel preferences, and POI stickiness mines an individual's stable interests, which dominate people's behavioral decisions with respect to mobility.

•
The results of our evaluation experiments demonstrated that our proposed method significantly outperformed other methods. Thus, the use of time series and visiting frequency of check-in data rather than simple statistics is an effective way to process data in location-based social networks.
The remainder of our paper is organized as follows: we review related work in Section 2. In Section 3, we provide some preliminary work. Then, we introduce our proposed POI recommendation method with memory-based preference attenuation and POI stickiness in detail in Section 4. Section 5 shows the experimental results and the corresponding parameter analysis. Lastly, Section 6 contains further discussion and presents the conclusions.

Collaborative Filtering-Based POI Recommendations
The collaborative filtering algorithm has been widely adopted in traditional personalized recommendations [27], the basic assumption of which is that users' behaviors reflect their interest in items. In recent years, many collaborative filtering methods for POI recommendations have been proposed that treat POIs as items. In these methods, people's check-in trajectory data are used to derive their personalized travel preferences with respect to POIs [28].
Collaborative filtering methods usually consist of two categories: memory-based algorithms and model-based algorithms [27]. Memory-based collaborative filtering algorithms can be further divided into user-based and item-based methods. In terms of user-based POI recommendations, the basic assumption is that people who share similar preferences for POIs tend to check in at the same POIs [8]. In terms of item-based POI recommendations, the basic assumption is that people are interested in similar POIs, which can be discovered via similarity measures such as cosine similarity [29]. However, Ye et al. found that, because the calculated POI similarities may be incorrect, user-based approaches are more suitable for POI recommendations than item-based approaches [29].
In terms of model-based POI recommendation algorithms, the matrix factorization technique is used to discover the hidden factors of people and POIs from historical check-in records [28]. For example, Liu et al. incorporated the Poisson factor into a probabilistic matrix factorization model for learning people's mobility patterns [30]. Baral et al. developed a matrix factorization-based fused model for analyzing the roles of various contextual factors (e.g., check-in data, time, geography) in POI recommendations [31]. In addition, the Bayesian probabilistic modeling technique [32,33] and the Markov chain model [34,35] are also typical model-based methods for making POI recommendations.

Temporal Factor-Enhanced POI Recommendations
Some researchers have recently tried to improve the performance of POI recommendations by combining pure check-in data with contextual information such as a temporal factor [36]. Several studies used check-in records with timestamps to learn people's periodic travel patterns to generate temporal factor-enhanced POI recommendations. Yuan et al. found that people exhibit different check-in preferences at different time slots over the day; for example, at night, people prefer to visit bars rather than libraries [8]. Thus, they studied the daily patterns of users' check-in behaviors according to the hour dimension. Gao et al. argued that, compared to nonconsecutive time periods, people may exhibit more similar travel preferences in consecutive time periods [37]. However, because these methods study people's travel behaviors in various time slots separately, they tend to suffer from a severe sparsity problem. To avoid time information loss, Zhang et al. explored the temporal probability density of check-in records and preference correlations of people between weekdays and weekends [38]. Zhao et al. designed a three-slice time-indexing mechanism based on hours, weekdays, and months for capturing the temporal characteristics of check-in behaviors [39].
Several studies explored the temporal sequences of historical check-in records [40,41]. For example, some works [42,43] constructed personalized Markov chain models for predicting where an individual would like to go tomorrow or in the next few days. Liu et al. established an attention network for learning the overall temporal dependence in check-in sequences [44]. Lu et al. combined tree structures with successive transition graphs to acquire a latent representation of people's temporal-based travel preferences [45]. However, check-in-sequence-based methods cannot recommend new POIs to a certain individual, which has an adverse effect on the user experience.
In addition, the change in psychological effects over time is significantly correlated with the individual's travel preferences for POIs. Gan et al. developed a memory-based POI preference-attenuation mechanism for deriving the dynamic evolution of people's interest in POIs [22]. In this mechanism, for a given POI, recent check-in behaviors have more influence on an individual's travel preferences in the near future than earlier check-in behaviors. Although the POI recommendation method using people's memory-based preference changes has greatly improved the performance of the recommendations, the method only highlights POI check-in records that are closer to each other in a time series and does not discover which POIs have greater effects on people's behavior with respect to mobility.

Visiting Frequency in Location-Based Check-in Data
Given the abundance of check-in records, it is of great importance to mine the primary cause behind each check-in thoroughly. In particular, POIs that have attracted relatively more check-ins from an individual can serve as an important support for understanding their mobility patterns [46]. McKercher et al. found that first-time visitors and repeat visitors have substantial differences with respect to visiting times and destinations in the case of Hong Kong [13]. Yu et al. argued that locations that have been visited repeatedly appear to be more important than other locations that have been visited only once or twice [14].
Although the above works have demonstrated the effect of visiting frequency on human mobility patterns, existing POI recommendation methods do not fully explore the visiting frequency of people at POIs. For example, Kato et al. simply divided travelers into two categories, first-time travelers and repeat travelers, and designed the two different sightseeing spot recommendation components separately, which may consume considerable computing resources [47]. Xu et al. only considered the effect of the visiting frequency of POIs in the objective function [48]. In this paper, on the one hand, we incorporated visiting frequency into the user-POI check-in matrix; on the other hand, we introduced the concept of POI stickiness for fully understanding people's potential interest behind each check-in.

Preliminaries
In this section, we describe the traditional user-based collaborative filtering method for POI recommendation concisely [8], namely, U-CF. Let U be the set of users, where u, v ∈ U, and let P be the set of POIs, where p ∈ P. If a user u has checked in at POI p before, we set c u,p = 1; otherwise, c u,p = 0.
For a target user u, we calculate the similarities between user u and other users via cosine similarity, which is extensively used for implicit feedback data. Specifically, the cosine similarity s u,v between user u and user v is defined in Equation (1).
Then, according to the result from the similarity ranking, we select the optimal knearest neighbors for each user. Finally, we use the similarity as a weight for predicting the recommendation scores for the target user u for unvisited POIs, which represents the possibility of user u checking in at POI p. The recommendation scorer u,p is computed using Equation (2).r

Overview of Our Proposed Method
As shown in Figure 1, the flowchart of our proposed POI recommendation method using memory-based preferences and POI stickiness, named U-CF-Memory-Stickiness, consists of two components. One component is used to explore the memory effect in people's mobility patterns. This component mainly includes five sequential steps. First, we used the memory-based preference-attenuation mechanism [22] to learn the memory values between current check-ins and historical check-ins from check-in records with timestamps. Second, we constructed a user-POI check-in matrix that takes the influence of both the visiting frequency and the memory-based travel preference into consideration. Third, according to the memory-based user-POI check-in matrix, we used the cosine similarity method to calculate the similarity of travel preferences between individuals. Fourth, we constructed a user-user similarity matrix, which represents the similarity of people's historical mobility patterns. Fifth, on the basis of the similarity values, we selected the top-k individuals as the k-nearest neighborhood set for each individual. The other component is used to study the influence of POI stickiness in people's travel decisions, which signifies revisiting by and retention of an individual at a POI. Specifically, we first introduced the concept of POI stickiness and calculated the POI stickiness value for each POI in our dataset. Then, we selected the POIs with higher stickiness than the threshold L as the set of POIs that dominate an individual's travel behaviors.
Lastly, we incorporated the two above components into a unified user-based collaborative filtering framework. According to the travel preferences of the k-nearest neighbors, we first predicted the check-in scores of the target individual at unvisited POIs. Then, we ranked the predicted recommendation scores in descending order for generating the top-N recommendation list for each individual.

Incorporating People's Memory Effect
As mentioned in Section 4.1, previous studies usually used binary data in the collaborative filtering-based POI recommendation. Obviously, these methods ignored the effect of the visiting frequency of an individual at a POI, which clearly reflects how much emphasis the individual places on the POI. The more times an individual goes to a certain POI, the higher the importance of the POI to them. To distinguish between the important and unimportant POIs for each individual, we used the visiting frequency of the individual at POIs rather than simply statistics, e.g., whether people have checked in at POIs, to construct the user-POI check-in matrix.
However, people's travel behaviors are usually impacted by their experiences and memories of POIs, and people are more likely to go to more familiar POIs than unfamiliar ones [21]. This behavioral pattern, which is driven by memory, is strongly related to the evolution of people's interest in POIs [22]. To further explore the evolution of people's memory-based travel preferences, we considered memory-based preference attenuation in our model. Ebbinghaus's memory theory argues that the evolution of an individual's memory follows an unbalanced process, and the forgetting rate is very fast at first but then slows down gradually over time [26]. Considering the evolution of human memory, we developed a memory-based attenuation mechanism for deriving a user-POI check-in matrix with memory-based preferences, which was described in detail in our previous work [22]. In this mechanism, for a given POI, recent check-in behaviors have more influence on an individual's travel preferences in the near future than earlier check-in behaviors. The attenuation function of people's memory-based preferences is represented as where d 0 denotes the current check-in time, d denotes the historical check-in time, H denotes the time threshold between d 0 and d, and f (d, d 0 ) denotes the time-attenuation factor (the memory value) between d 0 and d. A larger time interval between the current check-in and the historical check-in corresponds to a smaller time-attenuation factor of the historical check-in, which is similar to the evolution of an individual's memory.
According to the above considerations, we incorporated the influence of both check-in frequency and individual memory-based travel preferences into the user-POI check-in matrix. Specifically, we first used the time-attenuation factor as a weight for obtaining people's travel preferences at the current time. For example, with respect to the current time d 0 , the check-in value c u,p (d, d 0 ) of user u at POI p at time d is first represented as where c u,p,d denotes whether user u has visited POI p at time d. If user u has visited POI p at time d, we set c u,p,d = 1; otherwise, c u,p,d = 0. Then, the check-in valueĉ u,p of user u at POI p at the current time d 0 is represented aŝ where num u,p,d 0 denotes the total check-ins times of user u at POI p before the current time d 0 .
Because similar individuals tend to check in at the same POI [8], we need to discover the nearest neighbors for each individual from the user-POI check-in matrix with memorybased preference attenuation. Specifically, we first calculated user-user similarities via the cosine method. For example, the cosine similarity sim(u, v) between user u and v is calculated using Equation (6).
A larger value of sim(u, v) corresponds to a higher similarity between users u and v. Then, according to the memory-based preference similarity values, we selected the top-k users as the k-nearest neighborhood set of the target user u, which is denoted by neighbor(u, k). The computation of the nearest neighborhood set is described in Algorithm 1.  (5) 6: User-POI check-in matrix (u i , p j ) ← c u i ,p j 7: end for 8: end for 9: for each user u i do 10: or each user u g ∈ U, g = i do 11: Compute the cosine similarity sim(u i , u g ) between user u i and u g using Equation (6) 12: User-user similarity matrix (u i , u g ) ← sim(u i , u g ) 13: end for 14: User-user similarity matrix (u i , :) ← sort similarity matrix (u i , :) in descending order 15: neighbor(u i , k) ← get top k from user-user similarity matrix (u i , :) 16: end for

Incorporating the POI Stickiness
Relevant studies have found that, when an individual checks in at a POI repeatedly, the POI may have higher importance to them than other POIs that they have only visited once or twice [14,46]. That is to say, only one or two check-ins at a POI by an individual do not indicate that the individual is interested in the POI, whereas multiple check-ins at a POI by an individual indicate that they may have a high degree of satisfaction with it. Therefore, the emphasis of POI recommendation research should be on the second category of POIs, which reflects an individual's stable interests in their travel behavior decisions [14,15]. To analyze the human mobility patterns and discover the POIs that attracted people's repeated visits, we further plotted the distribution of average check-in frequency for all POIs in our dataset. As shown in Figure 2, as the average check-in frequency increases, the number of POIs that satisfy the frequency requirement decreases, which also demonstrates that the mobility behaviors of people present a long-tailed distribution [16].  To identify the important POIs that dominate the individuals' travel behaviors, we introduced the concept of POI stickiness for further mining the underlying preferences behind each check-in. Stickiness is a term usually used to describe the frequency, depth, and duration of visits to a website [17] or to denote people's underlying willingness to revisit a social network [49]. The concept is also used to signify user loyalty to a website [50] and deep-seated commitment to a website [51]. As for POI recommendations, we use POI stickiness to signify revisiting by and retention of an individual at a POI in LBSNs. In this paper, the concept of POI stickiness is regarded as an important indicator of people's preferences for POIs. Users have a higher degree of preference for these POIs with high POI stickiness, and they are more likely to check in at these places repeatedly. In contrast, users have a lower degree of preference for those POIs with low POI stickiness, and they will not repeatedly visit these places. The POI stickiness of POI p is denoted by stickiness(p) as follows: where U p denotes the set of users who have checked in at POI p, U p denotes the total number of users who have checked in at POI p, and n u,p denotes the check-in frequency of user u at POI p.
To incorporate POI stickiness into our model, we calculated each individual's stickiness with respect to each POI using Equation 7, as above. Then, to choose the POIs that attracted repeated visits by people and to remove those to which people hardly returned, we selected the POIs with higher stickiness than the threshold L from the whole dataset. We also performed a series of validation experiments to test the recommendation influences under different values of the POI stickiness threshold L. The computation of the influence of POI stickiness is described in Algorithm 2.

Algorithm 2. The computation of the influence of POI stickiness
Input: (1) check-in records with timestamps, (2) the POI-stickiness threshold L Output: the POI set PL which includes POIs that satisfy the stickiness requirement 1: for each POI p j ∈ P,P = {p 1 , p 2 , ..., p n } do 2: Compute stickiness(p) of POI p j using Equation (7) 3: if stickiness(p) ≥ the threshold L then 4: PL add p j 5: end for

A Unified User-Based POI recommendation Framework
We obtained the evolution of people's travel preferences from the time series of POI check-ins via the memory-based attenuation mechanism, which pays more attention to recent check-in behaviors than earlier ones. However, the memory effect only reflects the change in people's check-in trajectories and cannot discover the important POIs that dominate people's mobility patterns. Due to the diversity and heterogeneity of people's interests, the POIs have different potentials to attract visits by individuals, resulting in people checking in at some POIs many times and at others only once or twice. Thus, the POI stickiness should be considered in identifying the POIs that attracted people's revisits and retention. As shown in Figure 3, we use a toy example of an individual's travel records between 1 July 2020 and 9 July 2020 to illustrate the phenomenon. Based on the memory-based preference-attenuation mechanism, with respect to the current time (e.g., 1 August 2020), the value of the check-in at P7 is the highest among all the POIs. However, the POI-stickiness value of the individual at P7 is the lowest. In other words, the individual will not repeatedly visit P7 and has a lower degree of preference for P7. Thus, P7 cannot dominate the individual's travel behaviors. Considering the influence of POI stickiness, the individual has the highest stickiness and visiting frequency at P1, the second-highest stickiness and visiting frequency at P2, and the lowest stickiness and visiting frequency at other POIs. Obviously, P1 plays the most significant role in the individual's travel decisions, followed by P2, and other POIs have a relatively low influence.
According to the above considerations, we propose a unified user-based POI recommendation method that mines people's travel preferences with respect to POIs from aspects of the memory effect and POI stickiness. On the one hand, we incorporate the memory effect into the user-POI check-in matrix for analyzing people's memory-based travel preference attenuation. On the other hand, when predicting the potential check-in values for the individual, we selected the POIs with high repeat visits and removed the POIs with low repeat visits via the indicator of the POI stickiness to identify the important POIs that reflect stable interests in an individual's mobility behavior decisions.
According to the similar neighbors' memory-based travel preferences and the corresponding POI stickiness, we calculated the check-in values of the target user u at POIs they had not visited to represent the likelihood that the target user u will visit these POIs in the near future. Specifically, for each target user u, we first chose the POIs they had not visited from the set of POIs that satisfied the POI stickiness requirement. Then, on the basis of the travel preferences of their similar neighbors, we predicted the check-in scores of the target user u for these unvisited POIs. We used sim(u, v) as the weight of check-in scoreŝ c v,p of k-nearest neighbors to obtain the corresponding memory-based check-in scores of the target user u at POI p, which is denoted by scroe(u, p).
Lastly, we sorted the predicted check-in scores scroe(u, p) of these unvisited POIs in descending order and recommended the top-N POIs to the target user u. Our proposed unified POI recommendation method is described in Algorithm 3.

Algorithm 3. A unified POI recommendation method using the memory effect and POI stickiness
Input: (1) neighbor(u i , k) of each user u i ; (2) user-POI check-ins matrix; (3) user-user similarity matrix; (4) the POI set PL; (5) total number of POI recommendation N Output: candidate POIs list for each user u i ∈ U, U = {u 1 , u 2 , . . . u m } 1: for each user u i do 2: for each POI p j ∈ PL do 3: if u i did not check in at p j then 4: Compute the check-in probability scroe(u i , p j ) of u i at p j using Equation (7) 5: Predicted check-in values set V of u i add scroe(u i , p j ) 6: end for 7: V ← sort V in descending order 8: get top N from V 9: end for

Dataset
We conducted extensive experiments on a real-world dataset that was crawled from Foursquare (https://foursquare.com/). The dataset consists of five fields: user identifier (ID), check-in venue, longitude of venue, latitude of venue, and check-in time. To avoid sparsity of the dataset, we focused on check-in records that were created in New York between April 2012 and November 2013. In addition, the users and the POIs with fewer than 10 check-ins were removed. The detailed statistics are presented in Table 1.

Evaluation Criteria
We adopted three classical evaluation criteria, namely, precision, recall, and F-value, which are often used to evaluate the accuracy of top-N recommendations [8,31,52]. The three criteria are denoted by PRE@N, REC@N, and F@N, respectively, where N denotes the number of recommendation results. The precision measures the proportion of recommended POIs that are actually visited out of the N recommended POIs. The recall measures the proportion of recommended POIs that are actually visited out of the actual POIs in the testing set. The F-value comprehensively considers the precision and recall of the algorithm. Let R(u) be the recommended POIs and T(u) be the actual POIs in the test set. The PRE@N is defined as The REC@N is defined as The F@N is defined as A higher PRE@N, a higher REC@N, and a higher F@N correspond to a better recommendation performance.
Additionally, as POI recommendation is highly sensitive to the quality of the list, we adopted a widely used ranking measure, the normalized discounted cumulative gain (NDCG) [53]. NDCG is a normalization of the discounted cumulative gain (DCG) measure, which is a weighted sum of the degree of relevance of the ranked items. The weight is a decreasing function of the rank (position) of the object. The NDCG@N is defined as , (14) where N denotes the number of recommendation results, rel i denotes the relevancy of the position i, and |REL N | denotes the set of the top-N results that are sorted in descending order of relevance, which is the set that sorts the results in an optimal way. A higher NDCG@N corresponds to a better recommendation performance.

Baseline Methods
To verify the efficiency of our proposed U-CF-Memory-Stickiness method, we adopted the following comparison methods, which we describe briefly: • U-CF: The U-CF method is the traditional user-based collaborative filtering (CF) POI recommendation method described in Section 3. • LRT [37]: The LRT is a location recommendation framework with temporal effects. Because people's check-in behaviors change with time, the method modeled each individual by different latent vectors for different time slots and summed up the predicted scores for all time slots as the recommendation scores. In this paper, we considered the weekly (day of the week) patterns of people's temporal check-in preferences. • LORE [43]: The LORE is a location recommendation method with sequential influence. The method explored sequential influence on people's check-in behaviors and derived a probability of an individual visiting a new POI on the basis of an additive Markov chain (AMC). • U-CF-Memory [22]: The U-CF-Memory method is the POI recommendation method with memory-based preference attenuation that was presented in detail in our previous work. • U-CF-Stickiness: The U-CF-Stickiness method is a novel user-based CF POI recommendation method with the POI stickiness, which only incorporates the individuals' stickiness at POIs into the traditional user-based CF method. • U-CF-Memory-Stickiness: The U-CF-Memory-Stickiness method is our proposed unified POI recommendation method, which takes into consideration the influence of an individual's memory-based preferences and the influence of the stickiness of POIs for an individual.

Experiment Details
For each individual, we selected the first 64% of chronological check-in records as the training set, the middle 16% as the validation set, and the last 20% as the test set. The training set was used to obtain the travel preferences similarities among individuals, which contained every user and POI. We tuned the hyperparameters of all the models on the validation set and compared their performance on the test set. According to the results on the validation set, the number of neighborhood k was set to 250. The default value of the time threshold H was set to 300 days, as discussed in our previous work [22]. The optimal value of the POI stickiness threshold L was set to 1.6. The detailed recommendation results under the different POI stickiness thresholds L are presented in Section 5.6.

Improvement of Recommendation Performance
In this section, we present the recommendation results of our method and those of comparison methods. As shown in Figure 4 and Table 2, we considered the value of N as 5, 10, 15, 20, 25, and 30.

Methods Incorporating Temporal Influence
The experimental results demonstrate that all temporal POI methods (LRT, LORE, and U-CF-Memory) outperformed U-CF. This is because people's preferences with respect to POIs will vary with time, and the time factor plays an important role in people's travel decisions. For example, with regard to PRE@10, U-CF-Memory realized a higher precision of 3.12%, outperforming U-CF (2.19%) by 42.47%. With regard to REC@10, U-CF-Memory realized a higher recall of 10.63%, outperforming U-CF (9.83%) by 81.38%. With regard to F@10, U-CF-Memory realized a higher F-value of 4.83%, outperforming U-CF (3.93%) by 22.9%. With regard to NDCG@10, U-CF-Memory realized a higher value of 7.08%, outperforming U-CF (4.76%) by 48.74%. The main limitations of U-CF are that it only uses the binary check-in data and ignores the individual's memory effect. In contrast, U-CF-Memory not only uses people's check-in frequency at POIs to distinguish between the important and unimportant POIs but also introduces the memory-based travel-preferenceattenuation mechanism to emphasize the check-in records closer to the current time.
In addition, the U-CF-Memory method outperforms other temporal-enhanced methods (LRT and LORE) on the four evaluation criteria. This is because LRT and LORE are highly sensitive to the sparsity in the dataset and thus suffer from poor performance with our dataset. As shown in Figure 4, another observation is that when the length of the recommendation list is small (N = 5), the U-CF-Memory method achieves the best performance; as the length of the recommendation list increases, the performance of the three temporal methods tends to be consistent. We think the reason is that the U-CF-Memory method considers the attenuation of people's memory-based travel preferences and the change in people's psychological effects over time and, thus, obtained a better recommendation performance on the next-POI prediction.

Methods Incorporating POI Stickiness
Compared to U-CF, our proposed U-CF-Stickiness method realizes much better recommendation accuracy on the four evaluation criteria. For example, in terms of PRE@10, U-CF-Stickiness realized a higher precision of 4.21%, outperforming U-CF (2.19%) by 92.24%. In terms of REC@10, U-CF-Stickiness realized a higher recall of 20.42%, outperforming U-CF (9.83%) by 107.73%. In terms of F@10, U-CF-Stickiness realized a higher F-value of 6.57%, outperforming U-CF (3.93%) by 67.18%. In terms of NDCG@10, U-CF-Stickiness realized a higher value of 12.67%, outperforming U-CF (4.76%) by 166.18%. These experimental results suggest that the large number of unimportant POIs with low repeat-visit frequencies resulted in complexity and inefficiency in POI recommendation because the recommendation algorithm did not precisely identify the people's interest in POIs. In contrast, the U-CF-Stickiness method removed these POIs, to which people hardly returned, via the indicator of POI stickiness so that the recommendation algorithm was able to focus on the important POIs that dominate people's mobility behaviors.
Another observation is that, compared to the U-CF baseline, the U-CF-Stickiness method achieves better accuracy than the U-CF-Memory method. The reason is that the U-CF-Stickiness method used the POI stickiness indicator to select POIs with high individual revisit and retention rates and removed those that were only checked in at once or twice. People have a higher degree of preference for POIs with high stickiness, which dominate the individual's travel behaviors. In contrast, although the U-CF-Memory method considered the evolution of people's interests, it still included a large number of POIs with low POI stickiness when recommending POIs to an individual, which resulted in poor performance.

The Unified Method
Among all four methods, our proposed unified U-CF-Memory-Stickiness method achieved the best performance on all these criteria. For example, with regard to PRE@10, the U-CF-Memory-Stickiness method realized a highest value of 4.46%, outperforming U-CF-Memory and U-CF-Stickiness by 42.95% and 5.94%, respectively. With regard to REC@10, the U-CF-Memory-Stickiness method realized a highest value of 23.33%, outperforming U-CF-Memory and U-CF-Stickiness by 119.47% and 14.2%, respectively. With regard to F@10, the U-CF-Memory-Stickiness method realized a highest value of 7.49%, outperforming U-CF-Memory and U-CF-Stickiness by 55.07% and 14.00%, respectively. With regard to NDCG@10, the U-CF-Memory-Stickiness method realized a highest value of 13.24%, outperforming U-CF-Memory and U-CF-Stickiness by 87.01% and 4.50%, respectively. The superior performance of the unified U-CF-Memory-Stickiness method was due to the fact that the method considers the influence of an individual's memory-based preferences and the influence of the stickiness of POIs for them at the same time. First, we considered the check-in frequency and the memory effect rather than simply binary variables to construct the user-POI check-in matrix with memory-based preferences, which reflected the evolution of interest in people's mobility patterns. Second, when recommending unvisited POIs to each individual, we used the POI stickiness to choose the POIs with high repeated visits and remove the POIs with low repeat visits to discover the important POIs that dominate individuals' travel behaviors.
In addition, these experimental results demonstrate that our proposed unified method U-CF-Memory-Stickiness consistently outperformed other multiple methods at all N values on the four evaluation criteria. Therefore, the selection of the N value does not affect the comparison of the different methods.

Impact of the POI Stickiness Threshold L
We also studied the recommendation influence of the POI stickiness threshold L on the validation set. The value of the POI stickiness threshold L controls the average visiting frequency threshold in the U-CF-Stickiness method and the U-CF-Memory-Stickiness method. A lower value for threshold L means that the recommendation method will consider more POIs with low average visiting frequencies. We plotted the PRE@10, REC@10, and F@10 under different POI-stickiness thresholds L in Figure 5, where we varied the POI stickiness threshold L from 1.0 to 2.0. As shown in Figure 5, in terms of precision, the curves of both methods reached their peaks at L = 1.6. The increase in L from 1.0 to 1.6 promoted the value of precision, whereas the increase in L from 1.6 to 2.0 reduced the value of precision. In terms of recall, the curves of both methods reached their peaks at L = 1.8. The increase in L from 1.0 to 1.8 promoted the value of recall, whereas the increase in L from 1.8 to 2.0 reduced the value of recall. The F-value evaluation criterion presented a tendency similar to that of the precision, with a single peak occurring at L = 1.6. Considering the three criteria, we concluded that a lower or higher value of L may degrade the POI recommendation performance. In addition, U-CF-Stickiness and U-CF-Memory-Stickiness were robust when the POI stickiness threshold L was set to 1.6.

Discussion and Conclusions
In this paper, we proposed a novel user-based collaborative filtering framework with memory-based preference attenuation and POI stickiness, named U-CF-Memory-Stickiness, for top-N POI recommendation tasks. Our framework is interested in the memory effect and the POI stickiness of check-in records rather than just binary data. Specifically, we introduced the memory-based attenuation mechanism for studying psychological effects on an individual's travel behaviors and deriving the patterns of changes in people's travel preferences. However, the memory effect cannot capture the important POIs that dominate people's mobility patterns, which play an important role in people's travel decisions. Thus, we introduced the concept of POI stickiness as a function of the average check-in frequencies of people at POIs, which signify the stable travel preferences of people for POIs in LBSNs. According to the above considerations, we incorporated the influence of both the memory effect and POI stickiness into a unified user-based POI recommendation framework.
We conducted a series of validation and evaluation experiments on a real-world dataset that was crawled from the Foursquare website. First, the results of the experiments demonstrated that incorporating the influence of POI stickiness into the user-based CF method improves the performance of POI recommendations, meaning that POI stickiness is a useful indicator for distinguishing between important POIs that attract people's repeat visits and unimportant POIs that an individual only checks in at once or twice. Second, the results of the experiments demonstrated that our proposed unified method, U-CF-Memory-Stickiness, outperforms all of the other methods on the four evaluation criteria, which shows that the combination of memory effect and POI stickiness is an effective means of mining the dynamic and stable travel preferences of people for POIs. Specifically, the construction of the user-POI check-in matrix considered the influence of both memorybased preference attenuation and visit frequency. The prediction of the check-in values for the target individuals was only based on the POIs with higher POI stickiness than the threshold L.
However, our approach has some limitations. First, we removed the POIs with lower stickiness than the threshold L, which may have resulted in the loss of some preference information. The concept of POI stickiness signifies the revisiting by and retention of an individual at a POI and is strongly related to people's potential travel preferences with respect to POIs. People are more likely to check in at POIs with high POI stickiness, and they will not repeatedly visit those POIs with low POI stickiness. Thus, there are significantly different travel preferences among individuals with different values of stickiness for POIs. Considering the heterogeneity of people's cognition styles, the recommendation algorithm should adopt different stickiness thresholds for each individual. However, the main difficulty is that it is hard to quantify people's heterogeneous cognition styles. Second, our method did not consider geographical factor analysis. Due to the physical interactions between people and POIs, the geographical factor is a significant piece of contextual information for POI recommendation. For example, people tend to move around a localized region. That is to say, the POIs that people have visited before may show a central cluster pattern. Thus, the regional geographical constraint will have an effect on people's mobility patterns. Third, our method lacks an analysis of social influence. People tend to check in at POIs that have been strongly recommended by their friends who share similar travel preferences. Obviously, the preferences of their friends may play a significant role in people's travel decisions. However, how to predict the social relationships among individuals is a challenging issue for POI recommendation.
In the future, we will further investigate the proposed method from several aspects. First, we intend to take the various levels of POI stickiness into consideration to generate the top-N recommendation lists. One possible approach is to learn a corresponding weight for various values of POI stickiness via the attention mechanism and then use deep neural networks to incorporate it into the check-in values of each individual at unvisited POIs. In this method, the weight parameters can be adjusted via a backpropagation process, and the learning process will, thus, be adaptive. Second, we will further attempt to incorporate the influence of an individual's memory-based preferences and the influence of the stickiness of a POI for an individual into such multiple baseline recommendation algorithms as alternating least squares (ALS) and sparse linear model (SLIM). Third, on the basis of the category and geographical coordinates of POIs that have been visited, we will study the cluster patterns of human mobility trajectories. We intend to analyze the geographical characteristics and the check-in probability of each cluster of POIs for obtaining localized region constraints and people's geographical preference patterns. Fourth, we intend to incorporate the travel preferences and the social tags of social friends into a CF framework for predicting the travel behaviors of the target individuals. To reflect the different levels of social trust between social friends, we will use a graph-based neural network to construct the social links between individuals. Lastly, we will pay more attention to the task of successive personalized POI recommendations, which focus on where an individual would like to go tomorrow or in the next few days. We will attempt to consider the category information of the POIs in various model-based recommendation algorithms to deal with successive changes in an individual's preferences.