MTD(f)の性能
まずは昨日書いたαβでの反復深化を実装。MTD(f)も反復深化ありなので、ほぼ同じ条件で比較してみました。
序盤でテストしてるとほとんど差がなかったんですが、ほぼランダムに生成した下の局面でテストするとMTD(f)はαβの約10倍の速度。
正確に書くとNPSはほぼ同じで探索局面は1/10になっていました。
+---+---+---+---+---+---+---+---+---+ |v香|^と|___|___|___|___|^圭|___|v歩| +---+---+---+---+---+---+---+---+---+ |___|___|^と|^圭|v歩|___|___|v王|v香| +---+---+---+---+---+---+---+---+---+ |v歩|___|___|___|v馬|___|___|___|v桂| +---+---+---+---+---+---+---+---+---+ |^銀|___|^金|___|___|___|___|v歩|___| +---+---+---+---+---+---+---+---+---+ |___|___|v歩|v歩|v龍|v歩|___|___|___| +---+---+---+---+---+---+---+---+---+ |___|v歩|^歩|___|___|v金|^歩|___|^飛| +---+---+---+---+---+---+---+---+---+ |^歩|___|^角|___|___|^歩|___|___|^銀| +---+---+---+---+---+---+---+---+---+ |^王|___|___|v全|^金|___|v歩|___|^香| +---+---+---+---+---+---+---+---+---+ |^香|^桂|___|___|^銀|___|___|___|___| +---+---+---+---+---+---+---+---+---+ 歩,桂,香,銀,金,角,飛 0, 0, 0, 0, 1, 0, 0, 3, 0, 0, 0, 0, 0, 0, 手番 : 先手 手数 : 190
あー、要するにアレか、MTD(f)は「簡単な局面を高速に読める」んじゃなくて「複雑な局面でもあんまり遅くならない」って考えた方がいいのかな。
あと、MTD(f)にキラームーブを実装してみましたが、これはほぼ効果なし。NPSは微増するもののmpnが大きくなって、プラマイゼロぐらいでした。
つー訳で学習にはMTD(f)を使うことにして一晩動かしてみます。