## 1 Introduction

In recent years,
algorithmic game theory, an emerging field that combines
computer science, game theory and social choice, has received
much attention from the multiagent
community [18, 7, 21, 19].
Indeed,
multiagent systems research focuses on designing
intelligent agents, i.e., entities that can
coordinate, cooperate and negotiate without requiring human
intervention. In many application domains, such agents
are *self-interested*, i.e., they are built to maximize the rewards obtained
by their creators. Therefore, these agents can be modeled naturally using
game-theoretic tools. Moreover, as agents often have to function
in rapidly changing environments, computational
considerations are of great concern to their designers as well.

In many settings, such as online auctions and other types
of markets, agents act individually. In this case, the standard
notions of noncooperative game theory, such as *Nash equilibrium*
or *dominant-strategy equilibrium*, provide a prediction of the outcome of the interaction.
However, another frequently occurring type of scenario is that agents
need to form teams to achieve their individual goals.
In such domains, the
focus turns from the interaction between single agents to the
capabilities of subsets, or *coalitions*, of agents.
Thus, a more appropriate modeling toolkit for this setting
is that of *cooperative*, or *coalitional*,
game theory [3],
which
studies what coalitions are most likely to arise, and
how their members distribute the gains from cooperation.
When agents are self-interested, the latter question is obviously
of great importance. Indeed, the
*total* utility generated by the coalition is of little interest
to individual agents; rather, each agent
aims to maximize her own utility.
Thus, a *stable* coalition can be formed
only if the gains from cooperation can be distributed
in a way that satisfies all agents.

The most prominent solution concept that aims to formalize
the idea of stability in coalitional games
is the *core*. Informally,
an *outcome* of a coalitional game is a

*payoff vector*

*grand coalition*, i.e., the coalition that includes all agents. An outcome is said to be in the core if it distributes gains so that no subset of agents has an incentive to abandon the grand coalition and form a coalition of their own. It can be argued that the concept of the core captures the intuitive notion of stability in cooperative settings. However, it has an important drawback: the core of a game may be empty. In games with empty cores, any outcome is unstable, and therefore there is always a group of agents that is tempted to abandon the existing plan. This observation has triggered the invention of less demanding solution concepts, such as -core and the least core, as well as an interest in noncooperative approaches to identifying stable outcomes in coalitional games [4, 16].

In this paper, we approach this issue from a different perspective.
Specifically, we examine the possibility of stabilizing the
outcome of a game using external payments. Under this model, an
external party (the *center*), which can be seen as a central authority
interested in stable functioning
of the system,
attempts to incentivize a coalition of agents to
cooperate in a stable manner. This party does this by offering
the members of a coalition a supplemental payment
if they cooperate. This external
payment is given to the coalition as a whole, and is provided only if
this coalition is formed.

Clearly, when the supplemental payment is large enough, the resulting
outcome is stable: the profit that the deviators
can make on their own is dwarfed by the subsidy they could receive
by sticking to the prescribed solution. However, normally
the external party would want to minimize its expenditure.
Thus, in this paper we define and study the *cost of stability*,
which is the minimal supplemental payment that is required to
ensure stability in a coalitional game. We start by considering
this concept in the context where the central authority
aims to ensure that *all* agents cooperate, i.e., it
offers a supplemental payment in order to stabilize the grand
coalition. We then extend our analysis to the setting where
the goal of the center is the stability of
a *coalition structure*, i.e., a partition of all
agents into disjoint coalitions. In this setting, the center
does not expect the agents to work as a single team, but
nevertheless wants each individual team to be immune
to deviations. Finally, we consider the scenario where
the center is concerned with the stability of a particular
coalition within a coalition structure. This model is appropriate
when the central
authority wants a particular group of agents to work together,
but is indifferent to other agents switching coalitions.

We first provide bounds on the cost of stability in general coalitional
games. We then show that for some interesting special cases,
such as super-additive games, these bounds can be improved considerably.
We also propose a general algorithmic technique
for computing the cost of stability. Then,
to develop a better understanding of the concepts
proposed in the paper, we apply them in the context of
*weighted voting games* (WVGs), a simple but powerful
class of games that have been used to model cooperation
in settings as diverse as, on the one hand, decision-making in political bodies
such as the United Nations Security Council and
the International Monetary Fund
and, on the other hand,
resource allocation in multiagent systems.
For such games, we are able to obtain a complete
characterization of the cost of stability from an
algorithmic perspective.

