New engine: Caissa

Discussion of anything and everything relating to chess playing software and machines.

Moderator: Ras

Witek
Posts: 87
Joined: Thu Oct 07, 2021 12:48 am
Location: Warsaw, Poland
Full name: Michal Witanowski

Re: New engine: Caissa

Post by Witek »

Rubinus wrote: Tue Oct 26, 2021 10:38 pm I already found the net, very old, from 12.10.2020?
Yes, it's this one: https://tests.stockfishchess.org/api/nn ... ed1da.nnue
Rubinus wrote: Tue Oct 26, 2021 9:59 pm I made a makeshift logo from this image, but maybe someone has some rights to this image...
Image
Well, I'm sure someone will create a logo for you, like Graham Banks.
Image
Wow, nice. I didn't think about logo yet. I'll probably figure something out, but that's a good starting point.
Author of Caissa Chess Engine: https://github.com/Witek902/Caissa
User avatar
Rubinus
Posts: 1207
Joined: Thu Jan 18, 2007 4:05 pm
Location: Prague
Full name: Pavel Háse

Re: New engine: Caissa

Post by Rubinus »

Witek wrote: Tue Oct 26, 2021 11:56 pm Yes, it's this one: https://tests.stockfishchess.org/api/nn ... ed1da.nnue
More lots added to the file.
1x time overrun in won position - against YACE, 2x lost draw ending - against SOS.
I'll try 0.2 overnight, probably against YACE.
games

