Ranking-Based Suggestion Algorithms for Semantic Web Service Composition Rui Wang, Sumedha Ganjoo, John A. Miller and Eileen T. Kraemer Presented by: John.

Slides:



Advertisements
Similar presentations
A Workflow Engine with Multi-Level Parallelism Supports Qifeng Huang and Yan Huang School of Computer Science Cardiff University
Advertisements

The 20th International Conference on Software Engineering and Knowledge Engineering (SEKE2008) Department of Electrical and Computer Engineering
Search in Source Code Based on Identifying Popular Fragments Eduard Kuric and Mária Bieliková Faculty of Informatics and Information.
1 Intention of slide set Inform WSMOLX of what is planned for Choreography & Orhestration in DIP CONTENTS Terminology Clarification / what will be described.
Algorithms + L. Grewe.
Semantic Web Services Peter Bartalos. 2 Dr. Jorge Cardoso and Dr. Amit Sheth
Knowledge Enabled Information and Services Science Semantics in Services Dr. Amit P. Sheth, Lexis-Nexis Eminent Scholar, kno.e.sis center, Wright State.
Reducing the Cost of Validating Mapping Compositions by Exploiting Semantic Relationships Eduard C. Dragut Ramon Lawrence Eduard C. Dragut Ramon Lawrence.
Research topics Semantic Web - Spring 2007 Computer Engineering Department Sharif University of Technology.
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.
Visual Web Information Extraction With Lixto Robert Baumgartner Sergio Flesca Georg Gottlob.
Knowledge Acquisitioning. Definition The transfer and transformation of potential problem solving expertise from some knowledge source to a program.
Academic Advisor: Prof. Ronen Brafman Team Members: Ran Isenberg Mirit Markovich Noa Aharon Alon Furman.
ReQuest (Validating Semantic Searches) Norman Piedade de Noronha 16 th July, 2004.
TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE
Kmi.open.ac.uk Semantic Execution Environments Service Engineering and Execution Barry Norton and Mick Kerrigan.
A Context-Based Mediation Approach to Compose Semantic Web Services Michael Mrissa, Chirine Ghedira, Djamal Benslimane, Zakaria Maamar, Florian Rosenberg,
1 Adapting BPEL4WS for the Semantic Web The Bottom-Up Approach to Web Service Interoperation Daniel J. Mandell and Sheila McIlraith Presented by Axel Polleres.
Masters Theses Competition 2008 Krissada Chalermsook (104512) A Semantics-based and Flexible Framework for Web Services Composition.
Špindlerův Mlýn, Czech Republic, SOFSEM Semantically-aided Data-aware Service Workflow Composition Ondrej Habala, Marek Paralič,
Enriching the Ontology for Biomedical Investigations (OBI) to Improve Its Suitability for Web Service Annotations Chaitanya Guttula, Alok Dhamanaskar,
Scientific Workflows Scientific workflows describe structured activities arising in scientific problem-solving. Conducting experiments involve complex.
Katanosh Morovat.   This concept is a formal approach for identifying the rules that encapsulate the structure, constraint, and control of the operation.
Ontology Alignment/Matching Prafulla Palwe. Agenda ► Introduction  Being serious about the semantic web  Living with heterogeneity  Heterogeneity problem.
 Copyright 2005 Digital Enterprise Research Institute. All rights reserved. Towards Translating between XML and WSML based on mappings between.
