- 세상의 모든 계산기 수학, 과학, 공학 이야기 기타 ()
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
세상의모든계산기 님의 최근 댓글
뉴턴-랩슨 적분 방정식 시각화 v1.0 body { font-family: 'Pretendard', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; display: flex; flex-direction: column; align-items: center; background: #f8f9fa; padding: 40px 20px; margin: 0; color: #333; } .container { background: white; padding: 40px; border-radius: 20px; box-shadow: 0 15px 35px rgba(0,0,0,0.08); max-width: 900px; width: 100%; } header { border-bottom: 2px solid #f1f3f4; margin-bottom: 30px; padding-bottom: 20px; } h1 { color: #1a73e8; margin: 0 0 10px 0; font-size: 1.8em; } p.subtitle { color: #5f6368; margin: 0; font-size: 1.1em; } .equation-box { background: #f1f3f4; padding: 15px; border-radius: 10px; text-align: center; margin-bottom: 30px; font-size: 1.3em; } canvas { border: 1px solid #e0e0e0; border-radius: 12px; background: #fff; width: 100%; height: auto; display: block; } .controls { margin-top: 30px; display: flex; gap: 15px; align-items: center; justify-content: center; flex-wrap: wrap; } button { padding: 12px 25px; border: none; border-radius: 8px; background: #1a73e8; color: white; cursor: pointer; font-weight: 600; font-size: 1em; transition: all 0.2s; box-shadow: 0 2px 5px rgba(26,115,232,0.3); } button:hover { background: #1557b0; transform: translateY(-1px); box-shadow: 0 4px 8px rgba(26,115,232,0.4); } button:active { transform: translateY(0); } button.secondary { background: #5f6368; box-shadow: 0 2px 5px rgba(0,0,0,0.2); } button.secondary:hover { background: #4a4e52; } .status-badge { background: #e8f0fe; color: #1967d2; padding: 8px 15px; border-radius: 20px; font-weight: bold; font-size: 0.9em; } .explanation { margin-top: 40px; padding: 25px; background: #fff8e1; border-left: 5px solid #ffc107; border-radius: 8px; line-height: 1.8; } .explanation h3 { margin-top: 0; color: #856404; } .math-symbol { font-family: 'Times New Roman', serif; font-style: italic; font-weight: bold; color: #d93025; } .code-snippet { background: #202124; color: #e8eaed; padding: 2px 6px; border-radius: 4px; font-family: monospace; } 📊 Newton-Raphson 적분 방정식 시뮬레이터 미분적분학의 기본 정리(FTC)를 이용한 수치해석 시각화 목표 방정식: ∫₀ᴬ (2√x) dx = 20 을 만족하는 A를 찾아라! 계산 시작 (A 추적) 초기화 현재 반복: 0회 💡 시각적 동작 원리 (Newton-Raphson & FTC) Step 1 (오차 측정): 현재 A까지 쌓인 파란색 면적이 목표치(20)와 얼마나 차이나는지 계산합니다. Step 2 (FTC의 마법): 면적의 변화율(미분)은 그 지점의 그래프 높이 f(A)와 같습니다. Step 3 (보정): 다음 A = 현재 A - (면적 오차 / 현재 높이) 공식을 사용하여 A를 이동시킵니다. 결론: 오차를 현재 높이로 나누면, 오차를 메우기 위해 필요한 가로 길이(ΔA)가 나옵니다. 이 과정을 반복하면 정답에 도달합니다! const canvas = document.getElementById('graphCanvas'); const ctx = canvas.getContext('2d'); const iterText = document.getElementById('iterText'); // 수학 설정 const targetArea = 20; const f = (x) => Math.sqrt(x) * 2; // 피적분 함수 f(x) = 2√x const F = (x) => (4/3) * Math.pow(x, 1.5); // 정적분 결과 F(x) = ∫ 2√x dx = 4/3 * x^(3/2) let A = 1.5; // 초기값 let iteration = 0; let animating = false; // 그래프 드로잉 설정 const scale = 50; const offsetX = 60; const offsetY = 380; function drawGrid() { ctx.strokeStyle = '#f1f3f4'; ctx.lineWidth = 1; ctx.beginPath(); for(let i=0; i 2026 04.11 참값 : A = ±2√5 근사값 : A≈±4.472135954999579392818347 2026 04.10 fx-570 ES 입력 결과 초기값 입력 반복 수식 입력 반복 결과 2026 04.10 파이썬 코드 검증 결과 초기값: 5.0 반복 1회차: 4.5000000000 반복 2회차: 4.4722222222 반복 3회차: 4.4721359558 반복 4회차: 4.4721359550 반복 5회차: 4.4721359550 초기값: 10.0 반복 1회차: 6.0000000000 반복 2회차: 4.6666666667 반복 3회차: 4.4761904762 반복 4회차: 4.4721377913 반복 5회차: 4.4721359550 2026 04.10 감사합니다. 주말 잘 보내세요. 2026 03.06