Timeliness-aware On-site Planning Method for Tour Navigation

In recent years, there has been a growing interest in travel applications that provide on-site personalized tourist spot recommendations. While generally helpful, most available options offer choices based solely on static information on places of interest without consideration of such dynamic factors as weather, time of day, and congestion, and with a focus on helping the tourist decide what single spot to visit next. Such limitations may prevent visitors from optimizing the use of their limited resources (i.e., time and money). Some existing studies allow users to calculate a semi-optimal tour visiting multiple spots in advance, but their on-site use is difficult due to the large computation time, no consideration of dynamic factors, etc. To deal with this situation, we formulate a tour score approach with three components: static tourist information on the next spot to visit, dynamic tourist information on the next spot to visit, and an aggregate measure of satisfaction associated with visiting the next spot and the set of subsequent spots to be visited. Determining the tour route that produces the best overall tour score is an NP-hard problem for which we propose three algorithms on the greedy method. To validate the usefulness of the proposed approach, we applied the three algorithms to 20 points of interest in Higashiyama, Kyoto, Japan, and confirmed that the output solution was superior to the model route for Kyoto, with computation times of the three algorithms of $1.9\pm0.1$, $2.0\pm0.1$, and $27.0\pm1.8$ s.


Introduction
In recent years, demand in the tourism industry has continued to increase, as has the cost of trips taken by tourists [1]. Accompanying these increases has been an expansion of research related to personalized tourist spot recommendations (sightseeing navigation) [2,3,4,5,6,7,8,9]. Recognizing that tourist plans are often disrupted by unexpected events such as sudden heavy rain, congestion, special events, and temporary closures, leading to visitor disappointment and dissatisfaction, we propose a tourism planning approach that takes into account such unexpected events, as well as a number of additional dynamic factors, seeking to optimize the visitor's overall tourist experience. In developing this approach, we define a tourist context as the totality of the tourist situation, including the environment of the various available tourist destinations. In general, there are two types of tourist contexts: (1) static tourist contexts, which remain fundamentally unchanged such as the location, operating hours, prices, and characteristics of the tourist spots, and (2) dynamic tourist contexts, which include weather, congestion, special events, and temporary business closures [10].
Many of the existing tourist planning systems make recommendations based on a static tourist context, which means the system's recommendations remain unchanged whether a visitor conducts his/her search before or during a tour. In reality, however, the situation at almost all tourist spots is dynamic. For example, if a spot cannot be visited on a arXiv:2009.11040v1 [cs.DS] 23 Sep 2020 particular day due to a temporary holiday closure, a potential visitor's satisfaction with the spot is negated. Moreover, a visitor's level of satisfaction with a tourist spot can vary greatly depending on the weather, the level of congestion, and the presence or absence of special events such as a winter light-up. To accommodate such variables, designing a system that can collect or predict the dynamic tourist context for each tourist spot in real time and make recommendations accordingly seems highly desirable.
In addition to having the above limitations, many existing systems make recommendations based only on the satisfaction of the next spot to be visited. However, if a high-satisfaction tourist spot is located at a considerable distance, the extended travel time may limit the tourist's options after visiting that spot (e.g., fewer spots can be visited), thus reducing his/her overall satisfaction with the tour. In some cases, visiting three or more lower-satisfaction spots may lead to higher overall satisfaction than visiting a single high-satisfaction spot. It follows, then, that recommendations should take into account not just the satisfaction level associated with the next spot to visit, but also the satisfaction levels of possible visits that might follow.
A visitor's level of satisfaction with a particular spot may also differ depending on the time of day (e.g., a spot with a beautiful night view), making it important to recommend the most satisfying time of day for the spot in order to improve the overall satisfaction of tourists [11].
Some existing systems such as P-Tour [12] allow users to calculate a semi-optimal tour visiting multiple spots before starting sightseeing, but their on-site use is difficult due to the large computation time, no consideration of dynamic factors, etc.
In this paper, we propose an on-site tourism planning algorithm that considers the dynamic tourism context and the tourist's expected overall satisfaction. Identifying the tour route with the maximum expected satisfaction would require the calculation of satisfaction levels for all possible tour patterns-potentially involving a huge amount of computational time. In addition, the behavior of tourists may change locally. We plan to develop a smartphone-based on-site tourism planning support application. The reason for developing a mobile application is that, even if tourists encounter unexpected events, they can take action on the spot. Our proposed approach quickly finds a quasi-optimal solution. In this study, we develop the algorithms to calculate the satisfaction level of the next spot and the expected satisfaction level of the next spot, instead of searching for the route with the highest overall satisfaction in a short time.
Specifically, we designed three versions of our proposed algorithm, all based on the greedy method: • Algorithm A (Time Series Greedy Algorithm) is a greedy algorithm that identifies, in order, the top three spots with the maximum scores, considering only the next spot.
• Algorithm B (Whole Single Greedy Algorithm) is a greedy algorithm that selects, in order, the top three spots from the pairs of spots and times with the highest scores, taking into account the overall tour time.
• Algorithm C (Whole Greedy Algorithm with Search Width) is an extended version of Algorithm B. It is a greedy algorithm that searches the choices k by k in a tree structure.
In order to evaluate the usefulness of the three proposed algorithms, we applied each of them to 20 points of interest (PoIs) in Higashiyama, Kyoto, Japan.
The remainder of the paper is organized as follows. Section 2 reviews related work; Sect. 3 defines the problem; Sect. 4 presents our proposed on-site planning algorithms; Sect. 5 describes the evaluation experiment; Sects. 6 and 7 describe and discuss experimental results; Sect. 8 provides a summary and conclusions.
2 Related Work

