IP Library › Granted Patent US 10,671,076
Granted Patent B1
US 10,671,076 · App. 15/833,715 · Granted Jun 2, 2020

Trajectory prediction of third-party objects using temporal logic and tree search

Inventors: Marin Kobilarov (Mountain View, CA); Timothy Caldwell (Mountain View, CA); Vasumathi Raman (San Francisco, CA); Christopher Paxton (Mountain View, CA)
Assignee: Zoox, Inc.
G05D1/0214G05D1/0088G05D1/0246G05D1/0255G05D1/0257G05D1/0274
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,671,076
App. No.
15/833,715
Filed
Dec 6, 2017
Granted
Jun 2, 2020
Kind
B1
Art Unit
3669
USPC
701/24
Abstract

Techniques for generating trajectories for autonomous vehicles and for predicting trajectories for third-party objects using temporal logic and tree search are described herein. Perception data about an environment can be captured to determine static objects and dynamic objects. For a particular dynamic object, which can represent a third-party vehicle, predictive trajectories can be generated to represent possible trajectories based on available options and rules of the road. Operations can include determining probabilities that a third-party vehicle will execute a predictive trajectory and updating the probabilities over time as motion data is captured. Predictive trajectories can be provided to the autonomous vehicle and commands for the autonomous vehicle can be based on the predictive trajectories. Further, determining a trajectory can include utilizing a Monte Carlo Tree Search (MCTS) to search for possible trajectories, while using Linear Temporal Logic (LTL) formulas to validate or reject the possible trajectories.

Claims (70)

1. A system of an autonomous vehicle, the system comprising:

one or more processors; and

one or more computer readable storage media communicatively coupled to the one or more processors and storing instructions that are executable by the one or more processors to:

receive sensor data from one or more of a LIDAR sensor, a RADAR sensor, or a camera sensor;

determine, based at least in part on the sensor data, one or more dynamic symbols, a dynamic symbol of the one or more dynamic symbols representing a third-party object that is not under control of the autonomous vehicle;

determine, based at least in part on the sensor data, motion data associated with the one or more dynamic symbols, the motion data including at least a position, an orientation, and a velocity associated with a dynamic symbol of the one or more dynamic symbols;

determine, based at least in part on the one or more dynamic symbols and one or more static symbols, one or more predictive trajectories navigable by the third-party object, wherein the one or more dynamic symbols and the one or more static symbols represent temporal logic features;

determine, based at least in part on the motion data, an outcome probability associated with a predictive trajectory of the one or more predictive trajectories;

select, as a selected predictive trajectory, the predictive trajectory based at least in part on the outcome probability; and

provide the selected predictive trajectory to a decision planner of the autonomous vehicle.

2. The system of claim 1 , the instructions further executable by the one or more processors to:

determine one or more predicates based at least in part on the one or more dynamic symbols and one or more static symbols;

determine one or more temporal logic (TL) formulas based at least in part on the one or more predicates, the one or more dynamic symbols, and the one or more static symbols; and

evaluate the one or more predictive trajectories with respect to the one or more TL formulas.

3. The system of claim 1 , the instructions further executable by the one or more processors to:

determine one or more temporal logic features based at least in part on the one or more dynamic symbols; and

evaluate the one or more temporal logic features based at least in part on the one or more dynamic symbols to determine a numerical value associated with the one or more dynamic symbols.

4. The system of claim 1 , the instructions further executable by the one or more processors to determine a policy associated with the one or more dynamic symbols based at least in part on the motion data over a time period, wherein the policy describes, at least in part, an expected behavior of the one or more dynamic symbols.

5. The system of claim 1 , the instructions further executable by the one or more processors to receive the one or more static symbols from a perception system of the autonomous vehicle or from map data stored in the autonomous vehicle.

6. The system of claim 1 , wherein the outcome probability is based at least in part on a log-likelihood algorithm.

7. The system of claim 1 , wherein the motion data corresponds to a first time, and wherein the instructions are further executable by the one or more processors to determine one or more of a predicted position or a predicted velocity based at least in part on extrapolating the motion data to a second time, the second time subsequent to the first time.

8. The system of claim 1 , the instructions further executable by the one or more processors to:

determine a command trajectory of the autonomous vehicle based at least in part on the selected predictive trajectory provided to the decision planner; and

command the autonomous vehicle based at least in part on the command trajectory.

9. A method comprising:

selecting a dynamic symbol as a subject symbol for prediction, wherein the dynamic symbol represents a temporal logic feature;

determining one or more symbols associated with the subject symbol;

determining one or more predictive trajectories associated with predictive motion of the subject symbol based at least in part on the one or more symbols and the subject symbol;

determining an outcome probability associated with a predictive trajectory of the one or more predictive trajectories;

providing the predictive trajectory to a decision planner of an autonomous vehicle, the predictive trajectory provided based at least in part on the outcome probability associated with the predictive trajectory;

determining a command trajectory of the autonomous vehicle based at least in part on the predictive trajectory provided to the decision planner; and

commanding the autonomous vehicle based at least in part on the command traj ectory.

10. The method of claim 9 , further comprising:

