Perception as prediction using general value functions in autonomous driving applications

01/24/2020 ∙ by Daniel Graves, et al. ∙ HUAWEI Technologies Co., Ltd. University of Alberta 9

We propose and demonstrate a framework called perception as prediction for autonomous driving that uses general value functions (GVFs) to learn predictions. Perception as prediction learns data-driven predictions relating to the impact of actions on the agent's perception of the world. It also provides a data-driven approach to predict the impact of the anticipated behavior of other agents on the world without explicitly learning their policy or intentions. We demonstrate perception as prediction by learning to predict an agent's front safety and rear safety with GVFs, which encapsulate anticipation of the behavior of the vehicle in front and in the rear, respectively. The safety predictions are learned through random interactions in a simulated environment containing other agents. We show that these predictions can be used to produce similar control behavior to an LQR-based controller in an adaptive cruise control problem as well as provide advanced warning when the vehicle behind is approaching dangerously. The predictions are compact policy-based predictions that support prediction of the long term impact on safety when following a given policy. We analyze two controllers that use the learned predictions in a racing simulator to understand the value of the predictions and demonstrate their use in the real-world on a Clearpath Jackal robot and an autonomous vehicle platform.



There are no comments yet.


page 1

page 8

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

I Introduction

Understanding the world by learning predictions and using those predictions to act intelligently in the world is becoming an important topic of research, cf [16][13][6][7][5][10]. Modern theory of the brain shows that we are predictive machines that constantly try to match incoming sensory inputs with predictions [2]

. An important highlight of this work are that actions and sensory perception are intimately related suggesting that when building intelligent predictive machines, learning to make action-oriented predictions could be a valuable way for an machine to understand and interact with the world. The Horde framework embraces this idea of predicting sensorimotor signals

[16] using general value functions to learn and make action and policy dependent predictions where a robot is able to learn to predict quantities like time-to-stop and time-to-obstacle by exploring and interacting with its environment. This idea was extended to learn predictions at multiple time scales [10]. There have been a number of successful applications of general value functions (GVFs) including controlling a myoelectric robotic arm prosthesis [13] and controlling a laser welding robot from a camera [6].

Recently, action-conditioned predictions were learned and used to navigate a robot with a camera [7] improving upon a similar technique introduced in [5]

. They proposed supervised learning to learn to predict future event cues in the environment off-policy, such as through random exploration in the environment. They used existing detection methods to label the event cues. Our work distinguishes from composable action-conditioned predictors

[7] in several ways. Firstly, we learn to make predictions with temporal difference (TD) learning [17] instead of supervised learning. The advantage of learning policy-based predictions with TD is that they are easier to learn while a composable action-conditioned predictor must generalize to all possible action sequences and policies. In their work, an action sequence is needed to make long term predictions; however, in our work, the predictions are policy-based predictions that predict the accumulated value after executing the policy to completion. In [4]

, trajectories of other traffic actors are predicted using deep learning from an image. While a powerful approach, it can be difficult to learn in comparison to predicting safety with GVFs; we argue that predicting the trajectory of the traffic actors is not required. Instead, we advocate predicting the impact of an action taken by our agent on our safety without explicitly detecting and predicting the other traffic actors and their trajectories. That is the prediction of the other traffic actors is implicit by directly connecting the state of the environment and actions of our (ego) agent directly with the goal of evaluating and predicting our safety in a dynamic environment containing many traffic actors.

Control with GVFs though does not permit evaluating the safety of all possible policies; however, we hypothesize that making predictions about a small collection of policies can be a powerful way to control the vehicle. The reason is that we ignore action trajectories that are unrealistic or impossible to execute. As an example, a driver will not change the throttle, brake or steering very rapidly and thus most policies of interest are smooth; these policies embody the skills, or policies, that are available to our agent. We demonstrate in our experiments that there is one target policy that is very useful in the adaptive cruise control problem: ”what will happen if I keep doing what I’m doing?” The intuition behind this special target policy is that it provides a signal that a controller can use to adjust its action. We believe there are other useful policy-based predictions but we focus on learning and analyzing predictions with this target policy in this paper.

