Table of Contents
Fetching ...

An Online Self-learning Graph-based Lateral Controller for Self-Driving Cars

Jilan Samiuddin, Benoit Boulet, Di Wu

Abstract

The hype around self-driving cars has been growing over the past years and has sparked much research. Several modules in self-driving cars are thoroughly investigated to ensure safety, comfort, and efficiency, among which the controller is crucial. The controller module can be categorized into longitudinal and lateral controllers in which the task of the former is to follow the reference velocity, and the latter is to reduce the lateral displacement error from the reference path. Generally, a tuned controller is not sufficient to perform in all environments. Thus, a controller that can adapt to changing conditions is necessary for autonomous driving. Furthermore, these controllers often depend on vehicle models that also need to adapt over time due to varying environments. This paper uses graphs to present novel techniques to learn the vehicle model and the lateral controller online. First, a heterogeneous graph is presented depicting the current states of and inputs to the vehicle. The vehicle model is then learned online using known physical constraints in conjunction with the processing of the graph through a Graph Neural Network structure. Next, another heterogeneous graph - depicting the transition from current to desired states - is processed through another Graph Neural Network structure to generate the steering command on the fly. Finally, the performance of this self-learning model-based lateral controller is evaluated and shown to be satisfactory on an open-source autonomous driving platform called CARLA.

An Online Self-learning Graph-based Lateral Controller for Self-Driving Cars

Abstract

The hype around self-driving cars has been growing over the past years and has sparked much research. Several modules in self-driving cars are thoroughly investigated to ensure safety, comfort, and efficiency, among which the controller is crucial. The controller module can be categorized into longitudinal and lateral controllers in which the task of the former is to follow the reference velocity, and the latter is to reduce the lateral displacement error from the reference path. Generally, a tuned controller is not sufficient to perform in all environments. Thus, a controller that can adapt to changing conditions is necessary for autonomous driving. Furthermore, these controllers often depend on vehicle models that also need to adapt over time due to varying environments. This paper uses graphs to present novel techniques to learn the vehicle model and the lateral controller online. First, a heterogeneous graph is presented depicting the current states of and inputs to the vehicle. The vehicle model is then learned online using known physical constraints in conjunction with the processing of the graph through a Graph Neural Network structure. Next, another heterogeneous graph - depicting the transition from current to desired states - is processed through another Graph Neural Network structure to generate the steering command on the fly. Finally, the performance of this self-learning model-based lateral controller is evaluated and shown to be satisfactory on an open-source autonomous driving platform called CARLA.

Paper Structure

This paper contains 15 sections, 26 equations, 10 figures, 6 tables, 1 algorithm.

Figures (10)

  • Figure 1: Network architecture (graph-to-output, G2O) used in this work to map a graph -- defined by its features $Z$ and edge connections $E$ -- to output $\varphi$
  • Figure 2: The homogeneous graph has only one type of node (blue), and one type of edge (black), whereas, the heterogeneous graph has two types of nodes (blue and red), and two types of edges (black and red).
  • Figure 3: Dynamic vehicle bicycle model where the two axles are represented as single wheels
  • Figure 4: (a) Architecture of Graph Vehicle Model to estimate $\hat{X}_{k+1}$ online based on the error $e_{m}$ at each time step, and, (b) Graph-based Lateral Controller framework for online lateral control based on the error $e_{c}$ at each time step
  • Figure 5: Pre-training process of the controller
  • ...and 5 more figures