Week 10: 04 ~ Aug 10
Preliminaries
The key tasks included proposing an asynchronous model upload workflow, collecting counterclockwise datasets for all four circuits, processing and merging these datasets, training individual circuit-specific models, and finally training a unified master model capable of running across all circuits.
The results demonstrated significant improvements in model performance, with the individual models successfully completing their respective circuits in both clockwise and counterclockwise directions. The unified master model also showed promising results, indicating its ability to generalize across different driving scenarios.
Objectives
- Propose an asynchronous model upload workflow to accelerate exercise execution and enhance responsiveness in the web interface.
- Collect counterclockwise datasets for all four circuits to complement existing clockwise data.
- Process and merge clockwise and counterclockwise datasets to form richer, more balanced training data.
- Train four individual circuit-specific models using the NVIDIA PilotNet architecture.
- Train a unified master model capable of running across all circuits.
Execution
Asynchronous Model Upload Proposal
The current model upload solution involves combining the ONNX model, user code, and other necessary files into a ZIP archive, sending it to the Robotics Academy Manager (RAM), and then having the RAM extract the contents inside the Docker container.
The ONNX model size ranges from approximately 6 MB to 50 MB, depending on the exercise. My proposal is to upload the ONNX model asynchronous with the user’s code and other necessary files. In manual testing, this approach proved to be twice (2x) as fast as the current model upload process.


Counterclockwise Dataset Collection
During last week's (week - 9) testing, the trained models struggled to complete the circuits, often failing at certain turns or deviating off-track. This issue indicated a bias in the dataset. The training data was collected entirely in the clockwise direction, meaning the model never encountered the reverse visual patterns of curves, intersections, or lane markings.
To address this, I conducted counterclockwise runs on all four circuits within the simulator using my custom data collection script. I followed the same procedure as during the clockwise dataset collection in week 5 .
This approach ensured that the dataset captured:
- Counterclockwise curves: The model learned to navigate turns in the opposite direction, enhancing its ability to handle diverse driving scenarios.
- Mirrored visual perspectives of the road, which often differ significantly from clockwise runs.
- Balanced left and right turn occurrences, reducing steering bias.
By adding counterclockwise data, the overall dataset became more symmetric and representative of real driving conditions, making the models less prone to overfitting to a single driving pattern.
Dataset Processing & Merging
The newly collected counterclockwise datasets
were processed using the same pipeline as the
previous datasets from
week 7
, including steps such as
image cropping
,
angular velocity (w)
categorization, and balancing
.
After processing, I merged the
clockwise and
counterclockwise datasets to
create more comprehensive datasets for each
circuit.
Circuit-Specific Model Training
With the newly merged datasets, I trained four individual models for each circuit using the NVIDIA PilotNet architecture. After fine-tuning the neural network and It's parameters, the results are summarized below with descriptions.
Test 01:
Test Circuit: Simple Circuit
Train Dataset: Montreal, Montmelo, Nürburgring Circuit
Test: Simple Circuit
Result:
The simple circuit successfully completed
the entire track in both
clockwise and
counterclockwise directions
without any deviations. It maintained
consistent line detection and stable
movement throughout the circuit. The robot
completed the track in approximately
105
seconds in the
clockwise
direction and 109
seconds in
the
counterclockwise direction,
handling both straight sections and curves
with accuracy.
Test 02:
Test Circuit: Montreal Circuit
Train Dataset: Simple, Montmelo, Nürburgring Circuit
Test: Montreal Circuit
Result:
The Montreal Circuit successfully completed the entire track counterclockwise. In the clockwise direction, it failed to complete. The robot completed the track in approximately 400 seconds in the counterclockwise direction and ran 240 seconds in the clockwise direction before going off track.
Test 03:
Test Circuit: Montmelo Circuit
Train Dataset: Simple, Montreal , Nürburgring Circuit
Test: Montmelo Circuit
Result:
The simple circuit successfully completed
the entire track in both
clockwise and
counterclockwise directions
without any deviations. It maintained
consistent line detection and stable
movement throughout the circuit. The robot
completed the track in approximately
187
seconds in the
clockwise
direction and 185
seconds in
the
counterclockwise direction,
handling both straight sections and curves
with accuracy.
Test 04:
Test Circuit: Nürburgring Circuit
Train Dataset: Simple, Montreal , Montmelo Circuit
Test: Nürburgring Circuit
Result:
The Nürburgring circuit circuit successfully completed the entire track in clockwise but counterclockwise directions; it failed to complete. The robot completed the track in approximately 133 seconds in the clockwise direction and ran 122 seconds in the counterclockwise direction before going off track.
Unified Master Model Training
After training the individual models for each circuit, I proceeded to train a unified master model capable of running across all circuits. This model was trained using the merged dataset containing both clockwise and counterclockwise data from all four circuits.
The unified master model is designed to handle the diverse driving scenarios presented by the different circuits, leveraging the knowledge gained from the individual models. It aims to provide a more generalized solution that can adapt to various driving conditions without the need for circuit-specific training.
The training process involved
fine-tuning
the neural network
parameters
and
optimizing
the model architecture
to ensure it could effectively learn from the
combined dataset. The goal was to create a
robust model that could
navigate all circuits with high accuracy and
minimal deviations.
The unified master model is expected to perform well across all circuits, demonstrating the ability to generalize from the individual circuit models while maintaining the performance levels achieved in the previous tests.
Result
The unified master model completed all four circuits in both clockwise and counterclockwise directions successfully.
Circuit Name | ClockWise Direction (seconds) | CounterClockWise Direction (seconds) |
---|---|---|
Simple Circuit | 96 | 99 |
Montreal Circuit | 297 | 274 |
Montmelo Circuit | 184 | 183 |
Nurburgring Circuit | 144 | 146 |
I ran each circuit multiple times in both clockwise and counterclockwise direction, but the result was almost the same.
Enjoy Reading This Article?
Here are some more articles you might like to read next: