Preferences Based Customized Trust Model for Assessment of Cloud Services

In cloud environment, many functionally similar cloud services are available. But, the services differ in Quality of Service (QoS) levels, offered by them. There is a diversity in user requirements about the expected qualities of cloud services. Trust is a measure to understand whether a cloud service can adequately meet the user requirements. Consequently, trust assessment plays a significant role in selecting the suitable cloud service. This paper proposes preferences based customized trust model (PBCTM) for trust assessment of cloud services. PBCTM takes into account user requirements about the expected quality of services in the form of preferences. Accordingly, it performs customized trust assessment based on the evidences of various attributes of cloud service. PBCTM enables elastic trust computation, which is responsive to dynamically changing user preferences with time. The model facilitates dynamic trust based periodic selection of cloud services according to varying user preferences. Experimental results demonstrate that the proposed preferences based customized trust model outperforms the other model in respect of accuracy and degree of satisfaction.


1.
A novel method for trust computation of a cloud service based on the distances of various service evidences from the user preferences.
2. Customized trust assessment mechanism containing mathematical formulation of weights which are computed based on the relative importance of cloud service attributes with respect to QoS expectations of user.
3. Introduction of the concept of elastic trust computation of a cloud service and an algorithm for it. 4. Mechanism for ranking of cloud services based on trust computation which is dynamic, elastic and considers preferences of users. 5. Comparison of the proposed trust model with other model with regard to accuracy and a new measure of degree of satisfaction of trust assessment.
The paper is organized as follows. Section 2 presents a review of related work. In Section 3, the architecture of the system meant for the proposed trust model and the functional overview of trust assessment are described. Section 4 defines the preferences based customized trust model (PBCTM) and presents the details of customized and dynamic trust assessment. Section 5 presents the algorithm for elastic trust computation of a cloud service. Section 6 depicts the method for ranking of cloud services based on the proposed trust model. Section 7 presents the qualitative comparison of PBCTM with other models. Section 8 covers the performance evaluation of the proposed trust model including the results and analysis. Section 9 concludes the paper.

RELATED WORK
Reputation based approaches make use of feedbacks from many cloud users to evaluate trust of a cloud service. Trust assessment approaches proposed by [13,14,15] are based on reputation. These approaches do not take into account requirements of user for trust evaluation. Moreover, these reputation based approaches fall short in performing dynamic assessment of trust [8].
Besides user feedbacks, few of the approaches in literature, take into consideration additional factors such as provider's self-declarations and expert's ratings, for trust assessment [16]. However, credibility [4] of the factors included in trust evaluation is a main concern in these approaches. Habib et al. [10] proposed an architecture to enable trust assessment of cloud service providers using various factors such as provider statements, user feedbacks and certificates. A trust model based on service level agreement (SLA) parameters is proposed by Pawar et al. [17]. Ghosh et al. [18] proposed a framework for assessment of risk of interaction with cloud service provider. The approach in turn includes evaluating trust of the service provider. The trust is estimated on the basis of direct and indirect interactions ISSN: 2088-8708 between customer and cloud provider. The approaches [10,17,18] do not offer dynamic trust update along a period of time. Also, these approaches do not consider QoS requirements of user for trust assessment. A model is recommended by Moyano et al. [19] to evaluate trust of cloud providers. Although, the approach is simple, trust assessment mainly depends on the accessibility to the information released by the cloud providers.
Few of the approaches do take into account QoS attributes for trust evaluation. The approach proposed by Manuel et al. [20] evaluates the trust of a cloud resource in terms of summation of values assigned to user feedbacks, security level and reputation. A model is suggested by Manuel et al. [21] to compute the reputation based trust of a resource. The model makes use of identity, capability and behavior values of a resource to obtain its trust value. The approaches [20,21] do not consider requirements of users in trust estimation of resources. Also, these approaches do not reflect dynamic trust assessment of resources along a period of time. A fuzzy trust evaluation approach for cloud services is suggested by Huo et al. [22]. The approach takes into consideration a set of cloud service attributes to assess the reputation based trust value. Fan et al. [23] suggested a mechanism for evaluating dynamic trust of a cloud service using multiple attributes. The mechanism of trust computation relies on the feedbacks given by the users. However, authenticity of feedbacks is not addressed by the authors. The approach facilitates selection of a service according to the user requirements for various attributes. However, the approaches [21,22,23] are dependent on subjectively allocated weights to the various factors.
The QoS based mechanisms in literature, make use of availability, performance, security and reliability as the general attributes of cloud service for trust assessment. Throughput, response time, network bandwidth and capability are the usually considered performance related factors in trust estimation. Li et al. [24] proposed a method for dynamic trust evaluation of cloud resources. It makes use of recorded values of various attributes for computation of trust. The authors do not focus on consideration of user requirements for attributes, in evaluating trust value of a resource. Frameworks are proposed by [25,26] for trust evaluation of cloud service providers based on QoS attributes. The approaches are based on monitoring QoS attributes and evaluating the compliance with regard to the SLA. System suggested by [26] incorporates perspectives of different entities such as cloud users, auditor and peers in the process of trust evaluation. Supriya et al. [27] proposed to employ multi-criteria based decision making methods for evaluating trust of cloud service providers. The work facilitates ranking of providers based on their trust values. It offers personalized computation of trust by considering priorities for the various attributes of cloud provider. However, priority based weights assigned to the different attributes are static and subjective. System is proposed by Qu and Buyya [11] for trust estimation of a cloud service based on its performance in terms of various QoS attributes. The approach takes into account QoS requirements of user and computes the trust of a service based on fulfillment of the requirements. However, the approaches [11,25,26,27] do not offer dynamic trust update in cloud environment. A model is proposed by Manuel [28] to evaluate trust of a resource based on its capabilities and measured QoS attributes. Trust update is indicated only by algorithmic steps. The model enables matching the QoS requirements of users to the resources according to their computed trust values. However, static weights based on pre-decided priorities are assigned to the various attributes.
In summary, consideration of user requirements in trust assessment is essential to enable the personalized selection of appropriate cloud services. However, the above review of the related work signifies that only few of the approaches [11,23,27,28] consider requirements of cloud users for trust assessment. Cloud QoS attributes are significant for trust evaluation of a cloud service. Evidences of QoS attributes obtained through monitoring are unbiased in nature and are more dependable factors for trust estimation. However, the approach [23] does not take into account evidences of QoS attributes and trust assessment solely relies on the feedbacks of users. Dynamic cloud environment implies the need for trust to be assessed continuously with time. However, the approaches [11,27] do not offer dynamic trust evaluation of cloud services. Although, the approach [28] takes into consideration requirements of users, weights calculation for various attributes in trust assessment does not reflect preferences of users. Moreover, assessment of trust according to the dynamically changing requirements of the user, is not addressed by any of the above approaches. Our trust model PBCTM, aims to address these limitations in the earlier work. PBCTM performs customized trust assessment of a cloud service by taking into account evidences of service attributes and preferences of user for attributes. Our model facilitates elastic trust computation of a cloud service according to the dynamically changing user preferences of attributes with time. PBCTM enables computation of weights for the multiple attributes of a service by considering the relative utility of attributes with respect to the user preferences. Dynamic trust prediction used in our model, allows ranking of cloud services to assist the user in periodic selection of suitable service. Figure 1a shows the overall layout of the system meant for the proposed trust model. It depicts the main trust assessment and ranking module which is connected with the other supplementary modules. The functional specification collector compiles the functional requirements of the cloud service, submitted by cloud user. Multiple IJECE ISSN: 2088-8708 307 service providers register their services into the service repository. Services Extraction module finds the services from service repository whose functional specifications match with the required one. The user preferences collector compiles the preference values for cloud service attributes such as availability, throughput and response time, which are submitted by the cloud user. Trust assessment and ranking module is the core component performing dynamic and elastic trust computation of the cloud services. For each of the matching cloud services, the trust assessment is carried out by taking into account the user preferences and the evidences of service attributes. The results of trust assessment and ranking are recorded in the customized trust archives. The cloud user can select the appropriate cloud service based on the ranking of cloud services.

