Bricabrac plays its first real game against itself

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

Moderators: hgm, Dann Corbit, Harvey Williamson

Mike Sherwin
Posts: 852
Joined: Fri Aug 21, 2020 1:25 am
Location: Planet Earth, Sol system
Full name: Michael J Sherwin

Bricabrac plays its first real game against itself

Post by Mike Sherwin »

There is no protocol yet so it had to be played by hand and recorded with Arena. A protocol is next on the list. It was set to search depth 6 and it mostly played instantly to a maximum of less than 2 seconds. No timing code yet either. All it has is material and piece square tables from the CPW. Frankly, I could not remember what state Bric was in when I left it for a while. But now I seem to be back due to losing ~40 pounds and my memory is working a little better. More blood for my brain! Because of the subject Coding Adventure: Chess AI and how well that engine played with just PSTs I decided to try adding PSTs to Bric. And I'm glad I did because it played quite ok! After the protocol is working it will be posted to Github (or whatever) as soon as I figure out how to do that. But right now I'm going to try depth 7 and playing by hand against Minimax in basic by Chrilly Donninger and Dieter Steinwender. :D

[pgn][Event "Computer chess game"]
[Site "DESKTOP-HFVHK2B"]
[Date "2021.02.21"]
[Round "?"]
[White "Bric"]
[Black "Bric"]
[Result "1-0"]
[BlackElo "2400"]
[ECO "D00"]
[Opening "Queen's Pawn"]
[Time "14:22:05"]
[Variation "2.e3"]
[WhiteElo "2400"]
[TimeControl "0+20"]
[Termination "normal"]
[PlyCount "85"]
[WhiteType "human"]
[BlackType "human"]

1. d4 d5 2. e3 e6 3. Nc3 Nc6 4. Bb5 Bd7 5. Nf3 Nf6 6. Bxc6 Bxc6 7. Ne5 Bb4
8. Bd2 Qd6 9. O-O Kf8 10. a3 Bxc3 11. Bxc3 a5 12. Re1 h6 13. b4 a4 14. b5
Kg8 15. bxc6 bxc6 16. Bb4 Qd8 17. Nxc6 Qe8 18. Ne7+ Kh7 19. Qd3+ g6 20. f3
Qd7 21. Qc3 Ra6 22. e4 Ng8 23. Nxg8 Kxg8 24. exd5 Qxd5 25. f4 Rc6 26. Bc5
Ra6 27. Rab1 Ra8 28. Be7 Kg7 29. Re5 Qd7 30. Bh4 Rab8 31. Rxb8 Rxb8 32. d5
Kg8 33. dxe6 fxe6 34. Be1 Rb6 35. Rc5 Rb7 36. Qc4 Rb1 37. Kf1 Ra1 38. Rxc7
Qd6 39. Rc6 Qd5 40. Rc8+ Qd8 41. Rxd8+ Kf7 42. Qc7+ Kf6 43. Rf8# 1-0
[/pgn]
dkappe
Posts: 1621
Joined: Tue Aug 21, 2018 7:52 pm
Full name: Dietrich Kappe

Re: Bricabrac plays its first real game against itself

Post by dkappe »

Congratulations!
Fat Titz by Stockfish, the engine with the bodaciously big net. Remember: size matters. If you want to learn more about this engine just google for "Fat Titz".
Mike Sherwin
Posts: 852
Joined: Fri Aug 21, 2020 1:25 am
Location: Planet Earth, Sol system
Full name: Michael J Sherwin

Re: Bricabrac plays its first real game against itself

Post by Mike Sherwin »

dkappe wrote: Sun Feb 21, 2021 11:14 pm Congratulations!
Thanks! :D
[pgn][Event "Computer chess game"]
[Site "DESKTOP-HFVHK2B"]
[Date "2021.02.21"]
[Round "?"]
[White "Bric"]
[Black "Minimax"]
[Result "1/2-1/2"]
[BlackElo "2000"]
[ECO "C25"]
[Opening "Vienna"]
[Time "14:22:05"]
[Variation "2...d6"]
[WhiteElo "2400"]
[Termination "normal"]
[PlyCount "82"]
[WhiteType "human"]
[BlackType "program"]

