I'd go by changing only the framework. You may enable the hash when other improvements will have been done (however unlikely that seems).lithander wrote: ↑Fri Jul 02, 2021 1:10 pmin 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!
MinimalChess 0.5 released
Moderator: Ras
-
Gabor Szots
- Posts: 1503
- Joined: Sat Jul 21, 2018 7:43 am
- Location: Budapest, Hungary
- Full name: Gabor Szots
Re: MinimalChess 0.5 released
Gabor Szots
CCRL testing group
CCRL testing group
-
lithander
- Posts: 924
- Joined: Sun Dec 27, 2020 2:40 am
- Location: Bremen, Germany
- Full name: Thomas Jahn
Re: MinimalChess 0.5 released
You can download the new build here: https://github.com/lithander/SebLagueCh ... s/tag/net5Gabor Szots wrote: ↑Fri Jul 02, 2021 2:21 pm I'd go by changing only the framework. You may enable the hash when other improvements will have been done (however unlikely that seems).
I am fairly confident this build fixes the issue because it doesn't extract anything to the temp folder anymore. But the build is no longer a single file.
---
The recently released MinimalChess 0.5 build is also created with the .Net 5 Framework. But I wanted to still have a single file and you can force that by setting
Code: Select all
<IncludeAllContentForSelfExtract>true</IncludeAllContentForSelfExtract>So I'd say there's a 100% chance that the issue is now fixed with the SebLague build. And a 80% chance it is fixed with the MinimalChess 0.5 build. If you still encounter it please let me know!! (Noone should have to bother with deleting temp folders. We both agree on that! It's just hard to make sure it's fixed because it's not a bug in my code but in the tools I use)
-
Gabor Szots
- Posts: 1503
- Joined: Sat Jul 21, 2018 7:43 am
- Location: Budapest, Hungary
- Full name: Gabor Szots
Re: MinimalChess 0.5 released
Thank you Thomas. I have replaced the the old SebLagueChess with the new one.lithander wrote: ↑Fri Jul 02, 2021 4:38 pmYou can download the new build here: https://github.com/lithander/SebLagueCh ... s/tag/net5Gabor Szots wrote: ↑Fri Jul 02, 2021 2:21 pm I'd go by changing only the framework. You may enable the hash when other improvements will have been done (however unlikely that seems).
Gabor Szots
CCRL testing group
CCRL testing group
-
Chessqueen
- Posts: 5685
- Joined: Wed Sep 05, 2018 2:16 am
- Location: Moving
- Full name: Jorge Picado
Re: MinimalChess 0.5 released
Your Engine play Endgame excellent without Endgame Tablebase, this is the position that GM Leon lost by blundering to the American Abhimanyu (“Abhi”) Mishra by playing King to e5, and gave the chance to his Opponent to become the youngest GM in history, but your engine chose the correct move b4!. This is the reason why most Engines rated above 2250 do NOT need Endgame Tablebase to beat most human GMs. Not even Abhimanyu Knows the best response after b4 since he analysed that taking the Knight with the bishop at e3 was the correct move instead of advancing the pawn further to b5lithander wrote: ↑Thu Jul 01, 2021 1:25 am 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
[pgn][Event "Computer chess game"]
[Site "MININT-UB2PIMJ"]
[Date "2021.07.02"]
[Round "?"]
[White "MinimalChessEngine"]
[Black "Stockfish_14_x64_avx2"]
[Result "*"]
[BlackElo "3500"]
[Time "19:22:32"]
[WhiteElo "2250"]
[TimeControl "300+2"]
[SetUp "1"]
[FEN "8/8/3K2p1/6Bp/4p3/3kP2P/1P1n2P1/8 w - - 0 1"]
[Termination "normal"]
[PlyCount "18"]
[WhiteType "program"]
[BlackType "program"]
1. b4 Kc4 2. Ke6 Kxb4 3. Kf7 Nc4 4. Kxg6 h4 5. Kf5 Kc5 6. Kxe4 Kd6 7. Bxh4
Ke6 8. Bg5 Nd6+ 9. Kf4 Nc4 {Black resigns} *[/pgn]
-
Chessqueen
- Posts: 5685
- Joined: Wed Sep 05, 2018 2:16 am
- Location: Moving
- Full name: Jorge Picado
Re: MinimalChess 0.5 released
*Chessqueen wrote: ↑Sat Jul 03, 2021 2:43 amYour Engine play Endgame excellent without Endgame Tablebase, this is the position that GM Leon lost by blundering to the American Abhimanyu (“Abhi”) Mishra by playing King to e5, and gave the chance to his Opponent to become the youngest GM in history, but your engine chose the correct move b4!. This is the reason why most Engines rated above 2250 do NOT need Endgame Tablebase to beat most human GMs. Not even Abhimanyu Knows the best response after b4 since he analysed that taking the Knight with the bishop at e3 was the correct move instead of advancing the pawn further to b5lithander wrote: ↑Thu Jul 01, 2021 1:25 am 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
[pgn][Event "Computer chess game"]
[Site "MININT-UB2PIMJ"]
[Date "2021.07.02"]
[Round "?"]
[White "MinimalChessEngine"]
[Black "Stockfish_14_x64_avx2"]
[Result "*"]
[BlackElo "3500"]
[Time "19:22:32"]
[WhiteElo "2250"]
[TimeControl "300+2"]
[SetUp "1"]
[FEN "8/8/3K2p1/6Bp/4p3/3kP2P/1P1n2P1/8 w - - 0 1"]
[Termination "normal"]
[PlyCount "18"]
[WhiteType "program"]
[BlackType "program"]
1. b4 Kc4 2. Ke6 Kxb4 3. Kf7 Nc4 4. Kxg6 h4 5. Kf5 Kc5 6. Kxe4 Kd6 7. Bxh4
Ke6 8. Bg5 Nd6+ 9. Kf4 Nc4 {Black resigns} *[/pgn]
-
lithander
- Posts: 924
- Joined: Sun Dec 27, 2020 2:40 am
- Location: Bremen, Germany
- Full name: Thomas Jahn
Re: MinimalChess 0.5 released
MinimalChess finds the best move b2 at depth 13 and sticks with it. That's good! But it never foresees Stockfish's response Kc4. Instead MinimalChess expects Nc4! To which it would reply with Kc5... so if you want to prevent MinimalChess from winning here don't play what Stockfish did but Nc4!Chessqueen wrote: ↑Sat Jul 03, 2021 2:43 am Not even Abhimanyu Knows the best response after b4 since he analysed that taking the Knight with the bishop at e3 was the correct move instead of advancing the pawn further to b5
-
Chessqueen
- Posts: 5685
- Joined: Wed Sep 05, 2018 2:16 am
- Location: Moving
- Full name: Jorge Picado
Re: MinimalChess 0.5 released
Interesting Stockfish 14 played the bad move Kc4 and Stockfish 13 played the best move Nc4! and draw against MinimalChessEngine. I started a match against Dragon 4.6 which is rated around 2420 and the score is even so far after 6 games.lithander wrote: ↑Sat Jul 03, 2021 11:18 amMinimalChess finds the best move b2 at depth 13 and sticks with it. That's good! But it never foresees Stockfish's response Kc4. Instead MinimalChess expects Nc4! To which it would reply with Kc5... so if you want to prevent MinimalChess from winning here don't play what Stockfish did but Nc4!Chessqueen wrote: ↑Sat Jul 03, 2021 2:43 am Not even Abhimanyu Knows the best response after b4 since he analysed that taking the Knight with the bishop at e3 was the correct move instead of advancing the pawn further to b5![]()
[pgn][Event "Computer chess game"]
[Site "MININT-UB2PIMJ"]
[Date "2021.07.02"]
[Round "?"]
[White "MinimalChessEngine"]
[Black "Stockfish_13_x64_avx2"]
[Result "*"]
[BlackElo "3500"]
[Time "19:22:32"]
[WhiteElo "2350"]
[TimeControl "300+2"]
[SetUp "1"]
[FEN "8/8/3K2p1/6Bp/4p3/3kP2P/1P1n2P1/8 w - - 0 1"]
[Termination "normal"]
[PlyCount "35"]
[WhiteType "program"]
[BlackType "program"]
1. b4 Nc4+ 2. Kc5 Nxe3 3. b5 Nc4 4. g4 hxg4 5. hxg4 Nb2 6. b6 Na4+ 7. Kc6
Nxb6 8. Kxb6 e3 9. Kc5 Ke4 10. Kc4 e2 11. Bd2 Kf3 12. Kd4 Kxg4 13. Ke3 g5
14. Kxe2 Kh5 15. Be1 g4 16. Kf2 g3+ 17. Kg2 Kg6 18. Bxg3 {Insufficient
material} *[/pgn]