Coalitional Games on “Sparse” Social Networks Edith Elkind University of Oxford
TU Coalitional Games Players form coalitions to maximize payoffs – N ={1,..., n}: set of players – v: 2 N R : characteristic function – v(C) is split among member of C Goal: – maximization of social welfare (trivial if v is superadditive) – stability (core, etc.) – fairness (Shapley value)
Players form a social network Only connected subgraphs can collaborate – Demange game: if C is disconnected, v(C) = 0 – Myerson game: if C is disconnected, v(C) = v(C 1 ) + … + v(C k ) Games on Networks
Exploiting the Structure of ? Game (N, v) + graph = – Demange game G 0 = (N, v 0, ) – Myerson game G + = (N, v +, ) Does structure of help in finding good outcomes of G 0 /G + ? – oracle access to v
Trees? [Demange’04]: if is a tree, then G 0 has a non-empty core – algorithm – but poly-time only for the superadditive case [Greco et al.’11] many core-related questions are hard even if treewidth( ) = 2 Shapley value remains hard
This Work: Bounding the # of Connected Coalitions Observation: – suppose has polynomially many connected coalitions – then checking if an outcome of G 0 is in the core is easy Q1: does this extend to G + /other concepts? Q2: what is the structure of such graphs? Q3: is this really about graphs?
Q1: Results (mostly not mine) K( ): number of connected subgraphs of Computational problems: (1)if v is not superadditive, find an optimal partition (2)check if an outcome is in the core (3)is the core non-empty? (4)what is the value of the least core/CoS? (5)compute the Shapley value (6)compute the nucleolus Demange games: (1)-(6) can be solved in poly(K) Myerson games: (1)-(5) can be solved in poly(K), (6) can be solved in poly(K) if core(G + ) ≠ .
Intuition: an outcome is stable if no coalition wants to deviate core(G) = { x | i C x i ≥ v(C) for any C ⊆ N} – each coalition earns at least as much as it can make on its own -core(G) = { x | i C x i ≥ v(C) - for any C ⊆ N} – no coalition can gain more than by deviating * = inf { : -core is not empty} *-core(G) is called the least core of G – * : the value of the least core Reminder: Stability in (Superadditive) Coalitional Games
Nucl(G): nucleolus of G – the “center” of the least core – computed by a sequence of LPs CoS(G): cost of stability of G for ≥ 0 define – v (N) = v(N) + – v (C) = v(C) for C ≠ N CoS(G) = inf { : (N, v ) has a non-empty core} Reminder: Stability in Coalitional Games
Reminder: Fairness in Coalitional Games Shapley value: expected marginal contribution wrt permutations i (G) = C N \ {i} |C|!(n-|C|-1)!/n![v(C U {i}) – v(C)]
[Voice, Ramchurn, Jennings, AAMAS’12] Observation: – let (C 1, …, C k ) be an optimal partition for (N, v 0, ) – assume wlog that all C i are connected – then for some C i it holds that N\C i is connected Dynamic programming: for each connected C set v*(C) = max {v*(D) + v*(N\D): D C, both D and C\D are connected} Algorithms: Optimal Partition
Demange games: poly-many summands Myerson games [Skibski, Michalak, Rahwan, Wooldridge, AAMAS’14]: Observation: – consider player i in C – C[i]: the component of C that contains i – MC(i, C) = MC(i, C[i]) – #{C: i C, C[i] = D} = 2 n- N (D) – closed-form expression for Myerson value Algorithms: Shapley Value
Algorithms: Least Core Demange games: may ignore disconnected coalitions Myerson games: reduction to optimal partition – separation oracle: given (x 1, …, x n, ), decide if x(C) ≥ v + (C) - for all C N – set u(C) = max{0, v(C)-x(C)} for all connected C – does (N, u) admit a partition with value > ?
Consider a family of graphs ( n ) n>0 Observation: if n has a vertex of degree (log n), then K( n ) > poly(n) Proposition 1: if G n has (log n) vertices of degree 1 or ≥ 3, then K(G n ) > poly(n) – take a spanning tree with max # of leaves – it has (log n) leaves [Karpov’12] – can delete any subset of leaves Q2: What Do Sparse Networks Look Like?
Condensed Graphs Given a graph , we build its condensed graph * as follows: N 2 = {u in N: deg(u) = 2} N* = N\N 2 Consider u, v in N* – for each path of k deg-2 nodes connecting u and v in , insert a (u,v)-edge of weight log(k+1) in * – edges of G weight-0 edges of G* 2 log 2 3 0
Let N n * be the set of vertices of n * Proposition 2 (revisited): if |N n *|= (log n), then K( n ) > poly(n) This bound is tight: But we can have K( n ) > poly(n) even if |N n *|= 1 Bounds in Terms of |N n *| √n√n
Bounds in Terms of Weight w( *) = e in * w(e) Proposition 2: if |N( n *)| = O(log n) and w( n *) = O(log n), then K( n *) = poly(n) Proposition 3: if |N( n *)| = O(log n) and w( n *) = (log 2 n), then K( n *) > poly(n) – w( n *) = (log 2 n) implies n * has (log n) positive-weight edges – let T be a spanning tree of n * – (log n) positive-weight edges not in T
Weights Are Not Enough N( 1 *) = N( 2 *), w( 1 *) w( 2 *) log n
Q2: What Do Sparse Networks Look Like? N( n *) = O(log n)? > poly w( n *) = O(log n)? w( n *) = (log 2 n)? poly > poly Consider all subsets of N n *. For each such subset S compute (1) total weight of edges that touch S (2) weight of min spanning tree of S. Check if (1) - (2) = O(log n) yes no yes no
Q3: Is This About Graphs? Suppose G = (N, v) is represented by a list of K base coalitions L = (C 1,…, C K ) and v(C 1 ), …, v(C K ) – N L, {i} L for all i N “Demange game”: v(C) = 0 for C not in L “Myerson game”: the value of any C not in L is the value of its best partition into coalitions from L Do our easiness results still hold? Synergy Coalition Groups [Conitzer & Sandholm’04]
Q3: Do Synergy Coalition Groups Admit Efficient Algorithms? Core, cost of stability: – yes [CS’04]: O(K) constraints in the LP Optimal partition: – no [CS’04]: reduction from X3C Shapley value: – no [this work]: reduction from X3C Least core: – no [this work]: reduction from X3C
Beyond TU Games Hedonic games – players form coalitions – each player has preferences over coalitions Graph-restricted hedonic games [Igarashi, E.] – as before, but coalitions need to be connected – core stable and Nash stable outcomes can be found in time poly(K(G)) A winning committee under the Chamberlin-Courant voting rule for preferences that are SP on trees can be found in time poly(K(G)) [Chan, Yu, E.’13]