IP Library Granted Patent US 12,187,321
Granted Patent B2
US 12,187,321 · App. 18/075,068 · Granted Jan 7, 2025

Autonomous vehicle operation using linear temporal logic

Inventor: Tichakorn Wongpiromsarn (Singapore, SG)
Assignee: Motional AD LLC
B60W60/0025G01C21/3407G08G1/166G08G1/20B60W2552/00
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 12,187,321
App. No.
18/075,068
Granted
Jan 7, 2025
Kind
B2
Abstract

Techniques are provided for autonomous vehicle operation using linear temporal logic. The techniques include using one or more processors of a vehicle to store a linear temporal logic expression defining an operating constraint for operating the vehicle. The vehicle is located at a first spatiotemporal location. The one or more processors are used to receive a second spatiotemporal location for the vehicle. The one or more processors are used to identify a motion segment for operating the vehicle from the first spatiotemporal location to the second spatiotemporal location. The one or more processors are used to determine a value of the linear temporal logic expression based on the motion segment. The one or more processors are used to generate an operational metric for operating the vehicle in accordance with the motion segment based on the determined value of the linear temporal logic expression.

Claims (46)

1. A method comprising:

storing, using one or more processors of a vehicle, a Kripke structure representing a motion segment for operating the vehicle, wherein the motion segment comprises a plurality of spatiotemporal locations;

for each spatiotemporal location of the plurality of spatiotemporal locations:

evaluating, using the one or more processors, a linear temporal logic expression based on the Kripke structure, wherein the linear temporal logic expression defines an operating constraint for operating the vehicle in accordance with the motion segment;

responsive to a value of the linear temporal logic expression changing at the spatiotemporal location, inserting, using the one or more processors, a location marker within the Kripke structure at the spatiotemporal location to divide the motion segment into two different motion segments;

assigning, using the one or more processors, an operational metric to each motion segment of the two different motion segments based on the location marker;

determining, using the one or more processors, a trajectory for operating the vehicle based on the operational metric; and

causing, using a control module of the vehicle, the vehicle to operate in accordance with the determined trajectory.

2. The method of claim 1 , wherein the operational metric across the trajectory is minimized.

3. The method of claim 1 , wherein the linear temporal logic expression comprises one or more linear temporal logic propositions.

4. The method of claim 3 , wherein a first linear temporal logic proposition of the one or more linear temporal logic propositions corresponds to whether the vehicle is located within an intersection.

5. The method of claim 4 , wherein a second linear temporal logic proposition of the one or more linear temporal logic propositions corresponds to a lane in which the vehicle is operating.

6. The method of claim 5 , wherein the value of the linear temporal logic expression corresponds to whether the vehicle is changing the lane in which the vehicle is operating while the vehicle is operating within the intersection.

7. The method of claim 1 , wherein the value of the linear temporal logic expression corresponds to whether the vehicle is operating in a direction specified by the operating constraint.

8. The method of claim 1 , further comprising:

determining whether operating of the vehicle in accordance with the motion segment violates the operating constraint.

9. The method of claim 8 , wherein determining whether the operating of the vehicle in accordance with the motion segment violates the operating constraint comprises:

determining that the value of the linear temporal logic expression is false, and

responsive to determining that the value of the linear temporal logic expression is false, determining that the operating of the vehicle violates the operating constraint.

10. The method of claim 1 , wherein evaluating the linear temporal logic expression comprises determining values of the linear temporal logic expression for a sequence of states of the vehicle based on a temporal modal operator.

11. The method of claim 1 , further comprising:

determining that the operational metric is less than a threshold value,

responsive to determining that the operational metric is less than then threshold value, causing the vehicle to operate in accordance with the determine trajectory.

12. The method of claim 1 , wherein assigning of the operational metric comprises determining a rank of the operating constraint.

13. The method of claim 12 , wherein the operating constraint is one of a ranked plurality of operating constraints.

14. The method of claim 1 , further comprising generating the Kripke structure, wherein each vertex of a plurality of vertices of the Kripke structure corresponds to a respective spatiotemporal location of the plurality of spatiotemporal locations.

15. The method of claim 14 , wherein an edge of the Kripke structure connecting a first vertex and a second vertex corresponds to the motion segment for operating the vehicle from a first spatiotemporal location to a second spatiotemporal location.

16. The method of claim 15 , wherein a first value of the linear temporal logic expression evaluated at the first vertex is different from a second value of the linear temporal logic expression evaluated at the second vertex.

17. A vehicle comprising:

one or more computer processors; and

one or more non-transitory storage media storing instructions which, when executed by the one or more computer processors, cause the one or more computer processors to perform operations comprising:

storing a Kripke structure representing a motion segment for operating a vehicle, wherein the motion segment comprises a plurality of spatiotemporal locations;

for each spatiotemporal location of the plurality of spatiotemporal locations:

evaluating a linear temporal logic expression based on the Kripke structure, wherein the linear temporal logic expression defines an operating constraint for operating the vehicle in accordance with the motion segment;

responsive to a value of the linear temporal logic expression changing at the spatiotemporal location, inserting a location marker within the Kripke structure at the spatiotemporal location to divide the motion segment into two different motion segments;

assigning an operational metric to each motion segment of the two different motion segments based on the location marker;

determining a trajectory for operating the vehicle based on the operational metric; and

causing the vehicle to operate in accordance with the determined trajectory.

18. One or more non-transitory storage media storing instructions which, when executed by one or more computing devices, cause the one or more computing devices to perform operations comprising:

storing a Kripke structure representing a motion segment for operating a vehicle, wherein the motion segment comprises a plurality of spatiotemporal locations;

for each spatiotemporal location of the plurality of spatiotemporal locations:

evaluating a linear temporal logic expression based on the Kripke structure, wherein the linear temporal logic expression defines an operating constraint for operating the vehicle in accordance with the motion segment;

responsive to a value of the linear temporal logic expression changing at the spatiotemporal location, inserting a location marker within the Kripke structure at the spatiotemporal location to divide the motion segment into two different motion segments;

assigning an operational metric to each motion segment of the two different motion segments based on the location marker;

determining a trajectory for operating the vehicle based on the operational metric; and

causing the vehicle to operate in accordance with the determined trajectory.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 19, 2023
From: WONGPIROMSARN, TICHAKORN
To: APTIV TECHNOLOGIES LIMITED
Reel/Frame 062427/0202 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 19, 2023
From: APTIV TECHNOLOGIES LIMITED
To: MOTIONAL AD LLC
Reel/Frame 062427/0346 →
Continuity (3)
Continuation 16892888 · Jun 4, 2020
Provisional Application 62856875 · Jun 4, 2019
Related Publication 20230095915A1 · Mar 30, 2023
References Cited (29)
US 10671076B1 · Kobilarov et al. · 2020 [cited by applicant]
US 11577754B2 · Wongpiromsarn · 2023 [cited by applicant]
US 20180129214A1 · During et al. · 2018 [cited by applicant]
US 20180251126A1 · Linscott et al. · 2018 [cited by applicant]
US 20190101919A1 · Kobilarov · 2019 [cited by examiner]
US 20200285244A1 · Gier · 2020 [cited by examiner]
US 20200346643A1 · Woon et al. · 2020 [cited by applicant]
US 20200385024A1 · Wongpiromsarn · 2020 [cited by applicant]
US 20210046924A1 · Caldwell et al. · 2021 [cited by applicant]
CN 107567405 · 2018 [cited by applicant]
CN 109521761 · 2019 [cited by applicant]
DE 102015208790 · 2017 [cited by applicant]
DE 102017120366 · 2019 [cited by applicant]
EP 3454269 · 2019 [cited by applicant]
JP 2017016645 · 2017 [cited by applicant]
JP 6235748 · 2017 [cited by applicant]
JP 2019513612 · 2019 [cited by applicant]
KR 101740529 · 2017 [cited by applicant]
KR 1020170077332 · 2017 [cited by applicant]
WO WO2017139613 · 2017 [cited by applicant]
[No Author Listed], “SAE International: Surface Vehicle Recommended Practice,” J3016, Sep. 30, 2016, 30 pages. [cited by applicant]
Artale, “Formal Methods, Lecture III: Linear Temporal Logic, ” Faculty of Computer Science—University of Bolzano, Second Semester 2011/2011, 44 pages. [cited by applicant]
Castro et al., “Incremental Sampling-based Algorithm for Minimum-violation Motion Planning,” IEEE Conference on Decision and Control, Mar. 10, 2014, 8 pages. [cited by applicant]
Chaudhari et al., “Incremental Minimum-Violation Control Synthesis for Robots Interacting with External Agents,” American Control Conference, Jun. 4, 2014, pp. 1761-1786. [cited by applicant]
Kress-Gazit et al., “Correct, Reactive, High-Level Robot Control,” IEEE Robotics & Automation Magazine, Sep. 2011, 18(3):65-74. [cited by applicant]
Murray et al., “Linear Temporal Logic,” Lecture 3, Principles of Model Checking, Chapter 5, Apr. 24, 2012, 21 pages. [cited by applicant]
Notice of Allowance of Patent in Korean Appln. No. 10-2021-7000256, dated Dec. 14, 2022, 8 pages (with English translation). [cited by applicant]
PCT International Preliminary Report on Patentability in International Appln. No. PCT/IB2020/055287, dated Dec. 16, 2021, 8 pages. [cited by applicant]
PCT International Search Report and Written Opinion in International Appln. No. PCT/IB2020/055287, dated Aug. 14, 2020, 11 pages. [cited by applicant]