- 세상의 모든 계산기 수학, 과학, 공학 이야기 기타 ()
Elo Rating System 이란?
1. 정의
승/패로 나뉘는 시합에 있어서, 선수의 실력을 (승/패, 승률에 따라) 점수화하여 순위를 매기는 방식.
https://en.wikipedia.org/wiki/Elo_rating_system
https://namu.wiki/w/Elo%20%EB%A0%88%EC%9D%B4%ED%8C%85
2. 특징
- 이기면 레이팅이 오른다.
레이팅이 자기보다 높은 사람에게 이기면 확 오른다.
레이팅이 자기보다 낮은 사람에게 이기면 조금 오른다. - 지면 레이팅이 떨어진다.
레이팅이 자기보다 높은 사람에게 지면 조금 떨어진다.
레이팅이 자기보다 낮은 사람에게 지면 많이 떨어진다. - 이기고 레이팅이 떨어진다거나, 지고 레이팅이 올라간다거나 하는 일은 절대 없음!
- 레이팅을 기반으로 플레이어간 상대 승률을 추정할 수 있다.
경기 결과에 따른 레이팅 변화
ㄴ Ra : 기존 레이팅
ㄴ K : factor
ㄴ Sa : 실제 획득 점수 (승=1, 무승부=0.5, 패=0)
ㄴ Ea : 기대 획득 점수 (=Elo 기반 승률)
![]()
<검은 색 곡선은 y축_좌 승률, 브라운(K=32)과 레드(K=16) 곡선은 y축_우 점수변공>
Graphs of probabilities and Elo rating changes (for K=16 and 32) of expected outcome (solid curve) and unexpected outcome (dotted curve) vs initial rating difference For example, player A starts with a 1400 rating and B with 1800 in a tournament using K = 32 (brown curves). The blue dash-dot line denotes the initial rating difference of 400 (1800 - 1400). The probability of B winning, the expected outcome, is 0.91 (intersection of black solid curve and blue line); if this happens, A's rating decreases by 3 (intersection of brown solid curve and blue line) to 1397 and B's increases by the same amount to 1803. Conversely, the probability of A winning, the unexpected outcome, is 0.09 (intersection of black dotted curve and blue line); if this happens, A's rating increases by 29 (intersection of brown dotted curve and blue line) to 1429 and B's decreases by the same amount to 1771.
- 플레이어 A = 1400, 플레이어 B = 1800, 점수(rating)차이 400.
- K=32 인 것으로 계산시
B가 이기면 Expected 해당 (확률 0.91 = 91%)
A 점수 3점 깍임 = 1400 - 3 = 1397
B 점수 3점 오름 = 1800 + 3 = 1803
A가 이기면 Unexpected 해당 (확률 0.09 = 9%)
A 점수 = 1400 + 29 = 1429
B 점수 = 1800 - 29 = 1771
3. 장/단점
댓글3
-
세상의모든계산기
A, B, C 선수만 존재하는 풀을 가정해 보겠습니다.
C는 A와도 경기를 해 보았고, B와도 경기를 해 보았습니다만, A와 B는 지금까지 직접 경기를 해 본 적이 없습니다.- A의 C에 대한 1:1 승률은 99.959278561331%로 ELO Rating 1356점의 차이가 납니다.
- B의 C에 대한 1:1 승률은 91.190530760341%로 ELO Rating 406점의 차이가 납니다.
- A는 B보다 Elo Rating 으로 +950 높으므로 승률이 99.580074308528% 가 될 것으로 추정해 볼 수 있지만,
막상 A vs B 를 1:1로 붙여보면 A의 승률이 80%에 불과합니다.
(B가 A의 특정한 약점을 집요하게 추궁하기 때문이라고 가정해 보겠습니다.)
A, B, C의 Elo Rating 을 각각 4500, 3550, 3144 로 설정해 놓고,
같은 비율로 충분히 많은 시합을 시킬 경우에 각각의 레이팅은 몇점이 될까요? -
1
세상의모든계산기
통계적 접근
- 1라운드당 3경기로 구성하여 각각 1회씩 대결 (순차적)
(기대 승률에 기반하여 Random 하게 승/패 결정. 무승부 없음.) - 매 경기 직후 ELO Rating 변경 (K=16)
- 100 라운드(=300경기) 진행 후 A, B, C 의 Rating 값 저장
- 5000 회 반복하여 통계분석

A : 4500에서 4228.47로 (▼271.53)
B : 3550에서 3768.67로 (▲218.67)
C : 3144에서 3196.87로 (▲52.87)- 조정 전 elo 합계 : 4500 + 3550 + 3144 = 11194
- 조정 후 elo 합계 : 4228.47+3768.67+3196.87 = 11194
- 1라운드당 3경기로 구성하여 각각 1회씩 대결 (순차적)
- 1
세상의모든계산기 님의 최근 댓글
예제1) 예제2) 예제3) 추가옵션 2026 10.18 PC 소프트웨어에서 script Editor 로 소스코드를 쉽게 복사 -> AI에게 문의/개선요청 할 수 있습니다. 잘 되거나, 잘 안되는 부분이 있으면 대댓글 남겨주세요. 2026 10.16 AI로 딸깍하니까, lua 프로그램으로 바꿔주네요. 세상 참... 본문의 ti-basic 기반으로 만들었고, 서로 문제를 일으킬 수 있을 듯 하여 별개의 파일로 작성하였습니다. 1.1 Page : 설명 1.2 Page : 그래프 1.3 Page : Calculator 사용법 Root Locus 1+K*N/D=0 EX: (6s^2+5s+2)/(6s^3(s^2+7s+16)) INPUT (Calculator page 1.3 ): rl_num:={6,5,2} rl_den:={6,42,96,0,0,0} or num(6s^2+5s+2) den(6s^3(s^2+7s+16)) optional: rl_T:=10 rl_D:=1 Coeffs are descending powers of s. Back on graph page it refreshes itself, else press [r] or [enter]. KEYS: [+] [-] Kmax zoom, [0] reset, [r] reload MARKS: x=pole, o=zero, red line=real axis, gray dash=asymptote, box=break pt, diamond=j-cross VARS: rl_Kmax rl_sigma rl_r rl_JK rl_Jw 첨부파일 rlocus_lua.tns 2026 10.16 링크가 깨졌다고 하시니 404 에러가 나는 아래 링크를 말씀하시는 것 같은데 https://digilander.libero.it/fpirozzi/fourier.zip 이것은 TI-89 / TI-92 용 파일이며 [TI-92][TI-89] Fourier Transform Library https://allcalc.org/52455 링크의 Attached files + 안에 있습니다. 2026 09.11 본문에 사용된 nspire 용 파일은 본문 하단에 Attached files + 안에 있습니다. 클릭하면 표시됩니다. 2026 09.11