Inspiration

In the high-stakes world of the Toyota GR Cup, tire management is the single variable that decides races. Drivers often cannot feel the "cliff" of tire degradation until it's too late, sliding off the track or losing seconds per lap. Currently, race engineers rely on lagging indicators—primarily lap times—to make pit calls. By the time the lap time drops, the damage is already done.

I wanted to change that. I built an AI Co-Pilot that looks beyond the stopwatch. My goal was to create a system that analyzes the physics of the car—micro-steering corrections, lateral G-force bias, and braking pressure—to detect mechanical grip loss before it becomes visible to the human eye.

💡 The Problem

In the Toyota GR Cup, tire management is the single variable that decides races. Drivers often cannot feel the "cliff" of tire degradation until it's too late, and race engineers rely on lagging indicators like lap times to make pit calls. A missed pit window by 1-2 laps can cost the entire race.

🚀 The Solution

GR Cup Strategy Co-Pilot is a real-time decision support system. It doesn't just look at speed; it analyzes the physics of the car—micro-steering corrections, lateral G-force bias, and braking pressure—to detect mechanical grip loss before it becomes visible on the stopwatch.

Key Capabilities:

  • Real-time Pit Probability: Calculates a live % chance that tires have reached critical failure.
  • Physics-Based Analysis: Distinguishes between a "Pace Drop" (e.g., Safety Car) and "Grip Loss" (Tire Death).
  • Race Engineer Dashboard: A professional UI built with Streamlit that visualizes telemetry in the style of McLaren Applied Atlas / Cosworth Pi.
  • Robustness: Proven via sensitivity analysis to ignore false positives like traffic or yellow flags.

🔬 Scientific Basis

My approach is grounded in cutting-edge motorsport research. I implemented and adapted the Bidirectional LSTM (Bi-LSTM) architecture proposed by:

Sasikumar et al. (2025) in "Data-driven pit stop decision support for Formula 1 using deep learning models".

I adapted their methodology—originally designed for high-downforce F1 cars—to the specific vehicle dynamics of the Toyota GR86. By using a Bi-LSTM network with a look-back window of 10 laps, the model captures the temporal context of degradation, allowing it to differentiate between a temporary mistake and structural tire wear.


⚙️ How It Works (Architecture)

1. Data Pipeline (ETL)

The system utilizes a custom pipeline (normalize_all_tracks.py) to ingest gigabytes of raw telemetry from multiple circuits (COTA, Sebring, VIR, etc.).

  • Normalization: Converted mixed JSON/CSV formats into a unified time-series structure.
  • Feature Engineering: Created synthetic features like Steering Activity (Standard Deviation) and Lat G Bias.

2. The Brain (Bi-LSTM)

  • Input: A sequence of the last 10 laps (Vector size: 10x9).
  • Features: Speed, Throttle, Brake Pressure, Tire Age, G-Forces (Lat/Long), Steering Variance.
  • Model: Bidirectional LSTM layers allow the network to learn dependencies in both forward and backward directions within the sequence window.

3. The Interface

Built with Streamlit and Plotly, the dashboard provides an "at-a-glance" view for the Race Engineer, highlighting critical alerts (BOX BOX) only when confidence exceeds 50%.

📚 What I learned

I learned that in motorsport, context is king. A slow lap isn't always a bad lap (it could be traffic or fuel saving). Building an AI that understands why a car is slow was the biggest hurdle, and solving it with Bi-LSTM architecture was incredibly rewarding.

Built With

Share this project:

Updates