重み付き投票ゲームにおける 投票力指数の計算の高速化

Slides:



Advertisements
Similar presentations
組合せ最適化輪講 2.3 連結性 川原 純. 2.3 連結性 内容 – グラフ上の節点をすべてたどるアルゴリズム 計算機上でのグラフの表現 – 強連結成分を求めるアルゴリズム トポロジカル順序を求める方法も – k- 連結、 k- 辺連結について – 2- 連結グラフの耳分解について.
Advertisements

有限幾何学 第 2 回. 有限幾何学 第 2 回 1. 様々なグラフの例 2. 道と最短経路問題 1. 用語の説明 2. 最短経路問題 3. ダイキストラのアルゴリズム.
ハノイグラフの生成と最短経路の導出 東京電機大学 理工学部 村田和也 松浦昭洋
到着時刻と燃料消費量を同時に最適化する船速・航路計画
2行+αチョンプに関する考察 京都大学 ○後藤順一 伊藤大雄.
2009/12/4 グラフ (2) 第10講: 平成21年12月4日 (金) 4限 E252教室 コンピュータアルゴリズム.
極小集合被覆を列挙する 実用的高速アルゴリズム
データ構造と アルゴリズム 第十二回 知能情報学部 知能情報学科 新田直也.
動的計画法 表の作成 制約の追加 練習問題.
動的計画法 表の作成 制約の追加 練習問題.
近似アルゴリズム 第10章 終了時刻最小化スケジューリング
A: Attack the Moles 原案:高橋 / 解説:保坂.
    有限幾何学        第8回.
On the Enumeration of Colored Trees
An Algorithm for Enumerating Maximal Matchings of a Graph
Extremal Combinatrics Chapter 4
JAG Regional Practice Contest 2012 問題C: Median Tree
中間発表用スライド 田中健太.
 Combinations(2)        古川 勇輔.
