MinimalChess 0.5 is finally ready.
This version adds a 13th tuned table for a mobility-based evaluation term that modifies the static PST based evaluation of version 0.4. It encourages friendly pieces to guard each other and opponent pieces to threaten each other. The table contains bonuses and maluses that get assigned based on the content of each square a piece "sees".
I also added a simple transposition table (no buckets) and very simple null-move pruning (R2 when not in check) and I hope that together these features will improve the playing strength to about 2200 ELO.
The size of the codebase measured in lines of executable code (LOC) increased moderately from 610 LOC to 707 LOC. So this versions not only features the best playing strength it also has the best strength/LOC ratio.
For this release I also changed the target framework to .NET 5. I hope everything still works! You can find precompiled executables for Windows, Mac and Linux here: https://github.com/lithander/MinimalChe ... s/tag/v0.5
MinimalChess 0.5 released
Moderator: Ras
-
Gabor Szots
- Posts: 1532
- Joined: Sat Jul 21, 2018 7:43 am
- Location: Budapest, Hungary
- Full name: Gabor Szots
-
amanjpro
- Posts: 883
- Joined: Sat Mar 13, 2021 1:47 am
- Full name: Amanj Sherwany
Re: MinimalChess 0.5 released
It is worth mentioning that this version is in the lead in ZaTour Promotion League 
-
mvanthoor
- Posts: 1784
- Joined: Wed Jul 03, 2019 4:42 pm
- Location: Netherlands
- Full name: Marcel Vanthoor
Re: MinimalChess 0.5 released
Congratulations 
I'll run a head-to-head match against MMC 0.5 in the weekend. Rustic-dev scores +50 Elo against MMC 0.4.5 (which Thomas kindly provided for testing), so I now expect a -50 Elo performance against MMC 0.5.
It is probably going to win the division, with a +50 Elo over the current development version of Rustic, which only adds a tapered evaluation on top of Alpha 3. (Which added Killers + PVS on top of Alpha 2.) Estimated playing strength for current Rustic is approximately 2150.
I'll run a head-to-head match against MMC 0.5 in the weekend. Rustic-dev scores +50 Elo against MMC 0.4.5 (which Thomas kindly provided for testing), so I now expect a -50 Elo performance against MMC 0.5.
-
amanjpro
- Posts: 883
- Joined: Sat Mar 13, 2021 1:47 am
- Full name: Amanj Sherwany
Re: MinimalChess 0.5 released
Actually both Rustic and MMC are doing very well... and probably will come before KingSlayer... huge improvements 
-
lithander
- Posts: 925
- Joined: Sun Dec 27, 2020 2:40 am
- Location: Bremen, Germany
- Full name: Thomas Jahn
Re: MinimalChess 0.5 released
Also worth mentioning that the TT was implement in MMC only after your explicit request!
When I posted about my tuning process a while ago my secret hope was of course that others would try these tables in their own engines and find them a valuable contribution. So I feel honored that you chose to use MMCs PSTs in your current development version of Rustic and I'm very happy to see how much strength Rustic gained from it.
I now celebrate a win of Rustic almost as much as a win of MinimalChess!
Last edited by lithander on Thu Jul 01, 2021 6:12 pm, edited 1 time in total.
-
mvanthoor
- Posts: 1784
- Joined: Wed Jul 03, 2019 4:42 pm
- Location: Netherlands
- Full name: Marcel Vanthoor
Re: MinimalChess 0.5 released
Yes, the current Rustic development version (3.1.112) uses MMC 0.4.5's tapered PST's, for a strength increase of about 270 Elo, to ~2150. At this time, it's the only addition on top of Alpha 3. This version will probably turn into "Rustic 4" after the tuner is done. (Maybe with a bit of change in time management: Rustic leaves too much time on the clock.)lithander wrote: ↑Thu Jul 01, 2021 5:49 pm When I posted about my tuning process a while ago my secret hope was of course that others would try these tables in their own engines and find them a valuable contribution. So I feel honored that you chose to use MMCs PSTs in your current development version of Rustic and I'm very happy to see how much strength Rustic gained from it.
I now celebrate a win of Rustic almost as much as a win of MinimalChess!![]()
Why shouldn't I use your tables to see what it's possible before I start doing my own thing? You used my (hand-written) PST's to help add another 500 Elo to MinimalChess 0.3 before you wrote/tuned your own
Now you only need to convert to a bit-board engine, and a fat board representation with make/unmake, make your PST's incremental, add some more pruning, a few hundred evaluation terms, add a little more pruning, and then port the engine to C++ or Rust, and you'll be as strong as Stockfish. Should be doable before 2027
(Told you chess programming can be addictive.)
-
amanjpro
- Posts: 883
- Joined: Sat Mar 13, 2021 1:47 am
- Full name: Amanj Sherwany
Re: MinimalChess 0.5 released
I respect beautiful play, and MMC diffenetly has it. It is always hurtful to see it lose due to endgame ignorance (due to lack of TT).
MMC's play reminded me of Zahak in early days, but much stronger while still within the reach of my understanding. So yeah, I see it as my foster child now
-
Gabor Szots
- Posts: 1532
- Joined: Sat Jul 21, 2018 7:43 am
- Location: Budapest, Hungary
- Full name: Gabor Szots
Re: MinimalChess 0.5 released
Gauntlet for the blitz list in progress.
BTW, do you plan to 'do something' with SebLague Chess? The other day I included it in a tournament and only after 9 games (all forfeited on time) did I remember to delete the AppData\Local\Temp\.net\SebLagueChessEngine folder. OK, I'm going to remember next time...
BTW, do you plan to 'do something' with SebLague Chess? The other day I included it in a tournament and only after 9 games (all forfeited on time) did I remember to delete the AppData\Local\Temp\.net\SebLagueChessEngine folder. OK, I'm going to remember next time...
Gabor Szots
CCRL testing group
CCRL testing group
-
lithander
- Posts: 925
- Joined: Sun Dec 27, 2020 2:40 am
- Location: Bremen, Germany
- Full name: Thomas Jahn
Re: MinimalChess 0.5 released
For MinimalChess I have changed the target framework from ".Net Core 3.1" to ".Net 5" and I expect that this will fix the issue once and for all.Gabor Szots wrote: ↑Fri Jul 02, 2021 10:09 am BTW, do you plan to 'do something' with SebLague Chess? The other day I included it in a tournament and only after 9 games (all forfeited on time) did I remember to delete the AppData\Local\Temp\.net\SebLagueChessEngine folder. OK, I'm going to remember next time...
I could make the same change of the target framework for SebLagueChessEngine and provide you with a new build. I have also noticed that my build uses default settings that are not the same as what he uses in his Unity version (his Unity code changes some of the default settings of the engine) and the most significant difference is that in my build the transposition table was not enabled. I could fix that with a new build but then it would probably gain strength and would need to be tracked by CCRL as a different version.
Just changing the target framework would keep the current strength mostly. It's your choice!