Contingencies from Observations:

Tractable Contingency Planning with Learned Behavior Models

Nicholas Rhinehart*, Jeff He*, Charles Packer, Matthew A. Wright, Rowan McAllister, Joseph E. Gonzalez, Sergey Levine

UC Berkeley

International Conference on Robotics and Automation (ICRA), 2021

Main ideas

  • Many real-world planning settings require planning to both influence and react to future events; action-space planning (also known as MPC) in these settings is insufficient

  • Prior work either uses hand-crafted models of behavior for contingency planning, or learned models of behavior for noncontingent planning

  • We learn an image-conditioned autoregressive flow model of interactive multi-agent behavior that can be used to perform contingency planning in autonomous driving scenarios. The model is trained by predicting future trajectories

  • Our evaluation includes a set of benchmark scenarios that cannot be solved by action-space planning -- either a policy or a contingency planner is needed to perform well on the tasks.

  • The evaluation shows that our single model can perform multiple contingency planning tasks in previously-unseen locations, and outperforms various noncontingent planning methods

Method flowchart

A behavioral model is trained to forecast multi-agent trajectories conditioned on high-dimensional scene observations, and is used during deployment to construct a contingency planner. The contingency planner receives goals from an outer navigator, as well as high-dimensional observations from the environment. The contingency planner plans a policy, which predicts the immediate next target position. This next position is passed to a P-controller to produce the necessary action.

Code

  • github link, which contains:

    • CfO trained models and training code

    • Contingency Planning benchmark scenarios

    • Adapted MFP baseline code


Decision tree of Left-turn Scenarios

This tree summarizes the decision process of our left-turn scenarios

Abstract

Humans have a remarkable ability to make decisions by accurately reasoning about future events, including the future behaviors and states of mind of other agents. Consider driving a car through a busy intersection: it is necessary to reason about the physics of the vehicle, the intentions of other drivers, and their beliefs about your own intentions. If you signal a turn, another driver might yield to you, or if you enter the passing lane, another driver might decelerate to give you room to merge in front. Competent drivers must plan how they can safely react to a variety of potential future behaviors of other agents before they make their next move. This requires contingency planning: explicitly planning a set of conditional actions that depend on the stochastic outcome of future events. Contingency planning outputs a policy that is a function of future timesteps and observations, whereas standard model predictive control-based planning outputs a sequence of future actions, which is equivalent to a policy that is only a function of future timesteps. In this work, we develop a general-purpose contingency planner that is learned end-to-end using high-dimensional scene observations and low-dimensional behavioral observations. We use a conditional autoregressive flow model to create a compact contingency planning space, and show how this model can tractably learn contingencies from behavioral observations. We developed a closed-loop control benchmark of realistic multi-agent scenarios in a driving simulator (CARLA), on which we compare our method to various noncontingent methods that reason about multi-agent future behavior, including several state-of-the-art deep learning-based planning approaches. We illustrate that these noncontingent planning methods fundamentally fail on this benchmark, and find that our deep contingency planning method achieves significantly superior performance.

Left-Turn Scenarios

The robot tries to turn. At (1), robot decides if to enter the intersection as turning signal to human. At (2), robot decides if to aggressively turn or wait. At (3), if robot previously entered the intersection, human may or may not yield. Again at (2), if robot is waiting, it decides when to turn based on if human yielded. At (4), if robot turned aggressively and human didn’t yield, a near-collision occurs.

cfo_left.mp4

Example contingent plans

Examples of contingent plans in the left turn and overtake task. Each row corresponds to a contingent plan -- a single z (base space) sequence -- and yields different joint trajectories when forward-simulated by the model with an accompanying sample of the human z sequence. Blue denotes the forecasted robot trajectory; orange denotes the forecasted human trajectory.

Overtaking Scenarios

The robot tries to overtake the human-driven vehicle. At (1), robot decides if to enter the left lane. At (2), robot decides if to overtake aggressively. At (3), human decides if to yield. Again at (2), if robot wasn't aggressive, it decides if to overtake. At (4), if robot was aggressive and human didn’t yield, a near-collision occurs.

cfo_overtake.mp4

Right-Turn Scenarios

The robot tries to turn. At (1), robot decides if to enter the intersection as turning signal to human. At (2), robot decides if to aggressively turn or wait. At (3), if robot previously entered the intersection, human may or may not yield. Again at (2), if robot is waiting, it decides when to turn based on if human yielded. At (4), if robot turned aggressively and human didn’t yield, a near-collision occurs.

cfo_right.mp4

Contingent planning with learned model on one instance of left-turn scenario

Contingent Planner Outcome 1

left_contingent_1.mp4

Contingent Planner Outcome 2

left_contingent_2.mp4

Noncontingent planning with learned model on one instance of left-turn scenario

Underconfident Planner

left_underconfident.mp4

Overconfident Planner

left_overconfident.mp4

Contingent planning with learned model on one instance of overtaking scenario

Contingent Planner Outcome 1

overtake_contingent_1.mp4

Contingent Planner Outcome 2

overtake_contingent_2.mp4

Noncontingent planning with learned model on one instance of highway-driving scenario

Underconfident Planner

overtake_underconfident.mp4

Overconfident Planner

overtake_overconfident.mp4

Contingent planning with learned model on one instance of right-turn scenario

Contingent Planner Outcome 1

right_contingent_1.mp4

Contingent Planner Outcome 2

right_contingent_2.mp4

Noncontingent planning with learned model on one instance of right-turn scenario

Underconfident Planner

right_underconfident.mp4

Overconfident Planner

right_overconfident.mp4

Bibtex:

@inproceedings{rhinehart2021contingencies,
title={Contingencies from Observations: Tractable Contingency Planning with Learned Behavior Models},
author={Nicholas Rhinehart and Jeff He and Charles Packer and Matthew A. Wright and Rowan McAllister and Joseph E. Gonzalez and Sergey Levine},
booktitle={International Conference on Robotics and Automation (ICRA)},
organization={IEEE},
year={2021},
}