1 Introduction

The paper builds on work published in ISESS 2013 [1] and in ISESS 2015 [2], where the general model of the theory of reverse combinatorial auctions and its selected environmental applications were presented. At the same time, we presented the results of laboratory experiments showing whether and to what extent the negotiating parties at auctions are able to approach the optimal result. The main practical goal of the paper was to contribute to increased cost-effectiveness of waste water cleaning projects [3, 4] in conditions where coalition solutions are possible.

The previous research results [1, 2, 5] have shown the need to deepen our research into sensitivity analysis of the resulting optimal solutions. Specifically, in terms of understanding how to study coalition structures in the space between the optimal solution and solutions in the form of individual projects, and how the change of feasible coalition structures changes achieved cost. This paper provides an approach for calculating the sensitivity and proposals for necessary adjustments of CRAB software, which makes its use for the relevant decision-making tasks more user friendly.

2 Models of Reverse Combinatorial Auctions in Environmental Applications

Before explaining the nature of the proposed approach of sensitivity analysis, we provide the basic model of reverse combinatorial auctions.

Supposed that m potential sellers S1, S2, …, S m offer a set R of r items, j = 1, 2, …, r, to one buyer B; a bid made by the seller S h , h = 1, 2, …, m, would be defined as

$$ b_{h} = \{ C,c_{h} \left( C \right)\} , $$
(1)

where

C ⊆ R, is a combination of items,

c h (C) is the price offered by the seller S h for the combination of items C.

The constraints ensure that the procurement provides at least one set of all items. The objective is to minimise the buyer’s cost, given the bids made by the sellers.

Binary variables are introduced for the model formulation:

y h (C) is a binary variable specifying whether the combination C is bought from the seller S h (y h (C) = 1).

The basic reverse combinatorial auctions model can be formulated as follows [6]:

$$ \sum\limits_{h = 1}^{m} {c_{h} \left( C \right)y_{h} \left( C \right) \to min} $$
(2)

subject to

$$ \sum\limits_{h = 1}^{m} {\sum\limits_{C \subseteq R}^{{}} {y_{h} \left( C \right) \ge 1, \forall j \in R,} } $$
(3)
$$ y_{h} \left( C \right) \in \left\{ {0, 1} \right\},\;\;\forall C\,\subseteq\,R,\;\;\forall h,\,h = 1,2, \ldots ,m. $$
(4)

This basic model only considers the minimisation of costs, which is complemented by restrictions on environmental standards. In terms of mathematical formulations, inequalities are added that compare the pollution reduction achieved with the required limit values for five specific environmental parameters (5).

$$ \sum\limits_{h = 1}^{m} {\sum\limits_{C \subseteq R}^{{}} {e_{hi} } \left( C \right)y_{h} \left( C \right) \ge E_{i} .} $$
(5)

where e hi are pollution parameters of the projects and Ei are the prescribed environmental standards for the parameters.

3 Sensitivity Analysis

For further decision-making about the investment program that is realised in practice, it is important to learn how sensitive deviations from the optimised coalition structure would be to other feasible structures.

For small examples it is possible to compute and relatively easily analyse all solutions, with coalition structures from the first best (optimal) solution ranked by increasing cost. The optimal solution is computed by solving the problems (2)–(4). As a result, we get the so-called first-best solution. The optimal costs are denoted Z1. Generally, we get the i-th solution by solving the problems (2)–(4) with an added constraint

$$ \sum\limits_{h = 1}^{m} {\sum\limits_{C \subseteq R} {c_{h} \left( C \right)y_{h} \left( C \right)} \ge Z_{i - 1} + \varepsilon ,} $$
(6)

where ε is a small positive number.

In typical practical cases, the number of feasible coalition structures is huge. For this reason, it is not possible to analyse all of them individually, i.e. to follow the order of the second-best, third-best, etc. solutions.

We propose that sensitivity analysis, based on analysing coalition structures for specific cost levels, can still provide support for decision-making about the projects in such cases. The difference between costs for individual project structures and costs for the first best solution could be divided to several levels corresponding to politically acceptable deviations of the practical program from the first best solution. It is possible to work with quartiles, quintiles etc. in the space of all feasible solutions.

