BoCC -- Beauty of Computer Chess

Discussion of anything and everything relating to chess playing software and machines.

Moderator: Ras

User avatar
Rebel
Posts: 7346
Joined: Thu Aug 18, 2011 12:04 pm
Full name: Ed Schröder

Re: BoCC -- Beauty of Computer Chess

Post by Rebel »

pohl4711 wrote: Sat Aug 09, 2025 6:14 am But if you really need these divided points, I will add this to the EAS-Tool, but this needs a 3rd rankinglist in the output...
Ah, no, too much work.

I made a super fast shortie evaluator, it extracts shorties from megabase with 2.3M positions within 8 seconds, output 490.340 games with evaluation. First 2 games :

Code: Select all

[Event "London m8"]
[Site "London"]
[Date "1851.??.??"]
[White "Kieseritzky, Lionel"]
[Black "Anderssen, Adolf"]
[Result "1-0"]
[PlyCount "71"]
[Short "70"]

1. d4 d5 2. c4 dxc4 3. e3 e5 4. Bxc4 exd4 5. exd4 Bd6 6. Nf3 Nf6 7. Nc3 O-O 8.
O-O h6 9. Ne5 Nc6 10. f4 Ne7 11. Qb3 Bxe5 12. dxe5 Qd4+ 13. Kh1 Ng4 14. Nd1 b5
15. Be2 Be6 16. Qg3 h5 17. h3 Nh6 18. Bxh5 f6 19. Bf3 Rad8 20. Qf2 fxe5 21. Be3
Qd3 22. fxe5 Nhf5 23. Kh2 Ng6 24. Bg5 Rd7 25. Rc1 Nxe5 26. Rc3 Qd6 27. Bf4 g5
28. Rc6 Ng4+ 29. hxg4 Rh7+ 30. Kg1 Qxf4 31. g3 Nxg3 32. Rxe6 Nxf1 33. Kxf1 Rh1+
34. Bxh1 Qc4+ 35. Re2 Qxg4 36. Bd5+ 1-0
Note the Short tag, the 70 points evaluation is based on the length of the game.

Code: Select all

[Event "London m9"]
[Site "London"]
[Date "1851.??.??"]
[White "Anderssen, Adolf"]
[Black "Loewenthal, Johann Jacob"]
[Result "0-1"]
[PlyCount "34"]
[Short "1200"]

1. e4 e5 2. Nf3 Nc6 3. d4 exd4 4. Bc4 Bc5 5. O-O d6 6. c3 d3 7. b4 Bb6 8. a4 a5
9. b5 Ne5 10. Nxe5 dxe5 11. Qh5 Qf6 12. Ba3 Ne7 13. Nd2 Be6 14. Bxd3 O-O-O 15.
Qe2 Ng6 16. g3 Bh3 17. c4 Nf4 0-1
Note the Short tag, the 1200 points evaluation is based on the length of the game.

How it works, draws are skipped, the move number is created from the PlyCount tag, when the move number is > 60 (currently hard coded) the game is skipped, no shortie. When <=60 it looks into a flexible table to get the evaluation score and stored in the Short tag.

The flexible table is stored in the file values.txt , in there are the evaluations based on move number.

Code: Select all

8000 7500 7000 6500 6000 5500 5000 4500 4000 3600
3200 2800 3500 2200 1900 1700 1500 1350 1200 1100
1000  900  800  700  600  500  450  400  350  300
 250  210  180  150  120   95   70   50   35   25
  10    5    0    0    0    0    0    0    0    0
   0    0    0    0    0    0    0    0    0    0
   0    0    0    0    0    0    0    0    0    0
Freely change the values, but keep the format. This is how it is done in BoCC, it stops giving a bonus after move 40, a zero value means no shortie.

Another speed advantage is that you only have to do it once and the output file shorts-out.pgn is about 5 times shorter than the input file.

Operation :
. shorts.exe anand.pgn
. shorts.exe shortwins.pgn

90% of coding is debugging, the other 10% is writing bugs.
jefk
Posts: 972
Joined: Sun Jul 25, 2010 10:07 pm
Location: the Netherlands
Full name: Jef Kaan

Re: BoCC -- Beauty of Computer Chess

Post by jefk »

