Algorithmic Coalitional Game Theory Lecture 11: Coalition Structure - - PowerPoint PPT Presentation
Algorithmic Coalitional Game Theory Lecture 11: Coalition Structure - - PowerPoint PPT Presentation
Algorithmic Coalitional Game Theory Lecture 11: Coalition Structure Generation Oskar Skibski University of Warsaw 12.05.2020 Coalition Structure Generation Coalition Structure Generation Find a partition of players = { " , ,
Coalition Structure Generation
In other words: which coalition structure will form?
- There are πΆπππ(π) partitions.
- We need to check values of all coalitions,
so perform at least π(2!) steps. 2
Oskar Skibski (UW) Algorithmic Coalitional Game Theory
Find a partition of players π = {π", β¦ , π#} such that the sum
- f values of coalitions, i.e. π€ π" + β― + π€(π#), is maximized.
Coalition Structure Generation
Coalition Structure Generation
Notation:
- π¬(π) β the set of all partitions of set π
- π¬#(π) β the set of all partitions of set π of size π
- π
π β size of π¬# π , i.e., Stirling number of the second kind
- π€ π β value of partition π, i.e., β$β& π€(π)
3
Oskar Skibski (UW) Algorithmic Coalitional Game Theory
Find a partition of players π = {π", β¦ , π#} such that the sum
- f values of coalitions, i.e. π€ π" + β― + π€(π#), is maximized.
Coalition Structure Generation
Coalition Structure Generation
4
Oskar Skibski (UW) Algorithmic Coalitional Game Theory
π¬
'(π)
π¬((π) π¬)(π) π¬
"(π)
1|2|3|4 12|3|4 13|2|4 14|2|3 1|23|4 1|24|3 1|2|34 124|3 1234 14|23 13|24 123|4 12|34 1|234 134|2
Dynamic Programming (DP)
[Yeh 1986]
5
Oskar Skibski (UW) Algorithmic Coalitional Game Theory
Input: Game π, π€ Output: πβ β π¬(π) s.t. π€ πβ β₯ π€ π for every π β π¬(π) 1: for π from 1 to π do 2: for each π β π, π = π do 3: π π β π€ π ; π’ π β {π}; 4: for each π΅, πΆ β π¬"(π) do 5: if π π΅ + π(πΆ) > π π then 6: π π β π π΅ + π πΆ ; 7: π’ π β π’ π΅ βͺ π’ πΆ ; 8: return π’ π ;
Dynamic Programming (DP)
[Yeh 1986]
π» π π» {1} π€ 1 = 2 {2} π€ 2 = 4 {3} π€ 3 = 3 {4} π€ 4 = 5 {1,2} π 1 + π 2 = 6 {1,3} π€ 1,3 = 5 {1,4} π€ 1,4 = 7 {2,3} π€ 2,3 = 7 {2,4} π 2 + π 4 = 9 {3,4} π€ 3,4 = 8
6
Oskar Skibski (UW) Algorithmic Coalitional Game Theory
π» π π» {1,2,3} π 1 + π 2,3 = 9 {1,2,4} π 1 + π 2,4 = 11 1,3,4 π€ 1,3,4 = 10 {2,3,4} π 2 + π 3,4 = 12 {1,2,3,4} π 1 + π 2,3,4 = 14 For π€ π = β#β% π + β#β% π πππ 3
Dynamic Programming (DP)
[Yeh 1986]
Proof: For every coalition π β π, π β β , DP checks 2 $ S" β 1
- splits. So:
<
$βT,$Uβ
2 $ S" β 1 = <
WX" !
π π‘ 2WS" β 1 = = 1 2 + <
WXY !
π π‘ 2WS" β 1 = 1 2 3! + 1 β 2!. 7
Oskar Skibski (UW) Algorithmic Coalitional Game Theory
DP runs in time π« 3! . DP Complexity
Dynamic Programming (DP)
[Yeh 1986]
8
Oskar Skibski (UW) Algorithmic Coalitional Game Theory
π¬
'(π)
π¬((π) π¬)(π) π¬
"(π)
1|2|3|4 12|3|4 13|2|4 14|2|3 1|23|4 1|24|3 1|2|34 124|3 14|23 13|24 123|4 12|34 1|234 134|2
OPTIMAL
12|3|4 123|4 124|3 12|34 1234
Improved DP (IDP)
[Rahwan & Jennings 2008]
9
Oskar Skibski (UW) Algorithmic Coalitional Game Theory
Main idea: βWe do not have to consider all splits as long as we can reach every coalition structure.β Which splits should we use? For π β π, we consider only splits π΅, πΆ β π¬!(π) such that: π΅ , πΆ β€ π β π΅ β πΆ .
Improved DP (IDP)
[Rahwan & Jennings 2008]
10
Oskar Skibski (UW) Algorithmic Coalitional Game Theory
Input: Game π, π€ Output: πβ β π¬(π) s.t. π€ πβ β₯ π€ π for every π β π¬(π) 1: for π from 1 to π do 2: for each π β π, π = π do 3: π π β π€ π ; π’ π β {π}; 4: for each π΅, πΆ β π¬" π s.t.|π΅|, πΆ β€ π β π ππ π = π do 5: if π π΅ + π(πΆ) > π π then 6: π π β π π΅ + π πΆ ; 7: π’ π β π’ π΅ βͺ π’ πΆ ; 8: return π’ π ;
Improved DP (IDP)
[Rahwan & Jennings 2008]
11
Oskar Skibski (UW) Algorithmic Coalitional Game Theory
π¬
'(π)
π¬((π) π¬)(π) π¬
"(π)
1|2|3|4 12|3|4 13|2|4 14|2|3 1|23|4 1|24|3 1|2|34 124|3 1234 14|23 13|24 123|4 12|34 1|234 134|2
Improved DP (IDP)
[Rahwan & Jennings 2008]
12
Oskar Skibski (UW) Algorithmic Coalitional Game Theory
π¬
'(π)
π¬((π) π¬)(π) π¬
"(π)
1|2|3|4 12|3|4 13|2|4 14|2|3 1|23|4 1|24|3 1|2|34 124|3 1234 14|23 13|24 123|4 12|34 1|234 134|2
We removed 12 arrows
- ut of 31 arrows.
We removed 12 splits
- ut of 25 splits.
Improved DP (IDP)
[Rahwan & Jennings 2008]
Proof: It is enough to show that we can reach every coalition structure. Fix arbitrary π = {π", β¦ , π#} and assume π" β€ β― β€ |π#|. If π = 2, then trivial. Assume π > 2. It is enough to show that π has an incoming edge from the lower level. This is true, because for π" βͺ π) we have: π" β€ π) β€ π β π" β π) . 13
Oskar Skibski (UW) Algorithmic Coalitional Game Theory
IDP is correct, i.e., finds the optimal coalition structure. IDP Correctness
Improved DP (IDP)
[Rahwan & Jennings 2008]
Proof: We can calculate the number of splits that we do not consider and show that it is π 3! . Rahwan and Jennings showed that for π = 25, IDP consider
- nly 38.7% splits of DP.
14
Oskar Skibski (UW) Algorithmic Coalitional Game Theory
IDP runs in time π« 3! . IDP Complexity
Optimal DP (ODP) [Michalak et al. 2016]
15
Oskar Skibski (UW) Algorithmic Coalitional Game Theory
Main idea: βInstead of looking at coalition sizes, we can take a lexicographical orderβ Let us write π΅ βΌ πΆ if π΅ is lexicographically smaller. E.g., 1,2,3 βΌ 1,4 βΌ {2,3,4,5}. For π β π, we consider only splits π΅, πΆ β π¬!(π) such that: π΅, πΆ βΌ π β (π΅ βͺ πΆ).
Optimal DP (ODP) [Michalak et al. 2016]
16
Oskar Skibski (UW) Algorithmic Coalitional Game Theory
Input: Game π, π€ Output: πβ β π¬(π) s.t. π€ πβ β₯ π€ π for every π β π¬(π) 1: for π from 1 to π do 2: for each π β π, π = π do 3: π π β π€ π ; π’ π β {π}; 4: for each π΅, πΆ β π¬" π s.t. π΅, πΆ βΌ π β (π΅ βͺ πΆ) ππ π = π do 5: if π π΅ + π(πΆ) > π π then 6: π π β π π΅ + π πΆ ; 7: π’ π β π’ π΅ βͺ π’ πΆ ; 8: return π’ π ;
Optimal DP (ODP) [Michalak et al. 2016]
17
Oskar Skibski (UW) Algorithmic Coalitional Game Theory
π¬
'(π)
π¬((π) π¬)(π) π¬
"(π)
1|2|3|4 12|3|4 13|2|4 14|2|3 1|23|4 1|24|3 1|2|34 124|3 1234 14|23 13|24 123|4 12|34 1|234 134|2
Optimal DP (ODP) [Michalak et al. 2016]
18
Oskar Skibski (UW) Algorithmic Coalitional Game Theory
π¬
'(π)
π¬((π) π¬)(π) π¬
"(π)
1|2|3|4 12|3|4 13|2|4 14|2|3 1|23|4 1|24|3 1|2|34 124|3 1234 14|23 13|24 123|4 12|34 1|234 134|2
We removed 17 arrows out
- f 31 arrows.
We removed 12 splits
- ut of 25 splits.
Optimal DP (ODP) [Michalak et al. 2016]
Proof: Fix arbitrary π = {π", β¦ , π#} and assume π" βΌ β― βΌ π#. If π = 2, then trivial. Assume π > 2. Now, π has exactly one incoming edge from the lower level, specifically from {π" βͺ π), π(, β¦ , π#}, because only for π" βͺ π) we have: π" βΌ π) βΌ π β (π" βͺ π)). 19
Oskar Skibski (UW) Algorithmic Coalitional Game Theory
There exists a unique path from π to every coalition structure which implies ODP is correct. ODP Correctness
Optimal DP (ODP) [Michalak et al. 2016]
Proof: Number π 2 corresponds to the number of splits of coalition π. Number π 3 corresponds to splits of π΅ βͺ πΆ into {π΅, πΆ} such that π΅, πΆ βΌ π β (π΅ βͺ πΆ). It is easy to check that π 2 = "
) (2! β 2) and π
3 =
" ` 3! β 3 β 2! + 3 = " ) (3!S" β 2! + 1).
20
Oskar Skibski (UW) Algorithmic Coalitional Game Theory
ODP performs π 2 + π 3 = "
) 3!S" β 1 splits and less splits
cannot be performed. ODP Minimality
Optimal DP (ODP) [Michalak et al. 2016]
Proof (continue): To see that less splits cannot be performed we show that:
- to reach π΅, πΆ β π¬)(π) from π we need an edge from it,
i.e., split of π into π΅ βͺ πΆ
- to reach π΅, πΆ, π· β π¬( π we need at least one of the
splits π΅ βͺ πΆ, π΅ βͺ π·, πΆ βͺ π· and for a different π΅β², πΆβ², π·β² β π¬( π splits π΅β² βͺ πΆβ², π΅β² βͺ π·β², πΆβ² βͺ π·β² are different. 21
Oskar Skibski (UW) Algorithmic Coalitional Game Theory
ODP performs π 2 + π 3 = "
) 3!S" β 1 splits and less splits
cannot be performed. ODP Minimality
Optimal DP (ODP) [Michalak et al. 2016]
22
Oskar Skibski (UW) Algorithmic Coalitional Game Theory
ODP runs in time π« 3! . ODP Complexity Proof: Corollary from the previous statement.
Conclusions
We saw 3 algorithms for Coalition Structure Generation:
- Dynamic Programming (DP)
- Improved DP (IDP)
- Optimal DP (ODP)
There are several heuristic algorithms; they often work faster, but have worse worst-case time complexity. Also, there are several theoretical algorithms that have better worst-case time complexity, but work much slower in practice. 23
Oskar Skibski (UW) Algorithmic Coalitional Game Theory
References
- [Michalak et al. 2016] T. Michalak, T. Rahwan, E. Elkind, M. Wooldridge,
N.R. Jennings. A hybrid exact algorithm for complete set partitioning. Artificial Intelligence 230, 14-50, 2016.
- [Rahwan & Jennings 2008] T. Rahwan, N.R. Jennings.
Coalition structure generation: Dynamic programming meets anytime
- ptimization. Proceedings of the 23rd AAAI Conference on Artificial
Intelligence (AAAI), 156-161, 2008.
- [Yeh 1986] D.Y. Yeh.
A dynamic programming approach to the complete set partitioning
- problem. BIT Numerical Mathematics, Springer 26, 467-474, 1986.
24
Oskar Skibski (UW) Algorithmic Coalitional Game Theory