ARCHITECTURE OF TRUST ASSESSMENT SYSTEM
The process of monitoring, continuously observes and records the values of attributes such as response time, throughput, availability and security, for each of the cloud services. The evidence collector collects the evidence factors, recorded as part of continuous monitoring process. These evidence factors are then used for trust assessment of cloud services.
Trust assessment and ranking is the main focus of this paper. Hence, the details of other modules which include services extraction, monitoring and related functionalities, are not discussed further, in this paper. We assume these as the already existing valid services and are available in the form of external interfaces to the trust assessment and ranking module. Figure 1b shows the high-level functional overview for trust assessment and ranking of cloud services. The user preferences for various service attributes, are taken as input for the trust assessment. Evidence factors for each of the matching cloud services, over the period of time, are taken as another input by the trust assessment module. The module calculates customized present trust of services at an instant of time, by considering the user preferences and the corresponding service evidence factors. Subsequently, the module performs dynamic prediction of trust values of cloud services over a period of time. The customized present trust and predicted trust values are returned to the cloud user. The ranking of cloud services is performed by the module, based on the predicted trust values of the services. The resultant ranking sequence of cloud services, which is then returned to the cloud user, facilitates the customized selection of suitable cloud service for the user.
The preferences of a particular cloud user may change dynamically with time. Accordingly, the operations of trust assessment and ranking of cloud services are performed repetitively with changing preferences of the user and the continuous evidences of each cloud service. This reflects the dynamic and elastic trust computation of cloud services. The cloud user can revise the selection of a suitable service based on the updated ranking of cloud services. The details of customized and dynamic trust assessments of a cloud service are described in Section 4. The steps depicting the control flow for elastic trust computation are presented in Section 5 in the form of algorithm. The trust based ranking of cloud services is elaborated in Section 6.