Looks like a very aggressive game to me.
Yep, (opening) books matter, and should have higher quality at higher Elo's
this game was the Vukovic gambit (for Black, sacrificing the knight on c5)
which is not good for White. Almost a trap. Better is simply 5.Bd3.
User avatar
pohl4711
Posts: 2767
Joined: Sat Sep 03, 2011 7:25 am
Location: Berlin, Germany
Full name: Stefan Pohl

Re: BoCC -- Beauty of Computer Chess

Post by pohl4711 »

Rebel wrote: Sat Aug 09, 2025 9:49 pm
pohl4711 wrote: Sat Aug 09, 2025 6:14 am But if you really need these divided points, I will add this to the EAS-Tool, but this needs a 3rd rankinglist in the output...
Ah, no, too much work.
No, I can do that, if you really need that. Personally, I find percents way better to read than absolute numbers, and building a third ratinglist while computing, will lead to a slight slowdown of the EAS-Tool.
Rebel wrote: Sat Aug 09, 2025 9:49 pm I made a super fast shortie evaluator, it extracts shorties from megabase with 2.3M positions within 8 seconds, output 490.340 games with evaluation.
This is the real good news. If I understand that right, your BoCC-Tool does not need evals/comments in the source.pgn anymore and can now run on pgn-bases containing only moves, no evals. That is a huuuuuuuuuuuuuuuuuuuuuuuge progress. I always mentioned, this was a real weak point of your tool, and now it is gone. Great!
Rebel wrote: Sat Aug 09, 2025 9:49 pm How it works, draws are skipped, the move number is created from the PlyCount tag, when the move number is > 60 (currently hard coded) the game is skipped, no shortie.
The problem with shorties is, to set the (move-)limit. In the early days of the EAS-Tool, short-wins started from move 60, increasing the short-wins-point down to 40 moves. But this leads to problems, because the length of enginegames depends on
1) pgn-opening or just a FEN-code (an opening-endposition can end at move 8 or move 0 (if no movenumber is sprecified in the FEN-code))
2) Playing with draw- and resign-adjudications or not
3) using Tablebase to adjust games or not

This is the reason, I decided, a better way to calculate short-wins points, is to set the movelimits for these points by calculating the movelimits out of the overall length of all won games of source.pgn

Both methods do not deliver really "stable" movelimits, meaning, comparable movelimits over several different source.pgn-files. But the hardcoded movelimit is definitly worse in my experience: Switching from pgn-openings to FEN-openings alone leads to completely different short-wins-points, when using a hardcoded movelimit of 60 (or any other hardcoded number), because suddenly all games are 8 moves shorter... Using Syzygy-bases for adjudication shorts the games at least 5-10 moves in average. Even using 5-Syzygy or 6-Syzygy means 2-3 moves length-difference.
"Adjucation by eval"- enginegames are (at least) 10-15 moves shorter than enginegames played until mate.
Because of all this, a short-wins scoring-system will never be able to give exactly the same points when computing different source.pgn, because of these points 1-3 above and a hardcoded movelimit is a worse solution than calculating the movelimit depending on the source.pgn - even though both (hardcoding and calculating the movelimit) will not deliver stable points, when computing different source.pgn.
User avatar
Rebel
Posts: 7346
Joined: Thu Aug 18, 2011 12:04 pm
Full name: Ed Schröder

Re: BoCC -- Beauty of Computer Chess

Post by Rebel »

pohl4711 wrote: Sun Aug 10, 2025 7:48 am
Rebel wrote: Sat Aug 09, 2025 9:49 pm
pohl4711 wrote: Sat Aug 09, 2025 6:14 am But if you really need these divided points, I will add this to the EAS-Tool, but this needs a 3rd rankinglist in the output...
Ah, no, too much work.
No, I can do that, if you really need that. Personally, I find percents way better to read than absolute numbers, and building a third ratinglist while computing, will lead to a slight slowdown of the EAS-Tool.
Okay, would be interesting to see the balance of points between sacs, sorts and bad draws.

pohl4711 wrote: Sun Aug 10, 2025 7:48 am
Rebel wrote: Sat Aug 09, 2025 9:49 pm I made a super fast shortie evaluator, it extracts shorties from megabase with 2.3M positions within 8 seconds, output 490.340 games with evaluation.
This is the real good news. If I understand that right, your BoCC-Tool does not need evals/comments in the source.pgn anymore and can now run on pgn-bases containing only moves, no evals. That is a huuuuuuuuuuuuuuuuuuuuuuuge progress. I always mentioned, this was a real weak point of your tool, and now it is gone. Great!
Ha ha, but no.

