2015年4月16日木曜日

CFR(Counterfactual regret minimization)でdudo

CFR で三目並べに続いてdudoというdiceゲームをCFRで書いてみた。


GitHubのソースコード

dudoのゲームルールはこちらを参照。
三目並べと比較すると、dudoは非完全情報ゲームなので、CFRを適用するにはちょうどいい対象である。


CFRの評価がしたかったので、ゲームの実装は実際のdudoに比べて下記のように簡略化してある。


  • 1の目はワイルドカードとしてカウントしない。
  • プレイヤーの数は二人
  • 各プレイヤーが持つダイスの数は2つ。


200回ほどトレーニングをさせたCFRと、単純に相手のコールにひとつだけ上乗せをする戦略をとるBoarPlayerを戦わせたところ、大体75%ほどの勝率でCFRは勝利を収めた。


MSCFの理解に役立ったリンク


ファイルサーバを例に設定の仕方が細かく載っている。
Failover Cluster Step-by-Step Guide: Configuring a Two-Node File Server Failover Cluster

VMWare上のWindows 2008R2でMSFC

VMware Playerの上で動かしたwin2008R2同士でクラスタを組んだ。

どっちも同じvmdkファイルをコピーして使いまわしていたら、フェールオーバクラスタマネージャの構成の検証でネットワーク周りのエラーが出た。

こんな感じのエラー

ネットワークトポロジを読み込み中にエラーが発生しました 0x90070005

無視して進もうにも、クラスターの作成、のウィザードで「アクセスが拒否されました」とエラーメッセージが出て進めなかった。

いろいろ調べたところ、原因はvmdkファイルを使いまわしたことによってドメインSIDが重複していることがわかった。これは、クラスターのノードとなる2008R2のアプリケーションログを見ることによって発見した。

下記のページの手順に沿ってSIDを再度設定しなおしたところ、構成の検証が通るようになった。



ドメインSIDについてはこちらを参照