MTA SZTAKI Department of Distributed Systems Hogyan mixeljünk össze webszolgáltatásokat, ontológiákat és ágenseket? Micsik András.

Slides:



Advertisements
Similar presentations
Siebel Web Services Siebel Web Services March, From
Advertisements

Overview of Web Services
Tuesday, June 10, 2003 Web Services Brief Overview & Security Assertion Coordinator Pattern by Mohammad Abushadi & Riaz Ahmed for Security Group CSE -
31242/32549 Advanced Internet Programming Advanced Java Programming
Web Service Ahmed Gamal Ahmed Nile University Bioinformatics Group
Web Services Nasrullah. Motivation about web service There are number of programms over the internet that need to communicate with other programms over.
SELBO Agent Ivan Minov University of Plovdiv “Paisii Hilendarski“
Identity Management Based on P3P Authors: Oliver Berthold and Marit Kohntopp P3P = Platform for Privacy Preferences Project.
SOA and Web Services. SOA Architecture Explaination Transport protocols - communicate between a service and a requester. Messaging layer - enables the.
Service Oriented Architectures in Heterogeneous Environments
1 Introduction to XML. XML eXtensible implies that users define tag content Markup implies it is a coded document Language implies it is a metalanguage.
Specifying Agent Interaction Protocols with AUML and OCL COSC 6341 Project Presentation Alexei Lapouchnian November 29, 2000.
Distributed components
Presentation 7 part 2: SOAP & WSDL. Ingeniørhøjskolen i Århus Slide 2 Outline Building blocks in Web Services SOA SOAP WSDL (UDDI)
Latest techniques and Applications in Interprocess Communication and Coordination Xiaoou Zhang.
JADE Java Agent Development Framework An Overview.
CS 415 N-Tier Application Development By Umair Ashraf July 6,2013 National University of Computer and Emerging Sciences Lecture # 9 Introduction to Web.
Web Services Michael Smith Alex Feldman. What is a Web Service? A Web service is a message-oriented software system designed to support inter-operable.
Secure Systems Research Group - FAU Web Services Standards Presented by Keiko Hashizume.
Introduction to Databases Transparencies 1. ©Pearson Education 2009 Objectives Common uses of database systems. Meaning of the term database. Meaning.
Introduction to Jadex programming Reza Saeedi
T Network Application Frameworks and XML Web Services and WSDL Sasu Tarkoma Based on slides by Pekka Nikander.
Introducing Axis2 Eran Chinthaka. Agenda  Introduction and Motivation  The “big picture”  Key Features of Axis2 High Performance XML Processing Model.
Microsoft Visual Studio 2010 Muhammad Zubair MS (FAST-NU) Experience: 5+ Years Contact:- Cell#:
GT Components. Globus Toolkit A “toolkit” of services and packages for creating the basic grid computing infrastructure Higher level tools added to this.
International Telecommunication Union Geneva, 9(pm)-10 February 2009 ITU-T Security Standardization on Mobile Web Services Lee, Jae Seung Special Fellow,
Lecture 15 Introduction to Web Services Web Service Applications.
Microsoft Visual Studio 2010 Muhammad Zubair MS (FAST-NU) Experience: 5+ Years Contact:- Cell#:
Margherita Forcolin (Insiel S.p.A.) Thessaloniki, 13 October 2011.
Web2Agent project IKTA4-121/2001 Integrating Web Resources into the Agentcities Multi-agent initiative of the EU Presenter: László Zsolt Varga Computer.
ARTIFICIAL INTELLIGENCE [INTELLIGENT AGENTS PARADIGM] Professor Janis Grundspenkis Riga Technical University Faculty of Computer Science and Information.
Web Services Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester,
XML Web Services Architecture Siddharth Ruchandani CS 6362 – SW Architecture & Design Summer /11/05.
Random Logic l Forum.NET l Web Services Enhancements for Microsoft.NET (WSE) Forum.NET ● October 4th, 2006.
1 Open Ontology Repository: Architecture and Interfaces Ken Baclawski Northeastern University 1.
Review of Projects Related to Agent + Web Services Youyong Zou UMBC Feb 17, 2004.
Enterprise Integration Patterns CS3300 Fall 2015.
Supporting FIPA Interoperability for Legacy Multi-Agent Systems Christos Georgousopoulos 1 Omer F. Rana 1 ( ) 2.
INT-9: Implementing ESB Processes with OpenEdge ® and Sonic ™ David Cleary Principal Software Engineer.
Kemal Baykal Rasim Ismayilov
IT Service Specification Synchronicity Carl Mattocks OASIS BCM TC,co-Chair ebXMLRegistry Semantic Content SC, co-Chair ITIL Knowledge.
EGOS LLC CCSDS 14/ Question Question; Why a Service Viewpoint? Short Answer; Because a service viewpoint provides a useful additional level.
WSDL – Web Service Definition Language  WSDL is used to describe, locate and define Web services.  A web service is described by: message format simple.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
Agent Overview. Topics Agent and its characteristics Architectures Agent Management.
Web Services Martin Nečaský, Ph.D. Faculty of Mathematics and Physics Charles University in Prague, Czech Republic Summer 2014.
Providing web services to mobile users: The architecture design of an m-service portal Minder Chen - Dongsong Zhang - Lina Zhou Presented by: Juan M. Cubillos.
1 Service Oriented Architecture SOA. 2 Service Oriented Architecture (SOA) Definition  SOA is an architecture paradigm that is gaining recently a significant.
INFSO-RI Enabling Grids for E-sciencE Web Services Mike Mineter National e-Science Centre, Edinburgh.
Copyright © 2004, Keith D Swenson, All Rights Reserved. OASIS Asynchronous Service Access Protocol (ASAP) Tutorial Overview, OASIS ASAP TC May 4, 2004.
Copyright 2007, Information Builders. Slide 1 iWay Web Services and WebFOCUS Consumption Michael Florkowski Information Builders.
Web Services. Web Service: Simple definition : “ Service Offered On the Web “ Technically : “ A Web Service is a programmable application component that.
Software Architecture Patterns (3) Service Oriented & Web Oriented Architecture source: microsoft.
By Jeremy Burdette & Daniel Gottlieb. It is an architecture It is not a technology May not fit all businesses “Service” doesn’t mean Web Service It is.
Real-Time Systems Laboratory Seolyoung, Jeong JADE (Java Agent DEvelopment framework )
Service Oriented Architecture (SOA) Prof. Wenwen Li School of Geographical Sciences and Urban Planning 5644 Coor Hall
Consuming OAuth Services in Alfresco Share
Triple Stores.
Sabri Kızanlık Ural Emekçi
WEB SERVICES From Chapter 19 of Distributed Systems Concepts and Design,4th Edition, By G. Coulouris, J. Dollimore and T. Kindberg Published by Addison.
WEB SERVICES.
T Network Application Frameworks and XML Web Services and WSDL Sasu Tarkoma Based on slides by Pekka Nikander.
Unit – 5 JAVA Web Services
Distribution and components
Distributed System using Web Services
WEB SERVICES From Chapter 19, Distributed Systems
Triple Stores.
Distributed System using Web Services
Presentation transcript:

MTA SZTAKI Department of Distributed Systems Hogyan mixeljünk össze webszolgáltatásokat, ontológiákat és ágenseket? Micsik András

DSD Department of Distributed Systems MTA SZTAKI 2 Environment 2 Phase 1: normal SOA Environment 1 WS SOAP Using web services, we have interoperability, and supporting standards, such as WS-Addressing or WS-Security But web services are a bit `dumb`: They work in ‘imperative’ mode No semantic explanation of what parameters mean

DSD Department of Distributed Systems MTA SZTAKI 3 Environment 2 Phase 2: SOA with agents Environment 1 Agent WS Agent WS SOAP ACL So we start using agents, to exploit behaviours, richer communications, proactivity, etc. But: agents and web services speak different protocols and languages!

DSD Department of Distributed Systems MTA SZTAKI 4 Environment 2 Phase 3: SOA and agents using common message bus Environment 1 Agent WS Agent WS Message Bus Agents and web services use the same message bus for communication, which simplifies network administration and enhances security.

DSD Department of Distributed Systems MTA SZTAKI 5 Environment 2 Phase 4: Enhanced Agent-WS communication Environment 1 Agent WS Agent WS Message Bus Agent communication is often limited within the agent community Agents and web services can now communicate with each other: Agents can open WS APIs Agents can easily call web services

