Note
This is a personal project, I am not affiliated with Formula 1 or any of its teams. The data used in this project is from the Jolpica F1 API. I run personally with the expenses of the server, domain and so on. If you like this project and want to support it, you can buy me a coffee.
Formula 1 ELO system. Who are the GOATs? Let's see!
This project is a personal project to calculate the ELO of the Formula 1 drivers, inspired in the next video of Mr V's Garage and motivated to know who are the greatest of all time.
The system will count with 3 different ways to calculate the rating of the drivers: ELO System, iRating system and TrueSkill system.
- Rookie drivers will start with 1000 ELO/rating
- Indy 500 drivers will be ignored
- If we don't have the data analysed of a season with the theoretical performance of the car,
we will use the World Constructors' Championship as a reference, applying a difference of 0.2s per car.we will set the theoretical performance to 0
- ✅ v1.0.0 (Dec 1st of 2024): Publish the first stage of the API with the ELO system implemented.
- ✅ v2.0.0 (Dec 15th of 2024): Implement the iRating system.
- ⬜ v3.0.0: Implement the TrueSkill system.
- ✅ Support for theoretical performance. Added in minor versions 1.1.0 and 1.2.0
- ✅ Mechanism to reset and reprocess all the data, been able to reprocess only one rating system. Added in version v2.0.0
- ⬜ Implement in the elo record also information about how much win/lose the driver and against whom.
- ⬜ Do not save in database Indy 500 drivers and delete relative data.
- ⬜ Blue/Green deployment using Docker Swarm.
- ⬜ Improvements in performance (optimization of SQL queries and code process).
- ⬜ Take into account DNS and DNF in the calculation of the rating, mechanical issues should not impact negatively to drivers.
- ⬜ Create open source libraries to calculate ratings.
This project is licensed under the MIT License with the addition of a "Commons Clause." Below is a brief summary of what this means:
- Permissions: You are free to use, copy, modify, merge, publish, distribute, sublicense, provided that the original copyright notice and this license are included in all copies or substantial portions of the software.
- Restrictions: The "Commons Clause" adds a condition that prohibits selling the software itself. This means you cannot charge fees for products or services whose primary value comes from the functionality of this software. For example, you cannot offer it as a paid hosted service or sell it directly.
- Warranty Disclaimer: The software is provided "as is," without warranty of any kind. The authors are not liable for any damages or issues arising from its use.
For full details, please refer to the LICENSE file.
Elo Rating System
Jolpica F1 API
Mr V's Garage inspiring video
TrueSkill System
TrueSkill System Paper
ELO System
iRating System