1,685
Views
0
CrossRef citations to date
0
Altmetric
Research Article

An ontology-based web decision support system to find entertainment points of interest in an urban area

ORCID Icon, &
Pages 505-522 | Received 17 Aug 2021, Accepted 19 Dec 2022, Published online: 24 Jan 2023

ABSTRACT

In recent years, decision support systems (DSSs) have successfully deployed ontologies in their architecture. The result of such a use is information systems that assist users and organizations in semi-structured decision-making activities. Visitors from throughout Iran travel to different cities and regions every year, and they need help making their choices. Some of these tourists are unable to visit the beautiful areas of the destination city due to a lack of awareness. In this study, we design an ontology-based spatial DSS to find entertainment and tourism centers in Arak, Iran. The objective is to provide users with recommendations appropriate for the location, time, age group, type of activity, and other factors. In this model, the demands and concerns of tourists have been managed by creating a domain Web Ontology Language (OWL) for entertainment centers as a knowledge base in the Protégé environment. The developed web-based DSS operates on a client-server architecture using technologies such as Werkzeug and Flask. As a result, it makes it possible to ontology reasoning based on the HermiT engine to choose the right center and conduct a semantic search on classes related to the appropriate point of interest. The main distinction between the proposed methodology and the previous studies on spatial DSS is that criteria are object properties in an ontology. Therefore, decision support relies on real-time reasoning rather than transforming criteria into geospatial layers. The evaluation results confirmed efficient interaction with this system, purposeful information retrieval, and rapid decision-making process. The results also indicated that searching for a POI (point of interest) in the study area using the developed system is at least 30% more successful than a search engine or social media. Moreover, to overcome the cold start problem, the proposed technique might be utilized in conjunction with the POI recommender systems.

1. Introduction

The decline of the manufacturing industry and the emergence of a new form of city development has been a global phenomenon. Global change has led to the decentralization of manufacturing industries in cities (Child Hill and Kim Citation2000). Producers have relocated to the suburbs, leaving vacant land in cities (Adams, De Sousa, and Tiesdell Citation2010). Cities around the world confront a variety of post-industrial sites such as factories, power plants, railways, mining areas, etc. These areas can be used to create cultural and commercial facilities and entertainment complexes, which will attract tourism (Evans Citation2009; Loures Citation2015). Urban Entertainment Center (UEC) is usually a dominant structure in the urban landscape, which includes components such as shopping malls, cinemas, theaters, restaurants, and parks (Bender Citation2003). In the context of tourism, UECs and other POIs (point of interests), ranging from historical landmarks to simple restaurants, have a significant potential for tourism. All of these places may be for urban walks and entertainment; however, having the appropriate knowledge can assist in providing the best service possible. Such a situation has increased in Iran’s cities, which are becoming industrialized and modernized. Often choosing a suitable recreation or welfare POI, especially for nonresidents, becomes a problem. Most of the information about the entertainment centers of Iranian cities, such as Arak, is not categorized, where search engines also provide escaped information.

Along with contributing to the economy of the city and the construction of leisure and welfare complexes in unoccupied spaces, location-based services and decision support systems may improve visitor numbers and boost tourism. A Decision Support System (DSS) is an information system that supports business or organizational decision-making activities. Since corporate and public problems are rapidly changing and unpredictable, DSS seems very helpful in management and planning (Keen Citation1980). The DSS is a knowledge-based system that incorporates raw data, documents, and personal knowledge to generate useful information on problem-solving and decision-making.

A group of DSSs uses ontology to represent and extract knowledge. The capacity to explain complicated logical interconnections between things and concepts in a realm of knowledge, along with logical reasoning, is a benefit of such an approach (Guarino, Oberle, and Staab Citation2009). In computer science and information science, an ontology encompasses a representation, formal naming, and definition of the categories, properties, and relations between the concepts, data, and entities that substantiate one, many, or all domains of discourse. Many computer applications, such as information retrieval, benefit from the consequence of this. An ontology may play a crucial part in developing DSSs since they demand a lot of knowledge (Al-Hamadani and Alwan Citation2015). An ontology for finding POIs in an urban area is meant to share common understanding of the structure of information about POIs. It can be used for arranging the classes of POIs and knowledge about the type of service, the approximate location, the relevant age range, the approximate time range, and the suitability for the individual or group in a taxonomic (subclass – superclass) hierarchy. Such an ontology enables reuse of domain knowledge. As a result, based on multiple geographical, temporal, and descriptive circumstances, a spatial decision support system (SDSS) should be able to extract and recommend an appropriate choice from the ontology and semantic reasoning on existing facts.

An ontology-based web SDSS is being developed in this study to assist tourists in selecting entertainment places in the city of Arak. One of the research’s main objectives is to create an ontology for classifying recreation facilities and their relationships based on many criteria such as location, activity, age group, community, and kind of leisure. We contribute to the development of a reasoning model that utilizes spatial and non-spatial information simultaneously. Instead of integrating multicriteria geospatial layers, this research looks for a technique to consider automated reasoning on the ontology for intelligent decision-making in location finding. Another objective is to provide a web-based DSS that allows users to engage with and reason about ontologies so that they may be recommended a strong tourism choice. We design a new architecture based on state-of-the-art open-source technologies for developing the system. In general, the system receives the user’s conditions as input, and then the name and information of the service center, along with its location, are shown on the map as output. In addition to speeding up decision-making, the user may select the most appropriate venue for entertainment based on his/her circumstances. The user can also get information about the chosen location in advance. The article is structured as follows: previous studies on ontology-based decision support systems are reviewed in Section 2. Next, the methodology is introduced in Section 3. Section 4 presents the decision support system implementation and its results. More discussion is provided in Section 5, and finally, this section concludes the paper.

2. Literature reviews

Numerous studies have been conducted on DSS centered on ontologies, some of which are included below. Morente-Molinera et al. (Citation2016) conducted a combination of mobile technology, fuzzy ontology, and group decision support methods to facilitate knowledge extraction. This system allows users to benefit from decision support through their mobile devices, regardless of the context and location. They developed a web platform and an Android application to help users choose the right drink for dinner. Mao and Li (Citation2011) proposed an ontology-based spatial decision support system for data discovery and automated spatial analysis on the Internet. The system is an ontology-based spatial decision support service with a flexible architecture that solves spatial semantic barriers in different domains. Malczewski and Jelokhani-Niaraki (Citation2012) presented an ontology-based multicriteria decision support system for house selection in Tehran. The ontology language used in their model was the Web Ontology Language (OWL). It includes concepts (classes) such as quantitative and qualitative criteria, decision alternatives (homes for sale), weights of criteria, and location descriptions of decision alternatives. Zhong et al. (Citation2017) proposed a spatial ontology-based approach for decision-making in emergency management activities of meteorological disasters. The proposed ontology was derived from a modified geospatial foundation ontology to describe the domain knowledge of a meteorological disaster system. They used the OWL in their model, which allows for a range of scenarios. They concluded that the proposed model leads to a semantic integration between humans and systems, enables spatial semantic reasoning, and it will be helpful in guiding advanced decision support in emergency meteorological disaster management.

Mekruksavanich (Citation2016) proposed an ontology-based medical expert system for diabetes diagnosis. He created a diabetes ontology with nine subgroups using the existing templates in the OWL. He then developed the expert system into a web application with a web service architecture. The findings revealed that this approach could aid in the early detection of diabetes and serve as a guide for diabetic individuals to monitor their situation. El-Sappagh et al. (Citation2018) proposed and implemented a fuzzy decision support system that could ontologically interpret and diagnose diabetes. They offered a framework based on fuzzy knowledge inference, ontology reasoning, and a fuzzy analytical hierarchy process (FAHP) to provide a more intuitive and accurate design. The results showed the proposed system assists physicians and patients with the precise diagnosis of diabetes. Sherimon and Krishnan (Citation2016) also presented an ontology-based Clinical Decision Support System (CDSS) called OntoDiabetic for diabetics. This system supports decisions to assess risk factors and provide appropriate treatment recommendations to patients having diabetes. The quality of patient care increased by offering appropriate treatment methods utilizing this system. Alharbi, Berri, and El-Masri (Citation2015) also proposed an ontology-based decision support system for the diagnosis of diabetes. This system receives patient information such as symptoms, risk factors, and tests. Then, it suggests a treatment plan according to the type of diabetes based on Clinical Practice Guidelines (CPG). The ontology proposed in this study was designed and developed using Web Ontology Language – Description Logic (OWL-DL).

Shen et al. (Citation2018) proposed an ontology-based clinical decision support system called Infectious Disease Diagnosis and Antibiotic Prescription (IDDAP). The system first detects infectious diseases based on their condition. It then suggests an appropriate antibiotic therapy based on factors including the patient’s body temperature, site of infection, side effects, contraindications, and drug interactions. Prcela, Gamberger, and Jovic (Citation2008) used the OWL to design an expert system for heart failure. This work included providing descriptive knowledge in the form of an ontology and integrating it with the understanding of heart failure stages. The research shows the primary process of expert system reasoning clearly. Robles-Bykbaev et al. (Citation2016) developed an ontology-based expert system for generating treatment programs for children with disabilities and communication disorders. The system implements a semantic web environment to provide services related to information retrieval, report generation, and inference strategies. They used 152 real cases of patients living in Cuenca, Ecuador, and 1005 elements of speech therapy information and achieved promising results. Lagos-Ortiz et al. (Citation2017) proposed an ontology-based decision support system for plant disease diagnosis. This system can upgrade and transfer the knowledge of specialists, which is suitable for farmers to diagnose plant diseases. It could diagnose illness and provide a standard vocabulary for integrating phytopathology data sources. With the spread of Covid-19, in the research of Rezaei and Vahidnia (Citation2022), an approach to assigning patients to related treatment centers based on ontology engineering was proposed.

Alkahtani et al. (Citation2019) proposed a DSS based on novel integrated stepwise methodologies. Ontology-based text mining and Self-Organizing Maps (SOM) are the two main methods in this system. The system is able to identify manufacturing faults, as well as to take information with maximum reliability and minimum cost. Singh et al. (Citation2019) investigated the possibility of enhancing supply chain flexibility using an ontology-based decision support system. They used Protégé software to define classes and subclasses with different types of properties based on the Semantic Web Rule Language (SWRL). Next, they fed the model a set of simulated data. It is then interpreted in the ontology to select retrieval activity. Chmielewski (Citation2009) designed an ontology for battlefield scenarios that contained spatial information and tactical data collected from decision-making algorithms and military domain analysis. Such an approach makes it possible to organize and filter data using predefined filters for command levels and all types of operations. Wei et al. (Citation2020) proposed a decision support system for inter-asset management of urban infrastructure using ontology and qualitative uncertainty-based reasoning. They took into account various infrastructure assets (such as roads, land, and cables), triggers (such as pipe leaks), and possible consequences (such as traffic disruption) as a holistic system. They then modeled each sub-domain with an ontology that limited the interdependencies using a set of rules.

Jajaga, Ahmedi, and Ahmedi (Citation2015) presented an expert system based on ontology for water quality monitoring. They developed an ontology-based module to identify possible sources of contamination. As a result, they created a system of rules to show how to use ontologies to control water quality. Boshkoska et al. (Citation2019) provided a decision support system for evaluating shared cross-border knowledge in food value chains. The system development had two stages: first, identifying the most common knowledge frontiers using machine learning and ontology technologies; second, transforming the obtained ontology into a decision support system for evaluating existing knowledge frontiers. They used the system for assessing three food value chains: tomatoes in Argentina, Chinese leaves in China, and a kind of rice in the United Kingdom. They compared three case studies with the proposed decision support system, concluding that this system leads to more insight into knowledge-based decisions. Rajput et al. (Citation2014) provided an ontology-based Expert System for identifying suspicious transactions. They evaluated the suggested solution using an actual data collection of more than eight million transactions from a commercial bank. According to the findings, using ontology reduces the cost of data modeling while simultaneously increasing expert system involvement in a wide range of applications.

3. Methodology

3.1. Study area

The study area is the city of Arak, one of the metropolises of Iran and the capital of Markazi province. In 2016, the population of Arak was 520,944 people, making it Iran’s 18th most populated city. The city of Arak locates in the 34°05′30″ N latitude and 49°41′ 30″ E longitude with an altitude of 1708 meters above sea level (Hoseini and Maleki Citation2011). shows the location of the city of Arak.

Figure 1. Location of Arak city.

Figure 1. Location of Arak city.

