Study materials · photonresources.comClasses with our teachers · Photon AcademyFor IB Diploma students worldwide

Maths IA · Modelling · topic 79 of 97

Rating players: how does the Elo system work? · IB Maths IA idea: guide, sample graph and step-by-step plan

a formula you can test, not just quote

A rating is a number that says how likely you are to win. Every game nudges it up or down. How does one formula keep track of a whole league's strength?

Difficulty●●○ Medium
KitResults from a league, club or online game, a spreadsheet or Python for simulation
TimeAbout 12 to 16 hours
FitsAA SL2 of 3AA HL3 of 3AI SL2 of 3AI HL3 of 3
  • ✓ you follow chess, football or an online game with a ranking
  • ✓ you like exponentials and logarithms with a real use
  • ✓ you enjoy running a simulation to see if a formula behaves

The big idea

The Elo system rests on one function: the expected score of a player depends on the rating difference through a logistic curve, with base 10 and a scale of 400. After each game the rating moves by a fixed multiple, K, of how much the result beat or missed the expectation. That is a recurrence, and a simulation shows where it settles: ratings chase the true strengths, fast and noisy when K is large, slow and smooth when it is small. The marks come from comparing the choices. Why logistic and not normal? What K is best for how many games? How do real leagues, with draws and home advantage, change the model? Test your answers on real results.

Make it yours: pick one twist

Copying a classic won't show your choices. Pick one of these (or invent your own) and your IA becomes yours.

Swipe for more twists →

Derive the expected score

Start from the idea that a 400-point gap makes the stronger player about ten times as likely to win as to lose, and build the formula.

→ An exponential model with a base and a scale. You find the inverse, which turns a score into a rating difference with logarithms.
Logistic or normal?

Compare the logistic curve with a normal distribution function chosen to match it.

→ The curves agree in the middle and differ in the tails. You use real results from big rating gaps to decide which fits better.
Simulate the chase

Give players true strengths, play many games, update ratings with the Elo rule, and watch the ratings converge.

→ Technology becomes the main tool. You measure the typical error after a number of games and explain why it does not vanish.
Choose K

Run the simulation for several values of K and measure the error after 20, 50 and 100 games.

→ A trade-off between speed and noise, and a best K that depends on the number of games. You can link it to the slope of the curve.
Test on real results

Compute ratings for a league season and see how well the expected score predicts the next match.

→ A real test with draws and home advantage. You choose a measure of prediction quality and say what the model misses.
A rating after a rating

Study how fast a new player's rating approaches the truth, using the slope of the expected-score curve to get a time constant.

→ A differential-equation style argument at HL: the error shrinks by a fixed fraction per game, like exponential decay.

Your Maths IA research question: run the check

which results? how scored?

Write your own question first. Then make sure it ticks every box:

  • Names the competition, where its results come from, and how draws are scored.
  • Says what you calculate or compare: the curve, the best K, or the prediction error.
  • Needs algebra with exponentials and logarithms, and a simulation or data to test it.
  • Says how success is measured: error in rating, or how often the favourite wins as predicted.
  • States what the model ignores: home advantage, draw rates, changes in form.
Stuck on your question?Get an RQ Check: each question is scored on 5 points, with what to fix. Your first one is free.
Get an RQ Check

The model

Two ratings, a difference, an expected score from a curve, then an update after the game. Write your own sport and your own K in it.

ABRARBdifference D = RA − RB00.51expected score ED (points)after the game:R′ = R + K(S − E)S = 1, ½ or 0(win, draw, loss)why 400? why this curve?how big should K be?ratings chase the truth, with noise

How your Maths IA could be laid out

The usual order for a topic like this, what each part needs to show, and roughly how much of your 12 to 20 pages it takes. The words are all yours.

Aim and context~1 page
The competition and its rating system, and a prediction: how far does a rating gap of 200 points favour the better player?
The expected score~2 pages
The logistic formula explained, its inverse, and its key values, with a graph.
The update rule~1.5 pages
The recurrence, a worked example of several games, and what K means.
Simulation~2.5 pages
How you set up true strengths, how many games, and how you measured how close the ratings got.
Choosing K~2 pages
Error against K for a few game counts, with a clear conclusion and a reason from the slope of the curve.
Real results~2 pages
Ratings from real results and a test of how well they predict the next ones.
Conclusion~1 page
Back to the aim: how ratings behave and which choices matter.
Evaluation~2 pages, the biggest part!
Draws, home advantage, players who improve, rating inflation. Which assumption matters most?
Bibliographynot counted
Sources for the rating system and for every set of results.

What your Maths IA graph could look like

points on the curve = the test

A made-up view to show the form of a strong graph, not the answer: expected score against rating difference, with made-up observed scores. Yours will look different. example only

