1 Introduction

A key open problem in multi-agent systems research is how to organise agents into disjoint teams so as to maximise some overall welfare measure. This coalition structure generation (CSG) problem is in general computationally complex: NP-hard even under quite modest assumptions. For this reason, there have been many studies directed at finding easy instances of the problem (see [2, 3, 17, 35, 37] for some examples and [32] for a detailed survey).

Coalition/cooperative game theory provides a conventional framework for modelling CSG problems [9, 34, 40]. A coalition game is defined by a pair comprised of a set of agents and a function that maps coalitions to values. A widely studied subclass of coalition games are characteristic function games (CFGs). For a CFG, the value of a coalition depends only on its members. A relatively less well studied subclass of coalition games are partition function games (PFGs). For a PFG, the value of a coalition depends on its members as well as on the make-up of the non-members. CFGs are a proper subclass of PFGs and CFGs are the most well studied coalition games. Except for a few recent ones, most of the existing methods for solving the CSG problem are for CFGs [32].

Existing solutions for the CSG problem for PFGs were devised either by placing constraints on externalities or else on the function that maps coalition structures to values (see Sect. 6 for details). A common feature of existing work is that it is focussed on games whose properties are known with certainty (we will call such games deterministic). However, stochasticity is inherent to many multi-agent settings. Given this, the goal of our present work is to investigate how to solve the CSG problem for stochastic environments in which some aspects of the problem are not known with certainty. To this end, we build on our prior work [17] in which we considered the CSG problem for PFGs with priority ordered players and a restricted class of value functions, viz., those that satisfy a certain monotonicity property, and devised a polynomial time solution. In this previous work, the notion of monotonicity was deterministic in the sense that, with probability one, the function that maps coalition structures to values satisfies monotonicity. In this paper, we relax the deterministic monotonicity assumption by allowing a certain degree of non-monotonicity. Specifically, we replace the deterministic monotonicity restriction by probabilistic monotonicity. Probabilistic monotonicity means that the value function obeys monotonicity with a certain probability \(0 < p \le 1\) (for the deterministic case \(p=1\)). For probabilistically monotone PFGs with priority ordered players, we devise an algorithm for optimally solving the CSG problem and characterize its time complexity.

The need for optimal coalition structures arises in many real-world applications. For example, in the formation of supply chains [18, 26]. In such a setting, several different manufacturers of components form coalitions to achieve what they cannot do individually. Externalities arise, for example, from the requirement that all components ultimately conform to the same standards. The cost of standardisation procedures incurred by any coalition depends on the number and structure of other coalitions. Another application is in job scheduling [19]. In a job scheduling problem, there is a set of jobs and a set of machines. Each job must be allocated to a machine such that the overall cost of processing jobs is minimized. For further applications of cooperative games, [12] is a comprehensive set of references. In all such applications, the general problem of optimal coalition structure determination involves a combinatorial search. In many cases, the search space is not always unstructured – often there is some form of inherent regularity in at least a part of the space. For example, consider an airline crew scheduling problem, which requires organising staff into coalitions based on individual characteristics, and optimally scheduling the coalitions. The players, i.e., the crew, are ordered in that any non-optimal placement of an individual in the early part of a schedule can propagate inefficiencies down the chain and reduce the value of the entire partition. It is possible that the earlier in the schedule a non-optimality is introduced, the greater the reduction in the value of the partition as a whole, relative to the optimum. In other words, the search space is structured in that there is a relation between how close a partition is to the optimum, and the value of that partition. The closer a structure is to the optimum, the more likely it is to have a higher value. A lack of certainty in the values can arise because the number of all possible coalition structures is too huge to enable an accurate measurement of their values. It is therefore important to consider such uncertainties.

To the best of our knowledge, we are the first to consider the CSG problem in an uncertain environment. The key contributions of this paper are:

  1. 1.

    Developed a new model of probabilistic monotonicity in partition function games, that extends previously studied deterministic monotonicty.

  2. 2.

    Analysed the model and constructively proved that an exact optimum can be found.

  3. 3.

    Devised a greedy algorithm for solving the CSG problem for probabilistic monotone partition function games.

  4. 4.

    Analysed the time complexity of the devised algorithm.

The remainder of the article is organised as follows. Section 2 provides background. Section 3 is a description of the model under investigation and Sect. 4 of the proposed method. An algorithm for solving the CSG problem is in Sect. 5. A review of related literature is in Sects. 6 and 7 concludes. Appendix A collects together all our theorems and proofs. Appendix B is a description of an algorithm for generating the partitions of a set, and an analysis of its time complexity.

2 Background

There is a finite non-empty set of players N = {1, ..., n} (see Table 1 for a summary of key notation). The term coalition refers to a non-empty subset of N. The symbol C possibly with sub/superscripts denotes a coalition and \(\mathcal {C}\) denotes the set of all coalitions of N.

$$\begin{aligned} \mathcal {C} = \{C \ | \ C \subseteq N , C \ne \emptyset \} \end{aligned}$$

A coalition structure is an exhaustive partition of a set of players into mutually disjoint coalitions. Formally:

Table 1 A summary of notation

Definition 1

For any coalition C, let \(\varPi ^C\) denote the set of all coalition structures over C. Then \(\{C_1, C_2, \ldots , C_k\} \in \varPi ^C\) iff

$$\begin{aligned} \cup ^k_{i=1} C_i = C, \ \ \ \forall i \ C_i \ne \emptyset , \text { and } \forall i \forall j\ne i \ C_i \cap C_j = \emptyset . \end{aligned}$$

The symbol \(\pi \) possibly with sub/superscripts will denote a coalition structure. An embedded coalition is a coalition together with a specification of how the non-members are organised into coalitions. It is formally defined as follows:

Definition 2

Let \(\mathcal {E}\) denote the set of all embedded coalitions. Then

$$\begin{aligned} \mathcal {E} = \{(C, \pi ) \ | \ C \in \pi \in \varPi ^N\} \end{aligned}$$

Definition 3

A characteristic function game (CFG) is a pair \((N, v_1)\) where \(v_1: 2^N \rightarrow \mathbb {R}\) and \(2^N\) denotes the set of all subsets of N. A partition function game is a pair \((N, v_2)\) where \(v_2: \mathcal {E} \rightarrow \mathbb {R}\).

Thus CFGs are a subclass of PFGs.

Definition 4

The value of a coalition structure over N is given by an objective function \(v: \varPi ^N \rightarrow \mathbb {R}\).

In the literature on CSG, the function that maps coalition structures to values, i.e., the objective function v, is a social welfare function. It is commonly assumed to be the sum of coalition values. In the proposed model (described in Sect. 3), however, the value of a structure does not have to be the sum of the values of its coalitions but could be any function.

The CSG problem then is to find an optimal structure, i.e., a structure \(\mathbb {O}\) such that \(v(\mathbb {O})\) is the highest between all coalition structures. For n player games, the number of all possible structures is Bell(n) [5, 6] where

$$\begin{aligned} Bell(n) = \sum ^{n-1}_{i=0} \begin{pmatrix} n-1 \\ i\end{pmatrix} \times Bell(i) \end{aligned}$$

with \(Bell(0)=Bell(1)=1\). Since \(Bell(n) \sim \varTheta (n^n)\) [6], a brute force method for PFGs (and CFGs) is not a feasible.

Given the computational complexity of CSG, it is natural to investigate easy instances of the problem. In prior work [17], we showed how the CSG problem for PFGs can be solved optimally in polynomial time, provided that the set N is ordered and the objective function is deterministically monotonic. Our goal now is to generalize this method to stochastic environments where monotonicity is satisfied with a certain probability. Monotonicity is defined in terms of a player ordering.

2.1 Player ordering

In the definition of both CFGs and PFGs, the term coalition refers to a set of players, i.e., there is no notion of ordering. Nevertheless, the Shapley value [36], a well-known axiomatic solution for CFGs, and its adaptation [27] to PFGs are motivated by a bargaining procedure in which the players are assigned a random ordering and coalition formation is viewed as a sequential process that happens as per the ordering. In generalized CFGs [28], attention is paid to ordering within the definition of a game. A generalized CFG is defined in terms of a set of players and a characteristic function that maps orderings on coalitions to numbers.

The notion of ordering is prevalent not only in the definition of cooperative games and solutions to them, but also in their applications to computationally hard optimization problems such as matching, network optimisation, and scheduling [12, 22]. In the context of these applications, the notion of ordering is used to determine computationally easy problem instances. For example, consider scheduling. In a scheduling problem [39], there is a set of jobs and a set of machines. Each job must be allocated to a machine and, for each machine, an ordering over its allocated jobs must be determined such that the overall cost of processing jobs as per the order is minimized. Computationally easy instances of this problem are sought by imposing restrictions such as the cost function being monotonic, and the set of jobs being an ordered set. In particular, much of the scheduling literature [19, 20] has focussed on a restricted class of objective functions called priority-generating functions. An objective function is said to be priority-generating if a related function called priority function exists which imposes an ordering over the set of jobs by assigning to jobs certain values called priorities. Crucially, priorities are assigned to jobs such that, based on priorities, the optimal schedule can be found in polynomial time. Thus, if a priority function can be found for a given objective function, and it takes polynomial time to compute job priorities using the function, then the scheduling problem can be solved in polynomial time [39].

Motivated by the above observations, in prior work [17] we took a priority-based approach and showed how the CSG problem for PFGs can be solved optimally in polynomial time provided the set N is ordered and the function v is monotonic (see Sect. 2.2). The CSG problem is related to scheduling in that players are analogous to jobs and coalitions to machines. A crucial difference though between existing priority-based scheduling methods [19, 20, 39] and [17] is that the former require job priorities as an input, while latter requires only the existence of player priorities to be known without requiring the actual priorities as problem input.

2.2 Monotonicity

In [17], the players are assumed to be priority ordered, and monotonicity of the objective function v is defined in terms of a distance metric d. For any two structures \(\pi ^1\) and \(\pi ^2\), \(d(\pi ^1, \pi ^2)\) denotes the distance between \(\pi ^1\) and \(\pi ^2\).

Definition 5

(Deterministic monotonicity) For any two structures \(\pi ^1\) and \(\pi ^2\), and a unique optimum \(\mathbb {O}\):

$$\begin{aligned} d(\mathbb {O}, \pi ^1) < d(\mathbb {O}, \pi ^2)\Rightarrow & {} v(\pi ^1) > v(\pi ^2) \end{aligned}$$
(1)

with probability one. \(\square \)

Then a PFG is deterministically monotonic if, for some player ordering, v is monotonic. It was shown that deterministic monotonicity is a property that can be satisfied by PFGs with positive only, negative only, and mixed externalities. Further, deterministic monotonicity was shown to be satisfiable for a wide range of objective functions, i.e., the value of a partition is not restricted to be the sum of the values of its coalitions but can be any function of these values. Illustrations of deterministically monotonic PFGs, and a polynomial time method for solving the CSG problem for deterministically monotonic PFGs are in [17]. Our aim now is to generalise this method to probabilistic monotonicity.

3 Coalition structure generation in stochastic environments

The players to be partitioned are given by the set N. The priority ordering referred to in Sect. 2.1 exists over certain players in N. The set of these ordered players is denoted \(\varDelta \subseteq N\) with \(\delta = |\varDelta |\). Each player in \(N - \varDelta \) is called a non-priority player. Let \(\mathbb {P}_i \in \varDelta \) denote the top ith priority player, i.e., the ordering is \(\mathbb {P}_1 \succ \cdots \succ \mathbb {P}_{\delta }\). The quality of a coalition structure depends on how the priority players are positioned in the structure. The higher up a player is in the ordering, the more important it is to have the player in its optimal position.

Any coalition that contains at least one priority player is called a priority coalition. An ordering over \(\varDelta \) induces an ordering over the priority coalitions: they are ordered as per the priorities of their highest priority members. Suppose hpm(X) denotes the highest priority member of coalition X. Suppose that the priority players are spread over m coalitions. Then these m coalitions form a sequence \((C_1, C_2, \ldots , C_m)\) such that, \(\mathbb {P}_1 \in C_1\), and if \(\mathbb {P}_x \succ \mathbb {P}_y\) and \(\mathbb {P}_x = hpm(C_i)\) and \(\mathbb {P}_y=hpm(C_j)\), then \(i < j\). For any coalition structure over N, there is no ordering over coalitions comprised solely of non-priority players.

