The worst moves in 3 check are as one could expect moves that allow a check.
After 1.e4 f6 white has mate in 5 in 3 check.
+M5 Qd1-h5+ g7-g6 Qh5-d5 Ng8-h6 Bf1-c4 e7-e6 Qd5xe6+ d7xe6 Bc4-b5+
After 1.e4 d6 white has mate in 7 in 3 check
+M6 Bf1-b5+ Qd8-d7 Bb5xd7+ Ke8-d8 Ng1-f3 Bc8xd7 Nf3-g5 Kd8-c8 Ng5xf7 Bd7-h3 Nf7xd6+
After 1.e4 d5
+M7 Bf1-b5+ Nb8-d7 Bb5xd7+ Qd8xd7 Qd1-f3 Qd7-f5 e4xf5 Bc8-e6 Qf3-a3 O-O-O Qa3xa7 Be6xf5 Qa7xb7+
After 1.e4 f5 there is mate in 11 in three check.
This is the main line
+M11 Qd1-h5+ g7-g6 Qh5xg6+ h7xg6 Nb1-a3 Bf8-g7 Na3-b5 Ke8-f8 Ng1-f3 e7-e6 Nf3-g5 Qd8xg5 Nb5xc7 Kf8-f7 Bf1-c4 d7-d5 e4xd5 Qg5xd2+ Bc1xd2 Nb8-c6 d5xe6+
analysis with multi-pv clearly suggest that black lose after 1.e4 because the score of chess moves become worse when I search deeper.
I get the following at depths 29-30 after 1.e4
---------------------------------------------------------------------------
29/39 1:44:36 26,413,520k 4,208k -6.16 e7-e5 Bf1-c4 Qd8-f6 Ng1-f3 Bf8-b4 a2-a3 Ng8-e7 a3xb4 O-O d2-d4 d7-d5 e4xd5 Ne7-g6 O-O Bc8-g4 Nb1-d2 Nb8-d7 Nd2-e4 Qf6-f5 Ne4-g3 Qf5-f6 d5-d6 Bg4xf3 Qd1xf3 Qf6xf3 g2xf3 Nd7-b6 Bc4-b3 c7xd6 Ng3-f5 d6-d5 Rf1-e1 e5xd4 Nf5xd4 Kg8-h8
29/36 1:44:36 26,413,520k 4,208k -4.76 h7-h5 Ng1-f3 e7-e6 Nb1-c3 Nb8-c6 d2-d4 Bf8-b4 Bc1-d2 Bb4xc3 b2xc3 Qd8-e7 Bf1-d3 e6-e5 O-O b7-b6 Bd2-g5 f7-f6 Nf3-h4 f6xg5 Nh4-g6 Qe7-f6 Ng6xh8 g7-g6 Bd3-c4 Qf6xh8 Bc4-f7+ Ke8-d8 Qd1-d2 Ng8-f6 Qd2xg5 d7-d6 Bf7xg6 Bc8-d7
29/32 1:44:36 26,413,520k 4,208k -4.30 g7-g5 d2-d4 e7-e6 Nb1-c3 Bf8-b4 Bc1-d2 Nb8-c6 e4-e5 Qd8-e7 Ng1-e2 d7-d5 a2-a3 Bb4xc3 Ne2xc3 a7-a6 Bd2-e3 h7-h6 Bf1-d3 Bc8-d7 b2-b4 Nc6-a7 O-O O-O-O Qd1-b1 Kc8-b8 b4-b5 a6xb5 Bd3xb5 Na7xb5 Nc3xb5 Bd7xb5 Qb1xb5
29/35 1:44:36 26,413,520k 4,208k -4.06 Nb8-a6 Ng1-f3 e7-e6 Nb1-c3 Na6-c5 Bf1-e2 b7-b6 O-O Bc8-b7 d2-d3 Ng8-f6 b2-b4 Nc5-a6 a2-a3 Bf8-d6 g2-g3 Bd6-e7 d3-d4 Na6xb4 a3xb4 Be7xb4 Nc3-b5 O-O Bc1-g5 Bb4-e7 Bg5xf6 Be7xf6 Qd1-d3 Bf6-e7 e4-e5
29/41 1:44:36 26,413,520k 4,208k -3.97 a7-a5 d2-d4 e7-e6 a2-a3 Nb8-c6 Nb1-c3 g7-g6 Ng1-f3 Bf8-g7 Bf1-b5 Ng8-e7 e4-e5 h7-h6 Nc3-e4 Ke8-f8 g2-g4 d7-d6 g4-g5 h6-h5 Nf3-h4 d6xe5 Ne4-f6 Nc6xd4 Rh1-g1 e5-e4 Bc1-e3 e6-e5 Be3xd4 e5xd4 Bb5-c4 b7-b5
30/45 1:44:36 26,413,520k 4,208k -3.61 a7-a6 Ng1-f3 e7-e6 c2-c3 Nb8-c6 d2-d4 d7-d5 Bf1-d3 Ng8-f6 e4-e5 Nf6-e4 O-O h7-h6 Nb1-d2 Ne4xd2 Nf3xd2 g7-g6 Qd1-f3 Qd8-e7 a2-a4 Bf8-g7 b2-b4 O-O Qf3-h3 f7-f5 Nd2-f3 g6-g5 Bc1xg5 h6xg5 Qh3-h5 Qe7-e8 Qh5xg5
30/49 1:44:36 26,413,520k 4,208k -3.53 h7-h6 Ng1-f3 e7-e6 c2-c3 Nb8-c6 d2-d4 Qd8-f6 Bf1-d3 g7-g5 Nf3-d2 Qf6-g6 Qd1-f3 Qg6-g7 O-O h6-h5 Nb1-a3 Bf8xa3 b2xa3 g5-g4 Qf3-e2 Ng8-e7 a3-a4 h5-h4 Bc1-a3 d7-d6 Nd2-c4 O-O e4-e5 Ne7-d5 Bd3-h7+ Kg8-h8 Qe2-e4 Nd5xc3
30/43 1:44:36 26,413,520k 4,208k -3.53 Ng8-h6 Nb1-c3 e7-e6 Ng1-f3 Bf8-b4 a2-a3 Bb4-a5 b2-b4 Ba5-b6 d2-d4 Nb8-c6 Bc1xh6 g7xh6 Qd1-d2 Qd8-e7 Bf1-e2 a7-a6 e4-e5 d7-d5 e5xd6/ep c7xd6 O-O O-O d4-d5 Nc6-e5 Nf3xe5 d6xe5 Qd2xh6 f7-f5 Be2-c4 Qe7-f6 Qh6-h5 Qf6-g7 d5xe6 Kg8-h8 Kg1-h1
30/40 1:44:36 26,413,520k 4,208k -3.53 g7-g6 Nb1-c3 c7-c6 Ng1-f3 d7-d5 Nc3xd5 Bf8-g7 d2-d4 Nb8-d7 Nd5-c3 Nd7-b6 Bf1-e2 Ng8-h6 O-O O-O a2-a4 Bc8-g4 a4-a5 Nb6-d7 Bc1-e3 Bg4xf3 Be2xf3 Qd8-c7 g2-g3 e7-e5 d4-d5 Nd7-f6 h2-h3 Qc7-d7 Bf3-g2 c6xd5 Nc3xd5 Nf6xd5 Qd1xd5 Qd7-c6
30/45 1:44:36 26,413,520k 4,208k -3.27 b7-b6 d2-d4 e7-e6 c2-c3 Bc8-b7 Nb1-d2 Bf8-e7 Ng1-f3 Be7-g5 Nf3xg5 Qd8xg5 h2-h4 Qg5-f6 Bf1-d3 Qf6-g6 Qd1-f3 Ng8-f6 h4-h5 Qg6-g4 Qf3xg4 Nf6xg4 f2-f3 Ng4-h6 Nd2-c4 f7-f6 Bc1xh6 g7xh6 O-O-O O-O Nc4-e3 Nb8-c6 Ne3-g4 Kg8-h8 e4-e5 f6-f5 Ng4-f6 d7-d6 Bd3-c4 d6-d5 Bc4-b5 Nc6-e7
30/37 1:44:36 26,413,520k 4,208k -3.27 Ng8-f6 e4-e5 e7-e6 c2-c3 Nf6-e4 Qd1-f3 Qd8-h4 g2-g3 Ne4-g5 g3xh4 Ng5xf3+ Ng1xf3 Nb8-c6 Nb1-a3 a7-a6 Na3-c2 b7-b6 Rh1-g1 Bc8-b7 d2-d4 Nc6-e7 Bf1-e2 h7-h6 Bc1-e3 Bb7-e4 O-O-O Ne7-c6 Nf3-d2 Be4xc2 Kc1xc2 Nc6xd4+ c3xd4
30/42 1:44:36 26,413,520k 4,208k -3.24 b7-b5 Ng1-f3 e7-e6 Bf1xb5 Bc8-b7 O-O a7-a6 Bb5-a4 Bf8-d6 Nb1-c3 Bd6xh2+ Nf3xh2 Qd8-h4 d2-d3 Ng8-e7 Qd1-g4 Qh4xg4 Nh2xg4 Nb8-c6 f2-f4 h7-h5 Ng4-e5 h5-h4 Rf1-f3 Nc6xe5 f4xe5 h4-h3 Rf3xh3 Rh8xh3 g2xh3 O-O-O Bc1-f4
30/47 1:44:36 26,413,520k 4,208k -3.11 c7-c6 Nb1-c3 d7-d6 Bf1-c4 e7-e6 Ng1-f3 Ng8-f6 d2-d4 Bf8-e7 O-O O-O e4-e5 d6xe5 d4xe5 Qd8xd1 Rf1xd1 Nf6-d5 Nc3-e4 Nb8-d7 Ne4-f6+ Nd7xf6 e5xf6 Be7xf6 Bc4-d3 g7-g6 c2-c4 Nd5-b6 Nf3-d2 Kg8-h8 Nd2-e4 Bf6-g7 Bc1-g5 Nb6-d7 Ne4-d6
30/39 1:44:36 26,413,520k 4,208k -2.76 Nb8-c6 Ng1-f3 e7-e6 Nb1-c3 Bf8-b4 a2-a3 Bb4xc3 b2xc3 f7-f5 e4-e5 Ng8-e7 Nf3-g5 g7-g6 d2-d4 h7-h6 Ng5-f3 b7-b6 Bf1-d3 d7-d5 O-O Bc8-b7 c3-c4 g6-g5 c4xd5 e6xd5 Qd1-e2 O-O c2-c4
30/37 1:44:36 26,413,520k 4,208k -2.31 e7-e6 Ng1-f3 c7-c5 c2-c3 Nb8-c6 d2-d4 c5xd4 Bf1-d3 Ng8-e7 O-O Ne7-g6 c3xd4 Bf8-e7 d4-d5 Nc6-b4 Bd3-b5 O-O a2-a3 Nb4-a6 d5-d6 Be7-f6 Bb5-d3 Na6-c5 Bd3-c2 e6-e5 g2-g3 b7-b6 Nb1-c3 Kg8-h8 Nc3-d5 Bc8-b7 h2-h4 Bb7xd5 Qd1xd5 Bf6xh4 b2-b4 Nc5-e6
30/43 1:44:36 26,413,520k 4,208k -2.31 c7-c5 Ng1-f3 e7-e6 c2-c3 Nb8-c6 d2-d4 c5xd4 Bf1-d3 Ng8-e7 O-O Ne7-g6 c3xd4 Bf8-e7 d4-d5 Nc6-b4 Bd3-b5 O-O a2-a3 Nb4-a6 d5-d6 Be7-f6 Bb5-d3 Na6-c5 Bd3-c2 e6-e5 g2-g3 b7-b6 Nb1-c3 Kg8-h8 Bc1-e3 Bc8-a6 Rf1-e1 Ra8-c8 Nc3-d5 Nc5-e6 Qd1-d2 Ba6-b7 a3-a4 Bb7xd5
Four-Three Check chess
Moderator: Ras
-
Uri Blass
- Posts: 11133
- Joined: Thu Mar 09, 2006 12:37 am
- Location: Tel-Aviv Israel
-
Uri Blass
- Posts: 11133
- Joined: Thu Mar 09, 2006 12:37 am
- Location: Tel-Aviv Israel
Re: Four-Three Check chess
I think that early check is not always good in 5-check because you cannot get 4 more checks so easy by sacrifices in the way that you can get 2 checks.lkaufman wrote: ↑Sat Dec 03, 2022 5:59 pmUsing CuteChess, I can set Fairy-Stockfish to play 3-check or 5-check; there is no option for 4-check. But it seems that if I set it to play 5-check it plays more or less as if it is normal chess, it doesn't seem to try to play an early check the way it does at 3-check. So I don't know how valid a test would be starting with 5-check (with some checks already played). Does anyone know anything about this? Also if the checks are played to get to the start position, they may not count towards the total, I don't know about that. I suppose I could use a start position where the side to move has an obvious safe check. So that might allow for a test of 5-4 check.hgm wrote: ↑Sat Dec 03, 2022 1:28 pmIf there is a winning score so early in the game this points to an opening problem. It doesn't excluse that careful study of opening theory could reveal a line through which black can equalize. Even a very long analysis search with a top engine is not very good at distinguishing good from poor opening lines, as the engine has the tendency of confirming its own strategic misconceptions. At short TC the engine would never see it is running into a trap before it is too late. So if loosing lines are plentiful, and good defense is just a narrow path (as was the case in Tenjiku Shogi), stumbling along blindly will give an unrepresentative result.lkaufman wrote: ↑Sat Dec 03, 2022 6:09 amFor variety I relied on MP (4) variability. Although not ideal, I think it was enough to prove the point, as I saw many defenses to 1.e4 being chosen, even on move 1. The 97% White score is higher than I would have guessed, but not way higher, since White generally shows evals like +2 or so after a few moves. Getting in the first check is worth nearly a minor piece according to the eval of the engine used, so Black must play very cautiously (or gambit pawns) to avoid any non-piece losing check. So even if he avoids an early check, he gets a very cramped and/or pawn down position, which is normally losing even in normal chess.
It doesn't seem likely that merely 'thinking about it' would be a successful method for getting at the truth. The 4-3 thing (or any other 'checks odds') must be easy to test. Just let Fairy-Stockfish play 4-checks from a start position with an unbalanced number of checks.After thinking about this a bit, it seems likely to me that my proposed 4-3 check would favor Black considerably, perhaps less than 3 check favors White, but still too much. Black could play boldly, allowing the first check, and still be favored if he is then in the best position to make the next check. Maybe 5-4 would be more balanced. Note that 5 check is a practical maximum if the goal is to avoid most draws, since the typical direct perpetual check would mean giving five checks, so a 6 check rule would fail to stop all perpetual checks. I think that 5-check (which is a known variant though much less popular than 3-check) would probably not give White anywhere near the edge he has in 3-check, since the value of getting in the first check would be dramatically lower, maybe below a pawn, so Black could probably play some decent normal defense (perhaps the Sicilian Kan would be a good choice). In other words, 3-check doesn't seem much like normal chess, but 5-check probably feels more like normal chess with a tie-breaking rule added. Perhaps five-check Armageddon (Black wins draws) would be reasonably fair, although I would bet on White. But I don't know of any engine that has been optimized for five-check to test this hypothesis.
After 1.e4 c5 2.Nf3 d6 stockfish with 5-check find that 3.Bb5+ is good
Not after 1.e4 d6 but I doubt if Bb5+ is good in 5 checks in this case.
-
hgm
- Posts: 28429
- Joined: Fri Mar 10, 2006 10:06 am
- Location: Amsterdam
- Full name: H G Muller
Re: Four-Three Check chess
If it can play 5-check, it should be possible to start from a position where the remaining-checks counter is at 3+4, right? Such positions do occur in the game tree of 5-checks. That the FIDE starting position might not be reachable with a different checks budget should not be a problem; engines should not be smart enough to determine whether positions are reachable, and after a few pawn moves you will get to one that is reachable quickly enough anyway.lkaufman wrote: ↑Sat Dec 03, 2022 5:59 pmUsing CuteChess, I can set Fairy-Stockfish to play 3-check or 5-check; there is no option for 4-check. But it seems that if I set it to play 5-check it plays more or less as if it is normal chess, it doesn't seem to try to play an early check the way it does at 3-check. So I don't know how valid a test would be starting with 5-check (with some checks already played). Does anyone know anything about this? Also if the checks are played to get to the start position, they may not count towards the total, I don't know about that. I suppose I could use a start position where the side to move has an obvious safe check. So that might allow for a test of 5-4 check.
-
MTaktikos
- Posts: 59
- Joined: Fri Oct 25, 2019 7:58 pm
- Full name: Michael Taktikos
Re: Four-Three Check chess
Have compiled a FSF (Fairy-Stockfish) version with the mentioned variants implemented: https://filehorst.de/d/ekmDuftxlkaufman wrote: ↑Sat Dec 03, 2022 5:59 pm Using CuteChess, I can set Fairy-Stockfish to play 3-check or 5-check; there is no option for 4-check. [...] Does anyone know anything about this? Also if the checks are played to get to the start position, they may not count towards the total, I don't know about that. I suppose I could use a start position where the side to move has an obvious safe check. So that might allow for a test of 5-4 check.
How to use:
You can start in command line FSFWithNChecks, and input the commands (but not the comments in brackets)
xboard
cores 20
(that is, how many threads your PC allows)
memory 8192
(or whatever RAM in MB your PC gives you)
variant 1check
st 20
(how many seconds per move to calculate. In 1check this is overkill: to prove the first-player win, FSF needs less than 1 second)
go
variant 2check
st 20
go
The White advantage is overwhelming
variant fourthreecheck
st 180
go
Here as you said, Black has advantage, according to FSF about 1.5 pawns, so it is not clear if it is a second-player win. May be longer time control can solve this
___________________
https://github.com/mtaktikos?tab=repositories
_____________________
https://github.com/mtaktikos?tab=repositories
https://github.com/mtaktikos?tab=repositories
-
lkaufman
- Posts: 6279
- Joined: Sun Jan 10, 2010 6:15 am
- Location: Maryland USA
- Full name: Larry Kaufman
Re: Four-Three Check chess
I believe that the 3-check version has a NN trained for that variant. But what happens with the other N-check variants? Do they use this same net, in which case perhaps they would play identically to 3 check chess once the remaining check count is 3 or less, but would play as in normal chess in lines where the remaining check count is 4 or more? Or does it work differently than this?MTaktikos wrote: ↑Sun Dec 04, 2022 12:17 amHave compiled a FSF (Fairy-Stockfish) version with the mentioned variants implemented: https://filehorst.de/d/ekmDuftxlkaufman wrote: ↑Sat Dec 03, 2022 5:59 pm Using CuteChess, I can set Fairy-Stockfish to play 3-check or 5-check; there is no option for 4-check. [...] Does anyone know anything about this? Also if the checks are played to get to the start position, they may not count towards the total, I don't know about that. I suppose I could use a start position where the side to move has an obvious safe check. So that might allow for a test of 5-4 check.
How to use:
You can start in command line FSFWithNChecks, and input the commands (but not the comments in brackets)
xboard
cores 20
(that is, how many threads your PC allows)
memory 8192
(or whatever RAM in MB your PC gives you)
variant 1check
st 20
(how many seconds per move to calculate. In 1check this is overkill: to prove the first-player win, FSF needs less than 1 second)
go
variant 2check
st 20
go
The White advantage is overwhelming
variant fourthreecheck
st 180
go
Here as you said, Black has advantage, according to FSF about 1.5 pawns, so it is not clear if it is a second-player win. May be longer time control can solve this
___________________
https://github.com/mtaktikos?tab=repositories
Komodo rules!
-
MTaktikos
- Posts: 59
- Joined: Fri Oct 25, 2019 7:58 pm
- Full name: Michael Taktikos
Re: Four-Three Check chess
The other NCheck variants don't use a NNUE at all. I think, for 1check and 2check, to train a NNUE would be overkill, the classical evaluation is complete sufficient to realize the first-player win. In fourthreecheck, to train a NNUE looks like a good idea to see if it is a second player win, but this hasn't the highest priority in my todo listlkaufman wrote: ↑Sun Dec 04, 2022 12:59 am I believe that the 3-check version has a NN trained for that variant. But what happens with the other N-check variants? Do they use this same net, in which case perhaps they would play identically to 3 check chess once the remaining check count is 3 or less, but would play as in normal chess in lines where the remaining check count is 4 or more? Or does it work differently than this?
_____________________
https://github.com/mtaktikos?tab=repositories
https://github.com/mtaktikos?tab=repositories
-
lkaufman
- Posts: 6279
- Joined: Sun Jan 10, 2010 6:15 am
- Location: Maryland USA
- Full name: Larry Kaufman
Re: Four-Three Check chess
So when you use it to play 5 check (or fourthreecheck), does it just use normal Stockfish eval, not caring at all about the number of checks given unless it reaches the specified maximum, or does it assign some arbitrary values to needing only 1 or 2 or 3 or 4 more checks? For variants requiring more than 3 checks, could you use the 3 check net anyway or would it just play silly moves when the number of needed checks remaining was more than 3?MTaktikos wrote: ↑Sun Dec 04, 2022 1:11 amThe other NCheck variants don't use a NNUE at all. I think, for 1check and 2check, to train a NNUE would be overkill, the classical evaluation is complete sufficient to realize the first-player win. In fourthreecheck, to train a NNUE looks like a good idea to see if it is a second player win, but this hasn't the highest priority in my todo listlkaufman wrote: ↑Sun Dec 04, 2022 12:59 am I believe that the 3-check version has a NN trained for that variant. But what happens with the other N-check variants? Do they use this same net, in which case perhaps they would play identically to 3 check chess once the remaining check count is 3 or less, but would play as in normal chess in lines where the remaining check count is 4 or more? Or does it work differently than this?
Komodo rules!
-
MTaktikos
- Posts: 59
- Joined: Fri Oct 25, 2019 7:58 pm
- Full name: Michael Taktikos
Re: Four-Three Check chess
5check is the only NCheck variant that was considered important enough to get "name compatibility" (I explain this below) where the 3check NNUE can be used directly. But that's no problem, the name compatibility can easily be extended to other variants, or the NNUE can be renamed
Depends on how much more than 3checks, To give an extreme example, if you want to analyse 1000check (what cannot be distinguished from normal chess) then the 3check NNUE would in some cases produce early checks, what in normal chess may be senseless and counterproductive. I would say, the safe way to find out if a NNUE brings better results than classical, is to test it out.For variants requiring more than 3 checks, could you use the 3 check net anyway or would it just play silly moves when the number of needed checks remaining was more than 3?
As an example, I describe here how you can make the test if the 3check NNUE is compatible with the fourthreecheck variant:
1) Download variantfishtest from https://github.com/ianfab/variantfishtest
2) Copy the FSFWithNChecks_avx2.exe and also a second copy with other name, say FSFClone.exe, in the same folder as variantfishtest
3) Download from https://fairy-stockfish.github.io/nnue/ the file 3check-313cc226a173.nnue, copy it to the folder of variantfishtest, and rename it to fourthreecheck-313cc226a173.nnue
4) Then in the folder of variantfishtest start a command line where you can copy paste the following:
python3 variantfishtest.py FSFWithNChecks_avx2.exe --e1-options EvalFile=fourthreecheck-313cc226a173.nnue FSFClone.exe -t 1000 -i 200 -v fourthreecheck -n 200
(after -t you input the time for the game in millisec, after -i the increment in millisec, after -v the variant, and after -n the number of test games)
Didn't invest the time to make the above test, in case you find out that the NNUE squeezes in fourthreecheck indeed more elo than classical eval, the next step of compatibility would be the above mentioned "name compatibility". It is the option, that the NNUE can be imported under it's own name without being renamed before, so that you don't need to have the same NNUE under different names and save disk space. In fourthreecheck, this name compatibility is not given yet, you have to rename the 3check nnue as mentioned above, else it won't be used by FSF. If you find out that the 3 check NNUE brings better results than classical, I can implement for fourthreecheck this name compatibility, it requires only one line of FSF code
_____________________
https://github.com/mtaktikos?tab=repositories
https://github.com/mtaktikos?tab=repositories
-
lkaufman
- Posts: 6279
- Joined: Sun Jan 10, 2010 6:15 am
- Location: Maryland USA
- Full name: Larry Kaufman
Re: Four-Three Check chess
I ran a 500 game match of 5 check overnight using your engine (before you wrote the above) in Cutechess, four threads for variety, 2' + 1". The result was again very lopsided, +408 -55 =37 for +305.5 elo. If I understand you correctly this would be using the 3 check NN; if so it is a strong indication that this net works quite well even at 5 check, since I wouldn't expect such a crushing score it it just played normal chess unless it actually saw 5 checks in a line. So most likely the 3 check net will work well enough for any test involving reasonable number of checks; I don't know if it would work well for 3 checks vs 1000 checks (i.e. standard chess). I haven't tried running tests outside of Cutechess; it would be nice if Cutechess supported any x,y check variant but I suppose that's not anything you can address. Anyway my conclusion so far is that for Ncheck test to be a playable game at engine level, we need to find what value of N makes (N+1,N) check chess a roughly balanced game. 4,3 is apparently too low, maybe 6,5 or so would be about right, I imagine. Alternatively, play with equal N (3 check, 5 check, or 4 check) but limit White's first moves, ruling out those that give too big an edge.MTaktikos wrote: ↑Sun Dec 04, 2022 1:53 pm5check is the only NCheck variant that was considered important enough to get "name compatibility" (I explain this below) where the 3check NNUE can be used directly. But that's no problem, the name compatibility can easily be extended to other variants, or the NNUE can be renamed
Depends on how much more than 3checks, To give an extreme example, if you want to analyse 1000check (what cannot be distinguished from normal chess) then the 3check NNUE would in some cases produce early checks, what in normal chess may be senseless and counterproductive. I would say, the safe way to find out if a NNUE brings better results than classical, is to test it out.For variants requiring more than 3 checks, could you use the 3 check net anyway or would it just play silly moves when the number of needed checks remaining was more than 3?
As an example, I describe here how you can make the test if the 3check NNUE is compatible with the fourthreecheck variant:
1) Download variantfishtest from https://github.com/ianfab/variantfishtest
2) Copy the FSFWithNChecks_avx2.exe and also a second copy with other name, say FSFClone.exe, in the same folder as variantfishtest
3) Download from https://fairy-stockfish.github.io/nnue/ the file 3check-313cc226a173.nnue, copy it to the folder of variantfishtest, and rename it to fourthreecheck-313cc226a173.nnue
4) Then in the folder of variantfishtest start a command line where you can copy paste the following:
python3 variantfishtest.py FSFWithNChecks_avx2.exe --e1-options EvalFile=fourthreecheck-313cc226a173.nnue FSFClone.exe -t 1000 -i 200 -v fourthreecheck -n 200
(after -t you input the time for the game in millisec, after -i the increment in millisec, after -v the variant, and after -n the number of test games)
Didn't invest the time to make the above test, in case you find out that the NNUE squeezes in fourthreecheck indeed more elo than classical eval, the next step of compatibility would be the above mentioned "name compatibility". It is the option, that the NNUE can be imported under it's own name without being renamed before, so that you don't need to have the same NNUE under different names and save disk space. In fourthreecheck, this name compatibility is not given yet, you have to rename the 3check nnue as mentioned above, else it won't be used by FSF. If you find out that the 3 check NNUE brings better results than classical, I can implement for fourthreecheck this name compatibility, it requires only one line of FSF code
Komodo rules!
-
hgm
- Posts: 28429
- Joined: Fri Mar 10, 2006 10:06 am
- Location: Amsterdam
- Full name: H G Muller
Re: Four-Three Check chess
If you would use WinBoard/XBoard as the GUI then I could address it. If it doesn't already support it. (I never payed much attention to this variant, so I am not sure whether it actually counts the checks to adjudicate, (it was mostly used as ICS client for this variant, where the ICS would call the shots), but that would be easy to add. As far as I am concerned all N-checks variants are the same variant, just with a somewhat different initial position (with different check budgets).
Come to think of it: a legal 3check game is also a legal FIDE game, right? There is no reason the GUI would have to know it is playing 3check rather than normal. It is just that the game ends at a rather unexpected moment. So provided that the engines can be trusted to claim game end correctly, there really is no reason why the GUI should be aware that a variant is being played.
Come to think of it: a legal 3check game is also a legal FIDE game, right? There is no reason the GUI would have to know it is playing 3check rather than normal. It is just that the game ends at a rather unexpected moment. So provided that the engines can be trusted to claim game end correctly, there really is no reason why the GUI should be aware that a variant is being played.