RedBedHed / Homura-Thesis-Version

Homura is a rollout-hybrid Chess Engine and 2022-2023 undergraduate project.
MIT License
19 stars 1 forks source link

playing games to develop ? #5

Open tissatussa opened 1 year ago

tissatussa commented 1 year ago

i like the way you carefully describe setup and backgrounds of your Homura coding adventure .. even referencing specific documents, eg. on MCTS .. it all goes beyond my head, nevermind ..

are you a chess player too ? a good one ? i'm a club player for many years, still only having 1800 (in Holland) rating, but i love the game, my approach is artistic (*), not result driven .. at LiChess Rapid i perform around 2000 .. playing engines is no fun in general, only if they're weak and i can try to play the best moves to win quickly, then maybe let the LiChess SF bot generate a graph report to see when and how i blundered etc. .. just to learn and have fun .. i often let 2 engines play in CuteChess GUI to see how they setup their game from a certain FEN position, esp. openings, to get inspiration and insights ..

in the README you write :

..After playing many games with Leorik..

according to my list Leorik v2.4 is rated around 2800 ! .. do you mean you did play yourself, or did you arrange automatic games between Homura and Leorik ? Which time control ? And why Leorik ? Did you tune parameters according to the Leorik games ?

many programmers use statistics of many fast games of their engine against the previous version to prove the newest code results in a stronger engine .. often programmers do not play themselfs very well, they can only rely on those statistics for development .. much to my surprise, the famous STS 'puzzle positions', each having a known 'solution' best move, do NOT seem useful to test and develop an engine, according to the info i got from several GitHub Issues .. what's your opinion and coding strategy ?

[ i know i posed many questions here .. i just await some feedback ]

(*) own edit : More Than Chess - artistic film https://www.bitchute.com/video/148wzAXBwGur/

rumble-bg-chessync_918x200

RedBedHed commented 1 year ago

No worries! I am not a very good chess player myself. I had around a 1000 elo rating on Chess.com at one point.

Yep! I pitted Homura against Leorik-2.0, which is expected to be around 2550. (Homura only plays near 2500 on newer intel-based hardware though. I wrote it to make use of the BMI2 instruction set.)

I used a simple time control of 0.1 or 0.5 seconds per move. I have yet to implement actual time management.

Leorik is well-written and easy to set up. I also have a lot of respect for its author. It makes a good opponent for testing because you can use the different versions to simulate play at different strengths.

I did not tune static eval parameters... Mostly because I was too busy working on the search. Homura uses a common fixed evaluation function from the engine PeSTO.

I think the best development strategy is to use self-play to gauge improvement. SPRT is what most authors use. I wasn't able to use it for Homura because I developed it on my laptop. However, I recently upgraded my hardware.