Existing Work
Based on collected information, our proposed system recommends a sequence of places to visit according to the context of the various attractions, such as the user profile, congestion, and weather information. A number of prior studies have investigated tourist recommendation methods based on the tourist destination characteristics and preferred route options.
In a study based on the static tourism context, Lim et al. [4] applied the PersTour algorithm [3] to find suitable PoIs. Using the average time spent in the candidate PoIs, together with indicators of popularity and the user preferences, the various spots are considered and a recommendation is made. Kurata and coworkers [13,14] developed a practical system called CT-Planner that analyzes user preferences and creates a tour route. However, such static-context recommendation systems are unable to respond to the dynamically changing conditions at the various destinations.  [12,15] (a) CT-Planner [13,14] The City Trip Planner [25,26] (b) Yuan et al [11] Google Maps [24] This Work (c) (a) only weather, (b) weather and congestion, (c) weather, congestion and additional point Several other studies have considered the dynamic tourist context. Wu et al. [15] calculated the level of satisfaction of each spot by assigning probabilities to weather changes in P-Tour [12], which recommends a tour route likely to produce a high level of satisfaction. Jevinger and Persson [16] proposed an individual-optimized route method that takes into account the impact of public transport congestion. However, both of these recommendation systems handle only a single variable-weather or congestion-rather than a broader set of multiple dynamic factors. Moreover, they are not intended for on-site use.
Various other researchers have taken a multiobjective optimization approach and devised recommendation methods using machine learning. Hirano et al. [17] proposed a system that recommends tour routes by taking into consideration the trade-off between the satisfaction obtained from touring and the resources (money, time, physical effort) consumed in travel and at the tourist site. Chen et al. [18] used PoI and route information as features in machine learning algorithms to recommend tour routes, modeling the tour recommendation problem as an orienteering problem [19,20], and proposed variations based on specific PoI visit sequences and PoI category constraints. However, these studies failed to consider that a visitor's satisfaction level changes with the time spent at each spot, and made recommendations based solely on the satisfaction level of the next spot.