DSD Department of Distributed Systems MTA SZTAKI 6 Environment 2 Phase 5: Ontologies are used as common language Environment 1 Agent WS Agent WS Message Bus Ontologies Agents and web services communicate using the same OWL ontologies: Connects them to the Semantic Web standards Provides common language Provides reasoning facilities

DSD Department of Distributed Systems MTA SZTAKI 7 Environment 2 Phase 6: Adding BDI paradigm to agents Environment 1 BDI Agent WS BDI Agent WS Message Bus Ontologies BDI (Beliefs, desires, intentions) paradigm adds useful planning and goal-orientation features to agents

DSD Department of Distributed Systems MTA SZTAKI 8 Now we start to build up the environment, from phase 3 to phase 6

DSD Department of Distributed Systems MTA SZTAKI 9 Environment 2 Realization of phase 3 Environment 1 Agent WS Agent WS Message Bus

DSD Department of Distributed Systems MTA SZTAKI 10 About Jade Jade is a platform for multi-agent system development Jade adheres to FIPA standards Jade agents can Use an Agent Communication Language (ACL) to send messages to each other Implement coordination protocols such as contract net

DSD Department of Distributed Systems MTA SZTAKI 11 12/03/2016AAMAS 2009Page 11 About SOAP MTP add-on for Jade SOAP Message Transport Protocol implemented for Jade as an add-on Software available from: Transports agent messages via SOAP Benefits Enhanced interoperability between agents and WS Homogeneous message transfer framework Secure transport of agent messages Uniform management of communication Service virtualization

DSD Department of Distributed Systems MTA SZTAKI 12 12/03/2016AAMAS 2009Page 12 How SOAP MTP add-on works It is a JADE core service, no extra agents are needed SOAP encapsulation is transparent for agents SOAP headers are not used by agents, so they can be used freely by the message bus Agent message as SOAP Body (PROPOSE :sender ( agent- identifier :name ….. )) SOAP Headers Virtual endpoint address Business info Encryption details Enterprise communication framework Multi-agent platform

DSD Department of Distributed Systems MTA SZTAKI 13 Consumer 1 Gateway Service Instance Registry Secure Token Service Service Provider 1 Jade 2 Gateway Agent 5 Agent 6 Agent 4 Secure Token Service Service Instance Registry Jade 1 Agent 2 Agent 3 SOAP MTP Agent 1 Endpoint Client SOAP MTP Client Endpoint Messaging Service Use case of SOAP MTP add-on for Jade Messages traveling across organizational boundaries are encrypted (WS-Security) WS-Addressing is used to convey business context information Virtual addressing is also used (via Service Instance Registry) 12/03/2016AAMAS 2009Page 13

DSD Department of Distributed Systems MTA SZTAKI 14 Environment 2 Realization of phase 4 Environment 1 Agent WS Agent WS Message Bus

