スポンサード リンク

T.Ishii's Software Library

HTML5 レトロ風ゲーム館

無料ブログはココログ

« やっぱり数が力かも | トップページ | 精度を落とすトリックはヤメ »

中盤評価には二つのトリック

今は、新しいリバーシプログラムの開発フェーズなのだが、当初の開発期間としていた1ヶ月が過ぎたので、締めの作業に入ろうとしている。今回の開発では、そもそもは、序盤から中盤の評価精度を上げたかったのだが、その為に、コードにも二つのトリックを入れた。

今回の開発では、評価データの学習用データを大幅に追加している。

その結果として、FFO性能も、向上しているのだが、序盤から中盤にかけての評価精度も向上している筈だ。

と、いうか、今回、学習データを再作成しているのは、この序盤から中盤にかけての評価精度を上げたかったからなのだが、冒頭に書いた様に、それだけでは問題は解決しそうにないので、今回はコードにも二つのトリックを入れた。

その一つ目は、通常、前向き枝刈りは2手読みを行って、その結果から行っているのだが、その前に、1手読みも行う格好にした事だ。

つまり、1手読みを行って枝刈りが発生する条件が整った場合に限り、2手読みを行い、そこで枝刈りが発生する条件が整った場合にのみ、実際の前向き枝刈りを行う様にした。

何故、この様な事をやる事にしたのか、というと、パターン評価による評価誤差というのは、様々な局面に微妙に入るモノもあるのだが、学習されていない様な局面では、とてつもなく大きな誤差が発生する場合が、偶に、あるからだ。

だからどうした、という声も聞こえてきそうなのだが、作者的に問題にしているのは、上記の偶に発生する大きな誤差な訳なので、上記の様な二段構えの評価を行わせておけば、本来なら前向き枝刈りが発生する筈の局面で枝刈りが発生しなくなる確率は増えても、逆に、枝刈りを発生させてはいけない局面で枝刈りが発生する確率は減らせる訳だ。

つまり、パターン評価の評価結果にとんでもない誤差が発生したとしても、善手を枝刈りしてしまうリスクは減る訳なので、その結果としては、評価精度が向上する事が期待できる訳だ。

ただし、上記の様にしてしまうと、現行版よりも枝刈り発生確率は減る事になるので、その結果としては、処理時間が増大する事になる。

で、少々の増大なら目を瞑ろうか、とも思ったのだが、ここの所、色々と比較してきているEdaxの場合、序盤から中盤にかけては、殆ど、真面目な評価は行っていない訳だ。

つまり、序盤から中盤にかけての処理時間が非常に短いので、MasterReversi的には、あまり処理時間を増大させる訳にも行かない。

なので、処理時間を短縮させるためのトリックを入れたのだが、その具体的な方法としては、探索時には、並び替えを行った上位4つの着手候補しか相手にしない、という方法だ。

これはどういう事なのか、というと、並び替えが正しいとすると、探索中の各局面で最初に探索する着手候補が最善手になるので、実際の所、それ以外の着手候補は相手にする必要がない訳だ。

例えば、MasterReversiで「ツール」-「局面評価」-「完全[最善手]」を実行すると、その内、盤面の最善手と思われる箇所の数字が黄色に変り、その後、その他の着手の「***」マークが黄色くなって行き、全ての着手候補の色が変わると評価が終了する。

で、殆どの場合、上記の通りに事は進むので、上記の最初の数字の色が変わった時点で、完全読みを終了扱いにしている人もいるかもしれないのだが、その後の処理では、最初に表示された評価値を越える評価値が存在しない事を確認している訳だ。

なので、完全読みとしては、上記の処理は必須なのだが、中盤評価については、どの道、評価誤差は発生するので、今回、殆どの場合、新たな最善手が見つかる事がない、前述の様な確認処理の一部を省く事で、中盤評価の処理速度を上げる事にした訳だ。

その結果として、今現在、中盤評価の処理速度は現行版よりも速くなっているのだが、それでも、Edaxよりは時間をかける様にはしているので、デフォルトで21手読みのEdaxなら、レベル5で結構普通に勝てているし、20手読みのレベル4でも、勝ったり負けたりの状況だ。

« やっぱり数が力かも | トップページ | 精度を落とすトリックはヤメ »

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/534482/66469741

この記事へのトラックバック一覧です: 中盤評価には二つのトリック:

« やっぱり数が力かも | トップページ | 精度を落とすトリックはヤメ »

2018年8月
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  

広告

プライバシーポリシー

  • 当サイトでは、第三者配信による広告(Google Adsense)サービスを利用しています。

    Google を含む第三者配信事業者は、Cookie を使用して、ユーザーのウェブサイトでの閲覧履歴に基づく広告を配信します。 Google 広告 Cookie を使用することにより、Google や Google のパートナーは当サイトや他のサイトへのアクセス情報に基づく広告をユーザーに表示できます。

    収集された情報がGoogleによってどの様に使用されるか、収集される情報をユーザーが管理する方法については、以下のリンクを参照下さい。

    ポリシーと規約 - Google