Trying to improve an old chess bot by experimenting with various interesting techniques.
This is a sequel to: https://youtu.be/U4ogK0MIzqk
Support my work (and get early access to new videos and source code) on Patreon or Nebula
* Patreon: https://www.patreon.com/SebastianLague
* Nebula: https://go.nebula.tv/sebastianlague
Source code:
* GitHub: https://github.com/SebLague/Chess-Coding-Adventure
Credits and references
* A really fun video about various algorithms for playing chess by @tom7: https://www.youtube.com/watch?v=DpXy041BIlA
* Music and images: https://github.com/SebLague/Misc-Project-Info/blob/main/Coding-Adventures/Chess-2.txt
Chapters:
00:00 Intro
00:38 Battle of the Bots
03:18 Maybe Don’t Throw Away the Best Move?
07:13 Transposition Troubles
10:55 Search Extensions
14:01 Refactoring and Recapping
15:51 Tweaking Kings and Pawns
19:35 Bitboards!
23:54 Passed Pawns (and more)
28:32 Magic Bitboards (minus the magic)
34:40 The Magical Part of Magic Bitboards
39:00 Testing and Optimizing Move Generation
41:50 Killers, Reductions, and Repetitions
45:56 Creating a Lichess Bot
49:30 Let’s Play!
54:54 Existential Crisis
55:02 The Bot’s First Game Online
56:12 Can Our Bot Beat Stockfish? (No)
56:59 Rating Speculation
59:28 Outro