コンピューター将棋の構造

http://ja.wikipedia.org/wiki/%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%...

これから数回はコンピューター将棋について少々…専門用語は可能な限り端折るのでよってらっしゃい見てらっしゃい。

…将棋プログラム(ここからは「将プ」と略します)の有名どころと言えば、激指、Bonanza、YSS、GPS将棋…といったところでしょうか?(もっとあるけどね)

各将プはそれぞれが創意工夫をこらして更に強く、更に人間ライクな棋風を目指していますが(「人間ライク=強い」とは限りませんが)、その根幹となる構造はみーんな同じ様なものです。

①合法手生成モジュール(move generator)
②評価関数(static board evaluator)

…たったこれだけです。至極単純、究極簡素なもんです。「美味しんぼ」によれば「単純なものほど奥が深い」そうですが…

①合法手生成モジュール - 将棋のルールを順守して合法な手のリストを作ります。(例)金がワープして王手とか、二歩なんてのはペケです。「打ち歩詰め」は反則とか面倒なルールもありますが一日あれば十分です。

②評価関数 - 与えられた局面の情況を判断して数字での評価を下します。予め上下限値(例・+1000~-1000)を決めてあり数字が大きい程自分にとって有利(逆なら不利)となります。0なら互角ですし、+1000は「敵玉の詰み」となります。これも単純なものなら半日で書けます。

…疲れたの続きは後ほど…

面白かったら「よろし」とのコメントお願いしますね。

投稿者: 紫外線 投稿日時: 日, 06/28/2009 - 08:56 categories [ ]

コメントの表示オプション

お好みの表示方法を選択し、「設定の保存」をクリックすると、表示方法を変更することができます。

続きをよろしく

まだまだ序盤戦、コンピュータ将棋の仕組みがあまり良く分かりません。

もっと詳しくお願いしまよ~。特に評価関数(勝又さんなどがよく口にしていますが)は
誰が、どのようにして決めるのかな?興味津々です。

面白いです!

更に詳しくお願いします。

コメントの表示オプション

お好みの表示方法を選択し、「設定の保存」をクリックすると、表示方法を変更することができます。