1. I made the tool for you.

2. It's no weak point at all, instead the opposite, quality of the output pgns is much better, it adds the BoCC points and the move number the game is decided to PGN tags.

3. The very first I do with your (great) tool is to skip the remove comments from pgn-extract and so all output files are with comments. I don't care that your tool runs somewhat longer.

pgn-extract --quiet --fixresulttags -C -N -V --plycount ../%gamebase% --output newsource.pgn > NUL

becomes :

pgn-extract --quiet --fixresulttags --plycount ../%gamebase% --output newsource.pgn > NUL

pohl4711 wrote: Sun Aug 10, 2025 7:48 am
Rebel wrote: Sat Aug 09, 2025 9:49 pm How it works, draws are skipped, the move number is created from the PlyCount tag, when the move number is > 60 (currently hard coded) the game is skipped, no shortie.
The problem with shorties is, to set the (move-)limit. In the early days of the EAS-Tool, short-wins started from move 60, increasing the short-wins-point down to 40 moves. But this leads to problems, because the length of enginegames depends on
1) pgn-opening or just a FEN-code (an opening-endposition can end at move 8 or move 0 (if no movenumber is sprecified in the FEN-code))
2) Playing with draw- and resign-adjudications or not
3) using Tablebase to adjust games or not

This is the reason, I decided, a better way to calculate short-wins points, is to set the movelimits for these points by calculating the movelimits out of the overall length of all won games of source.pgn

Both methods do not deliver really "stable" movelimits, meaning, comparable movelimits over several different source.pgn-files. But the hardcoded movelimit is definitly worse in my experience: Switching from pgn-openings to FEN-openings alone leads to completely different short-wins-points, when using a hardcoded movelimit of 60 (or any other hardcoded number), because suddenly all games are 8 moves shorter... Using Syzygy-bases for adjudication shorts the games at least 5-10 moves in average. Even using 5-Syzygy or 6-Syzygy means 2-3 moves length-difference.
"Adjucation by eval"- enginegames are (at least) 10-15 moves shorter than enginegames played until mate.
Because of all this, a short-wins scoring-system will never be able to give exactly the same points when computing different source.pgn, because of these points 1-3 above and a hardcoded movelimit is a worse solution than calculating the movelimit depending on the source.pgn - even though both (hardcoding and calculating the movelimit) will not deliver stable points, when computing different source.pgn.
Have you tried my tool?

EAS points based on move number via a flexible progressive table which you can tune to your desires.
90% of coding is debugging, the other 10% is writing bugs.
User avatar
pohl4711
Posts: 2767
Joined: Sat Sep 03, 2011 7:25 am
Location: Berlin, Germany
Full name: Stefan Pohl

Re: BoCC -- Beauty of Computer Chess

Post by pohl4711 »

I will definitly look into the new version of your BoCC tool. Will see, if I can use something in the EAS-Tool.
But please keep in mind, I am strictly convinced, using evaluations is not a good thing in a tool like this. But a very quick material-based eval at the end of each game - could be possible.

Right now, I am quite busy, so it will perhaps take a little time. But I plan to do new EAS-tool version with a third ratinglist with the EAS-points, not percents (IMHO, this is a good idea, because it can be helpful for engine devleopers. Perhaps). But not right now in the summer.
User avatar
pohl4711
Posts: 2767
Joined: Sat Sep 03, 2011 7:25 am
Location: Berlin, Germany
Full name: Stefan Pohl

Re: BoCC -- Beauty of Computer Chess

Post by pohl4711 »

Rebel wrote: Sun Aug 10, 2025 9:45 am
Have you tried my tool?

EAS points based on move number via a flexible progressive table which you can tune to your desires.
I have tried it. Very fast, indeed. But it does not work with a pgn without evals (I tried my full ratinglist.pgn). So, it can not be used in the EAS-Tool. The EAS-Tool must run on all pgn-files, not just enginegames with stored evals in it. That will not be changed by me, ever.

