Algorithmic Solutions for Maximizing Shareable Costs

This paper addresses the optimization problem to maximize the total costs that can be shared among a group of agents, while maintaining stability in the sense of the core constraints of a cooperative transferable utility game, or TU game. When maximizing total shareable costs, the cost shares must satisfy all constraints that define the core of a TU game, except for being budget balanced. The paper first gives a fairly complete picture of the computational complexity of this optimization problem, its relation to optimiztion over the core itself, and its equivalence to other, minimal core relaxations that have been proposed earlier. We then address minimum cost spanning tree (MST) games as an example for a class of cost sharing games with non-empty core. While submodular cost functions yield efficient algorithms to maximize shareable costs, MST games have cost functions that are subadditive, but generally not submodular. Nevertheless, it is well known that cost shares in the core of MST games can be found efficiently. In contrast, we show that the maximization of shareable costs is NP-hard for MST games and derive a 2-approximation algorithm. Our work opens several directions for future research.


Introduction
The fundamental algorithmic question that is addressed in this paper is: Can we maximize the total costs that can be shared among a set of agents, while maintaining coalitional stability? Here, coalitional stability refers to the core constraints of an underlying cooperative transferable utility game, or TU game: Any proper subset of the set of all agents has an outside option at a certain cost, and coalitional stability of cost shares means that all subsets of agents are willing to accept the cost shares, because their outside option is less attractive, meaning that it is at least as costly as the sum of their cost shares.
This question is arguably a fundamental question for the design of cost sharing mechanisms, and the main goal of this paper is to give more insight into its algorithmic complexity. Several closely related results exist and will be discussed in the next section. In the literature, these are a bit scattered and sometimes ignorant of each other.
The main contributions of this paper are as follows. We introduce a basic polyhedral object that we refer to as the almost core of a cooperative game. It is obtained from the core by simply relaxing the requirement that the cost shares must be budget balanced. By definition, this polyhedron is non-empty. The algorithmic problem that we address is to maximize cost shares that lie in the almost core, which is a linear optimization problem over that polyhedron. For the case that the underlying core of the cooperative game is empty, it turns out that the computational problem to maximize shareable costs is equivalent to finding a minimal nonempty core relaxation for several of the core relaxations that have been proposed earlier in the literature. This is maybe not surprising, yet a good overview of how all these relaxations relate to each other does not seem to appear anywhere in the literature. The paper further establishes complexity theoretic results that relate computational problems for the almost core with corresponding problems for the classical core. While it turns out that general linear optimization over almost core and core share the same algorithmic complexity, we show that there are classes of games where core elements can be efficiently computed, while the computation of maximal shareable costs cannot be done in polynomial time, unless P = NP. That hardness result is obtained for a well-studied class of games with non-empty core, namely minimum cost spanning tree games. This class of games is interesting also because the resulting cost function is subadditive but generally not submodular. And while submodularity yields polynomial-time algorithms, our hardness result shows that subadditivity does not suffice. For minimum cost spanning tree games, we further show how to obtain a 2-approximation algorithm for maximizing shareable costs, and we show that our analysis of that algorithm is tight.
The structure of this paper is as follows. The basic notions and definitions are given in Section 2. As previous papers have mostly focused on core relaxations for unbalanced games (that is, with an empty core), we briefly review these in Section 3, and discuss how they relate to the problem to compute maximal "almost core" cost shares. A novel aspect of our approach is to also address games that have a non-empty core. Section 4 therefore relates linear optimization over the "almost core" to the core, and we derive some algorithmic consequences. Section 5 then addresses the problem to compute maximal cost shares for minimum cost spanning tree (MST) games, showing NP-hardness, as well as giving a 2-approximation algorithm. We conclude with some open problems in Section 6.