The solutions for the cost levels could be computed from the basic model (see formulas (2), (3), and (4)) adding constraints:

$$ \sum\limits_{h = 1}^{m} {\sum\limits_{C \subseteq R} {c_{h} \left( C \right)y_{h} \left( C \right)} \ge L_{i} ,i = \, 1, \, 2, \ldots ,n,} $$
(7)

where n is number of levels and L i are cost levels.

4 Suggestions for CRAB Software Modification

We have developed our own software tool, CRAB (CombinatoRial Auction Body Software System) [7]. CRAB is a non-commercial software system for generating, solving, and testing combinatorial auction problems. The system solves problems using Balas’ method or the primal-dual algorithm [8]. CRAB has several advantages over CATS software [9], in particular, CRAB generates problems faster; combinations are generated in a more predictable way and only in given subset of all items; CSV is used as the primary data format; there is fine-grained control over the generated problem; a linear problem solver is a part of CRAB; and it provides multiple output formats. CRAB is implemented in Ruby, which enables us to quickly experiment with different approaches.

In the first phase of analysis, all combinations of goods in each package are generated (except empty set). This step is done for every package. In the second phase, the file is transformed into the binary programming problem. The bundles correspond to variables and bids correspond to prices of the objective function that is maximised. The problem consists of automatic constraints for each good (each good can be sold only once) and each buyer (buyer cannot get over his budget). The user of CRAB software can change automatically generated constraints and add or remove additional ones. The problem can be passed to the built-in binary programming solver to find out the optimal solution for a given combinatorial auction. Afterwards, the transformed model is passed to the Balas algorithm [8].

The CRAB architecture provides the possibility of extending the system, especially with respect to the implemented models and algorithms. For the sensitivity analyses, we modified the CRAB software according to the approaches for sensitivity analysis, (6) and (7), above.

A problem occurs when entering data for complex applications in optimisation of coalition solutions, such as in the construction of a waste water treatment plant (WWTP). This is particularly the case when appropriate variable names for multiple coalitions derive from the encoding of individual municipalities entering into these multiple coalitions. Experts generating sets of “promising” coalitions progress by identifying coalition-names on maps and not by the order of the municipalities in their list. Clarity is lost by this encoding, but this sequence has its own logic, because two coalitions comprising the same set of municipalities, but in a different order, may provide different solutions, for example, with a different location of the common WWTP. The software compares the same combination and warns the user in the report.

Currently we are working on improving user comfort when loading large data describing the real situation in the river basins and reservoirs, where there is a large number of “promising” coalitions entering the optimisation calculations. The new version should communicate better with conventional spreadsheets than is currently the case.

5 Sensitivity Analysis by CRAB Software

Imagine a situation where four municipalities discharge their wastewater into a small river that flows into the reservoir intended for bathing (e.g. may be ranked in so called Bathing Water by the Directive 2006/7/EC [10]). If we want to restore the quality of water for bathing, it is necessary that all four municipalities built waste water treatment plant (WWTP). This can be done by each building an individual WWTP or, alternatively, it is possible to try to merge the villages into so-called multiple coalitions to build a common WWTP either for all or some of them.

We let the experts estimate the necessary costs for the construction of the WWTP for the “promising projects”. These data are contained in Table 1.

Table 1. Estimated costs for the “promising projects”

The optimal solution for the numerical example given by the CRAB software, see Table 2:

Table 2. Optimal solution computed by CRAB software

Sensitivity analysis can be performed for the above example. The analysis is described above by the model (6). The problem has 9 solutions in our case. For the results, see Table 3.

Table 3. Sensitivity analysis computed by CRAB software

In practical cases, there are a large number of polluters, thus creating more complex models and calculations. In such cases, there are a large amount of feasible solutions. These situations can be solved in two ways:

  1. 1.

    In some cases, the solution of the entire case is divided into optimisation problems of sub-segments of river basin. A typical example is in a mountainous area, where it is possible to optimise the construction of wastewater treatment plants for each valley. For this situation, see the above numerical example.

  2. 2.

    If this is not possible, then one can work with “levels” between the cost of first best (optimal) solution and the cost of individual projects.