We consider stochastic environments modelled as probabilistically monotone PFGs for which it is known that a priority ordering exists, but the ordering itself is unknown, i.e., the identities of the priority players \(\mathbb {P}_1, \ldots , \mathbb {P}_{\delta }\) are unknown. Solving the CSG problem requires determining these identities and an optimal way of partitioning the players in N. To achieve this, we represent coalition structures as described in Sect. 3.1. In Sect. 3.2, we introduce a distance metric, in terms of which we define probabilistic monotonicity in Sect. 3.3. The proposed method for solving the CSG problem is described in Sect. 4.

3.1 Representation

Let \(\mathbb {P}\) denote the sequence \((\mathbb {P}_1, \ldots , \mathbb {P}_{\delta })\). For any \(k \le \delta \), \(\mathbb {P}_{|k}\) will denote the k element prefix of \(\mathbb {P}\), i.e., \(\mathbb {P}_{|k} = (\mathbb {P}_1, \ldots , \mathbb {P}_k)\). \(\mathbb {P}^E_{|k}\) is defined as

$$\begin{aligned} \mathbb {P}^E_{|k} = \{ X \ \ | \ \ X \in Perm(\varDelta ) \text {\ \ and \ \ } \ X_{|k} = \mathbb {P}_{|k}\} \end{aligned}$$

where \(Perm(\varDelta )\) denotes the set of all permutations of \(\varDelta \). A coalition structure over \(\varDelta \) is represented as a sequence \(\pi =(x_1, x_2, \ldots , x_{\delta })\) such that \(x_i \in \{1, \ldots , \delta \}\) is the index of the coalition to which player \(\mathbb {P}_i\) belongs. Then the set of all structures over \(\varDelta \) is:

$$\begin{aligned} \varPi ^{\varDelta } = \{(x_1, \ldots , x_{\delta }) \ \ | \ \ x_1 = 1, \ \ x_{i>1} \ \in \ \{1, \ldots , max(x_1, \ldots , x_{i-1}) + 1\}\} \end{aligned}$$
(2)

\(\pi _{|k}\) will denote the k element prefix of \(\pi = (x_1, x_2, \ldots , x_{\delta })\). \(\pi ^E_{|k}\) will denote the set of all those sequences in \(\varPi ^{\varDelta }\) whose k element prefix is \(\pi _{|k}\).

$$\begin{aligned} \pi ^E_{|k} = \{ X \ \ | \ \ X \in \varPi ^{\varDelta } \text { and } \ X_{|k} = \pi _{|k}\} \end{aligned}$$

Example 1

Consider a PFG with \(n=3\) players who are members of an airline crew. There are \(Bell(3) =5\) possible coalition structures. Let \(\delta = 3\). Column 1 of Table 2 shows how coalition structures will be represented. For three players, there are six possible orderings of players as illustrated in Columns 2 to 7. How the representation of a particular structure is interpreted depends on the player ordering \(\mathbb {P}\). For example, for \(\mathbb {P} = (1, 2, 3)\) (see Column 2), we have \(\mathbb {P}_1=1\), \(\mathbb {P}_2=2\), and \(\mathbb {P}_3=3\). The representation (1, 1, 1) (see Row 1, Column 2) means the structure comprised of the single grand coalition \(C_1 = \{1,2,3\}\). The representation (1, 1, 2) (see Row 2, Column 2) is the structure \((\{1,2\}, \{3\})\) in which the two top priority players are together in the coalition \(C_1\) and the player \(\mathbb {P}_3\) is in the singleton coalition \(C_2\). However, the same representation (1, 1, 2) for the ordering \(\mathbb {P} = (1,3,2)\) (see Row 2, Column 3) is the structure \((\{1,3\}, \{2\})\). The remaining entries in the table may be interpreted similarly. \(\square \)

Table 2 An illustration of the coalition structure representation and semantics for each one of the six possible player orderings for \(n=3\) player games

Let \(\varPi _{\mathbb {O}}\) denote the set of all optimal structures over N. For any \(\pi \in \varPi ^N\), \(\beta ^i_{\pi }\) will denote the index of the coalition to which player i belongs in the structure \(\pi \). We assume that the optima are unique up to the positions of the top \(3 < \delta \le n-3\) priority players, i.e., for any two distinct optimal structures \(\pi ^1 \in \varPi _{\mathbb {O}}\) and \(\pi ^2 \in \varPi _{\mathbb {O}}\), \(\beta ^{\mathbb {P}_i}_{\pi ^1} = \beta ^{\mathbb {P}_i}_{\pi ^2}\) for each \(1 \le i \le \delta \).

3.2 Distance measure

To measure the distance between any two structures \(\pi ^1\) and \(\pi ^2\) over N, we define a metric d in terms of the positions of the priority players, i.e., in terms of the restriction of \(\pi ^1\) and \(\pi ^2\) to \(\varDelta \). A restrictionFootnote 1 can be represented as described in Sect. 3.1.

$$\begin{aligned} d(\pi ^1_{|\delta }, \pi ^2_{|\delta })& {}= \delta \ - \ \underset{1 \le i \le \delta }{max}\ \{\pi ^1_{|i} = \pi ^2_{|i}\} \end{aligned}$$
(3)

Theorem 1

The distance function d obeys all metric axioms.

Proof

The axioms are identity, symmetry, and triangle inequality.

Identity:

For any coalition structure \(\pi ^1\) over N, \(d(\pi ^1_{|\delta }, \pi ^1_{|\delta }) = 0\). For any coalition structure \(\pi ^2\) over N, if \(\pi ^1_{|\delta } \ne \pi ^2_{|\delta }\), then \(d(\pi ^1_{|\delta }, \pi ^2_{|\delta }) \ne 0\).

Symmetry:

For any two coalition structures \(\pi ^1\) and \(\pi ^2\) over N, \(d(\pi ^1_{|\delta }, \pi ^2_{|\delta }) = d(\pi ^2_{|\delta }, \pi ^1_{|\delta })\).

Triangle inequality:

For any three coalition structures \(\pi ^1\), \(\pi ^2\), and \(\pi ^3\) over N, \(d(\pi ^1_{|\delta }, \pi ^2_{|\delta }) \le d(\pi ^1_{|\delta }, \pi ^3_{|\delta }) + d(\pi ^2_{|\delta }, \pi ^3_{|\delta })\).

Let \(\underset{1 \le i \le \delta }{max}\ \{\pi ^1_{|i} = \pi ^2_{|i}\} = k\), \(\underset{1 \le i \le \delta }{max}\ \{\pi ^1_{|i} = \pi ^3_{|i}\} = x\), and \(\underset{1 \le i \le \delta }{max}\ \{\pi ^2_{|i} = \pi ^3_{|i}\} = y\) where \(1 \le k \le \delta \), \(1 \le x \le \delta \), and \(1 \le y \le \delta \). Consider each one of the following possibilities:

\(x > k:\):

For this case, \(y=k\). Thus, \(d(\pi ^1_{|\delta }, \pi ^3_{|\delta }) + d(\pi ^2_{|\delta }, \pi ^3_{|\delta }) = \delta - x + \delta - k \ge \delta - k\), and \(d(\pi ^1_{|\delta }, \pi ^2_{|\delta }) = \delta - k\).

\(x < k:\):

For this case, \(y=x\). Thus, \(d(\pi ^1_{|\delta }, \pi ^3_{|\delta }) + d(\pi ^2_{|\delta }, \pi ^3_{|\delta }) = \delta - x + \delta - x \ge \delta - k\), and \(d(\pi ^1_{|\delta }, \pi ^2_{|\delta }) = \delta - k\).

\(x = k:\):

For this case, \(y \ge k\). Thus, \(d(\pi ^1_{|\delta }, \pi ^3_{|\delta }) + d(\pi ^2_{|\delta }, \pi ^3_{|\delta }) = \delta - k + \delta - y \ge \delta - k\), and \(d(\pi ^1_{|\delta }, \pi ^2_{|\delta }) = \delta - k\). \(\square \)

\(\square \)

3.3 Probabilistic monotonicity

Let \(\mathbb {S}\) be the set of all ordered pairs of coalition structures over N. Formally,

$$\begin{aligned} \mathbb {S} = \{(\pi ^1, \pi ^2) \ | \ \pi ^1 \in \varPi ^N \text { and } \pi ^2 \in \varPi ^N \text { and } \pi ^1 \ne \pi ^2\} \end{aligned}$$

For a game of n players, \(|\mathbb {S}| = Bell(n) \times (Bell(n) - 1)\). Then, for a player ordering, probabilistic monotonicity of an objective function v is defined as follows.

Definition 6

(Probabilistic monotonicity) For a random pair \((\pi ^1, \pi ^2) \in \mathbb {S}\) such that \(\pi ^1 \not \in \varPi _{\mathbb {O}}\) and \(\pi ^2\not \in \varPi _{\mathbb {O}}\), and any optimal structure \(\mathbb {O} \in \varPi _{\mathbb {O}}\)

$$\begin{aligned} d(\mathbb {O}_{|\delta }, \pi ^1_{|\delta }) < d(\mathbb {O}_{|\delta }, \pi ^2_{|\delta })\Rightarrow & {} v(\pi ^1) > v(\pi ^2) \end{aligned}$$
(4)

with a certain probability. Specifically, for a random pair \((\pi ^1, \pi ^2) \in \mathbb {S}\) such that neither \(\pi ^1\) nor \(\pi ^2\) is an optimum, the probability that \(v(\pi ^1) > v(\pi ^2)\) conditional on \(d(\mathbb {O}_{|\delta }, \pi ^1_{|\delta }) < d(\mathbb {O}_{|\delta }, \pi ^2_{|\delta })\) is

$$\begin{aligned} p\biggl (v(\pi ^1) > v(\pi ^2) \ \ | \ \ d(\mathbb {O}_{|\delta }, \pi ^1_{|\delta }) < d(\mathbb {O}_{|\delta }, \pi ^2_{|\delta })\biggr )\le & {} 1 \end{aligned}$$

For a random pair \((\pi ^1, \pi ^2) \in \mathbb {S}\) such that any one element of the pair, say \(\pi ^1\), is an optimum, \(v(\pi ^1) > v(\pi ^2)\) with probability 1. \(\square \)

Definition 7

A PFGFootnote 2\((N, v_2, v)\) is probabilstically monotonic if v is probabilistically monotone for some player ordering. \(\square \)

Probabilistic monotonicity is modelled as follows. Let the set \(\mathbb {A}\) be defined as follows:

$$\begin{aligned} \mathbb {A} = \{(u, v) \ | \ u \in \{<, =,>\} \text { and } v \in \{<, =, >\}\}. \end{aligned}$$

Let the functions \(f: \mathbb {S} \rightarrow \mathbb {A}\), \(r^d: \mathbb {S} \rightarrow \{<, =, >\}\), and \(r^v: \mathbb {S} \rightarrow \{<, =, > \}\) be defined as follows. For any \((x, y) \in \mathbb {S}\), \(f(x, y) = (r^d(x, y), r^v(x, y))\) where

