[IEEE 2013 IEEE International Conference on Services Computing (SCC) - Santa Clara, CA, USA...

8
A Combinatorial Auction Model for Composite Service Selection Based on Preferences and Constraints Mahboobeh Moghaddam 1,2 Joseph G. Davis 1 Taso Viglas 1 1 School of IT University of Sydney NSW 2006, Australia 2 NICTA Australian Technology Park Sydney, Australia [email protected] [email protected] [email protected] AbstractWe propose a novel market-based approach for dynamic composite service selection based on combinatorial auctions. The combinatorial auction model that we developed allows us to incorporate service providers’ and requesters’ preferences in the service selection process. From the providers’ perspective, the combinatorial formulation allows them to express their preferences for offering combinations of services, or bundles. Moreover, the combinatorial model has the potential to lower the overall cost to the service requester as a result of providers offering discounts for service bundles. The proposed model also enables the service requester to express their preferences for the types of bundles by defining constraints over the configuration of the composite service provisioning, and data-cohesion of the bundles. We have mapped the problem to an Integer Linear Programming formulation and performed a number of experiments to evaluate the proposed model. In addition to demonstrating the relevance and applicability of combinatorial auction models for service selection, our experiments show that the cost of the composite service provisioning decreases with having more bidders in the auction; offering more crowded bundles is more profitable for service providers; and achieving high cohesion is more expensive than low cohesion for service requesters. Keywords- web service composition; composite service selection; combinatorial auction; data cohesion I. INTRODUCTION Service composition presents the opportunity for rapid development of complex applications by facilitating the logical composition of existing web services. The selection of the most appropriate services to be composed together, known as composite service selection, has become an important research problem in the service-oriented computing realm. With the growing market for web services on today’s Internet, it is possible to find multiple web services online with similar functionality. These services are differentiated based on their Quality of Service (QoS) offer and price which are the most important criteria for QoS-based service selection. Existing approaches to QoS-based composite service selection mostly assume that each provider offers a single service. Even if they offer more than one service, the offers are not related; that is, there is no possibility of offering bundles of services. This is in contrast to the current marketing practice of spending billions of dollars to promote service bundles [1]. Service consumers are encouraged to buy bundles of services through incentives such as the bundle’s reduced cost, more convenient billing options, or free gifts [1]. From the providers’ perspective, the motivations for bundling include increased competitive power in the market by offering a discount for the bundle’s price, increased consumer loyalty [2], or exploiting the complementarities among services [3]. Furthermore, most service selection approaches allow the service requester to specify their constraints over a specific set of services quality attributes, including execution time, availability, reputation or budget. Quality attributes such as maintainability or (provider-) dependability, and preferences over the configuration of the composite service provisioning are largely neglected in the extant literature. In this paper, we develop a model for composite service selection based on combinatorial auctions. This model views the composite service requester as the auctioneer and the service providers are the bidders who bid to offer their services for the composite service. The proposed model allows the providers to offer their services as a single service or as a bundle of related services. We have also enabled the service requester to specify preferences for the desired level of cohesion for the composite service and the configuration of composite service provisioning. As cohesion is known to be correlated with maintainability [4-6], the proposed constraint for cohesion helps the service requester to specify the required level of this quality attribute. The model is defined as an Integer Linear Programming (ILP) problem with the cost minimizing objective subject to quality constraints and the newly introduced cohesion and 2013 IEEE 10th International Conference on Services Computing 978-0-7695-5026-8/13 $26.00 © 2013 IEEE DOI 10.1109/SCC.2013.112 81

Transcript of [IEEE 2013 IEEE International Conference on Services Computing (SCC) - Santa Clara, CA, USA...

Page 1: [IEEE 2013 IEEE International Conference on Services Computing (SCC) - Santa Clara, CA, USA (2013.06.28-2013.07.3)] 2013 IEEE International Conference on Services Computing - A Combinatorial

A Combinatorial Auction Model for Composite Service Selection Based on

Preferences and Constraints

Mahboobeh Moghaddam1,2 Joseph G. Davis1 Taso Viglas1

1School of ITUniversity of SydneyNSW 2006, Australia

2NICTAAustralian Technology Park

Sydney, [email protected] [email protected] [email protected]

Abstract—We propose a novel market-based approach for dynamic composite service selection based on combinatorial auctions. The combinatorial auction model that we developed allows us to incorporate service providers’ and requesters’ preferences in the service selection process. From the providers’ perspective, the combinatorial formulation allows them to express their preferences for offering combinations of services, or bundles. Moreover, the combinatorial model has the potential to lower the overall cost to the service requester as a result of providers offering discounts for service bundles.The proposed model also enables the service requester toexpress their preferences for the types of bundles by defining constraints over the configuration of the composite service provisioning, and data-cohesion of the bundles. We have mapped the problem to an Integer Linear Programming formulation and performed a number of experiments to evaluate the proposed model. In addition to demonstrating the relevance and applicability of combinatorial auction models for service selection, our experiments show that the cost of the composite service provisioning decreases with having more bidders in the auction; offering more crowded bundles is more profitable for service providers; and achieving high cohesion is more expensive than low cohesion for service requesters.

Keywords- web service composition; composite service selection; combinatorial auction; data cohesion

I. INTRODUCTION

Service composition presents the opportunity for rapid development of complex applications by facilitating the logical composition of existing web services. The selection of the most appropriate services to be composed together, known as composite service selection, has become an important research problem in the service-oriented computing realm.

With the growing market for web services on today’s Internet, it is possible to find multiple web services online with similar functionality. These services are differentiated based on their Quality of Service (QoS) offer and price

which are the most important criteria for QoS-based service selection.

Existing approaches to QoS-based composite service selection mostly assume that each provider offers a single service. Even if they offer more than one service, the offers are not related; that is, there is no possibility of offering bundles of services. This is in contrast to the current marketing practice of spending billions of dollars to promote service bundles [1]. Service consumers are encouraged to buy bundles of services through incentives such as the bundle’s reduced cost, more convenient billing options, or free gifts [1]. From the providers’ perspective, the motivations for bundling include increased competitive power in the market by offering a discount for the bundle’s price, increased consumer loyalty [2], or exploiting the complementarities among services [3].

Furthermore, most service selection approaches allow the service requester to specify their constraints over a specific set of service’s quality attributes, including execution time, availability, reputation or budget. Quality attributes such as maintainability or (provider-) dependability, and preferences over the configuration of the composite service provisioning are largely neglected in the extant literature.

In this paper, we develop a model for composite service selection based on combinatorial auctions. This model views the composite service requester as the auctioneer and the service providers are the bidders who bid to offer their services for the composite service. The proposed model allows the providers to offer their services as a single service or as a bundle of related services. We have also enabled the service requester to specify preferences for the desired level of cohesion for the composite service and the configuration of composite service provisioning. As cohesion is known to be correlated with maintainability [4-6], the proposed constraint for cohesion helps the service requester to specify the required level of this quality attribute.

The model is defined as an Integer Linear Programming (ILP) problem with the cost minimizing objective subject to quality constraints and the newly introduced cohesion and

2013 IEEE 10th International Conference on Services Computing

978-0-7695-5026-8/13 $26.00 © 2013 IEEE

DOI 10.1109/SCC.2013.112

81

Page 2: [IEEE 2013 IEEE International Conference on Services Computing (SCC) - Santa Clara, CA, USA (2013.06.28-2013.07.3)] 2013 IEEE International Conference on Services Computing - A Combinatorial

service provisioning constraints. We have performed anumber of experiments to evaluate the time complexity of the proposed model and the influence of the parameters involved in the model on the cost of the composite service.

The remainder of this paper is organized as follows. Section 2 outlines the proposed combinatorial auction model in detail. The mathematical formulation of the proposed model is presented in Section 3. Section 4 discusses the results of the experiments that were performed. Related works are presented in Section 5. Section 6 provides the conclusion.

II. THE COMBINATORIAL AUCTION MODEL

Auctions, as market-based mechanisms, allow for dynamic pricing which is critical for products such as web services that are characterized by dynamic execution environments (in terms of the provider’s available resources), and users with different and changing demands.

In combinatorial auctions, multiple distinct items are auctioned simultaneously and the bidders can bid for acombination of items, or bundles. Bundling enables the bidders to express their preferences for the items more fully, which leads to economic efficiency and greater auction revenue [7]. The possibility of bundling is particularly important when bidders have preferences not just for specific items but for bundles due to the complementarities or substitutability effects that exist among the items [8]. The dependencies can make the utility of a bundle greater (when items are complements) or smaller (when they can be substitutes) than the sum of the utilities of the individual items.

In the web services domain, services combined to form a composite service are dependent on factors such as the sequence of execution time, resources consumed, input/output message or data, and user-specified constraints. These dependencies make it attractive for service providers to offer services in bundles. For example, consider a service provider who is interested in providing services for a set of consecutive services which exchange data. By provisioning for these dependent services and bidding for them in one bundle, the provider can internalize some of the costs of interface compatibility required for data exchange. This can decrease the cost of service provisioning. Consequently, the discount in the bundle’s price can result in the provider’s increased competitiveness in the market for web services.

In our proposed model, we allow the service providers to offer services in bundles. We also enable the service requesters to specify the type of bundles they prefer based on the degree of cohesion required for the composite service and their preferences related to particular providers of the subsets of individual services (the configuration of the composite service provisioning). A detailed discussion of cohesion and the provisioning configuration is provided below.

A. Cohesion in a Composite Service Maintainability is among the key qualities that a software

system should support. According to the IEEE Standard, maintainability is defined as “the ease with which a software

system or component can be modified to correct faults, improve performance or other attributes, or adapt to a changed environment” ([9], p. 46). A variety of metrics have been proposed in the literature for measuring maintainability [10], including a number of studies having shown that cohesion is positively linked to maintainability [4-6]. In general, cohesion can be defined as “a measure of the bindings of the elements within a single module” [11]. Based on the level of encapsulation and abstraction, cohesion has been defined more specifically for procedural systems [12],the object-oriented paradigm [13, 14], and service-oriented softwares [5, 15]. Cohesion is broadly classified asfunctional, sequential, communicational, temporal, logical, and coincidental [12]. Functional bindings create the strongest level of cohesion and coincidental bindings create the weakest. As well, the higher classes of cohesion include the characteristics of the lower ones.

In defining cohesion for service-oriented systems, service is the main design construct to apply encapsulation and abstraction principles. In a composite service where services are provided by different providers, another abstraction level is the bundle. To the best of our knowledge, no definition of cohesion exists for a composite service which has consideredthe bundles as another level of abstraction. We characterize the cohesion for a composite service based on the bundles as the abstraction level and measuring the binding of its elements, that is, services.

We measure cohesion for the composite service based on direct data dependencies between services. The reason is that in the web service selection problem, we are dealing with web services which are designed to implement (realize) separate and distinct functionalities. This makes functional cohesion less important in this context. The next level of cohesion is sequential which exists when part of the output of one element is the input to another element. We can map this cohesion to the service-to-service message or data dependency which is considered as one of the most important types of dependencies between services [16]. Data dependency exists when (part of) the output of one service is consumed as (part of) the input of another service [17]. Its importance is due to the fact that ultimately, at the lowest level, the connection between services is through mapping the input and output messages between partner services’ ports.

Being able to adjust the cohesion level of the bundles, and consequently the composite service is of significant importance for the service requester. The proposed cohesion metric directly influences the composite service maintainability and also its (provider-) dependability. The service requester might be interested in having more data-cohesive modules or less cohesive ones based on the composite service structure, knowledge about the web service’s market, or user-specific constraints.

For instance, following the “design rule theory” [18],when designing complex systems, it is preferred that the tasks strongly dependent on each other be performed by the same doer. This is called modular design and the mainreason behind it is to achieve desirable features such as change manageability and maintainability. For the same

82

Page 3: [IEEE 2013 IEEE International Conference on Services Computing (SCC) - Santa Clara, CA, USA (2013.06.28-2013.07.3)] 2013 IEEE International Conference on Services Computing - A Combinatorial

reason, the service requester might prefer the strongly dependent services to be performed by the same service provider. In other words, they may prefer the bundles with higher cohesion.

However, as the web services’ execution environment is the Internet, with service providers mostly being unreliable,the service requester might be interested in minimizing the risk of composite service execution failure by reducing the degree of dependability on the providers. This can be achieved by assigning tasks to different independent providers, which means minimizing the cohesion in the bundles.

To include these requirements in the model, we define the data cohesion factor (DCF). The DCF of a bundle is calibrated based on the direct data connections between the services for which it is bidding; that is, if a bundle is bidding for two services exchanging data, its DCF will be 1, and 0 otherwise.

Figure 1. LCF and ICF factors of a sample composite service

In the proposed model, providers can have more than one winning bid (non-overlapping), the cohesion between the services of the provider’s different bundles also needs to be taken into account. We have called the cohesion factor related to the dependencies of the services of the same bundle as the local cohesion factor (LCF), and the cohesion between services of different bundles (from the same provider) as the interactive cohesion factor (ICF). Fig. 1illustrates the example of a composite service for which two providers are bidding to offer their services. The calibrated values for LCF and ICF metrics are also shown.

In the ILP formulation of the problem, we have allowedthe service requester to define a lower and an upper boundfor the total cohesion of the services that win the service selection auction to support the need for both high and low data cohesion.

B. Configuration of the Composite Service Provisioning The proposed model enables the service requester to

place two constraints on the type of bundles that can win the auction. These constraints are related to the configuration of the composite service provisioning. The ability to manage this configuration can be critical for satisfying a variety of the service requester’s requirements.

As an example of a privacy concern related to the configuration of composite service provisioning, consider this motivating scenario: in the composite service, the collective data provided to two individual services can reveal a person’s true identity despite the data being made anonymous. To preserve privacy, the service requester might want to force the two services to be procured from different providers. Another example of a security requirement affected by the provisioning configuration is when some of the services in the composite service need to support an encryption algorithm. The requester might then need to minimize the number of providers who have access to the encryption key.

More specifically, the service requester might have two types of preferences regarding the configuration of composite service provisioning: specific services need to be a) provided by the “same” provider, or b) be provided by “different” providers. The security and the privacy concerns discussed above are examples of these preferences, respectively.

