DYNAMIC GENERATION OF CULTURAL ROUTES IN A TOURIST GUIDE

Due to its unique geographical location, for thousands of years the region of Bulgaria used to be a crossroads for many nationalities. The enormous Bulgarian cultural and historical heritage is little known outside the country and modern information and communication technologies have not been used in their full potential to promote and advertise it. In this paper, a personal tourist guide is presented, which is able to generate cultural routes. The routes can be virtual or real depending on preferences or location of the user. The architecture of the guide consists of several intelligent agents that work with ontology network and ambient network as a knowledge base, to generate the tourist routs. Ontologies present the cultural and historical objects of Bulgaria according the CCO standard, and ambient present the physical properties (location, working time etc.) of these objects. Furthermore, the dynamic generation of routes is demonstrated by modeling ambient-oriented approach.


INTRODUCTION
Due to its unique geographical location, for thousands of years our region used to be a crossroads for many nationalities. It was a cradle for one of the oldest cultures in Europe and the world. This enormous cultural heritage is little known outside Bulgaria and modern information and communication technologies have not been used in their full potential to promote and advertise it. Our region and Bulgaria, in particular, is an interesting tourist destination. For the digital presentation of our cultural and historical heritage, the BECC (Bulgarian Electronic Cataloguing Cultural) environment was developed more than ten years ago [1], which uses the CCO standard [2].
ViPS is built as a reference architecture that can be adapted to different CPSS-like applications [3]. For this purpose, the main issues to be addressed are the following: users are in the focus of attention, virtualization of the physical "things", and integration of the virtual and physical worlds.
The concept of an IoT ecosystem lies in the notion of "things" -the basic building blocks that provide a connection between the physical world and the digital world of the Internet. To operate as part of such an ecosystem, a thing has to expose observational, sensory, acting, computational, and processing capabilities. All these capabilities specify it as an autonomous, proactive entity that can share knowledge and information with other surrounding things for planning and decision-making in order to achieve personal or shared aims. Furthermore, "things" need to be able to communicate seamlessly in a network. In this way, they form a hierarchical network structure of "things".
In this article we present such an adaptation of ViPS for tourism and, in particular, the generation of tourist routes, taking into account the wishes and intentions of tourists, as well as different circumstances such as location, time, etc.
The rest of the paper is organized as follows: a short review of related works is considered in Section 2, which is followed by an overall description of the Tourist Guide architecture in Section 3. Section 4 addresses the generation of cultural routes in the Tourist Guide including a sample scenario. Section 5 concludes the paper.

RELATED WORKS
The topic related to cultural and historical heritage is quite common. There are lots of works that are associated with it and have different goals like popularization of some objects or events, learning something new or just improving knowledge.
Services that offer tourist guides related to cultural and historical sights are related to guiding the tourist in an unknown area or generating a route according to his/her interests and constraints.
The authors in [4] present an ontology that can store points of interests (POIs), preferences, user habits, and time limits of the user. The ontology complies with the LinkedGeoData ontology and is integrated into a mobile application called Itiner @ to create personal routes for each user based on his/her preferences, transport options, visit area, date and duration of the visit. The main contribution of the work is to identify the information relevant to mobile tourist applications and to show how to use an ontology in order to improve the functionalities of a geographic information system through the use of semantic information.
Many ontologies at different levels of formalism represent tourist objects, which have been used effectively in the field of tourism. Onlogies range from dictionaries [5] and specifications [6] to formal ontologies [7][8][9][10][11][12][13], depending on different objectives -from generic aspects of the tourism sector to subdomains, and licenses -from public to proprietary.
In [14] the authors propose a system for the generation of a tourist route based on a graph. The user's limits are defined -location, travel time, budget, and points of interests. Based on these constraints, a graph is generated, whose nodes have certain weights according to the user's constraints and interests. Then a route is created that is shorter and satisfies the requirements.
The mobile tourism domain identifies a new generation of mobile tourist applications that guide tourists in their travels to provide all the necessary information about local tourist attractions of a region, hotels, restaurants, and online reservations. [15] presents a system known as the Tourist Assistant (TAIS) to support tourists in a region. The system analyzes the user's actions to reveal his/her preferences and it recommends cultural heritage objects based on the information received and the current situation in the region. It also provides tourists with transportation options to reach the cultural heritage facilities. The information about a cultural object combines texts, images, and videos extracted from accessible Internet sources. TAIS offers a range of intelligent services that support semantic data exchange using appropriate ontologies. The physical space, in which the tourist is located, is modeled as a cultural space. The objects of the cultural heritage provided to tourists are listed by means of recommendation service implementing a collaborative filtering technique. Tourists in an unknown location can be effectively assisted by mobile city guides operating on their mobile devices. [16] proposes a pairwise tensor factorizationbased framework that models user-POI, POI-time, and POI-POI interactions for successive POI recommendation. [17] suggests a path by using Recurrent Neural Network to predict the next category of the POI at every POI.
In some cases, tourist guides can be assisted by dedicated devices, robots, or techniques such as virtual reality or machine learning. Deciding what to see in a large museum or recognizing folklore elements in an exposition can be overwhelming. In [18], a Smartwatch-based system is presented designed to facilitate museum gallery exploration. The design and implementation of the system are also discussed, followed by an evaluation conducted with twelve visitors to a Natural History Museum. In [19], the authors introduced the implementation of a tour-guide robot using Kinect technology to facilitate the process of tourist guides. The robot is able to replace a human guide; it will follow tourists wherever they go, avoiding obstacles in its way, and provide information about the place once the tourists have given it the command to do so. The robot detects different objects, thus providing information about them.

