Abstract
Using Web services to assess data in a distributed configuration, apart from different hardware and software platforms for employing standard criteria, is practical because of development in the Internet and network infrastructure. Distributed applications can transfer data using web services. Trust is the main criterion to select the appropriate web service. Neuro-fuzzy systems including clustering are applied to assess the trust of single web services. This paper considers nine criteria including quality of service, subjective perspectives, user preference, credibility of raters, objective perspectives, dynamic computing, bootstrapping, independency and security. To obtain a neuro-fuzzy system with high prediction accuracy, the paper considers eight neuro-fuzzy membership functions (i.e., trapmf, gbellmf, trimf, gaussmf, dsigmf, psigmf, gauss2mf, pimf) using the k-means clustering. Also, to increase the speed and reduce the fuzzy rules, a three-level neuro-fuzzy system (13 neuro-fuzzy) is investigated. The main target of this paper is evaluating the trust of single web services using the nine aforementioned criteria, as web services selection is a main issue which is still absorbing researchers to conduct research works on this field and analyze it. Ultimately, the results show reasonable root mean square error (RMSE) amount, precision value, recall value, and F-score value. In comparison to previous research works, this study obtained the lower amounts of errors and presents the more accurate trust of single web services.
Introduction
These days, numerous web services (WSs) have been published because of the fast development internet. WSs are considered as novel solutions for building enterprise application systems. These services can share the services of various organizations utilizing facilities based on services, for reasons such as ease of performing, the possibility of reuse, and the affordable cost [1]. They are software systems which are designed to support interoperable machine-to-machine interplay on a network [2].
WSs are software systems that can be published, discovered, and invoked easily because of their loosely coupled nature [3]. A WS is a self-explaining software that can be located, utilized, and advertised throughout the web by applying a series of standards including: SOAP (Simple Object Access Protocol): this is an XML-based protocol allowing WS to interchange their information via HTTP. WSDL (WS Definition Language): this describes the location, the details of the web and how to utilize WS. UDDI (Universal Description, Discovery and Integration): this is a handbook to store data on a different WS.
WS supports direct interplays with other software applications employing XML-based messages via Internet-based applications [4].
Generally, WS includes community, composite, and single structures. Single WSs are facilities that respond to user demand alone. For the demands of users who do not obtain a demand via a single WS, composite WS has organized a set of single services. Also, community WSs contain a couple of SWS or combined WS with various non-functionally and the same functionally abilities. The SWS, used for performing and optimizing community and composite WS, is the base of WSs [5].
Trust was considered as a subjective probability that an agent has around the behavior another’s future. Trust is a necessary and significant criteria which can be applied by a consumer to choose the most appropriate services [6]. Trust plays a significant role in WS. It is typically a positive expectation or belief regarding the comprehended dependability, reliability, and confidence in a person, a smart organization, object, agent, or system [7]. Because of the large number of WSs, selecting more accurate WS is of great significance [8]. Employing more exact WS leads to higher performance of evaluating systems in different applications and the possibility of discerning reliable information and sources from false ones and distinguishing inappropriate services from decent ones [9]. In relation to WSs, a trust model is a technique enabling decision makers to recognize decent services form inappropriate ones according to the feedbacks of users. The significance of trust models in WSs emanates from their capability to enable service providers and users to distinguish among the services presenting analogous functionalities according to how well such services did in the past history.
Fuzzy logic contributes to deal with the uncertainty in computer engineering. It might not present exact reasoning; however, it can present acceptable reasoning. Numerous research works have been conducted on fuzzy logic matters [6]. Neuro-fuzzy, which is beneficial for decision making by considering multiple inputs to present a single qualitative output, is a mixture of fuzzy logic and artificial neural networks [10].
Clustering is defined as a non-supervised learning method that divides data objects into different clusters to make the similarity between various clusters minimal and the similarity between objects in one cluster maximal. Regarding the increasing growth of WSs development, clustering is of high demand. This technique is employed for WSs selection and discovery, thereby resolving the challenge of low exactitude of WSs [11]. Hence, clustering has been used in various fields. [12–15].
The remainder of this paper is structured as follows: A literature review of recent papers is presented in Section 2. In Section 3, the trust is assessed in this study by evaluating a model for SWS including nine criteria with sub-terms. Next, a three-level neuro-fuzzy system with clustering algorithms are presented for obtaining more precise SWS according to these criteria. The simulation tests and assessing the results are expressed in Section 4. Ultimately, the conclusion is made in Section 5.
Previous works
Trust is an effective mechanism for achieving reliable service. This concept is essential for accepting and using new services. Previously, the level of trust has been an important topic in choosing WS, especially when a client seeks a service among different services [16]. It plays an important role in optimization processes due to the open and dynamic environment of WSs [17]. As a client searches for a desirable service from a wide range of services presented by various providers, the service trust level is a very significant issue.
The classifications of WS including community, composite and single WS were explained in [5], where the efficient criteria to evaluate trust for such WS were described. Additionally, they defined a series of models employed in the previous studies for evaluating WS. Generally, there are several models for evaluating single WS based on fuzzy, data mining, statistical, and feedback. Recently, researchers have investigated these methods to assess, estimate, and model single WS trust. These models are presented as follow briefly:
•Feedback based models
Feedback models are defined based on the opinion of gathering visits of an especial WS. In the next steps, some visits are made for creating a particular level of trust for the WS. A consumer or producer can be the source of the visit. The information produced by the consumer includes online visits done on users who are related to the service prepared within recent interactions. To evaluate such a parameter in WS, in [18] five criteria (i.e., quality of service, user preferences, objective and subjective perspectives, dynamic computing and independency) were used based on the feedback obtained from the opinions of previous users. In this paper, a multi-agent framework based on ontology is developed to assess the quality of the service. After that, a new model is presented in which the providers declare their services and users set their priorities. Ultimately, the services’ ranking is made and shared. The mentioned five criteria were considered in this article. The authors employed feedback techniques to evaluate the trust of SW services while they did not consider bootstrap strategy, credit ratings and security. Similarly, in [19], a feedback-based model was employed as well as considering four criteria including quality of service, user preferences, the credibility of raters, and the dynamic computing. This article presented a framework based on reputation services providing trust services for evaluating the credibility of service providers. In this technique, the consumer of the service presented an appropriate weight based on different votes of the evaluators regarding future service providers.
•Statistics based models
For describing the correlation between a set of variables acquired from mathematical equations, overall statistical models are employed. In a single WS, minor statistical models are employed for calculating the trust’s values for WS. These models depend on the feedback of visits done by users or producers, which may be incredible.
This is one of the main challenges of feedback-based techniques. However, it can be tackled by considering numerous sources of trust and applying the statistical techniques for combining them. References [20, 21] employed statistical models to assess SWSs. In [20], the authors considered four criteria (quality of the service, user preferences, credibility of raters, dynamic computing) for such a goal. This paper presented a framework named RATE web to assess the trust in service-oriented environments. The overall target of the RATE web is making the choice easy and combining the choices based on trust. In this framework, WSs shared their experiences, obtained from service providers, with their counterparts through feedback comments. Ultimately, the authors presented a statistical technique for combining the criteria of service providers and for calculating the credibility of service providers. Additionally, this paper compared the framework with previous methods and, finally, managed to obtain better results. The existing service web trust models do not aggregate different sources of trust (objective and subjective). Moreover, they do not concentrate on different attributes such as efficiency and accessibility. For this reason, in [21], four criteria including QoS, user preference, dynamic computing, and credibility of raters were employed to assess trust. In this article, the trust was evaluated using the bayesian network. This reference presented a reputation model and a bayesian network for WSs. This technique considered different states for the bayesian network for addressing the problems of user’s priorities and the trust-based on multi-parameters of service quality. However, statistical techniques evaluate trust by combining several types of trust sources and thus they cannot present initial trust for the new WSs.
•Fuzzy logic based models
In [22–24], fuzzy logic model was employed for assessing trust in single WSs. Six criteria were considered by [22] for evaluating trust in SW services in their fuzzy systems. Three criteria including bootstrap strategy, security, and the dynamic were not considered by the authors. The paper estimated the user’s behavior ranking based on three parameters including time response, accessibility, and efficiency, in WSs. The authors considered time response and accessibility as ‘objective’ perspectives while they considered efficiency as ‘subjective’ perspectives. Additionally, the article expressed the user’s behavior ranking based on the aforementioned parameters as a criterion for reputation and WSs ranking. They presented a management framework of a fuzzy system that determines the subjective perspectives of trust for WSs requested by consumers. Although this paper considered fuzzy methods based on users’ requests, it took into account neither the bootstrapping strategy nor the details and the grouping of a WS [23]. They employed a three-level fuzzy technique. For calculating single WS, this paper changed subjective and objective perspectives to two disparate subjective perspectives and objective perspectives. Ultimately, it evaluated eight obtained criteria using a three-level fuzzy technique [24].
•Data-mining-based models
Data mining is commonly used in various areas such as engineering, business, science, and medicine. Despite its high efficiency, this technique is not employed for development and operation in the area of reputation matters in WS. This technique is typically used for evaluating the trust of service quality. In [25], QoS was calculated in single WSs. In this study, text mining, a subcategory of data mining methods, was employed to analyze the opinions of users. The authors considered four criteria including independency, bootstrap strategy, user preference, and QoS. Also, in [26], a trust-aware method TAP was proposed for reliable personalized QoS estimation. First, the users were clustered and then the users’ reputation was computed based on the clustering data by using a beta reputation system. Second, a series of reliable analogous users were introduced based on the computed similarity and reputation of users. Ultimately, the paper recognized a series of analogous services by clustering the services and building a prediction for active users by mixing the analogous services and the QoS data of the reliable analogous users. Several researchers applied clustering in different fields of WSs. In [27], a hybrid quality of service prediction way was presented to cluster the WSs. They cluster WSs into service clusters in which services have the same physical environment. Then, the similarity between users was computed based on these service clusters instead of individual services so that there is more information to be used when calculating the similarity. The results of this study contribute to elevating the prediction precision. In [28], the authors proposed a survey based on the clustering of WS discovery techniques. This article gives an overview of the significant issues of the different methods and discusses the lack of technologies and automatic tools of the WS discovery. In [29], the authors proposed a new technique for WSDL clustering. They obtained good performance for clustering WSs based on function similarity.
In this article, a three-level neuro-fuzzy system considering k-means clustering was employed to obtain an exact prediction of the true faith.
Recommended technique
Trust is a criterion for selecting the appropriate web service. The web service criteria that often qualitative are important for the trust evaluates to help users select the appropriate web service that best achieves their requests. Because of the importance of this issue for evaluating the single WS trust, in this article, nine criteria were employed to develop quality and evaluate the quality terms utilized by neuro-fuzzy and clustering techniques.
These criteria and their terms are explained in section 3.1. Also, the general structure of a three-level neuro-fuzzy system with k-means clustering is explained in 3.2.
Single WS trust criteria
This study considers 9 measures (Table 1). In [5], 7 criteria were considered for this purpose. In [24], subjective and objective perspectives were divided into two groups: subjective perspectives criteria and objective perspectives criteria, and then trust was investigated using 8 criteria. In the present study, each of the subjective and objective perspectives is considered as two separate criteria. Next, a new criterion called security is added to our study.
Qualitative criteria of single web services
Qualitative criteria of single web services
The sub-terms associated with each criterion are investigated more comprehensively. Then, each of these terms is described as follows:
QoS: A series of terms of quality of service that are considered decent for a WS that provides the best of each of those terms can enhance the reliability in that special WS [27, 30]. This article considers the terms of throughput, availability, and response time for the QoS.
User preferences: This is a series of terms determining the inclination of a user to choose a WS provider. This term, which is directly associated with user trust in WS, indicates the user preference to become fulfilled in a greater level [27]. This study considers the terms of majority, infrastructure, maturity, and cost for standard user preferences for WSs.
Subjective perspectives: This criterion includes a series of terms on the base of the intellectual nature and personal decisions of users to influence users in choosing WS. In most cases, the subjective idea of users has a special influence on reliability in WSs. It is of note that these criteria are utilized on trust as feedback of users [31]. This study considers the terms of penalize self-status, gain the advantage of new self-statues, and self-rating for measuring subjective aspects of WS.
Objective perspectives: This criterion includes a series of terms on the base of evaluation or monitoring different user terms on WSs in a special time range called objective perspectives. The service quality is a sub-term of this criterion. In various studies, service quality criteria have been taken into account as a sub-term of objective criteria; however, in this paper, this is taken into account as a separate criterion due to the significance of quality of WS [32]. Additionally, this study considers membership of groups and aggregations of ratings for measuring the aspects of objective WSs.
The credibility of raters: This criterion is applied in a system based on reputation highlighting the role of WS raters on WS trust evaluation. The credit of raters is a decent measure for assessing the exactitude of ranking from various aspects [27]. This paper considers reputation with adequate information, timestamp, and discriminating the incorrect ratings as three criteria for crediting WS raters.
Bootstrapping strategy: Bootstrapping strategy is a criterion considered for evaluating the trust of WS. This criterion refers to starting a self-sustaining procedure that can continue to work without any outer input. Bootstrapping is one of the most significant matters in the trust model. This criterion devotes an initial value of self-confidence to a new member of an unknown system [33]. This article considers adaptive functioning and effectiveness for benchmarking our WS bootstrapping strategy.
Dynamic computing criteria: Typically, WS competencies over time are recognized followed by deduction, which needs a dynamic technique. Service-oriented and WSs architectures should compute the trust accurately with interactions and dynamic based mechanisms [34]. This study takes into account collaborative evaluation and self-adjusting trust for dynamic computation criterion.
Independency criteria: Independency can be investigated from different aspects. So, independence in decision-making must be considered in all sections of trust evaluation techniques [35]. This paper takes into account independency reputation, independency ratings, and independency reputation information.
Security: The security concerns are considered as the major criteria in WS [36]. The security criterion is also a sub-category of the QoS criterion [30]. However, in this study, it is considered as a separate criterion because of the high importance of this criterion in WSs [37]. The user needs to confide the system. This is particularly important in the security Environment [38]. With the increase in the use of WSs, which are delivered over the public Internet, there is a growing concern about security [39, 40]. Authorization is the most important security issue for performing WS transactions [41]. Security is an important part of WS [42]. Security in the WS, which is an indispensable variable [43], means providing authentication, authorization, and confidentiality. This article considers the terms of authentication, authorization, and confidentiality for the security.
The proposed method is considered independent of physical hardware and therefore the details of the hardware were not described. Also, an ideal environment is assumed in the proposed method, meaning that details such as network topologies and transmission media reliability calculations and network delays were not included in the exchange of information between systems.
To evaluate the trust of single web services based on criteria expressed in section 3.1, leading to a large number of fuzzy rules, a three-level neuro-fuzzy system was used to reduce the number of the rules in the fuzzy set. As there are nine quality criteria (i.e., quality of service, subjective perspectives, user preference, credibility of raters, objective perspectives, dynamic computing, bootstrapping, independency and security), the number of fuzzy rules are large. To decrease such rules and increase the performance of the system, the proposed method was done in three levels. In other word, 13 neuro-fuzzy system in three level were conducted.
To evaluate the trust of single WS based on aforementioned criteria, in the first level, nine neuro-fuzzy systems assess the quality of nine single WSs trust according to the sub-terms. The output of the first level is the input of the k-means algorithm. Three clusters that are the input of the second level are defined. So, the input of the second level is obtained from the output of the k-means clustering. The inputs of the third level are obtained from the output of the second level. In this technique, the third level has three inputs. Ultimately, in the third level, the neuro-fuzzy system presents the trust of single WSs. Figure 1 illustrates a detailed diagram for understanding the proposed a three level neuro-fuzzy system.