We have mapped the composite service selection to an integer linear programming problem in which the objective function is to minimize the cost for the service requester, subject to quality and data-cohesion constraints and service provisioning preferences.

III. MATHEMATICAL FORMULATION OF THE COMBINATORIAL AUCTION MODEL

We have assumed that the composite service is defined at a high level as an abstract business process (BP) which comprises a set of tasks. The service providers bid to procure services for the tasks in the business process. For simplicity, we have assumed that the BP only includes sequential structures. The existence of other structures (parallel, loop and conditional) in the BP only affects our model in terms of the aggregation functions for quality attributes such as response time and availability which is not the focus of this paper. Nevertheless, it is possible to extend the model to these structures following techniques such as the one suggested by Zeng et al. [19].

Let B be the set of all received bids from all providers, with an arbitrary member denoted as bi where the total number of all received bids is N. Let Task be denoted as the set of all tasks in the business process, with an arbitrary member defined as tj where the total number of tasks in the BP is M. Let also K be the total number of bidding providers for these tasks.

Each bid bi is defined as bi=(Ti ,ci ,Qi), where ci is the cost of providing service(s) for the task(s) in the set Ti (Ti Task) and Qi is the set of the offered quality values for those service(s). Each member of Qi is a tuple, including the quality attributes’ values of the tasks in Ti. For the current model, we considered two quality attributes in the quality tuple: availability and response time denoted as vi and rirespectively; that is Qi={ (vi(t), ri(t)) | t Ti} . vi and ri are defined as functions from the set of tasks to a positive number.

