Personalized ADAS in CARLA

Personalized ADAS in CARLA

This project aims to personalize Advanced Driving-assistance Systems (ADAS) for autonomous vehicles using the self-driving car simulator CARLA. The two main focuses are on personalizing lane changing and personalizing Adaptive Cruise Control (ACC) that includes vehicle following and lane following.

Hardware-In-Loop based simulation with torque-controlled steering motor and CARLA.

Learning Phase

The Learning Phase uses a Gaussian Mixture Model (GMM) for clustering user preferences into known presets that the ADAS can act on.

The vehicle starts in autopilot mode. Press p to toggle between manual control and autopilot.

In manual control mode:

  • Press l to start or end a learning recording session (collects driver behavior data).
  • Press t to train the model on the collected data and save it locally.

After training, press Backspace to reset the scene, then enable autopilot to observe the personalized behavior.

It is advisable to personalize lane following in scene 0, clone vehicle following behavior in scene 1, and teach lane changing in scene 2.

Personalization

Sample data for 3 different drivers is stored in data/Driver_Data.

Lane Following

Personalized parameter: target_speed

Method: GMM

Driver 1 Set 1 Target Speed Histogram Plot and V-t Plot

Driver 1 Set 1 — Target Speed Histogram Plot & V-t Plot

All sets of 3 drivers target speed data

All sets of 3 drivers’ data

Vehicle Following

Personalized parameter: Time Headway (THW)

Method: GMM

Driver 1 Set 1 THW and TTCi

Driver 1 Set 1 — THW, TTCi

All sets of 3 drivers safe distance data

All sets of 3 drivers’ data

Lane Changing

Personalized parameters: Lateral Time, Longitudinal Velocity

Method: GMM + COS Trajectory

3 drivers trained models performing lane change in standard case

3 drivers’ trained models performing lane change in standard case [10m/s, -3.5m, 15m, -12m]