The city has many cultural and historical monuments, as well as beautiful nature, which makes it a suitable place for tourism. In addition to historical and natural attractions, the city has several entertainment centers such as cultural, artistic, and multipurpose complexes. Only 33 entertainment venues are considered in our ontology-based decision support system.

3.2. Ontology designation

An OWL domain ontology for entertainment centers serves as the system’s knowledge base. In computer science, an ontology is a data model that presents knowledge as a set of concepts in a field and introduces the connections among these concepts. People have access to a wealth of information from a variety of sources. Compared to previous decades, the amount of information is increasing significantly. However, it is difficult to identify links between these disparate formatted data sets. The ontology languages receive the knowledge in a field as a standard model. Therefore, many conceptual concerns about resource diversity are no longer an issue. The data model can then be queried by users so that the ontology answers complex questions and displays the connections within that domain (Guarino, Oberle, and Staab Citation2009).

Ontology is an explicit and formal description of class concepts, and properties describe each of these concepts (Noy and Musen Citation2003). We use the facts and relationships in the ontology as the knowledge base in the DSS. The target classes in the defined ontology are entertainment centers, which are supposed to be spatial objects that may also include non-spatial information. Therefore, object-related properties may be stored in a relational database and retrieved or updated following ontology reasoning (Vahidnia and Alesheikh Citation2014). The detail process of feeding the ontology data into a relational database is provided in Section 4.2. The study’s software, Protégé, provides a graphical user interface for constructing ontologies. Protégé, written in Java, was developed and made available at Stanford University and is an innovative and powerful program that can support multiple languages, including OWL (Ebrahimipour, Rezaie, and Shokravi Citation2010). This software also includes deductive classifications to confirm model consistencies and infer new information based on ontological analysis. Defining classes and subclasses, as well as assigning object or data properties to them, are all possible in this regard. Each class can also have subclasses that explain domain concepts.

At first, entertainment and tourist facilities are categorized based on variables such as the type of activity, location, working hours, and age restrictions. Next, the properties of each class and subclass are defined. demonstrates the structure of the developed OWL ontology through the graph of high-level classes and their relationships. In addition, shows the Unified Modeling Language (UML) diagram of the ontology of entertainment centers in more details. The web ontology language defines properties in three categories. The first category is Data Properties, which includes data types (integers, decimals, dates, etc.). The second category of Object Properties includes entities, and the third category is Annotation Properties that do not interfere with reasoning or semantics. Properties consist of domain, range, and function. The domain contains the class for which the property is defined. If this property is of type functional, only one value is considered (Jean-Baptiste Citation2021). Object properties can be Symmetric, Anti-Symmetric, Functional, Inverse Functional, Transitive, Reflexive, or Irreflexive (Vahidnia and Alesheikh Citation2014). One of the advantages of ontology is the qualitative representation based on description logic, which can increase the power of logical reasoning. We could define qualitative relationships mainly in the form of object properties. In contrast, data properties are often employed to assign numerical and quantitative descriptions. For example, in our work, we have considered subclasses of day and night for the qualitative time, which are related to the entertainment centers class through the object property has_time. By developing the ontology, we can also assign the exact opening and closing hours to the classes of the entertainment centers through a data property. Although this does not bring qualitative reasoning, it can be effective in general queries. The same thing applies to the object property named is_more_popular. The is_more_popular object property is also an Asymmetric and Transitive object relation. The popularity of recreation facilities is incorporated to assess this relationship. We use the object property as a binary relation to determining whether one POI is more popular than another. Here the Transitive characteristic helps that if the first POI is more popular than the second, and the second POI is more popular than the third, it automatically adds the fact to the knowledge base with logical reasoning that the first POI is more popular than the third POI. In the developing phase, a data property such as popularity could be added to the entertainment center’s class to take into account the popularity based on user feedback in a quantitative manner. However, developing algorithms for calculating popularity and automatically updating its data property value in the ontology is beyond the scope of this research. Furthermore, has_similar_type is an object property for entertainment venues that is Symmetric, Transitive, and Reflexive. This relationship can indicate whether the two centers are similar. The type of POI is used in this study to very easily identify similarity. Two centers that are both sporting clubs, for instance, will be similar. Defining object properties enables the discovery of new relationships throughout the reasoning process. If the result of a user query while retrieving classes is undesirable, the has_similar_type relation can be used to substitute the retrieved POI with a comparable center. Moreover, if more than one class is retrieved, the is_more_popular relation helps suggest a more popular POI.

Figure 2. Graph representation of the developed OWL ontology including the high-level classes and their relationships.

Figure 2. Graph representation of the developed OWL ontology including the high-level classes and their relationships.

Figure 3. UML diagram of the ontology of entertainment centers.

Figure 3. UML diagram of the ontology of entertainment centers.

In this study, several properties describe each center as follows:

  • Time: The visiting time of the centers can be day or night.

  • Location: The location of entertainment centers in the city, which can be the center, north, south, east, west, or suburb. Herein, “Around” indicates that the location is outside the city. We can combine it with any of the cardinal directions to give better indication of its location.

  • Age: The age groups who visit entertainment centers, which include children and adolescents, adults, and the elderly.

  • Community type: The community conditions of the visitors, which include individuals, family, or friends.

  • Entertainment centers Type: The type of activity of entertainment centers includes shopping centers, restaurants, cafes, parks, museums, sports clubs, cinemas, libraries, game centers, and tourist attractions.

The properties of the entertainment centers were defined based on these descriptions, as shown in .

Table 1. Properties defined in the designed ontology for some entertainment centers.

3.3. Proposed model and technological solutions

The client-server architecture is used in this study to build an ontology-based spatial decision support system over the web, as illustrated in . In a client-server network, the central computer, often known as a server, hosts data and resources as well as the core system business logic. Users and tourists connect to the server via their mobile or web browsers and send their requests to find the best place. Communication between clients and servers usually takes place over a network, each server hosting several programs and services. The fundamental business logic is built upon the Python programming language and valuable open-source packages such as Owlready and Flask to retrieve ontology classes and create a server-side application. Users then send requests from the network platform to the server to use these services and resources. The communication protocol used in this research is HTTPS protocol, one of the standard platforms.

Figure 4. The architecture used in the design of the decision support system.

Figure 4. The architecture used in the design of the decision support system.

