Tôi biết bạn đã đánh dấu một câu trả lời, nhưng thành thật mà nói, nó đơn giản hóa quá mức và không thực sự giải quyết bất kỳ vấn đề cốt lõi nào của hệ thống ELO cho dù bạn đang làm việc với bot hay người chơi thực sự. Ví dụ, các cân nhắc cốt lõi khi tạo ra một hệ thống ELO công bằng / chính xác sẽ là: số lượng người chơi, số trận đấu, tác động tương đối của kỹ năng (ví dụ: cơ hội) đến kết quả, hiệu quả mai mối và mức độ chênh lệch trong mỗi trận thắng /thua.
Trong một thế giới lý tưởng, bạn có thể kết hợp những người có kỹ năng tương đương, và trong một trò chơi kỹ năng, họ sẽ đạt được tỷ lệ thắng 50%. Tuy nhiên, điều đó giả định rằng bạn biết kỹ năng của mọi người và tác động của cơ hội là tương đối nhỏ. Vì bạn không biết cái trước (và bạn không chỉ định cái sau), có một số điều bạn cần làm để xác định chính xác kỹ năng một cách hiệu quả và nó không đơn giản như việc chơi bot như nhiều bot khác nhau càng tốt:
1) Bạn cần thiết lập đường cơ sở kỹ năng cho người chơi "mới" theo thang điểm để họ có thể di chuyển lên hoặc xuống và đường cơ sở biểu thị mức trung bình dự kiến trên đường cong chuông bình thường. IE: 1250 trên thang điểm từ 1-2500.
2) Người chơi mới cần chơi một số trò chơi "vị trí" nhất định để thiết lập xếp hạng ban đầu, thường được thực hiện trong 10-20 trò chơi được đánh giá nặng hơn các trò chơi tiếp theo. IE: tăng / giảm xếp hạng là gấp đôi trong các vị trí, sau này sẽ khuyến khích việc tách người chơi nhanh chóng.
3) Bạn cần tính đến các yếu tố khác trong quá trình mai mối của mình, chẳng hạn như tỷ lệ thắng so với tổng số trận đấu để người chơi ở cuối cực của đường cong kỹ năng được di chuyển với tốc độ nhanh hơn đến kỹ năng "thật" của họ bằng cách đối mặt với những người ở trên hoặc dưới đánh giá hiện tại của họ. IE: người chơi có tỷ lệ thắng 80% so với cỡ mẫu khá sẽ phải đối mặt với những người vượt xa xếp hạng của họ và leo lên thang nhanh hơn so với người có tỷ lệ thắng 55% gần với kỹ năng thực sự của họ.
4) Bạn cần có một sự hiểu biết tốt về cách cơ hội tác động đến kết quả và bạn cần tính đến tốc độ mai mối (thời gian xếp hàng) khi xác định ai phù hợp để giữ cho phương sai kỹ năng hợp lý. Sử dụng thang đo trước đó, bạn không nên có một người chơi 1250 đối mặt với một người chơi 2000 trong mọi trường hợp (trừ khi cả hai không được đánh giá). Đây không phải là một trận đấu công bằng và nó không cho phép bạn thêm / xóa điểm chính xác khỏi ELO của họ.
Cách tôi thiết lập hệ thống sẽ là tạo hai bộ điều chỉnh thành giá trị tăng / giảm điểm cơ bản, một sử dụng kết quả mong đợi dựa trên phương sai xếp hạng và một dựa trên tỷ lệ thắng cho tổng giá trị khớp. IE: ai đó có xếp hạng 1500 người có tỷ lệ thắng 70%, vượt qua 1600 người chơi được xếp hạng sẽ giành được nhiều điểm hơn khi có tỷ lệ thắng cao VÀ để đánh bại người chơi được xếp hạng cao hơn.
Sau đó, bạn chỉ cần đảm bảo rằng người chơi hoàn thành cỡ trò chơi mẫu hợp lý và bạn sẽ có hệ thống "hiệu quả nhất" dựa trên mức độ cơ hội tham gia vào "trò chơi" mà bạn đang triển khai hệ thống ELO. Một trò chơi có cơ hội tương đối thấp có thể mất vài chục trò chơi để chính xác, một trò chơi có cơ hội tương đối cao có thể mất hàng trăm ...
Tái bút: đối với hồ sơ, bạn không muốn mọi người chơi các cấp độ kỹ năng khác nhau vì nó chỉ làm giảm độ chính xác của hệ thống. Ngay cả khi bạn nghiêng nó để các trận đấu ở trên một phương sai nhất định có rất ít tác động thì nó vẫn tạo ra vấn đề bởi vì người chơi sẽ cảm thấy không được đáp ứng hoặc bị trừng phạt quá mức đối với các trận đấu có phương sai cao.
chỉnh sửa: Tôi quên giải quyết phần "đã được xếp hạng" trong câu hỏi của bạn, nhưng nó khá đơn giản. Bạn khớp mọi người dựa trên xếp hạng kỹ năng gần nhất có sẵn trong hàng đợi, bởi vì đó là trận đấu đồng đều nhất và mức tăng / giảm điểm (giả sử tỷ lệ thắng tương tự) sẽ là giá trị tĩnh. Nếu người chơi được đánh giá chính xác, họ sẽ duy trì tỷ lệ thắng 50% và không leo hay ngã. Nếu họ không thì người chơi có kỹ năng hơn sẽ thắng nhiều hơn thua và xếp hạng của họ sẽ cập nhật.
Giới thiệu một người chơi mới thậm chí còn đơn giản hơn, họ bắt đầu ở đường cơ sở và được đối đầu với những người chơi có kỹ năng đó (với mức tăng / giảm) cho đến khi vị trí của họ được hoàn thành. Vì vậy, giả sử mức tăng / giảm điểm bình thường cho mỗi trận đấu là 15 mà không cần bất kỳ công cụ sửa đổi nào, đây là ví dụ về vị trí và xếp hạng người chơi mới (với mức tăng / giảm gấp đôi):
- Ban đầu: 0-0 (1250) - đối mặt với 1250 đối thủ
- Thua: 0-1 (1220) - đối mặt với 1220 đối thủ
- Thua: 0-2 (1190) - đối mặt với 1190 đối thủ
- Thắng: 1-2 (1220) - đối mặt với 1220 đối thủ
- Thắng: 2-2 (1250) - đối mặt với 1250 đối thủ
- Thắng: 3-2 (1280) - đối mặt với 1280 đối thủ
- Thắng: 4-2 (1310) - đối mặt với 1310 đối thủ
- Thua: 4-3 (1280) - đối mặt với 1280 đối thủ
- Thắng: 5-3 (1310) - đối mặt với 1310 đối thủ
- Thắng: 6-3 (1340) - đối mặt với 1340 đối thủ
- Thắng: 7-3 (1370)
- đánh giá cuối cùng: 1370