対戦ゲームに学ぶ、フレームワークの設計技法とAIのアルゴリズム入門 #builderscon tokyo 2019

builderscon tokyo 2019 にて、表題にて発表します(した)。スライドだけでは十分に情報を伝えられないため、この記事にて補足していきます。

登壇資料

指のゲーム

ここ(heroku)で動かせます。本来は対戦ゲームですが、1人で両方動かす形です。Display GuideをONにすると、後退解析によって解析された結果を利用して、各Moveのwin/lose/drawが表示されます。

コードはこちら(GitHub: qsona/yubisen)にあります(かなり雑然としたコードでスイマセン)。boardgame.ioを利用しています。後退解析のコードはその中のanalysis.tsです。

ぷよぷよの名勝負

紹介した対戦は ALF vs かめ 100本先取 (2010, 実況 Tom) です。劇的な結末を迎えます。ぷよぷよを知らない方も最後の方だけでもぜひ。

"天才の詰み"

郷田真隆 - 羽生善治 の一戦。解説の先崎さんに「天才の詰み」と言わせた羽生さんの詰めが鮮やかです。 Youtube

「最後の審判」について

こちらのnoteマガジンで書き進めています。登壇時に未完成ですが、1-2週間で結論まで書き上げる予定です。ぜひマガジンをフォローしてください!

モンテカルロ木探索

資料中では十分説明できませんでした。こちらの資料がとっても分かりやすいので、ぜひご参考に。
コンピュータ囲碁におけるモンテカルロ法 ~理論編~ 美添 一樹

ぷよぷよのAI

ぷよぷよ AI: mayah(AI) の実装 / @mayah_puyo が資料としては最も参考になります。それ以外にも、ぷよぷよ AI などで検索すると実際の対戦の様子なども見ることができます。

参考文献

ゲーム情報学 コンピューター将棋を超えて / 松原 仁

「どうぶつしょうぎ」の完全解析 / 田中哲朗

ゲームを解く!Educational DP Contest K, L 問題の解説 - Qiita / @drken

コンピュータ囲碁におけるモンテカルロ法 ~理論編~ / 美添 一樹

人狼知能プロジェクト aiwolf.org

ぷよぷよ AI: mayah(AI) の実装 / @mayah_puyo

将棋ガイドブック / 日本将棋連盟

noteの通貨流通量を増やしていきたい!!