Ultimately, our goal is to bring action-oriented predictions to the autonomous vehicle that are expressive enough to be applied across many kinds of tasks including but not limited to (a) adaptive cruise control, (b) lane keeping, (c) lane change, (d) obstacle avoidance, (e) intersection navigation, and (f) parking. In this work, we focus on learning predictions that will be analyzed and demonstrated on the task of adaptive cruise control (ACC). The goal of ACC is to reduce rear-end collisions which account for nearly half of all vehicle crashes in the United States [1][19]. A number of ACC methods use predictive models, cf. [3][8][12][9], however the predictive models employed are next state predictions which impose significant computational burden since the model has to be iterated many times to search for action sequences that minimize a cost function. We desire long term predictions using temporal difference (TD) learning [16][10][17][18] that are computationally efficient to learn and make while being a useful signal for control.

One important question that arises is what is the best way to use these predictions? We highlight two possible controllers although we don’t make claims that they are better than existing controllers. Our desire is to demonstrate a new way to think about building autonomous vehicles that we hope is closer to the way we think humans drive a vehicle. In addition, we hope that this work highlights some early building blocks that could be combined with other predictions and traditional perception outputs to build a scalable predictive control platform for autonomous driving that helps abstract some of the complexities of the environment when building the controllers.

One of the important contributions of this work is showing that we can make GVF predictions in the presence of other agents. Previous works in general value functions [16], [13], [6], and [10] do not focus on multi agent prediction problems like autonomous driving. Because these predictions are learned from interactions in an environment with other agents, these predictions are potentially capable of understanding and implicitly predicting how other agents will act in the environment, and also react to our agent’s actions. For example, the safety predictions that we learn in this paper can learn to pick up cues in the behavior of the other agents in order to anticipate whether they will brake, and thereby reduce safety, or accelerate, and thereby increase safety. Embedding this expectation of how another agent will act into the prediction of safety could be important for adapting an autonomous vehicle’s behavior to different kinds of situations and drivers.

The contributions of this work are as follows:

  • Advocating and demonstrating that learning and using action-conditioned policy-based predictions with GVFs in autonomous driving could be useful in better understanding the world and how an agent can impacted it by its actions

  • Learning predictions in a multi-agent environment that includes an expectation of the behavior of other vehicles in the environment and their reaction to our vehicle’s behavior

  • Demonstrating action-conditioned policy-based predictions in adaptive cruise control and rear-end safety predictions

The rest of the paper is organized as follows: section II describes the proposed architecture, section III introduces the training algorithms used to learn the GVFs, and section IV details our experiments.

Ii Perception as Prediction in Autonomous Driving

A common approach to designing an autonomous vehicle is to build layers to abstract the decision making that happens in planning and controlling a vehicle, cf. [14][20]. At a high level shown in figure 1, the planning layers use the world model generated by perception tasks to decide on a route, choose behaviors such as when to change lanes and then plan a path in the world. This is then passed to a control layer that executes the plan produced by the planning layers including lateral (steering) and longitudinal control (throttle and brake).

Fig. 1: Classical autonomous driving architecture

We propose augmenting this architecture with action-oriented predictions as shown in figure 2.

Fig. 2: Perception as prediction autonomous driving architecture

The key difference is that this architecture makes predictions with both sensors and actuator signals similar to modern understanding of the brain discussed in [2]. This is an important distinction because it enables the autonomous agent to understand how the actions taken affect the sensor readings as well as the objects detected by a traditional perception pipeline. This information is very helpful in allowing an agent to understand what actions to take in order to achieve a variety of goals in the environment. What’s beautiful about this approach is that when we learn a prediction, the prediction can be independent of the task in the environment and therefore represents part of the agent’s knowledge of the world. Therefore this architecture enables the application of action-oriented predictions that can potentially be applied to multiple tasks in the environment such as slowing down to avoid a collision with a slower vehicle or engaging obstacle avoidance behavior by either conducting an in-lane or out-of-lane maneuver.