1. e4 e5 {(e7e5 g1f3 g8f6 f3e5 f6e4 c2c4 c7c5) -0.09/7 3} 2. Nc3 d6 {(d7d6
g1f3 g8f6 d2d4 e5d4 f3d4 b8d7 f2f3 c7c6) +0.05/7 5} 3. Bb5+ c6 {(c7c6 b5a4
g8f6 g1f3 f8e7 d2d4 e5d4 f3d4 e8g8) +0.17/7 1} 4. Be2 Nf6 {(g8f6 g1f3 f8e7
e1g1 e8g8 d2d3 c6c5) +0.20/7 2} 5. d4 exd4 {(e5d4 d1d4 f8e7 g1f3 e8g8 e1g1
f8e8 f1e1) +0.15/7 7} 6. Qxd4 c5 {(c6c5 d4a4) +0.16/7 8} 7. Qe3 Be7 {(f8e7
g1f3 e8g8 e1g1 f6g4 e3f4 f8e8) +0.11/7 6} 8. Nf3 O-O {(e8g8 e1g1 a7a6 f1e1
f8e8 a2a3 b7b6) +0.07/7 3} 9. O-O Re8 {(f8e8 f1e1 a7a6 c1d2 f6g4 e3f4 b7b6)
+0.04/7 3} 10. Bb5 Nfd7 {(f6d7 c3d5 e7f8 c2c4 a7a6 b5a4 b7b6) +0.01/7 3}
11. Nd5 Bf8 {(e7f8 b5d3 a7a6 c2c4 b7b6 f1e1 d7e5) -0.02/7 4} 12. Qd3 a6
{(a7a6 c1g5 f7f6 b5c4 e8e6 g5h4 b7b6) +0.12/7 4} 13. Bg5 Qa5 {(d8a5 b5c4
b7b5 c4b3 c5c4 g5d2 a5d8) +0.09/7 2} 14. Bd2 Qd8 {(a5d8 d2g5 f7f6 b5c4 e8e6
g5h4 b7b6) +0.12/7 2} 15. Bg5 Qa5 {(d8a5 b5c4 b7b5 c4b3 c5c4 g5d2 a5d8)
+0.09/7 2} 16. Bd2 Qxb5 {(a5b5 d3b5 a6b5 d5c7 a8a2 a1a2 e8e4 c7b5) -0.02/7
1} 17. Qxb5 axb5 {(a6b5 d5c7 a8a2 a1a2 e8e4 c7b5 d6d5 f1e1) 0.00/7 0} 18.
Nc7 Rxa2 {(a8a2 a1a2 e8e4 c7b5 b7b6 b5c3 e4e6 f1e1) -0.20/7 1} 19. Nxe8
Rxa1 {(a2a1 f1a1 b8c6 d2e1 d7b6 e8c7 b5b4 a1a2) -0.94/7 2} 20. Rxa1 Nc6
{(b8c6 c2c3 d7e5 f3g5 b5b4 c3b4 c8d7 a1a8) -0.64/7 3} 21. Nc7 Nf6 {(d7f6
a1e1) -0.57/7 2} 22. Re1 b4 {(b5b4 d2g5 f6d7 g5h4 c6e5 f3d2 c5c4) -0.50/7
2} 23. Bg5 Ng4 {(f6g4 e1a1) -0.51/7 3} 24. Bf4 Nge5 {(g4e5 f3e5 d6e5 f4g3
c6d4 g3e5 d4c2 e1d1) -0.29/7 2} 25. Nxe5 dxe5 {(d6e5 f4e3 f7f5 f2f3 f5f4
e3f2 g8f7) -0.25/7 1} 26. Bd2 Nd4 {(c6d4 c2c4 b4c3 b2c3 d4b3 d2e3 f7f6
e1d1) -0.05/7 1} 27. c3 bxc3 {(b4c3 b2c3 f7f6 e1d1 g8f7 f2f3 b7b6 c3c4)
-0.04/7 0} 28. Bxc3 b5 {(b7b5 f2f3) +0.08/7 1} 29. Bxd4 exd4 {(e5d4 c7b5
c8a6 b5c7 a6b7 f2f4 c5c4) +0.21/7 0} 30. Nxb5 Bd7 {(c8d7 b5c7 f7f6 f2f4
c5c4 g1f2 d4d3) +0.20/7 1} 31. Na3 g5 {(g7g5 g2g3 g5g4 g1g2 d7e6 f2f4 c5c4)
+0.17/7 1} 32. h3 h5 {(h7h5 f2f3 h5h4 e1d1 d7a4 d1d2 f7f6) +0.20/7 1} 33.
Ra1 f6 {(f7f6 f2f3 g8f7 g2g4 h5h4 g1f2 f7e6) +0.30/7 1} 34. Nb1 Kf7 {(g8f7
b1d2 f7e6 f2f3 h5h4 g1f2 e6e5) +0.43/7 1} 35. Ra7 Ke6 {(f7e6 f2f3 h5h4 b1d2
d7b5 b2b3 f6f5) +0.47/7 0} 36. Nd2 Bd6 {(f8d6 d2b3 d4d3 f2f4 d7c6 f4g5
c6e4) +0.06/7 5} 37. Nc4 Bf8 {(d6f8 a7a6 e6f7 h3h4 d7b5 c4d6 f8d6 a6d6 g5h4
d6d8) +0.26/7 1} 38. Ra6+ Kf7 {(e6f7 h3h4 g5g4 f2f4 d7e6 a6a7 f7e8 a7a8
e8e7) +0.19/7 1} 39. Ra7 Ke6 {(f7e6 a7a6 e6f7 h3h4 d7b5 c4d6 f8d6 a6d6 g5h4
d6d8) +0.26/7 1} 40. Ra6+ Kf7 {(e6f7 h3h4 g5g4 f2f4 d7e6 a6a7 f7e8 a7a8
e8e7) +0.19/7 1} 41. Ra7 Ke6 {(f7e6 a7d7) 0.00/7 0 3-fold repetition}
1/2-1/2
[/pgn]

