MadChess 3.0 Beta Build 103 (Passed Pawns)

I added passed pawn evaluation to MadChess 3.0 Beta. The passed pawn evaluation code scores the following features: Passed Pawns Free Passed Pawns (no pieces blocking promotion path) King Escorted Passed Pawns Unstoppable Passed Pawns (Rule of the Square) Middlegame Passed Pawns: 000 000 003 008 015 024 034 000 Endgame Passed Pawns: 000 004 018 042 075 118 170 000 Endgame Free Passed Pawns: 000 008 034 077 138 216 311 000 Endgame King Escorted Passed Pawn: 11 Unstoppable Passed Pawn: 775   This code improved the engine’s understanding of threats created by pushing passed pawns. It increased the… Continue Reading

MadChess 2.0 Beta Build 059 (Free Passed Pawns)

I added free passed pawn evaluation to MadChess 2.0 Beta. Unobstructed passed pawns on the sixth or seventh rank are awarded a bonus if they may advance to the next square without material loss. The square must be unoccupied and the score after exchanging pieces on the advance square must not be negative. In addition, I simplified the move ordering code. I felt the GetNextMove() method required too much external bookkeeping (to mark played moves, illegal moves, update local move variable, save move back to array, etc) and therefore was too prone to bugs. I replaced it with a two… Continue Reading

MadChess 2.0 Beta Build 052 (Unstoppable Pawns, Draws, Material Trades)

I added code to detect unstoppable passed pawns and drawn endgames, and code to evaluate material trades. The code that evaluates material trades implements the age old advice, “When ahead trade pieces. When behind trade pawns.” A greater bonus is giving for trading pawns, since in many endgames the side with a material advantage cannot win without promoting a pawn. This added 39 Elo to the playing strength of MadChess 2.0 Beta. MadChess 2.0 2193 : 800 (+399,=168,-233), 60.4 % vs. : games ( +, =, -), (%) : Diff, SD, CFS (%) Glass 1.6 : 50 ( 4, 7,… Continue Reading

MadChess 2.0 Beta Build 026 (Passed Pawns)

I added passed pawn evaluation to MadChess 2.0 Beta. No sophisticated evaluation of free (unimpeded) or unstoppable passed pawns. Just a simple tapered evaluation of passed pawns, with a score based on the pawn’s rank. This added 72 Elo to the playing strength of MadChess 2.0 Beta. Bug While watching one of the games, I observed MadChess play a losing move in a drawn by repetition position. It gave a score of mate in zero (which is nonsense), searched to the max depth of 100 plies. I need to hunt down this bug, which likely is robbing MadChess of significant… Continue Reading