Three factors make the system qualify as an SDSS: leveraging online map services like OpenStreetMap (OSM) at the front-end for convenient spatial visualization; considering spatial predicates like cardinal directions and the ability to reason about them in the ontology; and finally, storing spatial data such as coordinates of POIs in a database at the back-end and retrieving them when needed for decision support. In this respect, it was significant to examine the approximate local geographical aspect of recreational places as a factor in the SDSS. As a consequence, GIS data preparation became cumbersome. Since world maps missed several tourist and recreational regions in Arak, in order to construct a database for them, their GPS latitude and longitude positions was determined during a field visit. In order to acquire a qualitative estimate of the location based on the cardinal directions, it was also crucial to establish the POIs layer in the GIS. This could be done by segmenting the city’s geographic space into the center, north, south, east, and west areas and then overlaying it with the POIs layer.

The logical model of the ontology is executed on the client-side in the designed system using the JavaScript programming language. HTML and Cascading Style Sheets (CSS) are languages used to display the decision model on the web (Raggett, Le Hors, and Jacobs Citation1999). One of the most popular programming languages on the web, JavaScript, was also used. JavaScript is a high-level, dynamic, object-oriented, and interpretive language that supports a variety of programming methods. The OpenLayers library is also used to ensure that the map displays correctly. The OpenLayers is a high-performance library for displaying maps and employing a variety of geographic information on the website. This library also supports a variety of free and commercial map formats. In addition, the Bootstrap library’s features are employed to increase the web page’s aesthetic appeal. Bootstrap is a collection of free tools for creating web pages, including CSS, HTML, and JavaScript functions to generate and display forms, buttons, tabs, and other design elements. A database of entertainment centers and the Ontology-Based Decision Support System (OBDSS) application, written in Python, are hosted on the server. Werkzeug technology, based on Flask, enabled us to make a communicate between the client and the server. In addition, an SQLite database is to store information of POIs, along with the parsed information retrieved from the ontology. More detailed processes are explained in the following sections.

4. Implementation and results

4.1. Ontology implementation

As mentioned earlier, Protégé software could enable us to create the ontology. At first, the classes, their hierarchy, and their properties were built. shows the details of the classes. The main difference between this ontology and an object model is that an individual can belong to many classes. The results later showed that this could be useful in combining DSS with ontology when retrieving information. This is due to the fact that this study’s retrieval technique demands the addition of a new instance, came into being from the user specified criteria, to the existing ontology. By matching this new instance with the ontology, the related entertainment classes are retrieved. The server side already stores our designed ontology and the process of reasoning may change this original ontology after inferring new classes or relationships. In order to preserve the original ontology and prevent it from being changed, a temporary copy of it is created with a unique IRI (Internationalized Resource Identifier). When many users are logged onto the decision support system, each user’s processing is handled in a different thread using a temporary ontology. By adding the new instance to the temporary ontology, those classes that matches the characteristics of the new instance are retrieved. In this situation, an instance can be a member of several classes. In a case where a center cannot be a member of multiple subclasses, we effectively prohibit this by disjoining the subclasses. For example, the Day class related to time conditions cannot have the same individuals as the Night class. Disjointing subclasses were also applied to many other cases.

Figure 5. Classes and subclasses created in Protégé.

Figure 5. Classes and subclasses created in Protégé.

Next, the object properties were defined between classes, as shown in . In this sense, specifying an inverse property could strengthen the reasoning power of our ontology. For example, the inverse of the has_time property is is_time_of, the inverse of the has_age property is is_age_of, and so on. For each property, the range and domain were also specified. The domain is the class for which the property is defined, and the range is the class of objects related to that property. For example, for the has_time property, the domain is the entertainment centers class, and the range is the time class.

Figure 6. Object properties defined in Protégé.

Figure 6. Object properties defined in Protégé.

The main constraints in our model were then defined as Equivalent classes in Protégé. In describing the constraints, the logical And and logical Or, along with the existential constraint Some was used. shows the constraints defined for Atlas Shopping Mall. As seen, we have implemented restrictions with necessary and sufficient conditions. It means that if a new instance of the entertainment center fulfills requirements such as has_age some (Adult or Child_Teenager or Old), (has_group some (Family or Friends or Single)), and so on, it must be equivalent to Atlas Mall. Properties described in earlier sections construct further restrictions on other centers.

Figure 7. Constraints defined for Atlas Shopping Mall.

Figure 7. Constraints defined for Atlas Shopping Mall.

4.2. Business logic deployment and ontology reasoning

We incorporated powerful open-source packages for the implementation in a modular fashion (Kuhlman Citation2013). Dealing with the ontology was possible using the Owlready package. This package provides access to web ontology language, parsing the classes and properties. Another package was Flask, a micro-framework designed and written in Python. Flask can be considered a small but powerful library that many large companies use in their projects. It generally works with two components, Werkzeug and Jinja. Our framework mainly uses Flask, which is built on top of the two components, to communicate with the web server by sending requests and receiving responses. Using Visual Studio Code, we were capable of creating the business logic for the decision support system. The ontology is first invoked, and then the Owlready module is used to access it. shows the pseudocode of the main developed processes for invoking an ontology, creating the Flask application, rendering the HTML web page, reasoning and querying the ontology, and recommending the most appropriate item to the user.

Figure 8. Pseudocodes to create the decision support system by calling and using the most important modules.

Figure 8. Pseudocodes to create the decision support system by calling and using the most important modules.

