昨日の記事の続き
Python ナイトムーブスはボードゲームAIの基礎なのだろう 少し縮めて18行
新型アルゴリズム
黒いほうがパスファインドにして
n手先までの移動可能位置 x 10のn乗を相互にスコア化して
一番有利なスコアの手を指すように変更してみたものです
(見た目で強さ、理解できてません)
調整と強さ
TimeOutとの兼ね合いで1手指してからの自分側勝手5手読み-相手側勝手5手読みを評価値としています
昨日の記事より一手ほど読みを追加したプログラムに7から8割の勝率でしょうか
個人的な変数の命名規約
bd ボード(枠を付加して計算を速くするため一次元)
p 座標
sp パスファインド用の検索用データ (手数、ボード、位置、通過位置)のリスト
path 通過位置のリスト
先頭のn 新しく作成したもの
語尾のs 複数あるもの
このゲーム特有につけた変数名
p0,o0 自分と相手のナイトの現在位置
r 本来はreturn値の格納 今回はパスファインドの結果(手数、座標)のリスト
sb スコアボード各手の(評価値、移動位置)のリスト