PREFERENCES BASED CUSTOMIZED TRUST MODEL
Trust assessment of a cloud service is performed based on the preferences of a cloud user for service attributes and the evidence factors of the service. Evidence factors of a cloud service signify the recorded values of service attributes. Evidence factors of a cloud service are retrieved after every fixed time interval. Representation of the evidence factors is shown by an evidence matrix as: In Equation (1), at a particular time instant i in a time window, such that 1 ≤ i ≤ n, a row in the matrix indicates a sample of evidence factors as {c i1 , c i2 , ..., c im } and each value c ij in the sample, denotes a value of an attribute R j . Thus there are n samples of evidence factors. Column position in the matrix indicates a specific attribute within the sample.
Preferences for the values of cloud service attributes, as specified by the user, are combined with the original evidence matrix, to obtain the augmented matrix, as shown below.
In Equation (2), the last row in the matrix indicates a sample of preferences as {pr 1 , pr 2 , ..., pr m } and each value pr j in the sample denotes a preference value of an attribute R j . For a cloud service, higher values for attributes such as availability and throughput are desired. Whereas, lower values for attributes such as response time and security violation incidents are expected. If the preference value for any of the attributes is not specified by the user, then it reflects that, a minimum quality level for that service attribute is acceptable to the user. Hence, in such case the preference value for the attribute in matrix CP is set to a minimum or maximum value of the service attribute in the time window, based on the higher-value type of attribute (e. g. availability) or the lower-value type of the attribute (e. g. response time), respectively. In order to transform all the values in matrix CP to uniform range and to make them independent of units, values of the matrix CP need to be normalized. Normalization includes scaling of the values. Thus, for further processing of distance computation, each value in the matrix CP is normalized in the range denoted by [R new min , R new max ]. From the perspective of desired performance of a cloud service, attributes can be categorized in two types: one where higher values of an attribute R j are desired and the other where lower values of R j are desired. The category where higher values of R j are desired, the corresponding normalized values x ij and y j for c ij and pr j respectively, are formulated as: IJECE ISSN: 2088-8708 309 The other category where lower values of R j are desired, the corresponding normalized values x ij and y j for c ij and pr j respectively, are devised as: In Equations (3) to (6), R min j is the minimum value of the attribute R j and R max j is the maximum value of R j in matrix CP . The normalized augmented matrix is: In normalized matrix N C, greater value for any service attribute R j where 1 ≤ j ≤ m, indicates a higher quality of a cloud service than the quality of a cloud service corresponding to the lower value of the attribute.

Computation of Distances from Preferences
If the values of service attributes are higher as compared to the corresponding preference values, it reflects a more trustworthiness of a cloud service. Here we introduce, the new terms, Positive Distance (P D) and Negative Distance (N D) to define the comparison of the service attribute values and the associated preference values. P D and N D are the measures for assessment of how closely a cloud service meets or fails to meet the user expectations.
Definition 2 Positive Distance (P D) and Negative Distance (N D) for any value a ij in matrix N C, where 1 ≤ i ≤ (n + 1), of attribute R j from its corresponding preference value y j , are formulated as shown in Table 1.

Table 1. Distances from Preferences
As defined in Table 1, if the attribute value is greater than or equal to the preference value, then its (P D) is higher than its (N D). If the attribute value is lesser than the preference value, then its (P D) is lesser than its (N D). Also, when the attribute value is greater than the preference value, then: i) its (P D) is higher than the (P D) for an attribute whose value equals the preference value. ii) its (N D) is lesser than the (N D) for an attribute whose value equals the preference value. Whereas, when the attribute value is lesser than the preference value, then: i) its (P D) is lesser than the (P D) for an attribute whose value equals the preference value. ii) its (N D) is higher than the (N D) for an attribute whose value equals the preference value.
Thus, for the values of all the attributes in matrix N C, which include both, normalized service evidence factors and preference values, computations of P D and N D values are performed. The computed P D and N D values are represented in the form of Positive Distance and Negative Distance matrices respectively, as: In Equation (8), at position i such that 1 ≤ i ≤ n, a row in the matrix P S indicates a sample of positive distances as {ps i1 , ps i2 , ..., ps im } corresponding to evidence sample {x i1 , x i2 , ..., x im } of matrix N C. Here, ps ij denotes a P D value for an evidence factor x ij of an attribute R j from its preference value y j . Similarly, in Equation (9), at position i such that 1 ≤ i ≤ n, a row in the matrix N S indicates a sample of negative distances as {ns i1 , ns i2 , ..., ns im } corresponding to evidence sample {x i1 , x i2 , ..., x im } of matrix N C. Here, ns ij denotes a N D value for an evidence factor x ij of an attribute R j from its preference value y j . The (n + 1) th rows in matrices P S and N S represent the samples of positive and negative distances respectively, for the sample {y 1 , y 2 , ..., y m } of preferences in matrix N C.
For next processing of customized trust computation, all the distance values in the matrices P S and N S are normalized in the range denoted by [D new min , D new max ]. This conversion of all the distance values to uniform range is made by preserving the original relative ordering among the distance values for each of the attributes. For each value ps ij in matrix P S, where 1 ≤ i ≤ (n + 1), the normalized value pd ij is formulated as shown below.
where P min j is the minimum value of positive distance and P max j is the maximum value of positive distance for attribute R j in matrix P S. The normalized positive distance matrix is: For each value ns ij in matrix N S, where 1 ≤ i ≤ (n + 1), the normalized value nd ij is formulated as shown below.
where G min j is the minimum value of negative distance and G max j is the maximum value of negative distance for attribute R j in matrix N S. The normalized negative distance matrix is:

Distance based Calculation of Customized Present Trust
Customized present trust of a cloud service is an indication of relative quality of the service at an instant of time, with regard to the expectations of the user. Hence, for effective customized trust assessment of a cloud service, evidence factors need to be evaluated on the basis of their positive and negative distances from the preference values. Consequently, all the m positive distance values in sample i such that 1 ≤ i ≤ (n+1), of matrix P DP , are aggregated based on weights of attributes, to form a summative measure of positive distances, as shown below.
where pd ij is a normalized positive distance for attribute R j in sample i. Similarly, all the m negative distance values in sample i such that 1 ≤ i ≤ (n + 1), of matrix N DP , are aggregated based on weights of attributes, to form a where nd ij is a normalized negative distance for attribute R j in sample i. In Equations (14) and (15), w j is a weight assigned to cloud service attribute R j such that 0 < w j < 1 and m j=1 w j = 1. Static weights are not suitable for effective customized trust assessment of a cloud service. Hence, weights are needed to be computed by taking into consideration the user preferences for various attributes of a cloud service. The details of computation of weights for various cloud service attributes, are described in Section 4.3.
For an evidence sample at time instant i such that 1 ≤ i ≤ n, corresponding SP i from Equation (14) indicates a weighted sum of positive distances of all m evidence factors and corresponding SN i from Equation (15) indicates a weighted sum of negative distances of all m evidence factors in the sample. When values of evidence factors of a cloud service match the user preferences, then it indicates a good cloud service in terms of meeting the user expectations. If positive distances of evidence factors are higher than the corresponding negative distances, then the cloud service meets the requirements of the user.
Consequently, for an evidence sample at time instant i such that 1 ≤ i ≤ n, higher value of summative positive distance (SP i ) signifies the better trustworthiness of a cloud service. Therefore, customized present trust of a cloud service at time instant i, is formulated as a relative share of summative positive distance (SP i ) over SP i and SN i .
Definition 3 Customized Trust value of a cloud service (s l ), at a time instant i, termed as Customized Present Trust (CPT) is defined as: where SP i is a summative positive distance and SN i is a summative negative distance of evidence factors for all the m attributes of the service, in sample i such that 1 ≤ i ≤ n and 0 < CP T i (s l ) < 1.

Computation of Weights
Weight assigned to an attribute signifies the importance of the attribute in trust calculation. Weight of an attribute is computed based on the relative utility of the attribute with respect to preference value of the attribute.
Definition 4 Utility degree of an attribute R j , in a time window containing n evidence samples, is formulated as given below.
where x ij is a normalized evidence factor of attribute R j at time instant i and y j is a corresponding normalized preference value for the attribute.
From Equation (17), when all the evidence factors of an attribute in a time window of size n, exactly match with the preference value, utility degree of the attribute becomes equal to n. When one or more evidence factors are less than the specified preference value, utility degree of the attribute reduces to a value which is less than n. Whereas, when utility degree of the attribute goes beyond n, it implies that one or more evidence factors are greater than the preference value. This is the most desirable situation, where the cloud service attribute meets the expected quality requirements. Thus, the values of utility degree for various attributes within a sample, signify the proportionate effect on the weights of cloud service attributes. Accordingly, weight w j of an attribute R j is computed as shown below.
where 0 < w j < 1 and m j=1 w j = 1. Higher is the utility degree U (R j ) of the attribute, greater is its resultant weight. The weights computed using Equation (18), are substituted in Equations (14) and (15), which subsequently results in customized trust estimation of a cloud service, from Equation (16). ISSN: 2088-8708

Calculation of Threshold Trust
The preferences for various attributes are in turn used to derive the minimum expected trust value for a cloud service. This trust value is termed as threshold trust value, which serves as a baseline with which computed trust values can be compared. From Equation (14), SP (n+1) indicates a weighted sum of positive distances of preference values of all m attributes and corresponding SN (n+1) from Equation (15), represents a weighted sum of negative distances of preference values of all m attributes. On the lines of CP T in Equation (16), a threshold trust value of a cloud service at the specified preferences, is formulated as a relative share of SP (n+1) over SP (n+1) and SN (n+1) , as shown below.

Prediction of Cumulative Trust from Customized Present Trust
A set of customized present trust (CP T ) values computed at different time instances forms a time series. From Equation (16), at time instant n, time series (CT S) is: The time series in Equation (20) is used to predict the future value of trust, termed as cumulative trust.
Definition 5 Cumulative Trust (CT) of a cloud service (s l ), predicted at a time instant n is defined as: where CP T i (s l ) is a customized present trust of cloud service (s l ) at time instant i, w i is a weight assigned to it such that 0 < w i < 1 and n i=1 w i = 1.
CP T values at latest time instances, which represent recent quality of a cloud service, are more relevant in prediction of CT , than the CP T values at prior time instances, which represent earlier quality of a cloud service. Hence, exponentially decreasing weights are assigned to the CP T values, starting from the latest CP T value to the CP T values at prior time instances. This is done using a smoothing factor α such that 0 < α < 1. Thus, the various weights assigned to corresponding CP T values are: w n = α,w n−1 = α(1−α),. . . ,w 2 = α(1 − α) n−2 and w 1 = (1 − α) n−1 .
It is recommended that the value of α should be set in the range from 0.1 to 0.4. This allows the predicted cumulative trust to match closely with the computed customized present trust of the service.