Core and Almost Core for TU Games
A cooperative game with transferable utility (henceforth TU game) is described by a pair (N, c) where N = {1, . . . , n} denotes the set of agents, and c : 2 N → R ≥0 is the characteristic function that assigns to every coalition S a value c(S) representing the cost of an "outside option", which is the minimum total cost that the agents in S can achieve if they cooperate amongst themselves. With a slight overload of notation write n = |N | for the number of agents. An allocation for (N, c) is a vector x ∈ R n with x i being the cost share allocated to agent i ∈ N . For convenience, we write x(S) = i∈S x i . An allocation x is said to be budget balanced if x(N ) = c(N ). That means that the total cost of the so-called grand coalition N is being distributed over the individual agents. It is called stable if it satisfies coalitional stability, i.e., x(S) ≤ c(S) for all S N . The core [20] of game (N, c), arguably one of the most important concepts in cooperative game theory, consists of all budget balanced allocations satisfying coalitional stability. The core of a TU game is given by The core of a TU game is non-empty if and only if the game is balanced [7,42]. In fact, being balanced is just a dual characterization of the non-emptiness of the polyhedron C (N,c) .
When we drop the equality constraint that a core allocation is budget balanced, so do not require that x(N ) = c(N ), it allows to vary the total cost that is distributed over the set of agents, resulting in a problem that always has a feasible solution. This captures the idea that, depending on the underlying game, one may have to, or want to, distribute either less or more than c(N ).
For convenience, we refer to the set of all such allocations as the almost core. Formally, given a TU game (N, c), define the almost core for (N, c) by Obviously, C (N,c) ⊆ AC (N,c) . The major motivation for this definition is to systematically study the algorithmic complexity of cooperative games without having to obey to budget balance, so optimization over the polyhedron AC (N,c) . Let us motivate the relevance of this problem.
On the one hand, if the total cost c(N ) of the grand coalition cannot be distributed over the set of agents while maintaining coalitional stability, i.e., the game is unbalanced, it is a natural question to ask what fraction of the total cost c(N ) can be maximally distributed while maintaining coalitional stability. This problem has been addressed under different names, among them the cost of stability of a cooperative game [3]. It has received quite some attention in the literature, e.g. [1,2,3,4,8,21,24,31,29,30,34,35]. Indeed, for games with empty core, maximizing x(N ) over the almost core is equivalent to computing the cost of stability, and also to computing some other minimal core relaxations proposed earlier in the literature; see Section 3 for details.
On the other hand, also if the core is non-empty one may be interested in maximizing the total cost that can be distributed over the set of agents. It reveals the maximal value for c(N ) that would still yield a non-empty core. One motivation for this maximization problem is to determine the maximal tax rate that could be levied on a given c(N ), without any subset of agents S N wanting to deviate.
That said, the object of interest of this paper is the following linear program.
The objective value of this linear program indicates the largest total cost that can be shared among the agents while retaining stability in the sense that no subset of agents S N would prefer to deviate to the outside option. We call an optimal solution value for this linear program the almost core optimum, and any maximizer is called an optimal almost core allocation. Sometimes we also consider the restricted problem where we also require that x ≥ 0, which means that agents must not receive subsidies.
Clearly, the core of a game is non-empty if and only if the almost core optimum is larger than or equal to c(N ). We study problem (1) mainly for games with non-empty core, while for games with empty core we next give a fairly complete overview of its relation to earlier proposed core relaxations.