The paper is organized as follows. In Section 2, we provide the necessary background on coalitional games. In Section 3, we formally define the cost of stability for the setting where the desired outcome is the grand coalition, prove bounds on the cost of stability, and outline a general technique for computing it. We then focus on the computational aspects of the cost of stability in the context of our selected domain, i.e., weighted voting games. In Section 4.1, we demonstrate that computing the cost of stability in such games is -hard if the weights are given in binary. On the other hand, for unary weights, we provide an efficient algorithm for this problem. We also investigate whether the cost of stability can be efficiently approximated. In Section 4.2, we answer this question positively by describing a fully polynomial-time approximation scheme (FPTAS) for our problem. We complement this result by showing that, by distributing the payments in a very natural manner, we get within a factor of 2 of the optimal adjusted gains, i.e., the sum of the value of the grand coalition and the external payments. While this method of allocating payoffs does not necessarily minimize the center’s expenditure, the fact that it is both easy to implement and has a bounded worst-case performance may make it an attractive proposition in certain settings. In Section 5, we extend our discussion to the setting where the center aims to stabilize an arbitrary coalition structure, or a particular coalition within it, rather than the grand coalition. We end the paper with a discussion of related work and some conclusions.

## 2 Preliminaries

Throughout this paper, given a vector and a set we write to denote .

###### Definition 2.1

A *(transferable utility) coalitional game* is given by
a set of *agents* (synonymously, *players*)
and a *characteristic function*
that for any subset (coalition)
of agents lists the total utility these agents
achieve by working together. We assume .

A coalitional game is called *increasing*
if for all coalitions we have ,
and *super-additive* if for all disjoint
coalitions we have .
Note that since for any , all super-additive
games are increasing.
A coalitional game is called *simple* if
it is increasing and
for all . In a simple game,
we say that a coalition *wins*
if , and *loses* if . Finally, a coalitional
game is called *anonymous* if for any
such that . A particular class of simple games considered in this paper is that
of *weighted voting games* (WVGs).

###### Definition 2.2

A *weighted voting game* is a simple
coalitional game given by a set of agents , a
vector of nonnegative weights,
where is agent ’s weight, and a threshold .
The *weight of a coalition* is
.
A coalition *wins the game* (i.e., ) if , and *loses the game* (i.e., )
if .

We denote the WVG with the weights and the threshold as or . Also, we set . It is easy to see that WVGs are simple games; however, they are not necessarily super-additive. Throughout this paper, we assume that , i.e., the grand coalition wins.

The characteristic function of a coalitional game defines only the
*total*

gains a coalition achieves, but does not offer a way of distributing them among the agents. Such a division is called an imputation (or, sometimes, a payoff vector).

###### Definition 2.3

Given a coalitional game , a vector
is called an *imputation
for * if it satisfies
for each , , and
.
We call the *payoff of agent *; the *total payoff
of a coalition * is given by .
We write to denote the set of all imputations for .

For an imputation to be stable, it should be the case
that no subset of players has an incentive
to deviate. Formally, we say that a coalition *blocks* an
imputation if .
The *core* of a coalitional game is defined
as the set of imputations not blocked by any coalition, i.e.,
.
An imputation in the core guarantees the stability of the grand coalition.
However, the core can be empty.

In WVGs, and, more generally, in simple games,
one can characterize the core
using the notion of veto agents, i.e.,
agents that are indispensable
for forming a winning coalition. Formally, given a simple coalitional
game , an agent is said to be a *veto agent*
if for all coalitions we have .
The following is a folklore result regarding nonemptiness of the core.

###### Theorem 2.4

Let be a simple coalitional game. If there are no veto agents in , then the core of is empty. Otherwise, let be the set of veto agents in . Then the core of is the set of imputations that distribute all the gains among the veto agents only, i.e.,

So far, we have tacitly assumed that the only possible outcome of a coalitional game is the formation of the grand coalition. However, often it makes more sense for the agents to form several disjoint coalitions, each of which can focus on its own task. For example, WVGs can be used to model the setting where each agent has a certain amount of resources (modeled by her weight), and there are a number of identical tasks each of which requires a certain amount of these resources (modeled by the threshold) to be completed. In this setting, the formation of the grand coalition means that only one task will be completed, even if there are enough resources for several tasks.

