For move ordering RomiChess uses at least a 1 ply search for each for each remaining move. The move plus qsearch. The formula for depth used to be depth / 4 + 1. When I added LMR I changed it to depth - (iDepth / 4 + 3).Aleks Peshkov wrote:I thought about using quiesearch instead of SEE for move ordering, but I do not agree with the use of wide search window. IMHO zero-window with bound (alpha - small delta) is better. If quiesearch discover a score above alpha, we immediately research current move deeper, without even generating later moves. It is possible to use search subtree size (like commonly used for root move ordering) to sort "bad" moves, but I feel that order of moves below alpha is not important.
I still have no complete program, so did not do any tests.
I did many months of test with all different window sizes and depth formulas to arrive at the best for RomiChess.