But, what really would be an improvement for the EAS-tool:
The main idea of my fast and eval-free sac-search is, that engines do not blunder and do not loose on time, so a sac game is, when the winning engine had a material disadvantage for 8 consecutive plies. This great idea has the disadvantage, that it fails, if the game-result is not correct (means for example a timeloss or a crash of the engine in a winning position) and until now, I had no possibility to avoid this. And this "weak point" of the EAS-tool also makes the sac-search in human-games very "buggy", because humans do blunder and loose on time...
But, I had an idea, how to fix this (for this, an eval is really needed...):
An extra mini-tool (I would add it to the EAS-Tool download), that fixes games-results of any source.pgn (including human games, of course). To do this, this tool needs to do a quick (HCE-)evaluation of each endposition of each game of the source.pgn, that does not end with mate or draw by draw-rules. With very, very small thinking-time for each endposition, of course. Sadly, counting just the material does not help here, because of the case, the opponent resigns, after a sac is played. So, the winning color has less material, but the game is still won.
Then the game-result is set to result of the evaluation. Perhaps with a threshhold parameter (example here: 1.0)
Eval from -1.0 up to +1.0 or so would mean a draw and any eval above +1.0 means 1-0 and below -1.0 means a 0-1
But perhaps a threshhold of 1.5 is better? Here I would love to try some different settings.

I know, that evaluating all endpositions of a source.pgn will take some time, even when using just 25ms or so for each single evaluation. That is the reason, this tool can not be directly included in the EAS-Tool. The user would need this tool just from time to time and especially when using the EAS-Tool on a human games gamebase.pgn.
Example: With 25ms thinking-time, the investigation of my UHO-Top15 Ratinglist gamebase with 120000 games will take around 50 minutes (40 games per second can be evaluated)
But gamebases containing human games are way smaller most of the time and here, this tool would be very, very helpful. And much faster.

And the good news is: This tool could look into the gamebase first, if there are evals stored in the comments of the plies of the investigated game. If this is the case, the tool can cancel the evaluation of this game and use the eval in the game-comments instead of its own evaluation-function. Then proceed to the next game (=nice speedup). Mention, a single gamebase can contain both: commented and not-commented games.

If you could make this tool, this would be a huge improvement for the EAS-tool, especially when running it on human games. For you, already having a HCE-eval, this should be quite easy to do. I would be extremely grateful, because I am too stupid to do it by myself. Because I got so many requests: "Can I use the EAS-Tool on my human games bases?" And I always had to answer, that the EAS-Tool sadly does not work very good on human games.
But with this additional tool, the EAS-Tool would work fine on human games. A huge improvement...and a still eval-free EAS-Tool (very important point for me...)
User avatar
Rebel
Posts: 7346
Joined: Thu Aug 18, 2011 12:04 pm
Full name: Ed Schröder

Re: BoCC -- Beauty of Computer Chess

Post by Rebel »

pohl4711 wrote: Tue Aug 12, 2025 7:32 am
Rebel wrote: Sun Aug 10, 2025 9:45 am
Have you tried my tool?

EAS points based on move number via a flexible progressive table which you can tune to your desires.
I have tried it. Very fast, indeed. But it does not work with a pgn without evals (I tried my full ratinglist.pgn). So, it can not be used in the EAS-Tool. The EAS-Tool must run on all pgn-files, not just enginegames with stored evals in it. That will not be changed by me, ever.
Your full rating list PGN has the [Plycount] tag deleted, hence no output, your archive files are okay, that's the reason, it's not a commented or not commented problem.
pohl4711 wrote: Tue Aug 12, 2025 7:32 am That will not be changed by me, ever.
:D

I like bold statements, however, I am a programmer, currently a STYLE programmer or so to say a retired ELO programmer, I want optimal information in the PGN output and thus I am not going to throw the baby out with the bathwater. I want to compare scores with the opponent it plays. Furthermore I can do some extras, consider the following 2 examples -

[pgn][Event "Short Games"]
[Site "Gathered by the BoCC program"]
[Date "2025.06.26"]
[White "Patricia-4"]
[Black "seer_v2.8"]
[Result "1-0"]
[Short "5500"]
[Move "5"]

{Game decided at 18 move, only 5 moves after the book moves.}