$$\begin{aligned} r^d(x, y) = {\left\{ \begin{array}{ll}< \text { if }\ \ d(\mathbb {O}_{|\delta }, x_{|\delta }) < d(\mathbb {O}_{|\delta }, y_{|\delta }) \\ = \text { if } d(\mathbb {O}_{|\delta }, x_{|\delta }) = d(\mathbb {O}_{|\delta }, y_{|\delta }) \\> \text { if }\ \ d(\mathbb {O}_{|\delta }, x_{|\delta }) > d(\mathbb {O}_{|\delta }, y_{|\delta }) \end{array}\right. } \end{aligned}$$

and

$$\begin{aligned} r^v(x, y)= {\left\{ \begin{array}{ll}< \text {\ \ \ \ \ \ if \ \ v(x) < v(y) }\\ = \text {\ \ \ \ \ \ if \ \ v(x) = v(y) }\\> \text {\ \ \ \ \ \ if \ \ v(x) > v(y) } \end{array}\right. } \end{aligned}$$

The set \(\mathbb {S}\) can be partitioned into nine pairwise disjoint subsets as follows:

  1. 1.

    \(\mathbb {S}_{ee} = \{ (x, y) \ \ | \ \ (x, y) \in \mathbb {S} \text { and } f(x, y) \text { is } (=,=) \}\)

  2. 2.

    \(\mathbb {S}_{eg} = \{ (x, y) \ \ | \ \ (x, y) \in \mathbb {S} \text { and } f(x, y) \text { is } (=,>) \}\).

  3. 3.

    \(\mathbb {S}_{el} = \{ (x, y) \ \ | \ \ (x, y) \in \mathbb {S} \text { and } f(x, y) \text { is } (=,<) \}\)

  4. 4.

    \(\mathbb {S}_{ge} = \{ (x, y) \ \ | \ \ (x, y) \in \mathbb {S} \text { and } f(x, y) \text { is } (>,=) \}\)

  5. 5.

    \(\mathbb {S}_{gg} = \{ (x, y) \ \ | \ \ (x, y) \in \mathbb {S} \text { and } f(x, y) \text { is } (>,>) \}\)

  6. 6.

    \(\mathbb {S}_{gl} = \{ (x, y) \ \ | \ \ (x, y) \in \mathbb {S} \text { and } f(x, y) \text { is } (>,<) \}\)

  7. 7.

    \(\mathbb {S}_{le} = \{ (x, y) \ \ | \ \ (x, y) \in \mathbb {S} \text { and } f(x, y) \text { is } (<,=) \}\)

  8. 8.

    \(\mathbb {S}_{lg} = \{ (x, y) \ \ | \ \ (x, y) \in \mathbb {S} \text { and } f(x, y) \text { is } (<,>) \}\)

  9. 9.

    \(\mathbb {S}_{ll} = \{ (x, y) \ \ | \ \ (x, y) \in \mathbb {S} \text { and } f(x, y) \text { is } (<,<) \}\)

Then \(\mathbb {S}\) is the union of these nine subsets:

$$\begin{aligned} \mathbb {S} = \mathbb {S}_{ee} \cup \mathbb {S}_{eg} \cup \mathbb {S}_{el} \cup \mathbb {S}_{ge} \cup \mathbb {S}_{gg} \cup \mathbb {S}_{gl} \cup \mathbb {S}_{le} \cup \mathbb {S}_{lg} \cup \mathbb {S}_{ll}. \end{aligned}$$
(5)

Between all these nine subsets, only \(\mathbb {S}_{ee}\), \(\mathbb {S}_{eg}\), \(\mathbb {S}_{el}\), \(\mathbb {S}_{gl}\), and \(\mathbb {S}_{lg}\) satisfy monotonicity. The union of these is denoted \(\mathbb {S}_{\textsc {mon}}\):

$$\begin{aligned} \mathbb {S}_{\textsc {mon}} = \mathbb {S}_{ee} \cup \mathbb {S}_{eg} \cup \mathbb {S}_{el} \cup \mathbb {S}_{gl} \cup \mathbb {S}_{lg}. \end{aligned}$$
(6)
Table 3 Probability distribution induced by v on \(\mathbb {A}\)

Definition 8

Each pair in \(\mathbb {S}_{\textsc {mon}}\) is called a monotonicity-satisfying pair.

Probabilistic monotonicity is modelled by a probability distribution (see Table 3) induced by the function v over the set \(\mathbb {A}\). As per Table 3,

$$\begin{aligned} p\biggl (v(\pi ^1) > v(\pi ^2) \ \ | \ \ d(\mathbb {O}_{|\delta }, \pi ^1_{|\delta }) < d(\mathbb {O}_{|\delta }, \pi ^2_{|\delta })\biggr )& {} = \frac{p_{lg}}{p_{le} + p_{lg} +p_{ll}}. \end{aligned}$$

Since the elements of \(\mathbb {S}\) are ordered pairs, we have the following :

  1. 1.

    \(p_{eg} = p_{el}\) because \((\pi ^1, \pi ^2) \in S_{eg}\) iff \((\pi ^2, \pi ^1) \in S_{el}\).

  2. 2.

    \(p_{ge} = p_{le}\) because \((\pi ^1, \pi ^2) \in S_{ge}\) iff \((\pi ^2, \pi ^1) \in S_{le}\).

  3. 3.

    \(p_{gg} = p_{ll}\) because \((\pi ^1, \pi ^2) \in S_{gg}\) iff \((\pi ^2, \pi ^1) \in S_{ll}\).

  4. 4.

    \(p_{gl} = p_{lg}\) because if \((\pi ^1, \pi ^2) \in S_{gl}\) iff \((\pi ^2, \pi ^1) \in S_{lg}\).

For probabilistic monotonicity, \(p_{ge} \ge 0\), \(p_{gg} \ge 0\), \(p_{le} \ge 0\), and \(p_{ll} \ge 0\). In contrast, for deterministic monotonicity, each one of the probabilities \(p_{ge}\), \(p_{gg}\), \(p_{le}\), and \(p_{ll}\) is zero. Example 2 is an illustration of probabilistic monotonicity.

Example 2

Consider a game with \(n=3\) players who are members of an airline crew. Let \(N = \{1, 2, 3\}\), \(\mathbb {P} = (1,2,3)\) and \(\delta =3\). There are 5 structures possible and 20 possible ordered pairs of structures as listed in Table 4 (the corresponding probability distrubution is shown in Table 5). Suppose the optimum is \(\mathbb {O} = (\{1, 3\}, \{2\})\), which is represented as the sequence (1, 2, 1) enclosed in oval. Consider Row 4. \(\pi ^1\) is further away from the optimum than is \(\pi ^2\) and yet \(v(\pi ^1) > v(\pi ^2)\). This is a violation of monotonicity. Likewise, monotonicity is violated in the rows 11, 15, and 17. There is no violation in any of the remaining rows.

Clearly, the number of rows in which monotonicity is violated cannot be arbitrary. If we want to manage computational complexity, the degree of non-monotonicity must be bounded.

Table 4 An illustration of probabilistic monotonicity for a 3 player game with \(\mathbb {P} = (1, 2, 3)\). The optimal structure \(\mathbb {O} = (\{1, 3\}, \{2\})\) is represented as (1, 2, 1). Each row corresponds to an element of the set \(\mathbb {S}\). Four (viz. those in rows 4, 11, 15, and 17 highlighted in grey) out of the twenty elements of \(\mathbb {S}\) violate monotonicity
Table 5 Probability distribution table for the game given in Table 4

Definition 9

(Degree of non-monotonicity) The degree of non-monotonicity D is the sum of the cardinalities of \(\mathbb {S}_{ge}\), \(\mathbb {S}_{gg}\), \(\mathbb {S}_{le}\), and \(\mathbb {S}_{ll}\).

$$\begin{aligned} D = |\mathbb {S}_{ge}| + |\mathbb {S}_{gg}| + |\mathbb {S}_{le}| + |\mathbb {S}_{ll}| \ \ \ \ \ \ \ \ \ \ \square \end{aligned}$$

Let \(\mathbb {B}\) denote \(\frac{Bell^2(n - \delta - 2)}{3}\) and suppose that D satisfies the relation

$$\begin{aligned} D < \mathbb {B} \end{aligned}$$

for some \(3 < \delta \le n-3\) and \(n > 7\). Our aim then is to solve the following CSG problem:

CSG problem definition: For a probabilistically monotone PFG \((N, v_2, v)\) with the degree of non-monotonicity known to be bounded above by \(\mathbb {B}\), find the identities of \(\mathbb {P}_1, \ldots , \mathbb {P}_{\delta }\) and an optimal structure \(\mathbb {O}\) where

$$\begin{aligned} \mathbb {O} \in \left\{ \pi \ \ | \ \ \underset{\pi \in \varPi ^N}{arg \ max} \ \ v(\pi )\right\} \end{aligned}$$

given as input N and the function \(r^v\) induced by v.

Note that the actual values of coalition structures as given by v are not part of the input. Rather, only the relation between the values of any two structures is part of the problem input.

4 The proposed method

In Sect. 4.1 is a brief overview of the three key steps of the proposed method for finding \(\mathbb {P}\) and an optimal structure \(\mathbb {O}\). Details of Step 1 are in Sect. 4.2, Step 2 in Sect. 4.3, and Step 3 in Sect. 4.4. A complete formulation of the method is given as an algorithm in Sect. 5.

4.1 CSG method: overview

Step 1:

Determine who the two top priority players are, and their optimal coalitions. At the end of this step, \(\mathbb {P}_{|2}\) and \(\mathbb {O}_{|2}\) will become known.

Step 2:

For each \(3 \le i \le \delta \), determine the identity of the player \(\mathbb {P}_i\) and its optimal coalition. At the end of this step, \(\mathbb {P}_{|\delta }\) and \(\mathbb {O}_{|\delta }\) will become known.

Step 3:

Determine \(\mathbb {P}\) and \(\mathbb {O}\).

Consider Step 1. To begin, we know that \(\mathbb {P}_1 \in N\), so there are n possibilities for the identity of \(\mathbb {P}_1\). We also know that \(\mathbb {P}_1\) must belong to the first coalition (denoted \(C^{\mathbb {O}}_1\)) in \(\mathbb {O}\). Then, for any one possibility for the identity of \(\mathbb {P}_1\), say \(\mathbb {P}_1=x\), we know that there must be \(n-1\) possibilities for the identity of \(\mathbb {P}_2\), i.e, \(\mathbb {P}_2 \in N - \{x\}\), and that there must be two possibilities for its optimal coalition, i.e., \(\mathbb {P}_2\) must be a member of either \(C^{\mathbb {O}}_1\) or \( C^{\mathbb {O}}_2\). Let Z be the set of all these possibilities and let each element of Z be a quadruple defined as follows:

$$\begin{aligned} Z& {} = \{(x, y, 1, z) \ \ | \ \ x \in N, \ y \in N - \{x\}, \ z \in \{1, 2\} \} \end{aligned}$$
(7)

The semantics of quadruple (xy, 1, z) is that, it is possible that \(\mathbb {P}_1 = x\), \(\mathbb {P}_2 = y\), x belongs to the coalition \(C^{\mathbb {O}}_1\), and y belongs to the coalition \(C^{\mathbb {O}}_z\) in \(\mathbb {O}\). For example, the quadruple (2, 3, 1, 2) means that \(\mathbb {P}_1=2\), \(\mathbb {P}_2=3\), \(2 \in C^{\mathbb {O}}_1\), and \(3 \in C^{\mathbb {O}}_2\) is a possibility. We find it convenient to introduce terminology for referring to certain pairs of elements of Z.

Definition 10

For any \(x \in N\) and any \(y \in N - \{x\}\), (xy, 1, 1) and (yx, 1, 1) are each others’ partners, and (xy, 1, 2) and (yx, 1, 2) are each others’ partners. A partner pair is in one of the following forms:

  • ((xy, 1, 1), (yx, 1, 1))

  • ((xy, 1, 2), (yx, 1, 2))

Lemmas 1 and  2 readily follow from the definition of Z and that of a partner pair.

Lemma 1

All the following assertions are true.

  • \(|Z| = 2 \times n \times (n-1)\).

  • Every element in Z has a unique partner in Z.

  • Every element in Z is the partner of a unique element in Z. \(\square \)

Lemma 2

Any two partner pairs of Z must be in one of the following forms:

  1. 1.

    \(\bigl ((i, t, 1, 1), (t, i, 1, 1)\bigr )\), \(\bigl ((j, s, 1, 1), (s, j, 1, 1)\bigr )\)

  2. 2.

    \(\bigl ((i, t, 1, 2), (t, i, 1, 2)\bigr )\), \(\bigl ((j, s, 1, 2), (s, j, 1, 2)\bigr )\)

  3. 3.

    \(\bigl ((i, t, 1, 2), (t, i, 1, 2)\bigr )\), \(\bigl ((j, s, 1, 1), (s, j, 1, 1)\bigr )\)

  4. 4.

    \(\bigl ((i, t, 1, 1), (t, i, 1, 1)\bigr )\), \(\bigl ((i, t, 1, 2), (t, i, 1, 2)\bigr )\)

where \(i \in N\), \(j \in N - \{i\}\), \(s \in N - \{i, j\}\), and \(t \in N - \{i, j\}\). \(\square \)

We use \((i, j, x, y)\models \mathbb {O}\) as short for \((\mathbb {P}_1=i \wedge \mathbb {P}_2 = j \wedge \mathbb {P}_1 \in C^{\mathbb {O}}_x \wedge \mathbb {P}_2 \in C^{\mathbb {O}}_y)\) and \((i, j, x, y)\not \models \mathbb {O}\) as short for \(\lnot (\mathbb {P}_1=i \wedge \mathbb {P}_2 = j \wedge \mathbb {P}_1 \in C^{\mathbb {O}}_x \wedge \mathbb {P}_2 \in C^{\mathbb {O}}_y)\). Now, we know that there is a unique \(z \in Z\) such that \(z \models \mathbb {O}\) and for each \(\bar{z} \in Z\), \(\bar{z} \not \models \mathbb {O}\) iff \(z \ne \bar{z}\). This observation leads to the definition of set \(\bar{Z}\):

$$\begin{aligned} \bar{Z} = \{\bar{z} \in Z \ \ | \ \ \bar{z} \not \models \mathbb {O}\} \end{aligned}$$

Since only one element of Z corresponds to \(\mathbb {O}\), we get \(|\bar{Z}| = |Z| -1\).

Step 1 ( details in Sect. 4.2) involves doing three different tests T1, T2, and T3 with appropriate arguments in such a way that at least \(|Z| - 2\) elements of \(\bar{Z}\) can be determined. Once this is done, one of the elements in \(Z -\bar{Z}\) must correspond to \(\mathbb {O}\) and this concludes Step 1. For Step 2, we define a further test T4 details of which are in Sect. 4.3.

4.2 CSG method: Step 1

Sect. 4.2.1 gives a definition of the tests T1, T2, and T3. Section 4.2.2 is a specification of the parameters of these tests. Section 4.2.3 describes how these tests can be used to find an element of \(\mathbb {S}_{MON}\). Section 4.2.4 describes how these tests can be used to determine who the two top priority players are and their positions in an optimal structure.

4.2.1 The tests T1, T2, T3

The tests T1, T2, and T3 are defined as follows:

T1:

For any \(i \in N\) and \(j \in N - \{i\}\), the test T1(ij) compares the values of any two structures \(\pi _1 \in \varPi ^N\) and \(\pi _2 \in \varPi ^N\) such that

\(*\):

in \(\pi _1\), the players i and t belong to different coalitions but j and s belong to the same coalition, and

\(*\):

in \(\pi _2\), the players i and t belong to the same coalition but j and s belong to different coalitions

where t is an arbitrary element of \(N - \{i, j\}\) and s is an arbitrary element of \(N - \{i, j\}\). The values of i, j, s, and t are determined on the basis of the elements in Z (see Theorem 5 for details). Let \(S^1_{T1}(i, j)\) denote the set of all those structures in which the players i and t belong to different coalitions but j and s belong to the same coalition. Let \(S^2_{T1}(i, j)\) denote the set of all those structures in which the players i and t belong to the same coalition but j and s belong to different coalitions. The test T1(ij) uses \(r^v\) to compare the value of any structure from \(S^1_{T1}(i, j)\) to the value of any structure from \(S^2_{T1}(i, j)\).

T2:

For any \(i \in N\) and any \(j \in N - \{i\}\), the test T2(ij) compares the values of any two structures \(\pi _1 \in \varPi ^N\) and \(\pi _2 \in \varPi ^N\) such that

\(*\):

in \(\pi _1\), i and t are apart, and j and s are apart, and

\(*\):

in \(\pi _2\), i and t are together, and j and s are together

where t is an arbitrary element of \(N - \{i, j\}\) and s is an arbitrary element of \(N - \{i, j\}\). The values of i, j, s, and t are determined on the basis of the elements in Z (see Theorem 5 for details) Let \(S^1_{T2}(i, j)\) denote the set of all those structures in which the players i and t belong to different coalitions, and j and s belong to different coalitions. Let \(S^2_{T2}(i, j)\) denote the set of all those structures in which the players i and t belong to the same coalition, and j and s belong to the same coalition. The test T2(ij) uses \(r^v\) to compare the value of any structure from \(S^1_{T2}(i, j)\) to the value of any structure from \(S^2_{T2}(i, j)\).

T3:

For any \(i \in N\) and \(j \in N - \{i\}\), the test T3(ij) compares the values of any two structures \(\pi _1 \in \varPi ^N\) and \(\pi _2 \in \varPi ^N\) such that

\(*\):

in \(\pi _1\), i and j are apart, and

\(*\):

in \(\pi _2\), i and j are together.

Let \(S^1_{T3}(i, j)\) denote the set of all those structures in which the players i and j belong to different coalitions. Let \(S^2_{T3}(i, j)\) denote the set of all those structures in which the players i and j belong to the same coalition. The test T3(ij) uses \(r^v\) to compare the value of any structure from \(S^1_{T3}(i, j)\) to the value of any structure from \(S^2_{T3}(i, j)\).

4.2.2 The universes of T1, T2, T3

By definition, there are several different ways of doing tests T1(ij), T2(ij), and T3(ij) for any i and j. The set of all these possibilities is defined in terms of the universe of a test.

Definition 11

For each \(1 \le a \le 3\), the set \(U_{Ta}(i, j) = S^1_{Ta}(i, j) \times S^2_{Ta}(i, j)\) is called the universe of Ta(ij). \(\square \)

Lemma 3

For each \(1 \le a \le 3\), the sets  \(S^1_{Ta}(i, j)\) and \(S^2_{Ta}(i, j)\) are disjoint.

Proof

By definition of \(S^1_{Ta}(i, j)\) and \(S^2_{Ta}(i, j)\) given in Sect. 4.2.1. \(\square \)

Let \(\mathbb {B}_1\) denote \(\frac{(Bell(n-1) - Bell(n-2))^2}{3}\). Then as per the definition of \(\mathbb {B}\) given in Sect. 3.3, \(\mathbb {B}_1 > \mathbb {B}\).

Theorem 2

For any two distinct players i and j, there are

  1. 1.

    \(\bigl (Bell(n-1) - Bell(n-2)\bigr )^2 = 3\mathbb {B}_1\) distinct ways of doing T1(ij).

  2. 2.

    \(\bigl ((Bell(n) - 2Bell(n-1) + Bell(n-2)) \times Bell(n-2)\bigr ) > 3\mathbb {B}_1\) distinct ways of doing T2(ij).

  3. 3.

    \(\bigl ((Bell(n) - Bell(n-1)) \times Bell(n-1)\bigr ) > 3\mathbb {B}_1\) distinct ways of doing T3(ij).

Proof

  1. 1.

    By Lemma 3 and Theorem 19 (see Appendix A).

  2. 2.

    By Lemma 3 and Theorem 20 (see Appendix A).

  3. 3.

    From Lemma 3 and Theorem 21 (see Appendix A).

\(\square \)

For any \(n \ge 5\) and any two distinct players i and j, the cardinalities of the universes of T1, T2, and T3 are lower bounded as per the following assertions (see Theorem 23 in Appendix A for proof):

  1. 1.

    \(|U_{T1}(i, j)| > 3\mathbb {B}\)

  2. 2.

    \(|U_{T2}(i, j)| > 3\mathbb {B}\)

  3. 3.

    \(|U_{T3}(i, j)| > 3\mathbb {B}\)

Theorem 22 (see Appendix A) gives the relation between the cardinalities of \(U_{T1}(i, j)\), \(U_{T2}(i, j)\), and \(U_{T3}(i, j)\).

4.2.3 Monotonicity-satisfying relations for T1, T2, T3

For any \(1 \le a \le 3\), the universe of Ta(ij) can be partitioned into three disjoint subsets \(U^<_{Ta}(i, j)\), \(U^=_{Ta}(i, j)\), and \(U^>_{Ta}(i, j)\) as follows:

\(*\):

\(U^<_{Ta}(i, j) = \{(x, y) \in S^1_{Ta}(i, j) \times S^2_{Ta}(i, j) \ | \ v(x) < v(y)\}\)

\(*\):

\(U^=_{Ta}(i, j) = \{(x, y) \in S^1_{Ta}(i, j) \times S^2_{Ta}(i, j) \ | \ v(x) = v(y)\}\)

\(*\):

\(U^>_{Ta}(i, j) = \{(x, y) \in S^1_{Ta}(i, j) \times S^2_{Ta}(i, j) \ | \ v(x) > v(y)\}\)

Then, the set of monotonicity-satisfying relations for a test is defined as follows:

Definition 12

For any \(1 \le a \le 3\), and any two distinct players i and j, the set of monotonicity-satisfying relations for Ta(ij) is

$$\begin{aligned} MSR_{Ta}(i, j) = \{x \ \ | \ \ x \in \{<, =, >\}, r^v(\pi ^1, \pi ^2) = x, (\pi ^1, \pi ^2) \in U_{Ta}(i, j) \cap S_{\textsc {mon}}\} \ \ \square \end{aligned}$$

Lemma 4

Consider any \(1 \le a \le 3\). For any \(x \in \{<, =, >\}\), \(x \in MSR_{Ta}(i, j)\) if \(|U^x_{Ta}(i, j)| > \mathbb {B}\), i.e.,

$$\begin{aligned} \forall x \in \{<, =,>\} \ \ \ \ |U^x_{Ta}(i, j)| > \mathbb {B} \ \ \Rightarrow \ \ x \in MSR_{Ta}(i, j) \end{aligned}$$

Proof

By problem definition \(D < \mathbb {B}\). So if \(|U^x_{Ta}(i, j)| > \mathbb {B}\) for any x, then at least one element of \(U^x_{Ta}(i, j)\) must belong to \(S_{\textsc {mon}}\). \(\square \)

Theorem 3

Consider any \(1 \le a \le 3\). For any two distinct players i and j, each one of the following assertions must true.

  1. 1.

    More than \(2\mathbb {B}\) elements of the universe of Ta(ij) must obey monotonicity.

  2. 2.

    The set of monotonicity-satisfying relations for Ta(ij) must be non-empty.

Proof

The universe of T1(ij) contains more than \(3\mathbb {B}\) elements (see Theorem 23 in Appendix A for proof). By the CSG problem definition given in Sect. 3, \(D < \mathbb {B}\). So more than \(2\mathbb {B}\) elements of the universe of T1(ij) must obey monotonicity.

Since \(|U_{T1}(i, j)| > 3\mathbb {B}\) (see Theorem 23 in Appendix A), at least one of the three sets \(U^<_{T1}(i, j)\), \(U^=_{T1}(i, j)\), or \(U^>_{T1}(i, j)\) must contain \(\mathbb {B}\) or more elements. Otherwise, \(|U^<_{T1}(i, j)| + |U^=_{T1}(i, j)| + |U^>_{T1}(i, j)| < 3 \mathbb {B}\) which is impossible. If \(|U^x_{T1}(i, j)| \ge \mathbb {B}\) for any x, then at least one element of \(U^x_{T1}(i, j)\) must belong to \(S_{\textsc {mon}}\) because \(D < \mathbb {B}\). So the set of monotonicity-satisfying relations for T1(ij) must be non-empty.

By Theorem 23 (see Appendix A), \(|U_{T2}(i, j)| > 3\mathbb {B}\) and \(|U_{T3}(i, j)| > 3\mathbb {B}\). Thus for each one of the two tests T2(ij) and T3(ij), more than \(2\mathbb {B}\) elements of their universe must obey monotonicity, and the set of their monotonicity-satisfying relations must be non-empty. \(\square \)

Table 6 Step 1: Probabilistic monotonicity induced implications

Probabilistic monotonicity induces the implications \(X_1\) to \(X_8\) listed in Table 6. In order make deductions on the basis of any implication, it is necessary to ensure that its antecedant is satisfied. Observe that each one of the implications \(X_1\) to \(X_8\) has \(\pi ^1 \in S^1_{Ta}(i, j)\) (for each \(1 \le a \le 3\)) and \(\pi ^2 \in S^2_{Ta}(i, j)\) as part of the antecedant of \(\overset{R}{\Rightarrow }\). Given the definitions of \(S^1_{Ta}(i, j)\) and \(S^2_{Ta}(i, j)\), it is straightforward to find a pair \((\pi ^1, \pi ^2)\) such that \(\pi ^1 \in S^1_{Ta}(i, j)\) and \(\pi ^2 \in S^2_{Ta}(i, j)\). Observe also that each one of the implications \(X_1\) to \(X_8\) has \((\pi ^1, \pi ^2) \in S_\textsc {mon}\) as part of the antecedant of \(\overset{R}{\Rightarrow }\). But the key question is how can a pair \((\pi ^1, \pi ^2)\) be found such that \((\pi ^1, \pi ^2) \in S_\textsc {mon}\) when \(S_\textsc {mon}\) is not part of the problem input (as per the problem definition given in Sect. 3)? The answer lies in Theorem 4.

Theorem 4

Consider any \(1 \le w \le 3\). If \(D < \mathbb {B}\), then for any two distinct players i and j, at least \(\mathbb {B}\) and at most \(3\mathbb {B}-2\) invocations to \(r^v\) are needed to compute an element of the set of monotonicity-satisfying relations for Tw(ij).

Proof

By Lemma 4, \(\forall x \in \{<, =, >\}\), \(|U^x_{Tw}(i, j)| > \mathbb {B}\) implies that \(x \in MSR_{Tw}(i, j)\) (i.e., at least one element of \(U^x_{Tw}(i, j)\) must belong to \(S_\textsc {mon}\)). Further, if \(|U^x_{Tw}(i, j)| < \mathbb {B}\), there is no guarantee that \(x \in MSR_{Tw}(i, j)\). Now, suppose the elements of \(U_{Tw}(i, j)\) are arranged in some arbitrary sequence denoted \(u_1, u_2, \ldots \). Suppose the function \(r^v\) is applied to the elements of \(U_{Tw}(i, j)\) in the order \(u_1, u_2, \ldots \). Based on what is returned by \(r^v\), one of the following scenarios must occur:

  • Let \(a \in \{<, =, >\}\). The function \(r^v\) returns \(r^v(u_i) = a\) for each \(1 \le i \le \mathbb {B}\), so \(a \in MSR_{Tw}(i, j)\) and a monotonicity-satisfying relation is found with \(\mathbb {B}\) invocations to \(r^v\). Note that this means that an element of \(U^a_{Tw}(i, j)\) must belong to \(S_\textsc {mon}\).

  • Let a, b and c be any three pairwise distinct elements of \(\{<, =, >\}\). Suppose \(r^v\) is applied to the first \(3(\mathbb {B} - 1)\) elements of the sequence \(u_1, u_2, \ldots \) and it is found that

    $$\begin{aligned} r^v(u_i) = {\left\{ \begin{array}{ll} a &{} \ \ \ \ \ \ \text {for each }i\text { such that } mod(i, 3)=0 \\ b &{} \ \ \ \ \ \ \text {for each }i\text { such that } mod(i, 3)=1 \\ c &{} \ \ \ \ \ \ \text {for each }i\text { such that }mod(i, 3)=2 \end{array}\right. } \end{aligned}$$
    (8)

    At this stage, \(|U^a_{Tw}(i, j)| = |U^b_{Tw}(i, j)| = |U^c_{Tw}(i, j)| = \mathbb {B} - 1\). Next, \(r^v\) is applied to \(u_{3\mathbb {B} - 2}\). Then regardless of the outcome of \(r^v(u_{3\mathbb {B}-2})\), one of the three cardinalities \(|U^a_{Tw}(i, j)|\), \(|U^b_{Tw}(i, j)|\) or \(|U^c_{Tw}(i, j)|\) must be \(\mathbb {B}\) and therefore a monotonicity-satisfying relation will be found with \(3\mathbb {B}-2\) invocations to \(r^v\). Say a is monotonicity-satisfying, then an element of \(U^a_{Tw}(i, j)\) must belong to \(S_\textsc {mon}\).

  • If it is neither of the above two scenarios, then a monotonicity-satisfying relation, say a, will be found with more than \(\mathbb {B}\) but fewer than \(3\mathbb {B}-2\) applications of \(r^v\). Consequently, an element of \(U^a_{Tw}(i, j)\) must belong to \(S_\textsc {mon}\).

\(\square \)

4.2.4 Application of tests T1, T2, and T3

Those elements of Z that do not correspond to an optimal solution can be eliminated using the tests T1, T2, and T3 with suitable arguments, as characterized in Theorem 5.

Theorem 5

If Z contains at least two partner pairs, then  \(\exists \ a \ 1 \le a \le 3\) such that at least one partner pair can be eliminated by doing Ta (with suitable arguments) at most \(3\mathbb {B} - 2\) times.

Proof

As per Lemma 2, any two partner pairs of Z must be in one of the following forms:

\(Case\ 1:\):

\(\bigl ((i, t, 1, 1), (t, i, 1, 1)\bigr )\), \(\bigl ((j, s, 1, 1), (s, j, 1, 1)\bigr )\)

\(Case \ 2:\):

\(\bigl ((i, t, 1, 2), (t, i, 1, 2)\bigr )\), \(\bigl ((j, s, 1, 2), (s, j, 1, 2)\bigr )\)

\(Case \ 3:\):

\(\bigl ((i, t, 1, 2), (t, i, 1, 2)\bigr )\), \(\bigl ((j, s, 1, 1), (s, j, 1, 1)\bigr )\)

\(Case \ 4:\):

\(\bigl ((i, t, 1, 1), (t, i, 1, 1)\bigr )\), \(\bigl ((i, t, 1, 2), (t, i, 1, 2)\bigr )\)

where \(i \in N\), \(j \in N - \{i\}\), \(s \in N - \{i,j\}\), and \(t \in N - \{i,j\}\).

Consider Case 1 which gives rise to two possibilities: either \(t=s\) or else \(t \ne s\). No matter which one of these two possibilities holds, Theorem 3 guarantees that the set of monotonicity-satisfying relation for T1(ij) must be non-empty. By Theorem 4, at most \(3\mathbb {B}-2\) comparisons are needed to compute a monotonicity-satisfying relation for T1(ij).

\(*\):

If either > or \(=\) is a monotonicity-satisfying relation for T1(ij), then the pair ((it, 1, 1), (ti, 1, 1)) must be eliminated from Z. Because, by the implication \(X_1\) given in Table 6, the antecedant of \(\overset{R}{\Rightarrow }\) is true but its consequent is false. This makes the consequent of \(\overset{L}{\Rightarrow }\) false. By contrapositive, the antecedant of \(\overset{L}{\Rightarrow }\) must be false. In other words, \((i, t, 1, 1) \not \models \mathbb {O}\) and \((t, i, 1, 1) \not \models \mathbb {O}\). Consequently, \(((i, t, 1, 1), (t, i, 1, 1)) \not \in Z\). Equivalently, \(((i, t, 1, 1), (t, i, 1, 1)) \in \bar{Z}\).

\(*\):

If either < or \(=\) is a monotonicity-satisfying relation for T1(ij), then the pair ((js, 1, 1), (sj, 1, 1)) must be eliminated from Z. Because, by the implication \(X_3\) given in Table 6, the antecedant of \(\overset{R}{\Rightarrow }\) is true but its consequent is false. This makes the consequent of \(\overset{L}{\Rightarrow }\) false. By contrapositive, the antecedant of \(\overset{L}{\Rightarrow }\) must be false. In other words, \((j, s, 1, 1) \not \models \mathbb {O}\) and \((s, j, 1, 1) \not \models \mathbb {O}\). Consequently, \(((j, s, 1, 1), (s, j, 1, 1)) \not \in Z\). Equivalently, \(((j, s, 1, 1), (s, j, 1, 1)) \in \bar{Z}\).

Thus, regardless of what the monotonicity-satisfying relation for T1(ij) is, the elimination of at least one pair of elements is guaranteed for Case 1.

Consider Case 2 which also gives rise to two possibilities: either \(t=s\) or else \(t \ne s\). No matter which one of these two possibilities holds, Theorem 3 guarantees that the set of monotonicity-satisfying relation for T1(ij) must be non-empty. By Theorem 4, at most \(3\mathbb {B}-2\) comparisons are needed to compute a monotonicity relation for T1(ij).

\(*\):

If either > or = is a monotonicity-satisfying relation for T1(ij), then the pair ((js, 1, 2), (sj, 1, 2)) must be eliminated from Z. Because, by the implication \(X_4\) given in Table 6, the antecedant of \(\overset{R}{\Rightarrow }\) is true but its consequent is false. This makes the consequent of \(\overset{L}{\Rightarrow }\) false. By contrapositive, the antecedant of \(\overset{L}{\Rightarrow }\) must be false. In other words, \((i, t, 1, 2) \not \models \mathbb {O}\) and \((j, s, 1, 2) \not \models \mathbb {O}\). Consequently, \(((j, s, 1, 2), (s, j, 1, 2)) \not \in Z\). Equivalently, \(((j, s, 1, 2), (s, j, 1, 2)) \in \bar{Z}\).

\(*\):

If either < or \(=\) is a monotonicity-satisfying relation for T1(ij), then the pair ((it, 1, 2), (ti, 1, 2)) must be eliminated from Z. Because, by the implication \(X_2\) given in Table 6, the antecedant of \(\overset{R}{\Rightarrow }\) is true but its consequent is false. This makes the consequent of \(\overset{L}{\Rightarrow }\) false. By contrapositive, the antecedant of \(\overset{L}{\Rightarrow }\) must be false. In other words, \((i, t, 1, 2) \not \models \mathbb {O}\) and \((t, i, 1, 2) \not \models \mathbb {O}\). Consequently, \(((i, t, 1, 2), (t, i, 1, 2)) \not \in Z\). Equivalently, \(((i, t, 1, 2), (t, i, 1, 2)) \in \bar{Z}\).

Thus, regardless of what the monotonicity-satisfying relation for T1(ij) is, the elimination of at least one pair of elements is guaranteed for Case 2.

Consider Case 3 which also gives rise to two possibilities: either \(t=s\) or else \(t \ne s\). No matter which one of these two possibilities holds, Theorem 3 guarantees that the set of monotonicity-satisfying relation for T2(ij) must be non-empty. By Theorem 4, at most \(3\mathbb {B}-2\) comparisons are needed to compute a monotonicity relation for T2(ij).

\(*\):

If the monotonicity-satisfying relation for T2(ij) is either “<" or “\(=\)", then the pair ((it, 1, 2), (ti, 1, 2)) must be eliminated from Z. Because, by the implication \(X_5\) given in Table 6, the antecedant of \(\overset{R}{\Rightarrow }\) is true but its consequent is false. This makes the consequent of \(\overset{L}{\Rightarrow }\) false. By contrapositive, the antecedant of \(\overset{L}{\Rightarrow }\) must be false. In other words, \((i, t, 1, 2) \not \models \mathbb {O}\) and \((t, i, 1, 2) \not \models \mathbb {O}\).

\(*\):

If the monotonicity-satisfying relation for T2(ij) is either “\(=\)" or “>", then the pair ((js, 1, 1), (sj, 1, 1)) must be eliminated. Because, by the implication \(X_6\) given in Table 6, the antecedant of \(\overset{R}{\Rightarrow }\) is true but its consequent is false. This makes the consequent of \(\overset{L}{\Rightarrow }\) false. By contrapositive, the antecedant of \(\overset{L}{\Rightarrow }\) must be false. In other words, \((j, s, 1, 1) \not \models \mathbb {O}\) and \((j, s, 1, 1) \not \models \mathbb {O}\).

Thus, regardless of what the monotonicity-satisfying relation for T1(ij) is, the elimination of at least one pair of elements is guaranteed for Case 3.

Consider Case 4. By Theorem 3 guarantees that the set of monotonicity-satisfying relation for T3(it) must be non-empty. By Theorem 4, at most \(3\mathbb {B}-2\) comparisons are needed to compute a monotonicity relation for T3(it).

\(*\):

If the monotonicity-satisfying relation for T3(it) is either “<" or “\(=\)", then the pair ((it, 1, 2), (ti, 1, 2)) must be eliminated from Z. Because, by the implication \(X_7\) given in Table 6, the antecedant of \(\overset{R}{\Rightarrow }\) is true but its consequent is false. This makes the consequent of \(\overset{L}{\Rightarrow }\) false. By contrapositive, the antecedant of \(\overset{L}{\Rightarrow }\) must be false. In other words, \((i, t, 1, 2) \not \models \mathbb {O}\) and \((t, i, 1, 2) \not \models \mathbb {O}\).

\(*\):

If the monotonicity-satisfying relation for T3(it) is either “\(=\)" or “>", then the pair ((it, 1, 1), (ti, 1, 1)) must be eliminated. Because, by the implication \(X_8\) given in Table 6, the antecedant of \(\overset{R}{\Rightarrow }\) is true but its consequent is false. This makes the consequent of \(\overset{L}{\Rightarrow }\) false. By contrapositive, the antecedant of \(\overset{L}{\Rightarrow }\) must be false. In other words, \((i, t, 1, 1) \not \models \mathbb {O}\) and \((t, i, 1, 1) \not \models \mathbb {O}\).

Thus, regardless of what the monotonicity-satisfying relation for T3(it) is, the elimination of at least one pair of elements is guaranteed for Case 4. \(\square \)

Theorem 5 forms the basis for Step 1, i.e., for computing the set \(\{\mathbb {P}_1, \mathbb {P}_2\}\) of the two top priority players and the coalitions to which they belong in \(\mathbb {O}\). Specifically, Step 1 is achieved as follows:

  • Initialize Z as per Equation 7.

  • While Z contains more than one partner pair, choose a relevant test (i.e., T1, T2, or T3 as per Theorem 5) and do it in order to eliminate from Z those elements that do not correspond to \(\mathbb {O}\).

At the end of Step 1, Z contains one partner pair. At this stage, the set \(\{\mathbb {P}_1, \mathbb {P}_2\}\) is known although we do not know which one of these two players is \(\mathbb {P}_1\) and which one is \(\mathbb {P}_2\). However, knowledge about the identities of \(\mathbb {P}_1\) and \(\mathbb {P}_2\) is unnecessary for computing \(\mathbb {O}\) as long as the set \(\{\mathbb {P}_1, \mathbb {P}_2\}\) is known.

4.3 CSG method: Step 2

At this stage, the set \(\{\mathbb {P}_1, \mathbb {P}_2\}\) comprised of the two top priority players is known, and it is also known if the two top priority players are together in \(\mathbb {O}\) or if they are apart. The identity of each \(\mathbb {P}_i\), for \(3 \le i \le n\), and its optimal coalition remains to be found. Step 2 is for finding this in a series of stages. In Stage i, \(3 \le i \le n\), the identity of \(\mathbb {P}_i\) and the coalition \(C^{\mathbb {O}}_j\) to which \(\mathbb {P}_i\) belongs will be found using the test T4. We will first describe T4 and then explain how it is used.

In general, consider any stage \(k > 2\) where the identities and optimal positions of the top k priority players have already been found. Let \(\alpha (k)\) be the number of coalitions in \({\mathbb {O}}_{|k}\). Let \(Q(k) = N - \{\mathbb {P}_1, \ldots , \mathbb {P}_k\}\). There are \(|Q(k)| = n-k\) possibilities for the identity of \(\mathbb {P}_{k+1}\), and \(\alpha (k)+1\) possibilities for its optimal coalition. Let V(k) be a set of all these possibilities:

$$\begin{aligned} V(k)& {} = \{(x, y) \ | \ x \in Q(k), \ y \in \{1, \ldots , \alpha (k)+1\}\} \end{aligned}$$
(9)

The semantics of (xy) is that, it is possible that \(\mathbb {P}_{k+1}= x\) and x belongs to the coalition \(C^{\mathbb {O}}_y\) in \(\mathbb {O}\). Thus \(|V(k)| = (n - k) \times (\alpha (k) +1)\). The problem now is to find an \((x, y) \in V(k)\) such that \((x, y) \models \mathbb {O}\). The test T4 is for finding such an element by eliminating from V(k) those elements that do not correspond to \(\mathbb {O}\).

The remainder of this section is organised as follows. Section 4.3.1 gives a definition of the test T4. Section 4.3.2 is a specification of the parameters of T4. Section  describes how T4 can be used to find an element of \(\mathbb {S}_{MON}\). Section 4.3.4 describes how T4 can be used to determine the identities of players \(\mathbb {P}_3 \ldots \mathbb {P}_{\delta }\) and their positions in an optimal structure.

4.3.1 The test T4

The test T4 is defined as follows. For any two distinct elements (ab) and (cd) of V(k), the test T4(kabcd) uses \(r^v\) to compare the values of any two structures \(\pi _1 \in \varPi ^N\) and \(\pi _2 \in \varPi ^N\) such that

\(*\):

in \(\pi _1\), each one of the k top priority players belongs to its respective optimal coalition, player a belongs to \(C_b\), player c belongs to any coalition except \(C_d\), and

\(*\):

in \(\pi _2\), each one of the k top priority players belongs to its respective optimal coalition, player c belongs to \(C_d\), player a belongs to any coalition except \(C_b\).

Let \(S^1_{T4}(k, a, b, c, d)\) denoteFootnote 3 the set of all those structures in which each one of the k top priority players belongs to its respective optimal coalition, the player a belongs to \(C_b\), and the player c belongs to any coalition except \(C_d\). Let \(S^2_{T4}(k, a, b, c, d)\) denote the set of all those structures in which each one of the k top priority players belongs to its respective optimal coalition, the player c belongs to \(C_d\), and the player a belongs to any coalition except \(C_b\). Lemma 5 follows readily from the definitions of \(S^1_{T4}(k, a, b, c, d)\) and \(S^2_{T4}(k, a, b, c, d)\).

Lemma 5

The sets \(S^1_{T4}(k, a, b, c, d)\) and  \(S^2_{T4}(k, a, b, c, d)\) are disjoint.

The test T4(kabcd) uses \(r^v\) to compare the value of any structure from \(S^1_{T4}(k, a, b, c, d)\) to the value of any structure from \(S^2_{T4}(k, a, b, c, d)\).

4.3.2 The universe of T4

For any k, a, b, c, and d, there are several ways of doing T4(kabcd). The set of all these possibilities is given by the universe of T4(k, a, b, c, d).

Definition 13

The set \(U_{T4}(k, a, b, c, d) = S^1_{T4}(k, a, b, c, d) \times S^2_{T4}(k, a, b, c, d)\) is called the universe of T4(kabcd).

Lemma 6 characterises the number of different ways of doing T4.

Lemma 6

For any \( 2 \le k \le n-1\), any \((a, b) \in V(k)\), and any \((c, d) \in V(k)\),

$$\begin{aligned} |U_{T4}(x, a, b, c, d)| = |S^1_{T4}(k, a, b, c, d)| \times |S^2_{T4}(k, a, b, c, d)|, \end{aligned}$$

and there are \(|U_{T4}(x, a, b, c, d)|\) distinct ways of doing  T4(kabcd).

Proof

By Lemma 5, \(S^1_{T4}(x, a, b, c, d)\) and \(S^2_{T4}(x, a, b, c, d)\) are disjoint. Thus there are \(|U_{T4}(x, a, b, c, d)| = |S^1_{T4}(k, a, b, c, d)| \times |S^2_{T4}(k, a, b, c, d)|\) distinct ways of doing the test T4(xabcd). \(\square \)

Theorem 6 characterises a bound on the cardinality of \(U_{T4}(x, a, b, c, d)\).

Theorem 6

For any \(2< k <n-2\), any  \((a, b) \in V(k)\), and any  \((c, d) \in V(k)\), the cardinality of  \(U_{T4}(k, a, b, c, d)\) satisfies the following relation:

$$\begin{aligned} |U_{T4}(k, a, b, c, d)| > Bell^2(n-k-2) \end{aligned}$$

Proof

We are given that \(U_{T4}(x, a, b, c, d) = S^1_{T4}(k, a, b, c, d) \times S^2_{T4}(k, a, b, c, d)\). Now, in some of the structures in \(S^1_{T4}(k, a, b, c, d)\), the \(k+1\) top priority players are split into \(\alpha (k)\) coalitions, while in others they are split into \(\alpha (k)+1\) coalitions. Let \(S^{11}_{T4}(k, a, b, c, d) \subset S^1_{T4}(k, a, b, c, d)\) denote the set of structures of the former type and \(S^{12}_{T4}(k, a, b, c, d) \subset S^1_{T4}(k, a, b, c, d)\) that of the latter type, where \(S^{11}_{T4}(k, a, b, c, d)\) and \(S^{12}_{T4}(k, a, b, c, d)\) are disjoint. Consider each one of these two cases:

Case 1:

The \(k+1\) top priority players are split into \(\alpha (k)\) coalitions. The set of all such structures is \(S^{11}_{T4}(k, a, b, c, d) \subset S^1_{T4}(k, a, b, c, d)\). The structures in \(S^{11}_{T4}(k, a, b, c, d)\) are similar with regard to the positions of the k top priority players, but differ in terms of the positions of the remaining Q(k) players. There are various ways of organising the players in Q(k) whilst keeping the positions of \(\mathbb {P}_1, \ldots , \mathbb {P}_k\) fixed, to get coalition structures over N. The players in \(Q(k) - \{a, c\}\) can be partitioned into \(1 \le t \le |Q(k)| - 2\) unordered coalitions in \(Stirling((|Q(k)-2|, t)\) different waysFootnote 4. Some of these t unordered coalitions may be merged with the coalitions \(C_1, \ldots , C_{\alpha (k)}\) such that no two unordered coalitions are merged with the same coalition in \(\{C_1, \ldots , C_{\alpha (k)}\}\). Let \(0 \le w \le Min(\alpha (k), t)\) be the number of merged coalitions. Let \(S^{111}_{T4}(k, a, b, c, d) \subset S^{11}_{T4}(k, a, b, c, d)\) denote the set of all those structures in which each one of the k top priority players is in its optimal coalition, \(a \in C_b\), and for some specific \(x \ne d\), \(c \in C_x\). Then

$$\begin{aligned}|S^{111}_{T4}(k, a, b, c, d)| &= {|Q(k)|-2}{t=1}\sum \biggl (Stirling(|Q(k)|-2, t) \ \times {Min(\alpha (k), t)}{w=0}\nonumber \\&\quad \sum \biggl \{\left( {\begin{array}{c}\alpha (k)\\ w\end{array}}\right) \ \left( {\begin{array}{c}t\\ w\end{array}}\right) \ w! \biggr \} \biggr ) \end{aligned}$$
(10)
Case 2:

The \(k+1\) top priority players are split into \(\alpha (k)+1\) coalitions. The set of all such structures is \(S^{12}_{T4}(k, a, b, c, d) \subset S^1_{T4}(k, a, b, c, d)\). The structures in \(S^{12}_{T4}(k, a, b, c, d)\) are similar with regard to the positions of the k top priority players, but differ in terms of the positions of the remaining Q(k) players. There are various ways of organising the players in Q(k) whilst keeping the positions of \(\mathbb {P}_1, \ldots , \mathbb {P}_k\) fixed, to get coalition structures over N. The players in \(Q(k) - \{a, c\}\) can be partitioned into \(1 \le t \le |Q(k)| - 2\) unordered coalitions in \(Stirling((|Q(k)-2|, t)\) different ways. Some of these t unordered coalitions may be merged with the coalitions \(C_1, \ldots , C_{\alpha (k)}\) such that no two unordered coalitions are merged with the same coalition in \(\{C_1, \ldots , C_{\alpha (k)}\}\). Let \(0 \le w \le Min(\alpha (k)+1, t)\) be the number of merged coalitions. Let \(S^{121}_{T4}(k, a, b, c, d) \subset S^{12}_{T4}(k, a, b, c, d)\) denote the set of all those structures in which each one of the k top priority players is in its optimal coalition, \(a \in C_b\), and for some specific \(x \ne d\), \(c \in C_x\). Then

$$\begin{aligned}&|S^{121}_{T4}(k, a, b, c, d)|& {} = {|Q(k)|-2}{t=1}\nonumber \\&\quad \sum \biggl (Stirling(|Q(k)|-2, t) \ \times {Min(\alpha (k)+1, t)}{w=0}\sum \biggl \{\left( {\begin{array}{c}\alpha (k)+1\\ w\end{array}}\right) \ \left( {\begin{array}{c}t\\ w\end{array}}\right) \ w! \biggr \} \biggr ) \end{aligned}$$
(11)

From Equations 10 and 11, it is evident that \(|S^{111}_{T4}(k, a, b, c, d)| < |S^{121}_{T4}(k, a, b, c, d)|\). Now, since \(\alpha (k) \ge 1\), we get

$$\begin{aligned} {Min(\alpha (k), t)}{w=0}\sum \ \biggl \{ \ \left( {\begin{array}{c}\alpha (k)\\ w\end{array}}\right) \times \left( {\begin{array}{c}t\\ w\end{array}}\right) \times w! \ \biggr \} \ge 1. \end{aligned}$$

This implies that

$$\begin{aligned} |S^{111}_{T4}(k, a, b, c, d)| > {|Q(k)|-2}{t=1}\sum Stirling(|Q(k)|-2, t) \end{aligned}$$

where \(|Q(k)| = n-k\). Then, by the definitions of Bell and Stirling numbers, \(Bell(n) = \sum ^n_{i=1}Stirling(n, i)\). Thus,

$$\begin{aligned} |S^{111}_{T4}(k, a, b, c, d)| > Bell(n-k-2). \end{aligned}$$

Since \(S^{111}_{T4}(k, a, b, c, d) \subset S^{11}_{T4}(k, a, b, c, d) \subset S^{1}_{T4}(k, a, b, c, d)\), we get \(|S^1_{T4}(k, a, b, c, d)| > |S^{111}_{T4}(k, a, b, c, d)|\) and therefore

$$\begin{aligned} |S^1_{T4}(k, a, b, c, d)| > Bell(n-k-2). \end{aligned}$$

Analogously,

$$\begin{aligned} |S^2_{T4}(k, a, b, c, d)| > Bell(n-k-2). \end{aligned}$$

Since \(S^1_{T4}(k, a, b, c, d)\) and \(S^2_{T4}(k, a, b, c, d)\) are disjoint (see Lemma 5), \(S^{111}_{T4}(k, a, b, c, d)\) and \(S^{121}_{T4}(k, a, b, c, d)\) are disjoint, and since \(U_{T4}(k, a, b, c, d) = S^1_{T4}(k, a, b, c, d) \times S^2_{T4}(k, a, b, c, d)\), we have:

$$\begin{aligned} |U_{T4}(k, a, b, c, d)| > Bell^2(n-k-2). \end{aligned}$$

\(\square \)

4.3.3 Monotonicity-satisfying relations for T4

For any \(2 < k \le n-1\), the universe of T4(kabcd) can be partitioned into three disjoint subsets \(U^<_{T4}(k, a, b, c, d)\), \(U^=_{T4}(k, a, b, c, d)\), and \(U^>_{T4}(k, a, b, c, d)\) as follows:

\(*\):

\(U^<_{T4}(k, a, b, c, d) = \{(x, y) \in S^1_{T4}(k, a, b, c, d) \times S^2_{T4}(k, a, b, c, d) \ | \ v(x) < v(y)\}\)

\(*\):

\(U^=_{T4}(k, a, b, c, d) = \{(x, y) \in S^1_{T4}(k, a, b, c, d) \times S^2_{T4}(k, a, b, c, d) \ | \ v(x) = v(y)\}\)

\(*\):

\(U^>_{T4}(k, a, b, c, d) = \{(x, y) \in S^1_{T4}(k, a, b, c, d) \times S^2_{T4}(k, a, b, c, d) \ | \ v(x) > v(y)\}\)

Then the set of monotonicity-satisfying relations for T4(kabcd) is defined as follows:

Definition 14

For any \(2< k < n\), any \((a, b) \in V(k)\), and \((c, d) \in V(k)\), the set of monotonicity-satisfying relations for T4(kabcd) is

$$\begin{aligned} MSR_{T4}(k, a, b, c, d) = \{x \ \ | \ \ r^v(\pi ^1, \pi ^2) = x, (\pi ^1, \pi ^2) \in U_{T4}(k, a, b, c, d) \cap S_{\textsc {mon}}\} \ \ \square \end{aligned}$$

For \(2< k < \delta \), let \(\mathbb {B}_2(k)\) be defined as follows:

$$\begin{aligned} \mathbb {B}_2(k) = \frac{Bell^2(n - k - 2)}{3}. \end{aligned}$$

Lemma 7

For each \(2< k < \delta \),

$$\begin{aligned} \mathbb {B}_1> \mathbb {B}_2(k) > \mathbb {B}. \end{aligned}$$

Proof

Follows readily from the definitions of \(\mathbb {B}\), \(\mathbb {B}_1\), and \(\mathbb {B}_2(k)\). \(\square \)

Theorem 7

If \(D < \mathbb {B}\), then for each \(2 < k \le \delta \), each one of the following assertions must be true:

  1. 1.

    More than \(2\mathbb {B}_2(k)\) elements of the universe of T4(kabcd) must obey monotonicity.

  2. 2.

    The set of monotonicity-satisfying relations for T4(kabcd) must be non-empty.

Proof

Consider any \(2 < k \le \delta \). By Lemma 6, there are \(|U_{T4}(k, a, b, c, d)|\) distinct ways of doing T4(kabcd) for any \((a, b) \in V(k)\) and any \((c, d) \in V(k)\). By Theorem 6, \(|U_{T4}(k, a, b, c, d)| > Bell^2(n - k - 2)\). That is, \(|U_{T4}(k, a, b, c, d)| > 3\mathbb {B}_2\). By Lemma 7, \(\mathbb {B}_2(k) > \mathbb {B}\). By the CSG problem definition of Sect. 3, \(D < \mathbb {B}\). So \(D < \mathbb {B}_2(k)\). Therefore, more than \(2\mathbb {B}_2\) elements of the universe of T4(kabcd) must therefore obey monotonicity.

Since \(|U_{T4}(k, a, b, c, d)| > 3\mathbb {B}_2(k)\), it follows that at least one of the three sets \(U^<_{T4}(k, a, b, c, d)\), \(U^=_{T4}(k, a, b, c, d)\), or \(U^>_{T1}(i, j)\) must contain \(\mathbb {B}_2(k)\) or more elements. Otherwise, \(|U^<_{T4}(k, a, b, c, d)| + |U^=_{T4}(k, a, b, c, d)| + |U^>_{T4}(k, a, b, c, d)| < 3 \mathbb {B}_2(k)\) which is impossible. If \(|U^x_{T4}(k, a, b, c, d)| > \mathbb {B}_2(k)\) for any x, then at least one element of \(U^x_{T4}(k, a, b, c, d)\) must belong to \(S_{\textsc {mon}}\) because \(D < \mathbb {B}_2(k)\). So the set of monotonicity-satisfying relations for T4(kabcd) must be non-empty. \(\square \)

Table 7 Probabilistic monotonicity induced implication for stage \(2 < k \le \delta \). These are used to make deductions based on the outcome of T4(kabcd)

Probabilistic monotonicity induces the implications \(X_{ab}\) and \(X_{cd}\) listed in Table 7. For \( 2 < k \le \delta \), these implications will be used to determine the identity of \(\mathbb {P}_k\) and its optimal coalition, by eliminating those elements from V(k) that do not correspond to an optimum. In order to use these implications, a pair \((\pi ^1, \pi ^2)\) must be found in the universe of T4 such that \((\pi ^1, \pi ^2) \in S_\textsc {mon}\). Since \(S_\textsc {mon}\) is unknown, the question ‘how to find such a pair?’ is answered in Theorem 8.

Theorem 8

Consider any \(2 < k \le \delta \), any  \((a, b) \in V(k)\), and any \((c, d) \in V(k)\). If \(D < \mathbb {B}\), then at least \(\mathbb {B}\) and at most \(3\mathbb {B}-2\) invocations to \(r^v\) are needed to compute an element of the set of monotonicity-satisfying relations for T4(kabcd).

Proof

Consider any \(2 < k \le \delta \), any \((a, b) \in V(k)\), and any \((c, d) \in V(k)\). We are given that \(D < \mathbb {B}\). By Lemma 7, \(D < \mathbb {B}_2(k)\). So for any \(x \in \{<, =, >\}\), \(x \in MSR_{T4}(k, a, b, c, d)\) if \(|U^x_{T4}(k, a, b, c, d)| > \mathbb {B}\). Further, if \(|U^x_{T4}(k, a, b, c, d)| < \mathbb {B}\), there is no guarantee that \(x \in MSR_{T4}(k, a, b, c, d)\). Suppose the elements of \(U_{T4}(k, a, b, c, d)\) are arranged in some arbitrary sequence denoted \(u_1, u_2, \ldots \). Suppose the function \(r^v\) is applied to the elements of \(U_{T4}(k, a, b, c, d)\) in the order \(u_1, u_2, \ldots \). Based on the outcomes of these tests, one of the following scenarios will occur:

  • Let x denote an element of \(\{<, =,>\}\). The outcomes of the tests are \(r^v(u_i) = x\) for each \(1 \le i \le \mathbb {B}\), so \(x \in MSR_{T4}(k, a, b, c, d)\) and a monotonicity-satisfying relation is found with \(\mathbb {B}\) invocations to \(r^v\). Note that this means that an element of \(U^x_{T4}(k, a, b, c, d)\) must belong to \(S_\textsc {mon}\).

  • Let x, y and z be any three pairwise distinct elements of \(\{<, =, >\}\). When \(r^v\) is applied to the first \(3(\mathbb {B}-1)\) elements of the sequence \(u_1, u_2, \ldots \) it is found that

    $$\begin{aligned} r^v(u_i) = {\left\{ \begin{array}{ll} x &{} \ \ \ \ \ \ \text {for each} i\text { such that} mod(i, 3)=0 \\ y &{} \ \ \ \ \ \ \text {for each} i\text { such that} mod(i, 3)=1 \\ z &{} \ \ \ \ \ \ \text {for each} i\text { such that} mod(i, 3)=2 \end{array}\right. } \end{aligned}$$
    (12)

    At this stage, \(|U^x_{T4}(k, a, b, c, d)| = |U^y_{T4}(k, a, b, c, d)| = |U^z_{T4}(k, a, b, c, d)| = \mathbb {B}-1\). Next, \(r^v\) is applied to \(u_{3\mathbb {B}-2}\). Then regardless of the outcome of \(r^v(u_{3\mathbb {B}_2(k)-2})\), one of the three cardinalities \(|U^x_{T4}(k, a, b, c, d)|\), \(|U^y_{T4}(k, a, b, c, d)|\) or \(|U^z_{T4}(k, a, b, c, d)|\) must be \(\mathbb {B}\) and therefore a monotonicity-satisfying relation will be found with \(3\mathbb {B}-2\) invocations to \(r^v\). Say x is monotonicity-satisfying, then an element of \(U^x_{T4}(k, a, b, c, d)\) must belong to \(S_\textsc {mon}\).

  • If it is neither of the above two scenarios, then a monotonicity-satisfying relation, say x, will be found with more than \(\mathbb {B}\) but fewer than \(3\mathbb {B}-2\) applications of \(r^v\). Consequently, an element of \(U^x_{T4}(k, a, b, c, d)\) must belong to \(S_\textsc {mon}\).

\(\square \)

4.3.4 Application of test T4

Theorem 9

Consider any \(2 < k \le \delta \) and suppose that \(D < \mathbb {B}\). Then if \(|V(k)| \ge 2\) and (ab) and (cd) are any two distinct elements of V(k), then at least one element of V(k) can be deleted by doing T4(kabcd) at most \(3\mathbb {B}-2\) times.

Proof

Consider any \(2 < k \le \delta \). Consider any two distinct elements (ab) and (cd) of V(k). By Theorem 7, the set of monotonicity-satisfying relations for T4(kabcd) must be non-empty. By Theorem 8, at most \(3\mathbb {B}-2\) invocations to \(r^v\) are needed to compute a monotonicity-satisfying relation for T4(kabcd).

\(*\):

If either < or \(=\) is a monotonicity-satisfying relation for T4(kabcd), then element (ab) must be eliminated from V(k). Because, by the implication \(X_{ab}\) given in Table 7, the antecedant of \(\overset{R}{\Rightarrow }\) is true but its consequent is false. This makes the consequent of \(\overset{L}{\Rightarrow }\) false. By contrapositive, the antecedant of \(\overset{L}{\Rightarrow }\) must be false. In other words, \((ca, b) \not \models \mathbb {O}\) and (ab) must therefore be eliminated from V(k).

\(*\):

If either > or = is a monotonicity-satisfying relation for T4(kabcd), then element (cd) must be eliminated from V(k). Because, by the implication \(X_{cd}\) given in Table 7, the antecedant of \(\overset{R}{\Rightarrow }\) is true but its consequent is false. This makes the consequent of \(\overset{L}{\Rightarrow }\) false. By contrapositive, the antecedant of \(\overset{L}{\Rightarrow }\) must be false. In other words, \((c, d) \not \models \mathbb {O}\) and (cd) must therefore be eliminated from V(k).

Thus, regardless of what the monotonicity-satisfying relation for T4(kabcd) is, at least one element of V(k) can be deleted by doing T4(kabcd) at most \(3\mathbb {B}-2\) times. \(\square \)

4.4 The CSG method: Step 3

At this stage, \(\mathbb {P}_1, \ldots , \mathbb {P}_{\delta }\) and \(\mathbb {O}_{|\delta }\) have been determined. An element of \(\mathbb {O}^E_{|\delta }\) with the highest value remains to be found. As per Definition 6, for non-optimal structures, probabilistic monotonicity does not hold beyond \(\delta \). An exhaustive search is therefore needed over the space of all those structures in \(\mathbb {O}^E_{|\delta }\)

5 CSG algorithm

The complete CSG method (described in Sect. 4) is summarised as Algorithm 1, the input to which is a set of players N, a mapping \(r^v\), and a bound \(\delta \) such that

$$\begin{aligned} \mathbb {B} = \frac{Bell^2(n - \delta - 2)}{3} \end{aligned}$$

Lines 1 to 8 constitute Step 1 (described in Sect. 4.2) of the method during which \(\mathbb {P}_1\), \(\mathbb {P}_2\), and \(\mathbb {O}_{|2}\) are determined. In Line 1, Z is initialized. In the while loop of Line 2, elements from Z are eliminated by doing relevant tests. In Line 3, any two elements of Z are considered to choose a test Ta (where \(a \in {1, 2, 3}\) as given in Theorem 5) to do. Then in Line 4, \(3\mathbb {B}\) arbitrary elements of the universe of Ta are generated using the method described in Appendix B. In Line 5, a monotonicity-satisfying relation is computed for Ta, and, on the basis of this relation, elements of Z are eliminated as per as per Theorem 4. Once the while loop is exited, \(\mathbb {P}_1\), \(\mathbb {P}_2\), and \(\mathbb {O}_{|2}\) become known in Line 8.

Lines 9 to 18 constitute Step 2 (described in Sect. 4.3) of the method. Within the for loop of Line 9, V(k) is initialized. The while loop in Line 11 is for eliminating elements of V(k) by doing T4. In Line 12, any two elements of V(k) are considered to do T4 (as given in Theorem 5). Then in Line 13, \(3\mathbb {B}\) arbitrary elements of the universe of T4 are generated using the method described in Appendix B. In Line 14, a monotonicity-satisfying relation is computed for T4 as per Theorem 8. Then, on the basis of this relation, elements of V(k) are eliminated as per as per Theorem 9. When the for loop of Line 9 is exited, \(\mathbb {P}_{|\delta }\) and \(\mathbb {O}_{|\delta }\) become known in Line 17.

Line 19 is Step 3 (described in Sect. 4.4), i.e., an exhaustive search over the space of all those structures in \(\mathbb {O}^E_{|\delta }\).

figure a

Theorem 10

If the degree of non-monotonicity D satisfies \(D < \mathbb {B}\) where

$$\begin{aligned} \mathbb {B} = \frac{Bell^2(n - \delta - 2)}{3} \end{aligned}$$

for some \(3 < \delta \le n-3\) and any \(n>7\), then the time complexity of searching the part of the search space that satisfies probabilistic monotonicity is \(\mathcal {O}(n^3 \times ((n - \delta )!)^2)\).

Proof

The time complexity of Step 1: Lines 1 to 8 of Algorithm 1 constitute Step 1. By Lemma 1, the set Z initially contains \(2n(n-1)\) elements. The time taken for Line 1 is \(\mathcal {O}(n^2)\). Since any two elements of Z may be considered, Line 3 takes constant time. Line 4, as per Appendix B, takes \(\varTheta (\mathbb {B})\) time. Line 5 (by Theorem 4 involves at most \(3\mathbb {B}\) invocations to \(r^v\)), will take take \(\mathcal {O}(\mathbb {B})\) time. Line 6 takes constant time. So the time to run the entire while loop of Line 2 will be \(\mathcal {O}(n^2\mathbb {B})\) (since initially \(|Z|=2n(n-1)\), and each computed \(MSR_{Ta}\) will result in the elimination of at least one partner pair from Z).

The time complexity of Step 2: Lines 9 to 18 of Algorithm 1 constitute Step 2. Consider any \(3 \le k \le \delta \), any \((a, b) \in V(k)\), and any \((c, d)\in V(k)\). By the definition of V(k) given in Equation 9, \(|V(k)| = (n - k) \times (\alpha (k) + 1)\). Since \(|V(k) = (n - k) \times (\alpha (k) + 1)\), the time taken by Line 10 will be \(\mathcal {O}(n^2)\). Since any to elements of V(k) may be considered, Line 12 will take constant time. As per Appendix B, the time taken by Line 13 will be \(\varTheta (\mathbb {B})\). By Theorem 8, at most \(3\mathbb {B}\) invocations to \(r^v\) are needed to compute \(MSR_{T4}\). So the time to run Line 14 will be \(\mathcal {O}(\mathbb {B})\). Once \(MSR_{T4}\) is computed, eliminations in Line 15 (as per Theorem 9) can be performed in constant time. Since \(k <n\), \(\alpha (k) \le n\), and \(\delta < n\), at most \(n^3 \times (3\mathbb {B}-2)\) invocations to \(r^v\) will be needed to complete all iterations of the for loop. The time complexity of Step 2 is therefore \(\mathcal {O}(n^3 \times \mathbb {B})\) which is \(\mathcal {O}(n^3 \times ((n - \delta )!)^2)\).

The time to search the search space that satisfies probabilistic monotonicity, i.e., the time to run Step 1 and Step 2 is \(\mathcal {O}(n^3 \times ((n - \delta )!)^2))\). \(\square \)

As shown in Theorem 10, the time to run the CSG algorithm over the probabilistically monotonic part of the search space is decreasing in \(\delta \), or equivalently, increasing in the degree of non-monotonicity. Depending on \(\delta \), the time complexity may or may not be polynomial in n (see Table 8\(\mathbb {B}\)).

Table 8 Illustration of \(\mathbb {B}\) for various values of \(\delta \)

6 Literature review

The problem of optimally partitioning a set of players has been studied from various perspectives. From a system-wide perspective, the aim is to maximize a social welfare function. From the perspective of individual players, the aim is to find solutions that are stable [10, 11], or those that are Pareto optimal [1]. We have taken the societal perspective. Regardless of whether optimization is for individuals or for the society, the literature on optimal partitioning can broadly be divided into two categories: partitioning for deterministic environments and partitioning for stochastic environments.

Deterministic environments: Finding a socially optimal structure for CFGs where the value of a structure is the sum of the values of its coalitions is NP-complete [35]. Numerous approaches such as dynamic programming [30, 42], branch-and-bound [33], and hybrid methods [25] have been used to solve the CSG problem for CFGs. Ueda et al. [41] showed how concise representation schemes for characteristic functions can be used to efficiently solve the CSG problem. Within the context of CFGs, Dang et al. [13], Chalkiadakis et al. [8], and Habib et al. [23] addressed the CSG problem for overlapping coalitions.

Compared to CFGs, there are relatively fewer solutions for the CSG problem for PFGs. Rahwan et al. [31] showed how to find optimal partitions for PFGs by restricting externalities to positive only or negative only but not mixed. Their method prunes the search space on the basis of bounds on the values of groups of coalitions. Epstein et al. [15] used a distributed approach to solve the CSG problem for PFGs with positive only or negative only externalities. Banerjee and Kraemer [4] used a branch-and-bound approach to solve the CSG problem for PFGs by restricting externalities on the basis of agent types. In [15, 31], and [4], the value of a partition is the sum of the values of its coalitions. In contrast, we consider probabilistically monotone PFGs for which the value of a structure does not necessarily have to be the sum but can be any function of the values of its coalitions.

For CFGs where the value of a coalition depends both on its members and the tasks the members execute, and the value of a structure is the sum of the values of its constituent coalitions, Prantare and Heintz [29] used a branch-and-bound approach to find an anytime solution to the CSG problem.

Stochastic environments: Compared to deterministic cooperative games, the literature on stochastic games is rather small. Charnes and Granot [10, 11] addressed the problem of finding stable solutions to stochastic CFGs for which the values of coalitions are not deterministic but rather random variables with given distribution functions. Suijs et al. [38] showed how certain insurance scenarios can be modelled as CFGs with stochastic payoffs and stable solutions determined. This framework was later applied for modelling water resources [14]. A key distinction between all this work on stochastic models and ours is that they take an economic perspective and pay attention to finding stable solutions. In contrast, we take an algorithmic perspective and address the problem of finding coalition structures that are socially optimal.

For CFGs with the value of a coalition structure given by the sum of the values of its coalitions, Matsumara et al. [24] proposed a framework for probabilistic coalition structure generation. In this model, each agent can belong to no more than one coalition and there is uncertainty about the membership of an agent in a coalition. For this framework, approximation algorithms are given for finding an optimal structure. The key differences between their work and ours is that they consider CFGs, while we consider PFGs. Another difference is that they assume that the value of a coalition structure is the sum of the values of its coalitions, while we allow the value of a coalition structure to be any function of the values of its coalitions. Yet another difference is that their method requires the values of coalitions as an input. In contrast, our method does not require the values of coalitions as input nor does it require the values of coalition structures. Rather, our method only requires the relation (given by \(r^v\)) between the values of structures.

For stochastic environments, a different strand of work on coalition formation has dealt with situations requiring coalitions to form repeatedly. This opens up the possibility of introducing learning. For CFGs, Chalkiadakis and Boutilier [7] considered scenarios where agents are typed and there is uncertainty about agent types, and proposed a Bayesian learning framework for coalition formation.

In summary, the key distinguishing features of our work are as follows. Unlike existing work, we solve the CSG problem for PFGs in a stochastic setting. Further, in the existing work on stable solutions for stochastic CFGs, the values of coalitions are random variables with known probability distribution functions. However, our CSG algorithm does not require a known probability distribution function; it is sufficient to know that the degree of non-monotonicity is within a certain bound. Yet another difference is that, unlike existing CSG methods for PFGs, we do not restrict the value of a partition to be the sum of the values of its coalitions, but allow it to be any function of the values of its coalitions. Finally, unlike the existing CSG methods for both CFGs and PFGs, our CSG algorithm does not require the values of structures to be known; rather it is sufficient to know the relation (given by \(r^v\)) between the values of structures.

7 Conclusions

In this paper, we considered the problem of optimally partitioning a set of players into disjoint exhaustive coalitions. We focussed on solving this problem in the context of probabilistically monotone partition function games with priority-ordered players. For such games, we showed how an optimum can be found knowing just that a priority ordering exists but without knowing the actual ordering. We presented a greedy algorithm for solving the problem. The time complexity of the algorithm depends on the degree of non-monotonicity. We showed how the time complexity varies with the degree of non-monotonicity.

There are various avenues for further research. We considered PFGs where the property of monotonicity is violated with a certain non-zero probability. In the future, it will be interesting to consider situations where the probability that any two random structures violate monotonicity depends on the distance between them and their closest optima; those structures that are further away from an optimum are more likely to violate monotonicity than those that are closer. Another possibility is to consider situations where a player can be a member of multiple coalitions as opposed being a member of a single coalition.