Chapter 8 Architecture Analysis. 8 – Architecture Analysis 8.1 Analysis Techniques 8.2 Quantitative Analysis  Performance Views  Performance.
Filtering & Selecting Semantic Web Services with Interactive Composition Techniques By Evren Sirin, Bijan Parsia, and James Hendler Presenting By : Mirza.
Agent Model for Interaction with Semantic Web Services Ivo Mihailovic.
Extracting Semantic Constraint from Description Text for Semantic Web Service Discovery Dengping Wei, Ting Wang, Ji Wang, and Yaodong Chen Reporter: Ting.
Designing Semantic Web Process: The WSDL-S Approach Presented by Ke Li LSDIS Lab, University of Georgia (Under the Direction of John A. Miller)
POLIMI adaptive WS tool set Barbara Pernici Dagstuhl, February 8, 2007.
Semantic Web Fred: Project Objectives & SWF Framework Michael Stollberg Reinhold Herzog Peter Zugmann - 07 April
Košice, 10 February Experience Management based on Text Notes The EMBET System Michal Laclavik.
10/18/20151 Business Process Management and Semantic Technologies B. Ramamurthy.
WSMX Execution Semantics Executable Software Specification Eyal Oren DERI
© DATAMAT S.p.A. – Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.
Lesson 3 CDT301 – Compiler Theory, Spring 2011 Teacher: Linus Källberg.
Dimitrios Skoutas Alkis Simitsis
Generic API Test tool By Moshe Sapir Almog Masika.
Keyword Searching and Browsing in Databases using BANKS Seoyoung Ahn Mar 3, 2005 The University of Texas at Arlington.
An Ontological Framework for Web Service Processes By Claus Pahl and Ronan Barrett.
Haley: An End-to-End, Scalable Web Service Composition Tool Haibo Zhao, Prashant Doshi LSDIS Lab., The University of Georgia 17th International World Wide.
Ontology Mapping in Pervasive Computing Environment C.Y. Kong, C.L. Wang, F.C.M. Lau The University of Hong Kong.
User Profiling using Semantic Web Group members: Ashwin Somaiah Asha Stephen Charlie Sudharshan Reddy.
ICT EMMSAD’05 13/ Assessing Business Process Modeling Languages Using a Generic Quality Framework Anna Gunhild Nysetvold* John Krogstie *, § IDI,
ESIP Semantic Web Products and Services ‘triples’ “tutorial” aka sausage making ESIP SW Cluster, Jan ed.
Semantic Phyloinformatic Web Services Using the EvoInfo Stack Speaker: John Harney LSDIS Lab, Dept. of Computer Science, University of Georgia Mentor(s):
Application Ontology Manager for Hydra IST Ján Hreňo Martin Sarnovský Peter Kostelník TU Košice.
Systems Analysis and Design in a Changing World, Fourth Edition
Course: COMS-E6125 Professor: Gail E. Kaiser Student: Shanghao Li (sl2967)
Qusay H. Mahmoud CIS* CIS* Service-Oriented Computing Qusay H. Mahmoud, Ph.D.
ODS – Introduction to Web Services and BPEL Vakgroep Informatietechnologie Web Services & BPEL Design of Distributed Software.
 Copyright 2006 Digital Enterprise Research Institute. All rights reserved. Dynamic B2B Integration on the Semantic Web Services: SWS Challenge.
Chapter 1 Software Engineering Principles. Problem analysis Requirements elicitation Software specification High- and low-level design Implementation.
Concepts and Realization of a Diagram Editor Generator Based on Hypergraph Transformation Author: Mark Minas Presenter: Song Gu.
Semantic Interoperability of Web Services – Challenges and Experiences Meenakshi Nagarajan, Kunal Verma, Amit P. Sheth, John Miller, Jon Lathem
Suggestions for Galaxy Workflow Design Using Semantically Annotated Services Alok Dhamanaskar, Michael E. Cotterell, Jessica C. Kissinger, and John Miller.
Efficient Semantic Web Service Discovery in Centralized and P2P Environments Dimitrios Skoutas 1,2 Dimitris Sacharidis.
METEOR-S METEOR-S Project Entry for SWS Challenge Phase II Using Planning for Process Mediation John Harney, Karthik Gomadam, John Miller, Amit Sheth,
Of 24 lecture 11: ontology – mediation, merging & aligning.
Architectural Complexity  A useful technique for assessing the overall complexity of a proposed architecture is to consider dependencies between components.
Mechanisms for Requirements Driven Component Selection and Design Automation 최경석.
A Semi-Automated Digital Preservation System based on Semantic Web Services Jane Hunter Sharmin Choudhury DSTC PTY LTD, Brisbane, Australia Slides by Ananta.
Trustworthy Semantic Webs Building Geospatial Semantic Webs Dr. Bhavani Thuraisingham The University of Texas at Dallas October 2006 Presented at OGC Meeting,
OPM/S: Semantic Engineering of Web Services
Web Ontology Language for Service (OWL-S)
UNIT-4 BLACKBOX AND WHITEBOX TESTING
Business Process Management and Semantic Technologies
A Semantic Peer-to-Peer Overlay for Web Services Discovery
UNIT-4 BLACKBOX AND WHITEBOX TESTING
Presentation transcript:

