マッチングの数理と計算安定マッチング...

55
みんなHappy!? マッチングの数理と計算 -かしこい割り当ての決め方- 横井 優 国立情報学研究所 プリンシプル研究系 助教 2019年7月2日 市民講座 1

Upload: others

Post on 10-Feb-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

みんなHappy!?

マッチングの数理と計算

-かしこい割り当ての決め方-

横井 優国立情報学研究所

プリンシプル研究系 助教

2019年7月2日 市民講座

1

Page 2: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

色々なマッチング

• 研究室配属・部署への配属

• 寮でのルームメイト決め

• トレーナー/トレーニーのペアリング

• 保育園の割り当て

• 難民の居住地への割り当て

• 臓器移植患者とドナーのマッチング

各参加者はマッチする相手に関する希望をもっているマッチする人・モノは分割できない!

お金の授受は禁止!2

Page 3: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

マッチングアルゴリズム

• 各参加者が提出した 希望順位/優先順位 のリストをもとにマッチングを決めるアルゴリズムをつくりたい

• “良い” マッチングを,高速に計算したい

マッチングを決定

XYZ

X

YZX

a

b

Y

cbdae

abedc

3

Page 4: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

もくじ

• 二部マッチングモデル

• 基本モデル(安定結婚問題)

• 応用:研修医配属,学校選択制度

• 物々交換モデル

• 基本モデル(ハウジングマーケット問題)

• 応用:腎移植ネットワーク

• 私の研究

• 制約の入った二部マッチング

• 動的・無統制な二部マッチングモデル

理論・応用ともに発展しているトピックの紹介

4

Page 5: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

みんなが納得するカップリングとは?

𝑊 ≻ 𝑍 ≻ 𝑌 ≻ 𝑋

𝑋 ≻ 𝑊 ≻ 𝑍 ≻ 𝑌

𝑋 ≻ 𝑍 ≻ 𝑊 ≻ 𝑌

𝑍 ≻ 𝑋 ≻ 𝑌 ≻ 𝑊

𝐴

𝐵

𝐶

𝐷

𝑊

𝑋

𝑌

𝑍

𝐶 ≻ 𝐵 ≻ 𝐴 ≻ 𝐷

𝐴 ≻ 𝐷 ≻ 𝐶 ≻ 𝐵

𝐷 ≻ 𝐵 ≻ 𝐶 ≻ 𝐴

𝐵 ≻ 𝐷 ≻ 𝐶 ≻ 𝐴

好き 好き

[Gale-Shapley 1962]安定結婚問題男性

女性

5

Page 6: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

結婚𝑌よりも𝑋が好き

𝐴よりも𝐵が好き駆け

落ち

𝐴 𝑋

𝑌𝐵

ブロッキングペア

結婚

こういうことがあっては困る!

6

Page 7: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

結婚 𝐴よりも𝐵が好き

𝐴

𝐵

𝑋

未婚

ブロッキングペア

こういうことがあっては困る!

𝐵

𝑋

未婚

未婚

7

Page 8: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

安定マッチング

ブロッキングペア(駆け落ちしそうなペア)が

存在しないマッチングを 安定マッチング と呼ぶ.

各参加者がどんな希望順序をもっているときでも

安定マッチングは少なくとも1つ存在する.

それはGale-Shapleyアルゴリズムで発見できる.

(受け入れ保留アルゴリズムとも呼ばれる.)

[Gale-Shapley1962]

8

Page 9: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

※ アルゴリズムが下記の男女の動きをシミュレートしてマッチングを決める(各参加者はリストを提出するのみ)

① 各男性は最も好きな女性にプロポーズする.複数のプロポーズを受けた女性は,最良の男性を選んで仮マッチ,他をお断り.

② 断られた男性は希望順位リストからその女性を削除.残りの候補のうち最も好きな女性へプロポーズ.

③ 誰かと仮マッチしてる女性がより好きな男性からプロポーズを受けた場合は,仮マッチの相手をそちらに乗り換える.

②③を繰り返す.

どの男性も “既にマッチしている or もうプロポーズ候補がいない” となったら終了.

Gale-Shapleyアルゴリズム

9

Page 10: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

𝐴

𝐵

𝐶

𝐷

𝑊

𝑋

𝑌

𝑍

プロポーズ

𝐶 ≻ 𝐵 ≻ 𝐴 ≻ 𝐷

𝐴 ≻ 𝐷 ≻ 𝐶 ≻ 𝐵

𝐷 ≻ 𝐵 ≻ 𝐶 ≻ 𝐴

𝐵 ≻ 𝐷 ≻ 𝐶 ≻ 𝐴

𝑊 ≻ 𝑍 ≻ 𝑌 ≻ 𝑋

𝑋 ≻ 𝑊 ≻ 𝑍 ≻ 𝑌

𝑋 ≻ 𝑍 ≻ 𝑊 ≻ 𝑌

𝑍 ≻ 𝑋 ≻ 𝑌 ≻ 𝑊

好き 好き

Gale-Shapleyアルゴリズム

10

Page 11: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

𝑊 ≻ 𝑍 ≻ 𝑌 ≻ 𝑋

𝑋 ≻ 𝑊 ≻ 𝑍 ≻ 𝑌

𝑋 ≻ 𝑍 ≻ 𝑊 ≻ 𝑌

𝑍 ≻ 𝑋 ≻ 𝑌 ≻ 𝑊

𝐴

𝐵

𝐶

𝐷

𝑊

𝑋

𝑌

𝑍

仮マッチ・お断り

𝐶 ≻ 𝐵 ≻ 𝐴 ≻ 𝐷

𝐴 ≻ 𝐷 ≻ 𝐶 ≻ 𝐵

𝐷 ≻ 𝐵 ≻ 𝐶 ≻ 𝐴

𝐵 ≻ 𝐷 ≻ 𝐶 ≻ 𝐴

好き 好き

Gale-Shapleyアルゴリズム

11

Page 12: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

𝑊 ≻ 𝑍 ≻ 𝑌 ≻ 𝑋

𝑋 ≻ 𝑊 ≻ 𝑍 ≻ 𝑌

𝑋 ≻ 𝑍 ≻ 𝑊 ≻ 𝑌

𝑍 ≻ 𝑋 ≻ 𝑌 ≻ 𝑊

𝐴

𝐵

𝐶

𝐷

𝑊

𝑋

𝑌

𝑍

𝐶 ≻ 𝐵 ≻ 𝐴 ≻ 𝐷

𝐴 ≻ 𝐷 ≻ 𝐶 ≻ 𝐵

𝐷 ≻ 𝐵 ≻ 𝐶 ≻ 𝐴

𝐵 ≻ 𝐷 ≻ 𝐶 ≻ 𝐴

好き 好き

Gale-Shapleyアルゴリズム

プロポーズ

12

Page 13: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

𝑊 ≻ 𝑍 ≻ 𝑌 ≻ 𝑋

𝑋 ≻ 𝑊 ≻ 𝑍 ≻ 𝑌

𝑋 ≻ 𝑍 ≻ 𝑊 ≻ 𝑌

𝑍 ≻ 𝑋 ≻ 𝑌 ≻ 𝑊

𝐴

𝐵

𝐶

𝐷

𝑊

𝑋

𝑌

𝑍

𝐶 ≻ 𝐵 ≻ 𝐴 ≻ 𝐷

𝐴 ≻ 𝐷 ≻ 𝐶 ≻ 𝐵

𝐷 ≻ 𝐵 ≻ 𝐶 ≻ 𝐴

𝐵 ≻ 𝐷 ≻ 𝐶 ≻ 𝐴

好き 好き

Gale-Shapleyアルゴリズム

仮マッチ・お断り

13

Page 14: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

𝐴

𝐵

𝐶

𝐷

𝑊

𝑋

𝑌

𝑍

𝐶 ≻ 𝐵 ≻ 𝐴 ≻ 𝐷

𝐴 ≻ 𝐷 ≻ 𝐶 ≻ 𝐵

𝐷 ≻ 𝐵 ≻ 𝐶 ≻ 𝐴

𝐵 ≻ 𝐷 ≻ 𝐶 ≻ 𝐴

𝑊 ≻ 𝑍 ≻ 𝑌 ≻ 𝑋

𝑋 ≻ 𝑊 ≻ 𝑍 ≻ 𝑌

𝑋 ≻ 𝑍 ≻ 𝑊 ≻ 𝑌

𝑍 ≻ 𝑋 ≻ 𝑌 ≻ 𝑊

好き 好き

Gale-Shapleyアルゴリズム

プロポーズ

14

Page 15: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

