Processing math: 31%

最適化理論/ゲーム理論

提供: Internet Web School

(版間での差分)
159 行: 159 行:
(損失と利益の表)の要素に全て10を加えておく.
(損失と利益の表)の要素に全て10を加えておく.
-
利得表2
+
利得表2 [[ファイル:Game02.jpg]]
-
 
+
-
[[ファイル:Game02.jpg]]
+

2020年11月24日 (火) 14:57時点における版

P,Qの2人がじゃんけんをする. 負けたら10円を相手に払い,勝ったら相手から10円貰うというルールで, じゃんけんを繰り返す.

無論,「アイコ」の場合は,支払うお金,貰うお金とも0円である.

PQの出す手によって,貰えるお金,支払うお金がどうなるか, Pの立場で以下のような表になる.

利得表1 ファイル:Game01.jpg

「-10」はQに10円払う事を表す. Pの立場に立ってみる.先ず,このゲームの利得表には鞍点がない. 双方が選択の余地のない「平衡状態」にする戦略はないわけである.出す手をランダムしてゲームを繰り返す方法以外ない. このような問題を混合戦略問題とう. じゃんけんを繰り返すわけであるが,どのような「戦略」があるか?

グーを出し続けとすると,Qはそれを直ぐ見破って, パーを出し続けてくるであろう.続ければ続けるほどPは大損である. 同様にパーを出し続けても,チョキを出し続けるのも駄目である.

結局,例えばサイコロを用意して,出た目によって出す手を決めるランダムな手の繰り返す方法であろう.

(1か6ならグー,2か5ならパー,3か4ならチョキなど)

問題は,どんな割合で(確率で)グー,チョキ,パーを出すべきかである. 相手のQPの出す手を監視しながらPと対戦するので,Pが選択したグー,チョキ,パーの確率を直ぐに見破り, それでも,自分にとって有利な手を選択してくると考えるべきである.PQの立場を替えても全く同じである.


ゲームの理論を創始し,この種の問題に解を与えたのが,ノイマン(vonNuemann 現在の計算機の原理開発者としても有名)である.

鞍点のある問題と異なり,一工夫が必要である.それは,ゲームの利得 G(P,Q)の替わりに期待値E(P,Q)を使います.以下,その説明をする.

Pが選択する戦略(グー,チョキ,パーを出す確率)をp1,p2,p3とし, P=(p1,p2,p3)で表しておく.

このゲームの場合,「戦略」は幾つかある「手」をランダムに選んで繰り返す 確率の組み合わせになるわけである.


同様にQが選択する戦略をQ=(q1,q2,q3)で表しておく.


Pがグーを出し,Qもグーを出す確率はp1q1でこのとき

Pは損得なし(0円の儲け),

Pがグーを出し,Qがチョキを出す確率はp1q2 でこのとき,Pは10円の儲け,

Pがグーを出し,Qがパーを出す確率はp1q3でこのとき, Pは10円の損失(-10の儲け),

という計算を全て行うと

P=(p1,p2,p3),Q=(q1,q2,q3) でのPの儲けの期待値E(P,Q)

E(P,Q)=0・p_1・q_1+10・p_1・q_2+(-10)・p_1・q_3 +(‐10)・p_2・q_1+0・p_2・q_2+10・p_2・q_3 +10・p_3・q_1+(‐10)・p_3・q_2+0・p_3・q_3

である. P=(p_1,p_2,p_3),Q=(q_1,q_2,q_3)は それぞれ,グー,チョキ,パーを出す確率を表しているから, これらについての制約は

1 \ge p_1 \ge 0,1 \ge p_2 \ge 0,1 \ge p_3 \ge 0, p_1+p_2+p_3=1 \\ 1 \ge q_1 \ge 0,1 \ge q_2 \ge 0,1 \ge q_3 \ge 0, q_1+q_2+q_3=1

である.

簡単のためP,Qの採り得る集合を

P_O= \{ (p_1,p_2,p_3)|1 \ge p_1 \ge 0,1 \ge p_2 \ge 0,1 \ge p_3 \ge 0, p_1+p_2+p_3=1\} \\ Q_O= \{ (q_1,q_2,q_3)|1 \ge q_1 \ge 0,1 \ge q_2 \ge 0,1 \ge q_3 \ge 0, q_1+q_2+q_3=1\}

で表しておく.前節のP_0,Q_0と異なり,それぞれ,確率を要素にもつベクトルの 集合になっている.

P=(p_1,p_2,p_3)P_Oの中から選択されるとQはこれに対抗して E(P,Q)が最小になるように (自分の損失が最小になるように) Q=(q_1,q_2,q_3)Q_O中で選択するはずである. すなわち

min \{ E(P,Q) |Q \in Q_O\}

が実現されるとなるようなQQ_Oの中で探す. この最小値を

min_Q E(P,Q) で表しておく.

Pはこれを見越して,自分の利益が最大になるようにするため,

