An Innovative Tour Recommendation System using Graph Algorithms

Background: Tour recommendation and path planning are the most challenging jobs for tourists as they decide Points of Interest (POI). Objective: To reduce the physical effort of the tourists and recommend them a personalized tour is the main objective of this paper. Most of the time people had to find the places he wants to visit in a difficult way. It kills a lot of time. Methods: To cope with this situation we have used different methodology. First, a greedy algorithm is used for filtering the POIs and BFS (Breadth First Search) algorithm will find POI in terms of user interest. The maximum number of visited POI within a limited time will be considered. Then, the Dijkstra algorithm finds the shortest path from the point of departure to the end of tours. Results: This work shows its users list of places according to the user's interest in a particular city. It also suggests them places to visit in a range from the location of the user where a user can dynamically change this range and it also suggests nearby places they may want to visit. Conclusion: This tour recommendation system provides its users with a better trip planning and thus makes their holidays enjoyable.


I. INTRODUCTION
Learning is a great motive to people for traveling.They need to encounter something new and have new information and aptitudes.By seeing the world is more instructive than a school or secondary school course.It helps to learn such as history, geography, and sociology when someone discovers how the rest of the world lives.Each place has something special character to direct visitants, and the best learning experience is to immerse themselves in an entirely unique environment.Individuals may head out to master something explicit: another dialect, another cooking, parts of alternate culture, or a more profound valuation for confidence or otherworldliness.They're going to take more than their specific goal as a bonus.They will find completely different ways to do things.They will also become aware of new customs, cultures, people, and places.
A recommendation system or a guidance system can be characterized by an information filtering system that helps a user to predict items or things based on relevant information regarding that item [1] [2].The data can be obtained directly or indirectly [3] [4] [5] by monitoring users' behavior or collecting users evaluations.Tour suggestion and navigation are challenging tasks because of individual tourist has different interest and preferences.Although a vast volume of information is available, to reduce them to the potential amount of POIs is quite difficult while visiting an unknown area.
To resolve the issue, we have developed an Innovative Tour Recommendation System.The purpose of this system is to provide complete planning to the tourists about a certain place which he/she wants to visit.By using this system, users can explore maximum places in the shortest possible time.It receives information about the place tourists locate at and the start and end place of the visiting.So that it makes a total plan of their tour.The main objectives of this proposed framework are: to reduce tourists physical effort, to provide users complete planning, enable users to save their time, and to facilitate visitors to visit maximum places.
To build the framework, we used the shortest path algorithm to find the shortest path in visiting a place.So, the tourists can visit the place in shortest time rather than wasting their time in reaching out the destination.Then Dijkstra's algorithm and sorting help to search nearest tourist spots according to the user's interests.

