Important
iRacing does not publicly release its exact iRating formula, but we can approximate the system with a similar approach based on the Elo rating model with adjustments for position-based rankings, field size, and Strength of Field (SoF). Here’s a version of the formula that should give us reasonable results for the project.
Variable | Description |
---|---|
Driver current iRating before the race | |
Strength of Field, calculated as the average iRating of all drivers in the race | |
Driver final position in the race | |
Number of drivers in the race |
Driver Expected Performance against the
This factor influences how much driver's iRating can change in a single race. For motorsports, a typical
Define an Actual Performance Score (
Finally, use the Elo-based adjustment for the iRating change:
New iRating:
Let’s say:
-
Driver initial iRating
$R_{before}$ is 1500. The race$SoF$ is 1600. Driver finish in 5th place out of 20 drivers. -
Expected Finish Probability:
$$E=\cfrac{1}{1+10\cfrac{(1600−1500)}{400}}=\cfrac{1}{1+10\cfrac{100}{400}}≈0.36$$ -
Scaling Factor (
$K$ -Factor):$$K=30+\cfrac{70}{20}=30+3.5=33.5$$ -
Actual Performance Score (
$S$ ):$$S=1−\cfrac{5−1}{20−1}=1−\cfrac{4}{19}≈0.79$$ -
Calculate iRating Change:
$$ΔR=33.5×(0.79−0.36)=33.5×0.43≈14.4$$ -
Updated iRating:
$$R_{after}=1500+14.4=1514.4$$
This approximation captures the essence of iRating adjustments in iRacing. The parameters (such as
To account for the theoretical performance of each car in a formula like iRating, we can adjust the expected
performance (
New Variables:
Variable | Description |
---|---|
The theoretical performance of the car. The fastest car has |
|
An adjusted theoretical performance score for each driver, used to calculate their relative competitiveness. |
To account for car performance, we are going to modify the Expected Finish Probability formula:
Where
Then, use the adjusted iRating in the logistic formula:
This means slower cars will have a lower Expected Performance
Scenario:
- Driver A:
$R_{before}=1500$ $CarPerf=0$ (fastest car). - Driver B:
$R_{before}=1500$ $CarPerf=0.5$ (0.5 seconds slower). -
$α=50$ : Time penalty conversion factor. $SoF=1550$ -
$N=20$ .
Steps:
-
Adjusted Performance:
- Driver A:
$$AdjustedPerf_A=1500−50×0=1500$$ - Driver B:
$$AdjustedPerf_B=1500−50×0.5=1475$$
- Driver A:
-
Expected Finish Probability:
- Driver A:
$$E_A=\cfrac{1}{1+10^\cfrac{(1550−1500)}{400}}≈0.36$$ - Driver B:
$$E_B=\cfrac{1}{1+10^\cfrac{1550−1475}{400}}≈0.29$$
- Driver A:
-
Actual Performance (SS):
- Assume Driver A finishes 1st (
$S_A=1$ ). - Assume Driver B finishes 10th (
$S_B=1−10−120−1≈0.53$ ).
- Assume Driver A finishes 1st (
-
iRating Change:
$$K=30+\cfrac{70}{20}=33.5$$ - Driver A: $$ ΔR_A=33.5×(1−0.36)≈21.5$$
- Driver B:
$$ΔR_B=33.5×(0.53−0.29)≈8.0$$
-
New iRating:
- Driver A:
$$R_{A after}=1500+21.5=1521.5$$ - Driver B:
$$R_{B after}=1500+8.0=1508.0$$
- Driver A:
By incorporating the
Slower cars are given a lower expectation (
This approach balances performance differences due to machinery while preserving competitiveness.