Description Logic Program and Fuzzy Logic based Web Service ...

4 downloads 54477 Views 727KB Size Report
a result, multiple service providers are providing the similar web services. The current problem in selecting the web service is choosing the web service that best ...
International Journal of Applied Engineering Research ISSN 0973-4562 Volume 10, Number 9 (2015) © Research India Publications ::: http://www.ripublication.com

Description Logic Program and Fuzzy Logic based Web Service Selection 1

Raj Kumar R S, 2Sureshkumar R, 3Saravanabalaji B

1

PG Scholar, Sri Ramakrishna Engineering College, Coimbatore, Tamil Nadu, India Assistant Professor, Maharaja Prithvi Engineering College, Coimbatore, Tamil Nadu, India 3 Assistant Professor, Sri Ramakrishna Engineering College, Coimbatore, Tamil Nadu, India

2

functional properties include QoS like response time, throughput, mean time between failure, availability and reliability. Thus the web service that meets the consumer’s criteria of both the functional and non functional requirement according to their business need must be selected and provided to the user. The difficulty in choosing such a web service is that most of the consumers are not aware of the functional and non functional properties provided by the web service. They simply trust the QoS guarantee specified by them. Hence we propose a system to dynamically discover and select the best web service that matches the user’s specified criteria. In this paper we incorporate semantic technology for effective discovery of web service based on its functionality and fuzzy logic for selecting and ranking the web service that were discovered semantically. Semantic technology can be defined as the explicit and formal representation of a conceptualization for a particular domain. Simply semantic technology represents the knowledge representation of a particular domain. Knowledge can be represented either through ontology or description logic program. Ontology consists of concepts and their relationships along with instances and axioms. The major drawback in framing the ontology is it is a time consuming process and adds more cost to the user. Description logic program consists of family of knowledge representation languages that are expressive in nature for making good decisions [15]. Description Logic Program (DLP) has its own advantages. It’s simple and good decision can be made quickly. It is used in this paper for formal reasoning of concepts and their relationships in the web service. Based on description logic rule, we framed the incident matrix that describes whether the user specification is met by the web service. Applying Tinvariant technique on the incident matrix retrieve the web services that meets the functional requirement of the web service. These services are then ranked on the basis of the QoS that they meet in accordance with the user specification. Fuzzy Logic approach is used for determing the QoS matching criteria of web service. The linguistic rating such as low, high are determined for each QoS parameter like response time and throughput from the customers who had used the web service before. A fuzzy decision matrix is created and normalized from the determined web service rating. QoS specified distance is

Abstract- The primary goal of service oriented architecture is the service. The web services are becoming more popular today and they are dynamically selected by the consumer. As a result, multiple service providers are providing the similar web services. The current problem in selecting the web service is choosing the web service that best meets specified QoS criteria along with its functionality. Hence in this paper, we suggest the web service discovery through semantic technology and its selection through fuzzy logic approach. Semantic technology helps in discovering the web services with the help of knowledge representation through description logic program. Among the discovered services, partial semantics is applied as fuzzy logic and the fuzzy match making process is transformed into web service selection problem. The web services that emerges out of this match making process is ranked to the consumer. Keywords— Description Logic Program, Fuzzy Logic, Incident Matrix, T-invariant Analysis, Web Service Selection.

Introduction Service Oriented Architecture is a style of designing a pattern for an application architecture that provides web services as the primary goal over the World Wide Web . The services provided will be loosely coupled over the network and it hides the technology, vendor or product from its consumer. Consumers are the one who invoke and consume the web service. Web service is a functionality like an online banking offered by a particular service provider, who create and publish their web service. Technically, web service can be defined as the part of the location in a server that can be invoked dynamically to do a particular business process. The web service provider, register their services in a central repository like UDDI through standard protocol such as SOAP. The services can be then dynamically invoked through these standard protocols by the consumers. One of the key service characteristics of SOA is to conserve the development time and cost of the web service. It is achieved by making the service component reusable in a higher degree with the help of platform independent interface. Web Service Description Language (WSDL) is a one such platform independent self describing XML based document to describe the web services. To make the service components reusable, the best service among several web services has to be discovered and selected. There exists many web services that provide the same functionality but they differ in the way the non functional properties are provided. Non