𝑊 ≻ 𝑍 ≻ 𝑌 ≻ 𝑋

𝑋 ≻ 𝑊 ≻ 𝑍 ≻ 𝑌

𝑋 ≻ 𝑍 ≻ 𝑊 ≻ 𝑌

𝑍 ≻ 𝑋 ≻ 𝑌 ≻ 𝑊

𝐴

𝐵

𝐶

𝐷

𝑊

𝑋

𝑌

𝑍

𝐶 ≻ 𝐵 ≻ 𝐴 ≻ 𝐷

𝐴 ≻ 𝐷 ≻ 𝐶 ≻ 𝐵

𝐷 ≻ 𝐵 ≻ 𝐶 ≻ 𝐴

𝐵 ≻ 𝐷 ≻ 𝐶 ≻ 𝐴

好き 好き

Gale-Shapleyアルゴリズム

仮マッチ・お断り

15

Page 16: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

𝑊 ≻ 𝑍 ≻ 𝑌 ≻ 𝑋

𝑋 ≻ 𝑊 ≻ 𝑍 ≻ 𝑌

𝑋 ≻ 𝑍 ≻ 𝑊 ≻ 𝑌

𝑍 ≻ 𝑋 ≻ 𝑌 ≻ 𝑊

𝐴

𝐵

𝐶

𝐷

𝑊

𝑋

𝑌

𝑍

𝐶 ≻ 𝐵 ≻ 𝐴 ≻ 𝐷

𝐴 ≻ 𝐷 ≻ 𝐶 ≻ 𝐵

𝐷 ≻ 𝐵 ≻ 𝐶 ≻ 𝐴

𝐵 ≻ 𝐷 ≻ 𝐶 ≻ 𝐴

好き 好き

Gale-Shapleyアルゴリズム

プロポーズ

16

Page 17: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

𝑊 ≻ 𝑍 ≻ 𝑌 ≻ 𝑋

𝑋 ≻ 𝑊 ≻ 𝑍 ≻ 𝑌

𝑋 ≻ 𝑍 ≻ 𝑊 ≻ 𝑌

𝑍 ≻ 𝑋 ≻ 𝑌 ≻ 𝑊

𝐶 ≻ 𝐵 ≻ 𝐴 ≻ 𝐷

𝐴 ≻ 𝐷 ≻ 𝐶 ≻ 𝐵

𝐷 ≻ 𝐵 ≻ 𝐶 ≻ 𝐴

𝐵 ≻ 𝐷 ≻ 𝐶 ≻ 𝐴

𝐴

𝐵

𝐶

𝐷

𝑊

𝑋

𝑌

𝑍

好き 好き

Gale-Shapleyアルゴリズム

仮マッチ・お断り

17

Page 18: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

𝑊 ≻ 𝑍 ≻ 𝑌 ≻ 𝑋

𝑋 ≻ 𝑊 ≻ 𝑍 ≻ 𝑌

𝑋 ≻ 𝑍 ≻ 𝑊 ≻ 𝑌

𝑍 ≻ 𝑋 ≻ 𝑌 ≻ 𝑊

𝐶 ≻ 𝐵 ≻ 𝐴 ≻ 𝐷

𝐴 ≻ 𝐷 ≻ 𝐶 ≻ 𝐵

𝐷 ≻ 𝐵 ≻ 𝐶 ≻ 𝐴

𝐵 ≻ 𝐷 ≻ 𝐶 ≻ 𝐴

𝐴

𝐵

𝐶

𝐷

𝑊

𝑋

𝑌

𝑍

安定マッチングになっている!

好き 好き

Gale-Shapleyアルゴリズム

18

Page 19: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

• 男女の役割を入れ替えても出力は安定マッチング.

(※ただし同じ安定マッチングとは限らない.)

男性プロポーズ版アルゴリズムの出力は男性にとって最適な安定マッチング.

• 多対一,多対多のマッチングにも適用可能.

• プロポーズ側にとって耐戦略的![Roth 1982][Dubins and Freedman 1981]

GSアルゴリズムの性質

19

Page 20: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

多対一のマッチング

X

A希望順位

(好ましい順)

A B E D C

Y

Z

研修医

上限(定員): 3B

C

D

E

病院希望順位(好ましい順)

Z Y X

X Y Z

D C A E B

上限: 1

C E D A B

上限: 2

Z X Y