Details for ontology reasoning have also illustrated in . We created a business logic layer for the decision support system’s core process and workflow. Owlready loads in this process the ontology entities and automatically removes them from RAM if not needed (Jean-Baptiste Citation2021). Following the import of the original OWL ontology, a temporary ontology is created, including classes and features usable in a Flask application. This temporary ontology helps to preserve the original one, as well as to create a separate processing thread for each user when the system is confronted with multiple users. Next, a new instance (individual) is added to the temporary ontology based on the input parameters that the user has requested. Owlready includes a relational SQLite database file to store and retrieve the interconnection between entities of the ontology when using them in Python. This relational database is referred to as a quadstore because it contains quadruplets, triples of the form (subject, property, object), to which an ontological identifier (IRI) is appended. For a given fact in the ontology (e.g. Amirkabir Park has located in the West), the subject (Amirkabir Park) and object (West) of the triples make up the nodes in the graph, while the predicate (has located) form the arcs. schematically shows how ontology data is stored in a relational database. A part of the ontology designed for entertainment centers and their relationship with other objects is shown as a graph in this figure. In the table related to the ontology information, both the asserted facts and the facts inferred by the reasoner are seen. For on-demand dynamic loading of the entities from the quadstore and accessing them in Python, the system makes use of a parser. The quadstore is automatically updated by adding, deleting, or modifying triples whenever the wrapper Python object is changed. The reasoning is done on the ontology using HermiT, then the most appropriate class is inferred. HermiT is a potent OWL reasoner that offers reasoning that is significantly more effective than any known technique (Glimm et al. Citation2014). It quickly ascertains whether the ontology is coherent and accurately carries out the classification of both objects and data properties – reasoning tasks that are not entirely handled by other OWL reasoners like Pellet and FaCT++. For instance, the Reasoner component temporarily adds two object property assertions to the ontology’s statements in order to test if the statement that an object property has_location is functional is implied. That is, a new individual A is related to two new individuals B and C via the has_location property automatically. In addition, an assertion specifying that B and C are distinct individuals will be appended. The Reasoner then uses the hypertableau calculus to determine if such an expanded ontology is consistent; If so, it has been proven that has_location is not a functional property. In a hypertableau technique, a subformula of the original formula that needs to be proven or disproved is located at each node of a tree structure generated for a description logic formula (Motik, Shearer, and Horrocks Citation2009). This tree is then traversed to validate or invalidate the entire formula. Similarly, proving that the new individual matches one of the POI classes is done by the Reasoner. In our work, the retrieved POIs are sorted based on the is_more_popular property and the first option is suggested to the user. Finally, the result web page is rendered based on OpenLayers, Bootstrap, and the retrieved information from SQLite database, and the decision is conveyed to the user. When the user rejects the current item for the next recommendation, the next POI from the retrieved list will be recommended if it is of the same type as the previous POI based on the has_similar_type property.

Figure 9. Diagram of the developed process for ontology reasoning in the decision support system.

Figure 9. Diagram of the developed process for ontology reasoning in the decision support system.

Figure 10. A schematic representation of the process of feeding the ontology data into a relational database.

Figure 10. A schematic representation of the process of feeding the ontology data into a relational database.

4.3. Web-based decision support system implementation

In this study, Bootstrap and OpenLayers enabled us to build web pages and display map data on the frontend. After deploying the business logic in Python and designing the client-side program, the ontology was passed through the reasoning process to check for inconsistencies. Protégé software has automatic reasoning capability, as well as it provides different logic engines for this purpose. Although the reasoning is dynamically to aid the user with entertainment center recommendations, it was initially necessary to examine the logical consistency through the HermiT reasoner embedded in the Protégé environment. To eliminate inconsistencies, HermiT reorganized classes and changed the class tree automatically after reasoning. Finally, the ontology of entertainment centers became completed, and the decision support system was deployed. The website’s main page, as shown in , is for inputting information to choose an entertainment center. The user finds a list of necessary items for locating the center on the left. The right-hand map also shows the location of Arak city. The criteria considered include age, visiting time, place, community type, and entertainment center type. shows an example of the output. When users pick an entertainment center, its location on the map is displayed immediately, and information available from the database is retrieved, as shown.

Figure 11. Web view of the ontology-based decision support system for finding an entertainment center.

Figure 11. Web view of the ontology-based decision support system for finding an entertainment center.

Figure 12. Displaying the output of the decision support system.

Figure 12. Displaying the output of the decision support system.

To recommend a proper entertainment center, the created model may choose many items from one property at the same time. When more than one option is selected, the reasoner checks to see if all properties are contained. For example, if a family has members in the age groups of the child, adult, and older, they need an age-appropriate entertainment center for all three groups. They can find the desired POI by choosing all of the relevant options. Another feature is that the user can reject the result, in which case two things happen. First, the is_more_popular property between them are used for sorting. Second, another option similar to the current class is suggested if the has_similar_type property is verified. Finally, the most appropriate POI is recommended.

4.4. Evaluation results

Putting the suggested system in front of search engines and social networks is one way to confirm the success of this method. For example, Google has been used to look up the terms for finding a forest park. The search retrieves a list of parks from various web pages at best. To discover the desired park, the user must browse the retrieved web pages, which takes time, is confusing, and slows down the user’s decision-making. Adding other conditions such as location or age group to the search not only does not make the search result more accurate but also confuses the user more in finding the desired center. To better evaluate, we frequently searched, each time for an entertainment center in the city of Arak, according to various combinations of properties, both on Google and on the Foursquare social network. For instance, the statement “A daily use entertainment center in the north of Arak with green space that is suitable for families” could be searched. shows the findings, with the three right-hand columns indicating the identification of retrieved POI in each searching environment. In fact, each center has a unique number according to Section 3.2. After searching in each of the three desired environments and retrieving the corresponding center, its unique number is mentioned in the table. The dash symbol indicates that our search did not yield a specific result. In order to assess Google’s search engine results in the most favorable light, we didn’t even take the order of retrieved items into account. However, our search statement was limited to the properties provided in the ontology-based DSS. The first three items of the retrieved list were chosen for further evaluation in both Google and Foursquare searches. Next, the inference was made by manually examining the relevant pages to obtain the name of a related entertainment center. Further analysis on Foursquare and Google retrieved items demonstrates the user is generally directed to an unrelated POI by searching various combinations of values for time, location, type, age, and group. The fascinating thing is that when we search for a POI by name, we often find that pages about it have already been created. We may infer that there is a lot of information on Arak’s POIs on the web and social media, but no semantic connection between their properties. This exactly is where ontology comes into play, confirming the success of our method. 14, 5, and 20 related centers out of the 20 search terms were retrieved in each Google search, Foursquare, and the ontology-based DSS system, respectively. This means, 100% of the centers were retrieved correctly in the proposed method, but only 70% (14 out of 20) of them were retrieved with the help of Google search. We consider this difference, i.e. 30%, as the criterion of progress or improved performance in the success of information retrieval. High search speed is another advantage of the designed system. For example, taking the developed decision support system, search being conducted for 15 specific entertainment centers based on their unique properties (see ). This test was only carried out to examine the stability of our developed ontology-based DSS confronting different reasoning tasks. displays the search time in seconds for each item, which is approximately 2.5 s on average. The search times appear to be rather high since they take into account both the time required to query the backend and the time required to render the web page.

Figure 13. Search time chart of 15 entertainment centers.

Figure 13. Search time chart of 15 entertainment centers.

Table 2. Retrieved entertainment center after searching a different combination of conditions in Google, Foursquare, and the developed ontology-based DSS.

