GA将?開発日記~王理のその先へ~

ネタ勢最強を目指して絶賛開発中。

色々やった結果

問題点は「勝つ為に(報酬を得る為に)は不要な手を指す」事なんですけど、結構対処は難しそうです。

(あ、対局の条件は上で書いた通り「後手玉に王手がかかったら後手が投了する」です。)

一手指すごとに-0.01の報酬を与えているので、原理的には不要な手は取り除けるはずです。ただ、評価関数を使って近似している影響か、それとも探査が足りない影響か、まだ不要な手を指します。

例えば先手の手だけを取り出すと「7六歩→3三角成」で勝ち(王手されたので後手が投了する)なのですが、3三角成の前に3六歩を指したがります。

強化学習的なやり方で対処するなら、エージェントが短手数で勝ちたがる様に報酬の与え方を工夫するのが定跡でしょうか。

コンピュータ将棋的には、評価関数の実装をなんとか工夫して、関数近似の精度を上げて対処するのが良いと思います。

まぁ、まだどっちの方向で行くかは決めてないんですが。

と言うか、ちゃんとした将棋に応用可能な対処ってのがイマイチ思い浮かばないんですよね。困った。