We propose using GVFs first introduced in [16] to realize perception as prediction in autonomous driving. We learn to predict our own speed, safety and safety of the vehicle behind us using GVFs and build two controllers using the predictions to understand the utility of these predictions: a fuzzy controller and a rule-based controller. We don’t use the safety of the vehicle behind us for control purposes since it is unclear how to exploit that information for control purposes but we show that it can, for example, be used as an advanced warning system. The predictions learned and demonstrated here can be combined with other predictions to achieve control solutions to more complex problems in autonomous driving.

Iii Methods

Iii-a Safety Cumulants

We start by defining safety; this is one of the important values we wish to predict with the GVF framework. We borrow from a classical definition of safety in autonomous driving and adaptive cruise control using the inter-vehicle distance model also called headway, cf. [9][11]. However, we extend this model to three dimensions to allow for use with high dimensional LIDAR sensors as well as low dimensional radar sensors. The safety function is the pseudo-reward signal (also called the cumulant in general value function literature) which the predictor must learn to predict. The safety cumulant function maps the current state at time to a ego safety score on the interval . There are two safety zones in our implementation: ego safety (or front safety) and rear safety. Front safety is a binary value defined by


where is the number of points returned by either LIDAR or radar sensors that are inside the front safety zone (or box) and is a minimum threshold. When using sensor fusion data to predict safety, if a vehicle is detected in the front safety zone by the fusion module and is otherwise . The width of the front safety zone is the width of the vehicle plus a safety margin and the height of the front safety zone is the height of the vehicle plus a safety margin for clearance. The length of the front safety zone is the headway to the vehicle in front and is proportional to the vehicle’s speed following the inter-vehicle distance model


where is the desired headway in seconds, is the stand-still distance, and is the current speed of the vehicle. For rear safety, we build a three dimensional safety zone for the rear vehicle and calculate where is the speed of the rear vehicle.

Iii-B Learning to Predict Safety with GVFs

General value functions [16][10] form the basis of our perception as prediction framework to learn action-conditioned predictions of future safety. Unlike [16] and [10], the predictions learned in this present work are action-conditioned predictions which are a function of state and action conditioned on policy ; we use TD() instead of GQ() to learn them. Thus, the predictive question we aim to answer is ”will I be safe if I take action and take similar actions thereafter?” This predictive question is a predictive model of the world that permits queries over a set of possible next actions where subsequent actions are assumed to be similar.

The goal is to learn an estimator that predicts the return of the cumulant

defined by


where is the continuation function and is the cumulant (pseudo-reward) sampled at time . The general value function is defined as


where , , and make up the predictive question [16]. Each GVF

is approximated with an artificial neural network parameterized by

denoted as .

Using non-linear function approximation introduces potential challenges in learning because there is no proof of convergence. In addition, off-policy learning where the target policy may be different from the behavior policy could be problematic with deep neural networks if importance sampling ratios are required.

The approach adopted here uses TD() [15] to learn the predictions using non-linear function approximation with an experience replay buffer. The loss for the general value function is given by


where the target is produced by bootstrapping a prediction of the value of the next state and action taken from the target policy given by


where is a bootstrap prediction using the most recent parameters but is ignored in the gradient descent. is the state distribution of the behavior policy and is the Markovian transition distribution over next state given state and action . The time subscript on and has been dropped to simplify notation. If the agent behaves with the same policy as the target policy such that then the approach is on-policy learning otherwise when the policies are different, it is off-policy. Note that this approach doesn’t correct for the state distribution because it still depends on the behavior policy . Both on-policy and off-policy approaches were tried but the behavior policy was constructed such that it was very similar to the target policy and thus no appreciable difference was noticed when learning on-policy or off-policy.

The gradient of the loss function (

5) is given by


where is the TD error. When the agent observes a state and chooses an action according to its behavior policy, it receives cumulant , continuation and observes next state and store this tuple in the replay buffer. If the behavior policy is , we also store the next action that the agent takes in the replay buffer otherwise we generate an action and store it in the replay buffer. The experience stored in the replay buffer is given by the tuple . When training the GVF, a mini-batch of samples, where is the size of the replay buffer, is sampled randomly to update the parameters . The updates can be either accomplished on-line, while collecting and storing experience in the replay buffer, or off-line.