1. d4 {book} Nf6 {book} 2. c4 {book} e6 {book} 3. Nf3 {book} b6 {book} 4. g3 {book} Bb7 {book} 5. Bg2 {book} Be7 {book} 6. Nc3 {book} O-O {book} 7. O-O {book} d5 {book} 8. Ne5 {book} Na6 {book} 9. cxd5 {book} exd5 {book} 10. Nd3 {book} Ne4 {book} 11. Nf4 {book} Nxc3 {book} 12. bxc3 {book} c6 {book} 13. e4 {+0.52/16 0.38s} dxe4 {-0.68/14 0.21s} 14. Bxe4 {+0.59/16 0.76s} Bd6 {-0.73/15 0.41s} 15. Nh5 {+0.66/17 0.94s} Nc7 {-0.45/16 0.43s} 16. Nxg7 {+2.86/18 0.28s} Nd5 {-6.23/16 0.40s} 17. Qh5 {+3.40/18 0.27s} f5 {-8.41/16 0.17s} 18. Nxf5 {+3.66/19 0.38s} Rxf5 {-8.44/17 0.33s} 19. Bxf5 {+3.86/17 0.25s} Qe7 {-8.62/17 0.16s} 20. c4 {+3.92/18 0.31s} Nc3 {-9.23/16 0.17s} 21. Bb2 {+3.92/18 0.25s} Ne2+ {-9.49/16 0.26s} 22. Kh1 {+3.44/17 0.25s} Nxd4 {-9.69/17 0.36s} 23. Qg4+ {+3.87/19 0.24s} Kf8 {-9.67/18 0.24s} 24. Bxd4 {+3.85/20 0.26s} c5+ {-9.88/19 0.16s} 25. Kg1 {+3.88/21 0.18s} cxd4 {-10.14/22 1.1s} 26. Be6 {+3.65/20 0.27s} Ke8 {-10.05/21 0.34s} 27. Rfe1 {+4.32/19 0.23s} Kd8 {-10.15/21 0.21s, White wins by adjudication} 1-0 [/pgn]13 book moves, 5 moves later the game is over, 5500 points for Patricia, see the [Short "5500"] tag.

King Attack then -

[pgn][Event "Selected King Attacks"]
[Site "Evaluation Filter Value 100"]
[Date "2025.06.27"]
[Round "?"]
[White "CSTal-2.1-EAS"]
[Black "Alexandria-7.0"]
[Result "1-0"]
[King "12744"]
[Move "14"]

{ Educated guess on move 14 as a first sign of a King Attack on the losing
side. }

1. e4 { book } 1... e5 { book } 2. Nf3 { book } 2... Nc6 { book } 3. Bb5 {
book } 3... Nd4 { book } 4. Nxd4 { book } 4... exd4 { book } 5. O-O { book
} 5... g6 { book } 6. d3 { book } 6... Bg7 { book } 7. Ba4 { +1.19/14 0.44s
} 7... a5 { -1.16/16 0.42s } 8. Na3 { +0.86/14 0.53s } 8... c6 { -0.44/16
0.34s } 9. Nc4 { +1.88/14 0.19s } 9... b5 { +0.16/15 0.19s } 10. Nd6+ {
+2.69/15 0.20s } 10... Ke7 { -0.28/16 0.17s } 11. Bf4 { +2.42/16 0.29s }
11... bxa4 { -0.36/17 0.16s } 12. Qf3 { +2.22/19 1.6s } 12... Kf8 {
-1.21/15 0.27s } 13. Bg5 { +2.49/16 0.18s } 13... f6 { -1.48/16 0.28s } 14.
e5 { +2.36/16 0.17s } 14... Bh6 { -0.61/18 0.38s } 15. Bxh6+ { +2.46/17
0.33s } 15... Nxh6 { +1.23/15 0.14s } 16. exf6 { +2.43/19 0.23s } 16... Nf7
{ +1.69/18 0.42s } 17. Rae1 { +2.56/17 0.28s } 17... Nxd6 { +1.80/17 0.23s
} 18. Re7 { +2.65/18 0.20s } 18... Ra6 { +0.82/16 0.23s } 19. Rfe1 {
+3.70/15 0.27s } 19... c5 { +0.32/14 0.19s } 20. Qd5 { +3.13/15 0.20s }
20... a3 { 0.00/17 0.57s } 21. b3 { +3.71/15 0.17s } 21... h6 { -0.71/16
0.49s } 22. h4 { +2.69/16 0.85s } 22... Bb7 { 0.00/18 0.21s } 23. Qxc5 {
+2.94/15 0.23s } 23... Rc6 { -0.67/17 0.34s } 24. Qe5 { +3.33/15 0.23s }
24... Bc8 { -2.32/20 0.48s } 25. g3 { +2.91/15 0.28s } 25... Rg8 { -2.16/17
0.54s } 26. g4 { +2.92/14 0.12s } 26... Ba6 { -1.83/20 0.20s } 27. f4 {
+3.06/14 0.28s } 27... Bb5 { -3.51/17 0.74s } 28. g5 { +4.30/14 0.26s }
28... hxg5 { -4.41/16 0.50s } 29. hxg5 { +4.01/13 0.074s } 29... a4 {
-7.91/17 0.56s } 30. Qd5 { +9.75/13 0.16s } 30... Qa8 { -11.19/15 0.31s }
31. Qh1 { +M13/25 0.061s } 31... Nf5 { -M12/34 0.093s } 32. Qh7 { +M11/33
0.11s } 32... Rxf6 { -M10/42 0.11s, White wins by adjudication } 1-0[/pgn]PGN tags -

