MadChess 3.0 Beta d143bb5 (Time Management)

I improved MadChess 3.0 Beta’s time management. I added code that increases MoveTimeSoftLimit, a TimeSpan variable that controls how long the engine examines a position (in a timed game) before responding with its move. The code increases MoveTimeSoftLimit 25% each ply (depth >= 9) if the score decreases at least one third of a pawn from the prior ply. In some engines this is known as “panic time.” The engine notices the score dropping and- to anthropomorphize it- panics like a human chess player would, spending more time than usual searching for a move that prevents its position from crumbling.… Continue Reading

MadChess 2.0 Beta Build 025 (Time Management)

I added code to measure the time taken to search each ply and calculate if enough time remains to search the next ply. This lessens the number of searches that must be abandoned in the middle of a ply, and the best move from the prior ply played. These abandoned searches waste time. This added 24 ELO to the playing strength of MadChess 2.0 Beta. I believe improved time management will pay greater dividends once I add search reductions and pruning of moves. MadChess 2.0 1694 : 800 (+101,=54,-645), 16.0 % vs. : games ( +, =, -), (%) :… Continue Reading