680
IEEE TRANSACTIONS ON AUTOMATION SCIENCE AND ENGINEERING, VOL. 12, NO. 2, APRIL 2015
Automatic Composition of Semantic Web Services Based on Fuzzy Predicate Petri Nets Jiujun Cheng, Cong Liu, MengChu Zhou, Fellow, IEEE, Qingtian Zeng, and Antti Ylä-Jääski
Abstract—Web service composition is a challenging research issue. This paper presents an automatic Web service composition method that deals with both input/output compatibility and behavioral constraint compatibility of fuzzy semantic services. First, user input and output requirements are modeled as a set of facts and a goal statement in the Horn clauses, respectively. A service composition problem is transformed into a Horn clause logic reasoning problem. Next, a Fuzzy Predicate Petri Net (FPPN) is applied to model the Horn clause set, and T-invariant technique is used to determine the existence of composite services fulfilling the user input/output requirements. Then, two algorithms are presented to obtain the composite service satisfying behavioral constraints, as well as to construct an FPPN model that shows the calling order of the selected services. Note to Practitioners—Automatic Web service composition plays an increasingly important role in the rapid development of software applications to meet the fast-changing market needs. This work addresses the difficult and new issue of composing fuzzy semantic services based on user-supplied input and output requirements and behavioral constraints. Both Horn clause logic reasoning theory and fuzzy predicate Petri nets are used to develop polynomially complex algorithms for a desired composite service. A business service example is used to illustrate the proposed concepts and algorithms. The proposed methodology is readily applicable to industrial size Web service composition problems. Index Terms—Fuzzy predicate Petri nets (FPPN), fuzzy semantic, horn clause, Petri nets, service composition, service-oriented architecture. Manuscript received September 10, 2013; revised October 29, 2013; accepted November 20, 2013. Date of publication January 28, 2014; date of current version April 03, 2015. This paper was recommended for publication by Associate Editor K. T. Seow and Editor H. Ding upon evaluation of the reviewers' comments. This work was supported in part by the 973 Program of China under Grant 2010CB328101, by ISTCP under Grant 2013DFM10100, by the Natural Science Foundation Programs of Shanghai under Grant 13ZR1443100, by the U.S. National Science Foundation under Grant CMMI-1162482, by the National Science and Technology Support Plan under Grant 2012BAH15F03, by the National Natural Science Foundation of China under Grants 51034003, 51174210, 61202152, 61170079, and 61374148, and by the Excellent Young Scientist Foundation of Shandong Province under Grant BS2012DX030. (Corresponding author: C. Liu.) J. J. Cheng is with the Key Laboratory of Embedded System and Service Computing, Ministry of Education, Tongji University, Shanghai 200092, China (e-mail:
[email protected]). C. Liu is with the Shandong University of Science and Technology, Qingdao 266590, China (e-mail:
[email protected]). M. C. Zhou is with the Key Laboratory of Embedded System and Service Computing, Ministry of Education, Tongji University, Shanghai 201804, China, and also with the Department of Electrical and Computer Engineering, New Jersey Institute of Technology, Newark, NJ 07102 USA (e-mail: zhou@njit. edu). Q. T. Zeng is with the Shandong University of Science and Technology, Qingdao 266590, China (e-mail:
[email protected]). A. Ylä-Jääski is with the Department of Computer Science and Engineering, Aalto University, FI-02015, Espoo, Finland (e-mail: antti.yla-jaaski@aalto.fi). Digital Object Identifier 10.1109/TASE.2013.2293879
I. INTRODUCTION
W
ITH loose coupling, language neutrality, irrelevance and openness of platforms, Web services have been effectively applied to solve the problems of platform heterogeneity and interoperability. They have rapidly evolved into a kind of new distributed computing models [6], [21], [40]–[42], [48]–[51]. To make computers automatically understand Web semantic information, many researchers and organizations have presented semantic Web service description languages, such as Ontology Web Language for Services (OWL-S) [24], Web service modeling ontology (WSMO) [1] and semantic annotations for WSDL and XML schema [8]. A semantic Web needs to deal with fuzzy and inexact knowledge [38]. In order to build up representation and reasoning ability for the fuzzy information in semantic Web, Tho et al. [45] propose a fuzzy ontology generation framework (FOGA) for automatic generation of fuzzy ontology based on fuzzy formal concept analysis theory. They formulate a FOGA-based technique for integrating other attributes of database into the ontology and approximate reasoning method for the incremental enrichment of the ontology with new data. Other researchers extend OWL and description logic, and propose fuzzy description logic languages, such as FALC [37], f-SHOIN [36], FSHOIQ (D) [38], and FuzzyOWL [2], [35]. In addition, some organizations propose and use fuzzy logic and rule languages, such as Semantic Web Rule Language [14] and RuleML [12], and semantic net fuzzy rule languages, such as f-SWRL [28] and Fuzzy RuleML [39]. Fuzzy reasoning engines are implemented [35]. They make the automatic discovery, selection and composition of Web services based on fuzzy semantic Web services possible. Note that fuzzy semantics (or fuzziness) means syntactic and semantic representations involving fuzzy variables and fuzzy membership functions [18], [33], [71]. For example, a hotel reservation service may have such uncertain factors as its price and safety as inputs and generates their corresponding output, e.g., whether a particular hotel is chosen or not. Generally speaking, customers would like to choose an inexpensive but relatively safe hotel. Each input variable has its corresponding truth degree (maybe 0.8 for its price and 0.7 for its safety). If we consider low price and high safety as inputs only, the belief degree of a hotel selection rule may be 0.6. However, if a hotel location is also considered in such a rule, its belief degree may be higher as a hotel's location knowledge is helpful in deciding if a hotel is safe or not. A non-fuzziness service example is also given for comparison. A phone number query service that accepts a person's name and city information as inputs and
1545-5955 © 2013 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
CHENG et al.: AUTOMATIC COMPOSITION OF SEMANTIC WEB SERVICES BASED ON FUZZY PREDICATE PETRI NETS
returns an accurate phone number. This process contains no uncertainty and fuzziness. Due to the service reusability consideration, a single Web service may not be made too complicated [7], [19], [20], [48], [49]. The function provided by each service is generally made simple. A complicated application can be accomplished by simply composing multiple services. Hence, the real potential of Web services lies in service composition [43]. With the ever-accelerated increase of the fuzzy semantic Web services, such as multimedia information processing, object identification, and geography space data index, service requests often contain uncertainty. For instance, some visitors would like to select an inexpensive hotel not far from the downtown but a safe area. There are growing needs to integrate these fuzzy semantic Web services. As most of Web services are available on the Internet, it has exceeded the scope of a designer's ability to manually analyze them and generate a composite service [32], [43]. Thus, it is necessary to realize their automatic or semiautomatic composition. So far, there has been little research on service composition based on fuzzy semantics partially due to its technical difficulty. The issue is important since most people use the languages and descriptions that are much better characterized by fuzzy semantics and many services can be better realized by fuzzy semantic Web services. This work proposes to use a set of Horn clause rules to express the available Web services and fuzzy semantics. Searching a desired composite service is transformed into a Horn clause reasoning problem. Then, a Fuzzy Predicate Petri net (FPPN) is chosen to model the Horn clause set and T-invariant analysis technique is used to determine the existence of composite services fulfilling the user input/output requirements. This work proposes the algorithms to obtain the FPPN model for the composite service that satisfies both user input/output requirements and behavioral constraints. The main contributions of this work include the following. 1) We propose a fuzzy semantic-based automatic web service composition method by taking both input/output requirements and user constraints into account, which is of polynomial complexity. 2) Fuzzy Predicate Petri net (FPPN) is first proposed to model the Horn clauses. 3) Instead of reachability analysis, a T-invariant analysis technique is used to decide if there exists a qualified composite service. 4) Based on T-invariants, a method is presented to obtain composite services able to meet the user behavioral constraints and their FPPNs to show the service calling order. Section II summaries the related work. Section III introduces the basic concepts and analysis methods for a semantic Web service composition. Section IV gives the FPPN-based automatic service composition methods. A service composition case is presented to validate them in Section V. Finally, the conclusions are drawn in Section VI. II. RELATED WORK In [31], a Web service described by DAML-S is transformed into a set of linear logic axioms, and user requirements are con-
681
verted into linear logic formulas. Then, a linear logic theorem proof method is used to carry out automatic service composition. This method can find a composite service that satisfies user input/output requirements. Its complexity is PSPACE-hard. Ding et al. [5] and Tang et al. [44] transform a Web service coded composition problem to a Horn clause logic reasoning problem, and then use Petri nets to model the Horn clause reasoning process. Based on T-invariants, they determine if there exists a composite service satisfying input/output requirements. Their methods [5], [31], [44], however, fail to deal with fuzzy semantic Web services. Semantic composition based on a formal method includes Artificial Intelligence (AI) planning, Petri nets and process algebra. If we consider a service in the model of OWL-S as an action, then service composition is an AI planning problem. Sirin et al. [34] realize automatic service composition through layered task network planning by adopting a SHOP2 planner. The methods based on Petri nets [27], [30], [31], [72] pay more attention to the execution and performance analysis of a composite service. For example, a set of situation calculus axioms are used to define DAML-S semantic. Petri nets are used to provide operation semantic of situation calculus formula and the existence of a composite service is determined by their reachability analysis. Unfortunately, reachability analysis is not feasible due to the state space explosion problem for a large-scale model. In [13], a pi-calculus process expression is used to show the behavioral semantics of a Web service. Then, a feasibility check algorithm on Web service composition and requirement satisfiability is given. It is proved that the tested model can be used as one of alternative execution projects and feedback to the requirement proposer. Lang and Su [17] formalize a composition problem into a search problem in an AND/OR graph. A search algorithm to determine if a composite service satisfies requirements is presented. Their work considers the dependence among input/output parameters, but not service behavioral constraints. A Web service selection optimization problem is solved in [55]. Xiong et al. [52], [53] and Wang et al. [46] pioneer in an automated Web service composition method that can well support conditional branch structures. Sun et al. [40] conduct the web service composition with interactive user inputs in a framework of Petri nets. Wang et al. [49] propose two novel concepts called service intension and service extension, and then formulate a constraint-aware service composition method based on them and graph search-based techniques. The existing research on fuzzy semantic Web mainly focuses on OWL-based fuzzy logic, fuzzy ontology, and fuzzy rule language and service fuzzy discovery and matching [2], [9], [12], [25], [28], [33], [35]–[39], [45]. The problems on service discovery and matching in terms of fuzzy semantics are studied in [9], [18], [25], [33], and [56]. For example, on the basis of a semantic Web service description, the fuzzy multiset is embedded, and if no exact matching occurs, an approximate service discovery and matching is made in [33]. In [9], user preference ontology is created to express fuzzy user Web service requirements, and fuzzy Petri nets are used to solve the problem of Web service discovery and layout [25]. Dai and Zhang [3] build a fuzzy Petri net model for travel information service composition to help tourists make their best decisions.
682
IEEE TRANSACTIONS ON AUTOMATION SCIENCE AND ENGINEERING, VOL. 12, NO. 2, APRIL 2015
The above-mentioned studies do not handle fuzzy semantics and service behavioral constraints together. To the best of our knowledge, this work is the first one to propose an automatic service composition method by taking both fuzzy input/output requirements and user behavioral constraint compatibility into account. The former are transformed into a series of Horn clauses, thereby leading to a traditional logical reasoning problem. FPPNs are then proposed to model the Horn clauses. Their T-invariants are used to decide if there exists a qualified composition to meet such requirements. Based on the T-invariants, algorithms are presented to obtain composite services that can meet user behavioral constraints as well as construct FPPN models of selected and executable services. III. PRELIMINARIES In this section, we introduce some concepts and analysis methods related with semantics web services, fuzzy rule language and FPPNs. A. Semantic Web Service Given an ontology , we have the following definitions. Definition 1: Behavioral constraints define the contexts for the correct execution of a Web service. These contexts are specified by providers by imposing restrictions on the attributes and properties of a service to assure its correct execution. Each Web service is related with some semantic concepts in domain ontologies. For example, a BookSelling service is related to the concept of Book that may have attributes, e.g., BookType and Publisher. At the same time, the service itself may have certain properties, e.g., service coverage area, available time, and access control policy. Different service providers may impose different restrictions on these attributes and properties. For example, Shipping service providers may pose restriction on available time, and weight and insured value of a parcel. They may specify that shipping is possible only in North America, delivery is possible only between 7 am and 8 pm, Mondays to Fridays, and the weight of a parcel is not over 60 kg. Successful execution of such a service implies that these conditions or behavioral constraints must be met. Definition 2: An atomic Web service service where: 1) shows the semantic concept set cited by service input parameters; shows the semantic concept set cited by service output 2) parameters; describes the input/output parameters 3) and the related functions among the relative concepts in ontology ; describes a credibility concept; 4) is the behavioral constraint set; and 5) shows the parameter set. 6) Different from the definition of an atom service in [44], Definition 2 stresses its semantics and credibility. The behavioral constraint set stands for some conditions specified by the provider in order to ensure that the service can be correctly executed. These conditions can be the preconditions of WS, or business rules and policies, such as when WS is applicable, and
what conditions should be satisfied to invoke WS correctly. attributes include price, response It is worth noting that time, credibility, reputation, and so on [43], [50]–[53]. In Semantic Annotations for Web Service Description Language (SAWSDL) [8], the input/output parameters of a service can quote the concept of an external semantic model (such as a fuzzy ontology), and the behavioral constraints of a service can also join SAWSDL by model reference. Their examples are available time and coverage area of a service. Take a hotel reservation service as an example. It may only preferentially receive service requirement (service available time constraints) when the hotel is not very busy and the price is not very high (fuzzy constraints of an area relation). In SAWSDL, these constraints can be described by f-SWRL or fuzzy RuleML. At present, descripSAWSDL does not provide the support for the tion of a service. However, service providers can describe by other protocols, such as the Service-Level Agreement. Definition 3: A user requirement is a quaternary , where: is the semantic concept set cited by inputs provided 1) by a service requestor; is the semantic concept set cited by outputs ex2) pected by a service requestor; is the behavioral constraint set; and 3) is the parameter criteria given by a service 4) requestor. and , are behavDefinition 4: Two Web services, ioral-constraint compatible if for the constraints imposed on the same properties related with the two services, the intersection of their value range is not empty. For example, a BookSelling service located in Shanghai cannot cooperate correctly with a Shipping service located in North America. They are not behavioral-constraint compatible because the intersection of their coverage area is empty. Another example, assume that there are two car rental serand . The available time of is ordinary vices workday and the service coverage area is cityA. The available is working hours and the service coverage area time of is cityB (different from cityA). Then, the available time constraints of these two services are compatible, but their coverage area constraints are not. Therefore, their behavioral constraints are not compatible. A composition with two noncompatible services may lead to incorrect results. Definition 5: Service composition is to select a set of services from the available service set, and form a new executable valueadded service according to user requirements. The value-added service can accept fuzzy semantic inputs and produce user expected outputs. Meanwhile, compatibility among atom services is required, while user-posed behavioral criteria must be met. constraints and B. Fuzzy Rule Language Fuzzy ontology [2], [35] and Web services containing fuzzy semantics have been used in the areas of electronic news digest, multimedia information index, and video object semantic testing. The work [18] gives the fuzzy matching and discovery
CHENG et al.: AUTOMATIC COMPOSITION OF SEMANTIC WEB SERVICES BASED ON FUZZY PREDICATE PETRI NETS
of services from multi-ontology. A relaxation matching mechanism supporting fuzzy semantic is proposed. With this mechanism, the overall degree of truth is computed to reveal how much a service satisfies a requirement, and then the service with the highest degree of truth is selected [56]. As a kind of semantic Web rules, SWRL provides a high-level abstract description, just like Horn clause rule syntax in the ontology [44]. It combines Horn logic with OWL ontology knowledge-based description logic, and widely used in SAWSDL and OWL-S for constraint description of input and output parameters with semantics. According to [39], f-SWRL is the fuzzification promotion of SWRL, which includes three parts including fuzzy category assertion, fuzzy attribution assertion and fuzzy rule axiom. Its rules contain the precondition and result with the following format:
where and are concepts (place predicates) or atare tributes (binary predicates) in OWL, and and weights between 0 and 1, indicating the degree of truth. The following example is due to [4], [39]:
If the truth-value or weight of is 0.9 is 0.8, then we can obtain and the truth value of is 0.7. the truth-value of More details for its rule language code can be found in [4]. C. FPPN and Horn Clause The basic concepts of Horn clauses and FPPN are due to [10], [11], [44], and [54]. Definition 6: A Horn clause is an affirmative character clause , where with the following form: and are propositions, and and are two logic connectors, representing conjunction and implication, respectively. are satisfied, is true. This expression declares that if According to whether precondition (premise) and consequent (conclusion) are null or not, Horn clauses are divided into three types: 1) Neither of premise and conclusion is null. Such clause is usually called a “rule.” , called a “fact.” 2) Its premise is null, i.e., 3) Its conclusion is null, called an “objective.” The basics about Petri net theory and applications can be found in [22] and [57]–[70]. In [54], a fuzzy Pr/T net-system model is given to present the fuzzy production rules in knowledge-based systems. Here, we extend it in a Petri net-based way and obtain FPPN. FPPN is thus a fuzzy extension to the standard Pr/T nets. Definition 7: is called an FPPN where: 1) is a net. is the place set, is the , ; transition set, where is a flow relation; is the pre-set of is the post-set of .
683
2)
where is a positive integer, is called the individual set of the FPPN. is the set of variables over . 3) , is a bijective mapping where is the 4) dynamic predicate on D. , if is a j-ary predicate, then is called a -ary predicate. , where is the formula set on . 5) , where is the symbolic sum set on . 6) is an association function. , 7) , is the belief strength of the corresponding production rule. is an association function. , 8) denotes the truth values of all the instances of predin , , icate . For any token is the truth value of the th instance in place . 9) is a marking function, which initializes the distribution of tokens in the places. , if , there is at least a For an FPPN: (a) ( is a threshold), then token in place and is enabled and (b) its incidence matrix , where , and . Definition 8: An -dimension nonzero and non-negative integer vector is T-invariant of FPPN, if . is the support of T-invariant is the minimal support T-invariant of FPPN, if , . IV. SEMANTIC WEB SERVICE COMPOSITION A. Service Composition Modeling When new requests arrive, Web service developers first try to find whether there is a reusable web service that satisfies the requirements. If not, they look at whether there exists a group of web services that can be composed to fulfill the requirements. This work expresses user requirements as a set of Horn-clauseform rules. Three rule types are used in our work following [54]: Rule 1.
Rule 2.
Rule 3.
Rule 2 can be transformed as follows:
to facilitate reasoning with Horn clauses. Three types of the first order predicate logic Horn clauses and their FPPNs are shown in Fig. 1, according to [29]. , we have Rule 4. Given , where , ,
684
IEEE TRANSACTIONS ON AUTOMATION SCIENCE AND ENGINEERING, VOL. 12, NO. 2, APRIL 2015
Fig. 1. (a) A rule. (b) A fact. (c) A goal statement.
and represent the concepts (unary predicate) or attributes (binary predicates) in fuzzy OWL. The proposition rule can be standardized as a group of propositions of Horn-clause-form rules
They are in the f-SWRL standard form. By using the method , i.e., in [44], Web service name, behavioral constraint and ) are a set of constraint parameters at(ServiceName, BC, tached to each rule. All the rules obtained in the above way for all the services constitute the set of available services. , Rule 5. Given a user input/output request and are expressed by a set of fact Horn clauses. The semantic data type cited by each input parameter provided by users is converted into a factual form clause, i.e.,
The semantic data type cited by all output parameters is expressed by a goal clause in Horn clause, i.e.,
These rules constitute the set of user request rules. According to the satisfiability principle, given as a set of first order predicate formulas, is a first-order predicate formula and a logic is not satisfied. Therefore, inference of if and only if is true to prove that
can be added into the Horn clause set which is derived from Web services and a user request. We just need to prove that the clause set is not satisfied, i.e., there exist more than one composite service which can handle a user request and produce appropriate outputs. Therefore, through the above mentioned Rules 4–5, a service composition problem can be transformed into a Horn clause logic reasoning problem. Note that three kinds of Horn-clauseform rules can be obtained by scanning a service registration center and conducting ontology fuzzy reasoning. Once they are stored into the rule repository, they can be used [13], [44]. B. Automatic Composition FPPNs are adopted as a formal model for Horn clause reasoning. The method to use a Horn clause set to obtain the incidence matrix of its corresponding Petri net model is addressed in [4], [23]. According to [5], [44], the Horn clause set can be
obtained from a service composition problem, where characters represent the semantic concepts (semantic data type) and clauses represent either Web services or user requests. Therefore, in our work, the column of the incidence matrix of FPPN shows the semantic concept. If the rows represent Web services, then the matrix elements show whether the semantic concept appears in this service. The negative expression represents that a semantic concept corresponding to the elements in the columns appears in a service input in the rows; the positive expression represents that it appears in service output, and 0 shows that it does not appear in the service. If rows represent user requests, it has either only one positive expression or a number of negative expressions. The sufficient and necessary condition for a group of Horn clauses that contain contradictions is owing to [16] and [29]. is a group of Horn clauses and Theorem 1: If is its Petri net model, then, the following statements are equivalent: 1) is contradictory; is 0-reproducing (means that is under the condi2) , and there is a transition tion of initial marking sequence ); 3) has a non-negative T-invariant , and goal transition (goal clause corresponding to it) ; and , there exists a group of reverse paths, denoted as 4) In , from goal transition (sink transition) to fact transition (source transition), and for any transition , is a path in , adjacent places in is also in the path. Based on (3) and (4) in Theorem 1, we can conclude that if a logic reasoning problem is modeled by a Petri net model, the goal transition is potentially firable if and only if there exists a non-negative T-invariant that includes the goal transition in its support. Therefore, after the incidence matrix of a Petri net model for a Horn clause set is obtained, we can determine whether there exist composite services that can satisfy user requests by solving T-invariants of its corresponding Petri net. Yu [54] gives a simple and fast algorithm to compute T-invariants. Based on this algorithm, we propose some improvements. We need to pay attention to the minimal support T-invariant only. If there exists a support containing a minimal support of T-invariant of an objective transition, it means that there exists a composite service that can satisfy a user request, and this minimal T-invariant corresponds to a potential composite service. However, it does not mean that this composite service is correct. We also need to decide if it meets the behavioral con, and user straints provided by users, QoS preferences (CF value of fuzzy rules). In addition, although T-invariant and minimal support show which services should be called in order to satisfy user requests. There are only a set of unordered transitions. Therefore, it is necessary to obtain the transition firing sequences, i.e., a web service calling order. for each place in Set a unification relation is an element of , , and FPPN, represents a unifier complementary and a general unifier , where is pair is the arc label from to the arc label of input place , , and truth degree of a unification relation is [54].
CHENG et al.: AUTOMATIC COMPOSITION OF SEMANTIC WEB SERVICES BASED ON FUZZY PREDICATE PETRI NETS
Different from traditional Petri nets [58]–[69], when performing clause resolution with the reasoning algorithm of T-invariant of FPPN, one needs not only judge if the corresponding literal reverses in the resolution clause pair, but also if some variables can be unified or not. In addition, if has more than one input place (this shows that the rule has more than one condition conjunction, and they are reflected in matrix , and the row has a number of negative literals), eliminating negative literals needs unification complementary pair in multiple rows. According to [54], let truth degree of the unification relation after being unified. Before performing non-negative linear composition of these row pairs, each appearing in the row pairs should be replaced with . The following algorithm yields all T-invariants of an FPPN. Algorithm 1: Finding T-invariants Input: Incidence matrix of an FPPN matrix . .
Output: Set of T-invariants and
Step 1:
to
Step 2: For If where
and belief strength
. Do.
, then replace the th row of .
Step 3: For
to
by zero,
Do.
every row resulting as Step 3.1: Append to matrix a nonnegative linear combination of unifiable row pairs that annul the column of , and attach the from corresponding unifier and its belief strength to each row , then each element of the appended of the pair. If row should be replaced by zero. Step 3.2: Eliminate from column of is non-null.
the rows in which the
Step 4: Put the left nonzero columns of the submatrix as the elements in . Step 5: Output
.
Algorithm 1 starts with an matrix consisting of an belief strength matrix and incidence matrix. The algorithm consists of steps. At each step, one column of the incidence matrix is eliminated by performing a set of non-negative linear combinations. If the column has positive and negative elements, then rows are eliminated and rows are created at that particular step. When the algorithm completes, left columns of the sub-matrix contains the T-invariants of the FPPN. Thus, the complexity of Algorithm 1 is . The following algorithm is used to obtain the T-invariant corresponding services that are compatible with user behavioral constraints.
685
Algorithm 2: Finding compatible services Input:
and objective service
.
Output: Step 1:
. , if
Step 2: For each .
, then
, for each , if its Step 3: For each corresponding service behavioral constraint is compatible with user behavioral constraints, then . Step 4: Output
.
By Algorithm 2, we can obtain a new set of T-invariant . In this set, the services corresponding to those elements which represent services in each T-invariant are compatible with the , it indicates that there user behavioral constraints. If is no composite service compatible with the behavioral constraints, i.e., no composite service satisfies the user requests. If no specific behavioral constraints are given, then we just consider constructing composite services of behavioral constraint compatibility among atom services so as to ensure the correctand , ness of composite services. Because . the complexity of the third step is The complexity is . Thus, the complexity of Algorithm 2 is . Based on Algorithms 1 and 2, we can obtain a set of T-invariants whose corresponding services can meet a user request and service behavioral constraints if existing. To find the execution sequence for the composite services, the next algorithm is used to construct the FPPN model to show the service composition order based on the T-invariant set . Algorithm 3: Finding FPPN corresponding to a composite service Input:
and
Output: FPPN Step 1: For each , if , eliminate the from . Denote the new matrix by .
row
the columns whose elements are Step 2: Eliminate from all zeros. Denote the new matrix by . Step 3: A new FPPN model can be obtained according to , each place is labeled with its corresponding parameter name and those transitions representing the operations of SAWSDL are labeled with the vector service name, associated with each clause. Step 4: Merge the transitions that have the same label and CF into one transition. The new transition's pre-set and post-set are the union of each original one's pre-set and post-set respectively. The new transition's label does not change. Denote this new Petri net model by FPPN . Step 5: Output FPPN .
686
IEEE TRANSACTIONS ON AUTOMATION SCIENCE AND ENGINEERING, VOL. 12, NO. 2, APRIL 2015
TABLE I SERVICE INFORMATION
It is easy to see that the complexity of Algorithm 3 is . Hence, we have the following result based on the complexity analysis of Algorithms 1–3, which shows the high scalability of this proposed method. Theorem 2: The proposed method to find a composite service complexity where . has We can obtain the FPPN model of all potential composite services. They need a test to see if they contain any deadlock and meet QoS performance requirements. Based on the analysis techniques [15], [22], [27], [30], [47], [57]–[61], [72], such as siphon and trap, we can judge whether the composite services contain deadlocks. Towards these qualified and correct composite services, we can obtain the firing sequence of transitions, which corresponds to an order of service calls. According to the sequence and QoS parameter of each service, we can compute the QoS value of the composite service. Finally, we can select the optimal one among them [53]. V. CASE ANALYSIS In the aforementioned sections, we have introduced an FPPNbased approach to automatic service composition. In order to validate the proposed method, in this section, we give a video download service scenario to show the proposed methodology. It is assumed that there are six available services and a user request. The detailed description is shown in Table I. Each Web service accepts fuzzy semantic inputs (e.g., MonitorNetworkFlow: “network is fluent” sets that the fuzzy degree of truth is 0.8), and produces outputs that support fuzzy semantic. The requirement is composed of three parts: inputs, expected outputs and behavioral constraints. We can see that there is not any single available service able to satisfy the given requirements. In the above discussion, all service providers and all service requestors use the same fuzzy ontology. In many real cases, as there exists different vocabularies, even for the same domain, they may use different ones. Hence, according to [18], one must
create a mapping ontology in order to capture the relationships among concepts used by different ontologies. Through the aforementioned modeling methods, we can create a clause set with 12 Horn clauses. Among them, represent rules, represent facts and is the goal. : 3GNetworkSite SIMCardNumber SelectedNetwork (user preferentially selects 3GNetwork, thus, ). : WifiNetworkSite SIMCardNumber SelectedNetwork (the preference which users choose WifiNetwork is 0.65). : MonitorNetworkFlowForecast NetworkFlowFluent (initiate input degree of truth is defined by fuzzy function, e.g., the fluent condition is 1.0, and the non-fluent is 0.3). : CreditAcceptance CostPreference Security- Reliabl SelectedCloudProvider . : SelectedNetwork SelectedCloudProvider NetworkFlow- Fluent PrepareSuccess . : SelectedNetwork PrepareSuccess GoldCard (according to the consumption amount of a member's SIM card account, the Internet Service Provider (ISP) automatically upgrades their accounts to Gold, Silver and Ordinary status enjoy different level of services the rule confidence level is 0.85). : 3GNetworkSite. : SIMCardNumber. : WifiNetworkSite. : CloudProviderName. : VideoName. : DownloadUseGoldMember . The FPPN model of these twelve Horn clauses is illustrated in Fig. 2. Note that the left side of “ ” in a Horn clause rule describes service input/output function information. The right side is explanatory notes. The domain expert gives the initial truth degree according to the fuzzy function. Note that affordable-size pilot tests/surveys may be required to generate reliable data, which is beyond this paper's scope. Executing Algorithms 1 and 2 generates one T-invariants that contains goal transition , for the FPPN model in Fig. 2, denoted as .
CHENG et al.: AUTOMATIC COMPOSITION OF SEMANTIC WEB SERVICES BASED ON FUZZY PREDICATE PETRI NETS
Fig. 2. FPPN model of Horn clause set.
687
to model the Horn clause set and T-invariant analysis technique is used to determine the existence of composite services fulfilling the user requirements. Then, algorithms are presented to obtain composite services satisfying both user input/output requirements and behavioral constraints. An FPPN model is constructed to show the service calling order of the selected services. As for services with dynamic interactions (such as message exchange) at runtime, more work is needed. Optimization with the real-time QoS evaluation for sizable applications [50], [51], [53]–[56] should be pursued. Data collection can be a challenging issue for large industrial-scale projects and thus require additional research. The integration with other methods [19]–[21], [42], [52], [53], [57]–[76] for better service composition needs more work. REFERENCES
Fig. 3. The FPPN model of a composite service.
Therefore, corresponds to the composition services. Then via Algorithm 3, we can obtain the FPPN model of the composite service corresponding to , as shown in Fig. 3. According to Petri net analysis methods [27], [30], [72], [77], we can find that it contains no deadlock. Thus, a correct service is found to satisfy user request and behavioral constraints. According to the FPPN model, the requirements can be satisfied by calling services Select3GNetwork , MonitorNetworkFlow , EvaluateCloudProvider , PrepareDownload and VIPUser . Moreover, based on the reachability graph of Petri nets, we can obtain the service composition expression, as (Select3GNetwork MonitorNetworkFlow EvaluateCloud- Provider ) PrepareDownload VIPUser ), where “ ” shows a parallel operation and “ ” shows a sequence operation. According to service calling expression and the QoS of each service, QoS of the composite service can be calculated. VI. CONCLUSION This work considers automatic service composition at the operational level where atom services are regarded as a black-box that can accept inputs and produce outputs. Searching a desired composite service given fuzzy semantic web services and user requirements is transformed into a Horn clause reasoning problem. Then, a Fuzzy Predicate Petri Net (FPPN) is chosen
[1] J. Bruijn, C. Bussler, J. Domingue, D. Fensel, M. Hepp, U. Keller, M. Kifer, J. Kopecky, R. Lara, H. Lausen, E. Oren, A. Polleres, D. Roman, J. Scicluna, and M. Stollberg, Web service modeling ontology, 2005. [Online]. Available: http://wsmo.org [2] S. Calegari and D. Ciucci, “Fuzzy ontology and fuzzy-OWL in the Kaon project,” in Proc. IEEE Int. Conf. on Fuzzy Syst., 2007, pp. 1415–1420. [3] X. Dai and Z. H. Zhang, “A model of tourism information service composition based on fuzzy Petri net,” in Proc. Int. Conf. Comput. Sci. Service Syst., Nanjing, China, 2011, pp. 1941–1944. [4] C. Damasio, J. Pan, G. Stoilos, and U. Straccia, “An approach to representing uncertainty rules in RuleML,” in Proc 2nd Int. Conf. Rules Rule Markup Languages for the Semantic Web, 2006, pp. 1–10. [5] Z. J. Ding, J. L. Wang, and C. J. Jiang, “Semantic web service composition based on OWL-S,” in Proc. 1st Int. Conf. Semantics, Knowledge Grid., SKG'05, 2005, pp. 872–878. [6] Y. Du, W. Tan, and M. C. Zhou, “Timed compatibility analysis of web service composition: A modular approach based on Petri nets,” IEEE Trans. Autom. Sci. Eng., 2013, to be published. [7] J. Fan and S. Kambhampati, “A snapshot of public web services,” SIGMOD Record, vol. 34, no. 1, pp. 24–32, 2005. [8] J. Farrell and H. Lausen, “Semantic annotations for WSDL and XML schema,” 2007. [Online]. Available: http://www.w3.org/TR/sawsdl/ [9] G. Fenza, V. Loia, and S. Senatore, “A hybrid approach to semantic web services matchmaking,” Int. J. Approx. Reasoning, vol. 48, no. 3, pp. 808–828, 2008. [10] M. Gao, M. C. Zhou, X. Huang, and Z. Wu, “Fuzzy reasoning Petri nets,” IEEE Trans. Syst, Man, Cybern.: Part A, vol. 33, no. 3, pp. 314–324, May 2003. [11] M. Gao, M. C. Zhou, and Y. Tang, “Intelligent decision making in disassembly process based on fuzzy reasoning Petri nets,” IEEE Trans. Syst, Man, Cybern.: Part B, vol. 34, no. 5, pp. 2029–2034, Oct. 2004. [12] D. Hirtle, H. Boley, B. Grosof, M. l. Kifer, M. l. Sintek, S. Tabet, and G. Wagner, “Schema specification of RuleML 0.89,” 2005. [Online]. Available: http://www.w3.org/Submission/FOL-RuleML [13] L. S. Hou, Z. Jin, and B. D. Wu, “Modeling and verifying web services driven by requirements: An ontology based approach,” Sci. China Series F: Inform. Sci., vol. 49, no. 6, pp. 792–820, 2006. [14] I. Horrocks, F. Peter, H. Boley, S. Tabet, B. Grosof, and M. Dean, “SWRL: A semantic web rule language combining OWL and RuleML,” May 2004 [Online]. Available: http://www.w3.org/Submission/SWRL/ [15] H. Hu, M. C. Zhou, and Z. L. Y. Tang, “An optimization approach to improved Petri net controller design for automated manufacturing systems,” IEEE Trans. Autom. Sci. Eng., vol. 10, no. 3, pp. 634–642, Jul. 2013. [16] K. Lautenbach, W. M. P. van der Aalst and E. Best, Eds., “Logical reasoning and Petri nets,” in Proc. ICATPN, Berlin, Germany, 2003, vol. 2679, Lecture Notes in Computer Science, pp. 276–295. [17] Q. Lang and S. Su, “And/or graph and search algorithm for discovering composite web services,” Int. J. Web Services Res., vol. 2, no. 4, pp. 46–64, 2005.
688
IEEE TRANSACTIONS ON AUTOMATION SCIENCE AND ENGINEERING, VOL. 12, NO. 2, APRIL 2015
[18] D. N. Le and A. E. S. G. FuzMOD, “Fuzmod: A fuzzy multi-ontology web service discovery system,” in Proc. 2nd IEEE Asia-Pacific Service Comput. Conf., Dec. 11-14, 2007, pp. 197–203. [19] X. Li, Y. Fan, Q. Z. Sheng, Z. Maamar, and H. Zhu, “A Petri net approach to analyzing behavioral compatibility and similarity of web services,” IEEE Trans. Syst, Man, Cybern., Part A: Syst. Humans, vol. 41, no. 3, pp. 510–521, May 2011. [20] X. Li, S. Madnick, and H. Zhu, “A context-based approach to reconciling data interpretation conflicts in web services composition,” ACM Trans. Int. Technol. (TOIT), 2014, to be published. [21] X. Li, S. Madnick, H. Zhu, and Y. Fan, “Reconciling semantic heterogeneity in web services composition,” in Proc. 30th Int. Conf. Inform. Syst. (ICIS'09), Phoenix, AZ, USA, Dec. 15–18, 2009, pp. 20–25. [22] Z. W. Li and M. C. Zhou, Deadlock Resolution in Automated Manufacturing Systems A Novel Petri Net Approach. New York, NY, USA: Springer, 2009. [23] C. Lin, A. Chaudhury, A. Whinston, and D. C. Marinescu, “Logical inference of Horn clauses in Petri net models,” IEEE Trans. Knowl. Data Eng., vol. 5, no. 4, pp. 416–425, Jul. 1993. [24] D. Martin, M. P. S. McIlraith, M. Burstein, D. McDermott, D. McGuinness, B. Parsia, T. Payne, M. Sabou, M. Solanki, N. Srinivasan, and K. Sycara, “Bringing semantics to web services: The OWL-S approach,” Semantic Web Services and Web Process Composition, , vol. 3387, Lecture Notes in Computer Science, pp. 26–42, 2005. [25] P. Men, Z. H. Duan, and B. Yu, “Utilizing fuzzy Petri net for choreography based semantic web services discovery,” Petri Nets and Other Models of Concurrency—ICATPN, pp. 362–380, 2007. [26] T. Murata and D. Zhang, “A predicate-transition net model for parallel interpretation of logic programs,” IEEE Trans. Softw. Eng., vol. 14, no. 4, pp. 481–498, Apr. 1988. [27] S. Narayanan and S. A. McIlraith, “Analysis and simulation of web services,” Comput. Networks: Int. J. Comput. Telecommun. Networking, vol. 42, no. 5, pp. 675–693, 2003. [28] J. Z. Pan, G. Stoilos, G. Stamou, V. Tzouvaras, and I. Horrocks, “F-SWRL: A fuzzy extension of SWRL,” J. Data Semantic, Special Issue on Emergent Semantics, vol. 4090, pp. 28–46, 2006. [29] G. Peterka and T. Murata, “Proof procedure and answer extraction in Petri net model of logic programs,” IEEE Trans. Software Eng., vol. 15, no. 2, pp. 209–217, Feb. 1989. [30] Z. Z. Qian, S. Lu, and X. li, “Automatic composition of Petri net based web services (J),” Chinese J. Comput., vol. 29, no. 7, pp. 1057–1066, 2006. [31] J. Rao, P. Küngas, and M. Matskin, “Logic-based web services composition: From service description to process model,” in Proc. IEEE Int. Conf. Web Services. IEEE Comput. Soc., 2004, pp. 446–453. [32] J. H. Rao and X. M. Su, J. Cardoso and A. Sheth, Eds., “A survey of automated web service composition methods”,” in Proc. SWSWPC, Berlin, Germany, 2005, vol. 3387, Lecture Notes in Computer Science, pp. 43–54. [33] M. Reformat, D. M. Li, and C. Ly, “Approximate reasoning and semantic web services,” Fuzzy Inform., vol. 1, pp. 413–418, 2004. [34] E. Sirin, B. Parsia, D. Wu, J. Hendler, and D. Nau, “HTN planning for web service composition using shop,” J. Web Semantics, vol. 1, no. 4, pp. 377–396, 2004. [35] G. Stoilos, N. Simou, G. Stamou, and S. Kollias, “Uncertainty and the semantic web,” IEEE Intell. Syst., vol. 21, no. 5, pp. 84–87, Sep.-Oct. 2006. [36] G. Stoilos, G. Stamou, V. Tzouvaras, J. Z. Pan, and I. Horrocks, B. Cuenca-Grau, I. Horrocks, B. Parsia, and P. Patel-Schneider, Eds., “Fuzzy OWL: Uncertainty and the semantic web,” in Proc. Int. Workshop OWL: Experience and Directions: CEUR-WS.org Publishers, Aachen, Germany, 2005, pp. 80–89. [37] U. Straccia, “Reasoning within fuzzy description logics,” J. Artificial Intell. Res., vol. 14, no. 1, pp. 137–166, 2001. [38] U. Straccia, “A fuzzy description logic for the semantic web,” in Proc. Capturing Intell.: Fuzzy Logic and the Semantic Web, E. Sanchez, Ed. New York, NY, USA: Elsevier Sci., 2006, pp. 73–90. [39] G. Stamou, J. Pan, H. Boley, S. Tabet, V. Tzouvaras, G. Stoilos, G. Wagner, A. Giurca, C. Damasio, U. Straccia, A. Chortaras, and T. Lukasiewicz, 2006. [Online]. Available: http://image.ntua.gr/ FuzzyRuleML/ [40] P. Sun, C. J. Jiang, and M. C. Zhou, “Interactive web service composition based on Petri net,” Trans. Inst. Meas. Control, vol. 33, no. 1, pp. 116–132, Feb. 2011.
[41] W. Tan, Y. Fan, and M. C. Zhou, “A Petri net-based method for compatibility analysis and composition of web services in business process execution language,” IEEE Trans. Autom. Sci. Eng., vol. 6, no. 1, pp. 94–106, Jan. 2009. [42] W. Tan, Y. Fan, M. C. Zhou, and Z. Tian, “Data-driven service composition in building SOA solutions: A Petri net approach,” IEEE Trans. Autom. Sci. Eng., vol. 7, no. 3, pp. 686–694, Jul. 2010. [43] W. Tan and M. C. Zhou, Business and Scientific Workflows: A Web Service-Oriented Approach. Hoboken, NJ, USA: Wiley, 2013. [44] X. Tang, C. Jiang, and M. Zhou, “Automatic web service composition based on Horn clauses and Petri nets,” Expert Syst. With Applicat., vol. 38, no. 10, pp. 13024–13031, Sep. 2011. [45] Q. T. Tho, S. C. Hui, A. C. M. Fong, and T. H. Cao, “Automatic fuzzy ontology generation for semantic web,” IEEE Trans. Knowl. Data Eng., vol. 18, no. 6, pp. 842–856, Jun. 2006. [46] P. Wang, Z. Ding, C. Jiang, and M. C. Zhou, “Automated web service composition supporting conditional branch structures,” Enterprise Inform. Syst., vol. 8, no. 1, pp. 121–146, 2014. [47] A. Wang, Z. Li, M. C. Zhou, and A. M. Al-Ahmari, “Iterative deadlock control by using Petri nets,” IEEE Trans. Syst., Man, Cybern.—Part C, vol. 42, no. 6, pp. 1204–1218, Dec. 2012. [48] P. W. Wang, Z. J. Ding, C. J. Jiang, and M. C. Zhou, “Design and implementation of a web-service-based public oriented personalized health care platform,” IEEE Trans. Syst., Man, Cybern.: Syst., vol. 43, no. 4, pp. 941–957, Jul. 2013. [49] P. Wang, Z. Ding, C. Jiang, and M. C. Zhou, “Constraint-aware approach to web service composition,” IEEE Trans. Syst., Man, Cybern.: Syst., May 2013, to be published. [50] Y. Wu, C. Yan, Z. Ding, G. Liu, P. Wang, C. Jiang, and M. C. Zhou, “A novel method for calculating service reputation,” IEEE Trans. Autom. Sci. Eng., vol. 10, no. 3, pp. 634–642, Jul. 2013. [51] J. Wu, L. Chen, Y. Feng, Z. Zheng, M. C. Zhou, and Z. Wu, “Predicting quality of service for selection by neighborhood-based collaborative filtering,” IEEE Trans. Syst., Man, Cybern.: Syst., vol. 43, no. 2, pp. 428–439, Mar. 2013. [52] P. C. Xiong, Y. S. Fan, and M. C. Zhou, “Qos-aware web service configuration,” IEEE Trans. Syst., Man, Cybern.: Part A, vol. 38, no. 4, pp. 888–895, Jul. 2008. [53] P. C. Xiong, Y. Fan, and M. C. Zhou, “Web service configuration under multiple quality-of-service attributes,” IEEE Trans. Autom. Sci. Eng., vol. 6, no. 2, pp. 311–321, Apr. 2009. [54] S. K. Yu, “Knowledge representation and reasoning using fuzzy PR/T net-systems,” Fuzzy Sets Syst., vol. 75, pp. 33–45, 1995. [55] L. Z. Zeng, B. Benatallah, A. Ngu, M. Dumas, J. Kalagnanam, and H. Chang, “Qos-aware middleware for web services composition,” IEEE Trans. Softw. Eng., vol. 30, no. 5, pp. 311–327, May 2004. [56] G. S. Zhang, C. J. Jiang, and Z. J. Ding, “Service discovery framework using fuzzy Petri net,” J. Comput. Res. Develop., vol. 43, no. 11, pp. 1886–1894, 2006. [57] M. C. Zhou and M. P. Fanti, Deadlock Resolution in Computer-Integrated Systems. New York, NY, USA: Marcel Dekker, 2005. [58] Petri Nets in Flexible and Agile Automation, M. C. Zhou, Ed. London, U.K.: Kluwer, 1995. [59] M. C. Zhou, “Deadlock avoidance methods for a distributed robotic system: Petri net modeling and analysis,” J. Robot. Syst., vol. 12, no. 3, pp. 177–187, 1995. [60] M. C. Zhou and F. DiCesare, Petri Net Synthesis for Discrete Event Control of Manufacturing Systems. London, U.K.: Kluwer, 1993. [61] M. C. Zhou and K. Venkatesh, Modeling, Simulation and Control of Flexible Manufacturing Systems: A Petri Net Approach. Singapore: World Scientific, 1998. [62] M. C. Zhou and F. DiCesare, “Adaptive design of Petri net controllers for error recovery in automated manufacturing systems,” IEEE Trans. Syst., Man, Cybern., vol. 19, no. 5, pp. 963–973, Sep./Oct. 1989. [63] M. C. Zhou and F. DiCesare, “Parallel and sequential mutual exclusions for Petri net modeling for manufacturing systems with shared resources,” IEEE Trans. Robot. Autom., vol. 7, no. 4, pp. 515–527, Aug. 1999. [64] M. C. Zhou and M. C. Leu, “Modeling and performance analysis of a flexible PCB assembly station using Petri nets,” Trans. ASME, J. Electron. Packag., vol. 113, no. 4, pp. 410–416, 1991. [65] M. C. Zhou, F. DiCesare, and A. A. Desrochers, “A hybrid methodology for synthesis of Petri nets models for manufacturing systems,” IEEE Trans. Robot. Autom., vol. 8, no. 3, pp. 350–361, Jun. 1992.
CHENG et al.: AUTOMATIC COMPOSITION OF SEMANTIC WEB SERVICES BASED ON FUZZY PREDICATE PETRI NETS
[66] M. C. Zhou, F. DiCesare, and D. Rudolph, “Design and implementation of a Petri net based supervisor for a flexible manufacturing system,” Automatica, vol. 28, no. 6, pp. 1199–1208, 1992. [67] M. C. Zhou, C.-H. Wang, and X. Zhao, “Automating Mason's rule and its application in performance analysis of stochastic Petri nets,” IEEE Trans. Control Syst. Technol., vol. 3, no. 2, pp. 238–244, Jun. 1995. [68] M. C. Zhou and F. DiCesare, “Petri net modeling of buffers in automated manufacturing systems,” IEEE Trans. Syst., Man, Cybern.–Part B: Cybern., vol. 26, no. 1, pp. 157–164, Feb. 1996. [69] M. C. Zhou and M. D. Jeng, “Modeling, analysis, simulation, scheduling, and control of semiconductor manufacturing systems: A Petri net approach,” IEEE Trans. Semicond. Manuf., vol. 11, no. 3, pp. 333–357, Aug. 1998. [70] M. C. Zhou, M. Jeng, and M. P. Fanti, “Guest Editorial: Special Issue on deadlock resolution in computer integrated systems,” IEEE Trans. Syst., Man, Cybern., vol. 34, no. 1, pp. 1–4, Jan. 2004. [71] Z. Zhou, F. Chu, A. Che, and M. C. Zhou, “ε-constraint and fuzzy logicbased optimization of hazardous material transportation via lane reservation,” IEEE Trans. Intell. Transp. Syst., vol. 14, no. 2, pp. 847–857, Jun. 2013. [72] Zhovtobryukh, “A Petri net-based approach for automated goal-driven web service composition,” SIMULATION, vol. 83, pp. 33–63, 2007. [73] H. Zhu and M. C. Zhou, “Role transfer problems and algorithms,” IEEE Trans. Syst., Man, Cybern.: Part A, vol. 38, no. 6, pp. 1442–1450, Nov. 2008. [74] H. Zhu and M. C. Zhou, “Efficient role transfer based on Kuhn-Munkres Algorithm,” IEEE Trans. Syst., Man, Cybern.: Part A: Syst. Humans, vol. 42, no. 2, pp. 491–496, Mar. 2012. [75] H. Zhu, M. C. Zhou, and R. Alkins, “Group role assignment via a KuhnMunkres algorithm-based solution,” IEEE Trans. Syst., Man, Cybern.: Part A: Syst. Humans, vol. 42, no. 3, pp. 739–750, May 2012. [76] H. Zhu, M. C. Zhou, and P. Seguin, “Supporting software development with role,” IEEE Trans. Syst., Man, Cybern.: Part A: Syst. Humans, vol. 36, no. 6, pp. 1110–1123, Nov. 2006. [77] R. Zurawski and M. C. Zhou, “Petri nets and industrial applications: A tutorial,” IEEE Trans. Ind. Electron., vol. 41, no. 6, pp. 567–583, Dec 1994.
689
Cong Liu received the B.S. degree in computer science and technology from Shandong University of Science and Technology, Qingdao, China. He is currently working towards the M.S. degree at the College of Information Science and Engineering, Shandong University of Science and Technology. His research interests are in the areas of Petri nets, service composition, and business process management.
MengChu Zhou (S'88–M'90–SM'93–F'03) received the B.S. degree in control engineering from Nanjing University of Science and Technology, Nanjing, China, in 1983, the M.S. degree in automatic control from the Beijing Institute of Technology, Beijing, China, in 1986, and the Ph.D. degree in Computer and systems engineering from the Rensselaer Polytechnic Institute, Troy, NY, USA, in 1990. He joined the New Jersey Institute of Technology (NJIT), Newark, NJ, USA, in 1990, and is now a Distinguished Professor of Electrical and Computer Engineering. He is presently a Professor with Tongji University, Shanghai, China. His research interests are in Petri nets, sensor networks, web services, semiconductor manufacturing, transportation and energy systems. He has over 500 publications including 11 books, 250+ journal papers (majority in the IEEE TRANSACTIONS), and 22 book-chapters. Prof. Zhou is a Life Member of the Chinese Association for Science and Technology-USA and served as its President in 1999. He is Fellow of the International Federation of Automatic Control (IFAC) and the American Association for the Advancement of Science (AAAS). He is the founding Editor of the IEEE Press Book Series on Systems Science and Engineering, Associate Editor of the IEEE TRANSACTIONS ON SYSTEMS, MAN AND CYBERNETICS: SYSTEMS, and the IEEE TRANSACTIONS ON INDUSTRIAL INFORMATICS.
Qingtian Zeng received the Ph.D. degree in computer software and theory from the Institute of Computing Technology, Chinese Academy of Sciences, Beijing, China, in 2005. In 2008, he was a Visiting Professor at the City University of Hong Kong, Kowloon, Hong Kong. He is currently a Professor with the Shandong University of Science and Technology, Qingdao, China. His research interests are in the areas of Petri nets, process mining, and knowledge management.
Jiujun Cheng received the Ph.D. degree from the Beijing University of Posts and Telecommunications, Beijing, China, in 2006. He is presently an Associate Professor with Tongji University, Shanghai, China. In 2009, he was a Visiting Professor at the Aalto University, Espoo, Finland. He has over 30 publications including conference and journal papers. His research interests span the area of mobile computing and social network with a focus on mobile/internet interworking, service computing, and the Internet of Vehicles.
Antti Ylä-Jääski one of the three professors responsible for the Data Communications Software at the Department of Computer Science and Engineering, Aalto University. His expertise area is in network technologies, application and service development in the Internet, and network architectures. His current research interests include mobile networks, Internet technologies, service management, and heterogeneous network environments, e.g., 2G/3G, WLAN, PAN, and Broadcast.