1:Initialize replay memory to capacity
2:Initialize action-value function
3:Observe initial state
4:Sample first action
5:for t=0,T do
6:     Execute action and observe state
7:     Compute cumulant
8:     Compute continuation
9:     Sample target action
10:     Store transition in
11:     Sample random minibatch of transitions from
12:     Compute
13:     Perform gradient descent step on according to (7)
14:     Sample next action
Algorithm 1 GVF training algorithm

The training algorithm is described in detail in algorithm 1. The algorithm is general for predicting the return of any cumulant; in this work, we learn separate estimators: one for each cumulant of future front safety, rear safety, and speed. Predicting speed is accomplished with the current speed of the ego vehicle as the cumulant; the prediction is an average of future speeds of the vehicle across a defined temporal horizon. Our motivation for predicting speed was that it was found to be slightly non-linear with different gear ratios and the fuzzy controller architecture in particular benefited from having predictions of speed when choosing an action to maintain safety. The cumulants are scaled by a factor of to normalize them; this ensures the predicted safety is on the interval since the sum of an infinite geometric series of is if is constant.

Iii-C Predictive Control

In this section, we describe two very different controllers that are able to use the predictions of safety and speed to control the vehicle. Both a fuzzy controller design and a rule-based controller design are introduced. The objective in analyzing several controller designs in the simulator environment is to understand the utility of the predictions learned and ensure that the performance achieved was not in part due to a particular controller design. The action space is different between each platform that we tested on and so there are small differences between the controllers in TORCS, on the Clearpath Jackal robot and on the autonomous driving platform. These details will be discussed in the experimental section.

Iii-C1 Fuzzy Predictive Controller

A classical fuzzy reasoning architecture was developed to test the predictions learned in TORCS: a popular racing simulator. The controller selects an action given a collection of predictions about front safety and speed made by the GVFs. This architecture requires some tuning of the fuzzy sets to achieve the desired behavior. The controller aims to select actions that are front safe, close to target speed and comfortable. The architecture is depicted in figure 3.

Fig. 3: Fuzzy controller architecture

There are fuzzy sets defined for each objective: front safe, close to target speed and comfortable as depicted in figure 3. These are tuned manually to achieve the desired behavior. The controller uses the predictions as models of safety and speed by sweeping across a set of possible next actions given current state and producing predictions for each hypothetical action the agent could take. These set of predictions are converted into a membership value through the fuzzification step that represents how closely the prediction achieves the desired safety, target speed, and comfort levels, respectively. Comfort is defined as a fuzzy set over the action space emphasizing smaller throttle and brake actions as being more comfortable. These fuzzy sets are combined into a single goal fuzzy set using the product t-norm operator. The action was determined by calculating the centroid of the goal fuzzy set


where is a parameter that controls the greediness of the action selected. Increasing this parameter improves the responsiveness of the controller.

Iii-C2 Rule-based Predictive Controller

The second predictive controller is a rule-based design. Two different rule-based designs were used depending on the environment with the primary difference being how the action space is defined. For the first rule-based controller, the algorithm is given below.

1:procedure act(, )
2:     Predict future safety
3:     Predict future speed
4:     if  then
6:     else
9:     return
Algorithm 2 Rule-based Safety Controller with Speed

The parameter is the threshold that dictates when the controller starts to respond to unsafe situations. The controls the rate of deceleration when the controller is unsafe. Otherwise, the controller is a simple proportional controller that aims to achieve a target speed . The action space for this controller is typically throttle and brake.

A second rule-based controller was used when integrating the controller in both the robot and autonomous driving platform where there exists a control layer between adaptive cruise control module and the actuators. In this case, the adaptive cruise control module must supply a target speed to the control layer to execute the command.

1:procedure act(, )
2:     Predict future safety
3:     if  then
5:     else if  then
7:     else
9:     return
Algorithm 3 Rule-based Safety Controller without Speed

There are two safety threshold parameters for hysteresis such that ; whenever the prediction is between these two parameters, the action doesn’t change.

Iv Experiments

An analysis of the predictions and the control behavior of the controllers that use the predictions are provided in the TORCS environment under a number of different scenarios. After evaluation, the rule-based controller was selected for implementation on the Jackal robot and the autonomous vehicle platform since it performed similarly with the fuzzy controller and was simpler to tune. A two stage approach is used: (1) learn the predictors by following the predictor’s target policy and (2) use the predictors in autonomous driving applications (such as a warning system or adaptive cruise control).