The situation when agents can split into teams to work on several
tasks simultaneously can be modeled using the notion of a
coalition structure, i.e., a partition of the set
of agents into disjoint coalitions. Formally, we say that
is a *coalition structure*
over a set of agents if and
for all ; we write .
Also, we overload notation by writing to denote
.
If coalition structures are allowed, an outcome of a game
is not just an imputation, but a pair , where
is an imputation for the coalition structure ,
i.e., distributes the gains of every coalition in
among its members. Formally, we say that
is an *imputation for a coalition structure*
in a game
if for all , , and
for all , ; we write .
We can also generalize the notion of the core introduced
earlier in this section to games with coalition structures.
Namely, given a game , we say that an outcome
is in the *CS-core of * if
is a coalition structure over ,
and for all ; we write
.
Note that if is in the core of then
is in the CS-core of ; however, the converse
is not necessarily true.

## 3 The Cost of Stability

In many games, forming the grand coalition
maximizes social welfare; this happens, for example, in
super-additive games.
However, the core of such games may still be empty.
In this case, it would be impossible to
distribute the gains of the grand coalition in a stable way, so it
may fall apart despite being socially optimal.
Thus, an external party, such as a benevolent
central authority, may want to incentivize the agents to cooperate, e.g.,
by offering
the agents a supplemental payment if they stay in the grand coalition.
This situation can be modeled as an *adjusted coalitional game*
derived from the original coalitional game .

###### Definition 3.1

Given a coalitional game and ,
the *adjusted coalitional game*
is given by
for , and
.

We call the *adjusted
gains* of the grand coalition.
We say that a vector is a *super-imputation*
for a game if for all and .
Furthermore, we say that a super-imputation is *stable*
if for all . A super-imputation
with distributes the adjusted gains, i.e., it
is an imputation for ; it is stable if and only if
it is in the core of .
We say that a supplemental payment *stabilizes* the grand
coalition in a game
if the adjusted game has a nonempty core. Clearly, if
is large enough (e.g., ), the game
will have a nonempty core. However, usually
the central authority wants to spend as little money as possible.
Hence, we define the cost of stability as the *smallest* external payment
that stabilizes the grand coalition.

###### Definition 3.2

Given a coalitional game , its *cost of stability*
is defined as

We have argued that the set is nonempty. Therefore, is well-defined. Now, we prove that this set contains its greatest lower bound , i.e., that the game has a nonempty core. While this can be shown using a continuity argument, we will now give a different proof, which will also be useful for exploring the cost of stability from an algorithmic perspective. Fix a coalitional game

and consider the following linear program

:subject to: | |||||

(1) | |||||

(2) | |||||

(3) | |||||

(4) |

It is not hard to see that the optimal value of this linear program is exactly . Moreover, any optimal solution of corresponds to an imputation in the core of and therefore the game has a nonempty core.

As an example, consider a uniform weighted voting game, i.e., a WVG with . We can derive an explicit formula for .

###### Theorem 3.3

For a WVG , we have .

Proof. First, note that by scaling and we can assume that .

Set and consider the imputation given by for , . Clearly, we have , so . Moreover, for any winning coalition , we have , so . Therefore, is in the core of , and hence .

On the other hand, consider any stable super-imputation . Set . Clearly, for any coalition with we have . Now, consider a collection of coalitions , where : for example, we have . We have for all , , so . Since each player occurs in exactly of these coalitions, we have . Hence, and therefore . ❑

For example, if , then , i.e., has a nonempty core. On the other hand, if , and for some integer , i.e., , we have .

### 3.1 Bounds on in General Coalitional Games

Consider an arbitrary coalitional game . Clearly, if and only if has a nonempty core. Further, we have argued that is upper-bounded by , i.e., is finite for any fixed coalitional game. Moreover, the bound of is (almost) tight. To see this, consider a (simple) game given by and for all . Clearly, we have : any super-imputation that pays some agent less than will not be stable, whereas setting for all ensures stability. Thus, the cost of stability can be quite large relative to the value of the grand coalition.

On the other hand, we can provide a lower bound on in terms of the values of coalition structures over . Indeed, for an arbitrary coalition structure , we have . To see this, note that if the total payment to the grand coalition is less than , then for some coalition it will be the case that . It would be tempting to conjecture that . However, a counterexample is provided by Theorem 3.3 with , : indeed, in this case we have , yet . We can summarize these observations as follows.

###### Theorem 3.4

For any coalitional game , we have