THE TOURIST GUIDE ARCHITECTURE
The Tourist Guide (TG) provides personalized assistance to users in the form of tourist services. The behavior of the TG is represented by its life cycle, which is an algorithm for generating a suitable route for the tourist, taking into account their personal preferences and the physical features of the area to visit. The life cycle includes the following basic steps: • A tourist inquiry -in order to "get acquainted" with the tourist, the TG conducts a brief survey, which gathers information about the tourist's personal preferences and interests, as well as the time available to him or her. • Selection of appropriate cultural and historical objects -using the information from the survey, the guide chooses objects to visit in the area that would be of interest to the tourist. • Generation of a tourist route -from the selected set of cultural and historical objects, the system prepares a route taking into account the physical characteristics of the area to visit, such as its location, distance, working hours, and time available to the tourist. Because of any planned or occasional events (e.g., incidental failure to view the object), individual objects can be excluded. The route also offers a sequence for viewing the selected objects. • Route realization -the tourist can choose one of the two options to realize the route: -Virtual tour -the TG provides information about selected cultural objects in the form of text, photos, and videos, depending on the information stored on the system server. -Real walk -the TG assists the tourist during his/her visit and viewing of the objects. Each object has two types of presentation on the guide's server: • A cultural and historical object (CHH objects)depending on the nature of the presentation, it includes different features in accordance with the CCO standard. • Ambient -for characterization of the location and condition as a physical feature in a real location (area) of a separate CHH object or a group of CHH objects, designated as an exposition.
In reality, the TG is a multi-agent system that includes intelligent and executive (reflex) agents. The life cycle architecture includes two basic components ( Fig.1.): • A back-end component: it consists of different modules, distributed in two layers -a knowledge base and operational assistants performing the tasks of gathering information for the client's needs and generating it in an appropriate cultural and historical route; • A front-end component: it consists of an intelligent assistant that takes care of presenting the route and object information to the client's mobile device using the information generated by the operational assistants in the back-end layer. • It serves as a tourist's GUI -the tourist can only communicate with the guide through this assistant. This agent is responsible for the proper visualization of the information received from the operating agents on the client's mobile device. It visualizes the questions that the QGA generates and returns the received answers back to it. It is responsible for visualizing the information about the various cultural and historical objects and for visualizing the route generated by the CCAA. • Establishing the tourist location -by using the GPS capabilities of the client's mobile device to determine his or her position. • Life Cycle Management -it prepares a "schedule" for visiting the cultural objects and follows its observance.