Detailed diagram a three level neuro-fuzzy system.
At the first level, neuro-fuzzy systems assess the quality of nine criteria single WSs trust according to the sub-terms, meaning that the sub-criteria of the nine criteria were entered to the neuro-fuzzy system. The output of the first level is the input of the k-means algorithm. These nine criteria should be entered to the second level of the neuro-fuzzy system. In this level, there are three neuro-fuzzy systems. The nine criteria of the first level can be randomly entered to the second level of the neuro-fuzzy systems, but to increase the accuracy of the proposed method, the data were clustered so that the inputs of each neuro-fuzzy system at the second step are clustered based on the similar data. For this reason, the K-means clustering was applied. Due to having three neuro-fuzzy systems in the second level, the number of the clusters was considered 3 (K = 3). Finally, after performing K-means clustering, each cluster is entered to a neuro-fuzzy system in the second level. So, the input of the second level is obtained from the output of the k-means clustering. In other words, three clusters are the input of the second level. Finally, the inputs of the third level are obtained from the output of the second level and the third level has three inputs. Ultimately, in the third level, the neuro-fuzzy system presents the trust of single WSs. Figure 2 illustrates a three-level neuro-fuzzy system with k-means clustering of the considered system.

A three level neuro-fuzzy structure with clustering.
Briefly: The neuro-fuzzy systems were used to evaluate the trust of the single WS, which is a new method that gives better results compared to the previous methods. The k-means clustering in the proposed method was used to increase the accuracy of the trust.
A three-level of neuro-fuzzy systems considering k-means is explained in section 3 for evaluating the WS trust. This paper considers 9 criteria (Table 2). The features of a three-level neuro-fuzzy system are presented in section 4.1. Performance evaluation parameters are presented in section 4.2. Experiments are presented in section 4.3. Finally, comparison with other methods are presented in section 4.4.
Some techniques employed to evaluate trust in single web services (Comparison)
Some techniques employed to evaluate trust in single web services (Comparison)
The method proposed in this study has 9 criteria (Table 2) that were considered to evaluate SW services trust (performed by MATLAB Software). After loading the data in MATLAB software, the proposed method codes were executed on the data. For creating neuro-fuzzy systems, a single WS trust Database from Amazon WSs [44] was applied. This dataset consists of 1100 records of which 800 was assigned for training (for creating the neuro-fuzzy systems) and 300 for testing. The properties stated in this paper were used to assess single WS trust in the dataset. Following, the neuro-fuzzy systems are expressed in details.
Eight membership functions of the neuro-fuzzy system such as trapmf, gbellmf, trimf, gaussmf, dsigmf, psigmf, gauss2mf, pimf are used to implement the proposed method. These functions are explained in section 4.1.1. Also the k-means algorithm was used to cluster the criteria of the first level as explained in 4.1.2.
The membership functions of neuro-fuzzy system
Trapmf (Trapezoidal membership function): Is a function of a vector, x, and depends on four scalar parameters a, b, c, and d, as given by Equation (1).
Gbellmf (The generalized bell shaped membership function): Is a symmetrical shape similar to a bell as given by Equation (2). This function employs three parameters: “a” determines the width of the bell-like curve, b is a positive integer, while c sets the center of the curve in the universe of discourse.
Trimf (triangular membership function): Is defined by three parameters for defining three points: a, c for feet, and b for the tip of the curve as given by Equation (3).
Gaussmf (Gaussian curve membership function): The symmetric gaussian function depends on two parameters However, among all three membership functions mentioned above, it utilizes only two parameters: c for locating center and σ for determining the width of the curve as given by Equation (4).
Dsigmf (Difference between two sigmoidal functions membership function): Depends on four parameters, a1, c1, a2, and c2, and it is the difference between two of these sigmoidal functions. f1(x; a1, c1) - f2(x; a2, c2). The parameters are listed in the order: [a1 c1 a2 c2]. The sigmoidal membership function used depends on the two parameters a and c (Equation (5)).
Psigmf (Product of two sigmoidal membership functions): The sigmoid curve plotted for the vector x depends on two parameters a and c as given by Equation (6).
psigmf is simply the product of two such curves plotted for the values of the vector x f1(x; a1, c1) ×f2(x; a2, c2). The parameters are listed in the order [a1 c1 a2 c2]. Gauss2mf (Gaussian combination membership function): The gaussian function depends on two parameters sig and c as given by Equation 7.
The function gauss2mf is a combination of two of these two parameters. The first function, specified by sig1 and c1, determines the shape of the left-most curve. The second function specified by sig2 and c2 determines the shape of the right-most curve. Whenever c1 <c2, the gauss2mf function reaches a maximum value of 1. Otherwise, the maximum value is less than one. The parameters are listed in the order: [sig1, c1, sig2, c2]. Pimf: Is a type of contribution function operating in which the equation variable x is input and a, b, c, d, are constant values that specify domains of these functions based on Equation (8).
This is one of the most widely used algorithms in clustering. This algorithm groups a given set of data into a few clusters so that data within any clusters are alike while data across clusters are different. Cluster centroids are chosen randomly through a fixed number of K-clusters.
The algorithm partitions the given data into K-clusters, each having its own cluster membership and assigns each data point to the closest centroid. The steps of the k-means algorithm are as follows: Selecting the K data as the centers of pleasure. Determining the distances of other data with cluster centers. Placing data closer to the center of each cluster. In each cluster, calculate the average of each cluster as new cluster centers. Repeating steps 2 to 4 until the clusters do not change.
In the proposed method, a three-level neuro-fuzzy system was used. At the first level, the sub-criteria of the nine criteria were entered to the neuro-fuzzy system (there are nine neuro-fuzzy systems). These nine criteria should be entered to the second level of the neuro-fuzzy system. In this level, there are three neuro-fuzzy systems. The nine criteria of the first level can be randomly entered to the second level of the neuro-fuzzy systems, but to increase the accuracy of the proposed method, the data were clustered so that the inputs of each neuro-fuzzy system at the second step are clustered based on the similar data. For this reason, the K-means clustering was applied. Due to having three neuro-fuzzy systems in the second level, the number of the clusters was considered 3 (K = 3). Finally, after performing K-means clustering, each cluster is entered to a neuro-fuzzy system in the second level.
Performance evaluation parameters
To assess neuro-fuzzy systems, test data are run, and a comparison of assessed trust of this system and dataset real trust is presented. Table 2 illustrates the criteria of previous assessment techniques and the criteria of the proposed method. In this study, first, criteria such as RMSE were employed for 8 functions of the neuro-fuzzy system expressed in section 4-1 to understand which function has the least amount of error. Next, the parameters of precision, recall, and F-score for the function with the least error are performed.
The parameters of RMSE, recall, and precision and F score are expressed in Equations (9–14).
Root-mean-square error (RMSE): Based on Equation (9), RMSE is defined as the differences between the trust amount predicted by the neuro-fuzzy system and those with actual values.
N shows the number of records reviewed, predicted is trust value assessed for the ith record in the neuro-fuzzy system and actual is the number of real trust expressed in the dataset for the ith record, respectively. To assess the proposed method, the trust calculation is used to find whether a user can depend on an SW service. For instance, if the system obtained great levels of trust, the user confides SW service; otherwise, they do not. Precision and recall terms were employed to find the exactitude of techniques. This paper defines precision and recall in four different conditions as below:
Trust: the term applied to compute the precision (Equations (10)–(12))
At: the number of WSs to trust them
Bt: the number of WSs that neuro-fuzzy system does not recommend trust them.
Distrust: the term applied to compute precision, which is as follows:
Ad: the number of WSs which should not be trusted.
Bd: the number of WSs which neuro-fuzzy system does not recommend trust them.
Null: the terms applied to compute the precision are as below:
AN: the number of WSs which have a neutral impact
BN: the number of WSs which neuro-fuzzy system recommend they should not have a neutral impact.
General conditions: This situation (Equation 13) is a combination of three aforementioned conditions and terms, recall, and precision terms are utilized for verifying the technique.
In this study, the F-score criterion is employed to obtain the exactitude of the proposed technique. This criterion establishes an accurate balance between recall and precision criteria based on Equation (14).
For testing, 300 records were considered from a dataset. For 8 neuro-fuzzy functions (trapmf, gbellmf, trimf, gaussmf, dsigmf, psigmf, gauss2mf, and pimf) the RMSE was evaluated as mentioned in section 4-2.
For this purpose, the method proposed for each of the functions was run to find out which error function is at its lowest error (i.e., RMSE). Figure 3 presents the output of the program that was run using the MATLAB. As can be seen, the psigmf function has the least amount of error.