6662

International Journal of Applied Engineering Research ISSN 0973-4562 Volume 10, Number 9 (2015) © Research India Publications ::: http://www.ripublication.com

then calculated and on the basis of these distance the web services can be ranked and recommended to the user.

a fuzzy web service discovery to represent subjective and fuzzy opinions and for assisting web service consumers and providers in reaching a consensus. It achieves common agreement on different opinion and expectation of service provider and consumer. This process is made iterative so that further fuzzy preferences and opinions can be added to increase the precision of the service search. Numerous approaches had been done on ranking the web services based on graph theory and social network analysis. In [4] service networks are investigated. In this research web service ranking is presented as a quantitative metric to illustrate the importance of a service within its network. In order to illustrate the importance of need for new approach for web service discovery and selection we analysed the above said approaches. Keyword based discovery suffers from its own limitations. It lacks the semantics in discovering the web services. In ontology based web service discovery, service interface needs ontology enabled format such as WSMO, SAWSDL or OWL. For such an ontology development, service providers have to spend lot of time. On other hand, one cannot completely rely on association rule mining. In addition it would not let to discover new rules and services that are new to the business process. Further most of the current context aware approaches do not focus on the service interface. O.Thomas et al. in [3] says that decision situations are habitually characterized by their fuzziness. This implies that the premises for making decisions are not readily available in the form of numerical value or mathematical model. They are rather available as fuzzy conditions as ―high reliability‖ and ―low cost‖. Hence fuzzy logic based approach is best suited for making decision on QoS that the service guarantees according to the user need. So we propose a semantic methodology for discovering the web services and transform fuzzy match making process into service selection process.

Related Work In this section various work carried out by researchers related to web service discovery and selection are illustrated. One of the most popular technique used for matching the service description with that of user query is through keyword search technique. Term Frequency/Inverse Document Frequency (TF/IDF) [6] and WordNet [7] ontology are used by Stroulia and Wang [5] to find the similarity between the user query and the service description and proposed Woogle [8] search engine. One more approach involves feedback based web service discovery. It uses the feedback or comments from the consumers who had already used the web service. U. Chukmol et al. proposed a collaborative tagging system in [14] and associates tag to each web service. Tags are keywords or labels provided by various users and a tag weight is assigned. For effective discovery of web service, the user query keyword is matched with the associate tag of the web service. If exact match is not found, it checks whether the synonym word matches by generating the synset with the help of WordNet [7] Another category of research involves the creation of domain ontology for web service. Semantic annotation method (SAWSDL) [9, 10] was used by Verma et al. to improve the search by incorporating semantics into the WSDL. Martin et al. in [11] described web service semantically and stored semantic information in UDDI registry. Context awareness is another possible solution for web service discovery. Rang and Liu [12] states that gap between the issued service request and the real use of web service requirement can be bridged with the help of context awareness. The match making methods for web service discovery were categorized into personal profile oriented context, usage history oriented context, and process oriented context and other contexts. A platform for performing the web service discovery on basis of structural and behavioral model as well as context was proposed in [13] by Spanoudakis et al. Shang-Pin Ma et al. Proposed a system for web service composition [20]. The authors had done contextual binding for service composition. If the the exact input and output of services and user does not match a contextual binding is done. Here the services are composed in a way the service that satisfies the input condition is composed and fed as input to the other service that provides the output for the user. In contrast to the above approaches, Z.Haung et al proposed association rule mining to mine the event logs[1]. It uses the ordered correlations among the items in the event log to discover the services. In addition there exists fuzzy logic based web service discovery and selection. In [2] C.L.Haung proposed

