Làm thế nào thường xuyên castling xảy ra trong các trò chơi grandmaster?


22

Tôi có thể biết làm thế nào để tìm thấy trong tất cả các trò chơi grandmaster, bao nhiêu phần trăm của mỗi trò chơi sau đây không?

  • Lâu đài
  • Lâu đài nữ hoàng
  • Không bao giờ bị ném đá vào cuối trò chơi nhưng vẫn có quyền vào lâu đài
  • Mất quyền vào lâu đài

Lưu ý Khi một bên đã ném nhiều lần trong một trò chơi , chỉ có lâu đài đầu tiên được tính.


2
Bởi "tất cả các trò chơi grandmaster" bạn có nghĩa là tất cả các trò chơi như vậy trong một cơ sở dữ liệu nhất định mà bạn có?
user1583209

Bạn có cần điều này riêng cho màu trắng và đen? (Tỷ lệ phần trăm của kingside trắng, v.v?)
user1583209

@ user1583209, tôi không có bất kỳ cơ sở dữ liệu nào trong đầu. Nếu tỷ lệ phần trăm có sẵn riêng cho màu trắng và đen, nó sẽ được ưu tiên.
Zuriel

Không một người chơi nào có thể lâu đài hai lần trong một trò chơi, kể từ khi ném và sau đó di chuyển nhà vua trở lại vị trí mà từ đó lâu đài có thể yêu cầu ít nhất một vị vua di chuyển, không đủ điều kiện để không bị ném lại.
user5266

3
@ user45266 Đó là một động thái bất hợp pháp, nhưng theo liên kết của OP, một số trò chơi lịch sử có chứa các động thái bất hợp pháp mà không ai bắt được tại thời điểm đó.
Geoffrey Brent

Câu trả lời:


27

Nếu bạn chuẩn bị sử dụng các công cụ dòng lệnh Linux tiêu chuẩn như wcgrepsau đó tôi nghĩ bộ xử lý PGN miễn phí của tôi, pgn-extract , sẽ thực hiện nhiều công việc tiền xử lý cần thiết để đếm các trò chơi trong mỗi danh mục. Dưới đây là một kịch bản bash cơ bản tôi đưa ra như một bằng chứng về khái niệm. Nó giả sử tập tin trò chơi của bạn được gọi inputfile.pgn- điều chỉnh khi cần thiết hoặc chuyển nó dưới dạng đối số dòng lệnh:

#!/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`

Tôi đã thử tập lệnh trên cơ sở dữ liệu KingBase (tháng 4 năm 2019) và sau khi xóa các trò chơi bị hỏng và các bản sao đã nhận được các số liệu thống kê sau:

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

Con số 'không' là khoảng 3,4% trong khi con số 'quyền được giữ lại là khoảng 1,2%. Nếu các trò chơi có 20 ply trở xuống bị xóa thì con số 'không' giảm xuống còn khoảng 2,9% và con số 'quyền được giữ lại' còn khoảng 0,7%.


1
Cảm ơn bạn rất nhiều vì đã chia sẻ!! Tôi tin rằng mã của bạn hoạt động rất tốt (trừ khi một bên lâu đài hơn một lần, dù sao đó là bất hợp pháp).
Zuriel

7
Tuyệt quá! Thực sự đào xu hướng mới này của các câu trả lời dựa trên kịch bản cho các câu hỏi thống kê ở đây trên cờ SE, giống như của bạn ở đây hoặc gần đây .
dùng929304

Vì vậy, để làm rõ, "Kingside" đếm tất cả những trò chơi trong đó một hoặc cả hai người chơi đã ném đá vua. Các trò chơi trong đó một người chơi ném đá kingside và các nữ hoàng ném đá khác sẽ được tính vào cả hai loại. Có lẽ một thống kê thú vị hơn sẽ là một phần của các trò chơi trong đó Trắng (hoặc tương ứng là Đen ) đúc kingside hoặc hoàng hậu.
Nate Eldredge

1
Tôi không nên nghĩ rằng nó sẽ ảnh hưởng đến tỷ lệ phần trăm nhiều, nhưng đôi khi 0-0 + và 0-0-0 + đã xảy ra.
Rosie F

1
Ngoài ra, tại sao không tìm thấy tỷ lệ phần trăm cho Trắng và Đen riêng biệt? Chỉ là một ý tưởng!
Rewan Demontay

10

Chỉ cần googling cho "thống kê castling" đã mang lại một vài kết quả; mặc dù việc phân tích được thực hiện trên một tập hợp các trò chơi khác với 'tất cả các trò chơi lớn', nó đưa ra một dấu hiệu sơ bộ.

Castling Kingside được thực hiện bởi 80-81% người chơi, và castling bên nữ hoàng 8-9%. Tôi ước tính rằng Không bao giờ bị ném đá vào cuối trò chơi nhưng vẫn có quyền vào lâu đài là không đáng kể (dưới 0,1%, vì nó yêu cầu một trò chơi rất ngắn). Vì vậy, để lại khoảng 11% cho nhóm cuối cùng Mất quyền vào lâu đài .


1
Liên kết đầu tiên là tuyệt vời !! Tôi chưa bao giờ thấy số liệu thống kê thú vị như vậy về cờ vua trước đây.
Zuriel

1
Ngày nay, nó ít phổ biến hơn, nhưng trong lịch sử, có nhiều trò chơi trong đó hai ông trùm sẽ chơi một vài động tác mở tiêu chuẩn và đồng ý một trận hòa, chẳng hạn, vì kết quả trận đấu của họ sẽ không ảnh hưởng đến bảng xếp hạng giải đấu. Có lẽ nhiều trò chơi trong số này đã kết thúc ở một vị trí mà ít nhất một trong số những người chơi vẫn có quyền vào lâu đài. Biểu đồ tần suất cho các độ sâu lớp khác nhau trong liên kết thứ hai của bạn chứa hơn 35.000 trò chơi (~ 2%) kết thúc sau 20 ply hoặc ít hơn và gần như tất cả các trận đấu sẽ được thỏa thuận, có thể có ít nhất một người chơi có quyền ném.
David Richerby
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.