Ranking-Based Suggestion Algorithms for Semantic Web Service Composition Rui Wang, Sumedha Ganjoo, John A. Miller and Eileen T. Kraemer Presented by: John A. Miller July 5, 2010

L o g o Outline  Introduction & Motivation  Need for Increased Automation in Composition  Various Approaches & Existing Solutions  Strengths and Weaknesses of Solutions  Our Incremental Approach  Service Suggestions  Data Mediation  Technological Infrastructure Semantic Annotations & Similarity Measures  Example Scenario  Architecture & Implementation  Evaluation  Conclusions & Future Work 2

L o g o Basic Questions  Increasing automation in service composition  Why increase automation?  What techniques have been tried?  How effective are those techniques?  Are there new approaches? 3

L o g o Need to Increase Automation  Create a process by service composition  Select services  Determine data flow dependences  Determine control flow  Feed outputs into inputs  Goal:  Automate as much as possible  Make it practical for general users 4 Process composed of Web services

L o g o Existing Solutions - select services  GUI Approach  ActiveBPEL, NetBeans, Oracle BPEL, Taverna 5

L o g o Existing Solutions– feed output to input  GUI Approach  ActiveBPEL, NetBeans, Oracle BPEL, Taverna 6

L o g o Strengths & Weaknesses  When composing services:  Use GUI designers or hand code the process Hand coding is hard, requires thorough technical knowledge Current designers use GUI approach, it is helpful with visualization but it is time-consuming and error prone. 7

L o g o Strengths & weaknesses  When composing services:  Users have to find suitable services Use GUI designers, users still have to select suitable services Current discovery approach is not aimed for service composition, so it does not consider the requirements of the data dependency or control flow of the process. Automatic approach will select services without user intervention, errors may come from missing or inaccurate service annotations. 8

L o g o Strengths & Weaknesses  When composing services:  Map outputs to inputs between services Some designers (i.e. NetBeans) provide a GUI tool to visually drag and drop to map outputs to inputs. However, users still have to figure out the correct connections and even write some XPATH or XSLT expressions Semantic approaches –WSMO, OWL-S, SWSO »Require experts to create several subontologies for each web service, which is really hard for most people »Ontology mapping is still a challenge in semantic domain. 9

L o g o Strengths & Weaknesses (cont.) 10

L o g o Our Incremental Approach

L o g o Service Suggestions  Consider the outputs of all previous services and global inputs  As shown in picture below: Assume WS 1 -- > WS 2 is already given and WS x is to be added to the process (WS 1 -- > WS 2 -- > WS x ) Data mediation algorithm will consider not only output of WS 2 (O 2 ) but also output of WS 1 (O 1 ), and global initial inputs (I 1 ) Therefore, the possible inputs can be fed into WS x will be O 2, O 1, I 1 12 WS 1 WS x WS 2

L o g o Data Mediation  Utilize any level SAWSDL/WSDL-S annotation  No annotation: based on syntax  Any combination of: ModelReferences –Used for data mediation score –Used for functionality score Lifting/LoweringSchemaMappings –Used for data mediation score –Lifting: transform XML data to ontology instances –Lowering: transform ontology instances to XML data Preconditions & effects –Used for formal service specification score 13

L o g o Service Suggestions  Semantic suggestion for service composition  Semi-automatic approach Allow human to pick one of the suggestions, this should reduce errors coming from missing or inaccurate annotations  Ranking available Web services to suggest Web services to the user, which is based on: Data mediation Formal service specification Functionality of services 14 All weights are initially set by experiences, later will be trained using machine learning algorithms

