BBC GUI release - PLAY IT ONLINE!

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

Moderators: hgm, Rebel, chrisw

User avatar
maksimKorzh
Posts: 771
Joined: Sat Sep 08, 2018 5:37 pm
Location: Ukraine
Full name: Maksim Korzh

Re: BBC GUI release - PLAY IT ONLINE!

Post by maksimKorzh »

mvanthoor wrote: Sun Oct 18, 2020 10:49 pm
maksimKorzh wrote: Sun Oct 18, 2020 10:23 pm BBC 1.3 + Stockfish NNUE is now available for online play!
http://maksimkorzh.pythonanywhere.com/

Give it a try!
Hi Maksim,

I've been trying BBC online (and have version 1.1 and 1.2 installed as well). Some observations:

- In the Fritz GUI, BBC only reports 650 nodes (not kNodes... 650, as in under 1000) per second. I assume you're passing this wrong to the GUI. (I haven't checked the code). This would be extremely slow.
- Online, BBC 1.3 reports 150.xxx kNodes. That would be 150-250 kNodes/second. That seems more correct, but it's still slow; it's 1/4th to half of the speed of my three year old midrange phone, or half the speed of a Raspberry Pi 4. Where is the engine running?
- The NNUE 1.3 version is much weaker than the BBC-version I played earlier. That version was quite difficult to defeat for me even at instant response. (I'm a decent, but not super-strong player; somewhere between 1800 and 2000 FIDE Elo depending on how much effort I put into a game.) For earlier versions of BBC I would actually need to put in some effort to not lose a game. Here's a game I played against 1.3 + NNUE, where my response time was basically as fast as you'd see in a bullet or 3 minute blitz game... (and I suspect I made many mistakes and left a lot of chances unused). Basically, I put no effort at all into this game. Especially black's 36 ... h5 boggles my mind. It just completely ignores an attacked bishop. During the entire game the engine didn't even make an effort to get castled.

[pgn]
1. e4 c5 2. Nf3 Nc6 3. d4 cxd4 4. Nxd4 e5 5. Nf3 Nf6 6. Bd3 d5 7. exd5 Nxd5 8. O-O Be7 9. Re1 f6 10. Bc4 Nb6 11. Bb3 Qxd1 12. Rxd1 Na5 13. Be3 Bf5 14. Bxb6 axb6 15. c3 b5 16. Na3 Bd7 17. Rd2 Bc6 18. Bd1 b4 19. cxb4 Bxb4 20. Rc2 Bd7 21. Nc4 Nc6 22. a3 Be7 23. Be2 Bc5 24. Rac1 Nd4 25. Nxd4 exd4 26. b4 Bf8 27. Rd1 Rxa3 28. Nxa3 Bxb4 29. Nb1 b6 30. Nd2 g5 31. Nc4 Bc5 32. Rb2 b5 33. Na3 b4 34. Nc4 h6 35. Na5 f5 36. Nb3 h5 37. Nxc5 f4 38. Nxd7 Kxd7 39. Rxd4+ Kc7 40. Rbxb4 g4 41. Rdc4+ Kd8 42. Rb7 Rf8 43. Ra4 Kc8 44. Rh7 Rf7 45. Rxf7 Kb8 46. Re4 h4 47. Re8#[/pgn]
Hi Marcel, thank you for the game.

Well, what can I say:
1. Knps calculation was wrong in early versions due to the bugs which I've fixed later
2. Current Knps of 150.xxx is 65% compared to handcrafted eval. NNUE slows down performance significantly, especially bearing in mind the fact that I didn't involve incremental updates optimization for simplicity
3. And regarding strength, well, I guess NNUE just needs a bit more time to search and instant response is not an option, I will probably remove it.
User avatar
maksimKorzh
Posts: 771
Joined: Sat Sep 08, 2018 5:37 pm
Location: Ukraine
Full name: Maksim Korzh

Re: BBC GUI release - PLAY IT ONLINE!

Post by maksimKorzh »

mvanthoor wrote: Sun Oct 18, 2020 10:49 pm
maksimKorzh wrote: Sun Oct 18, 2020 10:23 pm BBC 1.3 + Stockfish NNUE is now available for online play!
http://maksimkorzh.pythonanywhere.com/

Give it a try!
Hi Maksim,

I've been trying BBC online (and have version 1.1 and 1.2 installed as well). Some observations:

- In the Fritz GUI, BBC only reports 650 nodes (not kNodes... 650, as in under 1000) per second. I assume you're passing this wrong to the GUI. (I haven't checked the code). This would be extremely slow.
- Online, BBC 1.3 reports 150.xxx kNodes. That would be 150-250 kNodes/second. That seems more correct, but it's still slow; it's 1/4th to half of the speed of my three year old midrange phone, or half the speed of a Raspberry Pi 4. Where is the engine running?
- The NNUE 1.3 version is much weaker than the BBC-version I played earlier. That version was quite difficult to defeat for me even at instant response. (I'm a decent, but not super-strong player; somewhere between 1800 and 2000 FIDE Elo depending on how much effort I put into a game.) For earlier versions of BBC I would actually need to put in some effort to not lose a game. Here's a game I played against 1.3 + NNUE, where my response time was basically as fast as you'd see in a bullet or 3 minute blitz game... (and I suspect I made many mistakes and left a lot of chances unused). Basically, I put no effort at all into this game. Especially black's 36 ... h5 boggles my mind. It just completely ignores an attacked bishop. During the entire game the engine didn't even make an effort to get castled.

[pgn]
1. e4 c5 2. Nf3 Nc6 3. d4 cxd4 4. Nxd4 e5 5. Nf3 Nf6 6. Bd3 d5 7. exd5 Nxd5 8. O-O Be7 9. Re1 f6 10. Bc4 Nb6 11. Bb3 Qxd1 12. Rxd1 Na5 13. Be3 Bf5 14. Bxb6 axb6 15. c3 b5 16. Na3 Bd7 17. Rd2 Bc6 18. Bd1 b4 19. cxb4 Bxb4 20. Rc2 Bd7 21. Nc4 Nc6 22. a3 Be7 23. Be2 Bc5 24. Rac1 Nd4 25. Nxd4 exd4 26. b4 Bf8 27. Rd1 Rxa3 28. Nxa3 Bxb4 29. Nb1 b6 30. Nd2 g5 31. Nc4 Bc5 32. Rb2 b5 33. Na3 b4 34. Nc4 h6 35. Na5 f5 36. Nb3 h5 37. Nxc5 f4 38. Nxd7 Kxd7 39. Rxd4+ Kc7 40. Rbxb4 g4 41. Rdc4+ Kd8 42. Rb7 Rf8 43. Ra4 Kc8 44. Rh7 Rf7 45. Rxf7 Kb8 46. Re4 h4 47. Re8#[/pgn]
I've just fixed horrible bug...
The way it was working (and even crushing VICE with this bug!) is the following: on obtaining a threshold material phase eval was changing from NNUE to handcrafted BUT there was an issue of score scaling - I didn't do any scaling so when nnue evaluated position like +4.25 it could still be the equal material, but only positional advantage (due to NNUE) and now imagine it drops to my handcrafted eval - it starts thinking that it's material up and starting giving pieces away, thinking it's much better)

So I've updated NN to latest (they've switched to new one in SF yesterday) and got rid of handcrafted eval as well.
Btw new NNUE performs much better in endgame.

I've already updated code in online version.
Now after some tests I'll update files in release as well.

Thanks for reporting bug, Marcel!
User avatar
maksimKorzh
Posts: 771
Joined: Sat Sep 08, 2018 5:37 pm
Location: Ukraine
Full name: Maksim Korzh

Re: BBC GUI release - PLAY IT ONLINE!

Post by maksimKorzh »

Here're the latest bug fixes in release:
https://github.com/maksimKorzh/bbc/releases/tag/1.3