Proposed System The proposed system automatically discovers the web services that match the functional properties of the services. The best web service is then selected based on the given non functional property parameters that user needs to satisfy them. This system uses the description logic program as the backbone for service discovery. The proposed system architecture is shown in figure 3.1. It consists of two layers, i) Web Service Discovery and ii) Web Service Selection. 3.1 User Interface It is an interactive interface between the user and the system. Users can provide their requirement for the web service through this interface and the system recommends the most appropriate web services with this interface. It is built as a java swing application.

6663

International Journal of Applied Engineering Research ISSN 0973-4562 Volume 10, Number 9 (2015) © Research India Publications ::: http://www.ripublication.com

3.2 Web Service Discovery The service discovery consists of three components namely i) Horn Clause Logic Creator ii) Incident matrix Definer and iii) Service retriever.

3.

Goal: Conclusion does not exist. i.e, A1^A2^…. ^ An . It is also called as objective.

Our interest lies in the evaluation of goal statement as the request from the user specifies their interested specification for a web service. Our ultimate aim lies in providing the conclusion for the goal statement as a web service. The horn clause logic created from the WSDL documents are simply called as rule. 3.2.3 Incident Matrix Definer Incident matrix definer creates an incident matrix for the input and output requirement specified by the user. The incident matrix is of order m*n where m corresponds to the number of services providing the user requirement and n corresponds to the number of service specifications specified by user. For simplicity consider an instance of online income tax calculation service. Basic Pay, HRA, PF, Insurance, House Loan are some of the input and Tax should be paid will the output for this service. Then the online income tax service calculation incident matrix would have BasicPay, HRA, PF, Insurance, HouseLoan and Tax as its column. Each row corresponds to a particular online income tax calculation service. For instance one row may indicate premium calculator service while other may point to EMI calculator service and so on. Algorithm I illustrates the Incident matrix formation. The value minus one (-1) of the matrix indicates the presence of specific service for a particular web service as an input requirement. The value one of the matrix indicates the presence of specific service for a particular web service as an output requirement. The value zero indicates the absence of specific service for a particular web service.

Figure 3.1 \ System Architecture

3.2.1 Web Service Crawler Web Service crawler or simply called as crawler, traverses the web through internet and retrieves a list of WSDL documents for the web services. This list is then given to the horn clause logic creator. 3.2.2 Horn Clause Logic Creator It creates the first order horn clause logic program from the web service description documents. It consists of WSDL parser to parse the web service descriptions specified in Web Service Description Language (WSDL). WSDL document contains technical information’s that can be understood by the machine in an XML format. Information’s like messages, port type and binding protocol for the services that are extracted from the WSDL through WSDL Parser are used to create a first order horn clause logic program. First order logic program created will be of the form, A1^A2^…. ^ An  B ----------------- (3.1) where A1, A2, .., An are called premises and B is called conclusion i.e, if all of the premises are true then a conclusion B can be drawn to be true. Here A1, A2… An are the services or functionalities and B represents the web service. Horn clause logic can be categorized [16] into 1. Rule: Both premises and the conclusion exists, eg: A1^A2^…. ^ An  B. 2. Fact : Premise does not exists and only conclusion exists, eg: Q

Table 3.1 gives an example of Incident matrix . Input: Rule Set (R), Input Set (I) Output: Incident Matrix, Mn*m Begin Step 1: Mn*m = {0}. Step 2: for each Ri , i=1 to n. for each Rj , ,j=1 to m if Ij

premise of Ri , then Mij=-1

elseif Ij conclusion of Ri, then Mij=1 Step 3: Return matrix Mn*m . End Algorithm I: Incident matrix Formation

6664

International Journal of Applied Engineering Research ISSN 0973-4562 Volume 10, Number 9 (2015) © Research India Publications ::: http://www.ripublication.com

Finding the base for T-invariant (set α) would eliminate the redundant and inappropriate web services that would be suggested to the user.