DSD Department of Distributed Systems MTA SZTAKI 15 Example for agent-WS communication SOAPClient client = SOAPClient.createFromWsdl(remoteWs + "?wsdl"); Object[] results = client.invoke("methodName", "param1", "param2"); public class SoapServiceAgent extends Agent { protected void setup() { MessageTransportProtocol mtp = MessageTransportProtocol.getInstance(); mtp.registerSoapService("ping", new MyAgentWsImpl(this)); } public static class MyAgentWsImpl extends BaseAgentWs { public MyAgentWsImpl(Agent a) { super(a); } public String ping(String s) { return s; } } Using SOAP MTP add-on, an agent can easily provide a WS endpoint: And also, an agent can easily call external WS:

DSD Department of Distributed Systems MTA SZTAKI 16 BREIN – 2nd Year Review, StuttgartPage 1612/11/2008 Head-body architecture

DSD Department of Distributed Systems MTA SZTAKI 17 Environment 2 Realization of phase 5 Environment 1 Agent WS Agent WS Message Bus Ontologies

DSD Department of Distributed Systems MTA SZTAKI 18 About Jena Jena is a Java framework for building Semantic Web applications, supporting Manipulation of RDF and OWL Persistent storage of RDF and OWL SPARQL queries... Jena is easy to embed into Java code, and easy to customize

DSD Department of Distributed Systems MTA SZTAKI 19 Reasoning in agent or WS A customized version of Jena is embedded into components The component may use Basic ontologies Rules Persistence model (e.g. MySQL or file) Agent or WS can access information Directly through the OWL API Via SPARQL queries Agent or WS can exchange information using RDF/OWL

DSD Department of Distributed Systems MTA SZTAKI 20 Example for using Jena [detectMaintNeeded: (?C breinReasoning:unMaintedEvents ?NUM), ge(?NUM, 10), noValue(?C brein:isMaintenanceNeeded 'true') -> (?C brein:isMaintenanceNeeded 'true') ]

DSD Department of Distributed Systems MTA SZTAKI 21 Environment 2 Realization of phase 6 Environment 1 BDI Agent WS BDI Agent WS Message Bus Ontologies

DSD Department of Distributed Systems MTA SZTAKI 22 About BDI Belief-desire-intention (BDI) architecture is a model for describing rational agents  Agents that decide based on the agent’s beliefs, which action to perform to reach the agent‘s goals It consists of the following concepts: Belief: Beliefs capture informational attitudes realized as a data structure containing current facts about the world Desire: Desires capture the motivational attitudes realized as goals that represent the concrete motivation Intention: Intentions capture the deliberative attitudes realized by reasoning mechanisms in order to select appropriate actions to achieve given goals or to react to particular situations BREIN – General Assembly BudapestPage 22

DSD Department of Distributed Systems MTA SZTAKI 23 BDI Architecture BREIN – General Assembly BudapestPage 23 Semantic BDI Agent Desires Intentions Beliefs Embedded Knowledge Base Base ontologies JadexPellet JadeJena Jadex is a BDI implementation for Jade Pellet is full OWL DL reasoner used inside Jena

DSD Department of Distributed Systems MTA SZTAKI 24 The BDI cycle Beliefs maintenance_state resource_state Desires (Goals) keep_maintained Intentions maintain Plans Page 24 OWL reasoning last_maintenance...

DSD Department of Distributed Systems MTA SZTAKI 25 Example for OWL-based beliefs The first belief initializes the reasoner, which loads the relevant ontology, and also sets up the Jena semantic web framework and the Pellet OWL reasoner: new JadexReasoner(„ $beliefbase) $beliefbase.kb.getPropFloatValue($agent.getName(), "#avail") Then we can map facts in the ontology to beliefs of the agent:

DSD Department of Distributed Systems MTA SZTAKI 26 Example for Jadex goals and plans ($beliefbase.state == Constants.RESOURCE_STATE_MAINTENANCE) !$beliefbase.is_maintenance_needed The goal is to keep a resource maintained: The plan is activated whenever maintenance is needed:

DSD Department of Distributed Systems MTA SZTAKI 27 Environment 2 We are finished! Environment 1 BDI Agent WS BDI Agent WS Message Bus Ontologies Further information: Any questions?