L o g o Service Suggestions  Semantic suggestions for service composition  S = w dm * S dm + w fn * S fn + w pe * S pe where w dm = w fn = w pe =1/3 S fn :Score based on functionality –Compare the user specified functionality F x ’ with candidate service’s functionality F x S dm :Score based on data mediation –Scores calculated during data mediation S pe :Score based on formal service specification: –Pre-conditions (P x ), effects (E x ) (requires WSDL-S) –whether current state st will entail precondition of the candidate service 15

L o g o Data Mediation: Score S dm Calculation  Ranking score of suggested servicesWS x (used for suggestions)  Based on how well the paths of the input message of candidate service are matched by the paths of output message of previous services and global initial inputs Example path: record.teacher.name S i : score of a path of the input of candidate service t : number of paths of the input of candidate service w i = 1/t (by default) 16

L o g o Data Mediation: Score S i Calculation  Ranking score for a path P 0 within the input message I x of a candidate operation WS x  For the weights w 1, w 2, …, w m in COMPARE-2-PATHS() We use geometric series decreasing from the leaf node to the root node. w 1 + w 2 + …, + w m = 1 17 function PATH-RANK ({P 1, P 2, …, P n }, P 0 ) begin // {P 1, P 2, …, P n } is a set of existing paths to be // compared to P 0 for i in 1.. n do S i = COMPARE-2-PATHS (P i, P 0 ) end k = arg-max{S 1, S 2, …, S n } return // S k is the matching score between P k and P 0, // P k is the best matching path to P 0 end function COMPARE-2-PATHS (P i, P 0 ) begin {A 1, A 2, … A j …, A m } = semantic annotations of all nodes on P 0 {w 1, w 2, …, w m } = weights of all nodes on P 0 {A' 1, A' 2, … A' j …, A' z } = semantic annotations of all nodes on P i L = min {m, z} return // is the ontological concept similarity // score of A j and A' j end

L o g o Data Mediation: Score S i Calculation  Ranking based bi-directional data mediation  Ranking score for a path Path in a message: –the root node (top node) to a bottom node CS() : Compare semantic similarity between the annotations of the nodes that exist on the two paths in the two messages Topological based: different weight for each node, geometric series decreasing from the leaf node to the root node 18 All weights are initially set by experiences, later will be trained using machine learning algorithms

L o g o (cont.) 19

L o g o Similarity Measure  Concept Similarity (CS) computes the overall similarity between two concepts  Syntactic sim computes the syntactic similarity between the names and descriptions of the two concepts. Using a string matching algorithm  Coverage sim computes the similarity based on the relative position of the two concepts in the ontology  Given that concept C I has properties P I and concept C O has properties P O, Property sim calculates an overall similarity measure between P I and P O The properties are matched as one-to-one mappings, using the Hungarian algorithm 20

L o g o Formal Service Specification  Preconditions are required to be true before an operation can be successfully invoked.  Effects must be true after an operation completes execution after being invoked.  WSDL-S is used:  Precondition and effect are added as extensible elements on an operation.  Prolog language described precondition and effect are annotated as values of modelReference in WSDL-S  Sample precondition & effect for service operation getIds:

L o g o Knowledge Base  We use Prolog to maintain the state  State of the process is maintained as a Prolog knowledge base (KB). We originally considered using RIF, however as to the best of our knowledge, there is no mature RIF engine for Java. RIF is a Prolog style language and Prolog has many mature engines and Java support, so we choose Prolog for current implementation.  At first, the initial state is used by the Prolog engine to initialize the knowledge base.  We implement isEntail() method to query the KB whether the precondition of the candidate service is entailed by the current state, KB.  updateState() method is implemented to update the KB, current state, with effects of an operation when the operation is added to current process.

