Tuesday, December 21, 2021

ChessKISS 1.8a, final?

Hi

After some months of intensive debugging and tuning, I've ready the last version of the year 2021 (will see how long it takes for a new version, if any...)

what's new:

  • Draw Probability is scored as middle/ending Score
  • Pawn storm does not take into account pawns on 2 row
  • Fixed some negative arrays...
  • Rook or queen on seventh do not longer take into account if king is on second row
  • Minor fixes in piece pairs
  • A long lasting bug with pawn cache, shame on me...
  • Now cache history is increased while on iterative iteration
  • Pawn hash is only calculated when moving pawns
  • Lazy margin is now dynamic based on game phase
  • Bonus time increased when PV changes in root
  • Zobrist calculation performance improved a bit
  • Board.evaluate() improved performance
  • Now cache stores scores as tapered
  • Now queen has a penalty if can only do one movement
  • Don't timeout in root nodes
  • Some functions reordered in order to make inline work better
  • cache.AddScore() improved when cluster is full
  • New penalty when king cannot move
  • Piece index evaluation performance improved
  • IsRepetition() performance improved
  • Aspiration window is now dynamic
Seems engine is stronger but who knows if that is true.

Find the new binaries at OneDrive

Merry xmas!

6 comments:

  1. Hi,

    ChessKISS 1.8a loses on time all its games. This did not happen with 1.7 nor 1.8. At first, I thought it was because I was using a common (polyglot) book for testing, but I also tried with its own book and keeps losing on time (looks like its crashing in the middle of the game.

    This is part of the debug (if you want the complete debug, just send me an email address.)

    70531 first : time 4911
    71937 >first : otim 5700
    book hit = (NULL)
    71937 >first : usermove 71937 >first : c6c5
    silence
    72051 second: time 5700
    73671 >second: otim 4837
    book hit = (NULL)
    73671 >second: usermove 73671 >second: h3
    silence
    73863 first : result 1-0 {White wins on time}
    Interrupting second
    130684 >second: result 1-0 {White wins on time}
    130685 >first : force
    130686 >first : ping 2
    130686 >second: force

    Regards,
    Carlos

    ReplyDelete
    Replies
    1. Hi Carlos, thanks for the feedback, that's weird..., in none of my test did drash, can you please pass me any fen that makes the engine crash?.

      Anyway most probasbly first or second of januaty I will upload a new version with some changes.

      Best regards (let's hope this is not a hoax since today is 28...)

      Delete
    2. Hi Abel,

      No joking :D

      Look here:

      [Event "Computer Chess Game"]
      [Site "DESKTOP-PIO4BDF"]
      [Date "2022.01.05"]
      [Round "1"]
      [White "ChessKISS 1.8b"]
      [Black "Prophet 4.1"]
      [Result "0-1"]
      [TimeControl "60+1"]
      [Annotator "9. +0.57 6... +0.30"]

      1. c4 c5 2. Nf3 Nf6 3. Nc3 e6 4. d4 cxd4 5. Nxd4 Nc6 6. g3 Qb6
      {+0.30/10 1.9} 7. Ndb5 Bc5 {-0.05/10 3} 8. Bg2 d5 {+0.00/10 3} 9. O-O
      {+0.57/8 2.0} dxc4 {-0.36/10 1.7} 10. Nd6+ {+0.60/9 1.7} Bxd6 {-0.36/12 3}
      11. Qxd6 {+0.60/8 2.2} Bd7 {-0.31/12 2.9} 12. Na4 {+0.73/8 2.4} Qb4
      {-0.19/12 1.9} 13. Nc5 {+0.27/9 1.4} O-O-O {+0.10/11 2.4} 14. a3
      {+0.27/7 2.2} Qb5 {+0.04/11 2.2} 15. Rd1 {+0.51/7 2.1} Ne8 {+0.43/10 2.0}
      16. Ne4 {+0.35/8 1.9} c3 {+0.05/11 1.6} 17. bxc3 {+0.27/7 2.2} Qxe2
      {-0.12/11 2.3} 18. Qd2 {+0.36/8 1.6} Qh5 {-0.08/11 2.8} 19. Rb1 {+0.51/8 3}
      e5 {-0.23/10 2.7} 20. Qc2 {+0.41/7 3} b6 {-0.24/10 2.5}
      {Black wins on time} 0-1

      [Event "Computer Chess Game"]
      [Site "DESKTOP-PIO4BDF"]
      [Date "2022.01.05"]
      [Round "2"]
      [White "Prophet 4.1"]
      [Black "ChessKISS 1.8b"]
      [Result "1-0"]
      [TimeControl "60+1"]
      [Annotator "6. +0.65 9... +0.04"]

      1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 a6 6. Bd3 {+0.65/11 3} e5
      7. Nf5 {+0.57/12 2.4} Bxf5 8. exf5 {+0.47/12 3} d5 9. Bg5 {+0.27/10 3} Bb4
      {+0.04/9 2.4} 10. O-O {+0.31/12 3} Bxc3 {+0.14/10 1.5} 11. bxc3
      {+0.26/12 2.4} O-O {+0.22/10 1.6} 12. c4 {+0.22/11 3} e4 {+0.37/10 1.8} 13.
      Be2 {+0.12/12 1.5} d4 {+0.31/10 2.3} 14. Rb1 {+0.34/11 1.6} Ra7
      {+0.30/10 2.4} 15. Qd2 {+0.38/11 2.1} Re8 {+0.14/9 2.8} 16. Qf4
      {+0.30/11 2.8} h6 {+0.49/10 1.3} 17. Bh4 {+0.39/12 2.1} Nc6 {+0.20/8 1.4}
      18. Rfe1 {+0.47/11 2.7} Re5 {+0.08/9 1.5} 19. a4 {+0.47/10 2.7} Qe7
      {+0.18/8 1.9} 20. h3 {+0.44/10 1.9} Nb8 {+0.30/7 2.2} 21. Rb6
      {+0.71/10 1.9}
      {White wins on time} 1-0

      [Event "Computer Chess Game"]
      [Site "DESKTOP-PIO4BDF"]
      [Date "2022.01.05"]
      [Round "1"]
      [White "ChessKISS 1.8b"]
      [Black "Prophet 4.1"]
      [Result "0-1"]
      [TimeControl "60+1"]
      [Annotator "6. +1.03 6... -0.08"]

      1. e4 c5 2. Nf3 d6 3. Bb5+ Bd7 4. Bxd7+ Qxd7 5. O-O Nf6 6. d3 {+1.03/10 4}
      e6 {-0.08/12 2.5} 7. Nc3 {+0.96/10 3} Nc6 {-0.09/12 2.0} 8. Bf4
      {+0.65/10 1.8} Be7 {+0.09/12 3} 9. e5 {+0.54/11 1.4} dxe5 {+0.03/13 2.0}
      10. Nxe5 {+0.46/11 2.0} Qd4 {+0.00/13 2.6} 11. Nxc6 {+0.82/10 1.4} Qxf4
      {+0.01/13 3} 12. Nxe7 {+0.77/10 2.1} Kxe7 {+0.03/12 3} 13. Qe2
      {+0.72/9 1.4} h5 {+0.03/11 3} 14. Rae1 {+0.83/9 3} h4 {+0.20/12 1.8} 15.
      Qe3 {+0.76/8 2.3} Qxe3 {+0.42/13 1.9} 16. fxe3 {+0.61/10 1.5} h3
      {+0.50/12 1.8} 17. g3 {+0.63/10 1.4} Rh5 {+0.72/11 2.0}
      {Black wins on time} 0-1

      [Event "Computer Chess Game"]
      [Site "DESKTOP-PIO4BDF"]
      [Date "2022.01.05"]
      [Round "2"]
      [White "Prophet 4.1"]
      [Black "ChessKISS 1.8b"]
      [Result "1-0"]
      [TimeControl "60+1"]
      [Annotator "6. +0.50 6... -0.63"]

      1. e4 c5 2. Ne2 d6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 Nc6 6. Nxc6 {+0.50/12 3}
      bxc6 {-0.63/10 1.8} 7. Bc4 {+0.48/12 3} Nd7 {-0.54/9 1.8} 8. Be3
      {+0.67/10 2.0} g6 {-0.38/9 1.7} 9. Qd4 {+0.76/10 1.8} Ne5 {-0.11/9 1.8} 10.
      O-O-O {+0.79/11 2.3} Bd7 {+0.02/9 2.1} 11. Be2 {+0.70/10 1.9} Bg7
      {-0.05/10 1.8} 12. f4 {+0.82/13 2.3} c5 {+0.21/11 2.1} 13. Qd2
      {+0.96/12 1.8} Ng4 {-0.12/9 1.8} 14. Bg1 {+0.85/12 2.2} Rb8 {+0.02/8 3} 15.
      e5 {+0.76/11 3} Qb6 {-0.12/8 2.3} 16. b3 {+1.00/12 2.6} O-O {-0.22/7 1.9}
      17. h3 {+1.12/10 1.5} Nh6 {-0.55/9 1.8} 18. Nd5 {+0.91/10 1.6}
      {White wins on time} 1-0

      Regards,
      Carlos

      PS: I got the winboard debug if you want.

      Delete
    3. weird..., there is a file call debug.txt and remote.txt if you could send it to me somehow I will appreciate it.

      Delete
    4. Here you are:

      https://www.mediafire.com/file/hfw9ald5e8dbtqz/debug.txt/file

      https://www.mediafire.com/file/tu5vlwqo0mfqkh7/remote.txt/file

      Delete
    5. Hi Abel,

      I did some real debugging with Inbetween now and the
      main problem is that ChessKiss 1.8b (didn't test 1.8
      or 1.8a - 1.7 c is ok) in midst of the games sends
      several of lines with '0' and the last line has no
      newline feed attached thus instead of 'move X' it sends
      '0move X', which no GUI can parse.

      There were a few other problems too as an exception
      in CuteChess and not unloading when it lost on time or
      crashed, thus seevral instances were still in memory.

      Guenther (maintainer of the XB/UCI chronology)

      See debug snippets here:

      46.503: < 8 4 34 164958 Qd1xd4 Nf6e4 Qd4d5 Ne4xd6 Qd5xd6 Re7e6 Qd6d5 d6
      47.283: < ChessKISS
      47.283: < version 1.8a 21/12/21
      47.283: < 64 bits
      47.299: <
      47.299: < Type "help" for a list of available commands
      47.299: < 0
      47.299: < 0
      47.299: < 0
      47.299: < 0
      47.299: < 0
      47.299: < 0
      47.299: < 0
      47.299: < 0
      47.299: < 0
      47.299: < 0
      47.299: < 0
      47.299: < 0
      47.299: < 0move Qd1xd4
      95.753: > ?


      46.987: < 7 -12 81 201301 Rc8g8 Be2f3 Ra8d8 Kh1g1 Rd8f8 Nh4f5 Bd7xf5
      47.533: < ChessKISS
      47.533: < version 1.8a 21/12/21
      47.533: < 64 bits
      47.533: <
      47.533: < Type "help" for a list of available commands
      47.533: < 0
      47.533: < 0
      47.533: < 0
      47.533: < 0
      47.533: < 0
      47.533: < 0
      47.533: < 0
      47.533: < 0
      47.533: < 0
      47.533: < 0
      47.533: < 0
      47.533: < 0
      47.549: < 0move Rc8g8
      96.892: > result 1-0 {White wins on time}

      43.353: < 7 -130 76 216451 Bf1g2 Qa3d6 c5 Qd6d5 Bg2h3 Nc6b4 Qc2f5
      43.790: < ChessKISS
      43.790: < version 1.8a 21/12/21
      43.790: < 64 bits
      43.790: <
      43.790: < Type "help" for a list of available commands
      43.790: < 0
      43.790: < 0
      43.790: < 0
      43.790: < 0
      43.790: < 0
      43.790: < 0
      43.790: < 0
      43.790: < 0
      43.790: < 0
      43.790: < 0
      43.790: < 0
      43.790: < 0
      43.805: < 0move Bf1g2
      93.289: > result 0-1 {Black wins on time}

      552.416: < 7 -28 65 183498 Rg1e1 f5 Nc3d5 Be6xd5 e4xd5 Be7f6 Kh1g1
      552.416: < 0
      552.416: < 0
      552.416: < 0
      552.416: < 0
      552.416: < 0
      552.416: < 0
      552.416: < 0
      552.416: < 0
      552.416: < 0
      552.416: < 0
      552.416: < 0
      552.416: < 0
      552.416: < 0
      552.416: < 0
      552.416: < 0
      552.416: < 0
      552.416: < 0
      552.416: < 0
      552.416: < 0
      552.416: < 0
      552.416: < 0
      552.416: < 0
      552.416: < 0
      552.416: < 0
      552.416: < 0
      552.416: < 0
      552.416: < 0
      552.416: < 0
      552.416: < 0
      552.416: < 0
      552.416: < 0
      552.431: < 0
      552.431: < 0
      552.431: < 0
      552.431: < 0
      552.431: < 0
      552.431: < 0
      552.431: < 0
      552.431: < 0
      552.431: < 0
      552.431: < 0
      552.431: < 0
      552.431: < 0move Rg1e1
      593.491: > result 0-1 {Black wins on time}

      0.000: - Starting server: ChessKiss18b-64.exe
      0.031: - Priority class set to normal
      0.031: - Thread priority set to normal
      0.047: > xboard
      0.047: > protover 2
      1.451: < feature myname="ChessKISS 1.8a" usermove=1 setboard=1 colors=0 analyze=1 done=1 san=1
      1.451: > accepted myname
      1.451: > accepted usermove
      1.451: > accepted setboard
      1.451: > rejected colors
      1.451: > rejected analyze
      1.451: > accepted done
      1.451: > new
      1.451: > force
      1.451: > level 0 1 1
      1.451: > post
      1.451: > easy
      1.451: > usermove c2c4
      1.451: > usermove g7g6
      1.451: > usermove d2d4
      1.451: > usermove f8g7
      1.451: > usermove g2g3
      1.451: > usermove c7c6
      1.451: > accepted san
      2.808: < ChessKISS
      2.808: < version 1.8a 21/12/21
      2.808: < 64 bits
      2.808: <
      2.808: < Type "help" for a list of available commands
      2.824: < Exception EAbort in module ChessKiss18b-64.exe at 0000000000385BDB.
      2.824: < Operation aborted.

      Delete