確率・統計輪講資料 6-5 適合度と独立性の検定 6-6 最小2乗法と相関係数の推定・検定 M1 西澤.
Probabilistic Method 6-3,4
宇野 毅明 国立情報学研究所 2002年3月 東北大大学院 情報科学研究科ワークショップ
疑似頻出アイテム集合の 多項式遅延列挙アルゴリズム
第4回 カルノー図による組合せ回路の簡単化 瀬戸 目標 ・AND-OR二段回路の実現コスト(面積、遅延)が出せる
最短路問題のための LMS(Levelwise Mesh Sparsification)
s a b f c e d 2016年度 有限幾何学 期末試験 問1:15点
第13章 フォンノイマン/モルゲンシュテイン解
第Ⅱ部 協力ゲームの理論 第9章 シャープレイ値.
情報学研究科 通信情報システム専攻 小野寺研究室 M1 奥村 佳弘
A Note on Asymmetric Power Index for Voting Games
シャノンのスイッチングゲームにおけるペアリング戦略について
中学数学1年 1章 正の数・負の数 §3 乗法と除法 (9時間).
第25章 単一始点最短路 3節 Bellman-Fordのアルゴリズム
ネットワーク理論 Text. Part 3 pp 最短路問題 pp 最大流問題 pp.85-94
定兼邦彦 今井浩 東京大学理学系研究科 情報科学専攻
グラフアルゴリズムの可視化 数理科学コース 福永研究室 高橋 優子 2018/12/29.
7.4 Two General Settings D3 杉原堅也.
第Ⅱ部 協力ゲームの理論 第10章 コア 2008/07/01(火) ゲーム理論合宿.
市場調査の手順 問題の設定 調査方法の決定 データ収集方法の決定 データ収集の実行 データ分析と解釈 報告書の作成 標本デザイン、データ収集
25. Randomized Algorithms
First Course in Combinatorial Optimization
A Simple Algorithm for Generating Unordered Rooted Trees
連続領域におけるファジィ制約充足問題の 反復改善アルゴリズムによる解法 Solving by heuristic repair Algorithm of the Fuzzy Constraint Satisfaction Problems with Continuous Domains 北海道大学.
モンテカルロ法を用いた 立体四目並べの対戦プログラム
第Ⅱ部 協力ゲームの理論 第11章 仁(nucleolus) 2008/07/02(水) ゲーム理論合宿 M1 浦田淳司 nucleolus
2016年度 有限幾何学 中間試験 問1 次のグラフを描け.(描けない場合は理由を述べよ) 各20点
A path to combinatorics 第3章後半(Ex3.8-最後)
14. The Basic Method M1 太田圭亮 14.3 Spaces of polynomials
ナップサック問題 クマさん人形をめぐる熱いドラマの結末.
A Note on Asymmetric Power Index for Voting Games
政権交代は、政策変化・制度改革につながるか
第Ⅱ部 協力ゲームの理論 第7章 提携形ゲームと配分 2008/07/01(火) ゲーム理論合宿 M1 藤井敬士.
第16章 動的計画法 アルゴリズムイントロダクション.
短い部分文字列の ミスマッチトレランスを 高速計算するアルゴリズム
大規模ネットワークに対する 実用的クラスタ発見アルゴリズムの開発
Max Cut and the Smallest Eigenvalue 論文紹介
第Ⅱ部 協力ゲームの理論 第14章 交渉集合.
A02 計算理論的設計による知識抽出モデルに関する研究
情報工学概論 (アルゴリズムとデータ構造)
7.8 Kim-Vu Polynomial Concentration
d b c e a f 年度 有限幾何学 中間試験 問1 次の用語の定義をそれぞれ述べよ.
生命情報学特論 (6) 固定パラメータアルゴリズムと 部分k木
コストのついたグラフの探索 分枝限定法 A*アルゴリズム.
問2 次の問に答えよ. (ただし,握手補題,オイラーの定理,Oreの定理 は授業で紹介したものとする) (1) 握手補題を書け.
Q q 情報セキュリティ 第8回:2004年5月28日(金) の補足 q q.
図2 x11 図1 x6 x10 x12 x3 x5 x7 x9 x13 x2 x4 x8 x14 (0,0) (1,0) x1 x15
計算の理論 I ー ε-動作を含むNFA ー 月曜3校時 大月 美佳.
無向グラフが与えられたとき、最大位数の完全部分グラフを求める問題
グラフの帯域幅連続多重彩色 を求めるアルゴリズム (Bandwidth Consective Multicolorings of Graphs) 西関研究室 西川和秀.
京都大学 情報学研究科 通信情報システム専攻 高田智史 joint work with 伊藤大雄 中村義作
Presentation transcript:

重み付き投票ゲームにおける 投票力指数の計算の高速化 国立情報学研究所 宇野 毅明 uno@nii.jp

目的 計算方法を工夫して、無駄な計算を省き、計算量を小さくする 重み付き投票ゲームの、投票力指数を計算する 対象は、Banzhaf, Shapley-Shubik, Deegan-Packel 指数 すでに動的計画法アルゴリズムが提案されている ただし、全プレイヤーの指数を計算すると、同じような計算を繰り返すことになる そこで 計算方法を工夫して、無駄な計算を省き、計算量を小さくする

重み付き投票ゲーム 各政党の力を示す指数がほしい => 議席数? ある議会に、政党(プレイヤー) A、B、C、D がある 票決のとき、同一政党内の議員は同一の投票をする 賛成票が q = 50人 以上で可決 政党A 45人 政党B 8人 政党D 30人 政党C 17人 各政党の力を示す指数がほしい => 議席数?

勝利提携 と 敗北提携 提携 : 政党の集合 法案成立には、 q 人 か、それ以上の議員を含む提携を組む必要がある 政党A 45人 政党B 8人 政党D 30人 政党C 17人

議席数は良い指標ではない 勝利提携 ( 政党A(45人),政党D(30人) ) 政党B(8人) : AB , ABC , ABD , BCD 政党C(17人) : AC , ABC , ACD , BCD  勝利提携の組合せは同じ! 指数は同じになるべき 提携の情報から指数を求めるモデルがよい

もう一度、用語の定義 プレイヤー p1,…,pn : 政党 プレイヤーの重み w(pi) : 政党の議席数 q : 成立に必要な票数 提携 : プレイヤーの集合 提携 S の重み w(S) :提携に属するプレイヤーの重みの和 勝利提携 : 重みが q か、それ以上の提携 敗北提携 : 重みが q 以下の提携