max \{ min_Q E(P,Q) |P \in P_O\}

が実現されるとなるようなPP_Oの中から探すことになる. この最大値を

max_P min_Q E(P,Q)

で表しておく.

まっく逆のQの立場からは, Q=(q_1,q_2,q_3)Q_0 の中から選択されるとPはこれに対抗して

E(P,Q)が最大になるように

P=(p_1,p_2,p_3)P_0 中で選択するはずである. すなわち

max \{ E(P,Q) |P \in P_O\}

が実現されるとなるようなPP_0の中から探す.この最小値を min_P E(P,Q) で表しておく.

Qはこれを見越して,自分の損失を最小にするため,

min \{ max_P E(P,Q) |Q \in Q_O \} が実現されるとなるようなQQ_0の中で探すことになる.この最大値を min_Q max_P E(P,Q) で表しておく.


以上出てきた,2つの値には一般には

max_P min_Q E(P,Q) \le min_Q max_P E(P,Q)

という関係が成り立っている.

ノイマンは上のような問題では,P_O,Q_0の中に

P^*=(p_1^*,p_2^*,p_3^*), Q^*=(q_1^*,q_2^*,q_3^*)

があって

max_P min_Q E(P,Q) = min_Q max_P E(P,Q)=E(P^*,Q^*) \\ max_P E(P,Q^*)=E(P^*,Q^*)= min_Q E(P^*,Q)

となることを証明した.

このP^*Q^*を具体的求めることにする.

問題を解きやすくするため,最初に出てきた<利得表> (損失と利益の表)の要素に全て10を加えておく.

利得表2 ファイル:Game02.jpg


これでは,一方的なPのゲームになるかもしれないが,

P^*=(p_1^*,p_2^*,p_3^*),Q^*=(q_1^*,q_2^*,q_3^*)

を計算するためだけであり,このような,利得表の平行移動やっても解は同じである.


P^*も,Q^*も,E(P^*,Q^*)も未知な量であるが E(P^*,Q^*)は判っているもの として

max_P E(P,Q^*)=E(P^*,Q^*)=min_Q E(P^*,Q)

に注目する.

E(P,Q)=q_1 \{ 10p_1+0p_2+20p_3\} +q_2 \{ 20p_1+10p_2+0p_3\} +q_3 \{ 0p_1+20p_2+10p_3\}

で,

1 \ge q_1 \ge 0,1 \ge q_2 \ge 0,1 \ge q_3 \ge 0, q_1+q_2+q_3=1

であるので

E(P^*,Q^*) \le 10p_1+0p_2+20p_3~ (1) \\ E(P^*,Q^*) \le 20p_1+10p_2+0p_3~ (2) \\ E(P^*,Q^*) \le 0p_1+20p_2+10p_3~ (3)

という条件を満たせば,任意のQ \in Q_0について E(P^*,Q^*) \le E(P,Q) が成り立つ.従って

E(P^*,Q^*) \le min_Q E(P,Q)

が成り立つ.

(1)(3)P \in P_0 即ち

1 \ge p_1,p_2,p_3 \ge 0, p_1+p_2+p_3=1

の制約条件下で

E(P,Q^*)=max_P E(P,Q^*)となるP

を求めれば,

E(P,Q^*)=E(P^*,Q^*) となるわけである.

しかし,これではまだE(P^*,Q^*)が未知量であるので,

(1)(3)の両辺をE(P,Q^*) で割り,

r_1=p_1/E(P,Q^*) \\ r_2=p_2/E(P,Q^*) \\ r_3=p_3/E(P,Q^*)

として, E(P^*,Q^*)/E(P,Q^*) \ge 1

に注意すると

1 \le 10r_1+0r_2+20r_3~(1') \\ 1 \le 20r_1+10r_2+0r_3~(2') \\ 1 \le 0r_1+20r_2+10r_3~(3')

r_1+r_2+r_3 =(p_1+p_2+p_3)/E(P,Q^*) =1/E(P,Q^*)

から

E(P,Q^*)のPについての最大化  \Leftrightarrow 「r_1+r_2+r_3の最小化」


結局,線形計画法の問題

1 \le 10r_1+0r_2+20r_3(1') \\ 1 \le 20r_1+10r_2+0r_3(2') \\ 1 \le 0r_1+20r_2+10r_3(3')

かつ

r_1,r_2,r_3 \ge 0

の制約条件で

r_1+r_2+r_3

を最小化する という問題が出てくる.

Microsoft Excel のsolver などツールが利用できる.

その解から

p_1^*=r_1/(r_1+r_2+r_3) \\ p_2^*=r_2/(r_1+r_2+r_3) \\ p_3^*=r_3/(r_1+r_2+r_3)

とすれば,P^*の最適戦略が求まる.

PQの役目を交換しても全く同じなので,P^*=Q^*である. 最初の<利得表2>を用いれば,E(P^*,Q^*)も求まる.


ゲーム理論

個人用ツール