determining one or more predicates based at least in part on the subject symbol and the one or more symbols;

determining one or more temporal logic (TL) formulas based at least in part on the one or more predicates, the subject symbol, and the one or more symbols; and

determining whether the one or more predictive trajectories violate an individual TL formula of the one or more TL formulas.

11. The method of claim 9 , further comprising:

determining one or more temporal logic features based at least in part on the subject symbol; and

evaluating the one or more temporal logic features based at least in part on the dynamic symbol to determine a numerical value associated with the subject symbol.

12. The method of claim 9 , further comprising:

receiving sensor data from one or more of a LIDAR sensor, a RADAR sensor, or a camera sensor;

determining, based at least in part on the sensor data, motion data associated with the subject symbol, the motion data including at least a position, an orientation, and a velocity associated with the subject symbol; and

determining a policy associated with the subject symbol based at least in part on the motion data over a time period, wherein the policy describes, at least in part, an expected behavior of the subject symbol.

13. The method of claim 9 , further comprising receiving the one or more symbols from a perception system of the autonomous vehicle or from map data stored in the autonomous vehicle.

14. The method of claim 9 , further comprising determining the outcome probability based at least in part on a log-likelihood algorithm.

15. The method of claim 9 , further comprising:

receiving sensor data from one or more of a LIDAR sensor, a RADAR sensor, or a camera sensor;

determining, based at least in part on the sensor data, motion data associated with the subject symbol, the motion data including at least a position, an orientation, and a velocity associated with the dynamic symbol at a first time; and

determining one or more of a predicted position or a predicted velocity associated with the subject symbol based at least in part on extrapolating the motion data to a second time, the second time subsequent to the first time.

16. A non-transitory computer-readable medium storing instructions that, when executed, cause one or more processors to perform operations comprising:

receiving sensor data from one or more sensors of an autonomous vehicle, the sensor data including at least one of LIDAR sensor data, RADAR sensor data, acoustic sensor data, or image sensor data;

determining, based at least in part on the sensor data, one or more dynamic symbols proximate to the autonomous vehicle, wherein the one or more dynamic symbols represent temporal logic features;

selecting a dynamic symbol of the one or more dynamic symbols as a subject symbol for prediction;

determining one or more symbols associated with the subject symbol;

determining one or more predictive trajectories associated with predictive motion of the subject symbol based at least in part on the one or more symbols and the subject symbol;

determining an outcome probability associated with a predictive trajectory of the one or more predictive trajectories; and

providing the predictive trajectory to a decision planner of the autonomous vehicle, the predictive trajectory provided based at least in part on the outcome probability associated with the predictive trajectory; and

controlling the autonomous vehicle based at least in part on the predictive trajectory.

17. The non-transitory computer-readable medium of claim 16 , wherein controlling the autonomous vehicle further comprises:

determining a command trajectory of the autonomous vehicle based at least in part on the predictive trajectory provided to the decision planner; and

commanding the autonomous vehicle based at least in part on the command trajectory.

18. The non-transitory computer-readable medium of claim 16 , the operations further comprising:

determining one or more predicates based at least in part on the one or more dynamic symbols and the one or more symbols;

determining one or more temporal logic (TL) formulas based at least in part on the one or more predicates, the one or more dynamic symbols, and the one or more symbols; and

determining whether the one or more predictive trajectories violate an individual TL formula of the one or more TL formulas.

19. The non-transitory computer-readable medium of claim 16 , the operations further comprising determining the outcome probability based at least in part on a log-likelihood algorithm.

20. The non-transitory computer-readable medium of claim 16 , the operations further comprising:

receiving sensor data from one or more of a LIDAR sensor, a RADAR sensor, or a camera sensor;

determining, based at least in part on the sensor data, motion data associated with the dynamic symbol, the motion data including at least a position, an orientation, and a velocity associated with the dynamic symbol at a first time; and

determining one or more of a predicted position or a predicted velocity associated with the dynamic symbol based at least in part on extrapolating the motion data to a second time, the second time subsequent to the first time.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 29, 2018
From: KOBILAROV, MARIN; CALDWELL, TIMOTHY; RAMAN, VASUMATHI; PAXTON, CHRISTOPHER
To: ZOOX, INC.
Reel/Frame 045181/0380 →
Continuity (2)
Provisional Application 62465724 · Mar 1, 2017
Provisional Application 62524397 · Jun 23, 2017
Cited By (38)
US 12,187,269 US 12,187,321 US 12,217,515 US 12,240,494 US 12,276,983 US 12,296,845 US 12,296,849 US 12,311,972 US 12,319,313 US 12,325,423 US 12,333,043 US 12,339,658 US 12,353,979 US 12,358,528 US 12,365,332 US 12,371,025 US 12,371,067 US 12,384,031 US 12,384,410 US 12,394,311 US 12,428,032 US 12,434,739 US 12,441,364 US 12,459,509 US 12,485,909 US 12,485,923 US 12,515,678 US 12,528,513 US 12,534,059 US 12,555,043 US 12,559,132 US 12,559,143 US 12,583,107 US 12,594,961 US 12,600,384 US 12,606,166 US 12,654,748 US 12,717,329