Z Y X

Y X Z

20

Page 21: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

𝑌より𝑋が好きor 割当なし

𝐴か 𝐵 より 𝐶 が好きor

定員に空き有り

多対一マッチングにおけるブロッキングペア

𝐵

𝐶

病院𝑋

定員 𝑞𝑋

病院𝑌

𝐴

定員 𝑞𝑌

このようなペアがいないマッチングを安定マッチングと呼ぶ.

21

Page 22: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

アルゴリズムの耐戦略性

マッチングを決定

XZY

X

YZX

a

b

Y

cbdae

abedc

みたいなことをしても得しない!

本当はYが第一希望だけど,きっとYは人気だろうから,無難な第二希望Xをリストの先頭にかいておこう

希望順位を故意に偽って提出してもアルゴリズムの

出力はより良いものにならない(正直が最善の策)

22

Gale-Shapleyアルゴリズムはプロポーズ側の参加者にとって耐戦略的

Page 23: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

二部マッチング理論の応用

GSアルゴリズムやその改良版が使われている実例

• 研修医の病院への配属 (米国, 日本, など)

• 公立学校選択制度 (米国のいくつかの市)

• 大学内の進学先振り分けや研究室配属

アルゴリズムの導入や改善により,マッチ率や参加者の満足度, 制度への参加率が向上

23

Page 24: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

現実の問題の難しさ

• 基本モデルでは考慮されていなかった制約がある

• 医師カップルを同一地区に割り当てたい

• 都市部への医師の集中を防ぎたい

• 下限制約を設けたい etc,…

• 安定マッチングが存在しなかったり, 計算量的困難性にぶつかってしまったりする(どんなに良いコンピュータを使っても膨大な時間がかかってしまう)

• 困難性に立ち向かう様々な方針:

“ほどほどに良い”マッチングを求めるアルゴリズム,

“実問題では概ねうまくいく”ことを保証する理論...

24

Page 25: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

もくじ

• 二部マッチングモデル

• 基本モデル(安定結婚問題)

• 応用:研修医配属,学校選択制度

• 物々交換モデル

• 基本モデル(ハウジングマーケット問題)

• 応用:腎移植ネットワーク

• 私の研究

• 制約の入った二部マッチング

• 動的・無統制な二部マッチングモデル

理論・応用ともに発展しているトピックの紹介

25

Page 26: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

[Shapley-Scarf 1974]

ハウジングマーケット問題

Eの家, Bの家, 自分の家, その他

好ましい順

Aの家, Dの家, Cの家,自分の家,その他

みんなが納得する交換の仕方は?

1

2

2

1

2

1

1

1

2

32

A B

C

DE

F

26

Page 27: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

ブロッキングコアリション

Bの家より

Eの家が好き

A B

C

DE

F

Dの家より

Aの家が好き

自分の家よりCの家が好き

※矢印の意味:EはDの家をGet

こういうことがあっては困る!27

(提携)

Page 28: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

安定割り当て

ブロッキングコアリション(抜け駆けしそうなグループ)

が存在しない割り当てを 安定割り当て と呼ぶ.

(コア配分とも.)

各参加者がどんな希望順序をもっているときでも

安定割り当ては存在する.それは Top Trading

Cycle (TTC) アルゴリズムで発見できる.[Shapley-Scarf1974]

TTC アルゴリズムは耐戦略的. [Roth 1982]

28

Page 29: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

[Shapley-Scarf 1974]

TTC アルゴリズム

1

2

2

1

2

1

1

1

2

32

A B

C

DE

F

① それぞれの人は,自分が最も欲しい家をもつ人を指す.(すると必ず1つ以上の有向サイクルができる)

② サイクルに含まれる人々は指していた家を受け取り,立ち去る.

残った人々に対して①②を行う.これを繰り返す.

(Top Trading Cycle)

(考案はGale)

29

Page 30: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

[Shapley-Scarf 1974]

TTC アルゴリズム

1

2

2

1

2

1

1

1

2

32

A B

C

DE

F

① それぞれの人は,自分が最も欲しい家をもつ人を指す.(すると必ず1つ以上の有向サイクルができる)

② サイクルに含まれる人々は指していた家を受け取り,立ち去る.

残った人々に対して①②を行う.これを繰り返す.

(Top Trading Cycle)

(考案はGale)

30

Page 31: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

[Shapley-Scarf 1974]