II. LITERATURE REVIEW
We have studied some related papers and gathered some knowledge which will be beneficial for our work.As seen in [6], it contains a proposal that can recommend destinations according to tourist's interests through a simple operation.This system simplifies travel planning.They used images to get the tourist's preferences.By using a road map this problem can also be solved.C.Zhang, H. Liang, K. Wang, and J. Sun [7] present an efficient solution to the Point of Interest (POI) availability constraints.They formulated the personalized trip recommendation system to save the sequence of POI.They proposed both favorable and heuristic solutions.By this way, it is impossible to present the touring time of POI in the happiness score.Personalization system for tourist POI guidance is proposed in [8].It also provides information to the tourists easily and from that information, one can get a clear idea about their visiting.Users can get a clear idea about the place spending less effort.But it will become a hard task in case of complex probability and professional methods recommendation system for POI.
As mentioned in [9], it presents effective solutions to the constraints.Besides users can comment after visiting and from these comments other users may get help.They presented two optimal solutions which ensure them to find a favorable trip.A Bayesian learning paradigm is developed for obtaining the route from photos and directed personalized tour recommendations in accordance with tourist interest [10].A web-based pervasive recommendation system is proposed in [11].A WSN installation around the tourist spots for shortcut location is used there.It also enables users to comment about their views which help other users in the future.It reduced information burden and load for the users.But in their work users can't find information on restaurants, entertainment, souvenir shops, and local authorities.
In [12], best clusters according to Point of Interests (POIs) is searched.It also performs re-matching of clusters and provides additional services according to customer's choice.This paper describes two modules: 1) Recommendation and 2) incorporating real-time changes of POIs.It uses web scrapping techniques meets the additional service demand of the users.There is also discussed a situation when a small modification in the cluster choice can reduce the number of clusters and hence make the system less time-consuming.
The personalized version of the tour recommendation is introduced in [13].Firstly, it collects data and photos of POIs and analyzes them taking tourists constraints in concern.Later ant colony optimization algorithm is used to select the best itinerary.Then it displays the user in a simple graphical way using maps.
A lot of paper recommends tour places using social media data namely Sina company in China [14].Firstly the users can view and read blogs written about spots by visitors.Data mining is used to make web crawlers.Those data are then filtrated in accordance with the orientation of a tourist's sentiment.This also contributes to creating potential awareness of the tourists.Potential awareness is a fundamental and most important topic to plan a success full trip.
An earlier work on tour recommendation can be seen in [15].It mainly focuses on the time taken by a particular tour and the budget time of the tourists.Here complex mathematical calculations are associated to determine the exact time requirement during a tour.This allows the interaction of users with the search techniques and also detects any similarity between two selected paths.Thus it removes or suggests avoiding those redundancies of data and helping to make a trip success full.
Tour suggestion and route outlining are demanding duties for travelers because of selecting points of interest [16].It endorses a method named PersTour for promoting personalized trips applying POI popularity and user preference.The basic phenomenon is that it uses the baseline algorithm.From a starting point, it can choose a random POI among several POIs.Then it finds out which one is the best.Budgeted time for the tour is its basic concern and it also introduces personalization using geo-tagged photos.This paper also includes uploaded data and pictures on different varieties of well-known social media.
A trip recommendation has been an all-around considered field, with a lot developed applications [17] [18] [19] and research ranging from recommending wonderful, peaceful, and comfortable tours [20] to tour recommendation utilizing random walks with restart [21].Numerous visitor trip planning methods have been established [22] which promotes an optimal route development to visit POIs of most astounding fulfillment esteems for a tourist in a given destination.
Unfortunately, most existing recommendation systems are still rarely used because of their effectiveness in holding tourist activities, serving data needs and enhancing tourist experiences are entirely unknown.The website like TripAdvisor only shows the list of tourist spots in certain places but it does not suggest any planning about the tour.Websites like Inspirock help to make a plan about the tour but it is not according to the tourist's interests.On the other hand, our websites make the planning of the tour according to the tourist's interests and only show all the tourist spots of that specific place.

A. Greedy Algorithm
The main purpose of our paper is to find out the best POI according to the user's interest concerning the tour constraints.So, by considering how much POI can be visited within the limited time we will use a greedy algorithm to filter out POIs according to user interest.We also will use some basic search and traversal techniques Hossain, Tanim,Nawal, &Akter Journal of Information Systems Engineering and Business Intelligence, 2019, 5 (1), 32-39 34 to choose places.Shortest path algorithm will be used to detect the shortest path between the starting and end point of the travel itinerary.

B. Dijkstra's algorithm
Dijkstra's Algorithm allows calculating the shortest path from the point of departure to the end of tours.From the result of this algorithm, we can sort the POIs where POI with lesser distance will be first on the list.As the name BFS suggests, it is required to traverse the graph breadth wise as follows: first, move horizontally and visit all the nodes of the current layer and then move to the next layer.Here, it will search POIs according to traveler's interest.Algorithm 2: BFS Input: A graph with n nodes in a queue A Output: Sequence of nodes according to BFS BFS(graph,initial): A.push(initial) while A is not empty B=A.pop() forneighbour C of B if C is unvisited A.push(C) endifendwhile D. PHP, SQL, and HTML As we will show the project as a website so we will use PHP and HTML to create system visualization.To perform queries on the represented data we will use Structured Query Language (SQL).Queries will be a kind of list of POIs, arrival time, other facilities.

