Int. J. of Computers, Communications & Control, ISSN 1841-9836, E-ISSN 1841-9844 Vol. V (2010), No. 5, pp. 946-952 Contributions to the Study of Semantic Interoperability in Multi-Agent Environments - An Ontology Based Approach I.F. Toma Iulian-Florin Toma University of Pitesti Romania, 110040 Pitesti, 1 Targu din Vale E-mail: tif@tif.ro Abstract: This paper details the results of our work in the field of multi-agent ontology-based environment simulation. We analyze the impact of introducing some techniques for the alignment / translation / mapping of agent ontolo- gies, which allows for collaborative understanding of distributed ontologies. In the end, we analyze the difficulties / gaps that are to be filled for an actual deployment of the technology / concept in a real life environment. Keywords: ontology, semantic interoperability, agents. 1 Introduction The ability to communicate depends on understanding the syntax and the semantics of a language. We used an ontology model to facilitate semantic interoperability in a simulated multi-agent environment. Current studies relieve the fact that using ontologies associated with the agents allows for building semantic-aware distributed multi-agent systems. An ontology is a formal specification for shared understanding of a domain of interest and offers the possibility of building a formal and machine manipulable model of a domain of interest. Ontologies describe entities and relations between them, classes of objects and their attributes, and are comple- mented by logical rules that constrain the meaning assigned to the terms. These constraints are represented by inference rules that can be used by agents to perform the reasoning on which the autonomy and proactiveness of the agents are based. Thus semantic interoperability facil- itates the increase of the autonomy of agents. The reasoning process of agents in multi-agent ontology-based environments is mainly focused on the alignment of their own ontologies with ontologies exposed by other agents. Having considered the multi-agent environment as heteroge- neous, we analyse the introduction of guidelines for ontology development and evolution which should facilitate ontology reuse that may underpin a usage model for ontologies. 2 Multi-agent environment The multi-agent environment we propose is part of an e-commerce scenario where a user’s agent AGU is activated to find, request and gather offers for a specific product from a series of suppliers’ agents AGS1, ..., AGSn. In our implementation, the suppliers’ agents (AGS agents) are published in the FIPA compliant Directory Facilitator (DF) of the JADE platform. FIPA is an IEEE Computer Society standards organization that promotes agent-based technology and the interoperability of its standards with other technologies. JADE is a software framework to develop agent applications in compliance with the FIPA specifications for interoperable intelligent multi-agent systems. We propose the implementation of a Mediator Agent (AGM) to make the interactions with the DF and to handle the negotiation process between agents. The AGS agents (suppliers’ agents) use their own ontologies. Suppliers can adhere to central- ized/standardized/publicly available ontologies, can extend such ontologies based on their needs, Copyright c⃝ 2006-2010 by CCC Publications Contributions to the Study of Semantic Interoperability in Multi-Agent Environments - An Ontology Based Approach 947 but can also build their own ontologies from scratch. Facing this heterogeneity of ontologies used by the AGS agents, the AGU agent has to achieve semantic interoperability to negotiate with each AGS agent. FIPA recommends using an external Ontology Agent (AGO) for handling the interoperability problems in heterogeneous multi-agent environments [9]. This agent handles the tasks of matching ontologies and translating the values of some attributes (translate notions based on their specified language, convert currencies, convert units of measure). Figure 1 illustrates the architecture of the proposed system: ������ ��� �� ������ ������ ����� ����� ���� ��� � ��� ���� ���� Figure 1: Ontology-based multi-agent environment 3 Ontologies The semantical description of an entity offers a better understanding of the entity and puts the entity in a context. The idea is not necessarily to achieve the level of understanding and association to other entities that a human subject would have for that entity, but to improve the understanding of a software regarding that entity only to satisfy specific goals. The main het- erogeneity problem in our simulated environment is that the agents will typically use different ontologies. Ontology-based interoperation provides a solution in environments with heteroge- neous semantics. Ontologies can capture both the structure and semantics of information envi- ronments [7]. An ontology-based search agent like AGU can handle both simple keyword-based queries as well as complex queries on structured data. Figure 2 contains some sample ontologies exposed by 2 book suppliers’ agents [1]. 948 I.F. Toma Figure 2: Sample ontologies [1] The ontologies can be designed in any ontology editor, like the Protégé software [6] (Figure 3). A large variety of formal languages exists for describing the ontologies (e.g. OWL [2] [8]). Figure 3: Ontology editing in Protégé 2000 4 Implementation The test simulation can be implemented using the JADE environment. The JADE environ- ment has direct support for ontologies only if they are represented as Java classes. These classes can be written by hand of generated using the BeanGenerator plug-in of the Protégé software. Although the Java classes can be generated automatically, this approach has the disadvantage that it is very rigid when conceptual changes are necessary. Under this approach, modifications of the ontology in Protégé have to be followed by the regeneration of the java classes using the Contributions to the Study of Semantic Interoperability in Multi-Agent Environments - An Ontology Based Approach 949 BeanGenerator tool, the re-integration in the main project and the recompiling. Any modifi- cation in an ontology represented using Java classes may also require modifications in the Java code of the agent. A solution to simplify this process is to access the Jena framework for writing ontology-based applications. This framework allows keeping the ontologies in the OWL format generated by Protégé, eliminating any further need to transform the ontology in another format. The parser of this framework has direct access to the OWL files and provides access to the classes of the ontology using Java language. Using this framework, the agent can access the instances of the classes, retrieve the value of attributes, determine subclasses etc. 5 Negotiation The negotiation is implemented using the FIPA Contract Net Interaction Protocol [10]. The workflow for this protocol is represented in Figure 4. Figure 4: The workflow of thhe FIPA Contract Net Interaction Protocol The semantic analysis of the ontologies takes place between the call for proposals (represented as "cfp") and the receival of the refusals/proposals from the suppliers’ agents. The semantic analysis is performed by the dedicated agent AGO . The suppliers’ agents AGS1...AGSn (noted: AGS) receive the CFP. If the concept/item is understood by AGS, it starts to evaluate de conditions/constraints contained in the CFP. If the conditions match, AGS returns a proposal to the AGU agent, otherwise it returns a REJECT-PROPOSAL message. The messages may be sent using predicates defined in a separate common / generalized / standard centralized ontology (OntReqSTD) specific to the process of requesting offers of products . Agents AGU and AGS could adhere to this ontology and AGS could then respond with a more descriptive message 950 I.F. Toma like "AvailableOnlyWithPreOrder", "StockEmpty" rather than responding with a simple yes/no message. The types of ontologies proposed for our model are represented in Figure 5. ����� ������ ���� ����� ���� ���� �������� � Figure 5: The role of the AGO (Ontology Agent) Ontology matching analysis starts if the AGS does not "understand" the concepts/attributes inside the CFP. In this case, the AGS agents call the AGO agent. The AGO agent requests contact details to AGS to contact the AGU agent. Then AGO queries the AGU agent about its exposed ontology. AGO starts a matching process to obtain an alignment between the AGU request (cfp), AGU ontology (OntU) and AGS ontology. If the matching succeeds (with a high confidence mark), AGO reformulates the CFP to the AGS and the AGS may start the simple quantitative evaluation and send an answer to AGU accordingly to the result. AGO may also play the role of converting units of measure, currencies, translating notions between languages etc.) and use the values to reformulate the CFP. 6 Ontology mapping The same concept/product may be described using different attributes, structures and rela- tions, conducting to distinct ontologies. Even so, taking into consideration that the concept is part of a specific domain, there exists a set of common characteristics that should be manda- tory when representing a specific product, like "width", "height", "material", etc. Thus lexical measures can be used to compare attributes and relations between concepts. Some of the lexical measures that can be applied to achieve ontology-matching are n-gram similarity, Hamming dis- tance, Levenshtein distance, Jaro measure, Jaro-Winkler measure and the token-based distances like Cosine similarity, Term frequency-Inverse document frequency (TFIDF) described in [1]. Contributions to the Study of Semantic Interoperability in Multi-Agent Environments - An Ontology Based Approach 951 The AGO agent can also make use of the language-based methods by calling external resources like Lexicons and Thesauri. WordNet [3] is such an electronic lexical database for English, based on the notion of synsets or sets of synonyms. A synset denotes a concept or a sense of a group of terms. WordNet also provides an hypernym (superconcept/subconcept) structure as well as other relations such as meronym (part of relations). It also provides textual descriptions of the concepts (gloss) containing definitions and examples. There are lots of techniques available for analyzing similarities using WordNet [4] [5]. In addition to comparing their names or identifiers, the structure of entities that can be found in ontologies can be compared. This comparison can be subdivided into a comparison of the internal structure of an entity, i.e., besides its name and annotations, its properties or, in the case of OWL ontologies, the properties which take their values in a datatype, or the comparison of the entity with other entities to which it is related. Using these well-known techniques, the AGO agent can run a detailed analysis on the match- ing of the OntU and OntS ontologies. If an alignment is achieved, the AGO agent can reformulate the CFP (call for proposals) to match the OntS ontologies of the AGS agents. 7 Conclusions and the future of semantic interoperability In this paper, we proposed a feasible implementation of a multi-agent environment which makes use of ontologies and ontology mapping to achieve semantic interoperability. The ontology- based multi-agent environments and semantic-enabled communications are, in the present (2009- 2010), under theoretical study only. There are numerous attempts to bring this technology to public use e.g. building public libraries of ontologies, but this field still resides only in the boundaries of the scientifical community. To bring it to public use, tools should emerge, that would facilitate the semantic annotation and semantic description of entities, by any internet user, in various environments like web services, web pages, distributed software, reusable components etc. These tools should be easy to use by any internet user. They should incorporate automatic validation based on the recommendations and restrictions of the ontology engineering discipline. Only then, when the advantages of these technologies will overcome the difficulties of defining and maintaining the ontologies, will semantic-enabled communications be a part of common software and human activities. Bibliography [1] J. Euzenat, P. Shvaiko, Ontology Matching, Springer, 2007. [2] OWL 2 Web Ontology Language, W3C Recommendation, http://www.w3.org/TR/owl2- overview/, October 27, 2009. [3] G.A. Miller, WordNet: A lexical database for English, Communication of ACM, 38(11):39-41, 1995. [4] Pedersen, Patwardhan, and Michelizzi, WordNet::Similarity - Measuring the Relatedness of Concepts, Proceedings of the Nineteenth National Conference on Artificial Intelligence (AAAI-04), pp. 1024-1025, July 25-29, 2004, San Jose, CA (Intelligent Systems Demonstra- tion) [5] A. Budanitsky, G. Hirst, Semantic distance in WordNet: An experimental, application- oriented evaluation of five measures, Proceedings of the Workshop on WordNet and Other 952 I.F. Toma Lexical Resources, Second Meeting of the North American Chapter of the Association for Computational Linguistics, Pittsburgh, USA, 2001. [6] J. Gennari, M.A. Musen, R.W. Fergerson, W.E. Grosso, M. Crubezy, H. Eriksson, N.F. Noy, S.W. Tu, The Evolution of Protege: an Environment for Knowledge-Based Systems Development, Technical Report, SMI Report Number: SMI-2002-0943, 2002. [7] M.P. Singh, M.N. Huhns, Service-Oriented Computing: Semantics, Processes, Agents, WI- LEY, 2005 [8] A. Gómez-Pérez, M. Fernández-López, O. Corcho , Ontological engineering : with examples from the areas of knowledge management, e-commerce and the semantic web , Springer, 2004 [9] Ontology Service Specification, FIPA-OSS, http://www.fipa.org/specs/fipa00086 [10] FIPA Contract Net Interaction Protocol Specification, FIPA TC Communication, SC00029H, http://www.fipa.org/specs/fipa00029/SC00029H.html.