This is a draft of a new World Ranking List formula. We are happy to receive your feedback before December 15th, 2025 to wrl [at] fs-world.org.
VIDEOThere was a talk about the reasons for the update of the formula and the formula itself at the FSG Acadamy 2025 at Zeiss in Oberkochen which can be found here. The slides are available at FSG Acadamey 20251025 after logging in.
Contents
Goal
Give the best possible estimation of the performane of each team compared to all other teams in the worldThis can be broken down to the subgoals:
- Fair comparison between team performances ⇒ Asses according to common performance standard
- Meaningfull score ⇒ Score can be interpreted by the community
- Asses team performance ⇒ Weigh performance over one season equally
- Find balance between beeing too volatile and too constant
Formula for WRL
The points for the World Ranking List are computed on a per discipline basis. Each discipline is treated independent to all other disciplines. The used formula is
- \(p_\text{WRL} \in [0,1000]\)
- Overall World Ranking Points
- \(p_{d,\text{WRL}} \in [0,1000)\)
- World Ranking List Points for discipline \(d\)
- \(p_{d,k} \in [0, 1000)\)
- Points in discipline \(d\) at event \(k\)
- \(\mathcal{D}\)
- Set of all disciplines in a Formula Student event
- \(w \in \mathbb{R}^3\)
- Season weight, with \(w_s\) the s-th element of the vector
- \(\mathcal{K}_{d,s}\)
- (Sub)set of events which are taken into account for discipline \(d\) in season \(s\)
- \(c_{k} \in [0,1] \)
- Competitiveness of event \(k\). \(c_k \in [0, 1]\)
- \(\mathop{\mathrm{norm}}(\cdot): \mathbb{R} \rightarrow [0,1000)\)
- Function to normalize points to a common point distribution
- \(|\cdot|\)
- The cardinality operator, i.e. the number of elemnts in the set
In the following, an event is defined as one instance of the competition. A competition is defined as all events held by the same organizer and at the same time of year.
Season Weight \(w\)
Three seasons are considered in the WRL. The seasons are weighted with the season weight. The amount of three seasons is chosen to find a balance between a too volatile and a to constant WRL. Additionally, three seasons may represent the lifetime of a Formula Student student and its impact on the performance of the team. For the same reasons, the numerical values are chosen as
If there is only one season available, e.g. the very first competition of a class, the weight is chosen to \(w = \frac{1}{1} [1, 0, 0]\). Do only two seasons exist for a class, the weight is chosen to \(w = \frac{1}{1.5} [1, 0.5, 0]\);
Competitiveness \(c_k\)
The competitiveness \(c_k\) indicates the estimated level of the competitiors in competiton \(k\). For a competitiveness of \(c_k = 1\), there must be several WRL top teams participating. The lower limit for the competitiveness is \(c_k = 0\). This does not necessarily indicate, that the level of competition is low. It might be that the competitiveness can not be estimated since there are not enough teams with points in WRL participating. The competitiveness is defined as
with
- \(\varrho(a) \in [0,1]\)
- Connectivity score of team \(a\)
- \(p^-_{WRL}(a) \in [0,1000]\)
- WRL points of team \(a\) in latest WRL before event \(k\)
- \(T_k\)
- Set of top teams in competition \(k\) according to latest WRL before event \(k\) such that \(\sum_{a \in T_k} \varrho(a) = 3\). Last team is weighted to match the sum exactly. For competitions with an overall sum of connectivity \(\sum \varrho(a) < 3\), \(T_k\) is the set of all participating teams in competition \(k\).
- \(T_w\)
- Set of top teams in WRL according to latest WRL before event \(k\) such that \(\sum_{a \in T_w} \varrho(a) = 3\). Last team is weighted to match the sum exactly. For competitions with an overall sum of connectivity \(\sum_{a \in T_k} \varrho(a) < 3\), the set is defined such that \(\sum_{a \in T_w} \varrho(a) = \max\left(\sum_{a \in T_k} \varrho(a),1 \right) \). This is intended to mitigate the effects of low connectivity for new or isolated competitions while maintaining a good estimation of competitiveness for events with high connectivity.
Connectivity \(\varrho(a)\)
The connectivity \(\varrho\) represents how well connected each team is to its peers. If a team \(a\) directly competed against every other team in the world for the last three seasons, it has a connectivity of \(\varrho(a) = 1\). If a team \(a\) competed aginst no team in the world, it has a connectivity of \(\varrho(a) = 0\). For the artificial case of a team \(a\) that competed indirectly against all other teams in the world, the connectivity would be \(\varrho(a) = 0.1\). For double indirect, the connectivity would be \(\varrho(a) = 0.01\).
Before defining the formula for the connectivity, a value for the connection score \(m\) between two teams has to be defined. If the teams \(a\) and \(b\) are direct competitiors, \(m(a,b,\mathcal{T}) = 1\). If the teams \(a\) and \(b\) are indirect competitiors through one single other team, \(m(a,b,\mathcal{T}) = 0.1\). If the teams \(a\) and \(b\) are double indirect competitiors through one single chain of two other team, \(m(a,b,\mathcal{T}) = 0.01\). Mathematically, \(m\) is recursively defined as function
with
- \(a,b \in \mathcal{T}\)
- Teams to compute a connection score for
- \(\mathcal{T}\)
- Set of teams which are considered for the connection score, i.e. if \(a\) and \(b\) are not direct competitors, the set \(\mathcal{T}\) defines the teams which are used to search for indirect connections.
- \(\mathcal{C}_s(a)\)
- Set of direct competitors of team \(a\) in season \(s\)
- \(\mathcal T \backslash \mathcal{C}_s(a)\)
- Set Difference of \(\mathcal T\) and \(\mathcal{C}_s(a)\), i.e. all elements \(\in \mathcal{T}\) but \(\notin \mathcal{C}_s(a)\).
The definition makes sure that parallel indirect connections are considered, but do not sum up to a higher score than the direct connection. Through the recursive definition, the same is true for parallel double indirect connections and any combination of both.
With the connection score \(m_s(a,b,\mathcal{T})\), the connectivity \(\varrho(a)\) of a team \(a\) can be defined as the mean connection score over the set \(\mathcal{T}\) of teams. Or mathematically as
with
- \( \mathcal{T}\)
- Set of all teams with points in the WRL in all static disciplines and in the endurance
- \(\mathcal T \backslash \{a\}\)
- Set Difference of \(\mathcal T\) and element a, i.e. all elements \(\in \mathcal{T}\) but not \(a\).
- \(|\cdot|\)
- The cardinality operator, i.e. the number of elemnts in the set
The connectivity is computed over the last three seasons to match with the calculation of the points in the WRL. To be part of the set \(\mathcal{T}\), a team has to have WRL points at least in all static disciplines and the endurance. Only those teams are considered to be relevant for the competitiveness calculation.
Set \(\mathcal{K}_{d,s}\)
The set \(\mathcal{K}_{d,s}\) defines the events which are taken into account for the calculation of the WRL points for competition \(d\) in season \(s\). The set is build by the following algorithm:
- Start with an empty set, i.e. \(\mathcal{K}_{d,s} = \emptyset\)
- Sort events that held discipline \(d\) in season \(s\) according to their competitiveness \(c\) in descending order.
- Add the two events with the highest competitiveness to \(\mathcal{K}_{d,s}\)
-
Check for the next event \(k\) in list, if \(c_k \cdot \overline{p}_{r,d} > p_{d,\text{WRL},s}\big|_{\mathcal{K}_{d,s}}\).
In other words, if it is possible to improve the points in WRL for the season \(s\) by adding this event, under the assumption that the team scored maximum possible points.
- true
- add event \(k\) to the set \(\mathcal{K}_d\) and continue with the next event in list with step 4
- false
- the set \(\mathcal{K}_d\) is complete
with
- \(p_{d,\text{WRL},s}\big|_{\mathcal{K}_{d,s}}\)
- the points in WRL for discipline \(d\) in season \(s\) by using the set of events \(\mathcal{K}_{d,s}\).
- \(\overline{p}_{r,d}\)
- maximum possible points in competition \(d\) according to FS Rules.
The symbol \(p_{d,\text{WRL},s}\big|_{\mathcal{K}_{d,s}} \) is defined by \[ p_{d,\text{WRL},s}\big|_{\mathcal{K}_{d,s}} = \frac{1}{|\mathcal{K}_{d,s}|} \sum_{k \in \mathcal{K}_{d,s}} c_{k,s} \cdot \mathop{\mathrm{norm}}(p_{d,k}). \] The aim of this algorithm is to make it possible to take part in events with low competitiveness without a negative influence on the points in the WRL. Additionally, taking part in several events per season shall not result in an unfair advantage in the WRL.
Season
For each event \(k\), its season \(S\) is defined as
with
- \( \mathop{\mathrm{edition}}(k) \)
- the consecutive number of events of one competition, with \(\mathop{\mathrm{edition}}(k) = 1\) for the latest event of the competition.
- \(t(k)\)
- the date of competition \(k\).
- \(t_0\)
- the date of the latest update of the WRL
This definition of season ensures that there are no two events of the same competition within one season. In addition, the definition takes into account if an event of a competition has been canceled in a given year. The tolerance of three month ensures that competitions are able to adjust the date of the event by up to three month from year to year.
Normalization \(\mathop{\mathrm{norm}}(\cdot)\)
Normalization aims to equalize the assessment standards for each competition. According to the rules, negative points are not possible, they are set to zero points. If any team got awarded more than the official maximum possible points, the score is limited to the official maximum. The normalization is defined as
with
- \(x \in [0,1000)\)
- Raw discipline points
- \(\overline{p}_{k,d} \in [0,1000)\)
- Maximum possible points at competition \(k\) in discipline \(d\)
- \(\overline{p}_{r,d} \in [0,1000)\)
- Maximum possible points according to FS Rules in discipline \(d\)
Combined Events
For events which combine two classes, for example EV and CV, the formula is applied on the merged WRL of both classes. Special cases occur for the season calculation, which might result in a different season of the same event for the different classes, and so for the season weight. Since the season is used for almost all parameters, the special cases have to be considered throughout the calculation. For example is this the reason why the graph of direct competitiors is a directional graph.
Competitions
To be considered for the World Ranking List, the competitions must meet the following requirements:- The competition must be based on the official FS Rules or FSAE Rules.
- All static disciplines and all manual mode dynamic disciplines must be offered to participate for every team
- The competition must be offered in English language. A second language is acceptable als long as it does not cause any disadvantages for the remaining participants.
- A complete, extensive and documented inspection on site and in advance and a safe operation of the competition.
- Only one team per class, per university is allowed to particpate
- At least 10 teams must participate per class and score more than zero points