수식을 외울 필요는 없습니다. 먼저 예시를 읽고, 궁금한 부분의 수식을 함께 살펴보세요.
01 · 기본 원리
Elo는 ‘지금까지의 경기 결과로 추정한 실력’입니다.
에버리지가 한 이닝에 평균 몇 점을 냈는지 보여준다면, Elo는 어떤 상대와 겨뤄 어떤 결과를 냈는지를 바탕으로 실력을 추정합니다. 당구 점수 50점과 Elo 1,800점은 서로 다른 숫자입니다. 당구 점수는 그 경기의 득점이고, Elo는 여러 경기를 거치며 바뀌는 평가 점수입니다.
모든 선수는 첫 반영 경기 전에 1,500으로 시작합니다. 경기 전 두 선수의 Elo를 비교하고, 결과가 나온 뒤 두 선수의 점수를 각각 조정합니다. 계산된 점수는 다음 경기의 출발점이 됩니다.

반대로 강한 선수가 이기는 것은 상대적으로 예상에 가까운 결과이므로 상승 폭이 작습니다. 강한 상대에게 졌을 때는, 훨씬 약한 상대에게 졌을 때보다 하락 폭도 작습니다.
비쿠 Elo는 비쿠가 계산한 지표입니다. 대회 성적으로 쌓는 UMB·PBA·LPBA 공식 랭킹 포인트와는 계산 방식이 다릅니다.
02 · 전체 수식
긴 수식은 세 부분으로 나누면 쉽습니다.
먼저 ① 경기 전 기대 결과를 구하고, ② 점수가 얼마나 민감하게 움직일지 정한 뒤, ③ 실제 결과와 점수 차를 반영합니다. 아래 A는 한 선수, B는 상대 선수입니다.
EA는 0~1 사이입니다. 두 선수의 Elo가 같으면 0.5입니다.
대회·경기 길이·라운드뿐 아니라 선수별 신규·복귀 보정도 포함합니다.
쉽게 읽으면: 새 Elo = 기존 Elo + 변화 폭 × 점수 차 보정 × (실제 결과 − 기대 결과)
기호를 하나씩 확인하기
| 기호 | 쉬운 뜻 |
|---|---|
| RA, RB | 경기 전 A와 B의 Elo |
| R′A | 경기가 끝난 뒤 A의 새로운 Elo |
| EA | 경기 전 두 선수의 Elo로 계산한 A의 기대 결과 |
| SA | 실제 결과: 승리 1 / 무승부 0.5 / 패배 0 |
| KA | 이 경기에서 A의 Elo가 움직이는 민감도 |
| wt / wr | 대회 등급 배수 / 라운드 배수 |
| L | 경기 길이: 단판은 목표 점수, 세트제는 기본 세트 목표 점수 × 승리에 필요한 세트 수 |
| NA / CA | A의 신규 선수 배수 / 복귀 선수 배수 |
| g | 점수 차 보정. 단판과 세트제의 계산 방법이 다릅니다. |
| PA, PB | 단판에서 A와 B의 실제 득점 |
| ln / √ / | | | 증가를 완만하게 만드는 자연로그 / 제곱근 / 부호를 뺀 차이의 크기 |
B도 같은 방식으로 계산합니다. B의 실제 결과는 1 − SA, 기대 결과는 1 − EA이고, 신규·복귀 배수는 B 자신의 기록을 사용합니다. 두 선수 모두 경기 전 Elo를 기준으로 계산합니다. A의 새 점수를 먼저 B의 계산에 넣지 않습니다.
03 · 상대 실력
‘예상보다 잘했는가’를 먼저 봅니다.
실제 결과 S에서 기대 결과 E를 뺀 값은 이번 결과가 기존 평가와 얼마나 달랐는지 나타냅니다. 이기면 양수, 지면 음수가 됩니다. 다만 최종 변화량은 뒤에서 설명할 점수 차 보정도 함께 곱해서 정합니다.
| 상대 B의 Elo | A의 기대 결과 E | A가 승리하면 1 − E | A가 패배하면 0 − E |
|---|---|---|---|
| 1,600 | 0.760 (약 76.0%) | 0.240 | −0.760 |
| 1,800 | 0.500 (약 50.0%) | 0.500 | −0.500 |
| 2,000 | 0.240 (약 24.0%) | 0.760 | −0.240 |
분모의 400은 Elo 차이를 기대 결과로 바꾸는 눈금입니다. 점수 차가 400이면 높은 쪽의 기대 결과가 약 0.909, 낮은 쪽은 약 0.091이 됩니다. 400점 차이를 무조건 따라잡을 수 없다는 뜻은 아닙니다.
표의 %는 수식이 사용하는 기대 결과를 이해하기 위한 표현입니다. 실제 승률을 검증해 보장한 수치가 아니며, 무승부가 있는 경기에서 순수한 승리 확률과도 구분해야 합니다.
04 · 점수 차
50:49의 승리와 50:10의 승리는 다릅니다.
50점 경기에서 50:49로 간발의 차이로 이긴 경기와, 50:10으로 압도적으로 이긴 경기에 똑같은 승패 점수를 주면 아쉽겠죠? 비쿠 Elo는 두 선수의 득점 차가 목표 점수에서 차지하는 비율로 레이팅의 변화 폭을 조절합니다.