Problem of Existing Work and Positioning of Our Work
In Section 2.1, we introduced the existing methods of recommending tourist spots and searching tourist routes. However, there are several problems with these. Table 1 shows a comparison between the existing studies and the Our work.
The first problem is that existing studies assumes that tourists do not use the recommendation system onsite. Existing studies consider that tourists are only used before visiting a tourist site and does not consider or recalculate recommendations when visiting a tourist site. However, once a tourist actually visits a tourist site, depending on the weather, the crowds, and their mood, they may consider the next spot to visit. Decisions can be formed by spots [23]. Therefore, it is essential to have an on-site tourist spot recommendation system. There are several services (e.g., GoogleMaps [24]) that recommend nearby spots based on GPS information for on-site scenic spot recommendations. However, most of these services do not take into account the route situation. For example, if a tourist searches for a spot to visit again, the recommended spot may be one that they have visited before. Systems such as P-tour [12,15] and CT-Planner [13,14] recommend effective routes by determining the start and finish points. However, these systems are intended to be used prior to a visit to a tourist site and are not designed for on-site use. If the proposed spot is longer than the expected time of stay, the same route is calculated again, because it is assumed to be used before visiting a tourist spot. Therefore, we need on-site tourist recommendation to recommend the next visit during the tour.
The second problem is that it does not take into account the dynamic tourist contexts. Many existing methods take into account the user's preferences, which are static tourist context. On the other hand, it does not take into account the weather information or the level of congestion. For example, depending on the weather conditions and other factors, whether one visits an indoor or an outdoor spot has a significant impact on the overall satisfaction with tourism. In an indoor spot such as a museum, satisfaction is unlikely to fluctuate regardless of weather conditions. However, at outdoor spots, such as shrines and temples, the level of satisfaction will be greatly affected by the weather conditions. Therefore, it is necessary to consider not only the static tourist contexts (e.g., tourist preferences), but also the dynamic tourist contexts (e.g., weather information and congestion).
The third problem is that it does not take into account the change in satisfaction with each spot depending on the time of the visit. For most existing methods, the satisfaction with each visited spot is constant regardless of the time of day visited. For example, if it is the season of autumn leaves and the spot is lit up with autumn leaves, the satisfaction level is higher if you visit the spot when it is lit up than the usual satisfaction level [11]. In addition, in the case of route recommendation based on the model of the orienteering problem [25,26], they recommend a route that maximizes overall tourism satisfaction while spot satisfaction does not change with time of day. Since the level of satisfaction does not change regardless of the time of visit, tourists may have to visit the same spot again if they know a light-up during their visit. Therefore, it is necessary to take into account the change in satisfaction at the time of the visit at that spot.
The fourth problem is that it does not take into account the level of expected satisfaction. Many existing methods are recommendation methods that consider only the next tourist spot. For example, the next place is recommended for the next visit because of the high level of satisfaction with the next spot. If a highly satisfying site is located far away from the current location, it may take a long time to get there, which may limit the number of places to visit. This may lead to a decrease in overall satisfaction with tourism. In some cases, visiting three or more half-satisfied spots may lead to higher overall satisfaction than visiting a single satisfactory spot. Therefore, it is necessary to make a recommendation not only for the next visit, but also for the expected satisfaction of the next and subsequent visits.
Some of the existing methods that recommend visiting spots in advance use learning data such as the travel history of tourists collected in the past. However, most are incapable of dealing with dynamic changes in the tour context such as congestion, weather conditions, and unexpected events. In addition, most existing systems make recommendations based on the satisfaction of the next spot only, failing to give the best recommendation for the tour as a whole. Ideally, the best method would consider not only the tourist spot to be visited next, but also the expected satisfaction of the tourist spots that could be visited after that. Such a system must calculate the satisfaction for all tourist routes involving the next visited spot and the group of possible visited spots after that. However, this is an NP-hard problem, which means that deriving an optimal solution in a short time is not practical. This study shows that the knapsack problem, which is an NP-hard problem, is a special case of this problem. Given a limited amount of tourism time and given N types of spots, it is a problem to search for the next spot that maximizes the expected satisfaction of the tourist. The evaluation values for each of the N types of spots differ by the time spent and each time period, as well as the travel time between each spot. Here, the evaluation value of each spot at each time period is set constant, and the travel time between each spot is set to 0. In this problem, a number of spots are selected among N types of spots within the tourism time, and in order to maximize the sum of the evaluation values of the selected spots in the tourism time, the problem is a combination optimization problem of which spots to select. This problem is equivalent to the knapsack problem, which is NP-hard problem. In this study, we calculate the satisfaction level of the next spot and the expected satisfaction level of the next spot, instead of searching for the route with the highest overall satisfaction. This is why it is NP-hard problem. Therefore, the purpose of our study is to devise an algorithm that will find a good but not necessarily optimal solution relatively quickly. The system we proposed is a recommendation of on-site tourist spots on foot, taking into account the change in satisfaction with the temporal satisfaction of the spots and the expected satisfaction in the future. There are four main things we can achieve with our system: i) on-site tourism recommendation. ii) consideration of static and dynamic tourist contexts. iii) consideration of changes in satisfaction with the time of the visit to each spot. iv) consideration of possible future visits and expected satisfaction.

