オセロのAIを考えていく上で、AlphaGoは必ず押させておきたい内容だったので、文献等を調査して内容をメモのレベルではありますが整理しました。打てる手からランダムに選択(以後ランダムと呼称)する条件で10000回対局させた結果を整理しました。オセロをプレイするAIを開発するために、まずはオセロを動かせるPythonスクリプトを構築しました。以下のような仕様です。前回の記事の元に、石を置ける位置を判定する機能を実装しました。機能は、以局面(8×8配列)と手番(先手:後手)を引き数に渡すことにより、石を置ける位置を探索するというものです。オセロを打つとき、局面と手番によって石の置ける位置・置けない位置がありますが、これが分からないとCPUは思考ができませんし、対人対戦でも自由な場所に打ててしまいゲームになりません。盤面表示機能では、8×8の2次元配列に格納された石配置の情報(0:石なし、1:黒石、2:白石)を画面に表示するものです。1回のオセロを動かすための処理フローは以下のようなものにする。この部分だけなら、将棋やチェスといった他のボードゲームでも同様の構成になると思われる。私が「AI開発してぇ。」と思い出したのは、小学校くらいのころだったでしょうか。»Othello用AIの開発プロフィール兵庫県在住の30代データサイエンティスト。Pythonを使った機械学習等によるデータ分析や、ウェブアプリ等のシステム開発に取り組んでいます。