A. Context Diagram
A context diagram is a figure which gives a pictorial view of the relationship between entities and the system.A context diagram for this paper where the relation between the entities and the system are shown in Fig. 1.Here the tourist first register or login to the system via email and phone number.Then the tourist inputs his/her interest of tour.Then they have to input the starting and ending point of the tour.Thus the system shows a list of places on the basis of this information.The admin displays the map and nearest related places and provide some recommendations.Here a user inputs password and email.He is logged in if he has an account or registration is required for the further query.If he is not logged in for issues like the wrong password or email the application terminates.Or if he is logged in he is asked for his interests like beaches, Zoo, Parks, Hills or anything else.Then using Dijkstra's algorithm shortest paths are selected and form a list of POIs according to user interests.In POIs selection method user input his/her interest and gives the list of POIs as output.Again, user can input the current location and can view the nearest tourist spot in detail.

C. Working Procedure
We have developed a website named "Innovative Tour Recommendation System".This site shows places where a user can go for a tour.First, a user when he enters the website can sign up or login.If he already has an account on our site then they may simply enter the main part of the site by login method.In this method, a user must enter the right username and password exactly what they have entered in time of signing up this site.Later he can view the page About Us to know the idea of this site means to know why this site is for, what are its purpose and functionality and all.The search page is the main feature of our project.Here a user can search for different places according to their interest.If a user wishes that he will see hill view he can do this of course.Again if a user wants to find places nearest to him according to his interests then the site shows them a clear list of those places.Here the site also shows the distance of those places from the user in kilometer values.Thus, a user can easily make a plan for an effective tour.The flowchart for the tour recommendation system is illustrated in Fig. 2.

A. Registration Page
The user has to fill up the form below to get registered.The user enters the first name, last name, username, password and address here in the form below.When the button signup is pressed then the particular data given by the user is stored in the database.A user who has no account on the website must register before they want to use the site.3(a) shows our website's homepage.HTML and CSS scripts are used to design the layout of this page.A heading named "An innovative tour recommendation system" is used in every page of this site.Navigation bar containing Homepage, About Us, Sign Up and Login link is created.A background image is also added to this page to make this website more beautiful.

C. Login page
In the login page, User must need to enter username and password to get logged in.If the user enters username and password then the program checks if his/her entry matches with any data in the database where user's details are stored when the user is logged in and can have the access use the features of this site.

D. Search Page
This is the main working page of our website.Here a user can see all places he/she can explore.This is the functional part of the website.Fig. 3(c), 3(d) shows all places that the user wants to go to for a tour.This also includes location, city and the types of place which includes beach, restaurants, hills, lake or something else whatever one wants to travel.This page shows the personalized result of the user's interest.Here a user can enter his source, destination and in which particular city he wants to visit.A user gets the information to know which place takes less time and which one takes much more time to go to with places in decreasing distance from the user.A place near to user will be shown upon the top of the list and with greater distance in the bottom of the list.Fig. 3(e) shows the list of places in a range.A user can set this range and see which places he can visit within a range.The range is calculated in the kilometer.It also takes the users location as input.

