Service composition is a key enabling technology in service-oriented computing for developing versatile applications by integrating various existing interoperable services. Although actively studied, most existing works on service composition neglect the existence of complementarity among candidate services within a service class, so-called internal complementarity. In fact, complementary candidate services within a service class can be composed to form a composite candidate service which may yield better service utility than that provided by any existing candidate service within that service class. This work focuses on web service composition where internal complementarity is more likely to happen. Specifically, we aim at addressing the problem of QoS-aware web service selection with internal complementarity (WSS-IC). We first transform this problem into a multi-choice multi-dimensional knapsack problem (MMKP) and prove such a transformation per se has non-polynomial time complexity in the worse case.Then, we perform complexity analysis to demonstrate that existing approaches to MMKPs are not computationally feasible to resolve QoS-aware WSS-IC. This fact motivates us to propose an iteratively improving framework for deriving the solution iteration by iteration while taking into account both solution structure and QoS constraints. At each iteration, the current solution gets improved by solving a disjunctively constrained knapsack problem. To verify the effectiveness of the proposed framework, two heuristic approaches are implemented under this framework. Experimental results demonstrate that our approaches outperform the compared methods in terms of both solution quality and computation time.
Read full abstract