The objective function is to minimize the cost for the service requester (1). The decision variable is denoted as zi to

83

Page 4: [IEEE 2013 IEEE International Conference on Services Computing (SCC) - Santa Clara, CA, USA (2013.06.28-2013.07.3)] 2013 IEEE International Conference on Services Computing - A Combinatorial

be 1 if bi is a winning bid and 0 otherwise. Constraint (2) ensures that each task is assigned to no more than one provider. It also implies that any number of non-overlapping bids from the same provider can simultaneously win the auction. In other words, the bidding language is OR [20]. To get the unique assignment, we defined matrix AN*M with an arbitrary element of aij which is 1 if Ti (in bi) includes tj and 0 otherwise.

The quality constraints over availability and response time are defined in (3)1 and (4), where V and R are the service requester’s acceptable minimum availability and maximum response time for the composite service.

The service requester’s preference for data cohesion is defined in (5). The interactive cohesion factor is defined by hij when i≠j and both bids i and j belong to the same provider. When i=j, hii defines the local cohesion for bid i. It will be 0 otherwise. The lower and upper bounds of the required cohesion are LC and UC which can be defined in terms of the percentage of the maximum possible cohesion in a BP, MAXC. For example, LC=100% means the service requester wants the maximum cohesion for the BP, which indicates that they prefer all tasks to be provided by the same provider. Equation (6) ensures that all the tasks in X will be provided by the same provider, where X is a subset of Task.