ALGORITHM FOR ELASTIC TRUST COMPUTATION
Algorithm 1 shows the steps for elastic trust computation of a cloud service over multiple time windows. The algorithm takes a set of cloud service attributes, a number of time instances and the number of time windows as input for trust assessment of a cloud service. A set of preferences taken as another input indicates the requirements of a particular user about the values of various attributes of a cloud service. The algorithm gives the output as sets of customized present trust and cumulative trust values for service s l over the time windows. The steps of Algorithm 1 for each time window, are explained as below.
Step 1. (line 7) The evidence factors for the cloud service are acquired and the resultant evidence matrix C is formed, as shown in Equation (1).
Step 2. (line 8) The preferences for service attributes are combined with the evidence matrix, to obtain the augmented matrix CP , as indicated in Equation (2).
Step 3. (line 9) Normalization function takes the augmented matrix as input and transforms all the values in the matrix to uniform range as specified by Equations (3) to (6). It results into the normalized augmented matrix N C as given by Equation (7).
Step 4. (line 10) At this point, the algorithm invokes a function to compute weights for various attributes of the cloud service. The details of the function to compute weights are specified by Algorithm 2 in Section 5.1.
Step 5. (line 11) Here, a function is invoked for computation of distances for the various attributes of the cloud service, from the specified preferences of attributes. The details of the function to compute distances are given by Algorithm 3 in Section 5.2. Step 7. (lines 18 -19) Consequently, assessment of cumulative trust is performed for the next time instant by using the customized present trust values of different time instances within a time window. The computed value is added to the output set of cumulative trust values. The details of computation of cumulative trust are elaborated in Section 4.5.
Step 8. (lines 20 -23) The algorithm, invokes a function to get the changes in preferences of the particular user, for the attributes of a service. The number of time instances for the trust assessment in next time window is updated. Accordingly, the algorithm continues for the reassessment of the trust of the cloud service over subsequent time windows. Thus, the algorithm reflects elastic trust computation of a cloud service according to the dynamically changing preferences of the user over multiple time windows.

Algorithm for Computation of Weights
Algorithm 2 takes a normalized augmented matrix, a set of cloud service attributes and a number of time instances as input. The algorithm returns the set of weights for the attributes of a cloud service, as the output. As shown in the algorithm, the utility degree for each attribute, is computed. From the values of utility degree, weight of each attribute is computed. The details of computation of weights are presented in Section 4.3. As shown by the steps in Algorithm 3, computation of summative positive and negative distances has the complexity of O(mn). Hence, the overall computational complexity (CC) of trust assessment (including Algorithm 1, Algorithm 2 and Algorithm 3) is given as below:

Algorithm for Computation of Distances from Preferences
From Equation (22), the computational complexity of trust assessment is fairly good and it depends on the number of cloud service attributes (m) and the number of time instances (n).

TRUST BASED RANKING OF CLOUD SERVICES
As described in Section 4, the proposed trust model PBCTM computes the customized present trust of a cloud service based on the user preferences for various service attributes. Cumulative trust of a cloud service at a certain time instant is predicted using the customized present trust values of the service at different time instances. Consequently, the functionally equivalent cloud services can be compared based on the corresponding cumulative trust values. The cloud services are ranked based on the cumulative trust values where the service with the highest trust value, is assigned the first rank position. Thus, PBCTM can be applied for the trust based ranking of services, which in turn facilitates the user to select the most trustworthy cloud service. Table 2 shows the customized present trust values, computed for functionally similar cloud services. At position l such that 1 ≤ l ≤ v, a row in the table indicates a sample of customized present trust values for cloud service (s l ) as {CP T 1 (s l ), CP T 2 (s l ), ..., CP T n (s l )} and each value CP T i (s l ), in the sample denotes a customized present trust at time instant i in a time window, such that 1 ≤ i ≤ n.
The cumulative trust for each cloud service (s l ) where 1 ≤ l ≤ v, in Table 2, is computed using Equation (21), where for all n time instances, the corresponding CP T values with associated weights are aggregated. Thus, Table 3 shows the cumulative trust values for the cloud services. The services can now be compared and ranked on the basis of predicted cumulative trust values. This reflects a customized ranking of cloud services with respect to the current preferences of the user which enables the user to select the suitable cloud service which closely meets the user expectations. Over a period of time, with changes in the preferences of the user, PBCTM enables to perform the revised ranking of cloud services. This facilitates the user to revise the selection of a suitable service based on the updated ranking of cloud services.

QUALITATIVE COMPARISON OF PBCTM WITH OTHER TRUST MODELS
The details of our proposed trust model PBCTM are elaborated at length in Sections 4, 5 and 6. The qualitative comparison of PBCTM with other QoS based models [23,24,25,27,28] is presented in Table 4. These trust models [23,24,25,27,28] are discussed in Section 2.
ISSN: 2088-8708 Trust computation is based on the distances of service evidences from user preferences.
Weights of attributes are computed dynamically, based on relative utility of attributes with respect to user preferences.
The model enables trust computation according to elastic input, which means as per dynamically changing preferences of the user with time.
PBCTM performs customized trust assessment of a cloud service by taking into account the preferences of a cloud user for service attributes and the evidence factors of the service. Table 4 indicates that, user preferences based customized trust assessment, periodic ranking of cloud services based on dynamic trust prediction and elastic trust computation are the distinguishing features of PBCTM, in comparison to the other models. Section 8 presents the quantitative comparison of PBCTM with the other model.

PERFORMANCE EVALUATION
A prototype is developed in Java for our trust model PBCTM, which facilitates the computation of CP T and CT values by calculating the weights and distances for service attributes. This prototype is used for experimentation and performance evaluation. As discussed in Section 2, attributes which include availability, throughput, response time and security are the relevant attributes of a cloud service, used for trust assessment. Typically, these are the quality attributes, which user commonly expects from a cloud service. Hence, these four attributes are used during the experimentation. For the values of throughput (kbps) and response time (seconds), real world QoS data set [29] is referred. The availability implies the percentage of time the cloud service is accessible. Security attribute is considered as the percentage of the number of violation incidents related to authentication or authorization. Weibull distribution is the suitable theoretical distribution for modeling failure time and can also be employed for modeling inputs in the absence of real data [30]. Hence, values of availability (%) and security violation incidents (%) are generated using the Weibull distribution. Various values of the attributes are normalized in the range [0.01, 0.99]. For a cloud service, higher values of availability and throughput are desired. Hence, values of these attributes along with the corresponding specified preferences are normalized using Equations (3) and (4). Whereas, lower values of response time and security violation incidents are expected. Hence, values of these attributes as well as the corresponding given preferences are normalized using Equations (5) and (6). IJECE ISSN: 2088-8708 317

Evaluation Metrics
The effectiveness of trust evaluation method depends on the accuracy of trust assessment. Mean Absolute Error (MAE) [31] is a metric to assess an error in the prediction process. Here it is applied to compute an error in the prediction of cumulative trust and thus, to evaluate the accuracy of trust assessment. Consequently, MAE is formulated as below.
where P i+1 (s l ) is customized present trust of a cloud service (s l ) at time instant (i + 1), C i (s l ) is a predicted cumulative trust of a cloud service (s l ) at time instant i and n is the total number of time instances for assessment of MAE. Smaller value of MAE indicates higher accuracy of trust assessment and hence better performance of the trust model. Along with the accuracy in the calculation, trust model should comply to user requirements about the expected quality of cloud service. Accordingly, trust model should be able to accomplish the task of efficient trust assessment by taking into account the preferences of user for the various attributes of a cloud service. Hence, Satisfaction Index (SI) is defined as a metric to assess the degree to which the predicted cumulative trust of a cloud service meets the minimum expected trust value with regard to the specified preferences.
Definition 6 Satisfaction Index (SI) for trust assessment of a cloud service (s l ) at time instant n is defined as below.
where C n (s l ) is a predicted cumulative trust of a cloud service (s l ) at time instant n and T H(s l ) is a threshold trust value at the specified preferences for service (s l ). When cumulative trust exactly matches the threshold trust value, then SI becomes equal to 1. When cumulative trust exceeds the threshold trust value, then SI value goes beyond 1. A higher value of SI implies a better degree of satisfaction and hence effective trust estimation of a cloud service from the perspective of a user.

Trust Model for Comparison
In addition to our trust model PBCTM, one more trust model, called averaging based trust model (ABTM) has also been implemented for comparative assessment. This trust model also makes use of multiple cloud QoS attributes for trust evaluation. ABTM is based on the methods, which coincide with the existing trust models in the literature. The selection of ABTM model has been done to facilitate the comparison of performance of PBCTM with other relevant models from two perspectives: i) To compare with the model where weights assigned to the various factors for trust assessment are static and subjective in nature. Thus, in ABTM, equal weights are assigned to all the factors. Here, ABTM is analogous to the model proposed by Manuel [28]. ii) To compare with the model where trust values of multiple services are computed with the commonly used method called Technique for Ordering Preference by Similarity to Ideal Solution (TOPSIS) [27]. Thus, in ABTM, TOPSIS method is used for assessment of cumulative trust values of services. Here, ABTM corresponds to the model proposed by Supriya et al. [27]. The trust models [27,28] are discussed in Section 2. In ABTM, customized present trust (CP T ) of a cloud service (s l ) is computed as an average of all m evidence factors at a time instant i. It is given by: where x ij is a normalized evidence factor of attribute R j at time instant i, such that 1 ≤ i ≤ n. Threshold Trust value is calculated as an average of preference values of all m attributes, given as: where y j is a normalized preference value of attribute R j . From all the n distinct CP T values, each represented by AT i (s l ) such that 1 ≤ i ≤ n, Cumulative Trust (CT ) at time instant n is calculated using the TOPSIS [27] method.
Here, an average weight ( 1 n ) is assigned to each of the n values of CP T of a cloud service.