Comparison of RMSE for 8 neuro-fuzzy function.
After knowing that which membership function (psigmf) has the lowest error value among the 8 neuro-fuzzy membership functions (i.e., trapmf, gbellmf, trimf, gaussmf, dsigmf, psigmf, gauss2mf, and pimf), the recall, precision, and F score were measured for the function that has the least error (psigmf) such that to measure the accuracy of the trust.
As can be observed (Fig. 5), the recall has the values of 0.997, 0.988 and 0.998 for distrust, null and trust, respectively.
Figure 4 displays the precision amounts in the psigmf. As can be observed, the precision has the values of 0.988, 0.998 and 0.991 for distrust, null and trust, respectively. Figure 5 Compare of recall of neuro-fuzzy psigmf.

Compare of precision of neuro-fuzzy psigmf.

Compare of recall of neuro-fuzzy psigmf.
Figure 6 displays the final values of Precision, recall and F Score of a three-level neuro-fuzzy system with clustering. As can be observed, the precision has the value of 0.991, the recall has the value of 0.994 and the F Score has the value of 0.992.

Compare of precision, recall, F Score of neuro-fuzzy psigmf.
In this section, the proposed method is compared with other models (Table 2). The obtained data are tested based on feedback, statistics, fuzzy system, data mining, and the 3-level fuzzy system. Next, the values of their criteria are compared with real trust values for WSs assessment (Figs. 7–11)