Equivalent and Related Relaxations of the Core
We review several well-known and related concepts that were introduced in order to deal with games having an empty core and discuss their relationship to the almost core (optimum).
The first relaxation of the core, introduced by Shapley and Shubik [41], is the strong ε-core, defined as We denote the smallest ε ≥ 0 for which this set is non-empty by ε ⋆ s . The corresponding set C ε ⋆ s s (N, c) is called the least core [32].
Shapyley and Shubik [41] also introduced the weak ε-core as We denote the smallest ε ≥ 0 for which this set is non-empty by ε ⋆ w . Note that by definition, for any ε ≥ 0, C ε s (N, c) ⊆ C ε w (N, c), and hence ε ⋆ w ≤ ε ⋆ s . Instead of using an additive relaxation of the constraints, Faigle and Kern [17] defined the multiplicative ε-core as A different viewpoint is called approximate core or γ-core [24] for some γ ∈ [0, 1], it is defined as Denote the largest γ ≤ 1 for which this set is non-empty by γ ⋆ a . The gap between the almost core optimum and the total cost of the grand coalition c(N ) was called the cost of stability for an unbalanced cooperative game by Bachrach et al. [3]. For (unbalanced) cost sharing games it is defined by Meir et al. [33] as An alternative viewpoint was independently introduced in a paper by Bejan and Gómez [4] who considered, for profit sharing games, the so-called extended core. In order to define it for cost sharing games, let The extended core is now the set of all budget balanced x ∈ R n , so all x with x(N ) = c(N ) for which the minimum above is attained (for suitable t ∈ R n ≥ 0 ). Yet another concept to stabilize an unbalanced game was considered by Zick, Polukarov, and Jennings [43].
Interpreting t i in the definition of the extended core of Bejan and Gómez [4] as a discount offered to agent i, in [43] a coalitional discount t S is offered to each agent set S. This is an exponential blowup of the solution space, which however gives more flexibility.
For unbalanced games, i.e., games with an empty core, computing the almost core optimum is clearly the same as computing the cost of stability δ ⋆ CoS . The following theorem further shows how the different core relaxations are related with each other with respect to optimization. Some of these relations were known, e.g., Liu et al. [28,29] mention the equivalence of computing γ ⋆ a and δ ⋆ CoS and ε ⋆ m , and also the relation between the cost of stability δ ⋆ CoS and the smallest weak ε-core ε ⋆ w appears in [3,34], yet we are not aware of a summarizing overview of how the different relaxations relate. Hence we give this summary here for the sake of completeness, and also give the short proof.
Theorem 1 (in parts folklore). For any TU game (N, c) with empty core, the optimization problems for the weak ε-core, the multiplicative ε-core, the cost of stability and the extended core are equivalent. In particular, the values satisfy . Now it is easy to see that the actual entries of t do not matter (except for nonnegativity), but only the value Clearly, the minimum ε ⋆ w is attained if and only if ε · n = δ ⋆ CoS holds.
Moreover, it was shown in [34, Section 4] that ε ⋆ w ≥ 1 n−1 ε ⋆ s . Further relations between the cost of stability δ ⋆ CoS and other core relaxations for specific classes of games appear in [34,2]. For instance, it is true that for supperadditive (profit sharing) games, Indeed, much of the previous work in this direction was about determining bounds on the cost of stability [3,33,34,35,8] or other structural insights [4].
However, algorithmic considerations were also made for specific (unbalanced) games such as showing hardness for computing the price of stability of general weighted voting games [3], and showing hardness for computing the price of stability of threshold network flow games [39]. Moreover, Aziz, Brandt and Harrenstein [1] give several results on the computational complexity of computing the cost of stability (and other measures) for several combinatorial games such as weighted graph, voting or matching games, as well as their threshold versions.
One of the few papers which considers the impact of restrictions on possible coalition formation in relation to algorithmic questions, and in that respect also related to our work, is by Chalkiadakis, Greco and Markakis [10]. In the spirit of Myerson [36], they assume that the formation of coalitions is restricted by a so-called interaction graph, and analyze how the computational complexity of several core-related concepts such as core membership, core non-emptiness, or cost of stability depends on the structure of that graph. Under different assumptions on polynomial-time compact representations of the underlying game, their results include hardness as well as tractability results that depend on the interaction graph. Their results also imply hardness of computing the cost of stability for arbitrary subadditive (cost) games.
Also approximations of ε ⋆ m for the multiplicative (1 + ε)-core and corresponding allocations have been obtained, e.g., for the symmetric traveling salesperson game by Faigle et al. [16], and for the asymmetric case also by Bläser et al. [6].
There are also papers that attack the problem from a mathematical optimization and computational point of view. Under the name "optimal cost share problem" (OCSP), Caprara and Letchford [9] suggest how to obtain γ-core solutions for a generalization of certain combinatorial games, named integer minimization games, using column or row generation techniques. Under the name "optimal cost allocation problem" (OCAP), also Liu, Qi and Xu [28] follow the line of research initiated by [9] and give computational results using Lagrangian relaxations. A related line of research [29] is to consider the strong ε-core relaxation parameterized by ε as given by the function and to approximate it computationally. This so-called "penalty-subsidy function" [29] is further studied in another variant in a follow up paper [30], there approximating it using Langragian relaxation techniques, and with computational results specifically for traveling salesperson games.
Also the problem to compute allocations in the least core has been considered in the literature. For cooperative games with submodular cost functions, it can be computed in polynomial time [12], while for supermodular cost cooperative games it is NP-hard to compute, and even hard to approximate [40].
Specifically relevant for our work are results by Faigle et al. [19] who show hardness to compute a cost allocation in the so-called f -least core for minimum cost spanning tree games, which is a tightening of the core constraints to x(S) ≤ c(S) − εf (S) for certain non-negative functions f . As we will argue, their result also implies hardness of computing optimal almost core allocations for the class of minimum cost spanning tree games.