TG OPERATION MODES
According to the architecture presented in the previous section, the TG has the ability to provide the following modes of operation: ─ Physical routes -it helps tourists during a physical visit to the CHH Objects. Besides the wishes of the tourists, here, a possible geographic area is dynamically determined, which can be physically visited within the time available to tourists.
─ Virtual routes -convenient especially for people with disabilities. The criteria for offering routes are the tourists' preferences and wishes. Physical space plays no role here. Demand is realized in a much larger space of objects and there are significant problems in the completion of an effective virtual route that selects and delivers the most significant and desired information for tourists. ─ Mixed routes -this mode is a combination of the previous two modes. At any moment, the tourist can view the tourist objects virtually and decide which one he/she wants to visit physically. The first action of the TG is to conduct a survey with the tourist to understand: ─ Which CHH Objects are interesting for the tourist? ─ What kind of route does he/she prefer? ─ How much time does he/she have? ─ What vehicle will be used?
The purpose is to identify the so-called Area of Cultural Interest (ACI) based on the information from the survey conducted with the tourist.
The main issue of the ViPS adaptation is how to virtualize the cultural and historical objects maintained by the TG. In our project the CHH Objects are presented as a network called HCNet (Historical-Cultural-Net). HCNet consists of two subnets called CHHOntoNet (Historical-Cultural-Objects-Net) and CHHAmbiNet (CHH-Ambients-Net).
CHCOntoNet presents "things" with their attributes that characterize them as cultural and historical objects. In addition, the network also presents the connections between these objects. The presentation of these objects can be implemented as an ontology network. It consists of different ontologies that are related (Fig. 2). Ten ontologies have been created, most of which correspond to the CCO standard dictionaries; these ontologies are Cities, Folklore Regions, Subjects, Agents, Materials, and Objects. Each of them describes a concept and its characteristics necessary for the presentation of the cultural and historical objects. Two ontologies have been developed that interpret the idea of the CCO standard objects: Landmarks and Costumes. The objects described in these two ontologies support the elements required by the standard, but supplementary features have also been added to fully represent the concepts.
CHHAmbiNet is built on the AmbiNet space of ViPS. AmbiNet models the spatial characteristics of "things" and events as a network of ambients. This network reflects the physical location of the cultural and historical objects.

CHH AMBINET STRUCTURE
Pervasive computing adds the concept of mobility and context-awareness to the distributed systems. In order to understand the context, it is required that the system be able to sense the context in its environment and use the information to adapt its behavior to the current situation. The Calculus of Context-aware Ambients (CCA) is a process calculus based on the notion of ambients. An ambient is an entity describing any object or component (e.g., person, process, device, location, etc.) in a system defined as a bounded place where computations happen [20].
Each ambient has a name and a boundary; it may contain other ambients within itself, and be included in another one. Between two ambients there are three possible relationships (parent, child, and sibling).
CCA is used to model ambients in terms of process, location, and capability. CCA extends CBA [21] with new constructions to allow mobile ambients to respond to changes in the environment, in which they are running. Mobility and awareness of context are of particular importance for implementing the Tourist Guide. To represent the properties of the CCA processes, a programming language ccaPL is available [22].
Contextual expressions can be used to ensure fulfillment of a certain opportunity only under specific conditions of the environment, i.e., in a particular context.
CHHAmbiNet is a hierarchical network of ambients. In the developed system we present the following entities as ambients: ─ Individual CHH Objects; ─ Expositions and collections; ─ Museums; ─ Cities; ─ Regions. These ambients are located at five hierarchical levels, as individual objects can be part of collections; the collections can belong to museums; the museums are located in or in the vicinity of cities, which in turn are located in separate regions (Fig. 3). Each ambient is mobile and can enter or exit its parent ambient according to the current context. For example, a separate exhibit, such as the Thracian treasure, may change its location and become part of another exhibit in another museum, city, region, or country. Thus, the Panagyurishte Thracian treasure, which is usually located in the historical museum in Panagyurishte, Bulgaria, at some point becomes part of the exposition of the Thracian civilization in the Louvre in Paris, France. In addition, it is possible for a particular CHH Object to be independent and not to be part of a museum exhibition. Such are the Thracian megalithic objects, Renaissance houses, monuments, etc. Regions can also change dynamically according to the area of interest. They can be geographic, administrative, folklore, etc.

