Development of Tourism Information System using Content-Based Filtering

DOI : 10.17577/IJERTV7IS050214

Download Full-Text PDF Cite this Publication

Text Only Version

Development of Tourism Information System using Content-Based Filtering

Ron Astle Lobo 1, Shridhar Suresh Bhat 2, J Shesha Shankar 3,

1,2,3 Undergraduate Student,

BNM Institute of Technology, 12th Main Road, 27th Cross, Banashankari Stage II, Banashankari, Bengaluru, Karnataka 560070, India.

S. Srividhya 4

4 Assistant Professor,

Department of ISE, BNM Institute of Technology, 12th Main Road, 27th Cross, Banashankari Stage II, Banashankari, Bengaluru, Karnataka 560070, India.

Abstract Tourism in Karnataka is scattered all over the web. There is no centralized system to provide necessary information for tourists. Tourists also face the problem of local language. Our proposed system is a centralized system based on Android that provides all necessary information for the tourists to organize a successful trip. The proposed system is implemented and tested to serve all types of travellers.

Keywords Tourism Information System, Android Application, Firebase, Data Mining.


    Tourism information is scattered all over the internet, it is a huge hassle to get the required information in time, it is also a burden to task one to search the information and there is no credibility of it [1].

    Well, the app features solutions to all doubts and gives the complete travel guide, right from you leave home till you reach back. The user will know the complete itinerary of your travel that will help the user plan what they want to cover in their duration. Assistance will be provided to the user using an Interactive Chatbot. This will provide convenience to the traveller

    The traveller can scan a board consisting the local language and avail its information in English.

    Lastly, if a traveller has a problem deciding the place they want to go, then they can use the recommender system to understand which place is suitable according to their criteria.


    Tourists face many problems when they plan a trip, the following survey results identifies different types of problems faced,

    Fig(1): Difficulties faced by travellers

    Fig(2): Travellers having dilemma in choosing a destination.

    Fig (1) and Fig (2) shows that majority of the tourists faces many problems like cost management, time management etc. But all these problem occur due to lack of planning. Moreover, the tourists will be in a dilemma to choose a place as among lot of similar places.


    The proposed system is aimed to provide an information system for tourists. The identified modules to achieve the goal are,

    1. Itinerary Builder.

    2. Recommender System

    3. Image Recognition

    4. Augmented Reality

    5. Chatbot

    6. Blogs

    7. Translator

    8. Review

      1. Itinerary Builder

        A successful trip depends on proper planning. In tourism, in which order the tourists visit the tourist place in a destination city plays a major role, because the problems related to time and cost management occurs due to lack of planning. The proposed system provides an itinerary for the user which results in solving both time and cost problem. It uses Google Places API [3] to get the list of tourist places around a city and apache server to get the distance between each pair of tourist places. Both apache server and Google Places API are cost affective and responsive compared to other available services. Finally Travelling Salesman Problem is used in dynamic approach to provide a best order to visit places in a city. Firestore is used to store and provide necessary information about each destination city and tourist place.

        Algorithm 1: Itinerary Builder Input: – destination city name C.

        Output: – ordered list of Tourist places P.

        Get list of tourist places L using Google Places API and City name C.

        for i L do

        calculate distance between each places

        using apache server and construct 2D matrix D from calculated distances.

        end for

        for i D do

        for j belongs to D do

        Generate list V using nearest-neighbour approach.

        end for

        end for

        for i V do

        use value V[i] as index in L to get the city name.

        Add that city name to ordered list P.

        end for

      2. Content Based Filtering

        People often would like to travel, but are unsure of the destination. A recommender system in this scenario would help the travel enthusiasts by providing them a list of places that match their inputs [2]. Here, the inputs taken from the user are the desirable weather conditions (such as temperature, rainfall) and also the proximity in terms of kilometres that i.e, the radius within which the user wants to travel. The algorithm makes use of Data Mining, and applies Cosine Similarity to find the similarity between the user input and the data in the data set.

        Given two vectors of attribute, A and B, the cosine similarity cos(), is represented using a dot product and magnitude as

        been retrieved from the data set against the users inputs.

        – For those values >=0.8, store it in a separate list L.

        end for

        for j in L do

        Display the result to the user in the form of a Recycler View.

        end for

      3. Image Recognition

    The single biggest hurdle when people are travelling from outside Karnataka is the language barrier. People often find it hard to read the sign boards that are written in Kannada. To overcome this we make use of Object Character Recognition (OCR). Tesseract is an OCR engine with support of Unicode and the ability to recognize more than 100 languages out of the box.

    Development of OCR is as follows,

    1. Initialize the Tesseract API with the parameters such as language code, language name and context of the application.

    2. Using the Image Cropper library, crop the part of the image from which the text needs to be extracted. Focus on this part of the image.

    3. In the background thread, pass the extracted image to the TessBase OCR Engine. This engine performs oper- ations such as line finding, baseline fitting, fixed pitch detection, and proportional word finding.[6]

    4. When the user hits the camera button, the extracted text is displayed to the user.

      iv. Augmented Reality

      Tourists normally find a barrier in connecting their experiences in the real world. In order to compensate the barrier the system


      uses Augmented Reality to connect their experience in the

      similarity = cos() =

      = =1

      2 2

      Augmented world. Augmented Reality [4] is a technology used



      to super-impose objects in the real world using a camera. The

      where Ai and Bi are components of vector A and B respectively.

      technology used in this system in Unity Development Engine and

      Vuforia. Vuforia Augmented Reality support should be imported

      to the Unity Development Engine. Vuforia is an Augmented

      A lgorithm 2: Content Based Filtering

      Input: – Weather, Rainfall, Distance,Month, Data set having N rows.

      Output: – List Of Places L.

      for i in N do

      get the rows from the data set and store it in an ArrayList Climate.

      end for

      for i in N do

      • Extract only the month, rainfall and maximum and minimum temperature

        from the array list.

      • Apply the mathematical formula of Cosine Similarity for the rows that have

      Reality Software Development Kit (SDK) formobile devices that enables the creation of Augmented Reality applications. It uses Computer Vision technology to recognize and track planar images (Image Targets) and simple 3D objects, such as boxes, in real-time.

      Development of Augmented Reality system works as


      1. Identification of markers (pointer in the Augmented world in which objects are super-imposed.

      2. Adding markers in Target manager (Located at the Vuforia dev portal) and storing them in a database.

      3. Generating a license key.

      4. Installing the .unity file generated from Vuforia in Unity project.

      5. Superimposing 3D plane on markers and adding relevant data.

      6. Posing the camera to the markers to generate the Augmented object.

    v. Chatbot

    Tourists having queries which are common can be clarified on the chatbot platform. Therefore in order to know more about a place, the chatbot system is suitable to fulfil the voids. In the proposed system Chatbot [5] is developed using services from and Firestore.

    Development of Chatbot is as follows,

    1. Adding the required dependency and differentiating between sent and received messages.

    2. Implementing a method connecting to Google Agent and to get response from it.

    3. Implementing a method to display a required message to user.

    vi. Blog

    This feature allows the users of the app to upload blog posts from their profile. These posts are made visible to the other users of the app, where they can like the posts as well as comment on them. The users of the app can also chat with one another. This makes use of the Firebase Realtime Database, through which the messages are retrieved in real-time. The user can also change his/her profile picture, and also change his/her status.

    The steps involved in this feature are-

    1. When the user uploads his/her profile picture, store this image in the Firebase Storage, retrieve the image URL and update the same in the Firestore document of the user.

    2. When the user adds a blog post, the image is added to Firebase Storage and the URL is retrieved and stored in the Blogs document of the Firestore database along with the description.

    3. As and when the other users of the app like or comment on any post, the data is accordingly update in Firestore.

    4. When a user decides to chat with another user of the app, in the real-time database, two child nodes are cre- ated.

    5. Under these nodes, the messages, along with the timestamp and message type keep getting added as and when a new message is sent.

      1. Translator

        This feature comes in handy when the user is not well versed with the native language of the place that he/she is travelling to. There would be situations when the user of the app is trying to find a hotel room, but doesnt really know how to convey this message to the locals of that particular destination. This is when the translator feature of the proposed system comes in handy.

        The translator works in the following manner-

        • The user enters the text to be converted in English.

        • The user then selects the desired language to which the text has to be translated to, from the Spinner that is provided.

          When the user hits Translate, a HTTP request is built in the form of a String and HTTP URL Connection is made. If the API makes a successful response, the JSON Array that is retrieved is parsed through and the translated language is fetched and displayed to the user.

      2. Review

    The proposed system also provides a feature of adding reviews. The user can choose to add a review only when he/she is comfortable and has been using the app for quite some time. The review consists of a simple rating system (out of 5) and also a brief description.

    The review feature works in the following manner,

    • Ask the user to rate the app out of 5.

    • Next, the user must enter a brief description about the app, such as how the app has helped the user, how is the overall flow, and more such things.

    • Once the user hits Submit, this data is stored in the Firestore database.

    If the user wishes to see all the reviews, he can do so, and the reviews are fetched from the database and populated in the RecyclerView.


    The proposed system is based on centralized architecture

    where different components of the application like login services, Itinerary Builder, Image Recognition etc.. connected to Firestore database and also another component Augmented Reality is connected independently. Following figure shows the detailed architecture of proposed system.

    Fig(3) : System Design


    The following results were obtained when the system was tested for various modules.

    Fig (4): Login page Fig (5): Signup page

    Fig (6): Home page Fig (7): Place Picker Activity

    Fig (8): Tourist place Fig (9): City Details Markers

    Itinerary Fig (11): Recommender System

    Fig (10):

    Fig (16):

    Translator Fig

    (17): Chat

    Fig (12): City Fig (13): Chatbot Recommendations

    Fig (14): Character Recongition

    Fig (15): Augmented Reality

    Fig(18): Contactus Fig(19): Blog


    The proposed system provided expected results when tested for different cities in Karnataka. The Augmented Reality along with Chatbot provides a rich user experience. The Recommender system and Itinerary Builder help tourist to refine their travelling experience by providing necessary information. Finally, the future enhancement may include to make the system applicable to cities all over India and also retrieve data dynamically from the web.


  1. V. Singh, A. Bali, A. Adhikthikar and R. Chandra, "Web and mobile based tourist travel guide system for fiji's tourism industry," Asia-Pacific World Congress on Computer Science and Engineering, Nadi, 2014, pp. 1-7.

    doi: 10.1109/APWCCSE.2014.7053840

  2. W. Chunhua, Z. Pengfei and W. Cong, "A Comprehensive Tourism Information System," 2006 4th IEEE International Conference on Industrial Informatics, Singapore, 2006, pp. 720-724. doi: 10.1109/INDIN.2006.275650

  3. Y. Wu, Z. Liang and L. Liu, "Design and implementation of tourism information system based on Google Maps API," 2013 21st International Conference on Geoinformatics, Kaifeng, 2013, pp. 1-4. doi: 10.1109/Geoinformatics.2013.6626139

  4. C. de la Nube Aguirre Brito, "Augmented reality applied in tourism mobile applications," 2015 Second International Conference on eDemocracy & eGovernment (ICEDEG), Quito, 2015, pp. 120-125. doi: 10.1109/ICEDEG.2015.7114484

  5. B. Setiaji and F. W. Wibowo, "Chatbot Using a Knowledge in Database: Human-to-Machine Conversation Modeling," 2016 7th International Conference on Intelligent Systems, Modelling and Simulation (ISMS),Bangkok, 2016, pp. 72-77.

    doi: 10.1109/ISMS.2016.53

  6. R. Smith, "An Overview of the Tesseract OCR Engine," Ninth International Conference on Document Analysis and Recognition (ICDAR 2007), Parana, 2007, pp. 629-633. doi: 10.1109/ICDAR.2007.4376991

Leave a Reply