バンザフ(Banzhaf)指数 「ある勝利提携 S から プレイヤー pi が抜けると敗北提携になるとする。このとき、 pi は発言力を持つだろう」 このような提携の数を 2n で割ったものを指数とする pi のバンザフ指数 Bz(pi)     =  | { S | pi ∈S,w(S)≧q, w(S\ pi)<q } | / 2n pi q

バンザフ指数を計算する f(pi, y) : プレイヤー集合 { p1,…, pi } に含まれる提携 S で、       w(S) =y となるものの数 プレイヤー pn に対して、 w(S) ≧ q, w(S\ pn) < q  q - w(pn) ≦ w(S\ pn) ≦ q-1 重みが q - w(pn) から q-1 の間で、 pn を含まない提携の数         q-1     =   Σ    f(pn-1, y)           y=q- w(pn)    これを 2n で割るとバンザフ指数になる

動的計画法 s 再帰式: f(pi, y) = f( pi-1, y ) + f( pi-1, y- w(pi) )           pi を含まない提携数     pi を含む提携数   i=1,…,n-1 に対して、 f(pi, y) を順々に求める q q - w(pn) ・・・・・ s   p1  p2   p3                              pn-2 pn-1 このグラフで、 f(pi, y) は s から対応する頂点までのパスの数

計算量 ・ f(pi-1, y) から f(pi, y) を求める: O(q) 時間 ・ f(pn-1, y) を求める: O(nq) 時間      pn と pi の添え字をつけなおして、同じ方法で計算 ・全員分の計算             O(n2q) 時間 変更がちょっとしかないので、ほとんど同じ計算を行う     なんとか無駄な計算を省けないでしょうか?

不要な計算の省略 pi に対して, 提携 Sのプレイヤーを i 以下とi 以上に分けて考える g(pi, y) : プレイヤー集合 { pi,…, pn } に含まれる提携 S で、       w(S) =y となるものの数 重みが q - w(pi) から q-1 の間で、 pi を含まない提携  i 以下の重みが z , i 以上がq - w(pi) - z から q-1-z の間                   q-1            q-1-z そのような提携の数  =  Σ   f(pi-1, z)  Σ   g(pi+1, y)                      z=0        y=q- w(pi)-z        y             h(pi, y) = Σ g(pi, z)  とすると h(pi+1, q-1-z) - h(pi+1, q-w(pi)-z - 1)       z=0     

前後の計算を合わせる s q ・・・・・ ・・・・・ q p1 p2 p3 pi-1 pi pi+1 pn-1 pn ・・・・・ ・・・・・ q s   p1  p2   p3           pi-1 pi pi+1                pn-1 pn f(pi, y) ,g(pi+2, y) から f(pi-1, y) ,g(pi+1, y) を計算: O(q) g(pi+1, y) から h(pi+1, y) を計算 :             O(q) 1プレイヤーの指数を計算 :                 O(q)   全員分の指数をO(nq) 時間で計算できる

シャープレイ・シュービック (Shapley-Shubik)指数 「空の提携にプレイヤーが順々に参加し、プレイヤー pi が参加して、はじめて S が勝利提携になるとき、 pi は発言力を持つ」 このようなプレイヤーの参加順序(順列)の数を n! で割ったものを指数とする pi のシャープレイシュービック指数 Ss(pi)  = | { 順列 (pj1 pj2,,…, pjn ) |        q ≦ w({pj1 pj2,,…, pi }) < q+ w(pi) } | / n! pi q

Ss指数を計算する pi q S プレイヤー pi より前のプレイヤーの集合が S となるような順列の数は |S|!(|n-|S|-1)! この場合、前に3プレイヤー、後ろに2プレイヤーいるので、       3!×2! =  3!(6-3-1)!  =  |S|! (n-|S|-1)! pi  を加えると勝利提携になる敗北提携について、この総和を取る Ss(pi)×2!   =        Σ           |S|! (n-|S|-1)!               S | pi ∈S, q- w(pi) ≦ w(S)≦q-1   /

