# Evolving the Controller of Automated Steering of a Car in Slippery Road Conditions
## 1 Introduction  
Since the 1930s, the authors of science fiction books have envisioned the advent of self-driving cars, and constructing such cars has been a challenge for the Artificial Intelligence (AI) community since the 1960s [1]. Nowadays, the advances of sensing (e.g., computer vision, laser and microwave ranging, etc. ), mapping, networking, and machine learning have facilitated the rapid growth of research and prototyping of semi-autonomous and autonomous vehicles [2]. However, most of the implemented solutions so far seldom assume an unconditional and complete autonomy of the vehicle. Moreover, the currently available--up to level 3 (of the six levels, 0-5) of autonomous driving, as defined in 2014 by the Society of Automotive Engineers--industrial applications of semi-autonomous vehicles require that the drivers keep their hands on the steering wheel all the time during the operation of the \"auto-pilot\" [3]. Indeed, in a case of an unforeseen traffic situation or road condition, the control might have to be transferred to the presumably more dependable human driver [4]. We believe that the automation should abstain from unconditionally coding the control of the car to the human driver, especially in heavy traffic situations or in challenging (such as, for example, slippery) road conditions due to the major drawback of this transfer: the reduced cognitive load of the (passive) human driver might result in a rough transition of control between the automation and the human [5]. In such situations, the behavior of the human might be either inadequate or too slow as they might be subjected to a sharp increase of their cognitive load and the psychological stress of dealing with the suddenly arising, challenging traffic situation (e.g., a suddenly appearing obstacle in front of the car in dense multi-lane traffic). In addition, the human driver might be underqualified to control the car in challenging road conditions (e.g., retaining control of an oversteering car on a slippery road). The recent traffic accidents--some of them fatal--involving autonomous cars drew attentionto the problem of the cognitive conditions required of human drivers to allow them to serve as a dependable backup for the potentially imperfect automation [6; 7; 8]. Nevertheless, autonomous vehicles are expected to outperform human drivers in terms of improved overall safety of road traffic, and to result in a decrease of the total number of accidents caused by a slow or inadequate response of a human driver due to fatigue, inattention, and a lack of experience or qualification in dealing with extreme traffic situations and road conditions [3]. The task of automated driving can be decomposed into the following subtasks: (i) defining the desired trajectory (driving line) and the desired pattern of speed along this trajectory, (ii) keeping the actual trajectory of the car as close as possible to the desired one, and (iii) maintaining the actual speed of the car along this trajectory as close as possible to the desired one [9; 10]. We considered the first and third subtasks to be beyond the scope of our current work; instead, we focused on the second one--in challenging, slippery road conditions--which could be solved by an appropriate steering of the car. Currently, the canonical servo-control of steering [11]--which, as we will elaborate later, could be seen as an example of a proportional-derivative (PD) controller--is adopted as a formal model of the steering angle function (SAF): the function that continuously decides the current steering angle of the front (steering) wheels depending on both the lateral and angular deviation of the car from its intended trajectory. The model continuously attempts to minimize the values of these two deviations (i.e., the errors) by setting the steering angle to such a value that would result in both a prompt and stable (non-oscillatory) return of the car to its desired trajectory.