Results and Analysis
The performance of our trust model PBCTM is evaluated in terms of the accuracy and degree of satisfaction of trust assessment, in absolute and comparative forms. For this purpose, four experiments are conducted. In experiments 1 and 2, the number of evidence samples for a cloud service is varied from 20 to 200. The preferences for cloud service attributes are assigned representative values for illustration. The values for availability (%), throughput (kbps), response time (seconds) and security violation incidents (%) are considered, respectively in set P R of preferences. P R is taken as {90, 1.5, 1.8, 8} for first three experiments. The details of experiments are discussed in the following subsections.

Assessment of Accuracy of Trust Estimation
The evaluation of accuracy of trust estimation is performed by observing MAE values of PBCTM and comparing them with those of ABTM. The results of first experiment are shown in Figure 2. The MAE values of PBCTM range from 0.1139 to 0.1804. Consequently, accuracy of PBCTM ranges from 81.96 to 88.61%. Thus, it is clear that accuracy of our trust model is significantly high. The MAE values of ABTM range from 0.1947 to 0.2834. Consequently, accuracy of ABTM ranges from 71.66 to 80.53%. This implies that MAE values of our trust model are much less than those of ABTM and accuracy of PBCTM is higher than ABTM by 12.32% on an average. This signifies that, the performance of PBCTM in terms of accuracy is better than that of the other model for various number of samples of service attributes.

Assessment of Degree of Satisfaction of Trust Estimation
The evaluation of degree of satisfaction of trust estimation is performed by observing SI values of PBCTM and comparing them with those of ABTM. The results of second experiment are shown in Figure 3. The SI values of PBCTM range from 1.0235 to 1.6038. Thus, it is clear that degree of satisfaction of our trust model is significantly high, as SI value goes beyond 1.0. The SI values of ABTM range from 0.4775 to 0.8283. This implies that SI of our trust model is higher than that of ABTM by 43.91% on an average. Hence, degree of satisfaction of trust estimation for PBCTM is much better than ABTM. This signifies that, the performance of PBCTM in terms of degree of satisfaction is better than that of ABTM for various number of samples of service attributes.

. Validation of Trust based Ranking of Cloud Services
The effectiveness of PBCTM for trust based ranking of cloud services is validated in terms accuracy and degree of satisfaction of trust estimation at each rank position. For the third experiment, five cloud services are considered and 200 evidence samples for each of the services are taken for trust assessment. At a sample count 200, Table 5 shows the calculated cumulative trust (CT ) values of cloud services by the two trust models. Based on the respective CT values of the two trust models in Table 5, the ranking of services is done. Here, s 3 is the highest ranked service by PBCTM, whereas s 5 is the highest ranked service by ABTM.
In part (A) of third experiment, comparative evaluation of accuracy of trust estimation is performed by observing MAE values of two trust models for cloud services at each rank position. Figure 4a shows the observed MAE values for rank wise ordered services of two trust models. The MAE value of PBCTM at rank position 1 is 0.1139, consequently, accuracy is 88.61%. Whereas, the MAE value of ABTM is 0.2159, consequently, accuracy is 78.41%. Thus, accuracy of our model is higher than that of the other model by 11.51%. Similar calculations are done for other rank positions and % comparative values for accuracy are given in Table 6. In part (B) of third experiment, comparative evaluation of degree of satisfaction of trust estimation is performed by observing SI values of two trust models for cloud services at each rank position. Figure 4b shows the observed SI values for rank wise ordered services of two trust models. The SI value of PBCTM at rank position 1 is 1.3425 and that of ABTM is 0.9986. Thus, SI of our model is higher than that of the other model by 25.62%. Similar calculations are done for other rank positions and % comparative values for SI are given in Table 6. The results in Table 6 show that accuracy of PBCTM at each rank position is much higher than that of ABTM. Also, SI of PBCTM at each rank position is much higher than that of ABTM and hence degree of satisfaction of trust estimation for PBCTM is much better than that of ABTM. Therefore, PBCTM is effective for trust based ranking of cloud services over ABTM. The above results of better degree of satisfaction for PBCTM, depict that if PBCTM is used for service selection, then the selected cloud service closely matches the user expectations.