Preliminaries
In devising our approach, we define static and dynamic scores for the next spot and the future expected score after the next spot as variables to obtain on-site the overall tour satisfaction associated with visiting the next spot and all subsequent spots. A tour score Tour(s, S,t) is given by the following equation, where the time of arrival at the set of possible spots S, the next spot s and the arrival time of s is t: Here, SV (s) and DV (s,t) are the static and dynamic scores for spot s, respectively. (These are described in detail below.). EV (s, S ,t ) is the maximum tour score obtained from touring spots in set S from time t after touring spot s (which we define later). The term time(s) is the time spent at spot s and the travel time from spot s to s .
The tour score calculated from this equation depends on the spot the tourist chooses as his/her next visit. The intent of this study is to calculate and present a tour score for each of the multiple tourist spot alternatives, allowing the tourist to choose the next spot to visit.

Static score component
We define the degree of matching between the user's preferences and the visiting spot s as the static score SV (s). For these static scores, the evaluation method proposed by Lim et al. [3] is used.

Dynamic score component
The dynamic score DV(s, t) at time t for spot s is calculated by the following equation: Here, TV (s,t) represents an additional feature of spot s at time t. For example, for a spot with a beautiful sunset or an exceptional night view, TV (s,t) would take a positive value when time t is in the evening or at night. CE(s,t) is a term representing the level of congestion, taking a large value when spot s is uncongested at time t and a small value when it is congested. W E(s,t) is a weather-related term that can be either positive or negative depending on the type of spot (e.g., indoor or outdoor) and the weather. These values are determined for each user's preference, spot, and situation.

Future expected score component
The future expected score EV (s, S ,t ) after visiting spot s is defined recursively by the following equation: Here, spot s is the next spot to visit after spot s. T end is the time of the tour's end, movet(s, s ) is the travel time from spot s to s , and stayt(s ) is the time spent (or stay time) at spot s .
The future expected score EV (s, S ,t ) is defined as the highest score that can be obtained for the group of spots that can be visited after visiting spot s before the end of the tour T end .

On-site Tour Planning Algorithm
A description of the assumed environment for each of the three proposed algorithms is shown in Table 2. The spot list Z shown in the table is a list of the tourist spots that will be visited based on the mobile application of the algorithm. Values for {Time, SpotID, Satis f action} for each tourist spot are stored in Z. The total satisfaction for the list of spots stored in Z is the tour score. The top three tour scores are determined and presented to the user.
The static score SV (s) is unchanged with time, while the dynamic score DV (s,t) varies with time t because of the variability of the measured values at each spot within each time period. To illustrate the application of the three proposed algorithms, each is applied in the assumed environment shown in Table 3.

