うらおブログ(移転しました)スマートフォン用の表示で見るやねうらおブログ(移転しました)この広告は、90日以上更新していないブログに表示しています。shogiオセロ、チェスや将棋、囲碁のようなゲームは終局状態は簡単に定義できる。「こういう形になればゲームセットである」と判定したり、その状態の先手の勝ち負けを判定するプログラムは簡単に書ける。ゲームの途中でどちらが有利なのかを判断させるためには、適当な評価関数を用意しなければならない。これらのゲームに共通してそういう性質がある。そのなかでもコンピュータ囲碁はそれらのプログラムのなかでも最も難しいとされている。うまい評価関数を作成すること自体が難しい。将棋ならば駒を得しているかだとか、王のまわりは安全かだとか駒の働きはどうかだとかそういったパラメータを導入する。それらのパラメータは熟練したプレイヤ(人間)が経験的に知っているものであり、ゲーム終了の局面から何らかの方法で逆算したものではない。序盤で王を囲っておかないと、終盤で相手に駒を渡したときに詰みやすいが、いまのコンピュータ将棋のアルゴリズムでは序盤の局面において終盤付近まで読む(探索する)ことは不可能なので、評価関数に手心を加えてやる必要が出てくるのだ。囲碁では手心を加えようにもどう加えていいのかお手上げに近いものがある。どの石が終盤に生きてくるのかを定式化するのはとても難しいからである。モンテカルロ法をコンピュータ囲碁に応用するという手法がある。現在の局面からでたらめに打っていき、終局させてみる。終局状態は簡単に判定できるから、9路盤ならばいまどきのパソコンなら秒間に1000万局ぐらい終局までシミュレーションしてみることが出来る。(と思う)そのうえで、たくさん自分勝ちの終局状態があるところに着手する。これだけのアルゴリズムであるが、これが結構強いのである。いままでの囲碁プログラムは何だったのだ、という感じだ。「たくさん優勢になる変化があれば優勢」というのは、この手のゲーム共通の性質だ。一つの受けの好手があってその変化によって敗勢になることもあるので、なかなか難しいものがあるとは思うが、こんな単純な手法でそれなりの成果があがるというのは大変興味深い。電子書籍になるに至るまでの話ブログちょっとだけ移転のお知らせ時代はまだゲームセンターあらしに追いつかないのかやねうら王、電王戦バージョン提出しました将棋の神様のレーティングはいくつなのか?月別アーカイブはてなブログをはじめよう!yaneuraoさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。