For super-additive games, we can strengthen the upper bound considerably. Note that in such games the grand coalition maximizes social welfare, so its stability is particularly desirable. Yet, as the second part of Theorem 3.5 implies, ensuring stability may turn out to be quite costly even in this restricted setting.

###### Theorem 3.5

For any super-additive game , , we have , and this bound is asymptotically tight.

Proof. Fix an arbitrary monotone super-additive game with and . Consider the corresponding linear program . Observe that it can be re-written as

subject to: | ||||

The dual to this linear program has variables and is given by

subject to: | ||||

That is, we have to assign “weights” to all coalitions so that the total weight of all coalitions covering any given point is at most . Our goal is to maximize subject to this condition.

First, we claim that there exists an optimal solution to this maximization problem that satisfies for any nonempty sets such that and . For a contradiction, suppose that this is not the case. Fix an arbitrary order on coalitions in such that implies , and extend it to a lexicographic order on tuples of subsets of in the standard manner. For every optimal solution to the dual program, consider the vector whose entries are the subsets with , ordered according to (from the smallest to the largest). Among all optimal solutions to the dual linear program, pick one with the lexicographically largest such vector and denote it by . By our assumption, there exists a pair of nonempty sets such that and , but . Let . Consider the vector given by

First, observe that since and are disjoint, is also a feasible solution to the dual program. Furthermore, by super-additivity we have

so is an optimal solution to the dual program, too. Finally, observe that is lexicographically greater than . Indeed, assume that (a similar argument works for ). Then, for , we have , and, moreover, , and . This is a contradiction with our choice of .

Thus, there is an optimal solution in which any two sets and with and intersect. Now, suppose that there is a set with , . Any set with contains one of the points in . Thus, we have

On the other hand, if for any with it holds that , we have

so . Consequently, in both cases we have . Now, since the optima of the dual and the original linear programs are equal, the optimal solution to the original linear program satisfies , and hence , as required.

To see that this bound is asymptotically tight, consider a finite projective plane of order , where is a prime number. It has points and the same number of lines, every line contains points, any two lines intersect, and any point belongs to exactly lines. Now, consider a simple coalitional game whose players correspond to the points in and whose winning coalitions correspond to the sets of points in that contain a line. Observe that this game is super-additive: since any two lines intersect, there do not exist two disjoint winning coalitions. Hence, for any such that either or , and therefore , as required. On the other hand, for each line , we have . Summing over all lines, and using the fact that each point belongs to lines, we obtain , i.e., . Since , we have , i.e., . ❑

For anonymous super-additive games, further improvements are possible.

###### Theorem 3.6

For any anonymous super-additive game , we have , and this bound is asymptotically tight.

Proof. Fix an anonymous super-additive game with . Consider a super-imputation given by . Clearly, we have . It remains to show that is in the core of the adjusted game .

For any coalition , there exists an integer , , such that . For this value of , one can construct pairwise disjoint coalitions with and . Super-additivity then implies that . On the other hand, we have

Since for any , it follows that for all , so is stable.

To see that this bound is asymptotically tight, consider a game with given by if , and if . Clearly, this game is anonymous. Moreover, as any two winning coalitions intersect, this game is also super-additive. Consider any stable super-imputation for this game. For any with , we have . There are exactly coalitions of this size, and each agent participates in exactly such coalitions. Thus, summing all these inequalities, we obtain , or, canceling, . ❑

A somewhat similar stability-related concept is the *least core*,
which is the set of all imputations that minimize the maximal
*deficit* .
In particular, the *value* of the least core ,
defined as

is strictly positive if and only if the cost of stability is strictly positive. The following proposition provides a more precise description of the relationship between the value of the least core and the cost of stability.

###### Proposition 3.7

For any coalitional game with such that , we have , and this bound is asymptotically tight.

Proof. Clearly, if , we have . Now, assume . Let be an imputation in the least core of . For any , we have . Consider a super-imputation given by . Clearly, we have for any such that , i.e., is stable. Further, it is easy to see that , so .

To see that this bound is asymptotically tight, reconsider the game with , , and for all . It is easy to see that , since the imputation is in the least core of . On the other hand, as mentioned above, . ❑

### 3.2 Algorithmic Properties of

The linear program provides a way of computing for any coalitional game . However, this linear program contains exponentially many constraints (one for each subset of ). Thus, solving it directly would be too time-consuming for most games. Note that for general coalitional games, this is, in a sense, inevitable: in general, a coalitional game is described by its characteristic function, i.e., a list of numbers. Thus, to discuss the algorithmic properties of , we need to restrict our attention to games with compactly representable characteristic functions.