Setting time slot width to simplify the problem
In the case of actual tourism, it may be desirable to produce a satisfaction value connected to the time spent at each spot using, for example, 1 min intervals. However, recommending a tour route in such a way would generate a huge amount of computation involved in assessing all the possible combinations of spots and visiting times. In addition to this computational challenge, our proposed algorithm is already expected to take more computational time than the usual tourism scheduling methods since it calculates satisfaction levels that can be expected in the future.
Therefore, rather than producing a value for each tourist spot each minute, we determine an evaluation value for each spot over a larger time interval, which allows us to calculate a sub-optimal solution relatively quickly under the assumption that only one spot is visited within a given interval. The proposed method calculates the total satisfaction value of a tourist spot for the specified time range as the sum of the static and dynamic scores.
The static score SV (s) is unchanged with time, while the dynamic score DV (s,t) varies with time t because of the variability of the measured values at each spot within each time period. To illustrate the application of the three proposed algorithms, each is applied in the assumed environment shown in Table 3.

Overview of three algorithms
As described below, the proposed algorithms for calculating tour scores are based on the greedy method.
Time Series Greedy Algorithm (Algorithm A) This is a greedy algorithm that considers only the evaluation values obtained for the next spot. An outline of the algorithm's application to the assumed environment is shown in Fig.1. In this algorithm, the arrival time at each spot in the set of unvisited spots S is calculated based on the current location, taking into account the duration of the stay (stay time) and the travel time. Algorithm A identifies, in order, the spot with the maximum score considering only the next spot, and determines the top three tour scores (assuming k = 3).
Whole Single Greedy Algorithm (Algorithm B) This is a greedy algorithm that takes into account the evaluations obtained for all of the time slots. An outline of the algorithm's application to the assumed environment is shown in Fig.2. With Algorithm B, the top three tour routes are selected by considering the travel time to each spot and the duration of the stay (stay time) in the list of spots to be visited, Z.
Whole Greedy Algorithm with Search Width (Algorithm C) This is a greedy algorithm that considers the evaluations which obtained up to the top k rank in all time slots. An outline of the algorithm's application to the assumed environment is shown in Fig.3. With Algorithm C, the top three tour routes are determined by recursively selecting spots within the top k of the total tour time, taking into account the travel time and duration of stay for each spot in the list of spots to be visited, Z.
Details of each algorithm in pseudo-code are provided next, followed by examples of their application in the assumed environment.   Recursively apply GetEVRoutes (T, S remain , Z tmp ) to find the maximum tour score route 6 return the top route for tour score

Details of Algorithm A
In Algorithm 1 -P1 (Main), the algorithm outputs the results of the route with the top three tour scores (list of spots to be visited), which is the sum of the evaluation value of the next spot calculated in Algorithm 1 -P2 (GetOptRoutes) and the future expected score calculated in Algorithm 1 -P3 (GetEVRoutes), and the tour score of each route. In Algorithm 1 -P2 (GetOptRoutes) , the algorithm calculates the evaluation value (the sum of the static and dynamic scores) for each spot in the set of unvisited spots S. At this time, the selected tourist spot is stored in Z, the list of spots to be visited. Then, using the updated set of unvisited spots S remain , the list of spots to be visited Z, and the tourism time T as arguments, the algorithm calculates the tour score in Algorithm 1 -P3 (GetEVRoutes). In Algorithm 1 -P3 (GetEVRoutes), the algorithm selects the spot with the lowest tourism time among the spots stored in Z. For each spot in set S remain (spots not yet visited), the evaluation value of the arrival time is calculated, taking into account the travel time and stay time for each spot. It then calculates the evaluation value of each spot and adds the spot with the highest evaluation value to Z, the list of spots to be visited. The spots added to Z are removed from the set of unvisited spots S remain . The same process is repeated until T end at the end of the tour, or until the set of unvisited spots is empty. The total evaluation value of the spots in Z at the end of the tour is the tour score. Add ts to Z and assign it to Z tmp 5 Recursively GetEVRoutes (k, cp, T, S, Z tmp ) to find the maximum tour score route 6 if there are k or more root results then 7 break 8 return the k routes for tour score

