Як часто кастинг трапляється в гросмайстерських іграх?


22

Чи можу я знати, як знайти у всіх гросмейстерських іграх, який відсоток у кожній із наведених нижче?

  • Кінгсайдський ролик
  • Квілсайдський ролик
  • Ніколи не закидається до кінця гри, але все ж має право на замок
  • Втратили право на замок

Примітка. Коли одна зі сторін грає не раз у грі , вважається лише перший замок.


2
Під "усіма гросмейстерськими іграми" ви маєте на увазі всі такі ігри в певній базі даних, яку у вас є?
користувач1583209

Вам це потрібно окремо для білого та чорного? (Відсоток
вигулу

@ user1583209, я не маю певної бази даних у своєму розумі. Якщо відсоток доступний окремо для білого та чорного, він буде кращим.
Зуріель

Жоден гравець ніколи не може замок двічі в грі, оскільки для закидання та повернення короля назад до положення, з якого він міг би замок, знову потрібен хоча б один перехід короля, позбавляючи його можливості коли-небудь знову заграватися.
користувач45266

3
@ user45266 Це незаконне пересування, але, за посиланням ОП, деякі історичні ігри містять протизаконні ходи, про які ніхто тоді не піймав.
Джеффрі Брент

Відповіді:


27

Якщо ви готові використовувати стандартні засоби командного рядка Linux, такі як, wcі grepтоді я думаю, що мій безкоштовний процесор PGN, pgn-extra , зробить велику частину попередньої обробки, необхідної для підрахунку ігор у кожній категорії. Нижче наведено базовий сценарій башти, який я зібрав як доказ концепції. Він передбачає, що ваш файл ігор називається inputfile.pgn- відрегулюйте за потребою або передайте його як аргумент командного рядка:

#!/bin/bash
# Output stats on castling.
src=inputfile.pgn
# Pre-process the games to allow textual analysis.
pgn-extract -C -V -N --notags --nochecks --linelength 10000 -s -o stripped.pgn ${src}
# Castling by white: detect a preceding move number.
grep '\. O-O ' stripped.pgn > Wkingside.pgn
grep '\. O-O-O ' stripped.pgn > Wqueenside.pgn
# Castling by black: detect no preceding move number.
grep '[^.] O-O ' stripped.pgn > Bkingside.pgn
grep '[^.] O-O-O ' stripped.pgn > Bqueenside.pgn
# Find games in which no castling occurred.
grep -v ' O-O ' stripped.pgn | grep -v ' O-O-O ' | grep -v '^$' > nocastle.pgn

# Output the FEN of the final position to include castling rights and
# look for the presence of rights.
pgn-extract -C -V -N --notags --nomovenumbers --linelength 10000 -s nocastle.pgn --dropply -1 -F | grep ' [wb] [KkQq]' > rights.txt

# Output the results - assumes valid Result tags in the source.
echo 'Number of games: ' `grep '^\[Result ' ${src} | wc -l`
echo 'W Kingside: ' `cat Wkingside.pgn | wc -l`
echo 'W Queenside: ' `cat Wqueenside.pgn | wc -l`
echo 'B Kingside: ' `cat Bkingside.pgn | wc -l`
echo 'B Queenside: ' `cat Bqueenside.pgn | wc -l`
echo 'Neither: ' `cat nocastle.pgn | wc -l`
echo 'Rights retained: ' `cat rights.txt | wc -l`

Я спробував сценарій у базі даних KingBase (квітень 2019), і після видалення зламаних ігор та дублікатів отримав таку статистику:

Number of games:  2072354
W Kingside:  1633762
W Queenside:  246158
B Kingside:  1670870
B Queenside:  128124
Neither:  69776
Rights retained:  24280

Показник "ні" становить приблизно 3,4%, тоді як "збережені права" - близько 1,2%. Якщо ігри з 20 або меншими рівнями видаляються, то цифра "ні" зменшується приблизно до 2,9%, а "права зберігаються" цифра приблизно до 0,7%.


1
Дякую тобі за поділ !! Я вважаю, що ваш код працює чудово (якщо тільки одна сторона не є замку більше, ніж один раз, що все одно є незаконною).
Зуріель

7
Чудово! Дійсно копати цю нову тенденцію відповідей на основі скриптів для питань статистики тут, на шахових SE, як ваш тут чи цей останнім часом .
користувач929304

Отже, для уточнення, "Kingside" підраховує всі ті ігри, в яких один або обидва гравці відіграють короля. Ігри, в яких один гравець, який перебуває у складі королівства, а інший у складі королеви, буде зараховано до обох категорій. Можливо, більш цікавою статистикою буде частка ігор, в яких Білий (або, відповідно, Чорний ) рольовий королем або королевою.
Нейт Елдредж

1
Я не думаю, що це значно вплине на відсотки, але іноді трапляються 0-0 + та 0-0-0 +.
Rosie F

1
Крім того, чому б не знайти відсотки для Білого та Чорного окремо? Просто ідея!
Реван Демонтай

10

Тільки гуглінг для "статистики кастингу" вже дає декілька результатів; незважаючи на те, що аналіз робиться на іншому наборі ігор, ніж "всі ігри для гросмейстерів", він дає приблизну ознаку.

Кингсайдський ролик виконують 80-81% гравців, а королеву - 8,9 %. Я вважаю, що ніколи не закидається до кінця гри, але все-таки має право на замок незначно (менше 0,1%, оскільки для цього потрібна дуже коротка гра). Таким чином, це залишає близько 11% для фінальної групи, яка втратила право на замок .


1
Перше посилання чудово !! Я ніколи раніше не бачив такої цікавої статистики щодо шахів.
Зуріель

1
Це рідше в ці дні, але історично було багато ігор, де два гросмейстери зіграли кілька стандартних відкритих кроків і погодилися на нічию, наприклад, тому що результат їх гри не вплинув на турнірне турнірне місце. Ймовірно, багато з цих ігор закінчилися в положенні, коли хоча б один з гравців все-таки мав право на замок. Діапазон частот для різних глибин шару у вашому другому посиланні містить понад 35000 ігор (~ 2%), які закінчились після 20-ти шарових чи менших, і майже всі з них будуть узгоджені жеребкуваннями, ймовірно, щонайменше один гравець, який має права на бродіння.
Девід Річербі
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.