Skip to content

AARC-lab/EV_Carfollowing_Calibration_ITSC25

Repository files navigation

🚗 Modeling Electric Vehicle Car-Following Behavior: Classical vs Machine Learning Approach

Artifacts for the Paper accepted at The IEEE International Conference on Intelligent Transportation Systems (ITSC) 2025

If you used our work, please cite:

@INPROCEEDINGS{11423605,
  author={Uddin, Md. Shihab and Shakib, Md Nazmus and Bhadani, Rahul},
  booktitle={2025 IEEE 28th International Conference on Intelligent Transportation Systems (ITSC)}, 
  title={Modeling Electric Vehicle Car-Following Behavior: Classical vs Machine Learning Approach}, 
  year={2025},
  volume={},
  number={},
  pages={4150-4155},
  keywords={Internal combustion engines;Forestry;Predictive models;Electric vehicles;Data models;Safety;Vehicle dynamics;Driver behavior;Random forests;Intelligent transportation systems;Electric vehicle;Car-following behavior;Random Forest;IDM;OVRV;CACC;OVM},
  doi={10.1109/ITSC60802.2025.11423605}}

This repository provides classical and machine learning models to simulate and predict electric vehicle (EV) car-following behavior under varying gap settings. The models include:

  • Classical physics-based models: IDM, OVM, OVRV, and CACC
  • Machine Learning models: Random Forest for acceleration and spacing prediction
  • Evaluation across gap settings: Medium, Long, and Extra Long(XLong)

📁 Project Structure

├── data/
├── notebook/
│   ├── IDM_calibration.ipynb
│   ├── OVM_calibration.ipynb
│   ├── OVRV_calibration.ipynb
│   ├── CACC_calibration.ipynb
│   ├── acc_prediction.ipynb
│   ├── space_prediction.ipynb
├── REPORTS/
├── shells/
│   ├── install.sh
├── plot_model_rmse.py
└── README.md

⚙️ Installation

1. Clone the Repository

git clone https://github.com/AARC-lab/car-following-behavior-EVACC-paper-recreation.git
cd car-following-behavior-EVACC-paper-recreation

### 2. Create Virtual Environment
. shells/install.sh

📊 Usage

Run each notebook under notebook/ to calibrate a physics-based model using RMSE minimization:

IDM_calibration.ipynb

OVM_calibration.ipynb

OVRV_calibration.ipynb

CACC_calibration.ipynb

Each notebook outputs:

Best-fit parameters

RMSE plots

Simulated vs actual spacing/speed figures

Results are saved in REPORTS/final_results/.

🤖 Machine Learning Model Training

1. Acceleration Prediction

notebook/acc_prediction.ipynb

2. Spacing Prediction

notebook/space_prediction.ipynb

ML models are saved as:

notebook/rf_model_acc.pkl
notebook/rf_model_spacing.pkl

📈 Generate Final Evaluation Plots

python plot_model_rmse.py

📁 Data Format

The dataset used for this project (EV car-following trajectory data) can be downloaded from the following link:

👉 Download Dataset (Google Drive)

After downloading, place the dataset in the data/ directory to ensure all notebooks and scripts work correctly.

Expected columns in the dataset:

Time, Speed Leader, Speed Follower, Spacing, gap_setting

The pipeline automatically computes:

  • delta_v – relative speed

  • acc_follower – follower vehicle acceleration

  • dt – time step

✅ Output Summary

  • RMSE-calibrated parameters

  • Time-series spacing and speed plots

  • Residual analysis (ML)

  • Machine learning predictions vs classical models

  • Visuals for Medium, Long, and XLong gap scenarios

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors