Autonomous Vehicle Motion Forecasting

This is a car trajectory prediction model based on LSTM. It encompasses model construction, data preprocessing, and our outstanding performance in the class Kaggle competition.
Language: Python
General
Autonomous Vehicle Motion Forecasting is a crucial task in the field of autonomous vehicles, involving the prediction of future positions of traffic agents. The LSTM model, a type of recurrent neural network, is widely used for this task due to its ability to capture long-term dependencies in sequential data. Three variations of the LSTM model were developed, each with different input and output features:
- Version 1: Input - Position, Output - Position
- Version 2: Input - Position+Velocity, Output - Position+Velocity
- Version 3: Input - Position+Lane, Output - Position
The LSTM pipeline for trajectory prediction can be summarized as follows:
- Data Pre-processing (including normalization and bagging)
- Train: Extract actual car trajectories using mask ID and form batches
- Test: Extract target car trajectories using track ID
- Input the features based on the selected version into the LSTM model
- Obtain predictions and de-normalize them to position
- Merge the output into a file
The LSTM model architecture includes LSTM cells, encoding input data and generating output sequences in an autoregressive manner. Dropout and other regularization techniques were considered but did not significantly improve the model’s performance. The Adam optimizer was chosen, and the Mean Squared Error (MSE) loss function was used, aligning with the evaluation metric of Root Mean Square Error (RMSE).
The LSTM model offers an effective solution for autonomous vehicle motion forecasting, capturing complex dynamics and long-term dependencies in car movements.
Ranking
Here is our model ranking among all the teams. You can see more details on Kaggle Page @here.
Source Code
If you want to know more details, you can check source code @here.