A multi-objective optimization method for service composition problem with sharing property☆
Introduction
With the development of cloud computing, constructing the cloud applications based on service oriented way has become a mainstream trend [1]. In this case, each cloud application or business process is designed with a set of cloud services and a workflow. Each cloud service encapsulates the function of an application component, and the workflow defines how the used cloud services interact with each other. The cloud application can be initiated as different workflow instance to meet different demands. For a cloud application serving different user categories, multiple workflow instances are instantiated. Each instance offers a specific QoS level [2] satisfying a particular user category [3].
The demand needs to meet for a workflow instance such as throughput, latency, and cost [4] are usually defined as a service-level agreement (SLA). To satisfy the given SLAs, the developers need to decide which service instance and how many instances are bound to each cloud service in the workflow. Lots of research works have been done [[5], [6], [7], [8], [9]] to solve the problem which is called SSC problem in this paper. But, their computational cost is high. To overcome this problem, meta-heuristics [[10], [11], [12]] have been used to solve it. The research about meta-heuristics and their applications have become hotspots these days. Many meta-heuristics have been proposed, such as genetic algorithm (GA) [13], ant colony algorithm (ACO) [14], particle swarm optimization (PSO) [15], artificial bee colony algorithm (ABC) [16] and so on. These algorithms have been successfully used to solve the complex optimization problems [17] existing [18] in Ref. [19] many areas including the SSC problem. But the related researches about applying meta-heuristics to the SSC problem just convert a multi-objective optimization problem into a single-objective optimization problem, and don't take multiples SLAs into account simultaneously. Until 2012 Hiroshi et al. [3] began to convert SSC problem into a multi-objective optimization problem possessing multiple SLAs, and proposed MOGA and NSGA-II [20] based algorithms to solve it.
However, this work suffers the three shortcomings, which have been detailed in Ref. [21]. The algorithm HMDPSO [21] proposed has improved this situation. But due to its independent deployment of concrete services, the optimization model is restrained to a certain extent. Since the concrete service can be shared among the compositions related with different SLAS, if this property is not considered, many promising feasible candidate composition services with lower cost will be ruled out. Even worse, when the available resources are limited, some applications can not be successfully deployed if the shared property is not fully considered. Moreover, it is hard to make a proper tradeoff between the cost and other QoS attributes in the existing optimization models, since a set of Pareto-optimal solutions which are un-comparable alternatives instead of single optimal one will exist. For instance, to provide a higher throughput, a cloud service instance needs to consume more resources. So, its cost of proving service will also high. In order to increase the throughput of a workflow instance, an expensive resource-rich candidate cloud service instance will be selected to bind with the abstract service. In this case, the cost of the generated workflow instance will also grow. Therefore, maximizing the throughput and minimizing the cost are two conflict objectives. This is the same for the minimizing delay and minimizing cost. To solve these problems, a service model for a resource sharing SSC problem is defined and an algorithm called SMOPSO is proposed to solve it. Our algorithm combined genetic operators and particle swarm optimization algorithm (PSO) [22], which is a widely used swarm intelligence algorithm and has the merits like easy realization, high precision, and fast convergence and so on [[23], [24], [25], [26]].
In this algorithm, a new particle position form is defined to reflect sharing relationship of concrete services among different SLA composite services, and a particle deployment strategy is also designed to modify a particle position to a resource sharing scheme composition. To increase swarm diversity and restrain particle swarm's premature convergence and increase its global search capacity, a particle mutation strategy is designed. Moreover, a particle local search strategy is proposed by resource sharing schemes, which not only extends the time resource sharing schemes staying in solution sets, and also avoids the resource sharing scheme, not suitable for current resource, being easily eliminated. Finally, we evaluate the algorithm based on comparative studies.
Section snippets
Research motivation
In this paper, we tackle this problem from the view of resource sharing. The structure of resource sharing SCC problem is shown in Fig. 1. There is only one entrance for all three SLAs. After the entrance, user can choose the platinum, gold or silver SLA to enter instance workflows with different SLAs. Each abstract service in abstract workflow is related with a candidate service in service composition in every SLA. That is to say, abstract service I in the abstract workflow is related with
Resource sharing model
To satisfy multi-level demands from resource sharing SSC problem, we designed a solution representing way to tackle multi-level service composition. Some definitions related with solution are as follows: Definition 1 (resource sharing) Since one concrete service instance can't serve on multi-SLA composite services at the same time, the resource sharing is defined as the situation that when a concrete service instance serves for different multi-SLA composite services cs1, …,csv during one unit time, whose
Particle swarm based solving method
The particle swarm optimization algorithm has been applied to solve many multi-objective optimization problems [27]. So, we also used it to solve the resource sharing SSC problem in this paper. To apply the multi-objective particle swarm optimization for this problem, the form of particle position must be redefined and particle deployment strategy is also needed to be redesigned to realize sharing property.
Experimental analysis
This section tests the proposed algorithm SMOPSO on four different scale test cases. Then, we compare it with algorithm HMDPSO [21], HMDPSO+ [21], NSGA-II [20], MOEA/D [29], and MOGA [3]. The hyper-volume(H) indicator [30] is used to evaluate the performance of these compared algorithms, and all the compared algorithm are executed in the same environment.
Conclusion
In order to reduce of idle resources in solution obtained by non-sharing resources algorithm, improve the resources' utilization ratio, and expand the problem's solution space, a resource sharing service composition problem is researched. Since it is hard to make a proper tradeoff between the cost and other QoS attributes, a multi-objective constraint optimization model is defined which considers the sharing feature of service composition problem. To properly solve this problem, a
References (30)
- et al.
DiGA: population diversity handling genetic algorithm for QoS-aware web services selection[J]
Comput. Commun.
(2007) - et al.
Research on Web service selection based on cooperative evolution[J]
Expert Syst. Appl.
(2011) - et al.
A hybrid multi-objective discrete particle swarm optimization algorithm for a SLA-aware service composition problem[J]
Math. Probl. Eng.
(2014) - et al.
Cost-based optimization of service compositions [J]
IEEE Trans. on Services Computing
(2013) - et al.
Preemptive regression testing of workflow-based web services[J]
IEEE Trans. on Services Computing
(2014) - et al.
E³: a multi-objective optimization framework for SLA-aware service composition[J]
IEEE Trans. on Services Computing
(2012) - et al.
Comprehensive explanation of SLA violations at runtime[J]
IEEE Trans. on Services Computing
(2014) - et al.
MOSES: a framework for QoS driven runtime adaptation of service-oriented systems[J]
IEEE Trans. Softw. Eng.
(2012) - et al.
Efficient algorithms for Web services selection with end-to-end QoS constraints[J]
ACM Trans. Web
(2007) - et al.
Efficient service skyline computation for composite service selection[J]
IEEE Trans. Knowl. Data Eng.
(2013)
QoS-aware dynamic composition of web services using numerical temporal planning[J]
IEEE Trans. on Services Computing
Dynamic QoS management and optimization in service-based systems[J]
IEEE Trans. Softw. Eng.
A novel ant colony optimization algorithm for large scale QoS-based service selection problem[J]
Discrete Dynam Nat. Soc.
Clustering-based adaptive crossover and mutation probabilities for genetic algorithms
IEEE Trans. Evol. Comput.
Positive feedback as a search strategy
IEEE Transactions on Systems, Man, and Cybernetics-Part B
Cited by (6)
Manufacturing service recommendation method toward industrial internet platform considering the cooperative relationship among enterprises
2022, Expert Systems with ApplicationsCitation Excerpt :They took QoS as the optimization target and obtained a series of Pareto solutions. Zhang, Ning, Wu, and Zhang (2019) put forward a particle swarm optimization to solve multi-objective problems and define a new particle location form, which could find more feasible solutions with lower cost. Mandeep and Sanjay (2018) put forward an algorithm named multi-objective bacteria foraging optimization (MOBFOA) to reduce space and time complexity.
The Design of Correlation-aware Service Composition System
2020, Journal of Physics: Conference Series
- ☆
This work was supported by National Natural Science Foundation Program of China (61572116, 61572117), and supported by the China Scholarship Council (201806085015).