Iv-a Training the Predictors

The target policy chosen was the normal distribution centered on the last action taken, i.e.


is a tunable parameter. This target policy represents the question ”what if I keep doing what I’m doing?” The behavior policy chosen was a Wiener process where the next action is the last action plus noise generated by a normal distribution centered on the last action taken and with standard deviation equal to

for our target policy. However, in order to facilitate exploration of the state and action space, the agent occasionally interrupts the Wiener process and chooses a random action according to uniform probability and then continues with the random walk. A large value of

is desirable to improve exploration of the state and action space but when choosing large , it can be challenging to learn longer term predictions since the actions are changing too rapidly.

We trained predictions for a number of different values including 0.95, 0.975 and 0.983 which correspond to approximately 1 second, 2 second and 3 second prediction horizons. When training the safety predictors, other vehicles are needed on the road in order to predict their impact on our safety. Therefore, the training terminates with upon collision with another vehicle. When training the speed predictor, we do not train with other vehicles on the road and so there is no termination condition.

Iv-B Analysis of TORCS Experiments

We experimented on a number of different scenarios but here we highlight the two most challenging high-speed scenarios: (a) emergency stop and (b) follow-and-stop. The target speed in both of these experiments was 100 km/h. In the first scenario the vehicle approaches a stopped vehicle and must stop quickly to avoid collision. In the second scenario the vehicle follows a slower vehicle going 80 km/h which then abruptly stops requiring the vehicle to react and slow down without a collision. The LQR baseline solution described in [11], called ACC/CA, was implemented in TORCs as a representative for the state of the industry. ACC/CA is a full-range adaptive cruise control system that aims to completely avoid rear-end collisions when vehicle-following in unsafe situations while driving comfortably during normal driving conditions. The system parameters are tuned by using real-driving data. We chose to compare to ACC/CA because of the additional driving control strategies for avoiding collisions in unsafe situations when safety becomes more important than comfort. The target safety parameters for all controllers were defined by a desired spacing of seconds, minimum stopping distance of meters and . The parameters of the controllers were tuned in order to achieve similar or better performance than the baseline. The objective was not to beat the baseline but to match its performance and show that the predictions can be used to control the vehicle.

The sensor data used to predict safety was the distance to the vehicle front, the change in the distance, the previous change in the distance, the speed of the ego vehicle, and percentage of throttle and brake. The speed predictor was only learned and used in TORCS and we used the current speed, the engine RPM, gear ratio and percentage of throttle and brake as inputs.

In the first set of experiments, the performance of the predictions is analyzed by comparing them with the safety signals being predicted. The ACC/CA baseline controller is used to drive the vehicle.

(a) Front safety predictions
(b) Back safety predictions
(c) Safety distances
(d) Front safety predictions
(e) Back safe predictions
(f) Safety distances
Fig. 4: Predicting front and rear safety with different values of without using the predictions for control. Top row (a)-(c) is from the emergency stop scenario and the bottom row (d)-(f) is from the follow-and-stop scenario.

The safe distances for front and rear are shown in figure 4(c) and (f) for reference. The safety GVFs predict both front and rear safety effectively and anticipate when the safety could change based on observations of the other agents. For example, in figure 4(b) where the back safety dips at around s, the vehicle is slowing down very quickly while the vehicle behind is not reacting fast enough. Once the vehicle behind starts to decelerate sufficiently, the predictions jump back up again predicting that the vehicle is safe from a rear-end collision. The predictive performance is relatively good for all values of . predicts longer term in some cases. For example in figure 4(b), the vehicle starts from a standstill and accelerates with the rear vehicle accelerating quickly behind it resulting in being temporarily unsafe. Yet the GVF at predicting higher values than the other predictors likely because it was predicting longer term into the future.

(a) Safe front distance in emergency stop scenario
(b) Safe front distance in follow-and-stop scenario
(c) Deceleration in follow-and-stop scenario
Fig. 5: Plots of the deceleration regions of the two scenarios for all values of and the two GVF-based controllers are given in plots (a)-(c). (a) The safe front distance is plotted for the emergency stop scenario starting at 100 km/h. (b) Safe front distance is plotted in the follow-and-stop scenario. (c) Deceleration in the follow-and-stop scenario.