-600-400-20002004006000.00.20.40.60.81.0Rating difference D / pointsExpected score of the stronger-rated playerlogistic: 1/(1 + 10^(−D/400))a straight line (poor model)your observed score in each rating band (made-up)a 400-point gap: the favouritescores about 0.91ILLUSTRATIVE · MADE-UP DATA
  • Observed scores in rating bands against the curve: that is the test of the model, drawn on one graph.
  • A straight line is drawn on purpose: the real relationship flattens near 0 and 1.
  • Say how many games each point is based on. Bands with few games need wide error bars.
  • Label the axes with units: rating points and a score between 0 and 1.
  • Another graph to consider: estimated rating against games played, for two values of K.

The maths in action

worked through, not sketched!

The graph above was a sketch with made-up numbers. This figure works the idea through from the model itself, so you can see what a finished figure looks like. The source line under it says where every number comes from.

Two panels. Left: an S-shaped logistic curve and a nearly identical dashed normal curve of expected score against rating difference. Right: estimated rating against games played for two K values, one slowly rising and smooth, one fast and jagged, both heading toward a dotted line at 1700.
(a) Expected score against rating difference: logistic, and a normal curve with standard deviation 283 points. A gap of 200 points gives 0.76, 400 points gives 0.91. (b) Simulated ratings of a player with true gap 200 for K = 10 and K = 40.Source: Panel (a) computed from the formulas; panel (b) is a simulation (labelled).

Your game plan

Tick steps off as you go. We'll remember on this device.

0 of 10 done

  1. Read and predictFind out how a rating system you know works. Before any formula, guess how often a player 200 points higher wins.
  2. Understand the curveWrite the expected score, plot it, and find its values at a gap of 0, 100, 200 and 400 points. Find the inverse.
  3. Build the updateApply the update rule by hand to five games. Check that ratings move toward the result and that the total rating is conserved.
  4. Trial run (1 lesson)Simulate two players for 50 games in a spreadsheet. Do the ratings settle near the truth? Fix the set-up now.
  5. Simulate properlyUse many players or many repeats, record the error after a set number of games, and say how many repeats you used.
  6. Choose KRepeat for several values of K and games played. Plot the error against K and explain the best choice.
  7. Test on real resultsRate a real league from its results and measure how well each match's expected score predicts what happened.
  8. Go further, with a reasonCompare logistic with normal, or find the time constant from the slope of the curve. HL: this is where the rigour for criterion E comes from.
  9. Reflect as you goAfter each result, write one line on what it means for a real ranking and what it assumes. These lines become your evaluation.
  10. Cut, check, then sendCheck every symbol is defined, simulation settings are stated and the conclusion answers your aim. Then send your teacher one draft.

The maths you'll use

  • Exponential and logistic functions – Study : its shape, symmetry , and the value .
  • Inverse functions and logarithms – Solve for the difference from an expected score: .
  • Recurrence relations – Write the update and follow its expected behaviour.
  • Normal distribution – Choose the standard deviation of a normal curve that matches the logistic slope at and compare the tails.
  • Simulation and error – Simulate games with true strengths, record the root-mean-square error of the ratings, and compare values of .

Key equations

Syllabus links

  • 1.5Exponents and an introduction to logarithms
  • 1.7Rational exponents and laws of logarithms
  • 2.2Functions, domain, range and inverses
  • 2.5Composite and inverse functions
  • 2.9Exponential and logarithmic functions
  • 4.9Normal distribution
  • 5.6Standard derivatives; chain, product and quotient rules

Read up first

Data and sources to start from

A simulation with known strengths for testing K, plus real results (a league season, a chess database, an online game) to test the prediction.

References to cite

  1. Elo, A. E. (1978). The rating of chessplayers, past and present. Arco Publishing.
  2. Fédération Internationale des Échecs. (2026). FIDE handbook: Rating regulations. https://handbook.fide.com/

Cite what you actually use, in your own format, and say where each number came from.

Traps to avoid in this Maths IA

one run proves nothing
  • Quoting the formula and the value of K from a website without deriving or testing either.
  • Forgetting that an expected score is not a win probability when draws are possible.
  • Judging the simulation from one run. Say how many repeats you used and how much they vary.
  • Using results the ratings were built from to test the ratings. Keep a separate set.
  • Calling the logistic curve 'the normal curve' or the reverse. State which you use and why.
  • Comparing ratings from two different systems as if they were on the same scale.

More Maths IA ideas like this

Make sure it's yours

This guide shows how a topic like this is usually approached. It is not an IA. Your question, choices, data, analysis and words must be your own: change something, tell your teacher where the idea came from, and follow your school's rules on outside help.

Get your RQ checked · first one free