5. Discussion and conclusions

Cities’ information grows increasingly detailed and particular as they become more industrialized and developed. In all sectors, including citizen entertainment and leisure, intelligent and knowledge-based decisions are critical. By designing an ontology-based decision support system for finding entertainment and tourism centers in this study, it is possible to offer more practical centers to the tourist at high speed. Our developed spatial DSS can be used to receive requests, access request-related spatial or non-spatial knowledge, make support recommendations, and generate a good geo-visualization of results. The findings revealed that ontology-based decision support systems could easily use the knowledge available on the web for inference and make a POI suggestion. Another significant contribution of this study is the presentation of architecture made entirely of open-source elements. The web-based DSS uses technologies such as Werkzeug and Flask for client-server interaction, Protégé for ontology development, SQLite for database, Owlready for ontology information retrieval, and OpenLayers for mapping. We demonstrated how to link different forms of semantic knowledge regarding location, time, age group, community, and activity type while constructing data searching strategies. Consequently, using an entertainment center domain ontology, we were able in this study to build a semantic model of the POI properties, along with the related domain knowledge, resulting in a purposeful information retrieval. Individuals can use the system to interactively explore the POI finding decision problem, update and refine preferences, and execute alternative evaluations in real-time. The assessment of the results indicated that searching for a POI in Arak based on user preferences in the developed system is at least 30% more effective than searching it on Google or a location-based social network.

We do not wish to imply that the proposed ontology-based method will always outperform search engines or eventually replace them. Our case is specific and for that, the proposed method performs better. The reason is thus not irrational; it is because an ontology has already more thoroughly modeled the intricate interconnections between POIs and their descriptions in a knowledge-driven manner. While doing so, search engines retrieve information intrinsically using data-driven methods. The data in the Google knowledge graph is automatically compiled from a wide range of sources and includes information about places, people, businesses, and more (Fensel et al. Citation2020). When web pages do not provide adequate information, it becomes difficult for a search engine to detect semantic connections. This was the same issue that plagued the city of Arak’s POIs. Because the semantic relations were pre-modeled in our method, semantic reasoning and information retrieval could be done more correctly. In addition, the reason for choosing cardinal direction as approximate location is to help for finding POIs based on the natural language. A visitor might not care to travel to a certain latitude and longitude but might be interested in regions to the north of the city, for instance. On the other hand, qualitative spatial representation using predicates can increase the power of ontological reasoning – something that cannot be applied to exact locations. This study uses a qualitative object property termed has_location to offer cardinal directions with respect to spatial reasoning. This object property is functional, asymmetric, and irreflexive. It also has an inverse relationship with the object property is_location_of. These characteristics can be used for some basic spatial reasoning, even though the development of more intricate spatial properties can still be pursued in future studies. It is feasible to construct more spatial predicates like proximity, closeness, or cardinal direction relative to the position of POIs in future research by dynamically taking into account the user’s location. In this situation, more useful traits that aid in real-time spatial decision-making can be specified.

A question that may arise is why a reasoning system like HermiT is required while tasks like querying specific properties could be done with database SQL statements. First, it should be noted that providing knowledge in the form of an ontology cannot easily be transformed into a database; instead, Owlready and HermiT are responsible for this task. For instance, when we construct a class in ontology and assign it a property, all instances of the class automatically inherit that property. However, if we wish to execute such a process directly in the database, we must make a new record for every instance manually. This issue also shows itself in data recovery. HermiT can obtain related instances under an object property with ease, but if we utilize the database directly, we must create a specific SQL query statement with all the necessary specific parameters. Secondly, there are no pre-defined and automatic procedures for the reasoning process in a database. HermiT efficiently performs this process on the ontology based on advanced algorithms.

A closer look at studies by other researchers in the field of decision support systems shows that there are very few cases that deal with the POI selection. In related studies, the multicriteria decision-making methods such as Analytical Hierarchy Process (AHP) or Technique for Order of Preference by Similarity to Ideal Solution (TOPSIS) have been often used for tourist guides (Sari Citation2021), while in the present study, the ontology was used to design the decision support system. The main difference is that criteria are supposed to be properties in the ontology in this work. As a result, rather than converting criteria to spatial layers and integrating them for decision-making statically, decision support relies on real-time reasoning. Another benefit is that the ontology can be updated, eliminating the need to alter the program logic or decision support model. When using the Google search engine for an entertainment center in Arak, the chance of receiving an answer that fulfills the requested criteria is quite slim, and the time it takes to locate the desired center is incredibly long. The reverse is true in the developed system, which is one of the system’s most significant advantages.

For years, POI recommendation systems have been used in the location-based social networks (Vahidnia Citation2022). In contrast to an ontology-based DSS, the purpose of these systems is to make proposals intelligently. In other words, without the user expressing their needs and conditions directly, a recommender system, based on previous visits and social relationships, indirectly notices the user’s interest. But such an approach also has its drawbacks. Cold start is an issue that can occur in recommender systems that need some automated data modeling (Schein et al. Citation2002). It specifically refers to the fact that the system cannot make any conclusions for users or POIs with insufficient data. For example, our observations of social media revealed that the most important leisure and tourism centers of Arak were not registered. The strategy proposed may be used in conjunction with the recommender system to solve the cold start problem. Therefore, a solution would be redirecting users to an ontology-based DSS if the minimum required information is unavailable. Another aspect to note is that in our research, characteristics like time and location are included in the user preferences settings. An adaptive system can obtain these parameters with the help of online services and specify the user context. In this case, the user encounters a context-aware ontology-based system constantly adapting to new conditions (Broens et al. Citation2004). However, the issue of combining contexts in finding POIs with ontologies requires further research.

In future research, we suggest constructing a more comprehensive ontology of entertainment centers, including all tourism centers in the study area. Also proposed is the ontology contains a wider variety of properties so that the recommendation may be deemed more personalized. Future research may focus on other relevant problems, such as determining the ideal site for a tourist to visit in Iran. Furthermore, practical issues in other domains, such as finding treatment centers for the patient’s specific disease, may be beneficial. Working on newer models, such as integrating intelligent agents with ontologies or creating web services to suggest points of interest, is another path to future research.

Disclosure statement

No potential conflict of interest was reported by the authors.

Data availability statement

The OWL ontology of this study is available on https://github.com/mhvahidnia/OntologyEntertainmentCenter. Other data of this research can be requested from the corresponding author via e-mail.