E. Review Page
The normal individual in the 21st century is immovably tied down in the virtual world that exists over the web.It is, in this manner, not astounding that 90% of individuals first look at what their companions are stating before settling on the choice to assist the connection.Audits are, in this way, a noteworthy driver of the business that happens over the world.Fig. 3(f) shows a page where a user can give a review.As this is a website user may have some complaint or some compliment or some more expectation from the site they are welcome here to write here with their email id.
For example, a tourist wants to visit naval sea beach located in the Bay of Bengal south from the port city of Chattogram, Bangladesh.Our tour recommendation website helps him to make complete planning.First, if the tourist has no account, he has to fill in a form to get registered.In the homepage, this user can view different options like "All Places", "Places according to interest and city" and "places and nearby"."All places" reveals all areas that the tourist wants to travel.In the "places and nearby" option by entering source and interest location like a beach or lake or something else, he gets a list of a different tourist location.This page also shows the personalized result of the user's interest.So obviously a user will want to know which place takes less time and which one takes much more time to go to.Thus this framework provides users with places in decreasing distance.A place near to user will be shown up on the list and with greater distance in the bottom of the list.The range is determined in a kilometer.Fig. 3(d) shows that the naval sea beach is 13 kilometers far away from Agrabad, Chattagram.V. DISCUSSION Here we have surveyed the user review after using our website.The survey is done over 9 female and 10 male users.The average numbers of votes on different options of the 8 questions are plotted in the graph as seen in Fig. 4. From the graph, we can see that the users quite like this website.As disagree and strongly disagree section is completely avoided by the users, this means that they have appreciated this work.Here for question 1, question 3 and question 6.50%users voted for "Agree" and 50%for "Strongly Agree".For question 2 and question 4.90%users voted for "Agree" and 10% for "Strongly Agree".For question 5.40%users voted for "Agree" and Hossain, Tanim,Nawal, &Akter Journal of Information Systems Engineering and Business Intelligence, 2019, 5 (1), 32-39 38 50% for "Strongly Agree" and 10% voted for "Neutral".For question 7.20%users voted for "Agree" and 80% for "Strongly Agree".For question 8, 40%users voted for "Agree" and 60% for "Strongly Agree".After the survey [Table 1], we can come to a very good response at the end.A comparison between our proposed system and related studies is provided in Table 2.  Existing System Our Proposed system provides the users nearest tourist spots according to users' interest and helps to make a plan.
TripAdvisor website shows only the list of tourist spots in some places but does not suggest any tour planning.Our website not only shows the nearest spots but also help users to visit maximum places in the shortest possible time by showing them distances of the places from their source.
Inspirock website provides plan about the tour and shows users different places according to their choices but they do not give any information about distance.Through our website, people get an idea about his visiting places and which places he should visit according to his choices and locations.

VI. CONCLUSIONS
This is an interactive website that is handy to use.Its user interfaces make a clear and concise viewport to its users where they can find all places to explore.Again it provides the user with the facility that they can get a personalized list of places.Nearest places to the user can be viewed as a list.Thus they can make a plan for an entire tour that they should take.Review system makes the user to freely make suggestions to make the site more improved and attractive.
In the future, by improving the visual part, we will make the website more user-friendly.We have planned to insert some description about the places which we show in All Places list and add more places which help the users to see more attractive places then subdivide categories of places elaborately to choose tourist spots more specifically.Subsequently, by adding images of the places, users can get a better idea to take a decision.Finally, try to add features of the booking system to book hotels or restaurants through our website.

Algorithm 1 :
Dijkstra's algorithm Input: A vertex set V with n vertex Output: the shortest distance between two vertexes.Dijkstra's algorithm(Q,initial): fori=0 to n distance[i]:=infinity endfor distance[initial]:=0 while(Q!=empty) A:=neighbour vertex with min distance from initial.delete A. for a neighbour B of A: alternative_distance:=distance[A]+edge[A,B].ifalternative_distance<distance [B] distance [B]:= alternative_distance. end if end while C. Breadth First Search (BFS) BFS is a traversing algorithm or searching tree or graph data structures.It begins traversing from a source or starting node and traverses the graph through layer-wise thus examining the nodes which are directly connected to the neighboring node.

Fig. 1
Fig. 1 Context diagram for tour recommendation system

Fig. 3
Fig. 3 Different pages innovative tour recommendation system website: (a) Homepage (b) Searching (c) All places to explore (d) Showing places of interest (e) Nearby places and (f) Review

Fig. 4
Fig. 4 Summary of Usability Study

TABLE 2 COMPARISON
WITH EXISTING SYSTEMS Proposed System