Algorithm 1 Step 1. Compute the average payoff ${A}_{i}$ for player $i,i=1,\cdots ,n$ , over the original game G. Step 2. For a complete set Ω of coalitions of G not yet enumerated, consider the associated coalitional semi-cooperative game $\Gamma \left({|1}_{1},\cdots {,1}_{{C}_{1}}{|2}_{1},\cdots {,2}_{{C}_{2}}|\cdots |{Q}_{1},\cdots ,{Q}_{{C}_{Q}}|\right)$ of G. For each strategy profile of Γ, sum the payoffs of players in each coalition and form the payoff matrix for this coalitional game. Step 3. Identify all GSEs of the game in Step 2. Step 4. For each coalition j in Step 2, sum the averages ${A}_{{k}_{j}}$ in Step 1 of all the players ${k}_{j}$ in coalition j to obtain ${V}_{j}={\sum }_{{k}_{j}=1}^{{C}_{j}}\text{ }\text{ }{A}_{{k}_{j}}$ for the coalitions $j=1,\cdots ,Q$ . Step 5. For each player i that is a member of coalition j of Step 2, compute ${R}_{ij}=\frac{{A}_{i}}{{V}_{j}}$ . Step 6. For each GSE t of Step 3 and the payoff of each coalition j for this GSE, multiply ${R}_{ij}$ by coalition j’s payoff from Step 2. For $i=1,\cdots ,{C}_{j}$ and $j=1,\cdots ,Q$ , the resulting payoff is the modified payoff of player i in coalition j for the GSE t of the game of Step 2. Step 7. For each GSE of Step 3 compute the geometric mean of the n modified payoffs obtained in Step 6, and then determine GM(Ω), the largest of these geometric means. Step 8. Repeat Steps 2-7 for each of the remaining coalitional semi-cooperative games of G. If none remain, go to Step 9. Step 9. Select an optimal complete set ${\Omega }^{*}$ of coalitions as one maximizing GM(Ω) over all iterations of Step 7. Ties may be broken by the players or an arbitrator.