As a demonstration of the second case, we provide two practical applications from recreation lakes in the Czech Republic. Bathing water quality is an important issue in the EU (see Directive 2006/7/EC concerning the management of bathing water quality [10]). In both cases, multiple small municipalities should build their own WWTP or join one or more other municipalities and build a common WWTP. Solving these problems in small municipalities is quite costly in comparison to building and operating WWTPs in larger cities and requires support from public financial sources. Calculating the (theoretically) optimal solution could support political decision making about allocation of public funds in this area. In the case of cleaning phosphorus from water in a recreation lake, it is important that all polluters contribute to the project. In practice, they negotiate a common project proposal and apply for financial support. For assessing these proposals, it is useful to have the sensitivity analysis results available.

Lake Rozkoš is the first case. It is located in the Elbe River basin in Bohemia [11,12,13]. Two scenarios for achieving environmental targets (required status of the lake water) were formulated by specialists, together with an assessment of the investment and operating costs of the projects. The optimal solution (investment program) for 41 polluter-municipalities, where 166 coalitions were considered (41 individual WWTPs and 125 joint WWTPs), was computed. The results of the optimisation modelling presented in this paper have shown that over 20% of the costs could be saved where selected joint WWTPs are realised.

A sensitivity analysis was performed. Since the number of feasible coalition structures is huge (there are 2166 of them in the case of Rozkoš Lake), it would not be practical to analyse all of them (as it is done in our illustration presented above). For this reason, the difference (“space”) between costs for individual projects and costs for the first best (optimal) solution was initially divided into six levels corresponding to policy decisions about potential (politically acceptable) deviation of the practical program from the (theoretical) first best solution. The levels create borders of quintiles in the space of all potential (feasible) solutions. Level 1 was defined as the cost for the first best solution, level 6 as the cost for individual projects. Other levels are always about 20 percent higher than the previous level, where the second level was suggested as the politically acceptable one. These calculations provided a useful picture for better assessment of potential projects submitted in the region. For more details, see [5].

Lake Pastviny is the second case. This lake is located in east Bohemia, near the Polish border [14, 15]. The initial set of projects aimed at achieving the environmental standards required for bathing water in Lake Pastviny consists of 24 individual projects (WWTPs) and 131 multiple-coalition projects. These included 32 two-member coalitions, 38 three-member coalitions, 38 four-member coalitions, and 22 five-to-eight-member coalitions. The abatement costs, in the form of investment and operating costs, were assessed by the specialists for all of these projects. The analysis indicated a potential saving of annualised abatement costs of 6% in the case where half of the municipalities located in the lake watershed join specific coalitions and the rest build an individual WWTP.

In this case, the initial sensitivity analysis works with 4 costs levels. Level 1 was defined as the cost for the first best (optimal) solution, level 4 as the cost for individual projects. Other levels are always about 33% higher than the previous level. Moreover, here, the results provide a picture of how changing the coalition structure by decreasing of the number of multiple-member coalitions leads to an increase of the costs. For more details, see [16].

6 Conclusion

The paper is devoted to modification of the CRAB software for sensitivity analysis of solutions to combinatorial auction problems. The modification is used for analyses of coalition projects for the building of WWTPs.

We propose two possibilities. The first approach is appropriate for small examples, where it is possible to compute all feasible solutions ordered by total cost. In such cases, it is possible to analyse changes of coalition structures in terms of their increasing cost.

The second suggested modification of the CRAB software makes it possible to analyse a high number of feasible coalition structures located between the optimal coalition (i.e. the cost-effective one) and the structure consisting of individual projects. This approach is appropriate for setting of cost levels in complex real applications, including multiple-round subsidy negotiations (see [17]). The proposed approach of sensitivity analysis can be used not only in the case of reverse combinatorial auctioning in cleaning waste waters; the waste water treatment issue was used as a typical practical application.

Two practical applications are presented in the paper, together with a discussion of their contribution to relevant decision-making processes. In both cases, it is possible to continue to more detailed sensitivity analysis, according to the concrete requirements of participants in the decision making process. This could be particularly useful when the projects are multiple-round negotiated with the authority and other stakeholders.