In figure 5, the safety distances and acceleration profile is plotted when using the GVF predictions to control the vehicle. The rule-based and fuzzy-based controllers perform similarly which suggests the predictions learned are useful for the chosen controllers. The behaviors are not vastly different from the ACC/CA controller which acted as our target baseline. Our goal was to achieve similar or better performance to ACC/CA to demonstrate that controlling a vehicle with GVF predictions is a viable approach. From figure 5(b), the GVF-based controllers appear to optimize the safety rather well and in particular the controllers using tend to keep the vehicle safer during deceleration possibly because of being longer-term predictions. In fact, in most of our experiments, the GVF-based controllers did not cross the safety distance threshold. It is worth pointing out that sometimes the actual safety did not change despite the predictions changing such as in figure 5(b); this behavior is due to the ego vehicle stopping quickly while the vehicle behind did not initially apply the brake enough; however, this was eventually rectified to prevent an unsafe situation. This is also why the longer term prediction has a smaller value initially. It is also noted that while weights the future samples more heavily in the prediction, it is harder to learn with TD learning where larger values of can lead to instability in training.

In terms of computational complexity, the GVF-based approach with the fuzzy controller required only 21 predictions of front safety to determine a suitable next action. The reason is because the predictions are policy-based rather than action trajectory-based which otherwise would have required a significantly larger search space over all possible action sequences. We trained an MPC with a non-linear model (not shown here for lack of space) and roughly 3000 predictions were required per time step with an action sequence depth of 5 to achieve similar performance as the proposed approach. We also note that training a non-linear model was difficult in comparison to the GVF approach but the performance was similar. We therefore argue that policy-based predictions are a viable way achieve predictive control while keeping computational requirements low. In addition, the rule-based controller did not require an action search because it relied on the specific choice of target policy to make a policy-based prediction which was used as an error signal in a proportional controller to change the action in the correct direction.

Iv-C Demonstrating in the Real-World

We then trained front safety predictions using a deep convolutional neural network in Gazebo to test on a real-world Clearpath Jackal robot. In the training environment, randomly shaped geometric objects were generated in the scene to help with sim-to-real transfer to the real-world as shown in figure


Fig. 6: Gazebo training environment for the Jackal robot. This figure shows the ego vehicle and two social vehicles. The ego vehicle is a simulated Jackal robot with a laser range finder and its sensor readers are used for offline training. We also spawn several additional Jackal robots for social vehicles. The social vehicles have a white cube on them so that the ego vehicle’s laser scan can detect them. The simulated Jackals all do a random walk of their linear velocity. Randomly shaped geometric objects are also spawned in the scene to help improve sim-to-real transfer performance.

We then tested the predictors on the ClearPath Jackal robot. The robot has a Hokuyo UTM 30LX laser range finder which produces 1040 distance measurements in a 260 arc in front of the robot. A 5MP front facing color camera was used to follow blue tape for lateral steering control while the rule-based controller in algorithm 3

was used for longitudinal control. The state vector

of the Jackal robot consisted of a history of three LIDAR measurements (each of 1040 points) and current speed . We used a deep neural network with 6 convolutional layers and 2 fully connected layers to predict safety from the LIDAR measurements. The safety parameters seconds and meters were used since the robot can stop fairly quickly. These parameters were chosen because the robot is able to stop very quickly.

The safety predictors were tested on a real robot where we tried several different situations: (a) following a human with varying walking speeds along a pre-defined path, (b) approaching a stationary obstacle, and (c) reacting to a person walking in front of the robot suddenly. In all cases, the robot was able to stop without collision. There was some difficulty with interference from strong reflections off some objects in the test area. This was relatively easy to detect and filter out by replacing measurements less than the minimum range of the sensor with an average range value across the entire measurement.