A standard approach to this issue is to consider
games that can be described by polynomial-size circuits.
Formally, we say that a class of games has a
*compact circuit representation* if there exists
a polynomial such that for every ,
, , there exists a circuit
of size with
binary inputs that on input outputs
, where .

Unfortunately, it turns out that having a compact
circuit representation does not guarantee efficient
computability of . Indeed, it is easy to see that
WVGs with integer weights have such a representation.
However, in the next section we will show that computing
for such games is computationally intractable
(Theorem 4.1). We can, however, provide a *sufficient*
condition for to be efficiently computable. To do so,
we will first formally state the relevant computational problems.

Super-Imputation-Stability: Given a coalitional game (compactly represented by a circuit), a supplemental payment and an imputation in the adjusted game , decide whether .

CoS: Given a coalitional game (compactly represented by a circuit) and a parameter , decide whether , i.e., whether .

Consider first Super-Imputation-Stability.
Fix a game . For any super-imputation for ,
let be the maximum
deficit
of a coalition under . Clearly, is stable
if and only if . Observe also that for any
it is easy to decide whether is an imputation for .
Thus, a polynomial-time algorithm for computing can be converted
into a polynomial-time algorithm for Super-Imputation-Stability.
Further, we can decide CoS via solving by the ellipsoid method.
The ellipsoid method runs in polynomial
time given a polynomial-time *separation oracle*, i.e., a procedure
that takes as input a candidate feasible solution,
checks if it indeed is feasible, and if this is not the case,
returns a violated constraint. Now, given a vector
and a parameter ,
we can easily check if they satisfy constraints (1)–(3),
i.e., if is an imputation for . To verify
constraint (4), we need to check if is in the core
of . As argued above, this can be done by checking
whether . We summarize these results as follows.

###### Theorem 3.8

Consider a class of coalitional games with a compact circuit representation. If there is an algorithm that for any , , , and for any super-imputation for computes in time , where is the number of bits in the binary representation of , then for any the problems Super-Imputation-Stability and CoS are polynomial-time solvable.

We mention in passing that for games with poly-time computable characteristic functions both problems are in . For Super-Imputation-Stability, the membership is trivial; for CoS, it follows from the fact that the game has a poly-time computable characteristic function as long as does, and hence we can apply the results of [13] (see the proof of Theorem 4.1 for details).

## 4 Cost of Stability in WVGs Without Coalition Structures

In this section, we focus on computing the cost of stabilizing the grand coalition in WVGs. We start by considering the complexity of exact algorithms for this problem.

### 4.1 Exact Algorithms

In what follows, unless specified otherwise, we assume that all weights and the threshold are integers given in binary, whereas all other numeric parameters, such as the supplemental payment and the entries of the payoff vector , are rationals given in binary. Standard results on linear threshold functions [15] imply that WVGs with integer weights have a compact circuit representation. Thus, we can define the computational problems Super-Imputation-Stability-WVG and CoS-WVG by specializing the problems Super-Imputation-Stability and CoS to WVGs. Both of the resulting problems turn out to be computationally hard.

###### Theorem 4.1

The problems Super-Imputation-Stability-WVG and CoS-WVG are -complete.

Proof. Both of our reductions will be from Partition, a well-known -complete problem [11], which is defined as follows: given a list of nonnegative integers such that , decide whether there is a sublist of such that .

We first show that CoS-WVG is coNP-hard. Given an instance of Partition, we construct a weighted voting game by setting , for each , , and . Set . We claim that is a “yes”-instance of CoS-WVG if and only if is a “no”-instance of Partition.

Indeed, suppose that is a “yes”-instance of Partition, and let be the corresponding sublist. Set and . Suppose for the sake of contradiction that has a nonempty core, and let be an imputation in the core of . We have , and hence either or (or both). On the other hand, since , we have , i.e., at least one of the coalitions and has a rational incentive to deviate, a contradiction.

On the other hand, suppose that is a “no”-instance of Partition, and consider a vector , where . We have , and hence . That is, is an imputation for . We now show that is in the core of (and thus that has a nonempty core). Indeed, consider any coalition such that . We have . Moreover, as is a “no”-instance of Partition, there is no coalition whose weight is exactly , so we have . Thus we have . Hence, the agents in have no rational incentive to deviate from and therefore .