Additional information

Funding

The authors received no financial support for the research, authorship, and/or publication of this article.

Notes on contributors

Mohammad H. Vahidnia

Mohammad H. Vahidnia has been an Assistant Professor at the Department of Remote Sensing and GIS, Faculty of Natural Resources and Environment, Science and Research Branch, Islamic Azad University, since 2017. He has directed numerous theses, conducted many research projects, and contributed to numerous journal papers. His research interests include Geo-computation and Artificial Intelligence, Ontology and Logic, Spatial DSS and Expert Systems, Data Structures and Algorithms, Volunteered Geographic Information (VGI), and Web-based and Mobile GIS.

Mojde Minaei

Mojde Minaei received the MSc. degree in Remote Sensing and GIS from Science and Research Branch, Islamic Azad University (IAU), Iran, in 2016. She is currently a PhD candidate at the Department of Remote Sensing and GIS, IAU, Iran. Her current research interests are Geo-computation, Spatial Decision Support Systems, and Spatial Statistics.

Saeed Behzadi

Saeed Behzadi is an Assistant Professor in Surveying Engineering Department of Shahid Rajaee Teacher Training University, Iran. He received his MS degree in Geospatial Information Science in 2008 and a Ph.D. degree in 2013. He has worked within the industry and academia in Iran since 2013. He teaches in the Department of Surveying Engineering and Civil Engineering in the area of GIS, Remote sensing, and Computer Science. His current research interest is Health GIS and Agent Based Modeling.