We also trained front safety predictors in the Webots simulator environment for deploying on an autonomous vehicle in a controlled environment rather than on public roads. The objects detected in the scene were supplied as input to the neural network which included the distance and speed of the vehicle in front and in the same lane. We tested the rule-based controller using the predictors and discovered a mismatch between the behavior of the underlying controller that controlled the target speed in simulator and on the vehicle. The controller on the autonomous vehicle responded slowly which initially created challenges in tuning the proportional controller. A derivative term was added and this stabilized the control for a comfortable ride. An emergency brake test was performed where both virtual and real objects were placed in the scene of the vehicle requiring it to stop immediately. The tests showed that the vehicle was still able to respond safely in situations that required emergency braking. Finally, we proceeded to test the vehicle in a large circular road where the vehicle had to stop for pedestrians and other vehicles. The performance was often comfortable and the speed control usually felt human-like.

V Conclusions

In this work, a perception as prediction framework for autonomous driving using GVFs is presented where we focus on predicting safety several seconds into the future. The predictions learned were both action-oriented and policy-based and it was demonstrated with two different controllers that one could use the predictions to efficiently and safely control a vehicle in the presence of other vehicles and objects. Based on our experiments, action-oriented safety predictions could be very useful in passive alert systems or in controlling a vehicle. We believe the safety predictions learned could form the basic building blocks in constructing a more comprehensive control platform in autonomous driving that would rely on learned predictors that better understand how the vehicle’s actions and the actions of others can change the environment perceived by the agent’s sensors. We argue that training an agent to understand how actions impact sensory inputs is an important component in controlling an autonomous vehicle. In fact, this idea is not new. Model predictive control uses a model that informs the agent how its actions will impact the environment and enables it to find an action trajectory that minimizes a cost function. The difference is that the GVF predictions are an alternative way to learn and view predictions; one benefit is that they are efficient to use as one prediction is made to describe the final outcome of following a given policy rather than making a sequence of state predictions to evaluate an action.

