lichess.org
Donate

Linking top players based on openings

Well that is a big morsel. I will look at it. There is one little display problem for the equation figure, perhaps you could force a white background because it does not show on my transparent background with a dark picture..
I went light background to check there was a figure.. it seems to be black on something transparent. I am not sure how to fix that from your end.

image.lichess1.org/display?h=0&op=resize&path=oortcloud_o:ublogBody:vumRJ6jlxnpg:42SQFnbv.png&w=720&sig=bdfc959809a03caf561d419028e8b1e18ea6e293
Here snapshot of what I saw. (also not called transparent anymore but "picture" by lichess.

https://i.postimg.cc/nrTMgDN4/screenshot-2023-11-28-at-00-28-16.png

for content feedback. it might take a while. But thank you for developing previous blog content here.
This is another completely useless exercise. There is not even a conclusion given at the end of the article. This seems experiments for the pure sake of experiments.
Dendrograms distance would show the same position by different tempos. I think the quicker route is not always the safest or best path to take to reach a position. Some might prefer the scenic route as best. Low stress, wider path, more human style. It just took more tempos to reach the same destination. So any player can take the scenic route to reach a position. Position would have multiple top player names attached to a single position, because there would be alternate routes to get there. Stop using GM names and start inventing something new.

Suggestion: Naming by material left on a chessboard would be a permanent approach. At max a game can have 30 exchanges. On the 30th exchange we would be left with King vs King. So an end game position would be named: X30-KK.
So we could use the fen code with the exchanges to reach it. The meaning of "X1" means first exchange. An opening name would be assigned in this way: X1-(SAN moves or FEN code)

A game can only have 30 exchanges. X1-(SAN), X2-(SAN), X3-(SAN), etc ...
Eco codes have A1-99, B1-99, etc...

I prefer my naming approach: X1-(e4_c5_Nf3_d6_d4_cxd4)
lichess.org/analysis/pgn/e4_c5_Nf3_d6_d4_cxd4

When the SAN is longer than the FEN use the FEN
X2-(r1b1k2r/2qnbppp/p2ppB2/1p6/3NPPP1/2N2Q2/PPP4P/2KR1B1R b kq - 0 11)
lichess.org/opening/Sicilian_Defense_Najdorf_Variation_Main_Line/e4_c5_Nf3_d6_d4_cxd4_Nxd4_Nf6_Nc3_a6_Bg5_e6_f4_Be7_Qf3_Qc7_O-O-O_Nbd7_g4_b5_Bxf6

What is need is to shorten the names or SAN or FEN by using some sort of checksum number. That CRC number could then be used to name chess positions: X#-CRC position.

en.wikipedia.org/wiki/Cyclic_redundancy_check

Every move does not need an opening family name. A family name should only change after each exchange. As the game reduces in material size, the name of the game changes. It's not so much the pieces left, but the quantity left.

Assigning GM names to the exchanges would be like trophy hunting to get their name on an exchange transition.
Having something like a vehicle licence plate approach might be a simpler naming system for SAN lines or FEN codes.
Fischer random chess (FRC) 960, but it too has max 30 exchanges. We need to focus on the FEN's exchange stages and give them a group name. I used X1 to X30 (KK). The X# are like chapters in a book. An end game that would have KRPKR ... would be in the X27 chapter. Learning to index chess would be standardized, rather than giving every move or group of moves a name that changes in length and accents. Engines need an indexing system that humans can use and understand too. I think the X1-30 system would help in the comparison of positions at various levels of material.
<Comment deleted by user>
X27-KRPKR
It's clear and concise, without giving it names. All possibility's of the pieces on the chessboard. Let the engine do the rest until the next exchange where it gets a new chapter name.