Figure 3 -Hierarchical network of Ambients
Depending on the survey response, a cultural route that the tourist wishes to take physically is dynamically generated by the following steps: ─ Specification of multiple CHH Objects; ─ Subject to the location of the tourist from this set, only those CHH Objects are selected that are in the tourist ACI; ─ In dynamic mode, a connection to the physical world is made in order to obtain up-to-date information on the accessibility of the desired tourist objects, the working hours of the museums and museum expositions, etc. ─ A variety of routes available to the tourist are generated on the multiple CHH Objects of the ACI; ─ The tourist can choose the preferred route. ─ In the course of the route, updated information on the desired tourist objects is provided in dynamic mode. ─ Upon request of the tourist, additional up-to-date information from external WEB resources may be supplied, such as weather change, probability of a storm, nearby recreation areas, restaurants, hotels, etc. CHH AmbiNet has been developed in the same way as the ViPS AmbiNet subspace and consists of several major components: ─ CHH AmbiNet Editor for visual modeling of different scenarios. The editor allows presenting and describing the required ambients with their hierarchical structure, location, types and attributes. The editor allows tracking the processes of the participating ambients and the messages they exchange with each other. ─ CHH AmbiNet ccaPL Interpreter of the official ccaPL language based on context-aware Ambients (CCA) calculations. After presenting and describing the AmbiNet Editor's structure, a simulator of the current scenario is displayed in Console Mode or by Visual Animator. ─ CHH AmbiNet Route Generator is used to generate routes (or plans) based on user-defined criteria. A route is a sequence of CHH objects that are modeled as ambients with their current location. To generate a route, different modified algorithms based on A* can be used according to the current context. ─ CHH AmbiNet Route Optimizer -it applies optimization depending on the generated routes from the CHH AmbiNet Route Generator and the instant state of the participating objects; ─ CHH AmbiNet Visualizer -it is used to represent the modeled scenario in virtual reality. ─ CHH AmbiNet Repository -a library of already completed virtual and real routes.

A SAMPLE SCENARIO
We will visualize the work of the TG with the following scenario: A tourist is located in the town of Brezovo, Plovdiv region. After a QGA survey it is found that the tourist: ─ wishes to visit objects related to the ancient Thracian civilization; ─ wants to be given a physical route; ─ has one day available; ─ would like to travel with his own car.
After communication between the QGA and the KGA, the Area of Cultural Interest (ACI) is defined. OntoNet has information on several tourist sites that can be part of a one-day tourist route:

Region3
City2 City… City3 Expositions City Once the CCAA receives a request to generate a route by visiting the listed objects, it initiates twoway communication with the Guard Assistants (GA), whose task is to provide communication with real-world objects. As a result of this communication, accessibility to the desired tourist objects is determined. The CCAA makes a request to the CHH AmbiNet Repository to search for already generated routes that meet the necessary requirements. If it finds them, it sends the List of routes to the tourist's PA. Otherwise, it sends the list of accessible objects to the CHH AmbiNet Route Generator, which puts the desired objects on the geographic and road map of the area. The algorithm for generating routes starts searching by using the obtained static graph structure (Fig. 4). The generated list of possible routes is recorded in the CHH AmbiNet Repository for future use and sent to the PA for the tourist to choose from.

Figure 4 -A Static Graph with Ambients for Route Generation
Ambients model physical or virtual objects of interest together with their spatial, temporal, and event attributes. The network can be parameterized to the dynamically changing physical or virtual environment through data obtained from the IoT nodes. According to their characteristics, location, and momentary state, the ambients that represent physical objects are static or dynamic.
Static ambients have a constant location in the physical world. All CHH objects, expositions, and museums from Table 1 are static ambients.
Dynamic ambients have variable locations in the current context. For example, a car, a tourist, a mobile device, etc. All kinds of ambients have a hierarchical structure and can move from or into other static or dynamic ambients. When they change their location, the ambients move together with all their "ambient-children".
Let A be a set of ambients. An ambient a=<name, location, type, parent, P (a), attr>∈ A where: ─ name is the ambient identifier; ─ location is the location of the ambient in the physical world; for a virtual ambient location = null; ─ type is the type of ambient (static, dynamic); ─ parent is a parental ambient; if none exists, parent = null; ─ P(a) is the plurality of ambient processes; ─ attr is a set of additional ambient attributes.

Figure 5 -Hierarchical structure and interaction between ambients
The processes of the main CCA-ambients described in the presented scenario are:

CONCLUSION
The version of the tourist guide presented in this article is being tested in an environment supporting a real lifelong learning process. A part of the Bulgarian cultural and historical heritage includes the national costumes and garbs but so are the blankets, coverings and tunics, decorated with lots of embroideries and fancywork. In every region of Bulgaria, the needlework has a specific character, which is determined by the combination of colors, stitches, symbols, ornaments, sewn beads, coins, tassels, and sequins. Currently, on the tourist guide server only a part of this rich cultural heritage is implemented. New repositories are planned to be built in the near future, which are dedicated to objects belonging to the traditional Bulgarian cultural heritage such as examples of the Thracian culture and the Bulgarian National Revival.
A specialized viewer is planned, which will be implemented with the virtual reality technologies to make the results more user-friendly and more creative. Another future extension is the ability of the tourist guide to recognize various folk elements and motifs. In order to achieve this goal, deep learning methods will be applied.