sakurapyon-29 / SEE or MVV-LVA
オーダリングのSEE(Seeing a Capture)を止めて、MVV-LVAにしてみました。
れさぴょんのEvalにしたり、普通の実装を書いたりしたのですが、速度が低下して思わしくなさそうなので、一番軽そうなMVV-LVAを採用。悪くない感じです。たぶん、指し手を逐次生成するか後述する遅延評価をすればSEEの方がいいと思いますが、現在はハッシュ手・カウンター手以外は一括生成・評価も一括なので割りにあわないっぽいです。
stockfishのmovepicker.cpp - ながとダイアリーにも「結論は、SEEでオーダリングするより、MVV/LVAでオーダリングした方が、実は良かったとある」とありますし。しばらくはこれで試してみます。
チェスの過去の議論を読むと、SEEの方が優秀だけど作りにもよるかもね、という感じかなあ。MVV/LVAで良い手を優先して、悪い手は後からSEEで読み直して(遅延評価して)最終的なオーダリングをする、という案もあって、これはちょっと魅力的。実装が面倒くさそうだけど。
- TalkChess.com :: View topic - MVV/LVA
- mvv/lva vs SEE capture ordering test results - rec.games.chess.computer | Google グループ
- MVV/LVA vs SEE move ordering -- more test results - rec.games.chess.computer | Google グループ
- Subject: Re: History Heuristic - Computer Chess Club Archives
今日知ったんだけど、floodgateでの対局をニコ生で生放送してる人もいるのね。sakurapyonも放送されてました。 http://live.nicovideo.jp/watch/lv83554170 。終盤、時間切れそうなときに王手ラッシュ済みませんでした(^_^;
あと、sakurapyonはWCSC22には申し込んでおりませんです。