From 949aa08207522b668cfc5612375d7b2dbd3b2092 Mon Sep 17 00:00:00 2001 From: Peter Osterlund Date: Fri, 13 Mar 2015 23:34:44 +0100 Subject: [PATCH] CuckooChess: Removed FIXME items. --- CuckooChessEngine/src/chess/ComputerPlayer.java | 2 -- CuckooChessEngine/src/chess/Evaluate.java | 11 ----------- CuckooChessEngine/src/chess/Search.java | 3 --- CuckooChessEngine/src/chess/TranspositionTable.java | 1 - CuckooChessEngine/test/chess/MoveGenTest.java | 1 - 5 files changed, 18 deletions(-) diff --git a/CuckooChessEngine/src/chess/ComputerPlayer.java b/CuckooChessEngine/src/chess/ComputerPlayer.java index da56463..768a6c3 100644 --- a/CuckooChessEngine/src/chess/ComputerPlayer.java +++ b/CuckooChessEngine/src/chess/ComputerPlayer.java @@ -245,6 +245,4 @@ public class ComputerPlayer implements Player { double w = 100*Math.exp(-d*d/2); return (int)Math.ceil(w); } - - // FIXME!!! Test Botvinnik-Markoff extension } diff --git a/CuckooChessEngine/src/chess/Evaluate.java b/CuckooChessEngine/src/chess/Evaluate.java index ee08b26..72afe16 100644 --- a/CuckooChessEngine/src/chess/Evaluate.java +++ b/CuckooChessEngine/src/chess/Evaluate.java @@ -291,10 +291,6 @@ public class Evaluate { if (!pos.whiteMove) score = -score; return score; - - // FIXME! Test penalty if side to move has >1 hanging piece - - // FIXME! Test "tempo value" } /** Compute white_material - black_material. */ @@ -756,8 +752,6 @@ public class Evaluate { score -= 28 + (8 - numPawns) * 3; } - // FIXME!!! Bad bishop - if ((numWhite == 1) && (numBlack == 1) && (whiteDark != blackDark) && (pos.wMtrl - pos.wMtrlPawns == pos.bMtrl - pos.bMtrlPawns)) { final int penalty = (oldScore + score) / 2; @@ -791,7 +785,6 @@ public class Evaluate { } private int threatBonus(Position pos) { - // FIXME!! Try higher weight for attacks on more valuable pieces. int score = 0; // Sum values for all black pieces under attack @@ -896,7 +889,6 @@ public class Evaluate { } private final int kingSafetyKPPart(Position pos) { - // FIXME!!! Try non-linear king safety final long key = pos.pawnZobristHash() ^ pos.kingZobristHash(); KingSafetyHashData ksh = kingSafetyHash[(int)key & (kingSafetyHash.length - 1)]; if (ksh.key != key) { @@ -1145,9 +1137,6 @@ public class Evaluate { } } return score; - - // FIXME! Add evaluation of KRPKR : eg 8/8/8/5pk1/1r6/R7/8/4K3 w - - 0 74 - // FIXME! KRBKR is very hard to draw } private static final int evalKQKP(int wKing, int wQueen, int bKing, int bPawn, boolean whiteMove) { diff --git a/CuckooChessEngine/src/chess/Search.java b/CuckooChessEngine/src/chess/Search.java index d2cc91f..bb370c4 100644 --- a/CuckooChessEngine/src/chess/Search.java +++ b/CuckooChessEngine/src/chess/Search.java @@ -603,7 +603,6 @@ public class Search { } // Try null-move pruning - // FIXME! Try null-move verification in late endgames. See loss in round 21. sti.currentMove = emptyMove; if ( (depth >= 3*plyScale) && !inCheck && sti.allowNullMove && (Math.abs(beta) <= MATE0 / 2)) { @@ -692,7 +691,6 @@ public class Search { } // Start searching move alternatives - // FIXME! Try hash move before generating move list. MoveGen.MoveList moves; if (inCheck) moves = moveGen.checkEvasions(pos); @@ -732,7 +730,6 @@ public class Search { boolean isCapture = (pos.getPiece(m.to) != Piece.EMPTY); boolean isPromotion = (m.promoteTo != Piece.EMPTY); int sVal = Integer.MIN_VALUE; - // FIXME! Test extending pawn pushes to 7:th rank boolean mayReduce = (m.score < 53) && (!isCapture || m.score < 0) && !isPromotion; boolean givesCheck = MoveGen.givesCheck(pos, m); boolean doFutility = false; diff --git a/CuckooChessEngine/src/chess/TranspositionTable.java b/CuckooChessEngine/src/chess/TranspositionTable.java index ccdb699..e346750 100644 --- a/CuckooChessEngine/src/chess/TranspositionTable.java +++ b/CuckooChessEngine/src/chess/TranspositionTable.java @@ -34,7 +34,6 @@ public class TranspositionTable { byte generation; // Increase when OTB position changes public byte type; // exact score, lower bound, upper bound short evalScore; // Score from static evaluation - // FIXME!!! Test storing both upper and lower bound in each hash entry. static public final int T_EXACT = 0; // Exact score static public final int T_GE = 1; // True score >= this.score diff --git a/CuckooChessEngine/test/chess/MoveGenTest.java b/CuckooChessEngine/test/chess/MoveGenTest.java index b7023e4..11129ce 100644 --- a/CuckooChessEngine/test/chess/MoveGenTest.java +++ b/CuckooChessEngine/test/chess/MoveGenTest.java @@ -430,7 +430,6 @@ public class MoveGenTest { List swapList = getMoveList0(swap, onlyLegal); List ret = getMoveList0(pos, onlyLegal); assertEquals(swapList.size(), ret.size()); - // FIXME! Test that swapList contains swapped moves compared to ret return ret; }