The network you are using has already been used here.
Caissa 0.1 - Nimzo 7.32 3:4=5 (Same score, so I guess there was no problem in the other network.)
Caissa 0.1 - YACE Paderborn 2:5=5 (One lot got turned around due to time, and I was browsing the internet on that machine during some of the lots. In theory it shouldn't matter, there are 6 cores, but who knows.)
Caissa 0.1 - SOS 5 for Arena 2:2 (Two bad ends in the Black defence, could have been a point better.)
Witek
Posts: 87
Joined: Thu Oct 07, 2021 12:48 am
Location: Warsaw, Poland
Full name: Michal Witanowski

Re: New engine: Caissa

Post by Witek »

Rubinus wrote: Thu Oct 28, 2021 11:34 am
Witek wrote: Tue Oct 26, 2021 11:56 pm Yes, it's this one: https://tests.stockfishchess.org/api/nn ... ed1da.nnue
More lots added to the file.
1x time overrun in won position - against YACE, 2x lost draw ending - against SOS.
I'll try 0.2 overnight, probably against YACE.
games

The network you are using has already been used here.
Caissa 0.1 - Nimzo 7.32 3:4=5 (Same score, so I guess there was no problem in the other network.)
Caissa 0.1 - YACE Paderborn 2:5=5 (One lot got turned around due to time, and I was browsing the internet on that machine during some of the lots. In theory it shouldn't matter, there are 6 cores, but who knows.)
Caissa 0.1 - SOS 5 for Arena 2:2 (Two bad ends in the Black defence, could have been a point better.)
Can you verify that the engine has realy loaded NNUE? There should be "NNUE Loaded" line present in the output. In version 0.2 I included the network and implemented automatic loading. In version 0.1 you had to specify NNUE path via "EvalFile" UCI option.

I was testing against Arasan (15m+10s) over the night and this was the result:

Code: Select all

Score of Caissa 0.2 vs Arasan 23.0.1: 17 - 39 - 64  [0.408] 120
Both engines were using NNUE and 6-man Syzygy tablebases.
Author of Caissa Chess Engine: https://github.com/Witek902/Caissa
User avatar
Sylwy
Posts: 4813
Joined: Fri Apr 21, 2006 4:19 pm
Location: IAȘI - the historical capital of MOLDOVA
Full name: Silvian Rucsandescu

Re: New engine: Caissa

Post by Sylwy »

An interesting chess engine. A question: does the engine alternately use HCE and NNUE evaluation for each move? The speed is sometimes too high for a pure NNUE evaluation. It already looks like a very elaborate engine. Congratulations !

Image

[pgn]
[Event "NN Test157"]
[Site "ISR 3"]
[Date "2021.10.28"]
[Round "1"]
[White "Gaviota-v1.0-win64-AVX"]
[Black "Caissa_0.2_x64"]
[Result "0-1"]
[BlackElo "2200"]
[ECO "D47"]
[Opening "Semi-Slav"]
[Time "21:01:56"]
[Variation "Meran, Capablanca, 8...Bb7 9.O-O"]
[WhiteElo "2200"]
[TimeControl "240+2"]
[Termination "adjudication"]
[PlyCount "141"]
[WhiteType "program"]
[BlackType "program"]

1. d4 d5 2. c4 c6 3. Nc3 Nf6 4. e3 e6 5. Nf3 Nbd7 6. Bd3 dxc4 7. Bxc4 b5 8.
Be2 Bb7 {(Bc8-b7 O-O Bf8-e7 e3-e4 b5-b4 Bc1-e3 b4xc3 b2xc3 Qd8-c7 a2-a4
c6-c5 d4xc5) -0.37/15 10} 9. O-O Be7 {(Bf8-e7 a2-a3 b5-b4 a3xb4 O-O Bc1-d2
Ra8-c8 b2-b3 c6-c5 b4xc5 Bb7xf3 Be2xf3 a7-a6) -0.29/16 12} 10. e4 b4
{(b5-b4 e4-e5 b4xc3 e5xf6 Nd7xf6 b2xc3 O-O Ra1-b1 Qd8-c8 Qd1-b3 Bb7-a6
c3-c4 Ra8-b8 Qb3xb8 Qc8xb8 Rb1xb8) -0.11/16 6} 11. e5 bxc3 {(b4xc3 e5xf6
Nd7xf6 b2xc3 O-O Ra1-b1 Qd8-c8 Qd1-b3 Bb7-a6 Be2xa6 Qc8xa6 Qb3-b7 Qa6xa2
Bc1-g5 Be7-d6 Bg5xf6 g7xf6) -0.08/17 12} 12. exf6 Nxf6 {(Nd7xf6 b2xc3 O-O
Ra1-b1 Qd8-c8 Qd1-b3 Bb7-a6 Be2xa6 Qc8xa6 Qb3-b7 Qa6xb7 Rb1xb7 Be7-d6 g2-g3
c6-c5 Kg1-g2 c5xd4) +0.02/17 10} 13. bxc3 O-O {(O-O Ra1-b1 Qd8-c8 Qd1-b3
Bb7-a6 c3-c4 c6-c5 Bc1-f4 c5xd4 Nf3xd4 Rf8-d8 Qb3-e3 Ba6xc4 Be2xc4 Qc8xc4
Qe3xe6) -0.59/16 23} 14. Rb1 Qc8 {(Qd8-c8 Qd1-b3 Bb7-a6 c3-c4 Ra8-b8 Qb3xb8
Qc8xb8 Rb1xb8 Rf8xb8 Nf3-e5 Rb8-c8 Bc1-e3 Nf6-d5 c4xd5 Ba6xe2 Ne5xc6)
-0.26/16 5} 15. Qb3 Ba6 {(Bb7-a6 c3-c4 Ra8-b8 Qb3xb8 Qc8xb8 Rb1xb8 Rf8xb8
Nf3-e5 Rb8-c8 Be2-f3 Be7-d6 Ne5xc6 Ba6xc4 Nc6xa7 Rc8-c7 Bc1-d2) -0.31/16 9}
16. Bxa6 Qxa6 {(Qc8xa6 Nf3-e5 Be7-d6 Qb3-c4 Qa6xc4 Ne5xc4 Rf8-d8 Nc4xd6
Rd8xd6 Bc1-e3 Rd6-d7 h2-h3 h7-h5 Rf1-c1 Ra8-c8 c3-c4 Kg8-h7) -0.47/17 6}
17. Ne5 Bd6 {(Be7-d6 Qb3-c4 Qa6xc4 Ne5xc4 Bd6-c7 Rb1-b7 Nf6-d5 Bc1-d2
Bc7-f4 Nc4-e3 Nd5-b6 c3-c4 Rf8-b8 Rf1-c1 Rb8xb7 d4-d5) -0.25/17 9} 18. Qc4
Qa5 {(Qa6-a5 Ne5xc6 Qa5-c7 Bc1-g5 Nf6-d5 Nc6-e7+ Nd5xe7 Qc4xc7 Bd6xc7
Bg5xe7 a7-a6) +0.24/15 5} 19. Bf4 {(19.Bf4 Rfc8 20.Qb3 Rcb8 21.Qc4 Rc8)
0.00/16 13} Rfc8 {(Rf8-c8 Qc4-b3 Qa5-c7 Ne5xc6 Bd6xf4 Qb3xe6 f7xe6 Rb1-b8
e6-e5 a2-a3 Kg8-h8 Nc6xe5) +0.81/15 6} 20. Rfc1 {(20.Rfc1 Nd5 21.Bg3 c5
22.dxc5 Rxc5 23.Qe4 Qa6 24.c4 Nb6 25.Rb3 Qxa2 26.Nxf7 Qxb3 27.Nxd6 Rf8
28.Qxe6+ Kh8) -0.17/16 15} Nd5 {(Nf6-d5 Bf4-g3 c6-c5 a2-a4 Bd6xe5 Bg3xe5
c5xd4 Qc4xd4 f7-f6 Rb1-b5 Qa5-a6 Be5-f4 Qa6-c6 c3-c4 Nd5-c3) +1.03/15 7}
21. Bg3 {(21.Bg3 c5 22.a4 <>>) -0.26/16 7} c5 {(c6-c5 a2-a4 f7-f6 Rb1-b5
Qa5-d8 Qc4-e2 f6xe5 Bg3xe5 c5xd4 f2-f3 d4xc3 Be5xg7) +0.81/15 9} 22. Rb7
{(22.Rb7 Qa3 23.Rf1 cxd4 24.Qxd4 Qa6 25.Nxf7 Be7 26.Rxe7 Nxe7 27.Nd6 Rc6
28.Qe4 Qxa2 29.c4 Kh8) -0.35/16 8} Qa3 {(Qa5-a3 Rc1-e1 c5xd4 Qc4xd4 Bd6xe5
Bg3xe5 Qa3xc3 Qd4xc3 Nd5xc3 Be5xc3 Rc8xc3 g2-g3 g7-g6 Re1-b1 Rc3-c5)
+1.39/15 8} 23. Rf1 {(23.Rf1 Be7 24.Qe2 Qxc3 25.dxc5 Rxc5 26.Rd1 Qc2 27.Qe1
Nc3 <>>) -0.17/16 7} Qxc3 {(Qa3xc3 Qc4-e2 Bd6-e7 d4xc5 Qc3xc5 Rf1-d1 g7-g6
Qe2-g4 f7-f6 a2-a3 f6xe5 Qg4xe6+ Kg8-f8 Bg3xe5) +0.46/14 7} 24. Qe2
{(24.Qe2 Be7 25.dxc5 Rxc5 26.Qh5 Rf8 27.Rxa7 Rc7 28.Rxc7 Nxc7 29.a4 f6
30.Nd7 Rd8 31.Rd1 Nd5) -0.14/16 6} Be7 {(Bd6-e7 d4xc5 Rc8xc5 h2-h4 Qc3-c2
Qe2-g4 Ra8-c8 Rb7xa7 Rc5-c3 a2-a4 Nd5-f6 Qg4-f4 Be7-d6) +0.97/15 7} 25. Qh5
{(25.Qh5 g6 26.Qh3 Qxd4 27.Nxf7 Kxf7 28.Re1 Kf8 29.Qxe6 Re8 30.Bd6 c4
31.Re4 Qa1+ 32.Re1 Qd4) 0.00/17 6} Rf8 {(Rc8-f8 Ne5-d7 Qc3xd4 Nd7xf8 Kg8xf8
Qh5xh7 c5-c4) +0.46/15 6} 26. dxc5 {(26.dxc5 Nf6 27.Qg5 Bxc5 28.Rc1 Qa5
29.Rxf7 Rxf7 30.Nxf7 Kxf7 31.Qxc5 Qxc5 32.Rxc5 Rd8 33.Rc7+ <TT>) -0.01/16
8} Nf6 {(Nd5-f6 Qh5-g5 Qc3xc5 Rf1-c1 Nf6-d5 Rc1xc5 Be7xg5 Ne5-c6 h7-h6
h2-h4 Bg5-f6 Bg3-d6 Rf8-e8 a2-a4 Bf6xh4 Rb7xa7) +0.93/16 7} 27. Qg5
{(27.Qg5 Bxc5 28.Rc1 Qa5 29.Rxf7 Rxf7 30.Nxf7 Ne4 31.Nh6+ Kh8 32.Qf4 Nxg3
33.Nf7+ Kg8 34.Qxg3 Rf8 35.Nh6+ Kh8 36.Ng4 <TT>) +0.04/17 8} Qxc5 {(Qc3xc5
Rf1-c1 Nf6-d5 Rc1xc5 Be7xg5 Ne5-c6 Rf8-c8 a2-a4 a7-a5 Bg3-d6 Bg5-f6 g2-g3
h7-h6 h2-h4 h6-h5 Rc5xa5 Ra8xa5) +1.03/17 11} 28. Rc1 {(28.Rc1 Rad8 29.h4
Ne4 30.Rxc5 Bxg5 31.Rcc7 Bf6 32.Nxf7 Rd3 33.Kh2 Nxg3 34.fxg3 a6 35.a4 Bd4)
-0.05/16 6} Nd5 {(Nf6-d5 Rc1xc5 Be7xg5 Ne5-c6 Rf8-c8 Bg3-d6 a7-a5 a2-a4
h7-h6 g2-g3 Ra8-a6 Nc6-b8 h6-h5 Rc5xc8+ Bg5-d8) +0.84/17 8} 29. Qd2
{(29.Qd2 Qa3 30.Nc6 Rfc8 31.Nxe7+ Nxe7 32.Rd1 <>>) +0.01/17 7} Qa3 {(Qc5-a3
h2-h3 Be7-b4 Qd2-c2 Qa3-a6 Qc2-c6 Qa6xc6 Ne5xc6 a7-a5 Rc1-c4 Rf8-c8 a2-a4
h7-h6 Rb7-d7 f7-f6 Kg1-h2) +1.87/16 7} 30. Nc6 {(30.Nc6 Bf6 31.Rb3 <>>)
-0.36/16 9} Bf6 {(Be7-f6 Bg3-e5 Bf6xe5 Nc6xe5 Rf8-c8 Ne5-c6 Qa3-a6 Rb7xa7
Ra8xa7 Nc6xa7 Rc8-a8 Na7-c6 h7-h6 h2-h3 Qa6xa2) +1.94/15 5} 31. Rc2
{(31.Rc2 Qa6 32.Rd7 Qb5 33.Rd6 a5 34.h3 Rfc8 <>>) -0.37/15 6} Qa4 {(Qa3-a4
h2-h3 Rf8-c8 Qd2-c1 h7-h6 Kg1-h2 Bf6-g5 f2-f4 Bg5-f6 Rb7-d7 Nd5-c3 Nc6-d8
e6-e5 f4xe5 Qa4xd7) +2.77/15 12} 32. h3 {(32.h3 Rfc8 33.Qc1 a6 34.Kh2 <>>)
-0.45/15 6} Rfc8 {(Rf8-c8 Qd2-c1 h7-h6 Kg1-h2 Bf6-g5 f2-f4 Bg5-f6 a2-a3
h6-h5 Rc2-c4 Qa4-a6 Rb7-d7 Qa6-b5) +2.53/15 5} 33. Qc1 {(33.Qc1 h6 34.Kh2
Bg5 35.f4 Bf6 36.a3 Qa6 37.Rd7 Nc3 38.Rxc3 Bxc3 39.Ne7+ Kf8 40.Nxc8 Rxc8)
-0.49/15 2} h6 {(h7-h6 Kg1-h2 Bf6-g5 f2-f4 Bg5-f6 a2-a3 h6-h5 h3-h4 Qa4-e4
Rc2-c4 Qe4-f5 Rb7-d7 Nd5-b6 Rd7xa7 Nb6xc4 Nc6-e7+) +3.21/16 9} 34. h4
{(34.h4 Bxh4 35.Bxh4 Qxh4 36.Rd7 <>>) -0.69/15 5} Bxh4 {(Bf6xh4 Bg3xh4
Qa4xh4 Rb7xa7 Ra8xa7 Nc6xa7 Rc8-d8 Rc2-c8 Rd8xc8 Qc1xc8+) +2.92/13 5} 35.
Bxh4 {(35.Bxh4 Qxh4 36.Rd7 a6 37.a4 Qf6 38.Rc5 Kh7 39.a5 g6 40.g3 <>>)
-0.65/16 7} Qxh4 {(Qa4xh4 Rb7-d7 Qh4-f6 a2-a4 Rc8-e8 Nc6xa7 Nd5-f4 g2-g3
Re8-d8 Rd7xd8+ Qf6xd8) +4.25/15 4} 36. Rd7 {(36.Rd7 a6 37.a4 Qg5 38.Qd1 Qf6
39.Qc1 <>>) -0.73/15 5} Qf6 {(Qh4-f6 a2-a4 Rc8-e8 Nc6xa7 Nd5-f4 g2-g3
Nf4-h3+ Kg1-g2 Nh3-g5 Qc1-f4 Qf6-g6 Rc2-c5 Ng5-e4 Rc5-c7 Kg8-h7) +3.58/15
4} 37. Rc5 {(37.Rc5 Kh8 38.a4 a5 39.Rb7 Kh7 40.Rd7 <>>) -0.80/15 6} Kh8
{(Kg8-h8 g2-g3 Nd5-b6 Rd7xa7 Ra8xa7 Nc6xa7 Rc8-a8 Rc5-c7 Qf6-f3 Qc1-c6
Qf3xf2+ Kg1xf2 Nb6-d5) +4.08/15 7} 38. a3 {(38.a3 a5 39.Rb7 a4 40.Rd7 Kg8
41.Rc2 Kh7 42.Rc4 g6 43.Rc5 Ra6 44.Ne5 Rxc5 45.Qxc5 <>>) -0.93/15 6} a5
{(a7-a5 g2-g3 Qf6-a1 Qc1xa1 Ra8-b8 f2-f3 Nd5-f4 Kg1-h2 f7-f6 a3-a4 Nf4-d5
Kh2-g1 h6-h5) +4.15/16 8} 39. Rb7 {(39.Rb7 Kh7 40.Qb1+ g6 41.g3 <>>)
-1.00/16 22} Rf8 {(Rc8-f8 Qc1-d1 Ra8-c8 Qd1-c2 Rf8-g8 g2-g3 Nd5-e7 Nc6xe7
Rc8xc5 Qc2xc5 Qf6-a1+ Kg1-h2 Rg8-d8) +4.60/15 16} 40. a4 {(40.a4 Rfc8
41.Rc4 Kg8 42.Rc5 Kh7 43.Qb1+ <TT>) -0.80/16 4} Rfc8 {(Rf8-c8 Qc1-c2 Nd5-f4
g2-g3 Nf4-h3+ Kg1-g2 Nh3-g5 Rb7-b3 h6-h5 f2-f3 Ra8-a6) +3.76/14 5} 41. Rc4
{(41.Rc4 Kg8 42.Rc5 Kh7 43.g3 <>>) -0.93/16 11} g5 {(g7-g5 Nc6xa5 Rc8xc4
Na5xc4 Ra8-c8 a4-a5 Rc8-b8 Rb7xb8+ Kh8-h7 f2-f3 h6-h5) +2.98/15 4} 42. Qb1
{(42.Qb1 Kg7 43.Qd1 <>>) -0.95/14 4} Kg7 {(Kh8-g7 Qb1-e4 Rc8-c7 Rb7xc7
Qf6xf2+ Kg1xf2 Nd5xc7) +3.45/15 4} 43. g3 {(43.g3 Ra6 <>>) -0.67/15 4} Rg8
{(Rc8-g8 Qb1-e1 Ra8-c8 Nc6xa5 h6-h5 Na5-c6 h5-h4 Qe1-e5 Rc8xc6 Qe5xf6+
Nd5xf6 Rc4xc6 Kg7-g6) +3.25/14 3} 44. Kg2 {(44.Kg2 Rgc8 45.Qb3 <>>)
-0.67/14 4} Rge8 {(Rg8-e8 Qb1-e4 h6-h5 Nc6xa5 Ra8xa5 Rb7-b3 Re8-e7 Qe4-d4
g5-g4 f2-f3 g4xf3+ Kg2-g1) +2.76/14 3} 45. Qe1 {(45.Qe1 h5 46.Ne5 Re7
47.Rb5 h4 <>>) -0.71/14 4} Rac8 {(Ra8-c8 Qe1-e4 e6-e5 Qe4xd5 Rc8xc6 Rc4xc6
Qf6xf2+ Kg2xf2 g5-g4) +2.81/14 4} 46. Qxa5 {(46.Qxa5 Re7 47.Rb3 Rec7 48.Qb5
h5 49.a5 e5 50.Qxd5 Rxc6 51.Rf3 Rxc4 52.Rxf6 Kxf6 53.a6) -0.41/15 4} h5
{(h6-h5 Rb7-b3 h5-h4 g3xh4 Nd5-f4+ Kg2-f1 e6-e5 Qa5-c3 Re8-h8 Qc3-f3 Rh8xh4
Qf3-e2) +3.81/15 5} 47. Qd2 {(47.Qd2 Re7 48.Rb5 <>>) -0.56/15 7} h4 {(h5-h4
a4-a5 h4xg3 f2xg3 Nd5-e7 Kg2-h2 Re8-h8+ Kh2-g1 Rc8xc6 Rc4xc6 Ne7xc6 Qd2-b2)
+2.80/14 3} 48. a5 {(48.a5 Rh8 49.Qb2 Qxb2 50.Rxb2 h3+ 51.Kh2 Ne7 52.Rbc2
Nxc6 53.Rxc6 Rxc6 54.Rxc6 g4 55.a6) -0.69/13 4} Rh8 {(Re8-h8 Rc4-c5 h4xg3
f2xg3 Qf6-h6 Qd2-b2+ Kg7-g8 Kg2-f3 Qh6-h1+ Kf3-f2 Rh8-h2+) +4.86/13 2} 49.
Qb2 {(49.Qb2 hxg3 50.Qxf6+ Kxf6 51.Kxg3 Rh4 52.Rc2 Rch8 53.Kf3 Rh3+ 54.Ke2
Nf4+ 55.Kd1 Rf3 56.Rd2 Rh1+ 57.Kc2 <>>) -1.08/15 16} hxg3 {(h4xg3 Qb2xf6+
Kg7xf6 Kg2xg3 Rh8-h4 Rc4-c5 Rc8-h8 Rc5xd5 e6xd5 a5-a6 Rh4-h3+ Kg3-g2
Rh3-h2+ Kg2-g1 Rh2-h1+ Kg1-g2) +6.26/16 4} 50. Kxg3 {(50.Kxg3 Rh4 51.Qxf6+
Kxf6 52.Rc2 Rch8 53.Kf3 Ra4 54.Ke2 Rh3 55.Rd7 Ra1 56.Kd2 g4 57.Rc5 Ra2+
58.Ke1) -1.20/15 3} Rh4 {(Rh8-h4 Qb2xf6+ Kg7xf6 Rc4-c5 Rc8-h8 Rc5xd5 e6xd5
a5-a6 Rh4-h3+ Kg3-g2 Rh3-a3 Rb7xf7+ Kf6xf7 Nc6-d8+ Rh8xd8 a6-a7) +6.21/16
4} 51. Qxf6+ {(51.Qxf6+ Kxf6 52.Rc2 Rch8 53.Kf3 Ra4 54.Ke2 Rh3 55.Kd2 Ra1
56.Rb8 Nf4 57.Rd8 g4 58.Rd7) -1.21/15 1} Kxf6 {(Kg7xf6 Rc4-c5 Rc8-h8 Rc5xd5
e6xd5 a5-a6 Rh4-a4 Rb7-b6 Kf6-e6 f2-f3 Rh8-c8 Nc6-a7+ Ke6-d7 Na7xc8 Kd7xc8)
+6.76/17 2} 52. Rc2 {(52.Rc2 Rch8 53.Kf3 g4+ 54.Ke2 g3 55.Kf3 Rh2 56.Nb4
Nxb4 57.Rxb4 g2 <>> tb=1) -2.66/15 3} Rch8 {(Rc8-h8 Kg3-f3 Rh4-a4 Rc2-b2
Rh8-c8 Rb7-b3 Rc8xc6 Kf3-g2 g5-g4 Rb3-b8 Nd5-f4+ Kg2-g1 Ra4-a1+ Kg1-h2
g4-g3+ f2xg3) +8.88/16 2} 53. Kf3 {(53.Kf3 g4+ 54.Ke2 g3 55.Kf3 Rf4+ 56.Kg2
Rg8 57.Ne7 Nxe7 58.fxg3 Rfg4 59.Rc3 Nf5 60.Rbb3 Ra4 61.Rb5 Ra2+ 62.Kh3)
-3.56/15 3} Ra4 {(Rh4-a4 Kf3-e2 Rh8-c8 Ke2-d2 Ra4-a3 f2-f3 Nd5-f4 a5-a6
Ra3-a1 a6-a7 Rc8-h8 Rb7xf7+ Kf6xf7 Nc6-e5+ Kf7-e8 Rc2-c7) +8.87/16 3} 54.
Ke2 {(54.Ke2 Nf4+ 55.Ke3 Rh3+ 56.Kd2 Nd3 57.Rb3 Nxf2 58.Rxh3 Nxh3 59.Kc3
Nf4 60.Kb3 Ra1 61.Rc4 Nd5 62.Rd4 Rc1 tb=1) -2.28/16 4} g4 {(g5-g4 Rb7-b2
Rh8-h1 Ke2-d2 Kf6-g5 Nc6-e5 Ra4-a1 Ne5xf7+ Kg5-f6 Rb2-b5 Kf6xf7 f2-f4)
+8.74/15 3} 55. Rb3 {(55.Rb3 Rh2 56.Rg3 Nf4+ 57.Ke3 Kg5 58.Rg1 <>>)
-2.89/15 9} Rh1 {(Rh8-h1 Rc2-b2 Nd5-f4+ Ke2-d2 Rh1-f1 Rb3-g3 Nf4-d5 Kd2-e2
Rf1-c1 Ke2-d2 Rc1xc6 Rg3-f3+ g4xf3 Kd2-d1 Ra4xa5) +9.66/15 3} 56. Rg3
{(56.Rg3 Rh2 57.a6 Rxa6 58.Rxg4 Ra3 59.Rcc4 Ra2+ 60.Kd3 Rhxf2 61.Kd4 Rfd2+
62.Kc5 Ne3 63.Rcf4+ Nf5 64.Rg8 Rdc2+ <<>) -2.79/14 4} Kg5 {(Kf6-g5 Rg3-b3
Rh1-h2 Rc2-b2 f7-f5 Rb3-b8 Nd5-f4+ Ke2-d1 Rh2-h1+ Kd1-c2 Ra4-c4+ Kc2-d2
Rc4xc6 Rb2-b6 Rc6xb6) +10.15/15 4} 57. Rb3 {(57.Rb3 Kf6 58.Rg3 <TT>)
-2.79/14 3} Rh2 {(Rh1-h2 Rc2-b2 Nd5-f4+ Ke2-d1 f7-f5 Rb3-b4 Ra4-a1+ Rb2-b1
Ra1-a3 Rb1-b2 Rh2-h1+ Kd1-d2 Nf4-d3) +10.13/13 2} 58. Rcb2 {(58.Rcb2 Kf5
<>>) -2.70/14 3} f5 {(f7-f5 Ke2-d1 Rh2-h1+ Kd1-e2 Nd5-f4+ Ke2-d2 Rh1-f1
Rb2-c2 Rf1xf2+ Kd2-c1 Rf2xc2+ Kc1-b1 Rc2xc6 Rb3-b5) +10.07/14 1} 59. Rb8
{(59.Rb8 Re4+ 60.Kd1 Nc3+ 61.Kc1 Ne2+ 62.Kd1 Rxf2 63.Rc2 Rf1+ 64.Kd2 Nd4
65.Nxd4 Rxd4+ 66.Ke2 Ra1 67.Rc5 Re4+ 68.Kf2 Ra2+ 69.Kf1 g3 70.Rg8+ Kh4
tb=9) -3.17/14 14} Nf4+ {(Nd5-f4+ Ke2-d1 Ra4-a1+ Rb2-b1 Rh2xf2 Rb1xa1
Rf2-f1+ Kd1-c2 Kg5-h4 a5-a6 Rf1xa1) +10.43/11 2} 60. Kd1 {(60.Kd1 Ra1+
61.Rb1 Ra2 62.R1b2 Rxb2 63.Rxb2 g3 64.fxg3 Rxb2 65.gxf4+ Kxf4 66.a6 Rb1+
67.Kc2 Ra1) -3.25/13 1} Ra1+ {(Ra4-a1+ Rb2-b1 Ra1xb1+ Rb8xb1 Rh2xf2 a5-a6
g4-g3 Rb1-b3 Kg5-h4 Rb3xg3 Kh4xg3 a6-a7 Rf2-a2 a7-a8Q) +9.76/14 2} 61. Rb1
{(61.Rb1 Ra2 62.R1b2 Rxb2 63.Rxb2 g3 64.fxg3 Rxb2 65.gxf4+ Kxf4 66.a6 Ke3
67.a7 Ra2 68.Kc1 f4 69.Kb1 Ra3 tb=1) -3.35/16 2} Ra2 {(Ra1-a2 Rb1-b2 Ra2xb2
Rb8xb2 g4-g3 f2xg3 Rh2xb2 a5-a6 Nf4-d5 a6-a7 Nd5-c7 Nc6-d4 Rb2-b1+ Kd1-c2
Rb1-a1 Nd4xe6+) +9.73/16 1} 62. R1b2 {(62.R1b2 Rxb2 63.Rxb2 g3 64.fxg3 Rxb2
65.gxf4+ Kxf4 66.a6 Ra2 67.a7 e5 68.Kc1 e4 69.Kd1 e3 70.Ke1 Ke4 71.Kf1 f4
tb=240) -4.76/18 4} g3 {(g4-g3 f2xg3 Ra2xb2 Rb8xb2 Rh2xb2 a5-a6 Nf4-d5
a6-a7 Nd5-c7 Nc6-d4 Nc7-a8 Kd1-c1 Rb2-b7 Nd4xe6+ Kg5-f6) +10.43/15 1} 63.
fxg3 {(63.fxg3 Rhxb2 64.Rxb2 Rxb2 65.gxf4+ Kxf4 66.Kc1 Rb5 67.Kd2 Rc5
68.Nd4 Rxa5 69.Nxe6+ Kg4 70.Kd1 Rd5+ 71.Kc1 Rd6 72.Ng7 f4 73.Ne8 Rc6+
74.Kd2 tb=3659) -5.44/18 11} Raxb2 {(Ra2xb2 Rb8xb2 Rh2xb2 g3-g4 Rb2-a2
g4xf5 e6-e5 a5-a6 Ra2xa6 Nc6-b4 Ra6-a5 f5-f6 Kg5xf6 Kd1-c2 Ra5-c5+ Kc2-b1)
+11.89/16 1} 64. gxf4+ {(64.gxf4+ Kxf4 65.Rxb2 Rxb2 66.Kc1 Rb5 67.Kd2 Rc5
68.Nd4 Rxa5 69.Nxe6+ Kg3 70.Ng5 f4 71.Ne4+ Kg2 72.Nf6 f3 73.Ng4 Ra2+ 74.Kd3
Ra3+ 75.Ke4 tb=3008) -5.90/17 3} Kxf4 {(Kg5xf4 Rb8xb2 Rh2xb2 Kd1-c1 Rb2-a2
Kc1-b1 Kf4-g3 Kb1xa2 f5-f4 Nc6-d4 Kg3-g4 a5-a6 e6-e5) +13.31/15 1} 65. Rxb2
{(65.Rxb2 Rxb2 66.Kc1 Rb5 67.Kd2 Rc5 68.Nd4 Rxa5 69.Nxe6+ Kg3 70.Ng5 f4
71.Ne4+ Kg2 72.Kd3 f3 73.Ke3 Ra3+ 74.Kf4 f2 75.Nd2 Ra4+ 76.Ke3 tb=13173)
-6.75/18 5} Rxb2 {(Rh2xb2 Kd1-c1 Rb2-h2 a5-a6 Rh2-a2 Nc6-b4 Ra2-a5 Kc1-c2
Kf4-g5 Kc2-c3 f5-f4 Kc3-b2 Kg5-f5 Nb4-c6 Ra5xa6 Nc6-d4+ Kf5-g4 Kb2-b1
e6-e5) +14.08/19 2} 66. Kc1 {(66.Kc1 Rb5 67.Kd2 Rc5 68.Nb8 <>> tb=4684)
-7.14/17 2} Rb5 {(Rb2-b5 Kc1-d2 Rb5-c5 Nc6-e7 Rc5xa5 Kd2-e1 Ra5-a1+ Ke1-f2
Ra1-a2+ Kf2-g1 Kf4-f3 Ne7-g6 Kf3-e4 Ng6-h8 Ra2-a3) +15.31/17 1} 67. Kd2
{(67.Kd2 Rc5 68.Nd4 <>> tb=9030) -7.52/16 3} Rc5 {(Rb5-c5 Nc6-b4 Rc5xa5
Kd2-e2 Ra5-a1 Ke2-f2 Ra1-a3 Kf2-g2 Kf4-e4 Nb4-c6 Ra3-a8 Kg2-g3 f5-f4+
Kg3-h3 Ra8-h8+ Kh3-g4 Rh8-g8+ Kg4-h3) +15.21/18 2} 68. Nd4 {(68.Nd4 Rxa5
69.Ke1 <>> tb=18461) -8.80/15 6} Rd5 {(Rc5-d5 Kd2-c3 Rd5xa5 Kc3-b4 Kf4-e4
Nd4-e2 Ra5-a1 Kb4-b3 Ke4-f3 Ne2-c3 f5-f4 Kb3-c2 Kf3-g2 Kc2-d2 Ra1-g1
Nc3-b1) +15.73/18 2} 69. Kc3 {(69.Kc3 Rxa5 70.Kb4 Re5 71.Kb3 Ke3 72.Nc2+
Ke4 73.Na3 f4 74.Kc3 f3 75.Nb1 Ke3 76.Na3 Rc5+ 77.Kb4 f2 78.Kxc5 f1=Q
79.Nc4+ Kf4 tb=15881) -9.71/17 3} Rxa5 {(Rd5xa5 Kc3-b4 Kf4-e4 Nd4-b3 Ra5-a8
Nb3-d2+ Ke4-e3 Nd2-c4+ Ke3-d4 Nc4-d2 Ra8-b8+ Kb4-a4 Rb8-h8 Nd2-f3+ Kd4-e3
Nf3-g1 Rh8-a8+) +15.72/17 1} 70. Kb4 {(70.Kb4 Re5 71.Nc2 Kg4 72.Kc4 f4
73.Kd4 Kf5 74.Na3 f3 75.Nc4 f2 76.Nxe5 f1=Q 77.Nc6 Qd1+ 78.Kc5 e5 79.Kb6
tb=40108) -10.87/17 3} Ra7 {(Ra5-a7 Kb4-b3 Ra7-b7+ Kb3-a3 Kf4-e4 Nd4-e2
Ke4-d3 Ne2-g3 Kd3-e3 Ng3-f1+ Ke3-e4 Nf1-d2+ Ke4-d5 Ka3-a4 f5-f4 Ka4-a3
Rb7-c7 Ka3-b2) +18.21/18 1} 71. Kb3 {(71.Kb3 Ke3 72.Nc6 Rc7 73.Ne5 Ke4
74.Ng6 f4 75.Nh4 f3 76.Nxf3 <>> tb=8155) -9.70/13 2 Arena Adjudication}
0-1
[/pgn]
User avatar
Rubinus
Posts: 1207
Joined: Thu Jan 18, 2007 4:05 pm
Location: Prague
Full name: Pavel Háse

Re: New engine: Caissa

Post by Rubinus »

Witek wrote: Thu Oct 28, 2021 3:42 pm Can you verify that the engine has realy loaded NNUE? There should be "NNUE Loaded" line present in the output. In version 0.2 I included the network and implemented automatic loading. In version 0.1 you had to specify NNUE path via "EvalFile" UCI option.

I was testing against Arasan (15m+10s) over the night and this was the result:

Code: Select all

Score of Caissa 0.2 vs Arasan 23.0.1: 17 - 39 - 64  [0.408] 120
Both engines were using NNUE and 6-man Syzygy tablebases.
1.Yes. But there is an error message.
Image
2.I know, I have an excel for that. I'll clip the engine output into excel first:
Image
And then output from Excel clip to the already created *.UCI file. There I manually overwrite some values, like threads=6, syzygy, hash. I just have to keep an eye on the "combo" type, Chessbase doesn't take text values there and you have to put in the positions in order from 0, but Caissa doesn't use that.
Image
I was just watching the speed during the day. It seems to be about 15% faster on 1cpu and then about three times faster when using cpu=6. If you tweaked something in the search then maybe 2800 might already be it. Maybe it will even play an honest result against Smarthink already. However, in the Chessbase environment it only updates nodes after completing some depth, so those estimates of mine may be inaccurate.
Witek
Posts: 87
Joined: Thu Oct 07, 2021 12:48 am
Location: Warsaw, Poland
Full name: Michal Witanowski

Re: New engine: Caissa

Post by Witek »

Sylwy wrote: Thu Oct 28, 2021 9:01 pm An interesting chess engine. A question: does the engine alternately use HCE and NNUE evaluation for each move? The speed is sometimes too high for a pure NNUE evaluation. It already looks like a very elaborate engine. Congratulations !
Thanks for testing!
Regarding your question: there's no alternating. The engine is always running HCE evaluation and if it's in -10...10 range, then it runs NNUE evaluation and interpolates both of them accordingly (the more drawish HCE, the more NNUE is taken into consideration). So if a position is totally winning/losing then NNUE is skipped completely (which probably happens quite offen in the search tree). Please note that HCE is very simple - it's basically material, PST and some pawn structure evaluation. There's no imbalance, king safety, etc. at all. This is something I need to improve in the future.
Author of Caissa Chess Engine: https://github.com/Witek902/Caissa
User avatar
Sylwy
Posts: 4813
Joined: Fri Apr 21, 2006 4:19 pm
Location: IAȘI - the historical capital of MOLDOVA
Full name: Silvian Rucsandescu

Re: New engine: Caissa

Post by Sylwy »

Witek wrote: Thu Oct 28, 2021 9:49 pm
Sylwy wrote: Thu Oct 28, 2021 9:01 pm An interesting chess engine. A question: does the engine alternately use HCE and NNUE evaluation for each move? The speed is sometimes too high for a pure NNUE evaluation. It already looks like a very elaborate engine. Congratulations !
Thanks for testing!
Regarding your question: there's no alternating. The engine is always running HCE evaluation and if it's in -10...10 range, then it runs NNUE evaluation and interpolates both of them accordingly (the more drawish HCE, the more NNUE is taken into consideration). So if a position is totally winning/losing then NNUE is skipped completely (which probably happens quite offen in the search tree). Please note that HCE is very simple - it's basically material, PST and some pawn structure evaluation. There's no imbalance, king safety, etc. at all. This is something I need to improve in the future.
Thank you !
Karlo Bala
Posts: 373
Joined: Wed Mar 22, 2006 10:17 am
Location: Novi Sad, Serbia
Full name: Karlo Balla

Re: New engine: Caissa

Post by Karlo Bala »

Witek wrote: Mon Oct 25, 2021 3:08 am Hi, my name is Michal and this is my first post on this forum.

I'd like to present you a new UCI chess engine - Caissa. I was developing it completely from scratch since March 2021 with zero chess programming knowledge before. At this moment it's around 2800 Elo (10+1), but I need to run some more games with different engines.
You will find sources and Windows release on Github: https://github.com/Witek902/Caissa.

It's a classic alpha-beta search engine with features like PVS, aspiration windows, quiescence search, shared transposition table, MultiPV, multithreading, late move reductions, futility prunning, SEE, MVV/LVA, killer/history heuristics, magic bitboards, Syzygy support, etc. For now I was mostly focusing on search and didn't pay much attention to evaluation - that's why I "borrowed" NNUE from Stockfish. I implemented my own neural network and trainer for it, but it's still in progress.

I was mainly inspired by this forum and Chess Programming Wiki, I took some ideas from Stockfish and Ethereal engines.

Looking forward to hearing some opinions from you :D

Cheers
I think the name Caissa for the chess engine has been in use since 1972. :wink:
Best Regards,
Karlo Balla Jr.
Guenther
Posts: 4718
Joined: Wed Oct 01, 2008 6:33 am
Location: Regensburg, Germany
Full name: Guenther Simon

Re: New engine: Caissa

Post by Guenther »

Witek wrote: Thu Oct 28, 2021 9:49 pm
Sylwy wrote: Thu Oct 28, 2021 9:01 pm An interesting chess engine. A question: does the engine alternately use HCE and NNUE evaluation for each move? The speed is sometimes too high for a pure NNUE evaluation. It already looks like a very elaborate engine. Congratulations !
Thanks for testing!
Regarding your question: there's no alternating. The engine is always running HCE evaluation and if it's in -10...10 range, then it runs NNUE evaluation and interpolates both of them accordingly (the more drawish HCE, the more NNUE is taken into consideration). So if a position is totally winning/losing then NNUE is skipped completely (which probably happens quite offen in the search tree). Please note that HCE is very simple - it's basically material, PST and some pawn structure evaluation. There's no imbalance, king safety, etc. at all. This is something I need to improve in the future.
You should at least give credit for using all of PeSTOs psq tables...practically you just recreated PeSTO with an SF nnue via Cfish code - not very inspiring.

forum3/viewtopic.php?f=2&t=68311&p=772515#p772515
https://rofchade.nl/?p=307
https://github.com/Witek902/Caissa/blob ... aluate.cpp
https://rwbc-chess.de

[Trolls n'existent pas...]
Witek
Posts: 87
Joined: Thu Oct 07, 2021 12:48 am
Location: Warsaw, Poland
Full name: Michal Witanowski

Re: New engine: Caissa

Post by Witek »

Rubinus wrote: Thu Oct 28, 2021 9:48 pm 1.Yes. But there is an error message.
Image
Don't worry about it - it failed to enable support for large memory pages. Probably need to get rid of that error message.
Karlo Bala wrote: Thu Oct 28, 2021 10:05 pm I think the name Caissa for the chess engine has been in use since 1972. :wink:
That one was spelled with "K" :wink:

Guenther wrote: Thu Oct 28, 2021 10:13 pm You should at least give credit for using all of PeSTOs psq tables...practically you just recreated PeSTO with an SF nnue via Cfish code - not very inspiring.
I didn't look into CFish code at all. But yeah, you're right, I wasn't paying too much attention to evaluation, I wanted to get something for starters and focus more on search.
Author of Caissa Chess Engine: https://github.com/Witek902/Caissa