References

  • Adams, D., C. De Sousa, and S. Tiesdell. 2010. “Brownfield Development: A Comparison of North American and British Approaches.” Urban Studies 47 (1): 75–104. doi:10.1177/0042098009346868.
  • Al-Hamadani, B. T., and R. F. Alwan. 2015. “An Ontology-Based Expert System for General Practitioners to Diagnose Cardiovascular Diseases.” Advances in Computational Sciences and Technology 8: 53–65.
  • Alharbi, R. F., J. Berri, and S. El-Masri. 2015. “Ontology Based Clinical Decision Support System for Diabetes Diagnostic.” Paper presented at the 2015 Science and Information Conference (SAI), London, UK, July 28–30, pp. 597–602.
  • Alkahtani, M., A. Choudhary, A. De, and J. A. Harding. 2019. “A Decision Support System Based on Ontology and Data Mining to Improve Design Using Warranty Data.” Computers & Industrial Engineering 128: 1027–1039. doi:10.1016/j.cie.2018.04.033.
  • Bender, J. 2003. “An examination of the use of urban entertainment centers as a catalyst for downtown revitalization.” Master’s Thesis, Virginia Polytechnic Institute and State University.
  • Boshkoska, B. M., S. Liu, G. Zhao, A. Fernandez, S. Gamboa, M. Del Pino, P. Zarate, J. Hernandez, and H. Chen. 2019. “A Decision Support System for Evaluation of the Knowledge Sharing Crossing Boundaries in Agri-Food Value Chains.” Computers in Industry 110: 64–80. doi:10.1016/j.compind.2019.04.012.
  • Broens, T., S. Pokraev, M. Sinderen, J. Koolwaaij, and P. Dockhorn Costa. 2004. “Context-Aware, Ontology-Based Service Discovery.” Paper presented at the 2004 Ambient Intelligence: Second European Symposium (EUSAI), Eindhoven, Netherlands, November 8-11, pp. 72–83.
  • Child Hill, R., and J. W. Kim. 2000. “Global Cities and Developmental States: New York, Tokyo and Seoul.” Urban Studies 37 (12): 2167–2195. doi:10.1080/00420980020002760.
  • Chmielewski, M. 2009. “Ontology Applications for Achieving Situation Awareness in Military Decision Support Systems.” Paper presented at the 2009 International Conference on Computational Collective Intelligence, Wroclaw, Poland, October 5-7, pp. 528–539.
  • Ebrahimipour, V., K. Rezaie, and S. Shokravi. 2010. “An Ontology Approach to Support FMEA Studies.” Expert Systems with Applications 37 (1): 671–677. doi:10.1016/j.eswa.2009.06.033.
  • El-Sappagh, S., J. M. Alonso, F. Ali, A. Ali, J. H. Jang, and K. S. Kwak. 2018. “An Ontology-Based Interpretable Fuzzy Decision Support System for Diabetes Diagnosis.” IEEE Access 6: 37371–37394. doi:10.1109/ACCESS.2018.2852004.
  • Evans, G. 2009. “Creative Cities, Creative Spaces and Urban Policy.” Urban Studies 46 (5–6): 1003–1040. doi:10.1177/0042098009103853.
  • Fensel, D., U. Şimşek, K. Angele, E. Huaman, E. Kärle, O. Panasiuk, I. Toma, J. Umbrich, and A. Wahler. 2020. “Introduction: What is a Knowledge Graph?” In Knowledge Graphs, edited by D. Fensel, U. Şimşek, K. Angele, E. Huaman, E. Kärle, O. Panasiuk, I. Toma, J. Umbrich, and A. Wahler, 1–10. Cham, Switzerland: Springer.
  • Glimm, B., I. Horrocks, B. Motik, G. Stoilos, and Z. Wang. 2014. “HermiT: An OWL 2 Reasoner.” Journal of Automated Reasoning 53 (3): 245–269. doi:10.1007/s10817-014-9305-1.
  • Guarino, N., D. Oberle, and S. Staab. 2009. “What is an Ontology?” In Handbook on ontologies, edited by S. Staab, and R. Studer, 1–17. Berlin, Heidelberg: Springer.
  • Hoseini, A. M., and A. Maleki. 2011. “Influences of Climate on Arak Traditional and Modern Architecture.” Environmental Based Territorial Planning 3: 133–155.
  • Jajaga, E., L. Ahmedi, and F. Ahmedi. 2015. “An Expert System for Water Quality Monitoring Based on Ontology.” Paper presented at the 2015 Metadata and Semantics Research Conference, Manchester, UK, September 9-11, pp. 89–100.
  • Jean-Baptiste, L. 2021. Ontologies with Python. Berkeley, CA: Apress.
  • Keen, P. G. 1980. “Decision Support Systems: A Research Perspective.” Paper presented at the 1980 International Task Force Meeting, New York, USA, June 23-25, pp. 23–44.
  • Kuhlman, D. 2013. A Python Book: Beginning Python, Advanced Python, and Python Exercises. Warsaw, Poland: Platypus Global Media.
  • Lagos-Ortiz, K., J. Medina-Moreira, M. A. Paredes-Valverde, W. Espinoza-Morán, and R. Valencia-García. 2017. “An Ontology-Based Decision Support System for the Diagnosis of Plant Diseases.” Journal of Information Technology Research 10 (4): 42–55. doi:10.4018/JITR.2017100103.
  • Loures, L. 2015. “Post-Industrial Landscapes as Drivers for Urban Redevelopment: Public versus Expert Perspectives Towards the Benefits and Barriers of the Reuse of Post-Industrial Sites in Urban Areas.” Habitat international 45: 72–81. doi:10.1016/j.habitatint.2014.06.028.
  • Malczewski, J., and M. Jelokhani-Niaraki. 2012. “An Ontology-Based Multicriteria Spatial Decision Support System: A Case Study of House Selection.” Geo-Spatial Information Science 15 (3): 177–185. doi:10.1080/10095020.2012.715900.
  • Mao, X., and Q. Li. 2011. “Ontology-Based Web Spatial Decision Support System.” Paper presented at the 2011 International Conference on Geoinformatics, Shanghai, China, June 24-26, pp. 1–4.
  • Mekruksavanich, S. 2016. “Medical Expert System Based Ontology for Diabetes Disease Diagnosis.” Paper presented at the 2016 IEEE International Conference on Software Engineering and Service Science (ICSESS), Beijing, China, August 26-28, pp. 383–389.
  • Morente-Molinera, J. A., R. Wikström, E. Herrera-Viedma, and C. Carlsson. 2016. “A Linguistic Mobile Decision Support System Based on Fuzzy Ontology to Facilitate Knowledge Mobilization.” Decision Support Systems 81: 66–75. doi:10.1016/j.dss.2015.09.001.
  • Motik, B., R. Shearer, and I. Horrocks. 2009. “Hypertableau Reasoning for Description Logics.” The Journal of Artificial Intelligence Research 36: 165–228. doi:10.1613/jair.2811.
  • Noy, N. F., and M. A. Musen. 2003. “The PROMPT Suite: Interactive Tools for Ontology Merging and Mapping.” International Journal of Human-Computer Studies 59 (6): 983–1024. doi:10.1016/j.ijhcs.2003.08.002.
  • Prcela, M., D. Gamberger, and A. Jovic. 2008. “Semantic Web Ontology Utilization for Heart Failure Expert System Design.” Studies in Health Technology and Informatics 136: 851.
  • Raggett, D., A. Le Hors, and I. Jacobs. 1999. “HTML 4.01 Specification.” W3C recommendation 24.
  • Rajput, Q., N. S. Khan, A. Larik, and S. Haider. 2014. “Ontology Based Expert-System for Suspicious Transactions Detection.” Computer and Information Science 7 (1): 103. doi:10.5539/cis.v7n1p103.
  • Rezaei, Z., and M. H. Vahidnia. 2022. “Effective Medical Center Finding During COVID-19 Pandemic Using a Spatial DSS Centered on Ontology Engineering.” GeoJournal 1–15. doi:10.1007/s10708-022-10777-3.
  • Robles-Bykbaev, V. E., W. Guamán-Murillo, D. Quisi-Peralta, M. López-Nores, J. J. Pazos-Arias, and J. García-Duque. 2016. “An Ontology-Based Expert System to Generate Therapy Plans for Children with Disabilities and Communication Disorders” Paper presented at the 2016 IEEE Ecuador Technical Chapters Meeting (ETCM), Guayaquil, Ecuador, October 12-14 , pp. 1–6.
  • Sari, N. K. A. P. 2021. “Implementation of the AHP-SAW Method in the Decision Support System for Selecting the Best Tourism Village.” Jurnal Teknik Informatika CIT Medicom 13: 24–35.
  • Schein, A. I., A. Popescul, L. H. Ungar, and D. M. Pennock. 2002. “Methods and Metrics for Cold-Start Recommendations” Paper presented at the 2002 Annual International ACM SIGIR conference on Research and Development in Information Retrieval, Tampere, Finland, August 11-15, pp. 253–260.
  • Shen, Y., K. Yuan, D. Chen, J. Colloc, M. Yang, Y. Li, and K. Lei. 2018. “An Ontology-Driven Clinical Decision Support System (IDDAP) for Infectious Disease Diagnosis and Antibiotic Prescription.” Artificial intelligence in medicine 86: 20–32. doi:10.1016/j.artmed.2018.01.003.
  • Sherimon, P., and R. Krishnan. 2016. “OntoDiabetic: An Ontology-Based Clinical Decision Support System for Diabetic Patients.” Arabian Journal for Science and Engineering 41 (3): 1145–1160. doi:10.1007/s13369-015-1959-4.
  • Singh, S., S. Ghosh, J. Jayaram, and M. K. Tiwari. 2019. “Enhancing Supply Chain Resilience Using Ontology-Based Decision Support System.” International Journal of Computer Integrated Manufacturing 32 (7): 642–657. doi:10.1080/0951192X.2019.1599443.
  • Vahidnia, M. H. 2022. “Point-Of-Interest Recommendation in Location-Based Social Networks Based on Collaborative Filtering and Spatial Kernel Weighting.” Geocarto international 1–20. doi:10.1080/10106049.2022.2086626.
  • Vahidnia, M. H., and A. A. Alesheikh. 2014. “Ontological Exploration of Geospatial Objects in Context.” Geo-Spatial Information Science 17 (2): 129–138. doi:10.1080/10095020.2013.766397.
  • Wei, L., H. Du, Q. Mahesar, K. Al Ammari, D. R. Magee, B. Clarke, V. Dimitrova, et al. 2020. “A Decision Support System for Urban Infrastructure Inter-Asset Management Employing Domain Ontologies and Qualitative Uncertainty-Based Reasoning.” Expert Systems with Applications 158: 113461. doi:10.1016/j.eswa.2020.113461.
  • Zhong, S., Z. Fang, M. Zhu, and Q. Huang. 2017. “A Geo-Ontology-Based Approach to Decision-Making in Emergency Management of Meteorological Disasters.” Natural Hazards 89 (2): 531–554. doi:10.1007/s11069-017-2979-z.