Automatic Knowledge Exchanging between Tourists via Mobile Devices Keywords: Tourism, Ontology Mapping, Semantics, Mobility, Knowledge Discovery, Social Networking, P2P ABSTRACT Purpose This paper presents an approach for services in the domain of tourism based on a software application in the area of ontology engineering, showing a methodology for intelligent knowledge based P2P networks creation, in the tourism knowledge domain, given that, potential tourists share and organize their experiences, interests and knowledge. Using the proposed software application, they automatically exchange their knowledge, with an intelligent and transparent way, with other users that have the same or similar interests and make use of it. Design/Methodology/Approach The approach followed, was categorizing tourism related interests and services into ontologies (system and user). Then comparing, using intelligent algorithms them, suggesting, new, unknown to the user, interests. The data was evaluated by human expert, for providing a guide for correct (according to expert) interestingness of profile concepts. Findings In the paper is presented the outcomes of the software used, running on mobile devices, showing the connection, among user knowledge profiles and tourism services for them. It has been found that the return results (concepts) are of high interestingness to the user. Research Limitations/Implications Experiments have been performed using one central ontology as reference, with two user ontologies at the same time. More experimentation, with more users connected concurrently is suggested for further research. Practical Implications Of high practical importance is the creation of intelligent social networking processes and user communities based on interests, for further e-commerce activities, based on a semantic framework. Originality/Value The paper fulfils the need for intelligent interaction and distribution of knowledge and content to users in an autonomous way, anywhere. 1 INTRODUCTION One of the most significant achievements in the so-called digital era, is the easy access to the international networks, information channels and access to new ways of digital content. Internet has changed forever the way that the digital content, cultural heritage and tourism (in all its ways), are interacting among each other to create new e-commerce opportunities in tourism, that cover personalized needs. There is a plethora of sites on the Internet that they offer tourism services. These tourism services are precompiled and the have been developed according to studies to cover larger populations that will be interested in these. In this work, it is accepted, that personalization in tourism, as in many other domains, is the future in tourism activities and intelligent techniques. Personalization must be based on new technologies that have to be developed, to satisfy user (tourist) autonomous needs. To this end, it is proposed an intelligent software application, that will provide the ability to potential tourists to organize their experience/knowledge obtained after visiting places of interests and then to automatically interchange it after electronically getting in touch with other people that have the same or similar interests. The proposed technique is based on the comparison and automatic interchange of interesting parts of user ontologies. More specifically, is based on exchanged only interesting parts of ontologies based on structural similarity of ontologies (Hu et. al., 2005) and (Euzenat and Valtchev, 2004) . The rest of the paper is organized as follows: next section presents the basic ideas and concepts around relevant technologies, such as intelligent knowledge extraction and distribution, and the kind of problem which will try to solve. Also, it presents the theoretical background of our approach, the ONARM technique and the implemented Concept-Net application for tourism, based on the ONARM methodology. Section 3 presents various use cases and system usage, by presenting user scenarios. Finally, in Section 4 it is presented future work and concludes with our work, presenting also, the respective list of figures and relevant bibliographical references. 2 ONTOLOGY BASED KNOWLEDGE ENGINEERING Ontologies are used today and find acceptance in a number of applications like information retrieval ( Pretschner and Gauch, 1999), document management (Lacher and Groh, 2001), agent communication (Huhns and Singh, 1997), finance (Firat and Madnick, 2001) and e-commerce (Omelayenko, 2001) and (Virtual Vineyards). Ontology engineering, i.e., designing, developing, maintaining and sharing ontologies, is an emerging knowledge engineering process. It allows the information organization into taxonomies of concepts, represented by attributes, and relationships between concepts, represented by IS-A relations, functions, constraints, etc. Ontologies can be designed and developed by different communities without adopting common standards for information exchange. Ontologies are imposed by the explosive growth of the Semantic Web, where they are used to describe the semantics of the data. Due to the decentralized nature of both the WWW and the Semantic Web, it is inevitable that different communities within the so-called information society represent and treat the same basic concepts in different ways. For example, the basic concept “Person” is treated entirely differently in a medical ontology than in a tourism business one. 2.1 THE ONARM TECHNIQUE Ontology mapping aims at tackling structural and semantic heterogeneity and in-compatibility by determining correspondences between elements of disparate ontologies. A mapping can be established either directly between two ontologies (alignment) or indirectly through mapping them onto a third reference ontology which both of them share as a common upper model (articulation). The work of mapping ontologies is performed mostly by hand, perhaps supported by a graphical user interface. Of course, performing ontology mapping manually is an extremely time-consuming and error-prone process. The ontology mapping techniques presented in the literature are usually based on syntactic and/or semantic heuristics. The latter have been studied in various scientific fields including machine learning, concept lattices, formal theories, databases and linguistics. In almost all of them user intervention is required, thus they are semi-automated. Usually, when an automatic decision is not possible, these techniques suggest possible correspondences, determine conflicts and propose solutions and actions. Then the user makes the final selection. The proposed methodological framework is based on ONARM ontology mapping technique (Tatsiopoulos and Boutsinas, 2009a), (Tatsiopoulos et. Al., 2009b) which, given two input ontologies, is able to map concepts in one ontology onto those in the other, without any user intervention. ONARM, exploits the structure of the input ontologies, i.e. the concept hierarchies, to determine the mapping. The ONARM methodology proposes a new model as to discover knowledge from concept based on user profiles. It assumes an analogy of a concept based world in which we use and therefore we consume concepts according to our subjective needs and how we anticipate that these are optimally covered by concepts-products. Therefore the behavior of the knowledge user has to be analyzed and according to this analysis knowledge has to be forwarded to her/him in an intelligent and transparent way. The ONARM has been compared to other Ontology Mapping / Aligning techniques (Kalfoglou and Schorlemmer, 2003), concluding its degree of efficiency is very high provided that is among the fewest offering automatic merging results, without human intervention. 2.2 THE SOFTWARE APPLICATION The software application that has been developed is called Concept-Net and is composed of two major components (a) the client application which runs on mobile devices and (b) the server part which processes the personal ontologies, analyzes, compares, aligns and finally forwards interesting parts of them to online client devices/users. The content of the specific application is a number of concepts in the area of tourism. The concepts of the domain are organized in a main reference ontology with concepts – classes of type IS-A in a hierarchical way. The client part has functionality that allows the user to draw her/his personal ontology in a graph, in the graph editor. The user is continuously, upon request, being updated from the central server with all the concepts available and from which selects the ones that are of main interest to him. Afterwards, the user personal ontology is uploaded to the server and the complete analysis of the ontology is taking place. The user is able, via the graphical interface to find other online users. Then, automatically, in a dynamic way, is able to update interesting and relevant parts of her/his ontology, with additional concepts from the reference ontology. In figure 1, it is presented a part of the tourist domain reference ontology that has been developed for the needs of testing with real world concepts. The ontology has been implemented in Protégé (The Protégé Ontology Editor, Stanford University) in RDF/RDF(s) format and then is uploaded to the server for further processing. 2.2.1 System Architecture (a) Concept-Net has the following three submodules in the client: the “Graphical User Interface”, the “Web Services Interfaces (WS IFCs)” and the “Operating System Utility” as presented in figure 2. From the above The “WS IFCs” is the one that transparently connects to the back-end module and provides connectivity with the respective backend web service. (b) Concept-Net has the following submodules in the back-end module: The back-end module (Fig. 6) is currently implemented using the Java Programming Language and is composed by: the Web Services Interfaces (IFC), the Data Access Layer, the System Logic & Intelligence Module, the Knowledge Service, the Database and the Operating System & File System Access Layer. The Web Services Interfaces (IFC) component is responsible for all the communication between the users' client devices and the back-end system. The Data Access Layer incorporates all the functionality needed to send queries to system database as well as to receive information from it, during the system operation. This information is relevant to authentication as well as to user's knowledge profile. The System Logic & Intelligence Module incorporates all the functionality dealing with the main operation of the proposed methodology. It includes submodules that implement the following functions: Graph Analysis. This sub-module accepts an ontology in the form of a graph and performs operations to analyze it, in terms of paths, nodes, leaf nodes, parent and children nodes of every node. This functionality is achieved using the HP Jena API for ontology querying, in RDF/RDFs graph formats. Then, the Apriori algorithm for association rule mining is used. This sub-module accepts as input all the possible paths and outputs only these with the most significant associations among their nodes. Concept Matching. This sub module, having as input two sets of paths, outputs the most "interesting" ones to match to each other. Ontology alignment. Based on the above, this sub-module performs the actual implementation and integration of the concepts into the user's graph. The “Knowledge Service” component implements a set of function calls so that when it is called properly from the Web Services Interfaces component, performs the respective task. The function calls implemented in Knowledge Service are: “Echo”, “GetConfguration”, “LoginUser”, “UpdateInLineStatus”, “GetConceptList”, “GetUserByStatus”, “UploadUserGraph”, “RegisterUser”, “SynchronizeGraphs” and “GetUserGraph”. The “Database” stores all the system information, users' knowledge profiles, concepts and so on. Finally, the “Operating System & File System Access Layer” implements functionality for accessing the OS, so that the overall system can be easily transferred to a variety of Operating Systems. The Concept Net system has been implemented for proof of concept purposes, as a full working prototype. It is applied for evaluation purposed to different domains. Additionally, it has been tested in various structural models for ontologies9. Here, it is applied to the tourism domain. The objective was to recognize among two Concept Net users (tourists), their personal ontology graphs, to analyze them using the proposed methodology and finally exchange the concepts that were found interesting per user. 2.2.2 Graphical User Interfaces In the following figures, the major parts of the graphical user interface (GUI), that appear on the user’s Personal Digital Assistant, which runs on Windows Mobile 6.0 operating system, are presented. Main Menu GUI (Figure 1) This is the main menu via which the user interacts with the functionality on his device. The main functionality that is available from here is: Login / Register: Functionality to register, authenticate and use the system. Join Knowledge Network: The user connects in real time to the system, to interact with other users that they use it, to exchange tourist – concepts - interests Concept Browser: Return all relevant to the user concepts from the server Graph Editor: Functionality for the user to draw his concept based profile. Settings: Customize settings for connecting to backend server (ip, port, etc.) GUI for Creation of Personal Profiling (Figure 2) After registration (first time) and proper user login process, the user will have to create his personal profile in terms of preferences in relevance with the usage of the device – account and how the system will behave for the management of his personal interests. For example, the user might or might not permit the exposition of all of his personal ontologies, while he maintains a number of them stored in his personal device for the same or for other topics/interests. This way, system respects and acts according to confidentiality issues, expressed in user’s profiling mechanism. GUI for Concept Navigation (Figure 3) After login, the user is expected to proceed to the part of the application in which: He will be able to load a relevant concept list, stored locally in his device. He will be able to update via a real time connection with the server, with all concepts that are stored there. He will be able, finally to save his personalized list of concepts. GUI for Representing Personal Ontologies – Graphs (Figure 4) The user afterwards, has the ability to navigate to the part of the client application that he will create his personal graph ontology. This, which is called Graph Editor, permits the user to select concepts from a drop down box and freely locate them and connect each, node by node, in a hierarchical way, of the type IS-A relation. For example, our user here is interested in tourist activities that deal with Camping. More specifically, he would like to the location that he will be suggested to select for camping, to exist some type of Sports infrastructures and especially, if possible, Volley (infrastructures, local games, small championships, beach volley and so on). He would also prefer the camping location, to be more close to a quite location than to a very crowded and busy one, since he plans his vacation for Relaxation purposes. What it happens next is that, while the user connects to the system, his personal ontology – graph is getting analyzed and is recognized that the system deals with a “sporty” type of individual, providing to him a new to him concept Sailing, as additional knowledge to his profile. Then, the system adds this to his personal ontology (after user acceptance). 3 USE CASES – USAGE In order to evaluate the proposed methodological framework, Concept Net has been tested under different scenarios. For this, a reference ontology has been developed, (see Figure 5), while we asked users to develop their personal ontologies. In the following, we present such user case scenarios. As an example of a use case scenario, the user selects from the populated list of concepts the ones that seeks knowledge about. For example in our case a user A, selects as a main concept the concept of “camping” looking forward for vacations in a camping. In his personal mobile device, in the graph editor tool, associates it directly with the concept “relaxation”, meaning that the user seeks a place for camping that it exists in a more quite place than a cosmopolitan and busy one. Additionally, the user is interesting in having sports activities infrastructures around it, so the user creates the node “sports” under the node “camping”. The user repeats the process, creating her/his personal graph of interests and then the user interacts with another online Concept Net user B of the P2P Knowledge Network or the system’s main reference ontology of tourism concepts. What happens is that the system after analyzing the two personal ontologies, pushes automatically the concept “sailing” that exists on user’s B personal ontology, as relevant to interests of user A. User A accepts the automatically transferred concept(s) –or part of them- and modifies her/his personal ontology graph in the mobile device. Thus, all the users of the system are connected resulting in a P2P network, using the ability of the communication channels and techniques of the internet to create a socially based dynamic network for tourism knowledge extraction and distribution system. The system is also able, based on the concepts that exist on his personal tourist ontology (profile), to present in dynamic way marketing information about the above, in the form of advertisement banners, on the top of the graphical interface of his device, for e-commerce exploitation purposes. A second use case scenario is relevant to the tourism activities (visits, tours, overnight staying elsewhere, except the primary place, change of scheduling, etc) and cultural activities. Culture includes areas, such, history, photography, various types of theatre and singing, organization of special events and happenings, cultural tours and so on. In our use case scenario, our virtual tourist A, plans a visit to Greece and her/his primary objective is to “visit places, that there exist ‘ancient’ findings”. Additionally, if possible, to find in a complementary way, other activities that correlates to its primary objective. She/He plans to stay mainly in Athens. How our system will assist her/him? The problem here, for non human inference, becomes the understanding first of all, of the specific relevant terminology. For example, what kind of ‘ancient’ finding is the tourist interested in? Are preferable in her/his profile Hellenistic, Classical or Byzantine findings? Does he/she mean by ‘finding’ only ruins of some specific type (temples, churches, sacred places, etc) or also includes relevant material like sculpture and painting that are kept in museums? To provide accurate service to the potential tourist, via an automated and personalized way, Concept-Net, will analyze with an intelligent way and according to its personal profile ontology her/his real personal needs. Given for example, that our tourist is a professor of classical Archaeology and provided that she/he is connected with a majority of people interested in classical archaeology too, Concept-Net, understands and infers, that in her/his limited time will prefer to visit a number of places that exist in a certain area of Greece (e.g. Delphi), that has one night to stay in place around and will visit in a tour similar places in the area. Therefore, the system, will present on his personal mobile device advertisement of major hotels in the area and tour organizers as well as places that will have material for sale (relevant books for example) relevant to his topics of interest. As a third complementary scenario to the above, lets assume that the user after visiting Greece returns to her/his country at some point of time. Then having stored in the mobile device all the above information as part of her/his personal ontology, while the user will be in the cafeteria of the University that the user teaches, her/his mobile device (under his permission) interacts with other mobile devices that exist in short range (or their users are online to the system) and intelligently transmits knowledge to another user that has the same interest (at some point of time to visit a Mediterranean country that has ‘ancient’ findings). Interacting this way, the user becomes and establishes a member of a social dynamic and intelligent knowledge network for activities around the thematic area of cultural tourist activities. 4. CONCLUSIONS - FUTURE WORK Concluding, new information technology techniques have been examined in this work (mobility, intelligent knowledge extraction, ontologies), based on semantics and specifically semantically enabled web applications, will influence the interaction between tourists and services that are targeted for them. Also, a new way, that this semantic application will provide a means for relative users to create knowledge based social networks, in the area of tourism. It has been presented also, a software application (Concept-Net) which is based on ONARM methodology for exchanging interesting parts of user profiles in the knowledge domain of tourism. Along with this, it has been presented an intelligent way for performing e-commerce activities in the same domain of tourism, which is based on a much targeted way for advertisement. Currently, the application has been tested and is working on PDA’s and Smartphones that run the Windows Mobile 6.0 operating system. It is expected to extend the application adaptation, into I-Phone and Symbian operating systems, so to reach as much as possible number of potential Concept-Net users. It is also planned to optimize all internal methodological components so that to optimize the overall system functionality. More specifically, to develop and publish the WEB services as a protocol for easy integration with third party applications, in a relevant UDDI server. This way, Concept-Net application will be open and based on an acceptable WEB service protocol being in a position to interact with other, semantic enabled applications, in the area of tourism, available in a specific URI. 5. LIST OF FIGURES 5.1 FIGURE TITLES Figure 1 – Main Menu Figure 2 – GUI for Creation of Personal Profiling Figure 3 – GUI for Concept Navigation Figure 4 – GUI for Representing Personal Ontologies Figure 5 – Reference Ontology (part) Figure 6 – Concept Net Back End System Architecture 5.2 FIGURES Figure 1 Figure 3 Figure 2 Figure 4 Figure 5 Figure 6 6. BIBLIOGRAPHIC REFERENCES Euzenat J. and Valtchev P. (2004) Similarity-based Ontology Alignment in OWL-Lite, in Proceedings of ECAI, (2004) pp.333-337. Firat A. and Madnick S. (2001). Knowledge Integration to Ontological Heterogeneity: Challenges from Financial Information Systems, in Proc. of 23rd International Conference on Information Systems (ICIS), (Barcelona, Spain, 2001). Hu W., Jian N., Qu Y. and Wang Y., (2005) GMO: A Graph Matching for Ontologies, in Proceedings of K-CAP Workshop on Integrating Ontologies, pp.41-48. Huhns M.N. and Singh M.P. (1997) Ontologies for agents, IEEE Internet Computing. 1(6), 81-83. Kalfoglou, Y., Schorlemmer, M.: (2003) Ontology Mapping: the State of the Art. The Knowledge Engineering Review, 18(1). Lacher M.S. and Groh G. (2001) Facilitating the exchange of explicit knowledge through ontology mappings, in Proceedings of the 14th International FLAIRS Conference. Omelayenko B. (2001). Integration of product ontologies for B2B marketplaces: a preview, SIGecom Exch.. 2(1) Pretschner A. and Gauch S. (1999) Ontology based personalized search, in Proc. 11th IEEE, Intl. Conf. on Tools with Artificial Intelligence, pp.391-398. Tatsiopoulos C. and Boutsinas B. (2009). Ontology Mapping based on association rule mining, in Proceedings of 11th International Conference on Enterprise Information Systems,vol.3, Milan, Italy, pp.33 Tatsiopoulos C., Boutsinas B. and Sidiropoulos K. (2009) On Aligning Interesting Parts of Ontologies, in Proceedings of International Joint Conference on Knowledge Engineering and Ontology Development (KEOD2009), Madeira, Portugal, pp. 363-366. The Protégé Ontology Editor, http://protege.stanford.edu/ Virtual Vineyards, http://www.virtual-vineyards.org