minimize (1)

s.t.(2)

(3)

(4)

(5)

(6)

To linearize (6), we have to introduce a new decision variable, yk, which will be 1 if provider k is selected to provide services for the tasks in set X, and 0 otherwise. The linearized form of (6) is defined in (6-1) to (6-3). BIGM [21] is a number sufficiently large enough to guarantee that (6-1) and (6-2) are satisfied when the introduced (artificial) decision variable yk is 0. Matrix DN*O defines the mapping between providers and their bids with an arbitrary element,

1 The aggregation function of availability is linearized using a

logarithm function [19].

dik which is 1 if bid bi comes from provider k and 0 otherwise.

(6-1)

(6-2)

(6-3)

Constraint (7) ensures that the tasks in Y will be provisioned by different providers, where Y is a subset of Task.

(7)

IV. EXPERIMENT

In order to evaluate the proposed service selection model, we performed a number of experiments. In the first experiment, the impact of the number of tasks in the BP onthe combinatorial auction’s cost was evaluated. In the second experiment, the time required to find the optimum solution was assessed. The impact of the number of services in the bundles over the cost of the composite service was evaluated in the third experiment. Finally, the influence of the cohesion factor on cost was addressed in the fourth experiment.

The combinatorial auction model was implemented using AMPL 2 , and the related ILP problem was solved with CPLEX 10.0, using a computer with 16 processors, each 1600 MHz, and total memory of 24 GB RAM.

The combinatorial bids for the experiments were generated by the CATS suite [22], using arbitrary distribution. CATS is a suite of distribution families used for generating combinatorial bids for five real-world domains of combinatorial auctions. The classification of these domains is based on the types of dependencies that exist between the items of a bundle. Arbitrary distribution is used to generate bids for domains in which there are arbitrary dependencies between the items being auctioned. Overall, 6,300 problem instances were solved in the following experiments.