Comparison of RMSE obtained from other methods and that of proposed method.

Comparison of precision obtained from other methods and that of proposed method.

Comparison of recall obtained from other methods and that of proposed method.

Comparison of F Score obtained from other methods and that of proposed method.

Comparison of time obtained from other methods and that of proposed method.
A comparison of RMSE values in a three-level neuro-fuzzy system with clustering and other types of models is demonstrated in Fig. 7. In the proposed method, RMSE is 0.085%, which has a lower amount compared to previous techniques (form 2.3% to 5.3%).
A comparison of precision between a 3-level neuro-fuzzy system with clustering and other models is shown in Fig. 8. The values of this precision range from 0.955 to 0.981, while it is 0.991 in the proposed method.
A comparison of recall between the 3-level neuro-fuzzy system with clustering and other models is shown in Fig. 9. The values of this recall are ranged from 0.942 to 0.986, while it is 0.994 in the proposed method
A comparison of F score between the 3-level neuro-fuzzy system with clustering and other models is shown in Fig. 10. The values of this F score are ranged from 0.948 to 0.982, while it is 0.992 in the proposed method.
The performance assessment time of WS trust for previous models and proposed method is shown in Fig. 11. The fastest time of the run is 4.08 s, which is related to statistical techniques, while the time is ranged from 4.59 to 6.57 s for other techniques. The run time in the proposed method is 7.9, which is the largest value compared to the other techniques. This is due to doing further measurement to evaluate the WSs trust using clusters in the considered neuro-fuzzy system.
The main goal of this study was assessing the trust of single web services applying the nine criteria, because web services selection is a main issue which is still absorbing researchers to conduct research works on this field and analyze it. Therefore, this paper evaluated the trust of single web services considering quality criteria in choosing single WSs. Ultimately, in the considered neuro-fuzzy system with clustering, nine criteria (i.e., QoS, user preference, credibility of raters, objective perspectives, subjective perspectives, dynamic computing of trust, bootstrapping, independency and security) were considered. To increase the speed and decrease the cumbersome rules, a three-level neuro-fuzzy system with clustering was considered.
Eight membership functions of neuro-fuzzy systems (i.e., trapmf, gbellmf, trimf, gaussmf, dsigmf, psigmf, gauss2mf, and pimf) in the 3-level were considered in the MATLAB software to understand which membership function has the least amount of error.
After running these functions, the best membership function of the neuro-fuzzy system, the membership function that has the least error (psigmf) was obtained (RMSE = 0.085). Finally, for psigmf membership function precision, recall, and F score values are 0.991, 0.994 and 0.992, respectively. In comparison to previous studies, this research work attained the lower values of errors and expressed the more accurate trust of single web services
The novelties of this research works are expressed briefly as follow: Neuro-fuzzy method was applied to assess the trust of single web services, which is a new method that gives better results compared to the previous models. 9 criteria that often qualitative are important for the trust evaluates to help users select the appropriate web service that best achieves their requests, were considered in the proposed method. To increase the accuracy of the proposed method first, criterion such as RMSE was employed for 8 membership functions (i.e., trapmf, gbellmf, trimf, gaussmf, dsigmf, psigmf, gauss2mf, pimf) of the neuro-fuzzy system to find which function has the least amount of error. This was due to obtaining the best appropriate membership function among the eight membership functions. Next, the parameters of precision, recall, and F-score for the membership function with the least error (psigmf) are performed to measure the accuracy of the trust.
