Utilities

SOMU

Some Of My Utils


version 1.5a

SOMU is a command line utility operated by the arrow keys. It contains several PGN and EPD tools. PGN files are found (stored) in the PGN folder, likewise EPD files in the EPD folder. It's functions:


The PGN part

Match Stats

From a PGN create and (automatically) view a HTML file, example-1 is created from gambit.pgn (provided in the download) taken from the YAT gambit tournament. Example-2 is created from a CCRL pgn testing Komodo 12.


Match Compare

Check the PGN of an engine-engine PLY-Match, games should be indentical else perhaps something is wrong. Different moves are marked and stored in OUTPUT.PGN Background: it's extremely important (especially for starters) that a PLY-MATCH (say PLY=10) produces the exact same reverse game, so game-1 and game-2 in the PGN should be 100% equal, game-3 = game-4 and so on.


Cross-table

This function will create a cross table from a (large) PGN file. Maximum number of players (human and/or engine) is 100. Example taken from the gambit.pgn mentioned earlier. Another example, the final FCP rating list by Frank Quisinsky.


Strip PGN

Strip played moves by engines from a PGN. What is left and stored in OUTPUT.PGN are the book moves. Handy for opening book tuning with Polyglot.

Split PGN

Split large PGN files into smaller parts.

Remove Double Openings (games)

From a PGN collection display the match score, then remove the double openings and calculate the new match score without the double openings. This util is handy in 3 ways:


. checking an eng-eng match for opening doubles, see screenshot (file bf.pgn)

. pre-checking your predefined opening sets for eng-eng matches.

. In case a PGN doesn't contain comments it will check for duplicated games.




The EPD part

Remove Doubles

Remove doubles from an EPD collection.

EPD legal check

Remove invalid positions from an EPD collection.

EPD to PGN

Converts EPD to PGN, bm and ce tags included when present. Try this with the included 150 positions example.epd file.

Split EPD

Split large EPD files into smaller parts.

Prepare EPD

Create an EPD collection from PGN games for the use of Analyze EPD, Analyze EPD++ or Analyze EPD+++. With the option "Ply from" - "Ply till" you can hack the analysis job into pieces. Doubles are removed.

Analyze EPD

Analyze an EPD collection with Stockfish 8, 9 and higher. Example before and after.

Analyze EPD ++

Analyze an EPD collection with Stockfish 8, 9 and higher splitting the analyzing over a user defined number of threads for speed reasons. Example before and after.


The advantage of Analyze EPD and Analyze EPD ++ is that it will work with every new version provided the Stockfish team doesn't change the bench function. Just copy a newer Stockfish version in the SOMU folder.


Current default version is SF10x a beta version considerable stronger than SF9, see results.

Analyze EPD +++

As Analyze EPD++ but with Multi-PV 2, 3 or 4. Example before and after


SOMU 1.5 Function Keys

F12

Overview Function Keys

F1

Delete bad or too good EPD positions controlled by a flexible score margin.

F2

From each PGN game create an EPD of the last move.

F3

Quickly count the number of games in a PGN.

F4

Quickly count EPD positions.

F5

Reverse (mirror) an EPD collection.

F6

Remove illegal 'bm' moves from an EPD collection, long notation only.

F7

Create a statistic from an EPD collection. It also will create 10 separate EPD files:

. Queen | Rook | Bishop and Knight promotions

. Possitive Mate in X moves | Negative Mate in -X moves

. Pawn Endings | Bishop Knight endings | Rook endings | Queen Endings

F8

Extract comp games from Lichess.

On the Lichess server people around the world cuurently are playing 33 million games (and growing) a month This function allows you to separate chaff of corn.


Extraction criteria

1. Human games | Computer games. According to the website computer games are strictly games that include Stockfish analysis evaluations.

2. Selection on ELO. Example of this function here.

F9

PGN to MEA or SIMEX

From a PGN create an EPD set for the use of MEA as used in OKE and SIMEX.


Example from the eng-eng match brainfish.pgn included in the download:


Ply from : 0

Ply till : 80

epd size : 10000


Will create an EPD of 10,000 records.

F10

EPD to MEA or SIMEX


Converts an EPD that contains the "bm" tag for the use of MEA as used in OKE and SIMEX.


Included is the example file midgame.epd extracted from Dann Corbit's collection.

Remark - The PGN part is compatible with Arena and Cutechess-cli, the gibberish ChessBase PGN's work for the most part except for depth and time statistics.

Credits

Tord Romstad, Marco Costalba and Joona Kiisk for Stockfish.

David J. Barnes for Pgn-Extract.

SOMU 1.5a

5 Mb