I Made A Chess AI But In Only 1 File
Вставка
- Опубліковано 28 чер 2024
- I competed in the tiny chess competition run by @SebastianLague and here is my process and how everything turned out
Join the discord to play the demo of my upcoming game!
/ discord
Check out any of my games on Itch:
simply-in-dev.itch.io/
Music Used:
Lud and Schlatt's Musical Emporium - Winter - Vivaldi
• Winter - Vivaldi [COPY...
Lud and Schlatt's Musical Emporium - Cello Suite - Bach
• Cello Suite - Bach [CO...
Luigi Boccherini - Minuet
• Video
Mozart - Turkish March
musopen.org/music/
Musopen Orchestra - Overture to The marriage of Figaro, K. 492
musopen.org/music/
Lacrimosa - Mozart
• Mozart Lacrimosa
Violin Concerto in G Minor 'Summer'
musopen.org/music/
#devlog #gamedev #chess #indiegame #artificialintelligence #coding #software
----------- Contents -----------
0:00 Intro
1:20 Board Evaluation
3:05 Minimax
4:58 Alpha-Beta Pruning
6:06 Piece Tables
8:00 Quiescence Search
9:59 Table Compression
10:56 King Endgame
12:01 Iterative Depth
12:53 No Time Left And My Bot Is Still Dumb
14:27 Submission & Results
15:21 Final Showdown - Наука та технологія
now do it in one line, if you can do it in one file, you can do it in one line
This video was awesome, your channel is underrated af
wait a sec you have 600 subs wtf?! your a underrated channel that would have 2 mil,based on this vid
keep up the work and you will he big in no time ❤
Bro this video is a youtube Gem!!!! very underrated
WOWOWOWOWOWOWOWOOOWWWWWOOUUUUHHHHAHAHHH HOW entertaining and informative this video was. Thanks a lot mate. KEEP IT UP your channel is bound to blow up!!!
Very cool! This was an extremely high quality video, and you did a great job explaining everything
I started working on my own engine in Rust right as Sebastian Lague's tournament ended, which is currently rated about 2050 on Lichess :D
Great work! Very cool project!
This was a masterpiece, well done!!!!
Great video! I tried to also create my own chess bot for the tournament by sebastian but realised that I am just not familiar with c++ enough, let alone engine programming (only did in python). The videodecribes the steps you took to improve the engine in a very clear manner and I have definitely learnt a few things about programming a chess engine.
Yeah it can be very difficult if it's not a language you're familiar with, but I'm glad you learned something
Bro this is gold, so underrated 🔥
Love the video bro u deserve more subs
underrated
love video you got a new sub
Sweet revenge
Super interesting video!
Great video honestly, i cant code either but i always like watching people make chess bots. Let me know if you plan to do this again i can point out some of the more advanced mistakes your bot is making as a stronger chess player
This was great
that was really fun to watch!
Thank you! I'm glad you enjoyed it
i watched this whole thing thinking you had like 200k subs, great video imma watch every video you post
Thank you!
@@simplyindev Of course bro, the smallest creators always have the best content
When using iterative deepening it is a pretty good idea to include principle variation (best line from previous depth search). That way you will be searching the new depth muchs faster (most of the time). Also some heuristic to order quiet moves might help you a lot (history moves, killer moves). To increase the depth you have two options: make it search faster (more nodes per second) or make it prune branches. If you want to prune more you can add null move pruning for not too many tokens used. A good idea also might be late move reduction (you cut the depth of search of moves after first 4 for example). The downside is if you do not succeed you are forced to reasearch at full depth or full search window.
These are all some good ideas for improvements. I didn't mention it in the video but when I submitted I was using 1023 of 1024 tokens so I ran out of space to add anything else in without major optimizations
@@simplyindev Yeah the tokens are pretty limiting. Maybe 2048 tokens would allow for some crazy strong bots. What was the elo of the 1st place bot btw? I think if there is another competition I might be able to get top 10.
@@lubengeorgiev5675 elo of first place is ~2770 on ccrl
Epic video! You’re inspiring me to try to do the same! Also, congrats on making it to 1800 elo with a mini bot, imagine how high you could go without the token restriction!
That's awesome, go for it!
Once i saw the match against emir i was so surprised that a chess bot with a single file played so well in that game he played like a 2300 and had a accuracy of 87.7 if you made it of more files it be the next stockfish you gain a subscriber
Someone made a bot with 200 tokens and it is quite strong.
nice content
Very cool you documented your bot. I only saw the competition after it ended. I always wanted to try program a chess bot. So with this very nice C# framework and everything but the move search implemented, I also gave it a try. I went 10x over the token limit as the competition is over. But I am gonna try my bot vs yours. I had so many bugs in my bot. When it is searching a million positions and you have 10 000 lines of code, figuring out wtf is going on gets really hard. I am new to C# and I don't know how to code with little tokens so I think I would have failed hard at the competition. Maybe if there's a 2048 token limit competition I will submit something.
That said, your no of positions evaluated at 4:51 seems wrong. It goes up exponentially, meaning you search until depth 5 almost instantly, dept 6 takes a while, and depth 7 is basically not achievable. Without move sorting, many positions have 30 legal moves, so it goes n^30. And with good move ordering, you can get to 5 to 15 branches added for each depth.
I'd be very interested to see the results of that game! Yeah I knew my phrasing of exponentially was not technically correct in the math sense, but I was just using it by the definition of a more rapid increase. Same thing with my use of depth vs ply is chess coding was wrong, but I think depth was much more understandable to people
when watching this i thought you were some big youtuber. how are you not famous yet?
Very impressed by your video style, how did you make it?
I used a tool called motion canvas which allows you to create animations with code
@@simplyindev thank you! I hope you get your play button someday!
best chess video i've ever seen. can we find the code somewhere or is it confidential?
Here's the link to where Sebastian Lague has all the submitted bots, but 579 is mine. There's a lot to learn from all the different entries github.com/SebLague/Tiny-Chess-Bot-Challenge-Results/blob/main/Bots/Bot_579.cs
I thought this meant the ai can control a column file in a board
I can understand the confusion, I didn't even think about that 😂
6:00 AT THİS POINT BRO SACRIFISE THE SACRIFISE GAMEEEEEEEEEEEEEEEEEEEEEEEEEE
Making my own chess engine is a dream I have, but I unfortunately have no coding experience beyond one high school class of C# from which I've retained nothing
That's alright, you'd be surprised how little coding knowledge you actually need to get a basic one working
cool
now do it with bash
can you make a chess engine with 10< >1files
What is a token ?
what is a token ?
wait.... how is it even possible to lose to the random bot :D
I mean since it is random, given infinite time it would beat stockfish in a game eventually, but the first bit was so bad that sometimes it gets into a weird position where the random bot is basically forced to deliver checkmate lol
Who got number 1?
0:00 0:31 come on they arent that smart
700th subscriber
Pls help me beat Antonio
😈😈I'm younger and I've beat amir
Emir*
nice Praise Jesus! pls repent.
This was great