TTC アルゴリズム

1

2

2

1

2

1

1

1

2

32

A B

C

DE

F

① それぞれの人は,自分が最も欲しい家をもつ人を指す.(すると必ず1つ以上の有向サイクルができる)

② サイクルに含まれる人々は指していた家を受け取り,立ち去る.

残った人々に対して①②を行う.これを繰り返す.

(Top Trading Cycle)

(考案はGale)

31

Page 32: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

[Shapley-Scarf 1974]

TTC アルゴリズム

2

1

32

B

C

D

① それぞれの人は,自分が最も欲しい家をもつ人を指す.(すると必ず1つ以上の有向サイクルができる)

② サイクルに含まれる人々は指していた家を受け取り,立ち去る.

残った人々に対して①②を行う.これを繰り返す.

(Top Trading Cycle)

(考案はGale)

32

Page 33: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

[Shapley-Scarf 1974]

TTC アルゴリズム

2

1

32

B

C

D

(Top Trading Cycle)

(考案はGale)

① それぞれの人は,自分が最も欲しい家をもつ人を指す.(すると必ず1つ以上の有向サイクルができる)

② サイクルに含まれる人々は指していた家を受け取り,立ち去る.

残った人々に対して①②を行う.これを繰り返す.33

Page 34: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

[Shapley-Scarf 1974]

TTC アルゴリズム

2

1

32

B

C

D

(Top Trading Cycle)

(考案はGale)

① それぞれの人は,自分が最も欲しい家をもつ人を指す.(すると必ず1つ以上の有向サイクルができる)

② サイクルに含まれる人々は指していた家を受け取り,立ち去る.

残った人々に対して①②を行う.これを繰り返す.34

Page 35: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

[Shapley-Scarf 1974]

TTC アルゴリズム

2

1

2

B

C

D

(Top Trading Cycle)

(考案はGale)

1

1

A

E

F

安定割り当て(コア配分)になっている!

35

Page 36: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

物々交換理論の応用腎臓ドナー交換

血液型やHLA型などの条件が不適合で腎移植が行えない患者とドナーのペアが複数いるとき,互いのドナーを交換するにより適合ペア間での移植を実現しよう,という枠組

※米国や英国など. 日本では行われていない.

1

2

2

1

2

1

1

1

2

3 2B患者A

C

DE

F

Aのドナー

B

C

患者BにCのドナーの腎臓を移植患者CにBのドナーの腎臓を移植

患者EとドナーDは適合.順位は適合率の高さを表す

36

Page 37: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

現実の問題の難しさ

基本モデルでは考慮されていなかった特色

• 利他的ドナーの存在

→ モデルの拡張が必要(サイクル+チェイン)

• 各サイクルの移植手術は同時に行われる必要がある

→ サイクルの長さに制限 → 計算量的困難性

TTCアルゴリズムの改良版や,汎用ソルバーを使った解法など,様々な手法が提案されている.

37

Page 38: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

もくじ

• 二部マッチングモデル

• 基本モデル(安定結婚問題)

• 応用:研修医配属,学校選択制度

• 物々交換モデル

• 基本モデル(ハウジングマーケット問題)

• 応用:腎移植ネットワーク

• 私の研究

• 制約の入った二部マッチング

• 動的・無統制な二部マッチングモデル

理論・応用ともに発展しているトピックの紹介

38

Page 39: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

制約の入った二部マッチング

現実の問題では,様々な制約が付加され得る

• 各施設(病院/学校)が課すもの

例:学校選択でのダイバーシティ制約

• 行政/統制機関が課すもの

例:研修医配属での地域制約

39

Page 40: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

制約の入った二部マッチング

制約が入った問題では

• 安定マッチングが存在しないこともある.

• 存在しても計算に膨大な時間がかかり得る.

特に, 下限制約が存在すると難しい 😣

知りたいこと

• どのような条件を満たす制約なら高速に計算できるのか?

• 安定マッチングが存在しないときにはどうしたら良いか?

40

Page 41: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

高速に計算可能な制約

制約がある種の良い性質 (マトロイド/M♮凸性) をもつときには,高速に安定マッチングの存在判定/発見ができる.

例:入れ子状の制約

例:割り振り制約

1~20~1

1~2

1~2

0~1

0~1

各部署の上下限を守りながら割振り可能な医師の集合をとりたい