[King "12744"]
[Move "14"]
Educated guess on move 14 as a first sign of a King Attack on the losing side.

To be continued.
90% of coding is debugging, the other 10% is writing bugs.
User avatar
pohl4711
Posts: 2767
Joined: Sat Sep 03, 2011 7:25 am
Location: Berlin, Germany
Full name: Stefan Pohl

Re: BoCC -- Beauty of Computer Chess

Post by pohl4711 »

Rebel wrote: Tue Aug 12, 2025 9:23 pm
pohl4711 wrote: Tue Aug 12, 2025 7:32 am
Rebel wrote: Sun Aug 10, 2025 9:45 am
Have you tried my tool?

EAS points based on move number via a flexible progressive table which you can tune to your desires.
I have tried it. Very fast, indeed. But it does not work with a pgn without evals (I tried my full ratinglist.pgn). So, it can not be used in the EAS-Tool. The EAS-Tool must run on all pgn-files, not just enginegames with stored evals in it. That will not be changed by me, ever.
Your full rating list PGN has the [Plycount] tag deleted, hence no output, your archive files are okay, that's the reason, it's not a commented or not commented problem.
Oh, I did not know that. Then I will have to retry it. But wouldnt it be an easy improvement, to use pgn-extract --plycount in your tool, before it starts computing, to add the plycount-tag, if it is missing?

I am doing this myself in my EAS-Tool. Before the computing starts, the EAS-Tool does this:
pgn-extract --quiet --fixresulttags -C -N -V --plycount ../%gamebase% --output newsource.pgn

This deletes all comments, because EAS-Tool do not need them and this leads to a clear speedup in computing (-C -N -V (you can delete that part, if you want)), adds the plycount-tag (I need this for the Summary Tool by Norm Pollock, which I use to calculate the average length of games in database) and all work from there is done on the newsource.pgn output-file.
User avatar
Rebel
Posts: 7346
Joined: Thu Aug 18, 2011 12:04 pm
Full name: Ed Schröder

Re: BoCC -- Beauty of Computer Chess

Post by Rebel »

pohl4711 wrote: Wed Aug 13, 2025 7:00 am
Rebel wrote: Tue Aug 12, 2025 9:23 pm
pohl4711 wrote: Tue Aug 12, 2025 7:32 am
Rebel wrote: Sun Aug 10, 2025 9:45 am
Have you tried my tool?

EAS points based on move number via a flexible progressive table which you can tune to your desires.
I have tried it. Very fast, indeed. But it does not work with a pgn without evals (I tried my full ratinglist.pgn). So, it can not be used in the EAS-Tool. The EAS-Tool must run on all pgn-files, not just enginegames with stored evals in it. That will not be changed by me, ever.
Your full rating list PGN has the [Plycount] tag deleted, hence no output, your archive files are okay, that's the reason, it's not a commented or not commented problem.
Oh, I did not know that. Then I will have to retry it. But wouldnt it be an easy improvement, to use pgn-extract --plycount in your tool, before it starts computing, to add the plycount-tag, if it is missing?

I am doing this myself in my EAS-Tool. Before the computing starts, the EAS-Tool does this:
pgn-extract --quiet --fixresulttags -C -N -V --plycount ../%gamebase% --output newsource.pgn