Example of Algorithm A
To illustrate Algorithm A, we applied it to the assumed environment described in Table 3. At the start, the user's location is {12:00, I}. Algorithm A first calculates the evaluation value considering the travel time to each spot in the unvisited spot set S remain . For example, if the tourist next visits spot A, i.e., {13:00, A}, the satisfaction score is 7. This is stored as {13:00, A, 7} in Z, the list of spots to be visited. Next, considering the time spent in {13:00, A} and the time spent traveling to each possible next spot, the maximum value of 6 occurs for spot C at 15:00. Thus, {15:00, C, 6} is stored in Z. Finally, considering the time spent in C and the travel time to each possible next spot, the maximum value of 4 occurs for spot G at 17:00, which means {17:00, G, 4} will be stored in Z. The tour ends with the time spent at {17:00, G}. The total satisfaction level stored in Z is thus 17. This is the tour score. Ultimately, the tour score for each spot in each unvisited spot set S remain is calculated, and the top three tour scores are presented to the user.

Algorithm B (Whole Single Greedy Algorithm) and Algorithm C (Whole Greedy Algorithm with Search
Width)

Details of Algorithms B and C
Since Algorithms B and C are the same except for the search width k (k = 1 and k > 1, respectively), the pseudocode shown in Algorithm 2 is used to explain both Algorithms B and C. In Algorithm 2 -P2 (GetOptRoutes), the algorithm calculates the evaluation value (the sum of the static and dynamic scores) for each spot in the set of unvisited spots S. At this time, the selected spot is stored in Z, the list of spots to be visited. Next, it calculates the tour score in Algorithm 2 -P3 (GetEVRoutes) as described below, with the search width k, current location cp, set of unvisited spots S, list of spots to be visited Z, and tourism time T as arguments. In Algorithm 2 -P3 (GetEVRoutes), the top k evaluated values of arrival time, spot are selected using the sort result T S calculated. We then employ GetEVRoutes recursively with the search width k, current location cp, set of unvisited spots S remain , replicated list of temporary spots to be visited Z tmp , and tourism time T as arguments. T S are sorted in descending order based on the tour time T , set of unvisited spots S, and list of spots to be visited Z. If more than one recurrence result is returned, the route with the best evaluation value among them is stored in Z out . If there is no recurrence result, the result before the recurrence is stored in Z out . When Z out is stored in R out , if R out contains k routes, the iteration is terminated and R out at that time is returned. The total evaluation value of the spots stored in the list of spots to be temporarily visited at the end of the tour is the tour score.
The search width used in the pseudo-code described here was set to k = 1 for Algorithm B and k = 3 for Algorithm C.
(As noted earlier, k > 1 for Algorithm C.)

Example of Algorithms B and C
We applied Algorithm B to the environment described in Table 3. The user's start location is again {12:00, I}. Evaluation values are calculated taking into account the travel time to each spot in the set of unvisited spots S. For example, if the next spot to be visited is {13:00, A}, the satisfaction level will be 7. Consequently, {13:00, A, 7} is entered in Z, the list of spots to be visited. Next, among the remaining candidates, the highest satisfaction value, 9, is for spot C at 17:00. Thus, {13:00, A} to {17:00, C} are stored in the list of spots to be visited, since this pairing is feasible considering the travel time and stay time.
Now the highest value available is 7. However, given the {arrival time, spot} entries already stored in the list of spots to be visited, no spot with an evaluation value of 7 is feasible. The next highest evaluation value is 6, for spot F at 15:00 (i.e., {15:00, F}). Considering the travel time and stay time, it is feasible to travel from {13:00, A} to {15:00, F}, and from {15:00, F} to {17:00, C}. Therefore, these entries are stored in Z. Since there are no more choices that can be added to the list, the tour is over. The total satisfaction level for the items stored in Z is 22. This is the tour score for a tour starting with A as the next spot visited. The tour score for each spot in the set of unvisited spots S is similarly calculated, and the top three tour scores are presented to the user.
Algorithm C can be applied to the same hypothetical environment. As before, the user's current location is {12:00, I}, and the evaluation value is calculated taking into account the travel time to each spot in the set of unvisited spots S. Storing the list of spots to be visited takes place at the end of the tour time for any route. When the tour score is calculated based on each evaluation value, the maximum route is added to R out . In this case, the maximum route is produced by adding {15:00, F, 6} to the temporary visitation list, Z tmp . The same can be done with {16:00, C, 7} or {15:00, C, 6}. The largest route in R out is added to the tour score route when there are three routes in R out . At this point, the tour score for {13:00, A} can be calculated. Ultimately, the same procedure is applied for each spot in the set of unvisited spots S, calculating the tour score for each spot and presenting the top three tour scores to the user.