左記の上下限制約を守る医師の集合をとりたい

41

Page 42: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

安定マッチングが存在しないときひとつのアプローチ:安定性の条件を緩和

無羨望マッチング羨望タイプのブロッキングペアのみを禁止

(空席要求タイプのブロッキングペアは許容)

𝑌より𝑋が好きor 割当なし

𝐴か 𝐵 より 𝐶 が好きor 定員に空き有り

𝐵

𝐶

病院𝑋

定員 𝑞𝑋

病院𝑌

𝐴

定員 𝑞𝑌42

Page 43: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

無羨望マッチングの計算

• 無羨望マッチングは安定マッチングよりも存在しやすい.

• 制約があるとき存在判定/発見は一般に計算困難.

• 制約がある種の良い性質 (マトロイド/M♮凸性) をもつときには高速に計算可能.

43

Page 44: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

動的・無統制な二部マッチングモデル

世の中の多くのマッチング市場は,動的・無統制.各参加者は逐次的に意思決定を迫られる.

• 就活マッチング

• 婚活マッチング

知りたいこと

• 参加者の最適戦略は計算できるのか?

• 全参加者が最適戦略に従ったときに得られるマッチングはどのようなものか?

44

Page 45: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

展開型マッチングゲーム

𝑝1 𝑞1: 𝑝2 ≻ 𝑝1𝑞11

𝑝2

𝑝3

𝑞2 ≻ 𝑞1 ≻ 𝑞3

𝑞3 ≻ 𝑞2

2 3 4

5 6

𝑞2: 𝑝3 ≻ 𝑝2

𝑞3: 𝑝2 ≻ 𝑝3

求人者 求職者

• 求人者はスケジュールに従いオファーを出す.

• オファーを受け取った求職者は, 即時に 受諾/拒否 を決定せねばならない. 決定はその後 変更できない.

• オファーが受理されたら, そのペアは就活市場を抜ける.

45

Page 46: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

展開型ゲームとしての定式化オファー: 𝑝1 →𝑞1

𝑞1が受諾 𝑞1が拒否

𝑝1 𝑞1: 𝑝2 ≻ 𝑝1𝑞11

𝑝2

𝑝3

𝑞2 ≻ 𝑞1 ≻ 𝑞3

𝑞3 ≻ 𝑞2

2 3 4

5 6

𝑞2: 𝑝3 ≻ 𝑝2

𝑞3: 𝑝2 ≻ 𝑝3

𝑝2 → 𝑞2 𝑝2 → 𝑞2

・ ・ ・

𝑞2が拒否𝑞2が受諾

・ ・ ・・ ・ ・

𝑝3 → 𝑞3 𝑝2 → 𝑞1

𝑞2が拒否𝑞2が受諾

・ ・ ・

46

Page 47: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

展開型ゲームとしての定式化

𝑝1 𝑞1

𝑝2

𝑝3

𝑞2: 𝑝3 ≻ 𝑝2

𝑞3: 𝑝2 ≻ 𝑝3

𝑞2 ≻ 𝑞1 ≻ 𝑞3

𝑞3 ≻ 𝑞2

2 3 4

5 6

オファー: 𝑝1 →𝑞1

𝑞1が受諾 𝑞1が拒否

𝑝2 → 𝑞2 𝑝2 → 𝑞2

・ ・ ・

𝑞2が拒否𝑞2が受諾

・ ・ ・・ ・ ・

𝑝3 → 𝑞3 𝑝2 → 𝑞1

𝑞2が拒否𝑞2が受諾

・ ・ ・

47

Page 48: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

展開型ゲームとしての定式化

𝑝1 𝑞1: 𝑝2 ≻ 𝑝1𝑞11

𝑝2

𝑝3

𝑞2: 𝑝3 ≻ 𝑝2

𝑞3: 𝑝2 ≻ 𝑝3

𝑞2 ≻ 𝑞1 ≻ 𝑞3

𝑞3 ≻ 𝑞2

2 3 4

5 6

オファー: 𝑝1 →𝑞1

𝑞1が受諾 𝑞1が拒否

𝑝2 → 𝑞2 𝑝2 → 𝑞2

・ ・ ・

𝑞2が拒否𝑞2が受諾

・ ・ ・・ ・ ・

𝑝3 → 𝑞3 𝑝2 → 𝑞1

𝑞2が拒否𝑞2が受諾