3.2.4 Service Retriever Service Retriever is responsible for suggesting a list of semantic web service for service selection. Service Retriever eliminates the web services that fail to satisfy the functional properties of the user requirement. It does so by finding the T-invariants on the Incident matrix. Algorithm II specifies the service discovery with the help of Tinvariant technique.

3.3 Web Service Selection Among the several web services suggested through Tinvariant technique, the best service that also suits their non functional parameters should be selected and ranked according to their meeting criteria. Non functional parameters include properties like response time, throughput, location of web service and so on. To check whether the web service meets the consumer requirement, the previous consumer’s log is analyzed and their corresponding rating for each non functional parameter is obtained. The rating for the web service parameter would be linguistic variables such as low, medium and high. For fuzzy matchmaking, a threshold is specified using the triangular fuzzy number as described in [17]. Table 3.2 shows the linguistic variable and their corresponding fuzzy triangular number.

BasicPay HRA PF … Insurance HouseLoan Tax -1

-1

-1 … -1

-1

1

Retirement -1

-1

-1 … -1

-1

1

-1

-1

-1 … -1

-1

1

RealReturn -1

-1

-1 … -1

-1

1

premium

. . EMI

Table 3.1 Incident Matrix Instance

Input: Incident Matrix, Mm*n and Service, s Output: τ = {x/x  T-invariant} Begin Step 1: Augmented Matrix B = [M | I]

Linguistic Variable

Fuzzy Triangular Number

Very Low

0,0,0.25

Low

0,0.25,0.5

Medium

0.25,0.5,0.75

High

0.5,0.75,1

Very High

0.75,1,1

Table 3.2 Triangular Fuzzy Number for Linguistic Variable

Step 2: for i = 1 to n insert a new row making ith column zero using positive coefficient linear combination of any two rows.

3.3.1 Fuzzy Decision Matrix Creation A fuzzy decision matrix of order m*n is created from fuzzy triangular number. m specifies the number of web services that come from the T-invariant analysis and n specifies thrice the number of non functional parameters that are chosen for service selection. Here the number of column is multiplied by three as for each non functional parameter we are assigning triangular fuzzy number. The fuzzy decision matrix would be in the following structure

if ith column element of any row is non zero then delete it from B. Step 3: Delete n columns from B and insert remaining elements into a set α. Step 4:  x  α, if s  ||x|| then µ = µ  {x}. Step 3:  x  µ,  s  ||x||, if its corresponding behavioural constraint is compatible with that user then τ = τ  {x}. Step 4: Return τ.

D=

WS1 WS2

C1 x11 x21

WSn

xn1

C2 ….. Cn x12 ….. x1n x22 ….. x2n … xn2 ….. xnn

-------- (3.2)

Algorithm 2: Finding T-invariant support web services

The aggregated fuzzy decision matrix is then calculated from each consumer fuzzy decision matrix. Each

6665

International Journal of Applied Engineering Research ISSN 0973-4562 Volume 10, Number 9 (2015) © Research India Publications ::: http://www.ripublication.com

value in the aggregated fuzzy decision matrix is calculated as, -------------- (3.3)

Thus our system selects and suggests the web services with the condition that meets the first case to the user. The services are ranked in the ascending order grouped by distance value, dL+. This is because, more the dL+ value, less the service meets the QoS criteria of user.

where k is the number of consumers considered for service selection. The aggregated fuzzy decision matrix should be then normalized. This normalization involves the linear scale transformation of calculation scale into comparable scale. The normalized matrix value, r ij is computed as, r ij = (xij /c) where c = maximum of xij. The normalized matrix satisfies the property that the values lie within the fuzzy member range ie in the interval [0,1].