A. The Impact of the Number of Tasks Two parameters were included in the experiment design:

the number of bids in the range [100, 300] in intervals of 50, and the number of tasks in the BP with values [10, 20, 30]. For each factor combination, 30 independent problem instances were generated (overall, 450 problem instances were solved) with cost averaged across them. Fig. 2 shows the total cost of the winning bids as a function of the number of bids in the auction, for business processes with 10, 20 or 30 tasks.

2 A Mathematical Programming Language (http://www.ampl.com/)

84

Page 5: [IEEE 2013 IEEE International Conference on Services Computing (SCC) - Santa Clara, CA, USA (2013.06.28-2013.07.3)] 2013 IEEE International Conference on Services Computing - A Combinatorial

To compare the cost of the auctions with the different number of tasks involved, we calculated the relative cost of the winning bids, that is, the ratio of the cost of the winning bids to the cost of the first data point, for 100 bids. Fig. 2shows that having more bids in the auction decreases the cost of the composite service. However, the rate of the decrease is much faster when the number of tasks being auctioned is lower, as shown in Fig. 3. As we see in Fig. 3, when we increase the number of bids from 100 to 200 we can expect savings of over 10% in the total cost, while 300 bids would lead to expected savings of over 20% in the total cost.

Figure 2. Total cost of the winning bids as a function of the number of available bids for BP with 10, 20 and 30 tasks

Figure 3. Relative cost of auctions with different numbers of tasks

B. Running Time In a similar setting to the previous experiment, we

evaluated the running time of the service selection auction, as shown in Fig. 4. The running time included the CPU time of both AMPL (model generation) and CPLEX (solving time). This was averaged across the 30 independent problem instances for each factor combination. Fig. 4 clearly demonstrates the exponential time complexity of the combinatorial formulation. However, in the worst case with 300 bids over 30 tasks, the maximum time of around 1.1 seconds which is quite acceptable.

Figure 4. Running time of the composite service selection auction

C. The Impact of the Number of Services in a Bundle In the CATS program, the number of items in a bid is

calculated as follows: starting with one item in the bundle, repeatedly increase the size of the bundle until rand(0, 1), from a uniform distribution, exceeds a threshold α. The higher α is, the more crowded the offered bundles will be. To evaluate how the number of services in a bundle affects the cost of the composite service, an experiment with two parameters was designed. We varied the number of bids in the range [100, 300] in intervals of 50, the probability of having another service in the bundle (α) with values [0.25, 0.5, 0.75], and by having 20 tasks to be auctioned.

As illustrated in Fig. 5 (a1), the cost of the composite service increases as bundles become more crowded. Fig. 5(a2) shows that with the least crowded bundles (α=0.25), increasing the number of bids from 100 to 300 decreases the cost by over 30%, while this decrease for bundles with α=0.75 is around 15%.

As we speculated that the main reason of having a more expensive composite service with more crowded bundle offers might be related to the pricing function provided for the CATS suite, we repeated the experiment with a different pricing function. The pricing function provided by CATS is by default non sub-additive; that is, no discount is considered for the bundle price. Therefore, we developed a sub-additive pricing function to consider the impact of having more crowded bundles when providers consider a discount for the bundle price. The discounted pricing function for the bundle, Pd

B, is defined as: PdB =PB- 0.03(β*PB) [23], where PB is the

additive price of the bundle (sum of the prices of the services in the bundle), and the discount rate β is derived randomly from [0, 1] for each service provider.

We also considered two types of valuation models for the providers who were pricing the individual services: i) the independent private values (IPV) model, and ii) the common values (CV) model [24]. In the first model, each provider has a private value for the services they offer which is not known to the other providers and is also independent from the values that other providers consider offering for that service. In the second (CV) model, the value of offering a specific service is more or less the same for all the providers, but the estimate from each provider for how much they can charge to sell the service in the market is different between providers.

Repeating the experiment with a sub-additive (discounted) pricing function with the two valuation models, IPV (Fig. 5 b1-b2) and CV (Fig. 5 c1-c2), did not lead to a different result to that achieved with having a non-sub-additive pricing function. The cost of the composite service appeared to be higher when providers offered more crowded bundles. However, an interesting conclusion was that offering more crowded bundles creates more revenue for providers but only if “all” providers offer their services in bundles. In other words, bundling will lead to higher revenue for winning providers collectively if no provider deviates by offering individual services.

85

Page 6: [IEEE 2013 IEEE International Conference on Services Computing (SCC) - Santa Clara, CA, USA (2013.06.28-2013.07.3)] 2013 IEEE International Conference on Services Computing - A Combinatorial

Cos

t

(a1) Number of bids (b1) Number of bids (c1) Number of bids

Cos

t Rat

io

(a2) Number of bids (b2) Number of bids (c2) Number of bids