Finally, we were able to demonstrate that safety predictors learned in simulation can be transferred to a real-world robot and autonomous driving platform to assist in navigating the world safely. In the future, we plan to extend this work to include safety predictions in multi-lane highways. If a GVF predictor can predict safety where there are multiple vehicles in multiple lanes, then perhaps the GVF predictor can implicitly understand what a lane is and identify what cues to look for when predicting when a vehicle will change lanes and thereby impact our safety. In addition, we hope to extend this work to learn predictions off-policy from real-world driving behaviors since the distribution of policies of other agents is hard to model in simulator and better learned from real-world data.


  • [1] N. T. S. Board (2015) The use of forward collision avoidance systems to prevent and mitigate rear-end crashes. Technical report Technical Report NTSB/SIR-15/01, National Transportation Safety Board. Cited by: §I.
  • [2] A. Clark (2013) Whatever next? predictive brains, situated agents, and the future of cognitive science. Behavioral and Brain Science 36 (3), pp. 181–204. External Links: Document Cited by: §I, §II.
  • [3] D. Corona and B. D. Schutter (2008-03) Adaptive cruise control for a smart car: a comparison benchmark for mpc-pwa control methods. IEEE Transactions on Control Systems Technology 16 (2), pp. 365–372. External Links: Document, ISSN 1063-6536 Cited by: §I.
  • [4] N. Djuric, V. Radosavljevic, H. Cui, T. Nguyen, F. Chou, T. Lin, and J. Schneider (2018) Short-term motion prediction of traffic actors for autonomous driving using deep convolutional networks. CoRR abs/1808.05819. External Links: Link, 1808.05819 Cited by: §I.
  • [5] A. Dosovitskiy and V. Koltun (2016) Learning to act by predicting the future. CoRR abs/1611.01779. External Links: Link, 1611.01779 Cited by: §I, §I.
  • [6] J. Günther, P. M. Pilarski, G. Helfrich, H. Shen, and K. Diepold (2016)

    Intelligent laser welding through representation, prediction, and control learning: an architecture with deep neural networks and reinforcement learning

    Mechatronics 34, pp. 1 – 11. Note: System-Integrated Intelligence: New Challenges for Product and Production Engineering External Links: ISSN 0957-4158, Document, Link Cited by: §I, §I.
  • [7] G. Kahn, A. Villaflor, P. Abbeel, and S. Levine (2018) Composable action-conditioned predictors: flexible off-policy learning for robot navigation. CoRR abs/1810.07167. External Links: Link, 1810.07167 Cited by: §I, §I.
  • [8] S. Li, K. Li, R. Rajamani, and J. Wang (2011-05) Model predictive multi-objective vehicular adaptive cruise control. IEEE Transactions on Control Systems Technology 19 (3), pp. 556–566. External Links: Document, ISSN 1063-6536 Cited by: §I.
  • [9] S. Magdici and M. Althoff (2017) Adaptive cruise control with safety guarantees for autonomous vehicles. IFAC-PapersOnLine 50 (1), pp. 5774 – 5781. Note: 20th IFAC World Congress External Links: ISSN 2405-8963, Document, Link Cited by: §I, §III-A.
  • [10] J. Modayil, A. White, and R. S. Sutton (2012) Multi-timescale nexting in a reinforcement learning robot. In From Animals to Animats 12, T. Ziemke, C. Balkenius, and J. Hallam (Eds.), Berlin, Heidelberg, pp. 299–309. External Links: ISBN 978-3-642-33093-3 Cited by: §I, §I, §I, §III-B.
  • [11] S. Moon, I. Moon, and K. Yi (2009) Design, tuning, and evaluation of a full-range adaptive cruise control system with collision avoidance. Control Engineering Practice 17 (4), pp. 442 – 455. External Links: ISSN 0967-0661, Document, Link Cited by: §III-A, §IV-B.
  • [12] G.J.L. Naus, J. Ploeg, M.J.G. V. de Molengraft, W.P.M.H. Heemels, and M. Steinbuch (2010) Design and implementation of parameterized adaptive cruise control: an explicit model predictive control approach. Control Engineering Practice 18 (8), pp. 882 – 892. External Links: ISSN 0967-0661, Document, Link Cited by: §I.
  • [13] P. M. Pilarski, M. R. Dawson, T. Degris, F. Fahimi, J. P. Carey, and R. S. Sutton (2011-06) Online human training of a myoelectric prosthesis controller via actor-critic reinforcement learning. In 2011 IEEE International Conference on Rehabilitation Robotics, Vol. , pp. 1–7. External Links: Document, ISSN 1945-7901 Cited by: §I, §I.
  • [14] A. C. Serban, E. Poll, and J. Visser (2018-04) A standard driven software architecture for fully autonomous vehicles. In 2018 IEEE International Conference on Software Architecture Companion (ICSA-C), Vol. , pp. 120–127. External Links: Document, ISSN Cited by: §II.
  • [15] R. S. Sutton and A. G. Barto (1998) Introduction to reinforcement learning. 1st edition, MIT Press, Cambridge, MA, USA. External Links: ISBN 0262193981 Cited by: §III-B.
  • [16] R. S. Sutton, J. Modayil, M. Delp, T. Degris, P. M. Pilarski, A. White, and D. Precup (2011) Horde: a scalable real-time architecture for learning knowledge from unsupervised sensorimotor interaction. In The 10th International Conference on Autonomous Agents and Multiagent Systems - Volume 2, AAMAS ’11, Richland, SC, pp. 761–768. External Links: ISBN 0-9826571-6-1, 978-0-9826571-6-4, Link Cited by: §I, §I, §I, §II, §III-B, §III-B.
  • [17] R. S. Sutton (1988-08-01) Learning to predict by the methods of temporal differences. Machine Learning 3 (1), pp. 9–44. External Links: ISSN 1573-0565, Document, Link Cited by: §I, §I.
  • [18] A. White (2015) Developing a predictive approach to knowledge. Ph.D. Thesis, University of Alberta. Cited by: §I.
  • [19] L. Xiao and F. Gao (2010-10) A comprehensive review of the development of adaptive cruise control systems. Vehicle System Dynamics, International Journal of Vehicle Mechanics and Mobility 48, pp. 1167–1192. External Links: Document Cited by: §I.
  • [20] W. Zong, C. Zhang, Z. Wang, J. Zhu, and Q. Chen (2018) Architecture design and implementation of an autonomous vehicle. IEEE Access 6 (), pp. 21956–21970. External Links: Document, ISSN 2169-3536 Cited by: §II.