420 likes | 654 Views
An ontology, intelligent agent-based framework for the provision of semantic web services. Francisco Garcia-Sanchez, Rafael Valencia-Garcia, Rodrigo Martinez- Bejar , Jesualdo T. Fernandez- Breis. Soft Computing Lab. Yongjun Kim. 19 th May., 2009. Outline. Introduction Motivation
E N D
An ontology, intelligent agent-based framework for the provision of semantic web services Francisco Garcia-Sanchez, Rafael Valencia-Garcia, Rodrigo Martinez-Bejar, Jesualdo T. Fernandez-Breis Soft Computing Lab. Yongjun Kim 19thMay., 2009
Outline • Introduction • Motivation • The Proposed Framework • A Proof-of-Concept Implementation • Use Case Scenario • Conclusion • Future Work • Discussion
Introduction • The Intelligent Agents topic has been broadly studied and is currently being revisited due to its relation to the semantic web. • The semantically annotated information can be automatically processed by agents. • Before the semantic web, agents had to face the problems derived from the lack of structure characterizing much of the information published on the web. • The Semantic Web Services are studied in order to automate aspects of web services such as discovery, execution, selection, composition and interoperation. • Several research studies have shown that the cooperative interaction between them can lead to the development of new, more powerful applications.
Introduction • The purpose of this paper: • Highlights the problems that hamper the application of agents and web services separately. • Analyzes some of the projects that have attempted to combine these technologies and point out the shortcomings of these solutions. • Presents the SEMantic web services and Multi-Agent System framework (SEMMAS), which provides a seamless integration of the technologies by making use of ontologies. • The contribution of this paper: • An overall solution based on a fully-fledged architecture • Proof-of-Concept implementation • An eCommerce scenario for providing access to various computer hardware vendors
Motivation • Agent Technology • Intelligent Agents • An ‘agent’ is a computer system situated in some environment and capable of autonomous action in this environment in order to meet its design objectives (Wooldridge). • Should have reactivity, pro-activeness, social ability (Wooldridge et al.). • Could also have temporal continuity, reasoning, rationality, veracity, mobility (Elamy). • Multi-agent Systems • Can be seen as a system consisting of a group of agents that can potentially interact with each other. • Presents several advantages, such as reliability, robustness, modularity, scalability, adaptivity, concurrency, parallelism, and dynamism (Elamy). • Can cooperate or compete. • Can be distributed problem solving systems or open systems (Wooldridge).
Motivation • Agent Technology • Multi-agent Systems • Agent Communication Languages (ACL) • KQML (Knowledge Query and Manipulation Language) and FIPA-ACL (Foundations for Intelligent Physical Agents-Agents Communication Language) • Agent-Oriented Software Engineering (AOSE) • Purpose : create methodologies and tools that enable inexpensive development and maintenance of agent-based software. • Design Methodologies • MAS-CommonKADS, ZEUS, GAIA, MaSE and INGENIAS • Standardization Organizations of agent technologies • FIPA • Produces standards for the interoperation of heterogeneous software agents. • Becomes an IEEE Computer Society standards organization. • Identifies some necessary roles. • AMS (Agent Management System), DF (Directory Facilitator), MTS (Message Transport System). • Has different FIPA compliant agent platform implementation. • FIPA-OS (FIPA-Open Source), JADE (Java Agent Development Environment) and ZEUS. • OMG Agent PSIG
Motivation • Agent Technology • Advantages • Appropriate for the development of complex and distributed applications. • Can contribute features such as autonomy, proactiveness and goal-oriented behavior to this kind of applications to automate some stages of the process. • Drawbacks • The use of communication protocols such as IIOP (Internet Inter-Orb Protocol) or RMI that cannot get across companies firewalls. • Solution may create gateways between every pair of companies aimed at interacting. • However, no new dynamic links can be established (limited dynamism). • The ineffective exploitation of semantics in communication mechanism. • None of the FIPA-compliant platforms (e.g. JADE, FIPA-OS, ZEUS) provides the proper support to handle the semantic dimension of the FIPA-ACL language.
Motivation • Semantic Web Services • The Semantic Web • Aims at adding semantics to the data published on the Web. • Ontologies are the back bone technology. • Web Services • Can be defined as services located at some point in the Internet that can be accessed through a standard protocol. • Based on a set of standard protocols such as UDDI (Universal Description, Discovery, and Integration), SOAP (Simple Object Access Protocol), and WSDL (Web Services Description Language). • Advantages • Enable dynamic service composition using independent, reusable software components. • Drawbacks • Current technology around UDDI, WSDL, and SOAP provide limited support for all that. UDDI SOAP search register WSDL WSDL Client Service Fig. 0. Web Service Architecture
Motivation • Semantic Web Services • Semantic Web Services (SWS) • The joint application of semantic web and web services in order to create intelligent web services. • Standardization Activity • OWL-S (OWL for Services) • Makes it possible for agents to discover, compose, invoke, and monitor services with a high degree of automation. • Composed of three main parts: • The service profile for advertising and discovering services • The process model which gives a detailed description of a service operation • The grounding which provides details on how to interoperate with a service via messages • WSMO (Web Service Modeling Language) • Provides a conceptual framework for semantically describing all relevant aspects of web services in order to facilitate the automation of discovering, combining and invoking electronic services over the Web. • Comprised of three different elements: • Web Service Modeling Ontology (WSMO) • Web Service Modeling Language (WSML) • Web Service Execution Environment (WSMX).
Motivation • Semantic Web Services • Semantic Web Services (SWS) • Standardization Activity • SWSF (SWS Framework) • Composed of the SWS Language (SWSL) and the SWS Ontology (SWSO). • Two formal characterization of the model have been identified: • FLOWS (First-Order Logic Ontology for Web Services) • SWSL-FOL • ROWS (Rules Ontology for Web Services) • WSDL-S (WSDL Semantics) • Defines a mechanism to associate semantic annotations with Web Services that are described using WSDL. • The semantic information includes definitions of precondition, input, output, and effects on web service operations. • SAWSDL (Semantic Annotations for WSDL) • Identifies some WSDL and XML Schema extension attributes that support the semantic description of WSDL components. • Necessary to link WSDL elements with semantic models, such as ontologies.
Motivation • Semantic Web Services • Semantic Web Services (SWS) • SWS-related Tools • WSMX (Web Services Execution Environment)\ • An execution environment to perform dynamic discovery, selection, mediation, invocation and interoperation of SWS. • IRS (Internet Reasoning Service) • Allows applications to semantically describe and execute web services. • Supports the provision of semantic reasoning services within the context of the semantic web. • SWS Limitations • SWS technologies depend on higher-level software entities with cognitive capabilities able to access the semantic content of service descriptions, process it and understand it.
Motivation • Intelligent Agents and SWS: related work • Numerous research projects have been carried out due to: • The shortcomings of intelligent agent technologies. • The inherent need for autonomous software entities in SWS environments. • The promising benefits of having two technologies working cooperatively. • Three main scenarios are possible: • Agents over Web Services • Agents in Web Service Wrappers • Communication in web services and agents becomes equivalent, so the distinction between them disappears. • Agents and Web Services • Both types remain separate interoperating through gateways and translation processes.
Motivation • Intelligent Agents and SWS: related work • [Hendler, 2001] • Description • Describes at first how the ontology languages of the semantic web could lead to more powerful agent-based approaches to using services offered on the Web. • Proposes a method for describing the way the invocation of services should be done by agents by means of an ontology language such as DAML+OIL. • The Semantic Web FRED project (SWF) [Stollberg et al., 2005] • Description • Combines agent technology, ontologies, and SWS in order to develop a system for automated cooperation. • Is a complete solution for the interaction agent-service and provides the means for performing tasks such as service discovery, composition and execution. • The authors distinguish three types of services: plans (Java programs), processes (complex and nested services), and external web services (through WSDL). • Drawbacks • It appears to be tightly bound to WSMO (a kind of WSMO implementation). • Lacking a common accepted standard for SWS, the attachment of SWF to a particular approach seems too risky.
Motivation • Intelligent Agents and SWS: related work • GODO (Goal-Oriented Discovery for SWS) [Gomez et al., 2006] • Description • Uses the ontology to generate the goals to be executed and sends them to the appropriate execution environment. • Incorporates a language analyzer that determines the concepts, attributes, attribute values, and relationships within a sentence. • Drawbacks • Interacts with SWS infrastructures instead of the SWS themselves. It can’t benefit from most of the advantages agent technology provides in these environments • Agent-based negotiation can’t take place. • Agent techniques have to be implemented ad hoc within the infrastructure. • [Bhuler and Vidal, 2005] • Description • Uses an intelligent agent acting on behalf of a web service within a workflow. • When a web service is intended to be executed, its representative agent gets the control flow and attempts to improve the workflow process. • Envisions workflow-based MAS where service providers are agents themselves, thus acquiring the full proactive, autonomous, and selfish characteristics. • Drawbacks • Semantically described web services are not considered at all.
Motivation • Intelligent Agents and SWS: related work • Agents and Web Services Interoperability Working Group (AWSI WG) • Description • Part of the IEEE FIPA Standards Committee. • Creates a middleware able to handle the fundamental differences between agent technology and web services. • The use of different communication protocols (ACL vs. SOAP) • Service description languages (DF-Agent-Description vs. WSDL) • Service registration mechanisms (DF vs. UDDI) • AgentWeb Gateway Middleware [Shafiq et al., 2006] • Description • Facilitates the required integration without changing existing specifications and implementations of both technologies. • Agents and web services remain at the same abstraction level creating a heterogeneous service space and interoperating through the gateway, thus complying with the third category of Blacoe and Protabella’s classification. • Focuses on the overlapping features of the technologies. • Drawbacks • Each of these technologies must be situated at a different abstraction level since most of the functionalities provided by Intelligent Agents and Web Services is complementary.
The Proposed Framework • Previous approaches suffer from shortcomings mainly due to their inability to overcome the problems associated to each of the technologies under question. • Attempts to solve some of these problems by means of the framework, which is based on a loosely coupled infrastructure and makes use of ontologies to facilitate agents and services interoperation. • The conceptual differences between agent technology and (semantic) web services technologies lead to the need to have both technologies working in an integrated environment. • Agent technologies aim to act as autonomous entities. • Web services aim to provide worldwide-accessible functionality.
The Proposed Framework • Foundations • Ontologies operate as the ‘glue’ that binds other components. • Function as universal vocabularies so that web services and agents share the same interpretation of the terms contained in the messages. • Useful to describe web service capabilities and processes. • Extract or build the local domain-related knowledge of agents. • Work as negotiation protocols and strategies between agents.
The Proposed Framework • Foundations • Based on a multi-tier architecture that is composed of four different layers. • Business logic layer, semantic web services layer, intelligent agents layer and application layer. New services can emerge, A service may change their functionalities or can even disappear at run-time.
The Proposed Framework • The SEMMAS (SEMantic web services and MAS) Framework • Becomes independent from both the domain and the actual application since it comprises only the intelligent agents layer and the semantic web services layer. • The architecture is composed of three components: • A set of intelligent agents, four ontology repositories, and three interfaces
The Proposed Framework • The SEMMAS (SEMantic web services and MAS) Framework • Agents • Seven types of agents are grouped in three main categories: • Agents that act on behalf of service owners • Provider agent and service agent • Manage the access to services and ensure that the contracts are fulfilled. • Agents that act on behalf of service consumers • Customer agent, discovery agent, and selection agent • Locate services, agree on contracts, and receive and present results. • Agents that perform management tasks • Framework agent and broker agent • Avoid system resources becoming overloaded. • Monitor the status of all the interactions. • Roles • Are encapsulations of dynamic behaviors and properties that can be played by agents. • Are dynamic and flexible, responsibility-driven, and context-sensitive. • Two categories of roles are identified. • Roles dealing with service-related issues • Roles related to the framework management
The Proposed Framework • The SEMMAS (SEMantic web services and MAS) Framework
The Proposed Framework • The SEMMAS (SEMantic web services and MAS) Framework
The Proposed Framework • The SEMMAS (SEMantic web services and MAS) Framework
The Proposed Framework • The SEMMAS (SEMantic web services and MAS) Framework • Ontology Repositories • Four kinds of ontologies have been included within the platform. • Application and Domain Ontology • Supports the communication among the components in the framework. • Application ontology contains the knowledge entities (i.e. concepts, attributes, relationships, and axioms) that model the application. • Domain ontology represents conceptualization of the specific domain. • Agent Local Knowledge Ontology • Contains the knowledge about the environment an agent possesses. • Includes knowledge about the assigned tasks, as well as mechanisms and resources available to achieve those tasks. • E.g., Broker Agent’s one may contain the mapping rules it has to apply to resolve the interoperability mismatches. • Negotiation Ontology • Comprises both negotiation protocols and strategies that constitute the negotiation mechanisms agents must use to coordinate their interactions. • Semantic Web Services Ontologies • Contain the semantic description of Web Services.
The Proposed Framework • The SEMMAS (SEMantic web services and MAS) Framework • User Interfaces • Is a key component of the infrastructure. • Three different interfaces are included: • Customization Interface (for software developers) • Add/delete ontology repositories (need URLs), add/delete ontologies, roles implementation, agent instantiation • Service Providers Interface • Add/delete services, set general preferences (conditions), set service particular preferences • Service Consumers Interface • Set general preferences (e.g. expected cost, warranty, desired delivery time), query, execute services
A Proof-of-Concept Implementation • A MAS was implemented on top of the JADE platform. • Methodology • INGENIAS was applied to design the multi-agent infrastructure. • Proposes the MAS analysis and design from five points of view: • Organization : • Defines how the agents are grouped, the system functionality, and what restrictions should be imposed over the agent behavior. • Agent • Describes the agents themselves and the mental states they have along their life cycle. • Tasks and Objectives • Supports to analyze and define the system objectives, their decomposition, and their relation with tasks. • Interactions • Shows the details about how the agents coordinate and communicate. • Environment • Defines what is around the system and how each agent perceives it.
A Proof-of-Concept Implementation • INGENIAS Methodology • Composed of three phases. • Inception, elaboration, and constructions • Supports the INGENIAS Development Kit (IDK). • It provides the means to create most of the diagrams and models required by the methodology. • It incorporates a function to automatically generate JADE files from the developed diagrams. • Advantages of JADE • Complies with the FIPA specification, open-source, implemented in Java, and at a mature state (version 3.4).
A Proof-of-Concept Implementation • INGENIAS Methodology
A Proof-of-Concept Implementation • INGENIAS Methodology
Use Case Scenario • eCommerce domain is used to evaluate the prototype. • Provides support for B2B and B2C transactions in an environment where various computer hardware vendors are present. • Needs to select the best proposal according to the user’s preferences. • Negotiation is a key issue in these environments. • eCommerce Scenario • Comprises of three computer hardware providers whose products catalogues are accessible through three different Web Services. • Provider A-C, Catalog A-C, Web Service A-C • Service providers have established a set of preferences. • Preferences A-C • Each provider makes use of a different ontology. • Ontology A-C • The prototype uses an ontology. • Ontology S
Use Case Scenario • eCommerce Scenario
Use Case Scenario • Prototype Customization • Four main tasks for customizing the framework to a particular application domain • Designs a domain ontology for PC-components in OWL containing the concepts and relationships. • Develops a web service for each provider. • Annotates the services semantically by using the providers ontologies. • Instantiates the agents that are necessary to provide access to computer hardware catalogues through the available services. • Domain Ontology • Has been written in OWL-DL by using Protégé. • Consists of 45 concepts, 8 attributes, and 55 relationships (43 taxonomical and 12 meteorological). • Taxonomical : ‘classes’, ‘datatype properties’, ‘hierarchical sub-classes’ • Meteorological : ‘part of’
Use Case Scenario • Prototype Customization • Domain Ontology
Use Case Scenario • Prototype Customization • Semantic Web Services • Simulate the internal business processes of the companies meeting the needs around B2B and B2C transactions. • Java and the Apache Axis2 library have been used to implement services. • OWL-S approach is used to describe the service. • Utilize OWL-S Editor, a Protégé plugin. • Semantic web service C • ‘Provider C’ owns the ‘web service C’, which is composed of a method ‘buyProduct_C’. • buyProduct_C(Product att, int no) → Product • WSDL description is needed to allow the service be accessed. • However, it supports a mere syntactic description of the operations. • A formal semantic description is needed to allow the service be automatically exploited. • OWL-S is applied here. • The annotation of the services allows the software agents to interact with providers on behalf of human users.
Use Case Scenario • Prototype Customization • Semantic Web Services
Use Case Scenario • Prototype Customization • A user wants to acquire a 4GB USB flash drive. • Providers and services identification • Processes and interprets the user request. • Obtains an internal, formal representation of the user goal. • Customer Agent sends it to Discovery Agent. • Discovery Agent returns the list to Customer Agent, which forwards it to Selection Agent. • Negotiation and contract preparation • Selection Agent gets in contact with Service Agent. • Service Agent requests the corresponding Provider Agent for the high-level, strategic preferences, and sends back to Selection Agent. • Payment types, delivery time and warranty period • Selection Agent compares each service preferences with the user preferences and calculates their expected utility. • Negotiation and contract preparation • Selection Agent sorts the list of matched services and sends it back to Customer Agent.
Use Case Scenario • Prototype Customization • A user wants to acquire a 4GB USB flash drive. • Transaction fulfillment • The system provides the means to successfully perform the transaction, that is, execute the chosen service. • Customer Agent receives the selection, and starts interacting with the corresponding Service Agent. • Service Agent receives and analyzes the service semantic description. • The service is invoked and the outcome is sent back to Customer Agent. • Product/service evaluation and contract fulfillment • Framework Agent carries out a high-level monitoring process, while Customer and Service Agents ensure their counterparts fulfill their sides of the agreement.
Conclusion • The advantages and drawbacks of agent technology and web services were discussed. • Joining together intelligent agents and semantic web service technologies seemed to be able to lead to the development of new, more powerful applications. • SEMMAS, an ontology-based framework for intelligent agents and semantic web service integration was introduced. • Ontologies constitute the facilitating technology that enables a seamless communication between agents and services. • The purpose of this work was far however from procuring new innovative solutions for semantic web services related tasks. • Matchmaking, composition, mediation, and so on. • Bioinfomatics, eCommerce, eGovernment (focus of our research)
Future Work • Evaluate the framework in terms of its performance and usability in several domains. • A number of algorithms for web service discovery, composition and invocation will be tested and integrated into the implementation. • The performance and accuracy of various ontology reasoners and inference engines will be examined and the most effective ones included into the platform. • Perform the eventual integration of grid services within the framework.
Discussion • Can Web Services solve the problem related to the company firewalls? • Even UDDI may have problems in accessing services behind firewalls. • Does it make sense to prefer the adoption of Web Services to the modification of any FIPA-compliant platform for handling the semantic dimensions of FIPA-ACL language?