The Scientific World Journal

The Scientific World Journal / 2014 / Article
Special Issue

Machine Learning in Intelligent Video and Automated Monitoring

View this Special Issue

Research Article | Open Access

Volume 2014 |Article ID 460593 | 6 pages | https://doi.org/10.1155/2014/460593

Novel Web Service Selection Model Based on Discrete Group Search

Academic Editor: Yu-Bo Yuan
Received02 Mar 2014
Accepted11 Mar 2014
Published15 Apr 2014

Abstract

In our earlier work, we present a novel formal method for the semiautomatic verification of specifications and for describing web service composition components by using abstract concepts. After verification, the instantiations of components were selected to satisfy the complex service performance constraints. However, selecting an optimal instantiation, which comprises different candidate services for each generic service, from a large number of instantiations is difficult. Therefore, we present a new evolutionary approach on the basis of the discrete group search service (D-GSS) model. With regard to obtaining the optimal multiconstraint instantiation of the complex component, the D-GSS model has competitive performance compared with other service selection models in terms of accuracy, efficiency, and ability to solve high-dimensional service composition component problems. We propose the cost function and the discrete group search optimizer (D-GSO) algorithm and study the convergence of the D-GSS model through verification and test cases.

1. Introduction

We have proposed a novel approach for the verification of service composition with contracts [1]. The approach properties of the generic specification [2] in Tecton [3] are verified by the Violet [4] system. After verification, a global optimum is selected from a number of instantiations of web service composition components with multiple QoS constraints. Compared with other algorithms that evaluate all feasible composition instantiations (e.g., integer programming [5]), evolutionary algorithms (EAs) (e.g., genetic algorithm [6]), which are nature-inspired optimization algorithms, are simple and flexible. Given their characteristics, EAs have been used to solve the service selection problem. We proposed a novel optimization model named discrete group search service (D-GSS) that mainly employs the group search optimizer (GSO) algorithm [7]. The D-GSS model has competitive performance compared with other EAs in terms of accuracy, convergence speed, and ability to solve high-dimensional multimodal problems. On the basis that GSO can solve continuous optimization problems and that service selection can solve discrete instantiations, we present an evolutionary algorithm called discrete group search optimizer (D-GSO) to select the best instantiation that has the lowest cost evaluated by the cost function. The cost function consists of the utility function and the weight for every QoS attribute. We also verify and simulate results to analyze the convergence of the D-GSS model.

The rest of the paper is organized as follows. Section 2 describes the D-GSS model. Section 3 presents a detailed introduction of the cost function, and Section 4 discusses the D-GSO algorithm and applies the algorithm for the problem on searching for the global optimum from discrete instantiations. Section 5 introduces the convergence analysis of the D-GSS model. Finally, Section 6 concludes the paper.

2. Distribute Group Search Optimizer

In this paper, we present a novel algorithm named D-GSS toward the atomic service selection of composing complex services with multiple QoS constraints. The population of the D-GSO algorithm is called a group searching for unknown optima in the services composition problem and each individual in the population is called a member.

In the -dimensional search space about composition component, every dimension represents a class of generic service denoted as . The th member in the space is denoted as follows: where . The th member at the th iteration has a current position and is corresponding to an instantiation of services composition component.

A head angle is the position of the member; . The search direction of the th member, which is a unit vector that can be calculated from via a polar to Cartesian coordinate transformation [7]:

In D-GSO based on GSO [7] inspired by animal behavior and animal searching behavior, a group consists of three types of members: only one producer is assumed to have the lowest cost at each searching bout, and the remaining members are assumed to be scroungers and dispersed members. At each iteration, a group member representing the most promising instantiation and conferring the lowest fitness value is chosen as the producer. It then stops and scans the environment to seek optimal instantiation. The scanning field is characterized by maximum pursuit angle and maximum pursuit distance . The apex is the position of the producer. All scroungers will join the resource found by the producer according to area copying strategy. The rest of the group members will be dispersed from their current positions for randomly distributed better instantiations. To handle the bounded search space, the following strategy is employed: when a member is outside the search space, the member will return into the search space by setting the variables that violated the bounds into their previous values.

The details of D-GSO (see Figure 1) are introduced as follows.(i)Suppose that classes of generic services exist in the -dimensional composition component; each class has candidate services in a special sequence.(ii)Define the concrete cost function of the specific composition component. The cost function is defined by the QoS attributes of the component services as well as their integration relationships, such as sequential, parallel, conditional, or loop. Generate initial members from all instantiations and evaluate the members according to the cost function.(iii)Choose a member with the lowest cost as producer. The producer produces on the basis of the discrete GSO algorithm.(iv)Randomly select 80% of the remaining members to perform scrounging.(v)The remaining members will be dispersed from their current instantiations to perform ranging.(vi)Evaluate all members according to the cost function. If no optimal instantiation with multiple QoS constraints is found, reallocate the role of every member on the value of the cost.

3. Cost Function

A “generic service” is a collection of atomic web services with a common functionality, but different nonfunctional properties (e.g., time and quality). Each atomic service may provide a series of QoS parameters, such as service time, cost, reliability, and availability. Users can set the number of QoS values to be considered and can set the weights of the QoS values according to their requirements. In our study, each user has QoS attribute constraints in their QoS requirements: . We focus on the QoS service selection problem, in which multiple QoS constraints must be satisfied. We present the cost function to help in the selection of the best services. The following steps are involved in the creation of the cost function.(i)Each QoS attribute must be quantitative. Service functionalities can be evaluated by several QoS properties. Some QoS attributes, for example, security and reliability, are difficult to measure quantitatively. For these criteria, we employ the linguistic expression set , where VP is very poor, MP is medium poor, P is poor, M is medium, G is good, MG is medium good, and VG is very good. When calculating the cost function, set is transformed into the corresponding quantitative set .(ii)Global QoS attributes are needed to describe the performance of an instantiation of service composition component. Every global QoS attribute is aggregated by the QoS attributes of all atomic services considering the integration relationships of the global QoS attribute. Each service has four main basic structures: the sequential structure, which represents services that are invoked one by one; the loop structure, which represents one service that is repeated times; the conditional structure, which represents only one branch that is selected to be invoked from branches; the parallel structure, which represents branches that are invoked simultaneously. The complete structure of the service composition component consists of the above four basis structures. Every global QoS attribute has its own aggregated method. We sort the QoS aggregated methods into three types: the summation method (e.g., cost), in which the fees must be accumulated by the user to pay for invoking the services; the continued multiplication method (e.g., availability), in which global availability can be computed as the product of the ratios of all atomic service availability; the average method (e.g., reputation), in which global reputation is the average value of the related service reputation. We present all particulars (see Table 1) of these three methods with sequential, parallel, conditional, or loop structures. In Table 1, is a 0-1 variable. If condition is satisfied, then we define ; otherwise, .(iii)After the values of and are evaluated, we present a utility function to describe the relationship between and . Two types of QoS criteria are available, that is, cost and benefit. In the cost criterion, variables (e.g., response time) with higher values have lower qualities. In the benefit criterion, variables (e.g., availability) with higher values have higher qualities. The utility function synthesizes the cost and benefit criteria.


MethodSequentialLoopChoiceParallel

Summation

Continued multiplication

Average

Definition 1 (utility function). Suppose that a global QoS attribute and its constraint of an instantiation exist, the utility function is defined as follows:

If the global QoS attribute satisfies the requirement of the QoS constraint , then ; otherwise .(iv)The cost function is based on the values of the utility function and the weights the user defined. The better the instantiation is, the lower the quality of the cost function result becomes.

Definition 2 (cost function). Suppose that an instantiation exists in the QoS attributes , QoS constraints , and the weights for each QoS attribute; then the cost function is defined as follows: where and .

The objective of this paper is to employ D-GSO to get the optimal solution of the following model: where .

4. D-GSO Algorithm

The GSO algorithm [7] designs optimum searching strategies to solve continuous optimization problems. However, service selection is a discrete problem. Therefore, we present an evolutionary algorithm named D-GSO that can handle composition components with discrete atomic services. The steps of the D-GSO algorithm are described in Algorithm 1. In the D-GSO algorithm, round() represents a round function for half adjust result. Suppose that . represents , which are the subscripts of atomic services composing an instantiation about the th member at the th iteration. At the iteration, the transformation of the subscripts by the following formulas is relating to a new instantiation (see Algorithm 1).

Algorithm. D-GSO
Step  1. classes of generic services are present in the composition component, where each class has
candidate services. The maximum pursuit distance is calculated from the following equation:
,                                  (i)
Each candidate service has QoS attributes, which are rearranged into [ ] according to the weights in
descending sequence. The candidate services of generic service are reordered into a set
with reference to in turn.
Step  2. Set ;
Randomly initialize instantiations ] ( ) with of services composition
component and head angle of all initial instantiations;
Calculate the values of initial instantiations according to the cost function;
WHILE (the best instantiation is not found)
FOR (each instantiation where in the group)
Choose the producer:
   Find the producer with the lowest cost in the group;
Perform producing:
 (a) The producer will scan at zero degree and then scan laterally by randomly sampling three instantiations in the scanning
    field: one instantiation at zero degree, one instantiation in the right-hand side of the hypercube, and one instantiation in the
   left-hand side of the hypercube. is a normally distributed random number with mean 0 and standard deviation 1,
   where as is a uni-formly distributed random sequence in the range (0, 1);
    ,                   (ii)
    ,           (iii)
    ,            (iv)
 (b) The producer will find the best instantiation where with the lowest cost.
    If the best instantiation has a lower cost compared with the current instantiation, then the best instantiation
    will be chosen; otherwise, the current instantiation will remain and turn its head to a new randomly generated angle.
     is the maximum turning angle;
     ,                            (v)
 (c) If the producer cannot find a better instantiation after iterations, then the producer will turn its head back to zero degree;
   ,                                         (vi)
Perform scrounging:
   Randomly select 80% members from the rest of the instantiations to perform scrounging.
   The area copying behavior of the th scrounger can be modeled as a random walk toward the producer.
    In (vii), is a uniform random sequence in the range (0, 1);
   ,            (vii)
Perform dispersion:
   The rest of the instantiations will be dispersed to perform ranging: (1) generate a random head angle by using (v); (2) choose
    a random distance from the Gauss distribution by using (viii); transform into the new instantiation by using (ix);
     ,                   (viii)
     .            (ix)
Calculate fitness:
Calculate the values of the current instantiations according to the cost function;
END FOR
 Set ;
END WHILE

5. Convergence Analysis of the D-GSS Model

5.1. Convergence Verification

In this section, we verified the convergence of the D-GSS model. After iterations, the best instantiation with the lowest cost can be determined with the cooperation of the producer and some scroungers and rangers.

Lemma 3. If represents the space of all instantiations and represents the space of the producer, then .

Proof. denotes the maximum distance between two points in space . By using (3) to (6), we can equate space to a sphere that has center possessing sub() and radius . Thus, .
The following strategy is employed by using the D-GSS model: when a member in space is outside space , the member will return into space by setting the variables that violated the bounds to their previous values. Therefore, .
Thus, we conclude that .

Theorem 4. The costs of instantiations in the group will converge to the global optimum that corresponds to the best instantiation with the lowest cost.

Proof. In the D-GSS model at the th iteration,(1)the producer behaves according to (ii)–(iv) in Algorithm 1. By applying the D-GSO algorithm, we can derive the following: (2)the scroungers will approach the producer through (vii) in Algorithm 1,(3)the rangers will disperse from a group to perform random walks via (viii) and (ix) in Algorithm 1 to avoid entrapments in the local minima,(4)finally, we calculate the costs of all instantiations in the group and reallocate their roles. The cost of the new producer is shown as follows: We conclude that by using (6) and (7), which means that the cost of the producer is monotonically decreasing. A global optimum, which has the lowest cost in all instantiations, exists. As stated in the proof of Lemma 3, . Therefore, the infimum of is cost (global optimum); that is, after iterations, the instantiation converges to the global optimum.

5.2. Simulation Convergence Results

The parameter setting of the D-GSS model is summarized as follows. classes of generic services are present in the complex composition component, in which each class has 50 candidate services that has 10 QoS attributes. The service requestor provides 10 QoS attribute constraints as well as the weights for each QoS attribute. Overall, 51 initial instantiations with are selected at random in all instantiations. The initial head angle of each individual is set to . The constant is given by . The maximum pursuit angle is . The maximum turning angle is set to . Suppose ; the relations between the cost of the producer and the iteration times within 500 runs are shown in Figure 2. The experimental results show that the cost of the producer always converges to the optimum of the low- or high-dimensional service composition component. The experiments were conducted on a PC with 2.50 GHz Intel Processor and 8.0 GB RAM. All programs were written and executed in Java. The operating system was Microsoft Windows 7.

6. Conclusion

In this paper, we describe a new evolutionary approach for multiconstraints service selection on the basis of the D-GSS model. We propose the cost function and the D-GSO algorithm for searching the global optimum from discrete instantiations of the service composition component. The convergence of the D-GSS model is verified via several formal proofs and simulations. This model has an outstanding advantage in terms of solving high-dimensional service composition problems. In the future, we hope to search for the global optimum under a dynamic heterogeneous environment by using the D-GSS model.

Conflict of Interests

The authors declare that there is no conflict of interests regarding the publication of this paper.

Acknowledgment

This work was supported by of the National Natural Science Foundation of China under Grant no. 61003126 and no. 61300133.

References

  1. Z. Jie, S. Zhiqing, G. Yi, and Z. Haiteng, “Generic contract-regulated web service composition specification and verification,” in Proceedings of the International Conference on Information Technology and Software Engineering (ITSE '12), vol. 3, pp. 137–145, Beijing, China, 2012. View at: Google Scholar
  2. Z. Jie and S. Zhiqing, “Specification and verification of generic web service composition,” Computer Application and Software, vol. 28, no. 11, pp. 64–68, 2011. View at: Google Scholar
  3. D. R. Musser and S. Zhiqing, “Concept use or concept refinement: an important distinction in building generic specifications,” in Proceedings of the 4th International Conference on Formal Engineering Methods (ICFEM '02), pp. 132–143, Shanghai, China, 2002. View at: Google Scholar
  4. Z. Jie and S. Zhiqing, “The proof system based on tecton—violet,” Journal of East China University of Science and Technology, vol. 31, no. 2, pp. 198–202, 2005. View at: Google Scholar
  5. L. Z. Zeng, B. Benatallah, A. H. H. Ngu, M. Dumas, J. Kalagnanam, and H. Chang, “QoS-aware middleware for Web services composition,” IEEE Transactions on Software Engineering, vol. 30, no. 5, pp. 311–327, 2004. View at: Publisher Site | Google Scholar
  6. G. Canfora, M. D. Penta, R. Esposito, and M. L. Villani, “An approach for QoS-aware service composition on algorithms,” in Proceedings of the Genetic and Evolutionary Computation Conference (GECCO '05), pp. 1069–1075, Washington, DC, USA, June 2005. View at: Publisher Site | Google Scholar
  7. S. He, Q. H. Wu, and J. R. Saunders, “Group search optimizer: an optimization algorithm inspired by animal searching behavior,” IEEE Transactions on Evolutionary Computation, vol. 13, no. 5, pp. 973–990, 2009. View at: Publisher Site | Google Scholar

Copyright © 2014 Jie Zhai et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

715 Views | 342 Downloads | 2 Citations
 PDF  Download Citation  Citation
 Download other formatsMore
 Order printed copiesOrder

We are committed to sharing findings related to COVID-19 as quickly and safely as possible. Any author submitting a COVID-19 paper should notify us at help@hindawi.com to ensure their research is fast-tracked and made available on a preprint server as soon as possible. We will be providing unlimited waivers of publication charges for accepted articles related to COVID-19. Sign up here as a reviewer to help fast-track new submissions.