This deletes all comments, because EAS-Tool do not need them and this leads to a clear speedup in computing (-C -N -V (you can delete that part, if you want)), adds the plycount-tag (I need this for the Summary Tool by Norm Pollock, which I use to calculate the average length of games in database) and all work from there is done on the newsource.pgn output-file.
I did -

E:\short-wins>echo 9:35:32,17
9:35:32,17

E:\short-wins>pgn-extract --quiet --fixresulttags --plycount UHO_Ratinglist_full.pgn --output newsource.pgn

E:\short-wins>echo 9:39:44,56
9:39:44,56

E:\short-wins>shorts newsource.pgn

E:\short-wins>echo 9:39:51,53
9:39:51,53

E:\short-wins>pause
Press any key to continue . . .

**********************************************

12 minutes to add the plycount tag with pgn-extract.

Then 7 seconds to do the actual job.

Keep the plycount in your UHO_Ratinglist_full.pgn ?
90% of coding is debugging, the other 10% is writing bugs.
User avatar
pohl4711
Posts: 2767
Joined: Sat Sep 03, 2011 7:25 am
Location: Berlin, Germany
Full name: Stefan Pohl

Re: BoCC -- Beauty of Computer Chess

Post by pohl4711 »

Rebel wrote: Wed Aug 13, 2025 9:48 am
pohl4711 wrote: Wed Aug 13, 2025 7:00 am
Rebel wrote: Tue Aug 12, 2025 9:23 pm
pohl4711 wrote: Tue Aug 12, 2025 7:32 am
Rebel wrote: Sun Aug 10, 2025 9:45 am
Have you tried my tool?

EAS points based on move number via a flexible progressive table which you can tune to your desires.
I have tried it. Very fast, indeed. But it does not work with a pgn without evals (I tried my full ratinglist.pgn). So, it can not be used in the EAS-Tool. The EAS-Tool must run on all pgn-files, not just enginegames with stored evals in it. That will not be changed by me, ever.
Your full rating list PGN has the [Plycount] tag deleted, hence no output, your archive files are okay, that's the reason, it's not a commented or not commented problem.
Oh, I did not know that. Then I will have to retry it. But wouldnt it be an easy improvement, to use pgn-extract --plycount in your tool, before it starts computing, to add the plycount-tag, if it is missing?

I am doing this myself in my EAS-Tool. Before the computing starts, the EAS-Tool does this:
pgn-extract --quiet --fixresulttags -C -N -V --plycount ../%gamebase% --output newsource.pgn

This deletes all comments, because EAS-Tool do not need them and this leads to a clear speedup in computing (-C -N -V (you can delete that part, if you want)), adds the plycount-tag (I need this for the Summary Tool by Norm Pollock, which I use to calculate the average length of games in database) and all work from there is done on the newsource.pgn output-file.
I did -

E:\short-wins>echo 9:35:32,17
9:35:32,17

E:\short-wins>pgn-extract --quiet --fixresulttags --plycount UHO_Ratinglist_full.pgn --output newsource.pgn

E:\short-wins>echo 9:39:44,56
9:39:44,56

E:\short-wins>shorts newsource.pgn

E:\short-wins>echo 9:39:51,53
9:39:51,53

E:\short-wins>pause
Press any key to continue . . .

**********************************************

12 minutes to add the plycount tag with pgn-extract.

Then 7 seconds to do the actual job.

Keep the plycount in your UHO_Ratinglist_full.pgn ?
Yeah, you are right. When I use it in the EAS-Tool, I have always the plycount data, because the EAS-tool generates them at the start, so no need for you to do so.
I tried my 120000 games UHO-Top15 gamebase: I deleted all comments (=evals) and added the plycount.
Then it works (and is really brutally fast!). But I only got 227 games back (short-outs.pgn), that seems a very small number, out of 120000 games ?! (=0.19% hits)
But the games are awesome. I will defintily deeper look into this tools output and compare the found games with the findings of my tools. Perhaps I could add something here to the EAS-Tool.
But for the scoring-system of the EAS-Tool, a hit-rate of only 0.19% is way too small. Such small numbers used in an exponential scoring-system will not work properly. All below 1% is critical. Only one or 2 hits more in a 120000 games gamebase, will then lead to much higher scorings: A complete distortion would be unavoidable.

But the idea itself is nice, IMHO. And finds awesome games. But very small number of games. Right now, this is a problem, when trying to use this tool in the EAS-scoring-system.