Artificial Intelligence Aided Recommendation Based Mobile Trip Planner For Eskisehir City Ahmet Aydin, Sedat Telceken Department of Computer Engineering Anadolu University Eskisehir, Türkiye {ahmetaydin, stelceken}@anadolu.edu.tr Abstract— Recent years have seen a proliferation of applications aimed for the mobile users. Although there are some mobile trip planning applications available for big cities such Istanbul, they lack some important features that would be necessary for the best trip quality. This study proposes a new mobile trip planner for real-time navigation developed for Eskisehir city, Turkey (30 points of interests and more than 150 sub places). Given the current GPS location of the traveler and their preferences, the mobile trip planner allows finding a route which minimizes the total travelling time while optimizing the visiting time for each point of interest. The proposed application also gives some recommendations to the travelers which helps them to re-plan their route interactively. The details of the route computation algorithms and their test results are discussed and evaluated. Keywords—A*; Ant Colony Optimization; Mobile Application; Trip Planner. I. INTRODUCTION Nowadays, in a vacation or business trip, people who want to travel a city plan their trip either on web sites or mobile applications. With the increase on smart phone usage and the convenience of a mobile device for this kind of application, a demand has been revealed on mobile application markets. There are several trip planning applications on the market and they are useful and have rich content for popular cities. For other cities, most applications have poor or user-based, unreliable content. An application that uses a database with reliable and rich content that provided by local authorities like municipality and provincial directorate of tourism, can solve this problem. In this paper, designing database and collecting data stages have been explained in Section II. The application’s lifecycle and features have been described in Section III. Problem description and algorithms that produce routes have been examined in Section IV. In Section V, Artificial Intelligence based features of the application have been introduced. In Section VI, behavior of the application for different scenarios and results have been displayed and explained. II. DESIGNING DATABASE AND COLLECTING DATA A. Designing Database The reliability and performance of the application depends on a well-designed database. The data must be categorized into meaningful tables and keys and relations must be defined. Tables must be detailed to contain rich content. B. Collecting and Categorizing Data There are two types of data that the application uses: data that collected from users and reliable data that provided by local authorities. Eskisehir Provincial Directorate of Culture and Tourism and Eskisehir Metropolitan Municipality provided large amunt of data of visiting places that contains high resolution photographs, informative presentation and GPS coordinates [12, 13]. This data must be categorized to make it meaningful and easier to reach. Detailed information like open hours of a place, average visiting time, ideal hours to visit etc. can help the application to make more accurate plans. The application tracks user’s previous trips and actions. Thus, it can make reasonable suggestions. Also user’s comments and ratings about places may inform other users. A preliminary work is designing more than 30 points of interest (POI) and 150+ sub POI’s located inside the parent POI’s grouped by the popularity and content for Eskisehir city. These main POI’s are categorized in core class, like: Architecture, Art, Entertainment, Museum, Nature, Popular, etc. For a mobile application, there are several attributes to be practical. It has to be dynamic, user-interacted, capable of responding quickly, well designed etc. For a trip planning application, route must be calculated quickly for chosen visiting places and changeable. It should recommend places according to user’s choices and other user’s ratings. It should track user’s trip and make reasonable suggestions. Also it should have detailed information to make accurate plans. III. LIFECYCLE AND FEATURES OF THE APPLICATION Some GPS oriented transportation applications have been proposed in the literature [1, 2]. Decision support software was introduced for the urban freight transportation which could significantly improve the performance [3]. Multi-objective shortest path problems are examined in [4-11]. In the literature, there is no algorithm that uses search algorithm and recommendation system simultaneously. The lifecycle of the application can be described with a scenario. User travels to Eskisehir for two days and wants a cultural trip. He chooses start and end dates then places by chosen category list on the page with descriptions and ratings. After this operation, the application makes a plan considering open hours, ideal hours to visit and average time to visit and transportation time. Then separates places to days and returns user with routes by days. In the process of making route, the application should run an algorithm to sort places and that algorithm must make the calculations as fast as possible. Because user might want to change plan during the trip and routes must be prepared quickly. When user starts the trip, the application starts tracking him and make suggestions like adding or removing places according to user if he is ahead or behind the schedule. During the trip, the application scans places like coffee houses, restaurants with good ratings in a certain radius and presents recommendations to user. The application displays routes on map and leads user to next place. If user visits a complex place with multiple sub-places, the application encourages user to make a sub-route. After visiting places, user can rate places and write comments about them. IV. ROUTE PLANNING ALGORITHMS Finding the shortest route is a problem that very similar to Travelling Salesman Problem (TSP). TSP is the problem of a salesman who wants to visit all cities in a data set starting from a certain point and finishes his tour at that point. The tour must be completed with minimum cost [14]. Solution algorithms that can be applied to TSP can also be applied to the application’s route problem with several modifications. TSP is an NP-Hard problem that is increase of amount of cities in the data set affects solution time exponentially if all possible routes are tested [15]. Thus, with large amount of data, the solution time might take years. To avoid this, there are heuristic algorithms that gives optimum results in reasonable solution time. A. Problem Description A directed graph , representing the route, with POI’s set P and arc set A, is given. Three criteria are defined on the arcs: travel time and travel cost and travel type. Each POI includes visiting time (v), visit duration (d) and count of sub POI (c). This identifications are used in a triplet , , . For indicates the travel time, each arc , , indicates the travel cost and the travel type. These arc values can change during the time, we consider a discretization of the day in 5 time slots. Therefore each criterion can be considered constant on each time slot. On the graph G, a set of route is also defined, where each , , in denotes that the arc , cannot be traveled after arc , . A traveler who uses mobile application identified by the triplet , , , given his current GPS position at the instant time and its route . We proposed for solving that search problem A* Algorithm and Ant Colony Optimization which is detailed below. B. A* Algorithm A* Algorithm is developed by Hart, Nilsson and Raphael in 1968 [16]. It guarantees to find the optimum route from start point to end point if there is route. It is usually used for network routing, finding shortest path for games etc. [17, 18]. It chooses the next point by current cost from starting point and heuristic distance to ending point. (1) Basically, it calculates the heuristic function f(n) (1) for each point. In this formula (1), g(n) represents the cost from starting point to point n and h(n) represents the heuristic distance from point n to end point. According to calculated f(n) values, points are stored in an ordered stack. The algorithm calculates the route by selecting points from stack by order and checks the route if it is optimum. It stops when the next point in the stack is end point. C. Ant Colony Optimization Ant Colony Optimization was presented as a PhD Thesis by Marco Dorigo in 1992 [19]. It is usually used for vehicle routing, data mining etc. [20, 21]. It is based on ants’ path finding to their nest. While ants carrying food from food source to their nest, they choose random paths and leaves pheromones on the road. These pheromone are volatile. Thus, it is more intense on shorter paths. Other ants prefers the road with more pheromones but not always. Some ants prefers new roads to seek shorter paths. By time the shortest paths will be preferred by ants and total shortest path reveals. V. ARTIFICIAL INTELLIGENCE AIDED RECOMMENDATIONS OF THE APPLICATION AND SUB-PLANNING A. Producing Recommendations A regular trip planning application calculates a route by user’s choices and finishes its job. But usually, user does not follow the schedule precisely. Visiting durations or transportation time or extra points might change the schedule. The application must follow these changes and can produce alternative routes by user’s choices. Application must have an option for producing recommendations or run regularly. When user starts the trip with his choices by his interests, the application tracks him by GPS coordinates. It checks if he is on schedule or not. If he is ahead the schedule, the application recommends new places to add to trip. In this situation, the application scans an area with a certain radius for user’s interests that he chose at the beginning. According to user rates, places are recommended to the user. If he is behind the schedule, the application suggests user to reorganize the trip. When the schedule changes, the route must change also. At certain time intervals, the application recommends places to rest like cafes and restaurants. If user prefers to visit these recommendations and after these changes he is behind the schedule, user needs to decide to extend the schedule or remove some places. In a scenario with user chooses 5 POI’s like in Fig. 1, the application calculates the total time needed for trip and recommend places periodically. Fig. 1. Start-up Scenario During the trip in Fig. 1, the application should recommend a café or restaurant with high rates between and . The application recommends several places and user chooses a restaurant called “Papagan Restaurant”. Then new route is calculated in Fig. 2. Fig. 2. Scenario after chosen recommendation This feature provides user a detailed tour. In Fig. 4, user visits a park called Sazova and in the park there are several places to visit like Castle, Pirate Ship, Zoo etc.. While making the plan at the beginning, user chooses the park but when he visits, sub-places need to be introduced to user. Then informed user can make choice of sub-places and make a sub-plan as distinct from the main plan. VI. RECOMMENDATION COST , the time that user decided for trip is not After new enough for the schedule and user decided not to extend the time. Then the application checks POI’s from to for transportation and visiting times if time is enough after removing a POI. Then it suggests several alternative schedules and user chooses one. Then new route is calculated in Fig. 3. The application tracks the user during whole his trip and offer suggestions at certain times and on certain situations if user selects the recommendation option at the beginning of the trip. According to total time t and free time of user’s schedule amount of recommendation might change dynamically. For example for a 9-10 hour trip schedule, user needs to rest at a café and have lunch at a restaurant but for a 3-4 hour trip schedule, a short stop for a café on the road might be enough. Each recommendation might change rest of the schedule and route dynamically. For changes in route calculations must be made and each calculation has a cost. There are two scenarios and results for each scenario if user chooses to add recommended places to tour and change trip by alternatives. TABLE I. POIS AND GPS COORDINATES FOR TEST POIs Fig. 3. Recalculated route after delaying B. Sub-planning Another feature of the application is, when user visits a complex place with sub-places, the application makes user to plan a new trip inside the complex place. For example, (Fig. 1) has sub-places. When user visits , sub-places are being listed and user chooses of them. Then a new route calculated inside like in Fig. 4. Fig. 4. Sub-route in a complex place . GPS Coordinates 39.765505, 30.471746 39.781275, 30.513441 39.771555, 30.516892 39.765234, 30.521856 39.774921, 30.549236 39.776077, 30.515681 39.765720, 30.513063 39.781222, 30.526839 39.757967, 30.531173 39.772172, 30.520269 39.775023, 30.518881 39.771243, 30.529220 In Scenario 1, user plans a trip with first 5 places in Table I. Between and , the application offers a recommended place . If user adds this place to trip, the application produces two alternative plans for the rest of the trip. Alternative 1 is , , , and , , , , . Alternative 2 is In Scenario 2, user plans a trip with 10 places , , , , , , , , , in order. Between and , the application offers a recommended place and between and , another recommended place . According to user’s choices, the application produces two alternative plans. Alternative 3 is , , , , , , , , and Alternative 4 is , , , , , , , , , , . TABLE II. RESULTS FOR ALTERNATIVE PLANS .. Recom. 5 5 5 10 10 10 N Y (Alt. 1) Y (Alt. 2) N Y (Alt. 3) Y (Alt. 4) 5 4 5 10 9 10 Total Travel Time (min.) Total Dist. (Km. ) Total Visit Duration 26 31 23 47 48 50 12.4 14.0 10.3 19.7 19.1 20.0 6h 30m 5h 50m 6h 11h 20m 10h 10m 10h 30m Alg. Running Time (ms.) A* 1 1 1 2 1 2 ACO 2 2 2 16 15 17 In Table II, results according to different scenarios have been shown. ∑ , is represented by Total Travel Time. POI numbers are changed after recommendations in two alternative plans. For alternative plans, new routes are calculated and Total Travel Time, Total Distance and Total Visit Duration are affected. Total Visit Duration is calculated by sum of the visit duration of POIs that is stored in database. Comparison of A* Algorithm and Ant Colony Optimization reveals that A* Algorithm runs %50-90 faster. Alternative routes are calculated dynamically and results must be displayed to user immediately. A* Algorithm provides less time consuming and reasonable accuracy and these two features are essential for the application. Pseudo code that explains the lifecycle of the application is written Fig. 5. Fig. 5. Pseudo code of the application’s lifecycle calculate(G(P,A)); while(POI in P) visit(POI); if(POI has sub-POIs) P=sub-POIs; calculate(G(P,A)); endif scanArea(radius); if(recommendation) produceAlternatives; recalculate(G(P,A)); endif endwhile scenarios divided into normal route selection, artificial intelligence aided recommendation and sub-planning. Their test results showed that A* algorithm gives the best results rather than Ant Colony Optimization in terms of running time. Additionally artificial intelligence aided application presents the user with alternative suggestions during the trip, which help increase the total quality of the trip experience. Proposed application also gives the sub point of interests under the planned route. This will help the user not to skip important popular places inside a park, museum or historical area etc. Sub-planning provides the user to finish that point in minimum amount time. Experimental results show that A* algorithm calculates the complete route %50-90 faster than Ant Colony Organization under the same scenarios. Overall, the mobile trip planner can assist travelers to optimally design their travel routes online before the trip begins. REFERENCES [1] [2] [3] [4] [5] [6] [7] [8] [9] VII. SUMMARY AND CONCLUSIONS In this study we proposed a recommendation based mobile trip planner that assists travelers and would be travelers in finding routes that fit their personal preferences. Using the user-friendly Google Maps interface, the mobile application allows users to choose categorized places. After that preference application calculates the best route in specified time interval. At present, A* and Ant Colony Optimization algorithms are chosen for computation of the best routes. These algorithms are examined for different scenarios. These [10] [11] [12] [13] [14] Crainic, T. G., Ricciardi, N., & Storchi, G., “Advanced freight transportation systems for congested urban areas”, Transportation Research, Part C: Emerging Technologies, 12(2), 119-137, 2004. Taniguchi, E., Thompson, R. G., Yamada, T., & Van Duin, R., “City Logistics. Network modelling and intelligent transport systems”, Amsterdam : Pergamon, 2001. Crainic, T. G., Gendreau, M., & Potvin, J. Y., “Intelligent freighttransportation systems: Assessment and the contribution of operations research”, Transportation Research Part C: Emerging Technologies, 17(6), 541-557, 2009. Azevedo, J.A., & Martins, E.Q.V., “An algorithm for the multiobjective shortest path problem on acyclic networks”, Investigação Operacional, 11 (1), 52–69, 1991. Clímaco, J.C.N., & Martins, E.Q.V., “On the determination of the nondominated paths in a multiobjective network problem”, Methods in Operations Research 40, 255–258, 1981. Corley, H.W., & Moon, I.D., “Shortest paths in networks with vector weights”, Journal of Optimization Theory and Applications 46, 79–86, 1985. Tung, C.T., Chew, K.L., “A multicriteria Pareto-optimal path algorithm”, European Journal of Operational Research 62, 203–209, 1992. Luè, A., Ciccarelli, D., Colorni, A., “A GIS-Based Multi-Objective Travel Planner for Hazardous Material Transport in the Urban Area of Milan.. In: Bersani, C., Boulmakoul, A., Garbolino, E., & Sacile, R. (Eds)”, Advanced Technologies and Methodologies for Risk Management in the Global Transport of Dangerous Goods, 45, IOS Press, 2008. Luè, A., Colorni, A., “A multicriteria spatial decision support system for hazardous material transport In: R. Bisdorff, R, Dias, L., Meyer, P., Mousseau, V., & Pirlot, M. (Eds)”, Evaluation and Decision Models with Multiple Criteria: Case studies, Springer-Verlag, Berlin, 2015. Sastry, V.N., Janakiraman, T.N., Mohideen, S.I., “New algorithms for multi objective shortest path problem”, Opsearch 40, 278–298, 2003. Sastry, V.N., Janakiraman, T.N., Mohideen, S.I., “New polynomial time algorithms to compute a set of Pareto optimal paths for multiobjective shortest path problems”, International Journal of Computer Mathematics 82, 289–300, 2005. http://www.eskisehirkulturturizm.gov.tr/ Last Visited : 12.12.2014 http://www.eskisehir-bld.gov.tr/ebb.php Last Visited: 12.12.2014 Russell, S., Norvig, P., “A modern approach. Artificial Intelligence”, Prentice-Hall, pp. 69, 1995. [15] Karp, R. M., “Reducibility Among Combinatorial Problems”, Complexity of Computer Computations, New York, Plenum, pp. 85-103. [16] Hart, P. E., Nilsson, N. J., Raphael B., "A formal basis for the heuristic determination of minimum cost paths", Systems Science and Cybernetics, IEEE Transactions on 4.2, pp. 100-107, 1968. [17] Cui, X., & Shi, H., “A*-based pathfinding in modern computer games”.International Journal of Computer Science and Network Security, 11(1), 125-130,2011. [18] Wang, J. Y., Lin, Y. B., “Game AI: Simulating Car Racing Game by Applying Pathfinding Algorithms. International Journal of Machine Learning and Computing”, 2(1). [19] Dorigo M., “Optimization, Learning and Natural Algorithms”, PhD thesis, Politecnico di Milano, Italy, 1992. [20] Gambardella, L. M., Taillard, É., Agazzi, G., “Macs-vrptw: A multiple colony system for vehicle routing problems with time windows. In New ideas in optimization”,1999. [21] Parpinelli, R. S., Lopes, H. S., Freitas, A. A. “Data mining with an ant colony optimization algorithm”. Evolutionary Computation, IEEE Transactions on, 6(4), pp.321-332,2002.
© Copyright 2024