Objective of the experiment
To test the effectiveness of the proposed algorithms, they were applied to an area in Higashiyama, Kyoto, Japan, containing 20 PoIs (Table 4, Fig.4), and tour scores were produced and analyzed. In addition, since this study assumes an on-site navigation capability, the computation times required to produce the tour scores were recorded.

Contents of the experiment
The proposed algorithms were written in Python and executed on a machine with an Intel Core i5 2.3 GHz CPU with 8.0 GB memory and amacOS Catalina OS.
The travel time between each spot and the stay time at each spot were taken from tourist information magazines [22,21] and from the Google Maps API (for values not included in the tourist information magazines). Static and dynamic scores were obtained from Google Maps.
A static score SV was assigned to each spot and scaled from 1 to 5. The dynamic score DV consists of additional points TV , congestion level CE, and weather-related term W E. TV represents an additional feature of spot at time. TV were assigned for each spot at each time, scaled from 0 to 2. For three spots (KDT, KYT, CIT), the time period 17:30-21:00 was assigned a value of +2, while the value for TV (the special feature variable) was 0 to 2. Four spots (RD, MP, SGR, TT) were assigned a value of +1 because they were featured in a tourist information magazine with text only without a photograph of illuminated maple leaves. For the other spots, the assigned value was 0. CE were a term representing the To produce a value for every 10 minutes, the 30 minutes values were replicated and a scale transformation to produce values from 0 to 2 was applied to the inverse of the replicated values. W E were a weather-related term that can be either positive or negative depending on the type of spot (e.g., indoor or outdoor) and the weather. W E were assigned for each spot at each time, scaled from -1 to 1. (For an outdoor spot, the assigned value is -1 if it rains and +1 if it is sunny. For indoor spots, the assigned value is +1 if it rains and 0 if it is sunny.) The heatmap for the total score calculated from the static and dynamic scores for each time period for each spot is shown in Fig.6.
The tour scores produced by the three proposed algorithms were compared with the total value of model routes described in the tourist information magazines. Because the system is assumed to allow on-site navigation, a target computation time of under 1 min was considered realistic.

Results
The experimental environment was assumed to be a sunny autumn day. The tour time was assumed to be 5 h, from 13:00 to 18:00. The time slot width was 10 min. The departure point was Gion Station, and there were no previously visited spots. The three proposed algorithms were run five times in the experimental environment. The output solutions and computation times are described below.    Fig.3. Here, popular spots are not visited at the time of their highest evaluation value since spots with high evaluation values are randomly visited, taking into account the stay and travel times. Because of this, it is more likely that spots are visited at a better time with Algorithm B. However, in terms of overall satisfaction, Algorithm A was superior.
Comparing Algorithms A and C, it can be seen that there is not much difference in the spots to be visited, but the time of day for the visits is substantially different. Algorithm C, which considers the top k spots among the overall evaluation values, was able to schedule visits at a better time, and thus the expected satisfaction was superior.
Comparing Algorithms B and C, Algorithm C considers the top k spots having a large overall evaluation value and also considers the spots that can be visited in the future, making Algorithm C's tour scores superior. However, Algorithm B resulted in superior score values when KNT is visited.
From the above, the three proposed algorithms work effectively in achieving their intended purpose. While Algorithm C produces the highest overall tour scores, Algorithm B tends to produce visits to high-scoring spots at their best time of day. " " " " " " " " " " " " " " " <QUM