Played to depth 7. What a nice first game against a respectable opponent as an engine by Chrilly Donninger and Dieter Steinwender that is more complete than Bric. Okay, enough fun, back to work. 8-)
User avatar
mvanthoor
Posts: 1784
Joined: Wed Jul 03, 2019 4:42 pm
Location: Netherlands
Full name: Marcel Vanthoor

Re: Bricabrac plays its first real game against itself

Post by mvanthoor »

Mike Sherwin wrote: Sun Feb 21, 2021 11:07 pm There is no protocol yet so it had to be played by hand and recorded with Arena.
Congratulations; I look forward to testing the engine against Rustic when it has a protocol implemented :)
Author of Rustic, an engine written in Rust.
Releases | Code | Docs | Progress | CCRL
Mike Sherwin
Posts: 852
Joined: Fri Aug 21, 2020 1:25 am
Location: Planet Earth, Sol system
Full name: Michael J Sherwin

Re: Bricabrac plays its first real game against itself

Post by Mike Sherwin »

mvanthoor wrote: Mon Feb 22, 2021 12:06 am
Mike Sherwin wrote: Sun Feb 21, 2021 11:07 pm There is no protocol yet so it had to be played by hand and recorded with Arena.
Congratulations; I look forward to testing the engine against Rustic when it has a protocol implemented :)
Thanks! :D
Working on it now. I think that I'm going to stick with xboard/winboard because that is what I know.
Mike Sherwin
Posts: 852
Joined: Fri Aug 21, 2020 1:25 am
Location: Planet Earth, Sol system
Full name: Michael J Sherwin

Re: Bricabrac plays its first real game against itself

Post by Mike Sherwin »

Had trouble as always but Bric is now playing a 100 game match against Minimax in Arena. Mini has principle variation search and nothing like that for Bric yet, only material move sorting. And Bric is consistently using less time to finish depth 7 than Mini is. Mini also extends for checks I think as its pv lines are often more than the current depth. The match is only in game 5 of 100 and so far the score is Bric +2 -1 = 1. So not too bad at all! :D
Mike Sherwin
Posts: 852
Joined: Fri Aug 21, 2020 1:25 am
Location: Planet Earth, Sol system
Full name: Michael J Sherwin

Re: Bricabrac plays its first real game against itself

Post by Mike Sherwin »

Progress is slow as adding xboard support is tricky and some minor bugs were revealed that needed fixing. However, minimal xboard functionality has been achieved. Therefore, I had to play my first game against my new engine using Arena. I played the Petroff but instead of Ne5 it wanted to play Nc3. So I made it play Ne5 because I wanted to see how it would do against the Stafford Gambit. It almost survived! And another bug showed up, it exceeded max search depth and crashed just a few ply before getting mated.
[pgn][Event "Computer chess game"]
[Site "DESKTOP-HFVHK2B"]
[Date "2021.02.23"]
[Round "?"]
[White "Bricabrac"]
[Black "Mike Sherwin"]
[Result "*"]
[BlackElo "2400"]
[ECO "C42"]
[Opening "Russian Game"]
[Time "19:15:54"]
[Variation "3.Nxe5"]
[WhiteElo "2200"]
[TimeControl "0+30"]
[Termination "unterminated"]
[PlyCount "78"]
[WhiteType "program"]
[BlackType "human"]