Ss指数を計算する f(pi, k, y) : プレイヤー集合 { p1,…, pi } に含まれる、大きさ k の提携 S で、w(S) =y となるものの数 重みが q - w(pn) から q-1 の間で、 pn を含まない提携 S に関して |S|!(n-|S|-1)! の和を取る   n-1 q-1 = Σ  Σ f(pn-1,k, y) × k!(n-k-1)!     k=0 y=q-w(pn) これを n! で割るとSs指数になる 終点が (pn-1, k, y) のパス重みを k!(n-k-1)!  =>  パスの重み和

Ss指数用の動的計画法 再帰式: f(pi, k, y) =   f( pi-1, k, y ) +  f( pi-1, k-1, y- w(pi) )           pi を含まない提携数     pi を含む提携数 ・ f(pi-1, k, y) から f(pi, k, y) を求める             O(nq)  時間 ・ f(pn-1, k, y) を求める:           O(n2q) 時間 ・全員分の計算          O(n3q) 時間    k   …  1 q 2 1 pi-1    pi バンザフ指数と同じ方法で、高速化を行う

Ss指数の高速化 g(pi, k, y) : (pi, k, y) から (pn, k’, *) へのパスの重み和    (重みは k’!(|n-k’-1)! ) 重みが q - w(pi) から q-1の間で、 pi を含まない提携 S に   関する|S|!(|n-|S|-1)! の和        n-1   q-1                 q-1 - z     = Σ   Σ    f(pi-1, k, z) × Σ g(pi-1, k, y)          k=0  z=q-w(pi)             y=q- w(pi) - z k 1プレイヤー     O(nq) 全プレイヤー      O(n2q) ・・・   p1 p2        pi-1 pi pi+1              pn-1 pn

ディーガン・パックル指数 (Deegan-Packel)指数 極小勝利提携 : どのプレイヤーが抜けても敗北になる勝利提携 「 pi が極小勝利提携 S に所属すれば,発言力1/|S| を持つ」 pi が所属する極小勝利提携すべてに対して発言力の和を取って、極小勝利提携の数 W で割ったものを指数とする q

ディーガン・パックル指数2 q プレイヤーは、重みの大きい順にソートされているとする d(S) : 提携 S から最小重みのプレイヤー     ( = 添え字最大のプレイヤー )  を除いた提携 pi のディーガン・パックル指数 Dp(pi)     =  | { S | pi ∈S,w(S)≧q, w(d(S))<q } | / W q

ディーガンパックル指数を計算 s Ss 指数計算で用いた、動的計画法のグラフを考える 終点が (pi, k, y) (q-w(pi) ≦ y ≦ q-1) のパスの重みを 1/k とする pi 上Dp指数の計算: pi を使い、 S から上の条件を満たす点へのパスの重み和  (重みは 1/k’ ) q ・・・ ・・・ s   p1  p2   p3      pi-1  pi   pi+1              pn-1 pn 1プレイヤー O(n2q)  :  全プレイヤー O(n3q)

Dp指数の動的計画法(高速版) g(pi, k, y) : pi を使い、(pi, k, y) から (q-w(pj) ≦ z ≦ q-1) を 満たす点 (pj, k’, z) へのパスの重み和  (重みは 1/k’ ) pi を使うパスの重み和: [ S から (pi-1, k, y) までのパス数 × g(pi, k, y)  ] の総和       n-1    q-1     = Σ   Σ    f(pi-1, y) × g(pi, k+1, y+w(pi))        k=0  y=q- w(pi)         ( f(pi, k, y) は Ss 指数での定義と同じ ) ・すべての f(pi, k, y) , g(pi, k, y) を求める: O(n2q) 時間 ・1プレイヤーの計算:              O(nq) 時間 ・全員分の計算                O(n2q) 時間

まとめ 重み付き投票ゲームの投票力指数を計算する動的計画法に対して、全員分の計算を1人分の計算と同じ計算量で行うアルゴリズムを提案した バンザフ指数は            O(n2q) => O(nq)   シャープレイ・シュービック指数は O(n3q) => O(n2q)   ディーガン・パックル指数は     O(n4q)  => O(n2q)   と、計算量は減少した 今後の課題:   同じテクニックが使える問題はどの程度あるか?