먼저 점수 차를 목표 점수로 나누고, 그 비율을 보정 함수에 넣습니다.
예를 들어 50:40은 10점을 50으로 나눠 20%, 30:20은 같은 10점 차라도 30으로 나눠 약 33.3%입니다. 짧은 경기에서의 10점 차이가 상대적으로 더 크므로, 점수 차 보정도 더 커집니다. 단, 최종 Elo에는 별도의 경기 길이 보정도 곱해집니다.
| 결과 | 득점 차 · 비율 | 점수 차 배수 g | 승자의 Elo 변화 |
|---|---|---|---|
| 50 : 49 | 1점 · 2% | 0.095 | +1.28 |
| 50 : 40 | 10점 · 20% | 0.693 | +9.30 |
| 50 : 30 | 20점 · 40% | 1.099 | +14.74 |
| 50 : 20 | 30점 · 60% | 1.386 | +18.60 |
| 50 : 10 | 40점 · 80% | 1.609 | +21.59 |
| 50 : 0 | 50점 · 100% | 1.792 | +24.04 |
위 예시는 두 선수 모두 Elo 1,800, 반영 경기 수 20경기 이상, 복귀 보정 없음, 월드컵 본선 기준입니다. 패자는 같은 크기만큼 내려갑니다. 표시는 반올림했으며 계산 중간값은 반올림하지 않습니다.
큰 점수 차를 반영하되, 지나치게 키우지는 않습니다.
ln은 ‘자연로그’라는 함수입니다. 이름은 어렵지만 여기서 하는 일은 간단합니다. 점수 차가 커질수록 보정값은 올라가되, 점점 완만하게 올라가도록 합니다. 50:40에서 50:30으로 벌어졌을 때의 증가량보다, 50:10에서 50:0으로 벌어졌을 때의 증가량이 작습니다.
단판 득점이 0점부터 목표 점수 사이에 있으면, 점수 차 비율은 0~1이고 g는 0~약 1.792입니다. 50:0이라도 무한한 가점을 받지 않습니다. ‘로그 함수 자체에 상한이 있다’는 뜻이 아니라, 경기의 가능한 점수 범위 안에서 보정값이 제한된다는 뜻입니다.
수식의 5는 점수 차에 얼마나 반응할지를 정한 민감도입니다. 비쿠의 현재 계산 정책은 5를 사용합니다. 초기 검토안의 ‘점수 차 × 0.1’ 대신, 최종안인 ‘점수 차 ÷ 목표 점수 × 5’를 적용합니다.
05 · 경기의 조건
어느 대회에서, 몇 점 경기를, 어느 라운드에 했나요?
기본 변화 폭 24 — 전체 조정의 출발점
K의 기본값 24는 Elo가 경기 결과에 얼마나 빠르게 반응할지 정합니다. 값이 크면 더 많이 움직이고, 작으면 더 천천히 움직입니다. 이겼다고 무조건 24점이 오르는 것은 아닙니다. 여기에 모든 보정과 기대 결과의 차이를 곱합니다.
대회 등급 — 큰 무대에 조금 더 무게를 둡니다.
| 대회 | 배수 |
|---|---|
| UMB 월드컵 | 1.00 |
| UMB 개인 세계선수권 | 1.25 |
| UMB 세계팀선수권 중 개인 경기 | 1.25 |
| PBA·LPBA 일반 개인 투어 | 1.00 |
| PBA·LPBA 시즌 월드챔피언십 | 1.25 |
| KBF 전국대회 일반부 개인전 | 1.00 |
| KBF 국내 선발전·초청대회 일반부 개인전 | 0.90 |
표에 없는 대회 등급은 배수가 확정될 때까지 Elo에 반영하지 않습니다. 세계팀선수권도 두 선수가 번갈아 치는 팀 경기는 개인 Elo에서 제외합니다.
경기 길이 — 40점 경기를 기준으로 삼습니다.
단판에서 L은 30점, 40점, 50점처럼 승리에 필요한 목표 점수입니다.
긴 경기는 실력을 보여줄 기회가 더 많다는 취지로 무게를 조금 더 줍니다. 다만 경기 점수가 늘었다고 정비례해서 영향력을 키우지 않도록 제곱근을 사용합니다.
| 목표 점수 L | 길이 배수 | 40점 경기와 비교 |
|---|---|---|
| 30점 | 0.866 | 약 13.4% 작게 |
| 35점 | 0.935 | 약 6.5% 작게 |
| 40점 | 1.000 | 기준 |
| 50점 | 1.118 | 약 11.8% 크게 |
같은 20% 차이인 40:32와 50:40은 점수 차 배수가 같습니다. 이때 길이 배수만 비교하면 50점 경기가 약 11.8% 더 크게 반영됩니다. 세트제의 길이는 실제 총 득점이 아니라, 아래에서 설명할 기본 세트 목표 점수 × 승리에 필요한 세트 수입니다.
라운드 — 대회 후반의 경기를 조금 더 크게 반영합니다.
| 라운드 | 배수 |
|---|---|
| 예선 · UMB PPPQ / PPQ / PQ / Q | 0.90 |
| 본선 조별리그 · 32강 · 16강 | 1.00 |
| 8강 | 1.05 |
| 준결승 | 1.10 |
| 결승 | 1.15 |
PBA·LPBA의 128강·64강은 본선 기준 1.00, 256강·512강·1024강은 0.90입니다. 별도로 예선으로 확인된 경기는 0.90을 적용합니다. 아직 라운드 배수를 정하지 못한 기록은 계산을 보류합니다.
06 · 선수의 기록
새로 등장했거나 오랜만에 복귀한 선수는 더 빠르게 조정합니다.
신규 선수 보정 — 아직 경기 기록이 적다면
처음의 1,500점은 공통 출발점일 뿐, 실제 실력과 꼭 맞지는 않습니다. 기록이 적은 동안은 점수를 더 빠르게 조정해, 기존 실력과 가까워질 기회를 줍니다. 여기서 신규란 실제 선수 경력이 짧다는 뜻이 아니라 비쿠 Elo에 반영된 경기 수가 적다는 뜻입니다.
n은 지금 계산하는 경기까지 포함한 Elo 반영 경기 수입니다. 최대 3배로 제한합니다.
| 경기 수 n | 신규 배수 |
|---|---|
| 1 | 3.00 (20배가 아니라 상한 3배) |
| 5 | 3.00 |
| 10 | 2.00 |
| 15 | 약 1.33 |
| 20경기 이상 | 1.00 |
보정은 승리할 때만 주는 혜택이 아닙니다. 패배했을 때의 하락 폭도 커집니다. 위의 50:30 예시에서 일반 선수는 약 +14.74점, 첫 경기 선수는 약 +44.22점입니다.
복귀 선수 보정 — 기록상 12개월 이상 공백이 있다면
오랫동안 결과가 없으면 예전 레이팅이 현재 실력을 충분히 설명하지 못할 수 있습니다. 마지막 Elo 반영 경기 이후 12개월 이상 지난 뒤 복귀하면 첫 5경기에는 1.5배를 추가로 곱합니다. 여섯 번째 경기부터는 다시 1배입니다. 점수를 미리 깎거나 1,500으로 되돌리지는 않습니다.
공백 여부와 경기 수는 현재 확보해 Elo에 반영한 자료 기준입니다. 실제로 쉬었는지, 다른 대회에 참가했는지까지 의미하지 않습니다. 세트 경기 역시 경기 전체를 1경기로 셉니다.
07 · 세트 경기
3:0과 3:2, 그리고 각 세트의 접전까지 봅니다.
세트제는 두 가지를 함께 봐야 합니다. 몇 세트를 따냈는지, 그리고 각 세트를 얼마나 큰 차이로 이기거나 졌는지입니다. 세트마다 Elo를 따로 바꾸지 않고, 경기 전체가 끝난 뒤 한 번만 반영합니다.
첫 번째: 세트 승수 차이
5판 3선승 경기에서 3:0은 필요한 3승만큼 차이가 나므로 비율이 1, 3:2는 1승 차이이므로 비율이 1/3입니다. 이 값을 단판의 득점 차 비율 대신 사용합니다.
WA, WB: 각 선수의 세트 승수 · q: 승리에 필요한 세트 수 (3판 2선승은 2, 5판 3선승은 3, 7판 4선승은 4)
두 번째: 세트 안의 득점 차이
모든 세트를 15:1로 이긴 3:0과, 모든 세트를 15:14로 이긴 3:0도 다르게 봅니다. 경기 전체 승자의 시점에서 각 세트의 득점 차를 구해 목표 점수로 나눈 뒤, 정규 세트 전체의 평균을 냅니다.
m: 정규 세트 수 · Pwi: 경기 승자의 i번째 세트 득점 · Pli: 경기 패자의 득점 · Ti: 해당 세트 목표 점수
앞부분은 세트 승수 차이, 뒷부분은 각 세트의 득점 차이를 반영합니다.
D의 범위는 −1~1이므로 득점 차 배수 1 + 0.5D는 0.5~1.5 사이입니다. 0.5는 세트 안의 점수 차가 영향을 주는 강도를 정한 값입니다. 이 배수로 승패가 뒤집히지는 않으며, 두 선수에게 같은 배수를 적용합니다.
| 경기 전체 결과 | 각 세트 점수 (경기 승자 기준) | 득점 차 배수 | 승자의 Elo 변화 |
|---|---|---|---|
| 3 : 0 · 큰 점수 차 | 15:1 / 15:1 / 15:1 | 1.467 | +33.45 |
| 3 : 0 · 매 세트 접전 | 15:14 / 15:14 / 15:14 | 1.033 | +23.57 |
| 3 : 2 · 다섯 세트 모두 접전 | 15:14 / 14:15 / 15:14 / 14:15 / 15:14 | 1.007 | +12.57 |
| 3 : 2 · 이긴 세트는 접전, 진 세트는 큰 차이 | 15:14 / 1:15 / 15:14 / 1:15 / 15:14 | 0.833 | +10.40 |
두 선수 Elo 1,800, 일반 개인 투어 본선, 두 선수 모두 반영 20경기 이상·복귀 보정 없음 기준입니다. 같은 3:0이어도 +33.45점과 +23.57점으로 차이가 납니다. 3:2는 세트 승수 차이도 작아 변화 폭이 더 작습니다.
세트 경기의 길이는 어떻게 정하나요?
Tbase는 기본 세트 목표 점수입니다. 득점 차에는 각 세트의 실제 목표 점수 Ti를 씁니다.
| 형식 | L 계산 | 길이 배수 √(L/40) |
|---|---|---|
| 15점 · 3판 2선승 | 15 × 2 = 30 | 0.866 |
| 15점 · 5판 3선승 | 15 × 3 = 45 | 1.061 |
| 15점 · 7판 4선승 | 15 × 4 = 60 | 1.225 |
| 11점 · 5판 3선승 | 11 × 3 = 33 | 0.908 |
남자부는 통상 15점, 여자부는 11점을 기본으로 하되 실제 경기 형식과 기록을 따릅니다. 마지막 세트만 목표 점수가 다르면 그 세트의 득점 차를 계산할 때 해당 목표 점수를 사용합니다. 단판·세트제·서바이벌이 섞인 과거 대회도 모두 같은 형식이라고 가정하지 않습니다.
세트 점수가 누락되었다면 임의로 채우지 않습니다.
세트별 기록이 온전하고 공식 최종 세트 승패와 일치할 때만 D를 적용합니다. 누락되거나 일치하지 않으면 득점 차 배수를 1로 놓고 세트 승수 차이만 반영합니다. 이 경우도 경기별 계산 근거에 표시합니다.
승부치기 득점은 D의 평균에서 제외합니다. 다만 공식 최종 세트 승패에 포함된 결정 세트는 경기 승패와 세트 승수 차이에 반영합니다. 신규·복귀 보정의 경기 수도 세트 수가 아닌 경기 전체를 기준으로 1씩 증가합니다.
08 · 계산 예제
50:30 승리를 처음부터 끝까지 계산해볼까요?
A와 B가 모두 Elo 1,800이고, 월드컵 50점 본선 경기에서 A가 50:30으로 이겼다고 해보겠습니다. 두 선수 모두 20경기 이상 반영했고 복귀 보정은 없습니다.
- 경기 전 기대 결과를 구합니다.
두 선수의 Elo가 같으므로 A의 기대 결과는 0.5입니다.
- 실제 결과와 비교합니다.
A가 이겼으므로 S = 1입니다. 실제 − 기대 = 1 − 0.5 = 0.5입니다.
- 경기의 변화 폭을 구합니다.
기본 24 × 월드컵 1 × 길이 √(50/40) × 본선 1 × 신규 1 × 복귀 1 = 약 26.833입니다.
- 점수 차 보정을 구합니다.
20점 차 ÷ 50점 = 0.4입니다. g = ln(1 + 5 × 0.4) = ln(3) ≈ 1.099입니다.
- 모두 곱해 기존 Elo에 더합니다.
A의 변화량 = 약 26.833 × 1.099 × 0.5 = +14.74점. A는 1,814.74, B는 1,785.26가 됩니다.
설명을 위해 중간값을 반올림해 표시했습니다. 실제 계산은 반올림 전 값으로 진행합니다. 실제 선수의 변화량은 경기 전 Elo·대회·라운드·경기 수·복귀 여부에 따라 달라집니다.
09 · 직접 비교
상대의 득점을 바꿔보세요.
A가 50점에 도달했을 때 B는 몇 점을 쳤을까요? 슬라이더를 움직여 점수 차가 Elo에 미치는 영향을 확인해보세요. 50:50은 무승부 예시입니다.
가상 예시: 두 선수 Elo 1,800 · 월드컵 50점 본선 · 반영 20경기 이상 · 복귀 보정 없음. 실제 레이팅이나 DB는 변경하지 않습니다.
10 · 기록을 읽는 방법
알아두면 더 정확하게 이해할 수 있습니다.
무승부라면 강한 선수도 점수가 그대로인가요?
현재 정책에서는 그렇습니다. 단판의 득점 차가 0이면 g = ln(1) = 0이어서 모든 변화량이 0입니다. 일반적인 Elo는 무승부에도 점수가 바뀔 수 있지만, 비쿠는 최종 점수 차 수식을 그대로 적용합니다. 여자부 단판에서 동점 후 하이런 등으로 승패를 정한 경우에도 득점 차가 0이면 Elo는 바뀌지 않습니다. 공식 승패 기록은 그대로 보존합니다.
에버리지·하이런·선공도 Elo에 직접 들어가나요?
현재 Elo 수식에는 직접 들어가지 않습니다. 같은 상대와 같은 조건에서 같은 점수로 끝났다면 이닝·에버리지·하이런·선공이 달라도 Elo 변화량은 같습니다. 이 기록들은 선수의 경기력을 여러 각도에서 살펴보기 위한 통계로 따로 보존하고 보여줍니다.
기간별 에버리지는 해당 기간의 총 득점을 총 이닝으로 나눈 값입니다. 각 경기의 에버리지를 단순히 평균 낸 값과는 다를 수 있습니다.
어떤 경기는 기록은 있는데 Elo가 없어요.
4명이 한 테이블에서 겨루는 서바이벌은 1대1 승패 수식에 맞지 않아 Elo에서 제외합니다. 두 명이 교대로 득점하는 팀 경기 역시 개인 기여도를 분리하기 어려워 개인 Elo에서 제외합니다. PBA 팀리그는 별도로 수집하며 개인 투어 Elo와 분리해 계산합니다.
날짜·선수 식별·점수 등 기록 검증에 문제가 있거나 대회·라운드의 배수가 아직 정해지지 않은 경기는 확인 후 반영합니다. 없는 결과를 추정해서 계산하지 않습니다.
UMB 여자 Elo에는 어떤 경기가 포함되나요?
여자 세계선수권과 여자 선수가 출전한 월드컵 경기를 경기 순서대로 누적합니다. 여자 세계선수권은 1.25배, 월드컵은 1.0배이며 경기 길이·라운드·점수 차 보정은 같은 공식을 적용합니다.
모든 여자 선수는 별도 1,500점에서 출발합니다. 여자 선수끼리는 여자 Elo를, 월드컵의 남자 상대는 그 경기 직전의 UMB 오픈 Elo를 사용합니다. 여자 Elo 1,500점 선수가 당시 오픈 Elo 1,800점인 남자 선수와 경기했다면 이 두 점수로 기대 결과를 계산합니다. 남자 선수의 이후 성적이나 현재 Elo는 사용하지 않습니다.
여자부 계산으로 기존 오픈 Elo를 덮어쓰지 않습니다. 공식 여자 랭킹의 국가·대륙 포인트는 Elo에 더하지 않으며, 실제 검증된 경기 결과만 반영합니다. 여자 세계선수권은 연 1회이므로 경기 수가 적은 선수의 점수는 변동이 클 수 있습니다.
과거 경기의 기록이 정정되면 어떻게 되나요?
검증된 기록을 경기 날짜와 시간 순으로 반영합니다. 한 경기의 결과가 다음 경기의 출발 Elo에 영향을 주므로, 과거 기록이 추가되거나 정정되면 뒤의 Elo와 대회별 변화도 다시 계산될 수 있습니다.
연결과 검증이 완료된 공식 상세 경기 기록이 있으면 PDF 요약보다 우선 적용합니다. 원본과 변경 이력은 보존하고, 불완전한 이닝표의 빈칸을 임의의 득점으로 채우지 않습니다.
‘선공 미확인’은 왜 남아 있나요?
원문에 선공이 표시되면 그 기록을 사용합니다. 2020년 이후 UMB 월드컵·개인 세계선수권의 50점 토너먼트 경기 중 후구가 없는 조건이 확인된 경우에는 최종 득점과 이닝 관계로 판정하고 근거를 남깁니다. 조별리그·세트제·불완전 기록에는 같은 추론을 적용하지 않습니다. 선공이라고 해서 뱅킹의 승자라고 단정하지도 않습니다.
이 배수들이 실제 실력을 완벽하게 설명하나요?
24·400·5와 대회·라운드·세트별 배수는 비쿠의 계산 정책입니다. 기록의 맥락을 반영하기 위한 설계이며, 예측 정확도가 검증된 최적의 계수라는 뜻은 아닙니다. 수집하지 못한 과거 경기나 자료 공백도 레이팅에 영향을 줄 수 있습니다. UMB·PBA·LPBA의 표시 범위와 수집 기록이 다르므로, 숫자만으로 서로 다른 선수 집단을 단정적으로 비교하지 않는 것이 좋습니다.
향후 승리 확률을 예측하는 서비스에서는 별도의 확률 보정과 예측 성능 검증이 필요합니다.
현재 반영된 경기 기록
60,901 / 70,698경기
비쿠가 확보하고 검증한 자료를 기준으로 계산합니다. 선수의 모든 경력을 포함하는 것은 아닙니다.
계산 정책 bqu-elo-2026-09-11-v3 · 초기 설계의 최종 수식에 신규 선수 상한과 세트별 득점 차 보정을 반영한 안내입니다.
Elo 계산 결과 CSV 다운로드