Validation of Trust based Ranking with Changing Requirements
In the fourth experiment, changes in requirements of the user are demonstrated by considering three sets (P R) of preferences at three distinct sample counts (n). The three groups are categorized as below.  In part (A) of forth experiment, group P1 is considered. Comparative evaluation of accuracy of trust estimation is performed by observing MAE values of two trust models for cloud services at each rank position. Figure 6a shows the observed MAE values for rank wise ordered services of two trust models. The MAE value of PBCTM at IJECE ISSN: 2088-8708 321 rank position 1 is 0.1910, consequently, accuracy is 80.9%. Whereas, the MAE value of ABTM is 0.2724, consequently, accuracy is 72.76%. Thus, accuracy of our model is higher than that of the other model by 10.06%. The same method is followed for calculations at other rank positions and % comparative values for accuracy are given in Table 7. Similar to group P1, Figures 7a and 8a show the observed MAE values for rank wise ordered services of two trust models, for groups P2 and P3, in part (B) and (C) respectively. On the lines of group P1, calculations for accuracy are done at all the rank positions and % comparative values for accuracy are given in Tables 8 and 9 respectively.  Comparative evaluation of degree of satisfaction of trust estimation is performed by observing SI values of two trust models for cloud services at each rank position. Figure 6b shows the observed SI values for rank wise ordered services of two trust models, for group P1. The SI value of PBCTM at rank position 1 is 1.5112 and that of ABTM is 1.1086. Thus, SI of our model is higher than that of the other model by 26.64%. The same method is followed for calculations at other rank positions and % comparative values for SI are given in Table 7. Similar to group P1, Figures 7b and 8b show the observed SI values for rank wise ordered services of two trust models, for groups P2 and P3 respectively. On the lines of group P1, calculations for SI are done at all the rank positions and % comparative values for SI are given in Tables 8 and 9 respectively. The results in each of the Tables 7, 8 and 9 show that i) Accuracy of PBCTM at each rank position is much higher than that of ABTM ii) SI of PBCTM at each rank position is much higher than that of ABTM and hence degree of satisfaction of trust estimation for PBCTM is much better than that of ABTM. This confirms the effectiveness of PBCTM for trust based ranking of cloud services, for the varying combinations of sample counts and preferences, corresponding to the groups P1, P2 and P3.
Summary of results of experiments 4A, 4B and 4C is shown in Table 10. Table 10 is derived from average values of relative accuracy and SI in Tables 7, 8 and 9. From Table 10, it is clear that our model PBCTM is superior to ABTM in terms of accuracy and degree of satisfaction of trust assessment. The results in Table 10 show that, with each combination of sample count and preferences, a distinct ranking sequence of cloud services is obtained by PBCTM. This distinct ranking sequence is a more closely match to user requirements. This is due to the methodology of our trust model which incorporates the dynamically varying user preferences in computation of weights of various service attributes. It can be inferred that user preferences based weights are significant and need to be considered in trust assessment to enable the selection of suitable cloud service which closely matches the user expectations. Figure 5a clearly shows the updated cumulative trust (CT ) values of the services for PBCTM, with changes in sample count and preferences. Thus, for group P1, S2 is the most trustworthy cloud service, whereas S5 is for group P2 and for group P3, S3 is the highest trustworthy cloud service. This exhibits a better degree of responsiveness of our trust model to the changing requirements of the user, implying the advantage of elastic trust computation capability. Thus, at every combination of sample count and preferences, PBCTM facilitates the selection of suitable service on the basis of dynamic and elastic trust assessment. On the other hand, in ABTM, from Figure 5b values of the services with changes in sample count and preferences, are not clearly distinguishable. This is due to the averaging approach used in ABTM, which is independent of the preferences. Consequently, as indicated by the results in Table 10, ABTM ranks the same S5 and S2 services as the first two trustworthy services, for both, group P2 as well as P3. Moreover, from Table 10, although, services S2, S5 and S4 are the first three services in ranking for group P1 by both, PBCTM and ABTM, the corresponding accuracy and degree of satisfaction of PBCTM are much higher than those of ABTM. For the purpose of experimentation and performance analysis, five cloud services have been considered in trust based ranking. However, as elaborated in Sections 4 and 6, the methodology of PBCTM is independent of number of services. Similarly, for the purpose of demonstration, we have used three combinations of sample counts and set of preferences. However, preferences can change dynamically with time, over a long duration. Therefore, PBCTM incorporates these changing preferences over time and facilitates the elastic trust computation of a cloud service.
In summary, experimental results have shown that, performance of PBCTM is superior to the other model, in terms of accuracy and degree of satisfaction of trust assessment of a cloud service. When applied for trust based ranking of multiple cloud services, results have demonstrated that, accuracy and degree of satisfaction of trust estimation for PBCTM, at each rank position are much better than those of the other model. Moreover, PBCTM demonstrates a better degree of responsiveness to the changing requirements of the user. Results have also shown that, even with the dynamically varying preferences of the user, accuracy and degree of satisfaction of trust assessment for PBCTM are superior to the other model. This implies that, PBCTM can be effectively applied in practice to enable the periodic selection of appropriate cloud services, based on dynamic and elastic trust computation.

CONCLUSION
In this paper, we presented the preferences based customized trust model (PBCTM) and the mechanism for trust based ranking of cloud services. The model offers customized trust assessment of a cloud service where weights assigned to the various QoS attributes are computed based on the user preferences for the attributes. A novel method based on the positive and negative distances of various evidence factors from the preferences, is presented for computation of customized present trust of a cloud service. The newly introduced notion of elastic trust computation depicts the trust assessment of a cloud service according to dynamically changing user preferences with time. The algorithm has been presented for elastic trust computation of a cloud service. Dynamic prediction of trust in the form of cumulative trust over a period of time, is used to rank the cloud services. The cloud user can select the suitable cloud service based on ranking of the services.
Experimental results have shown that, performance of PBCTM is significantly high and is superior to the other model in terms of accuracy and newly proposed metric of degree of satisfaction of trust assessment. In conclusion, our trust model PBCTM depicts effective trust assessment and ranking of cloud services which enable to closely meet the user expectations.