Điều gì sẽ là Elo của một chương trình máy tính chơi di chuyển ngẫu nhiên?
Để đơn giản, giả sử rằng anh ta không bao giờ yêu cầu rút thăm hoặc từ chức và không bao giờ chấp nhận đề nghị rút thăm.
Điều gì sẽ là Elo của một chương trình máy tính chơi di chuyển ngẫu nhiên?
Để đơn giản, giả sử rằng anh ta không bao giờ yêu cầu rút thăm hoặc từ chức và không bao giờ chấp nhận đề nghị rút thăm.
Câu trả lời:
Ngay dưới cùng của Danh sách xếp hạng cờ vua máy tính cho điều khiển thời gian 40/4 là Brutus RND, một công cụ chỉ đơn giản là chọn các bước di chuyển hợp pháp ngẫu nhiên.
Nó có xếp hạng 205 (tính đến ngày 6 tháng 6 năm 2018). Tất nhiên đây không phải là xếp hạng FIDE, nhưng nó đang sử dụng hệ thống Elo.
Nó có 0 trận thắng, thua 242 và hòa 64 trận. Việc rút thăm là do các chương trình bị lỗi vô tình gây ra sự rút thăm bởi sự lặp lại hoặc đôi khi bị bế tắc, mặc dù chúng thường có lợi thế đáng kể về vật chất khi điều này xảy ra.
FIDE có mức xếp hạng 1000. Brutus RND đơn giản là không thể thiết lập mức xếp hạng cao và sẽ không được đánh giá.
Nếu chúng tôi bỏ qua sàn xếp hạng FIDE, có thể có xếp hạng tiêu cực theo hệ thống Elo.
Một điểm cần đề cập là FIDE sử dụng bảng để tính toán thay đổi xếp hạng và nếu chênh lệch xếp hạng lớn hơn 735, sẽ không có thay đổi nào xảy ra khi người chơi mạnh hơn thắng. Điều này có nghĩa là Brutus không bao giờ có thể có mức -5000 hoặc bất cứ thứ gì tương tự bởi vì nó sẽ cần mất điểm cho những người chơi bất tài ngoạn mục không có khả năng cung cấp cho người chơi.
https://www.fide.com/component/handbook/?view=article&id=197
Chúng tôi đang đoán ở đây. 1000 người chơi được xếp hạng Elo sẽ có thể hạ xếp hạng của Brutus xuống còn 265, nhưng vì không có người chơi nào có xếp hạng tệ hơn, chúng tôi không thể nói chính xác họ có thể đẩy xếp hạng của Brutus xuống bao xa nếu họ tồn tại.
Tôi đoán rằng những người chơi từ 500 Elo trở xuống sẽ gặp khó khăn trong việc cung cấp người bạn đời một cách nhất quán, giống như các chương trình bị lỗi. Vẽ bằng cách lặp lại 3 lần hoặc quy tắc di chuyển 50 không tự động theo quy tắc FIDE và sẽ chỉ xảy ra nếu Brutus yêu cầu chúng. Nhưng một con người có thể mất bằng cách hết thời gian, cũng như vẽ bế tắc do vô tình.
Vì vậy, tôi đoán ở đâu đó trong phạm vi -200 đến 200 nếu FIDE cho phép xếp hạng dưới 1000 và cho phép Brutus cạnh tranh.
Vấn đề với cách chơi ngẫu nhiên là trên một vị trí cờ trung bình có nhiều bước di chuyển (từ 20 trong phần mở đầu đến dễ dàng 50 hoặc nhiều hơn trong các trò chơi phức tạp), nhưng chỉ một số ít được chấp nhận. Di chuyển ngẫu nhiên sẽ dẫn đến tổng số sàn nhảy ngay từ đầu trò chơi. Hơn nữa, việc bắt những mảnh ít giá trị sẽ rất phổ biến, đặc biệt là ở giữa trận đấu. Điều này cho biết, ngay cả khi chống lại sự chống đối cực kỳ yếu, về lâu dài, máy tính sẽ sai lầm: hàng tấn nguyên liệu sẽ được giao dịch và có thể không có nhiều lợi ích cho máy tính, chắc chắn máy tính sẽ không được phát triển, vua của ông sẽ không an toàn và thậm chí có thể không được đúc ...
Vì vậy, nhiều điều tồi tệ chồng chất, và cực kỳ nhanh chóng, sẽ dẫn đến một thất bại chắc chắn cho máy. Elo của anh ta có thể sẽ là 0 FIDE.
Tôi không chắc cách xếp hạng của Go so với cờ vua, nhưng chơi ngẫu nhiên là khoảng -3500 ở đó . Vì hệ số phân nhánh cho cờ vua thấp hơn nên tôi hy vọng elo người chơi ngẫu nhiên sẽ cao hơn, có thể ở khoảng -2000 đến -500.
Tồi tệ hơn một người mới bắt đầu tuyệt đối, người hầu như không biết luật chơi, bởi vì ít nhất người mới bắt đầu nghĩ một chút về việc chọn di chuyển. Động thái của họ có thể vẫn chủ yếu là ngẫu nhiên, nhưng ít nhất có một số đánh giá về các vị trí đang diễn ra.
Vì vậy, xếp hạng của động cơ này sẽ ở mức thấp nhất có thể trong bất kỳ hệ thống xếp hạng nào bạn chọn. Cuối cùng, nó có thể giành chiến thắng hoặc hòa một trận đấu với một đối thủ không kém, và sau đó tăng thêm một vài điểm. Tuy nhiên, bạn có thể mong đợi xếp hạng của động cơ sẽ nhanh chóng quay trở lại tầng tối thiểu sau đó.
Trong "Lập trình máy tính để chơi cờ" của Shannon, ông lưu ý rằng xác suất chơi ngẫu nhiên đánh bại Botvinnik là theo thứ tự 10 ^ -75. Do đó, nếu máy tính ngẫu nhiên này chơi Botvinnik (hoặc thậm chí là một bậc thầy thông thường) không ngừng nghỉ trong suốt cuộc đời của con người, chúng ta có thể mong đợi một cách hợp lý rằng nó sẽ không bao giờ chiến thắng.
Tuy nhiên, Shannon tiếp tục nói rằng chơi ngẫu nhiên không phải là chiến lược tồi tệ nhất; chiến lược tồi tệ nhất là cố tình chơi các động tác hỗ trợ đối thủ. Mặc dù có thể một người mới bắt đầu hoàn thành có thể làm điều này, nhưng rất có thể họ sẽ cố gắng chơi các động tác cải thiện vị trí của chính họ.
Một câu trả lời rất tốt sẽ là làm điều này:
Sử dụng numpy, một công cụ trò chơi rất yếu, 1500 ELO hoặc hơn, và đính kèm một kịch bản python vào nó. Có nhiều thư viện cung cấp cho bạn các bước di chuyển có thể ở một vị trí, vì vậy chúng tôi có thể chọn một cách ngẫu nhiên. Tôi sẽ đăng kết quả sau.
http://creative-co.de/random_chess/
Bạn cũng nên kiểm tra điều này.