Experimental Evaluations Our system had been implemented over Jena semantic web framework. Apart from services retrieved from web service crawler, WS-DREAM dataset described in [18, 19] that contains 5825 web services were also used for our experimental purpose. The first order description logic program called rule is created for all the above retrieved web services by parsing their WSDL file through WSDL parser. The incident matrix is then formed by matching the user query with the created rule. The Tinvariant algorithm described in algorithm 2 had been run on the incident matrix to retrieve the most appropriate semantic web services that meets the functional properties of the user query. Among those services, the service that does not match their non functional criteria are avoided and ignored by considering the previous customers rating in the log. This was achieved by creating the fuzzy decision matrix from the linguistic rating of web services by consumers. Finally the services that meet the distance metric criteria are selected and suggested to user and ranked as most appropriate web services. The performance of the system was measured using the metrics precision, recall and f-measure. Precision (P) is exactness and recall (R) is completeness of the system. F-measure (F) is the weighted harmonic mean of precision and recall. These metrics are defined as follows

3.3.2 Distance based service selection The business optimization team should predefine the acceptance (L+) and avoidance level (L-) of risks for each non functional parameter of the web service. Acceptance and avoidance level of risk could be the different for different business process. The matching of web service would be based on the positive ideal (WS+) and negative ideal (WS-) web services. They can be represented as, WS+ ={ws1+, ws2+, … , wsn+} WS- ={ws1-, ws2-, … , wsn-} Where wsj+=(0,0,0) and wsj-=(1,1,1) Next step involves the calculation of the distances of each web services from both positive and negative ideal web services. If (m1, m2, m3) and (n1, n2, n3) are the two fuzzy triangular number then the distance between them is calculated using Euclidian distance formula as follows ----------------- (3.4)

------------- (4.1)

--- (4.2)

Using this distance metric, we calculate the acceptance and avoidance level of distances from positive ideal (WS+) and negative ideal (WS-) web service as dL+ and dL-. In similar way each web service distance from WS+ and WS- are calculated as, -------------------------- (3.5) -------------------------- (3.6) Based on the acceptance and avoidance level of distances, it can be determined whether the service can be selected or ignored for recommending to user. Based on these distance we infer the following results.

--------------------------------------------------------- (4.3)

For evaluating our system, 20 queries were fed to the system. Each query generated were in the increasing order of their complexity and ambiguity. The retrieved results for each query are shown in figure 4.1.

Case i) di+ ≤ di- : WSi can be accepted. Case ii) di+ ≤ dL- : It is better to avoid WSi and thereby reduce the risk in accepting it. Case iii) di+ ˃ dL+ and di- ˃ dL- : WSi can be accepted or rejected based on the consult from the business domain expert.

6666

International Journal of Applied Engineering Research ISSN 0973-4562 Volume 10, Number 9 (2015) © Research India Publications ::: http://www.ripublication.com

[4] J. Gekas. Web service ranking in service networks, in: Poster Proceedings of European Semantic Web Conference (ESWC 2006), Budva, Montenegro, June 2006.

0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0

[5] E. Stroulia, Y. Wang, Structural and semantic matching for assessing Webservice similarity, Int. J. Coop. Inf. Syst. 14 (4) (2005) 407–437. [6] G. Varelas, E. Voutsakis, P. Raftopoulou, E.G. Petrakis, E.E. Milios, Semantic similarity methods in WordNet and their application to information retrieval on the Web, in: Proceedings of the 7th Annual ACM International Workshop on Web Information and Data Management, WIDM’05, 2005, pp. 10–16.

Precision

Recall F-measure

[7] G.A. Miller, WordNet: a lexical database for English, Commun. ACM 38 (11) (1995) 39–41.

1 2 3 4 5 6 7 8 9 1011121314151617181920

[8] X. Dong, J. Madhavan, A. Halevy, Mining structures for semantics, ACM SIGKDD Explor. Newsl. 6 (2) (2004) 53–60.

Query Figure 4.1 Performance Analysis

[9] K. Sivashanmugam, K. Verma, A. Sheth, Discovery of Web services in a federated registry environment, in: Proceedings of the IEEE International Conference on Web Services, ICWS’04, 2004, pp. 270–278.

