新規作成 | 一覧 | RSS | FrontPage | 検索 | 更新履歴

評価関数 - 局面の優劣を数値化する関数。

差分表示


手コキでイかされたい男性の為のコミュニティ誕生!手コキされたい男性は今すぐご参加下さい!毎月恒例の手こきイベント開催中!http://www.bounce-most.info/
局面の優劣を数値化する関数。

局面(盤面・駒台及び手番)の情報をもとにその局面の[[評価値]]を計算する関数。[[αβ法]]及びその派生アルゴリズムで使用される事が多いが、[[評価関数]]自体は[[αβ法]]に依存しない。

評価値とは先手有利な局面か後手有利な局面かを表す値であり、一般的に下記の性質を持つ。
この性質から複数の局面の優劣を比較する事が可能になるという利点がある。
- 先手有利な局面であれば正の値。より先手有利なほど絶対値は大きくなる。
- 後手有利な局面であれば負の値。より後手有利なほど絶対値は大きくなる。
- 先手と後手の形勢が互角であれば0。

ただし、[[探索アルゴリズム]]からの評価関数の呼び出し方によっては、適当に符号反転した方が実装が容易になる場合があるので、各自工夫されたい。

評価関数は[[探索アルゴリズム]]と並びコンピュータ将棋の[[思考ルーチン]]にとって重要な要素であり、評価関数の良し悪しが棋力に直結する。
具体的には、評価関数の精度(評価値の正確さ)と評価関数の動作速度(一つの局面の評価値を計算する速度)の二つが評価関数の良さを表す主な指標である。

ただし、コンピュータ将棋においては「量が質を補完する」性質がある。
よって、ある程度精度を犠牲にしても動作速度を向上させる事により、多くのノードを探索する事が可能になり、元の(精度を落とす前の)評価関数を用いた思考ルーチンより棋力が上がる事もある。

評価関数内でどの様な処理を行うかはコンピュータ将棋ソフトによって異なるが、主なものは下記の通りである。
- 駒割り:盤上の駒の種類・枚数と駒台の駒の種類・枚数
- 駒の位置によるボーナス:相対位置テーブル及び絶対位置テーブル(求む、正式名称)
- [[大駒]]の自由度:[[大駒]]の動けるマスの数

ただし、ハードウェア(主にCPU及びメモリ)の性能が向上し、より多くのノードを探索可能になった結果、[[大駒]]の自由度を評価値に反映させる必要性は無くなったとの報告もある。