We can use the same construction to show that Super-Imputation-Stability-WVG is -hard. Indeed, consider , , and defined above. It follows from our proof that is in the core of if and only if is a “no”-instance of Partition. Moreover, Super-Imputation-Stability-WVG is clearly in : to verify that a given super-imputation is unstable, it suffices to guess a coalition and verify that it is winning, i.e., , but is paid less than one under . Finally, to see that CoS-WVG is in , observe that this problem is equivalent to deciding whether the corresponding game has a nonempty core. Furthermore, it is easy to see that has a polynomial-time compact representation in the sense of Definition 3.1 in [13]. Thus, Theorem 5.3 in [13] implies that deciding whether the core of is nonempty is in . Hence, CoS-WVG is also in . ❑

The reductions in the proof of Theorem 4.1 are from Partition. Consequently, our hardness results depend in an essential way on the weights being given in binary. Thus, it is natural to ask what happens if the agents’ weights are polynomially bounded (or given in unary). It turns out that in this case the results of Section 3.2 imply that Super-Imputation-Stability-WVG and CoS-WVG are in , since for WVGs with small weights one can compute in polynomial time.

###### Theorem 4.2

Super-Imputation-Stability-WVG and CoS-WVG are in when the agents’ weights are polynomially bounded (or given in unary).

Proof. As argued in Section 3.2, it suffices to show that given a WVG and a super-imputation for , we can compute in time , where denotes the number of bits in the binary representation of .

For any , , and any , , let

We can compute the quantities inductively as follows. For , we have if , and otherwise. Now, suppose that we have computed for each , . We can then compute as . Observe that is the minimal payment that a winning coalition in can receive under . As for all , , we have .

Clearly, the running time of this algorithm is polynomial in , and . Observe that one can construct a similar algorithm that runs in polynomial time even if the weights are large, as long as all entries of can take polynomially many values. ❑

### 4.2 Approximating the Cost of Stability in Weighted Voting Games

For large weights, the algorithms outlined at the end of the previous section may not be practical. Thus, the center may want to trade off its payment and computation time, i.e., provide a slightly higher supplemental payment for which the corresponding stable super-imputation can be computed efficiently. It turns out that this is indeed possible, i.e., can be efficiently approximated to an arbitrary degree of precision.

###### Theorem 4.3

There exists an algorithm that, given a WVG in which the weights of all players are nonnegative integers given in binary and a parameter , outputs a value that satisfies and runs in time . That is, there exists a fully polynomial-time approximation scheme (FPTAS) for .

Proof. We start by proving a simple lemma that will be useful for the analysis of our algorithm.

###### Lemma 4.4

For any WVG such that , we have .

Proof of Lemma 4.4. Consider a weighted voting game that does not have a veto player and hence . Suppose for the sake of contradiction that , that is, the game has a nonempty core. Let be an imputation in the core of . As we have , there must be at least one player such that . Hence, . Therefore the coalition satisfies (since is not a veto player), , and hence is not stable, a contradiction. ❑ Lemma 4.4

Our proof of the theorem is inspired by the FPTAS for the value of the least core of WVGs [9].

We will first describe an additive fully polynomial-time approximation scheme for , i.e., an algorithm that, given a WVG and , can compute a value satisfying and runs in time . We will then show how to convert it into an FPTAS using Lemma 4.4.

Set , and let . We have .

Consider the linear program given in Section 3. Instead of solving directly, we consider a family of linear feasibility programs (LFP) , where the th LFP is given by

As , it follows that at least one of these LFPs has a feasible solution. Now, let be the smallest value of for which has a feasible solution. We have , or, equivalently, . Hence, by computing we can obtain an additive -approximation to . Now, while it is not clear if we could find in polynomial time, we will now show how to find a value that is guaranteed to be in the set .

It is natural to approach this problem by trying to successively solve . However, just as the linear program , the LFP has exponentially many constraints (one for each winning coalition of ). Moreover, an implementation of the separation oracle for would involve solving Knapsack, which is an NP-hard problem when weights are given in binary. Hence, we will now take a somewhat different approach. Namely, we will show how to design an algorithm that, given a candidate solution for , either outputs a constraint that is violated by this solution or finds a feasible solution for . The running time of is .

The algorithm first checks if the candidate solution satisfies the first constraints of the LFP. If no violated constraint is discovered at this step, it rounds up the payoffs by setting for each , . Note that for each , , we have , and the rounded payoff can be represented as