ゲーム系問題

対象戦略

手の自由度

後退解析

明らかに必勝、必敗の状態を見つける。その状態のどちらにも帰着できるような単純な状態を探す。そのような状態に移れないような状態を押し付け続ける。

Grundy Number

ゲームの状態とは、そこから遷移できる状態の集合である 終了状態をは空集合であり、これを\*0\*0と書く 一般に、ある\*n\*nが存在して、nnより小さい全ての非負整数iiについて、\*i\*iに遷移できるような状態を\*n\*nと書く。また、このような状態をNimberという

ゲームの合成

終了状態 f(G)f(G) := 状態Gから最適に行動した時の勝敗

状態の同値関係を以下のように定める GG    Hf(G+H)=f(G+H) G \equiv G' \iff \forall H f(G+H)=f(G'+H)

任意の2状態G,GG,G'について、GG    f(G+G)= G \equiv G' \iff f(G+G')=負け が成り立つ

証明: GG    G+GG+G G \equiv G' \implies G + G \equiv G + G'が成り立つが、対象戦略によりf(G+G)=負け f(G+G)=負け

G≢G G \not \equiv G'の場合、f(G) f(G)=勝ちと仮定して良い。G Gから適切に選ぶことで、相手に状態H+G H+G'を渡すことができ、f(H) f(H)=負けである。この状態は必敗なので、f(G+G) f(G+G')=勝ちとなり、GG    f(G+G) G \equiv G' \impliedby f(G+G')=負け

状態G={G1,,Gk} G = \{G_1, \dots , G_k\}について、帰納法の仮定により、i ni Gini \forall i \space \exists n_i \space G_i \equiv n_iが成り立つ。 G={n1,,nk} G'=\{n_1, \dots, n_k\}と定義する。このとき、GG G \equiv G'を示す。

現在の状態がG+GG+G'のとき、次の状態をGGから選ぶとする。このとき、次の状態がGi+GG_i+G'になったとする。 この場合、相手はnin_iを選ぶことで必勝になる。したがってf(G+G)f(G+G')=負け より、GGG \equiv G'

次に、Gm G' \equiv *mとなる非負整数mmが存在することを示す。

f(G+m)f(G'+*m)=負けとなるようなmmを考える。 もしあるiiが存在して、ni=mn_i = mとなるなら、状態\*ni\*n_iを選ぶことで勝ててしまう。そのようなiiが存在しないなら、操作をGG'から選ぶ限り負け。

次に、操作を\*m\*mから選ぶことを考える。m=mex(G)m' = mex(G')とする。m<mm' < mなら、次の状態をG+m G'+ *m'にすることで勝ててしまう。一方、m=mm'= mのとき、必ずGG'から選ばなければならない。

以上より、GmG \equiv *mが成り立つ非負整数mmがただ一つ存在し、m=mex(G) m=mex(G')である