Computation Times
The computation times for each algorithm for each of the five runs are given in Table 6. The results show average computation times of 1.9 ± 0.1 (s), 2.0 ± 0.1 (s), 27.0 ± 1.8 (s) for Algorithms A-C, respectively. Algorithms A-C were on-site practical in terms of computation time, and had satisfactory performance. All of the proposed algorithms were able to output a solution within one minute, which means that they can be used on-site.

Setting the width in Algorithm C
In the example above, the search width in Algorithm C was set to k = 3. To test the effect of the search width, a variable search width was considered. Fig.7 shows the computation time and tour score (overall tour satisfaction) when the search width k is assigned values between 1 and 5. As can be seen, the computation time increases exponentially with increasing k, while the tour score increases roughly linearly and then saturates. The reason for this is that, as the search width increases, more combinations of spots and time periods that can be visited in the future are searched.

Comparison with Model Routes
To assess the comparative performance, the output solutions from the proposed algorithms were compared with routes suggested in the two tourist information magazines used as references in the study [22,21]. The results are shown in   On the other hand, while Model Route 2 (39.8) produced an inferior score to Algorithm A (41.6) or Algorithm C (47.8), it produced a higher score than Algorithm B (38.3). A closer look, however, revealed that while Model Route 2 was superior to the route produced by Algorithm B in terms of overall tour score, Algorithm B produced a score of 8 for visiting CIT at 17:30, while Model Route 2 produced a score of 7.5 for visiting the same site at 16:50; that is, Algorithm B found a better time to visit CIT. The same is true for SGR. The implication is that using the overall tour score or overall satisfaction as a clear indicator of superiority or inferiority may not be appropriate in all cases.

Discussion
The reason that Algorithm A produces less satisfaction than Algorithm C is derived from the fact that the score values of the various spots differ depending on the time of the visit. In contrast to Algorithm A, Algorithm C selects a spot from the top three evaluation values by considering spots that can be visited in the future, enabling it to find a better time to visit a spot.
One of the reasons that the tour scores of Algorithm B turned out to be inferior to those of the two other algorithms is the presence of substantially more free time in the Algorithm B result, as indicated by the red areas in Fig.8 (note that Fig.8 shows only the highest scoring route for each algorithm). As shown, the total free time in the Algorithm B result is 30 min, whereas there is no free time at all in the results of the other two algorithms. Unlike Algorithm B, where the search width is 1, Algorithm C uses a search width of 3, which reduces the problem of fragmentation encountered by Algorithm B.

Conclusion and Future Work
In this paper, we defined a tour score consisting of three elements-static score, dynamic score, and future expected score-for the on-site tourist route search problem and proposed the Time Series Greedy Algorithm (Algorithm A), Whole Single Greedy Algorithm (Algorithm B), and Whole Greedy Algorithm with Search Width (Algorithm C) to solve the problem.
We applied the algorithms to 20 PoIs in Higashiyama, Kyoto, Japan, and evaluated the quality of the solution (tour score) and the computation time for each algorithm. As a result, we found that Algorithms A and B produced tour scores in realistic computation times, b) Algorithm C produced the highest tour scores, and the computation time was still realistic, and c) the computation time for Algorithm C increases exponentially as the width increases. The experimental results confirmed that the three proposed algorithms can output quasi-optimal solutions with trade-offs in computation time. The computation times when Algorithms A-C were applied to the same experimental environment were 1.9 ± 0.1, 2.0 ± 0.1, and 27.0 ± 1.8 s, respectively.
In the future, in this evaluation, the score values (static score and dynamic score) were set for general users. We plan to verify the effectiveness of our method for various types of users and in different areas (e.g., Arashiyama) by changing the scale of the score values (congestion, weather information, etc.). We plan to verify the effectiveness and efficiency of the proposed algorithms in multi-day travel [27] and multiple areas [26], because it is possible to assume not only a single area but also tourism in other area.