・ ・ ・

48

Page 49: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

全求職者が最適戦略に従った際に得られるマッチングを,均衡マッチングとよぶ

1 123

23

49

均衡マッチング

Page 50: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

各求職者の最適戦略や均衡マッチングは

• 全求人者の選好リストの長さが2以下 or 全求職者の選好リストの長さが2以下 ならば,高速に計算可能. (多項式時間アルゴリズム有り)

• その他の場合は計算困難.(PSPACE困難. 膨大なメモリと計算時間を要す)

最適戦略の計算

一般に均衡マッチングは安定マッチングでない

💡 オファー順を適切に設定することで,均衡マッチングが安定になるようにできるか?

50

Page 51: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

オファー順の設計

𝑝1 𝑞1: 𝑝2 ≻ 𝑝1𝑞1?

𝑝2

𝑝3

𝑞2 ≻ 𝑞1 ≻ 𝑞3

𝑞3 ≻ 𝑞2

? ? ?

? ?

𝑞2: 𝑝3 ≻ 𝑝2

𝑞3: 𝑝2 ≻ 𝑝3

求職者求人者

参加者がどのような選好順序をもつときも,

均衡マッチングが安定マッチングとなるような

オファー順を効率的に設計できる.

51

Page 52: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

まとめ• 様々なマッチングの問題に対して,“良い” マッチング

の定義や,その計算方法が提案されている.

• 安定マッチングを求めるGale-Shapleyアルゴリズム

• 安定割り当てを求めるTTCアルゴリズム

• 他にも,様々なモデルがある

• マッチング理論はすでに様々な場面に応用され,

不満の少ないマッチングを生み出すのに貢献している.

• まだ既存のモデルや理論では対処しきれない問題も,

世の中にはたくさんある.社会の変化により今後も

新しい問題が出てくることが予想される.

52

Page 53: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

参考文献二部マッチングモデル

David Gale and Lloyd S. Shapley (1962) "College admissions and the stability of

marriage." The American Mathematical Monthly 69(1), pp.9-15.

Lester E. Dubins and David A. Freedman (1981) "Machiavelli and the Gale-

Shapley algorithm." The American Mathematical Monthly 88(7), pp. 485-494.

Alvin E. Roth (1982) "The economics of matching: Stability and incentives."

Mathematics of Operations Research 7(4), pp. 617-628.

物々交換モデル

Lloyd S. Shapley and Herbert Scarf (1974), “On Cores and Indivisibility,” Journal

of Mathematical Economics 1, pp. 23-37.

Alvin E. Roth (1982), “Incentive Compatibility in a Market with Indivisible

Goods,” Economics Letters 9, pp. 127-132.

Alvin E. Roth, Tayfun Sönmez, and M. Utku Ünver (2004) "Kidney exchange,"

The Quarterly Journal of Economics 119(2), pp. 457-488.

53

Page 54: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

参考文献自身の研究

Yu Yokoi (2017) “A Generalized Polymatroid Approach to Stable Matchings with Lower Quotas,” Mathematics of Operations Research, 42(1), pp. 238-255.

Yu Yokoi (2018) "Envy-Free Matchings with Lower Quotas” Algorithmica, Special Issue: Algorithms and Computation, pp. 1-24.

Yasushi Kawase, Yutaro Yamaguchi, and Yu Yokoi (2018) “Computing a Subgame Perfect Equilibrium of a Sequential Matching Game,” Proceedings of the 19th ACM Conference on Economics and Computation (EC2018), pp. 131—148.

(Full Version: Yasushi Kawase, Yutaro Yamaguchi, and Yu Yokoi (2018) “Subgame perfect equilibria of sequential matching games,” arXiv:1804.10353.)

54

Page 55: マッチングの数理と計算安定マッチング ブロッキングペア(駆け落ちしそうなペア)が 存在しないマッチングを安定マッチングと呼ぶ.

参考図書

Who Gets What(フー・ゲッツ・ホワット)―マッチメイキングとマーケットデザインの新しい経済学―アルビン・E・ロス (著), 櫻井祐子 (翻訳)

安定マッチングの数理とアルゴリズム~トラブルのない配属を求めて~宮崎修一(著)

学校選択制のデザイン ―ゲーム理論アプローチ―安田 洋祐 (編著)

他にもあるので,検索ワード「マーケットデザイン」等で探してみてください.

55