Figure 5. Impact of number of services in bundles over the cost of the composite service with different cost functions: (a) non-sub-additive pricing function, (b) discounted pricing for IPV providers, and (c) CV providers.

The results of this round of experiments are consistent with the findings in [25]. Bakos and Brynjolfsson [25] showedthat for digital information goods available on the Internet with a low marginal cost of production and distribution, the sellers can extract more value from each individual item when it is part of a bundle than when it is sold separately, and also that large aggregations (more crowded bundles) are often more profitable than small aggregations.

D. The Impact of the Cohesion Factor on Cost To evaluate the effect of the cohesion factor on the cost

of a composite service, we considered three cases: a) The service requester is interested in high cohesion

for the composite service: LC, the cohesion’s lower bound, is at least 50% or 75% of the MAXC (maximum possible cohesion of the composite service), and no constraint exists for the cohesion’s upper bound (UC=1),

b) The requester is interested in low cohesion: UC is at most 25% or 50% of MAXC while no constraint exists for the lower bound (LC=0).

c) A baseline with no constraint for the cohesion (UC=1, LC=0).

We ran each case with the non-sub-additive pricing function as well as the discounted pricing function. We have included only the results of the non-sub-additive pricing function (Fig. 6) due to space limitations and similarity of findings with those for the IPV and CV models. Initially, 2,250 problem instances were solved (#tasks=20, #providers=50, α=0.75). However, as the success rate for the setting LC=0.75 was very low (Fig. 7), we repeated the experiment for this setting another 120 times.

Fig. 6 shows that the cost of the composite service does not significantly increase when the objective is to achieve low cohesion. In other words, if the service requester’s

objective is to be independent of any specific provider, this is achievable at almost no extra cost. In contrast, reaching a high cohesion (LC at least 50% or 75% of MAXC) increases the cost of the composite service on average by 20%. This implies that setting maintainability as a non-functional requirement increases the cost of the composite service.

Figure 6. Impact of the cohesion on cost, non-sub-additive pricing

Figure 7. Success rate of the service selection auction for different cohesion constranits (non-sub-additive pricing function)

To get more detail about the influence of cohesion on cost, we repeated the experiment increasing the levels of cohesion in the experiment [0.2, 0.4, 0.6, 0.8] for a fixed number of bids (300) and tasks (10) with 50 independent data files. We also included a base point with no cohesion

86

Page 7: [IEEE 2013 IEEE International Conference on Services Computing (SCC) - Santa Clara, CA, USA (2013.06.28-2013.07.3)] 2013 IEEE International Conference on Services Computing - A Combinatorial

constraint (UC=1, LC=0). Overall, 450 problem instances were solved.

The results are shown in Fig. 8. This diagram repeats the previous findings that a tight constraint on the cohesion’s upper bound (UC=0.2) and lower bound (LC=0.8) increases the cost of the composite service. Compared to the base point, the cost rise is six times for LC=0.8 versus an increase of 1.5 times for UC=0.2. The cost to achieve a high cohesive composite service dramatically increases at LC=0.6. These findings can help the service requester to set the appropriate level of cohesion considering the trade-off in terms of the cost of the composite service.

Figure 8. Cost as a function of cohesion for #tasks=10, #bids=300

V. RELATED WORK

The two main approaches to service selection for a composite service are optimization-based and negotiation-based service selection [26]. In optimization-based approaches, the service selection problem is mapped to an optimization problem, for example, integer linear programming [19, 27], genetic algorithm [28], constraint satisfaction [29], constraint optimization [30], and stochastic programming [31]. The objective function is to maximize the user’s satisfaction from the execution of the composite service. This objective is generally translated into maximizing a number of quality attributes, such as availability, security, and reliability, while minimizing some others such as price, response time, and delay.

In negotiation-based approaches [32-34], automated negotiators (software programs such as software agents) negotiate on behalf of the service providers and the service requester. Negotiation-based service selection is also referred to as Service Level Agreement (SLA) negotiation where the service provider and the requester negotiate over SLA terms such as QoS attributes, rewards, penalties, and deliverables, in order to come up with a formal SLA at the end of the process [35].

One important distinction between the two service selection approaches is in their underlying assumption about the QoS profile of a web service. The optimization-based approaches typically assume a predetermined, not-customizable QoS profile, while negotiation-based approaches consider the profile to be flexible and negotiable. The fixed profile in the former approach is not very realistic in light of the relatively dynamic environments that characterize the selection and composition of web services. In the negotiation-based approach, a complex decision model is required to build a fully automated negotiator. The application of such negotiators in real-world settings is

somewhat impractical, at least for the near future. Moreover, the dynamic aspects of negotiation approaches complicate the problem of finding globally optimum solutions.

There is very limited research on the application of dynamic market mechanisms such as auctions for service selection. The combinatorial procurement auction discussed in Mohabey et al. [36, 37] is an optimization-based service selection technique with the objective function of maximizing the composite service’s quality, subject to a budget constraint [36], or minimizing the cost, subject to quality and interface matching constraints [37]. The main innovation is that the service provider is able to offer services for more than one task in the BP.

However, the formulation of the problem assumes one quality offer for the bundle of services. Although one price offer for the bundle is reasonable, it is not always possible to define one aggregated quality for the services in the bundle, especially if services are not directly dependent in the structure of the composite service. Our model supports individual quality offers for the service bundles as well as aggregation. Moreover, we have provided the service requester with the possibility to benefit from the combinatorial formulation, by enabling them to specify their constraints over the provisioning configuration and data cohesion of the composite service.

A multidimensional procurement auction is proposed in Blau et al. [38] for trading composite services. The objective is to maximize the joint utility of the service requester and providers. There are some restrictions in their mechanism: firstly, the proposed auction is not combinatorial, although providers can form coalitions and offer services jointly. Secondly, each service provider needs to prepare a bid for each combination of his/her services with possible precedent services from other providers. This is not trivial, especially in the domain of web services and the Internet where it is difficult for a provider to easily obtain enough information about other providers. Finally, the service requester cannot define any constraint regarding the required quality or the budget for the composite service.

VI. CONCLUSION

In this paper, we proposed a combinatorial procurement auction model for composite service selection. The combinatorial formulation benefits both service requester and service provider by allowing them to express a more complex set of constraints and preferences about the composite service.

We mapped the proposed model to an ILP problem with the objective function being to minimize the cost for the service requester, subject to quality and cohesion constraints, and the preferences of the service requester for the provisioning of the composite service. We performed several experiments to evaluate the proposed model in terms of the running time and the impact of experiment design parameters on the achieved cost of the optimum solution. Our experiments have shown that, with up to 300 bids in an auction for procuring 30 services, the computation time remains reasonably low (one second) which proves the applicability of the model for web service selection. Analysis

87

Page 8: [IEEE 2013 IEEE International Conference on Services Computing (SCC) - Santa Clara, CA, USA (2013.06.28-2013.07.3)] 2013 IEEE International Conference on Services Computing - A Combinatorial

of the parameters such as the number of bids, the number of items in a bundle, the number of services being auctioned,and the cohesion factor have led to a number of interesting findings, including: increasing the number of bids in the auction decreases the cost for the service requester, and this decrease is greater for an auction in which less services are being auctioned. In addition, the experiments have shown that it is more profitable for service providers to offer services in bigger bundles, and that achieving a highly cohesive composite service increases the cost for the service requester, while setting low cohesion as the desired quality has almost no impact on the cost.

REFERENCES

[1] Andrews, M.L., R.L. Benedicktus, and M.K. Brady, The effect of incentives on customer evaluations of service bundles. Journal of Business Research, 2010. 63(1): p. 71-76.

[2] Herrmann, A., F. Huber, and R.H. Coulter, Product and service bundling decisions and their effects on purchase intention. Pricing Strategy and Practice, 1997. 15(3): p. 99-107.

[3] Hanson, W. and R.K. Martin, Optimal Bundle Pricing. Management Science, 1990. 36(2): p. 155-174.

[4] Briand, L.C., C. Bunse, and J.W. Daly, A controlled experiment for evaluating quality guidelines on the maintainability of object-oriented designs. IEEE Transactions on Software Engineering, 2001. 27(6): p. 513-530.

[5] Perepletchikov, M., C. Ryan, and K. Frampton. Cohesion Metrics for Predicting Maintainability of Service-Oriented Software. in Seventh International Conference on Quality Software QSIC '07. 2007, 328-335.

[6] Perepletchikov, M., C. Ryan, and Z. Tari, The Impact of Service Cohesion on the Analyzability of Service-Oriented Software. IEEE Transactions on Services Computing, 2010. 3(2): p. 89-103.

[7] Cramton, P.C., Y. Shoham, and R. Steinberg, Combinatorial Auctions. 2006, Cambridge, Mass.; London: MIT Press.

[8] de Vries, S. and R.V. Vohra, Combinatorial Auctions:A Survey. INFORMS Journal on Computing, 2003. 15(3): p. 284.

[9] IEEE Standard Glossary of Software Engineering Terminology. IEEE Std 610.12-1990, 1990.

[10] Coleman, D., et al., Using metrics to evaluate software system maintainability. Computer, 1994. 27(8): p. 44-49.

[11] Eder, J., G. Kappel, and M. Schrefl, Coupling and cohesion in object-oriented systems. Technical Reprot, University of Klagenfurt, Austria, 1994.

[12] Stevens, W.P., G.J. Myers, and L.L. Constantine, Structured design. IBM Systems Journal, 1974. 13(2): p. 115-139.

[13] Yourdon, E. and L.L. Constantine, Structured design: fundamentals of a discipline of computer program and systems design. 1979: Prentice Hall.

[14] Briand, L.C., J.W. Daly, and J. Wüst, A unified framework for cohesion measurement in object-oriented systems. Empirical Software Engineering, 1998. 3(1): p. 65-117.

[15] Papazoglou, M.P. and W.-J. Van Den Heuvel, Service-oriented design and development methodology. International Journal of Web Engineering and Technology, 2006. 2(4): p. 412-442.

[16] Milanovic, N. and M. Malek, Current solutions for web service composition. Internet Computing, IEEE, 2004. 8(6): p. 51-59.

[17] Blumrosen, L. and N. Nisan, Combinatorial Auctions, in Algorithmic Game Theory. 2007, Cambridge University Press p. 267-299.

[18] Baldwin, C.Y. and K.B. Clark, Design Rules, Vol. 1:The Power of Modularity. 2000: The MIT Press.

[19] Zeng, L., et al., QoS-Aware Middleware for Web Services Composition. IEEE Trans. Softw. Eng., 2004. 30(5): p. 311-327.

[20] Sandholm, T., Algorithm for optimal winner determination in combinatorial auctions. Artificial Intelligence, 2002. 135(1): p. 1-54.

[21] Padberg, M.W., Linear Optimization and Extensions. 1999: Springer. [22] Leyton-Brown, K., M. Pearson, and Y. Shoham, Towards a universal

test suite for combinatorial auction algorithms, in Proceedings of the 2nd ACM conference on Electronic commerce. 2000, ACM: Minneapolis, Minnesota, United States. p. 66-76.

[23] Ramacher, R. and L. Monch. Cost-Minimizing Service Selection in the Presence of End-to-End QoS Constraints and Complex Charging Models. in IEEE Ninth International Conference on Services Computing (SCC). 2012, 154-161.

[24] Parsons, S., J.A. Rodriguez-Aguilar, and M. Klein, Auctions and bidding: A guide for computer scientists. ACM Comput. Surv., 2011. 43(2): p. 1-59.

[25] Bakos, Y. and E. Brynjolfsson, Bundling and Competition on the Internet. Marketing Science, 2000. 19(1): p. 63-82.

[26] Moghaddam, M. and J. Davis, Service Selection in Web Service Composition: A Comparative Review of Existing Approaches, in Handbook on Web Services:Web Services Foundations, A. Bouguettaya, M. Sheng, and F. Daniel, Editors. 2013, Springer.

[27] Ardagna, D. and B. Pernici, Adaptive Service Composition in Flexible Processes. IEEE Trans. on Software Eng., 2007. 33(6): p. 369-384.

[28] Canfora, G., et al., An approach for QoS-aware service composition based on genetic algorithms, in Proceedings of the 2005 conference on Genetic and evolutionary computation. 2005, ACM: Washington DC, USA. p. 1069-1075.

[29] Lecue, F. and N. Mehandjiev. Towards Scalability of Quality Driven Semantic Web Service Composition. in IEEE International Conference on Web Services (ICWS) 2009, 469-476.

[30] Rosenberg, F., et al. An End-to-End Approach for QoS-Aware Service Composition. in IEEE International Enterprise Distributed Object Computing Conference (EDOC '09). 2009, 151-160.

[31] Wiesemann, W., R. Hochreiter, and D. Kuhn. A Stochastic Programming Approach for QoS-Aware Service Composition. in IEEE International Symposium on Cluster Computing and the Grid (CCGRID '08). 2008, 226-233.

[32] Yan, J., et al., Autonomous service level agreement negotiation for service composition provision. Future Generation Computer Systems, 2007. 23(6): p. 748-759.

[33] Chhetri, M.B., et al. A coordinated architecture for the agent-based service level agreement negotiation of Web service composition. in Australian Software Engineering Conference (ASWEC). 2006, 90 - 99

[34] Richter, J., et al., Establishing composite SLAs through concurrent QoS negotiation with surplus redistribution. Concurrency and Computation: Practice and Experience, 2011.

[35] Zulkernine, F., et al. A Policy-Based Middleware for Web Services SLA Negotiation. in IEEE International Conference on Web Services ICWS 2009, 1043-1050.

[36] Mohabey, M., et al. A Combinatorial Procurement Auction for QoS-Aware Web Services Composition. in IEEE International Conference on Automation Science and Engineering (CASE ). 2007, 716-721.

[37] Mohabey, M., et al. An Intelligent Procurement Marketplace forWeb Services Composition. in Web Intelligence, IEEE/WIC/ACM International Conference on. 2007, 551-554.

[38] Blau, B., T. Conte, and C.v. Dinther, A multidimensional procurement auction for trading composite services. Electron. Commer. Rec. Appl., 2010. 9(5): p. 460-472.

88