Semantic Web Service Composition Via Logic-Based Program Synthesis
Total Page:16
File Type:pdf, Size:1020Kb
Jinghai Rao Semantic Web Service Composition via Logic-based Program Synthesis Department of Computer and Information Science Norwegian University of Science and Technology N-7491 Trondheim, Norway Norwegian University of Science and Technology Faculty of Information Technology, Mathematics and Electrical Engineering Department of Computer and Information Sciences N-7491 Trondheim Norway Dr.Ing. Thesis 2004:121 ISBN 82-471-6464-7 (printed ver.) ISBN 82-471-6463-9 (electronic ver.) ISSN 1503-8181 Abstract The ability to efficiently select and integrate inter-organizational heteroge- neous Web services at runtime is an important requirement to the success of Web service provision. In a Web service application, if there is no single Web service that can satisfy the functionality required by the user, there should be a program or a software agent which can automatically combine existing ser- vices together in order to fulfill the request. The aim of this thesis is to view the Web service composition problem from the viewpoint of logic-based program synthesis and to propose an agent-based framework for supporting the composition process in a scalable and flexible manner. The approach described in this thesis uses Linear Logic-based theo- rem proving to assist and automate the composition of Semantic Web services. The approach uses a Semantic Web service language, DAML-S, for the exter- nal presentation of Web services, while, internally, the services are presented by extralogical axioms and proofs in Linear Logic. Linear Logic, as a resource conscious logic, enables us to capture the concurrent features of Web services formally (including parameters, states and non-functional attributes). The ap- proach uses a process calculus to present the process model of the composite service. The process calculus is attached to the Linear Logic inference rules in the form of type theory. Thus, the process model for a composite service can be generated directly from the complete proof. We introduce a set of subtyp- ing rules that define the valid dataflow for composite services. The subtyping rules that are used for semantic reasoning are presented with Linear Logic in- ference figures. The composition system is based on a multi-agent architecture, AGORA. The agent-based design enables the different components of the Web service composition system, such as the theorem prover, semantic reasoner and translator, to be integrated in a loosely coupled manner. We conclude by discussing how this approach has been directed to meet the main challenges in Web service composition. First, it is autonomous such that the users are not required to analyze the huge amount of services available manually. Second, it has good scalability and flexibility such that the composi- tion performs reasonably well in a dynamic environment. Third, it solves the heterogeneity problem because semantic information is used for matching and composing Web services. We argue that Linear Logic theorem proving, combined with semantic rea- soning, offers a practical approach to the success of Web services composi- tion. Linear Logic, as a logic for specifying concurrent programming, provides higher expressive powers in the modeling of Web services than classical logic. Further, the agent-based architecture provides a scalable and flexible platform for the Web service composition system. The main contributions of this thesis are summarized as follows. First, a generic framework for the purpose of presenting an abstract process of the ii automated Semantic Web service composition has been developed. Second, a specific system based on the generic framework has been developed. This sys- tem focuses on the translation between the internal and external languages as well as the process extraction from the proof. Third, applications of the subtyp- ing inference rules that are used for semantic reasoning are discussed. Fourth, an agent architecture is developed as the platform for Web service provision and composition. Contents Preface xi 1 Introduction 1 1.1 Motivation and Aim . 1 1.2 An Application Example . 2 1.3 Research Questions . 4 1.4 Background . 5 1.5 Proposed Solution . 8 1.6 Research Activities and Contributions . 11 1.7 Thesis Outline . 12 2 Web Service Composition: State of the Art 15 2.1 Web Services: Standards and Related Technologies . 15 2.1.1 IBM Web Service Languages . 17 2.1.2 Semantic Web Service Description with DAML-S . 18 2.1.3 ebXML . 18 2.1.4 Platforms . 19 2.2 An Abstract Model for Web Service Composition . 20 2.3 Web Service Composition via Business Process . 22 2.4 Web Service Composition via AI Planning . 24 2.4.1 Situation Calculus . 25 2.4.2 Planning Domain Definition Language (PDDL) . 25 2.4.3 Rule-based Planning . 26 2.4.4 Other AI-planning Methods . 27 2.5 Service Composition using Program Synthesis . 28 2.6 Summary . 29 3 Logical Presentation of Web Services 31 3.1 Introduction . 31 3.2 Linear Logic . 32 3.3 The Expressive Power of LL . 36 3.4 The Upper Ontology of Web Services and LL . 39 3.5 Transformation of Functionalities . 43 iii iv CONTENTS 3.5.1 Information Transformation . 44 3.5.2 State Change . 47 3.6 Transformation of Non-functional Attributes . 49 3.7 Example . 53 3.8 Summary . 54 4 Extraction of a Process Model from Proof 57 4.1 Introduction . 57 4.2 The π-calculus: a Formality of Web Service Process . 58 4.3 An Upper Ontology for the Process Model . 64 4.4 From the Proof to the Process Model . 69 4.5 An Example Proof . 74 4.6 Summary . 77 5 Semantic Web Service Composition 79 5.1 Introduction . 79 5.2 Semantic Web and Languages . 80 5.3 Semantic Reasoning for DAML+OIL . 84 5.4 Subtyping Rules for LL . 88 5.5 Summary . 90 6 A Multi-agent Architecture 93 6.1 Introduction . 93 6.2 The AGORA Multi-agent Platform . 94 6.2.1 General Description . 94 6.2.2 Agent . 95 6.2.3 Agora node . 96 6.3 The Agent Architecture . 98 6.3.1 The Agent Model for Service Composition . 99 6.3.2 The Interaction Model . 101 6.3.3 Facilitating Agora Nodes . 102 6.4 Summary . 105 7 The Prototype Implementation 109 7.1 Introduction . 109 7.2 LL Theorem Prover . 110 7.3 Jena . 114 7.4 FaCT . 116 7.5 GUI . 117 7.6 Summary . 119 CONTENTS v 8 Evaluation 121 8.1 Answers to the Research Questions . 121 8.2 Contributions . 124 8.3 Comparison with Other Methods . 126 8.4 Publications . 127 8.5 Performance Evaluation . 131 8.6 Limitations . 132 8.7 Lessons Learned . 133 9 Conclusion 135 9.1 Summary of Results and Contributions . 135 9.2 Directions for Future Work . 137 9.2.1 Partial Deduction . 137 9.2.2 Reusability of Composition Result . 137 vi CONTENTS List of Figures 1.1 The core service for buying skis. 3 1.2 The available value-added services. 4 1.3 The required service for buying skis. 4 1.4 The final service structure for buying skis. 5 1.5 The relations between the background researches. 8 2.1 An overview of Web service standard languages . 17 2.2 A framework of service composition system. 20 2.3 The process of Web service composition using program synthesis. 29 3.1 The upper ontology for Web service declarative specification. 40 4.1 π-calculus flow graph. 61 4.2 The upper ontology for the process model. 67 4.3 The example proof. 76 4.4 The illustration of result process for example. 77 5.1 The layer of data representation standards for the Semantic Web 81 5.2 The connections among DLs' components, adapted from [78] . 87 6.1 Basic AGORA system architecture. 95 6.2 An agent architecture. 96 6.3 An architecture for Web services provision. 99 6.4 An interaction model of service composition participants. 103 6.5 The agent architecture for facilitators. 104 6.6 An interaction model for facilitators. 105 7.1 An illustration of the implemented agents. 110 7.2 The Jena architecture, from [28] . 115 7.3 A screen shot of main window. 117 7.4 Namespaces mapping window. 118 7.5 A screen shot of generated process model. 118 vii viii LIST OF FIGURES List of Tables 3.1 Inference rules for MAILL fragment. 34 3.2 The classification of non-functional attributes. 52 4.1 The concepts in process specification. 65 4.2 Inference rules for process extraction. 72 5.1 The correspondence of DL and DAML+OIL terms. 85 6.1 Meanings of performatives. 107 7.1 Forum specification of the LL sequent calculus. 112 7.2 The connectives in UMA Forum. 113 8.1 Experimental settings. 132 8.2 Process generation time. 132 ix x LIST OF TABLES Preface This thesis is submitted to the Norwegian University of Science and Technol- ogy (NTNU) in partial fulfillment of the requirements for the degree doktor ingeniør. This work has been conducted at the Department of Computer and Information Sciences (IDI), NTNU, Trondheim, Norway, under the supervi- sion of Professor Mihhail Matskin. Part of this work was conducted while I was a visiting researcher at the Department of Microelectronics and Informa- tion Technology, the Royal Institute of Technology, Stockholm, Sweden. Acknowledgments First and foremost, I would like to thank my supervisor Professor Mihhail Matskin for his expert guidance, constant encouragement and enduring pa- tience during my doctoral research. I am lucky to work in his group and have been surrounded by knowledgeable and helpful co-workers. I am grateful to Peep Kungas¨ for our wonderful cooperation and all the interesting discus- sions about Linear Logic. Thanks to Sobah Abbas Petersen and Amund Tveit for their discussions, information and inspiration.