Computational Complexity Considerations
In this section we investigate the computational complexity of optimization problems related to the (nonnegative) core and almost core. To capture results for the general and the nonnegative case, we consider linear optimization over the polyhedra as well as optimization over P (N,c) ∩ R n ≥ 0 and AC (N,c) ∩ R n ≥ 0 for families of games (N, c). Note that if the core is non-empty then it is the set of optimal solutions when maximizing ½ · x over P (N,c) . Also note that whenever the core of a game (N, c) is empty, this means that the constraint x(N ) ≤ c(N ) is implied by the set of constraints x(S) ≤ c(S), S N , which in turn implies P (N,c) = AC (N,c) . For games with non-empty core, we get the following correspondence between the optimization problems for the two polyhedra. Proof. In order to prove the result we make use of the equivalence of optimization and separation [23,25,37]. This means, we only need to show that we can solve the separation problem for P ( Otherwise, we havex k ∈ P (N,c) for all k ∈ N and claimx ∈ AC (N,c) . To prove this claim we assume that, for the sake of contradiction,x(S) > c(S) holds for some S N . Let k ∈ N \ S. Sincex k i =x i holds for all i ∈ S, we havex k (S) =x(S) > c(S). This contradicts the fact thatx k ∈ P (N,c) holds.
It turns out that almost the same result is true when we also require that there are no subsidies, that is x ≥ 0. For linking the non-negative core to the non-negative almost core, it requires an assumption on the characteristic function.
This condition holds, for instance, for monotone functions c, and implies that the core is contained in R n ≥ 0 (see Lemma 2 and Theorem 1 in [14]). The proof is a rather straightforward extension of that of Theorem 2, additionally making use of condition (3) to guarantee nonnegativity. We obtain an immediate consequence from these two theorems. Proof. For submodular c( · ) one can optimize any linear objective function over P (N,c) using the Greedy algorithm [15]. The result follows from Theorems 2 and 3.
These results only make statements about optimizing arbitrary objective vectors over these polyhedra. In particular we cannot draw conclusions about hardness of the computation of an almost core allocation, which is maximizing ½ · x over AC (N,c) . However, it is easy to see that this problem cannot be easier than deciding non-emptiness of the core, as the core of a game (N, c) is non-empty if and only if the almost core optimum is at least c(N ). Hence we immediately get the following. Then an efficient algorithm to compute an optimal almost core allocation cannot exist, unless P = NP.
It is well known that there exist games for which it is NP-hard to decide non-emptiness of the core, e.g., the weighted graph game [13], or the unrooted metric traveling salesperson game [9]. Hence, we cannot hope for a polynomial-time algorithm that computes an optimal almost core allocation for arbitrary games.  (N,c) . Generalizing, the same is true for classes of games where a polynomial number of constraints can be shown to be sufficient to define the complete core. As an example we mention matching games in undirected graphs [26], where the core is completely described by the polynomially many core constraints induced by all edges of the underlying graph, as these can be shown to imply all other core constraints. P (N,c) is described by a polynomial number of inequalities, finding an optimal (almost) core allocation can be done in polynomial time by linear programming.

Proposition 1. Whenever
Note that Proposition 1 includes supermodular cost functions. It is therefore interesting to note that for supermodular cost games, it is NP-hard to approximate the least core value ε ⋆ s better than a factor 17/16 [40]. The reason for this discrepancy is the simple fact that the least core is based on the strong ε-core, while the almost core relates to the weak ε-core as per Theorem 1.
It also turns out that condition (3) implies that the value of an almost core allocation cannot exceed that of a core allocation by much.

Proposition 2. Let (N, c) be a game that satisfies (3). Then every
Proof. Let x ∈ AC (N,c) . We obtain where the first inequality follows from feasibility of x and the second follows from (3).
Condition (3) implies non-negativity for all core allocations and all optimal almost core allocations, as However, this does not mean that a nonnegativity requirement implies that the almost core optimum is close to c(N ). In the next section, we will see that this gap can be arbitrarily large (see Proposition 3).

Minimum Cost Spanning Tree Games and Approximation
In this section we address a well known special class of games known as minimum cost spanning tree (MST) games [11,5,22]. In MST games, the agents are nodes in an edge-weighted undirected graph G, and the cost of the outside option for a set of agents S is determined by the cost of a minimum cost spanning tree in the subgraph induced by these agents. MST games are known to have a non-empty core. Moreover, it is known that finding some element in the core is computationally easy and can be done by computing a minimum cost spanning tree [22]. The optimization problem that we address asks for the maximal amount that can be charged to the agents while no proper subset of agents would prefer the outside option.
While in general, maximizing shareable costs is the same as asking for the maximum value c(N ) that still yields a non-empty core, the question may appear a bit artificial for minimum cost spanning tree games, as there, the value c(N ) is computed as the minimum cost of a spanning tree for all agents N . From a practical viewpoint this can be motivated by assuming there are exogenous physical or legal restrictions that prohibit the grand coalition N to form, so that the player set N has no bargaining power.
Apart from that, there is a more theoretical perspective that motivates studying the almost core for MST games. One can easily see that for MST games the cost function c( · ) is subadditive, yet it is not submodular in general; see [27] for a characterization when it is. Recalling that the computation of maximum shareable costs can be done in polynomial time when c( · ) is submodular, it is a natural question to ask if this still holds for subadditive cost functions. In that respect, note that the weighted graph games as studied in [13] have polynomial-time algorithms to decide non-emptiness of the core whenever c( · ) is subadditive. Hence Theorem 4 applied to weighted graph games does not give an answer to this question. Also the results of [10] yield that there exist subadditive cost games for which the computation of the price of stability, hence computation of the almost core optimum is hard, yet that result also relies on hardness of the problem to decide non-emptiness of the core. We next show that even for MST games with monotone cost function c( · ), despite always having a non-empty core, maximizing shareable costs cannot be done efficiently unless P = NP.

Preliminaries
Let us first formally define the problem and recall what is known. We are given an edge-weighted, undirected graph G = (N ∪{0}, E) with non-negative edge weights w : E → R ≥0 , where node 0 is a special node referred to as "supplier" node. Without loss of generality we may assume that the graph is complete by adding dummy edges with large enough cost. Following [22], the associated monotonized minimum cost spanning tree game (N,c) is obtained by defining the characteristic function using the monotonized cost functionc(S) := min R⊇S c(R) . This is motivated by assuming that agents can also use other agents as "Steiner nodes". Indeed, note thatc(S) ≤c(R) for S ⊆ R, and for the associated cores of these two games, we have that C (N,c) ⊆ C (N,c) . Moreover, it is well known that the core of both games is non-empty, and a core allocation x ∈ C (N,c) is obtained in polynomial time by just one minimum cost spanning tree computation: if T is some MST, let e v ∈ T be the edge incident with v on the unique path from v to the supplier node 0 in T , then letting one gets an element x in the core of the monotonized minimum cost spanning tree game (N,c) [22], and hence also a core element for the game (N, c). One convenient way of thinking about this core allocation is a run of Prim's algorithm to compute minimum cost spanning trees [38]: starting to build the tree with vertex 0, whenever a new vertex v is added to the spanning tree constructed so far, v gets charged the cost of the edge e v that connects v.
In summary, computing some core allocation can be done efficiently, while linear optimization over the core of MST games is co-NP hard (under Turing reductions) [18]. We are interested in the same questions but for the case that the budget balance constraint is absent. So we seek solutions to the almost core maximization when c(·) is the characteristic function defined by minimum cost spanning trees. The interpretation of the lacking constraint x(N ) = c(N ) is that the grand coalition cannot establish the solution with cost c(N ) on its own, say by legal restrictions.

Computational Complexity
As a first result, and not surprising, linear optimization over the almost core is hard for MST games. (N, c), a polynomial-time algorithm for linear optimization over AC (N,c) would yield P=NP.

Corollary 2. For minimum cost spanning tree games
Proof. The result follows from Theorem 2 and the fact that the membership problem for the core of (N, c) is a coNP-hard problem for MST games [18].
What is more interesting is that optimizing ½ · x over the almost core remains hard for MST games.

Theorem 5.
Computing an optimal almost core allocation in (4) for minimum cost spanning tree games is NP-hard, and this is also true for monotonized minimum cost spanning tree games (N,c).
Proof. Let ε ⋆ be the largest ε for which the linear inequality system has a solution. In [19] it is shown that finding a feasible solution x for (5) with respect to ε ⋆ is NP-hard. Note that in the reduction leading to this hardness result, c(N ) > 0. Then, given an optimum almost core allocation x AC , x AC (N ) ≥ c(N ) > 0, and we can obtain ε ⋆ := 1 − c(N )/x AC (N ). It is now easy to see that the vector x ′ := (1 − ε ⋆ )x AC is a feasible solution for (5). To see that the so-defined ε ⋆ is indeed maximal, observe that scaling any feasible vector in (5) by 1/(1 − ε ⋆ ) yields an almost core allocation. Hence, computation of an almost core optimum for MST games yields a solution for an NP-hard problem. To see the last claim about monotonized minimum cost spanning tree games, observe that the underlying reduction from the NP-hard minimum cover problem in [19] yields a minimum cost spanning tree game that has a monotone cost function c(·) by definition.
Next, we note that in general, the almost core optimum may be arbitrarily larger than c(N ) for MST games. This is remarkable in view of Proposition 2, which shows that under condition (3), any core allocation yields a good approximation for an optimal almost core allocation, as they differ by a factor at most n/(n − 1). A fortiori, the same holds for the monotonized MST games (N,c). For general MST games (N, c), and without condition (3), this gap can be large.

Proposition 3.
The almost core optimum can be arbitrarily larger than c(N ), even for minimum cost spanning tree games and when we require that x ≥ 0.
Proof. Consider the instance depicted in Figure 1a, for some value k > 0. Then c(N ) = 0, while x = (0, 0, k) is an optimal non-negative almost core allocation with value k.
In the following we consider problem (4) but with the added constraint that x ≥ 0. (N,c) , and x ≥ 0 .
The presence of the constraint x ≥ 0 means that agents must not be subsidized. As can be seen from the example in Figure 1b, such subsidies may indeed be necessary in the optimal solution to (4), as there, the only optimal solution uses cost shares (−k, k, k). However, we next show that such subsidies are in some sense an artifact of "small edge costs" in graph G, and for optimization purposes can be neglected in the following sense.
Theorem 6. Every instance of the almost core optimization problem (4) can be reduced in polynomial time to an instance of problem (6). Consequently, problem (6) is also NP-hard for minimum cost spanning tree games.
As a matter of fact, the NP-hardness also follows from the fact that for monotonized MST games, we have that x ≥ 0 is redundant in (6), recalling that Proof. Given an instance of (4) with edge costs w, define new edge costs w ′ (e) := w(e) + M , e ∈ E, for large enough constant M to be defined later. Note that c ′ (S) = c(S) + |S| · M for S ⊆ N . We argue that this renders x ≥ 0 redundant. Consider an optimal solution x ′ to problem (6) for edge costs w ′ , and define

Two-Approximation Algorithm
We next propose the following polynomial time algorithm to compute an approximately optimal almost core allocation for problem (6). Let i ∈ I k−1 , j ∈ N \ I k−1 with minimum w(i, j) (among those i, j). 4 Let I k := I k−1 ∪ {j} and augment the tree T := T ∪ {{i, j}}. 5 Assign agent j the cost share x j := w(i, j). 6 end 7 Let ℓ ∈ I n \ I n−1 be the last assigned agent. 8 Update agent ℓ's cost share x ℓ := min The backbone of Algorithm 1 is effectively Prim's algorithm to compute a minimum cost spanning tree [38]. The additional line 5 yields the core allocation by Granot and Huberman [22], which we extend by adding lines 7 and 8.
Let us first collect some basic properties of Algorithm 1. Henceforth, we assume w.l.o.g. that the agents get assigned their cost shares in the order 1, . . . , n (so that ℓ = n in lines 7 and 8). We denote by x ALG a solution computed by Algorithm 1. Proof. The first claim follows directly because Algorithm 1 equals Prim's algorithm to compute a minimum cost spanning tree on the vertex set {0, . . . , n − 1}, and x ALG (I k ) equals the cost of the minimum cost spanning tree on vertex set {1, . . . , k}, Hence by correctness of Prim's algorithm [38], x ALG (I k ) = c(I k ). The second claim follows by [22,Thm. 3], since the cost allocation for agents {1, . . . , n − 1} is the same as in [22].
Proof. Recall the agents got assigned their cost shares in order 1, . . . , n. Define k := max{i | i / ∈ S} to be the largest index of a agent not in S. Let i 1 , . . . , i ℓ be the set of agents so that N −k = S ∪ {i 1 , . . . , i ℓ } and w.l.o.g. i 1 < · · · < i ℓ . We show that x ALG (S) > c(S) implies x ALG (S ∪ {i 1 }) > c(S ∪ {i 1 }). Then repeating the same argument, we inductively arrive at the conclusion that x ALG (N −k ) > c(N −k ). So observe that and c(S) is the cost of a minimum cost spanning tree for S, call it MST(S). Moreover, as i 1 = n, x i1 is the cost of the edge, call it e, that the algorithm used to connect agent i 1 . We claim that MST(S) ∪ {e} is a tree spanning vertices S ∪ {0, i 1 }, hence c(S) + x i1 is the cost of some tree spanning S ∪ {0, i 1 }. Then, as required we get  Proof. Recall that in minimum cost spanning tree games [11,22], the weight of edges are non-negative. Since We claim thatx n := c(N ) − c(N −(n−1) ) ≥ 0 is a feasible solution to this maximization problem, hence the actual value of x ALG n after the update in line 8 can only be larger, and therefore in particular it is nonnegative. First, note that indeed,x n ≥ 0, as this is the cost of the last edge that Prim's algorithm uses to connect the final vertex n to the minimum cost spanning tree. Thatx n is feasible in (7) follows from the fact thatx n is the cost share that is assigned to agent n in the core allocation of [22]. Indeed, lettingx be equal to x except forx n = c(N ) − c(N −(n−1) ), we have thatx is precisely the cost allocation as proposed in [22]. By the fact that this yields a core allocation, we have thatx(S) ≤ c(S) for all S ⊆ N , so in particular for all k = 1, . . . , n − 1,x , and hence the claim follows. Theorem 7. Algorithm 1 is a 2-approximation for the almost core maximization problem (6) for minimum cost spanning tree games, and this performance bound is tight for Algorithm 1.
Proof. Denote by x ALG a solution by Algorithm 1. We first argue that Algorithm 1 yields a feasible solution. To show that the performance guarantee is indeed 2, let x OPT be some optimal solution to the almost core maximization problem. Let k ⋆ ∈ N −n be the index for which the minimum in line 8 is attained. Observe that x ALG n is updated such that x ALG (N −k ⋆ ) = c(N −k ⋆ ) holds. Then by non-negativity of x OPT and because of Lemma 3, (N ) . Moreover, by definition of x ALG , we have x ALG (N −n ) = c(N −n ), and by Lemma 3, . To see that the performance bound 2 is tight for Algorithm 1, consider the instance in Figure 2a.  Even though Theorem 6 suggests that the non-negativity requirement x ≥ 0 is irrelevant for optimization, it is important for Theorem 7. Without it, so allowing x i < 0 for some agents i, the above algorithm does not provide an approximation guarantee in general. To see that, consider again the instance given in Figure 1b, and observe that Algorithm 1 yields a cost allocation x ALG = (0, 0, 0), while x = (−k, k, k) is a feasible solution for the almost core.
It remains to remark that Algorithm 1 does generally not compute an allocation in the almost core of the corresponding monotonized game (N,c), as can be seen for the instance in Figure 2b. Here, we have that c(S) = 1 for all S ⊆ N except for c({2, 3}) = 2. An optimal almost core allocation is x = (0, 1, 1), and depending on how ties are broken, Algorithm 1 yields x ALG = (0, 1, 1) or x ALG = (1, 0, 0). The monotonized game hasc(S) = 1 for all S ⊆ N , and then an optimal almost core allocation isx = ( 1 2 , 1 2 , 1 2 ). Note that this example also shows that Proposition 2 is tight (for n = 3), as c(N ) = 1.

Conclusions
In the literature, one also finds minimum cost spanning tree games defined as profit sharing games, where one defines the value of a coalition S by the cost savings that it can realize in comparison to the situation where all agents in S connect directly to the source, Then the core constraints, for profit shares x v ∈ R n , are x v (S) ≥ v(S). It is not hard to see that all our results also hold for that version of the problem via the simple transformation x v i := c({i}) − x i . In particular, note that for value games all feasible solutions x v are non-negative, as core stability requires that x v i ≥ v({i}) ≥ 0. Our results imply NP-hardness for computation of minimum profit shares that are coalitionally stable, and the corresponding profit version of Algorithm 1 can be shown to yield a 2-approximation, which also can be shown to be tight.
We collect some open problems which we believe are interesting. First, we would like to gain more insight into the computational complexity for the almost core problem (1), also for other classes of games. Moreover, we could give a 2-approximation for cost MST games under the additional assumption that subsidies are not allowed. It would be interesting to extend this result to the general, unconstrained case. Also giving lower bounds on the approximability does seem plausible, as the "hard cases" for maximizing shareable costs are those where the minimum cost spanning tree is a (Hamiltonian) path.
Finally, both in general and for MST games one could define an even more general class of problems in the spirit of cooperative games with restricted coalition formation, by defining a (downward-closed) set system that describes all those subsets of agents that are able to cooperate and hence have access to an outside option, while all other subsets do not have that option. This is the same basic idea as that of restricted coalition formation by Myerson [36] or Chalkiadakis et al. [10]. The almost core as studied in this paper is the special case where this set system is particularly simple, namely the (n − 1)-uniform matroid.