From the above graph it is observed that the system maintains consistency in all the metrics though the ambiguity and complexity is increased in the query.

[10] K. Verma, K. Sivashanmugam, A. Sheth, A. Patil, S. Oundhakar, J. Miller, METEOR-S WSDI: A scalable P2P infrastructure of registries for semantic publication and discovery of Web services, Inf. Technol. Manage. 6 (1) (2005) 17–39.

Conclusion and Future Work The usage of web service has increased tremendously in today’s world. The selection of best web service that meets the user criteria is proposed in this paper. Here web services are discovered through semantic technology and web service selection is made based on fuzzy logic. Incorporating semantic technology makes the system more intelligible and also fuzzy logic based service selection would make the system to retrieve more meaningful web services to the user. T-invariant analysis in the system makes sure that the system retrieves the most correct web services relevant to the user’s functional requirement. The experimental analysis of the system shows that our system behaves in a consistent way though the complexity of query is increased. Further the system has high precision and high recall. In future, we have a plan to create the rule by considering SLA and SDC documents in addition to WSDL documents and to discover, select and compose the web service. References

[11] D. Martin, M. Burstein, D. Mcdermott, S. Mcilraith, M. Paolucci, K. Sycara, D.L. Mcguinness, E. Sirin, N. Srinivasan, Bringing semantics to Web services with OWL-S, World Wide Web 10 (3) (2007) 243–277.

[1] Shang-Pin Ma, Ci-Wei Lan, Chia-Hsueh Li, ―Contextual service discovery using term expansion and biding coverage analysis‖, in Future generation of computers, Elsevier, 2014.

[18] Zibin Zheng, Yilei Zhang, and Michael R. Lyu, ―Distributed QoS Evaluation for Real-World Web Services,‖ in Proceedings of the 8th International Conference on Web Services (ICWS2010), Miami, Florida, USA, July 5-10, 2010, pp.83-90.

[12] W. Rong, K. Liu, A survey of context aware Web service discovery: From user’s perspective, in: Proceedings of the 2010 Fifth IEEE International Symposium on Service Oriented System Engineering, SOSE’10, 2010, pp. 15–22. [13] G. Spanoudakis, K. Mahbub, A. Zisman, A platform for context aware runtime Web service discovery, in: 2007 IEEE International Conference on Web Services, ICWS 2007, pp. 233–240. [14] Chukmol U, Benharkat A, Amghar Y, ―Enhancing Web Service Discovery by using Collaborative Tagging System‖,4th International Conference on Next Generation Web Services Practices, IEEEXplore, 2008, pp. 54-59. [15] FranzBaader, IanHorrocks, UlrikeSattler, ― A hand book of Knowledge Representation‖, edited by F. van Harmelen, V. Lifschitz and B. Porter, 2008. [16] Antoniou, Grigoris, and Frank Van Harmelen( 2004) ‖A semantic web primer‖, MIT press, pp. 115-118. [17] J.J. Buckley, Possibilistic linear programming with triangular fuzzy numbers, J.Fuzzy Sets Syst. 26 (1) (1988) 135–138.

[2] C.L. Huang, C.C. Lo, K.M. Chao, M. Younas, Reaching consensus: a moderated fuzzy web services discovery method, Inform. Softw. Technol. 48(6) (2006) 410–423.

[19] Yilei Zhang, Zibin Zheng, and Michael R. Lyu, ―Exploring Latent Features for Memory-Based QoS Prediction in Cloud Computing,‖ in Proceedings of the 30th IEEE Symposium on Reliable Distributed Systems (SRDS 2011), Madrid, Spain, Oct.4-7, 2011.

[3] O. Thomas, T. Dollmann, P. Loos, Rules integration in business process models– a fuzzy oriented approach, J. Enter. Model. Inform. Syst. Architect. 3(2)(2008).

[20] Z. Huang, X. Lu, H. Duan, Mining association rules to support resource allocation in business process management, Expert Syst. Appl. 38 (2011) 9483–9490.

6667