蒼天已死、
我もまた一匹のマングースであろうぞ!(←駄目
たくさん読めば強くなる?
先日評価関数はどうあるべきかについて書いたわけだが、同様の主張が激指のページで思い切り否定されとる↓↓↓
ttp://www.logos.t.u-tokyo.ac.jp/~gekisashi/strength.html
世知辛え!
しかし見方を変えるなら、評価関数の高精度化追求は誰も本気で実践していない分野である可能性が高いとも言える。
(過去にそういう事例があるならまさに上記ページで引用されているはずだ。いや盛大にコケたから論文になってないという可能性も大いにあるけど!)
どこに勝機が?
世知辛いついでに気が重くなる事実を一つ。
さんざんコンピュータ将棋について実践しまくった人ならすでに見抜いているはずだが、私が考えている評価関数は極めて重い。
どれぐらい重いかというと、実験したらばPentium4 1.8GHzクラス・C++で記述の下で(なんと)100 nps程度の見込み。
(なお、見抜かれてるついでにいうと一昨日に挙げた将棋の評価関数案では持ち駒の評価が抜けてた、、)
そこで却って方針が定まる。
- 前向き枝刈り必須
- (学習がキモなので)学習パターンの自動獲得が(パターン数を稼ぐために)必須
- また、それを早いサイクルで回せる必要がある
- (学習の精度がキモなので)過学習の検出処理が必須
昨日まで言ってたこととあまり変わってないつもりだが、ただし、前刈りを、3段先読みしたときの局面評価値の安定度でやるつもりだったが100 npsではそれを成しえないのでそこは変更せねばならない。
確信をもって判断できない手を見出すにあたり、先読みではなく、パーセプトロンの結合加重を直接ゴニョゴニョ解釈することを考え中。
あとパーセプトロンは3値にしよう。
学習の仕組みの確立のために、まずは五目並べあたりで実装してみようかの、、(道は遠い