1. e4 e5 2. Nf3 {(g1f3) +0.30/11 29} Nf6 {(g8f6) -0.30/10 29} 3. Nxe5 Nc6
4. Nxc6 {(e5c6) +0.85/12 29} dxc6 5. e5 {(e4e5) +0.85/11 29} Bc5 6. exf6
{(e5f6) +1.65/12 29} Bxf2+ 7. Kxf2 {(e1f2) +4.00/13 29} Qd4+ 8. Ke1 {(f2e1)
+4.10/13 29} O-O 9. Nc3 {(f6g7) +5.00/11 29} Re8+ 10. Be2 {(f1e2) +4.35/13
29} Bg4 11. Kf1 {(h1f1) +4.65/11 29} Rxe2 12. Nxe2 {(c3e2) +3.45/13 29}
Qxf6+ 13. Ke1 {(f1g1) +3.30/11 29} Re8 14. Rf1 {(d2d3) +1.75/12 29} Qh4+
15. Rf2 {(f1f2) +1.45/13 29} Qxh2 16. d3 {(d2d3) +1.55/10 29} Qg1+ 17. Rf1
{(f2f1) +1.05/13 29} Qxg2 18. Be3 {(f1f2) +1.05/12 29} Rxe3 19. Kd2 {(e1d2)
-2.00/11 29} Rxe2+ 20. Kc3 {(d2c3) -1.95/11 29} Qd5 21. b4 {(b2b4) -2.00/10
29} Qe5+ 22. d4 {(d3d4) -1.50/10 29} Re3+ 23. Qd3 {(c3b2) 0.00/10 29} Rxd3+
24. cxd3 {(c2d3) -5.45/12 29} Qd6 25. Rac1 {(a1c1) -5.45/10 29} h5 26. Rcd1
{(c3b2) -2.75/10 29} h4 27. Rc1 {(d1c1) -5.45/10 29} h3 28. Rcd1 {(c3b2)
-2.95/10 29} Bxd1 29. Rh1 {(f1d1) -8.90/12 29} h2 30. Re1 {(h1d1) -9.70/12
29} Bf3 31. Rb1 {(e1e8) -15.25/13 29} h1=Q 32. Rxh1 {(b1h1) -16.75/13 29}
Bxh1 33. a4 {(a2a4) -16.75/11 29} b5 34. Kb3 {(a4b5) -16.75/11 29} Qxd4 35.
Kc2 {(a4b5) -23.00/11 29} Bf3 36. axb5 {(a4b5) -23.25/11 29} cxb5 37. Kc1
{(c2c1) -M6/11 29} Qxd3 38. Kb2 {(c1b2) -M6/12 29} Bd1 39. Ka1 {(b2a1)
0.00/100 0} Bb3 *
[/pgn]
User avatar
MikeB
Posts: 4889
Joined: Thu Mar 09, 2006 6:34 am
Location: Pen Argyl, Pennsylvania

Re: Bricabrac plays its first real game against itself

Post by MikeB »

Mike Sherwin wrote: Sun Feb 21, 2021 11:07 pm There is no protocol yet so it had to be played by hand and recorded with Arena. A protocol is next on the list. It was set to search depth 6 and it mostly played instantly to a maximum of less than 2 seconds. No timing code yet either. All it has is material and piece square tables from the CPW. Frankly, I could not remember what state Bric was in when I left it for a while. But now I seem to be back due to losing ~40 pounds and my memory is working a little better. More blood for my brain! Because of the subject Coding Adventure: Chess AI and how well that engine played with just PSTs I decided to try adding PSTs to Bric. And I'm glad I did because it played quite ok! After the protocol is working it will be posted to Github (or whatever) as soon as I figure out how to do that. But right now I'm going to try depth 7 and playing by hand against Minimax in basic by Chrilly Donninger and Dieter Steinwender. :D

[pgn][Event "Computer chess game"]
[Site "DESKTOP-HFVHK2B"]
[Date "2021.02.21"]
[Round "?"]
[White "Bric"]
[Black "Bric"]
[Result "1-0"]
[BlackElo "2400"]
[ECO "D00"]
[Opening "Queen's Pawn"]
[Time "14:22:05"]
[Variation "2.e3"]
[WhiteElo "2400"]
[TimeControl "0+20"]
[Termination "normal"]
[PlyCount "85"]
[WhiteType "human"]
[BlackType "human"]

1. d4 d5 2. e3 e6 3. Nc3 Nc6 4. Bb5 Bd7 5. Nf3 Nf6 6. Bxc6 Bxc6 7. Ne5 Bb4
8. Bd2 Qd6 9. O-O Kf8 10. a3 Bxc3 11. Bxc3 a5 12. Re1 h6 13. b4 a4 14. b5
Kg8 15. bxc6 bxc6 16. Bb4 Qd8 17. Nxc6 Qe8 18. Ne7+ Kh7 19. Qd3+ g6 20. f3
Qd7 21. Qc3 Ra6 22. e4 Ng8 23. Nxg8 Kxg8 24. exd5 Qxd5 25. f4 Rc6 26. Bc5
Ra6 27. Rab1 Ra8 28. Be7 Kg7 29. Re5 Qd7 30. Bh4 Rab8 31. Rxb8 Rxb8 32. d5
Kg8 33. dxe6 fxe6 34. Be1 Rb6 35. Rc5 Rb7 36. Qc4 Rb1 37. Kf1 Ra1 38. Rxc7
Qd6 39. Rc6 Qd5 40. Rc8+ Qd8 41. Rxd8+ Kf7 42. Qc7+ Kf6 43. Rf8# 1-0
[/pgn]
+1 Congrats!
Image