L o g o Example Scenario  Complex task:  protein sequence -- > multiple sequence alignment (MSA)  Use real world Web services, such as EBI Web services.  Possible Web service composition (WSC): runWUBlast  getIds  array2string  fetchBatch  runClustalw2  poll  byte2string  Issues:  Which Web services to use? Some biologists may know they need Blast and ClustalW, but that is not enough, what is in between? So many Web services available on EBI web site. Even one Web service may have multiple operations. –EBI WUBLast services have 19 operations, which operation will be used?  How to connect two Web service operations? Which output of the previous operations can feed to the next operation?

L o g o Blast to ClustalW Workflow 24

L o g o Architecture 25

L o g o Implementation  Modules Implemented:  Suggestion engine Invoke three modules to calculate suggestion ranking score based on data mediation, formal service specification and functionality  Data mediation engine Be able to run independently to map input/output between different service operations. Invoke similarity measure to retrieve concept similarity score Java, Jdom, Jaxen, Jena  Knowledge base management system (KBMS) Be able to initialize a knowledgebase, query the knowledge base for entailment of precondition and update the knowledge base. SWI-Prolog, JPL  Similarity measure module Provide concept similarity score to data mediation engine and suggestion engine  Parsers Parse SAWSDL / WSDL-S and OWL files for suggestion engine and data mediation engine

L o g o Evaluation  Service suggestions  Hypothesis: Good precision of the suggested services Tool’s response time is acceptable by users Able to suggest data type/format converters  Peliminary Evaluation: Test with our motivating scenario: seven operations in our process. –Ask for suggestions for every operation to be added next. Our approach can successfully suggest the correct service. –Time each suggestion and calculate the average time used. –Successfully suggested the converter required between getIds and fetchBatch 27

L o g o Evaluation  Data mediation  Hypothesis: Our approach can map input/output between services correctly Lower semantic requirements compared to other semantic approaches Works for special case:  Evaluation: Test with our motivating scenario, our approach correctly mapped input/output between services. Test special case with our motivating scenario, global input ( ) correctly map to the input of runWUBlast and runClustalw; global input (db) correctly map to the input of runWUBlast and fetchBatch. Test special case with our motivating scenario using different data mediation approaches: top-down and bottom-up. –Non-semantic annotation, the other two fail to run, our approach works (but correctness ratio is lower) –Fully semantic annotated WSDL, top-down approach can not handle the two mappings: and db; bottom-up approach considers them as missing value and did not find correct mappings 28 W1 W3W2

L o g o Conclusions  Developed an approach for making suggestions to aid users composing services.  Implemented an independent external Web service suggestion engine, which can hook to a WSC designer to help users composing services.  Developed a new data mediation algorithm that extends our previous work on top-down and bottom-up data mediation.  Implemented a data mediation model which can attach to a WSC designer to help users composing services  First-order logic (Prolog) is used for formal service specification. As to the best of our knowledge, we are the first one applying Prolog to WSDL-S for the formal service specification.  Utilizing formal service specification to guide semi-automatic Web service composition

L o g o Future Work  Consider QoS while suggesting services  Using a planner to generated chained services when one service is not sufficient.  Consider suggesting complex structure: loop, branches, parallel  When a mature RIF engine becomes available, we would like to use RIF for our formal service specification and related implementation. This would greatly help resolving the semantic heterogeneities between the terms used in the service specification  Utilize during workflow design using Galaxy

L o g o THANK YOU ! 31

L o g o Existing Solutions  GUI  NetBeans BPEL designer  ActiveVOS designer  Taverna  Oracle BPEL designer  Planner (to the best of our knowledge, in past year, new approaches extend/customize planners such as below)  HTN while enforcing Regulations, Markov-HTN  GOLOG with user preferences  Color Petri Net(CPN), Associate Petri Net (APN), High Level Petri Net, Elementary Petri Net  Dynamic Description Logic (DDL)  Conformant-FF  Factored Markov Decision Process  Fluent Calculus  Integer Linear Programming planner  Multi – agent planning  QoS + planner  Semantic  UML model + semantic  Agents + semantic  QoS + semantic  Our approach: SAWSDL/WSDL-S + Logical Programming (Prolog)

L o g o New approaches  Social trust + OWL-S  Service dependency graph and bidirectional heuristic search  Service suggestion approach

L o g o Various Approaches