IP Library Granted Patent US 12,008,922
Granted Patent B2
US 12,008,922 · App. 16/025,799 · Granted Jun 11, 2024

Systems and methods for comparing driving performance for simulated driving

Inventors: Jason Palmer (Carlsbad, CA); Reza Ghanbari (San Diego, CA); Nicholas Shayne Brookins (Encinitas, CA); Slaven Sljivar (San Diego, CA); Mark Freitas (San Diego, CA); Barry James Parshall (Portland, OR); Daniel Andrew Deninger (Carlsbad, CA); Behzad Shahrasbi (San Diego, CA); Mojtaba Ziyadi (San Diego, CA)
Assignee: SmartDrive Systems, Inc.
G09B9/052B60W40/09B60W50/14G08G1/167
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,008,922
App. No.
16/025,799
Filed
Jul 2, 2018
Granted
Jun 11, 2024
Kind
B2
Examiner
YIP, JACK
Art Unit
3715
USPC
434/65
Abstract

This disclosure relates to a system that determines driving performance by a vehicle operator for simulated driving of a simulated vehicle in a simulation engine. Individual vehicle event scenarios correspond to vehicle events. Individual simulation scenarios correspond to individual vehicle event scenarios. A vehicle operator, e.g., an autonomous driving algorithm, operates the simulated vehicle in the simulation engine for a set of simulation scenarios. One or more metrics quantify the performance of the vehicle operator based on simulated results.

Claims (46)

1. A system configured to determine driving performance by a vehicle operator and by a second vehicle operator for simulated driving of a simulated vehicle in a simulation engine, wherein the vehicle operator and the second vehicle operator are included in a set of vehicle operators, wherein the simulated driving is based on real-world operation of real-world vehicles, the system comprising:

electronic storage configured to electronically store information; and

one or more processors configured via machine-readable instructions to:

determine one or more vehicle parameters of individual vehicles, wherein the one or more vehicle parameters are determined directly based on output signals from at least two different sensors, wherein the one or more vehicle parameters are determined multiple times in an ongoing manner during operation of the vehicle;

obtain a stored set of vehicle event scenarios that correspond to vehicle events that have occurred in the real world at particular times during the real-world operation of the real-world vehicles, wherein individual vehicle events are associated with physical surroundings of individual vehicles around the particular times the individual vehicle events occurred, wherein individual vehicle events are detected based on comparing the one or more vehicle parameters of individual vehicles with one or more thresholds, wherein a first vehicle event scenario is associated with a first set of circumstances that is based on a first set of physical surroundings of a first vehicle around a particular time a first vehicle event occurred, wherein the first vehicle event scenario has a scenario time period that begins prior to an occurrence of a potential vehicle event;

create a set of simulation scenarios that are suitable for use by the simulation engine, wherein individual ones of the set of simulation scenarios correspond to individual ones of the stored set of vehicle event scenarios, wherein individual ones of the set of simulation scenarios mimic circumstances associated with a corresponding vehicle event scenario, such that a first simulation scenario mimics the first set of circumstances associated with the first vehicle event scenario, wherein the simulated vehicle is based on the first vehicle;

establish a communication link between the vehicle operator and the simulation engine, wherein the vehicle operator is an autonomous driving algorithm that controls operations of the simulated vehicle autonomously through the communication link;

run the set of simulation scenarios in the simulation engine, wherein the simulated vehicle interacts with the vehicle operator and is operated by the vehicle operator based on input received from the autonomous driving algorithm;

detect, by the simulation engine during the running of the set of simulation scenarios, one or more simulated vehicle events that have occurred to the simulated vehicle as the autonomous driving algorithm controlled the operations of the simulated vehicle;

determine one or more metrics that quantify a performance of the vehicle operator in running the set of simulation scenarios, wherein the determination of the one or more metrics is based on the one or more simulated vehicle events as detected;

establish a second communication link between the second vehicle operator and the simulation engine, wherein the second vehicle operator is a second autonomous driving algorithm that controls operations of the simulated vehicle autonomously through the second communication link;

run the set of simulation scenarios in the simulation engine, wherein the simulated vehicle interacts with the second vehicle operator and is operated by the second vehicle operator based on second input received from the second autonomous driving algorithm;

detect, by the simulation engine during the running of the set of simulation scenarios, a second set of simulated vehicle events that have occurred to the simulated vehicle as the second autonomous driving algorithm controlled the operations of the simulated vehicle;

determine a second set of metrics that quantify a second performance of the second vehicle operator running the set of simulation scenarios, wherein the determination of the second set of metrics is based on the second set of simulated vehicle events as detected;

compare the performance of the vehicle operator with the second performance of the second vehicle operator, wherein comparison is based on the one or more metrics and the second set of metrics;

based on the comparison, determine whether the vehicle operator or the second vehicle operator performed best in running the set of simulation scenarios; and

generate a report based on the comparison and transfer the report to one or more users.

2. The system of claim 1 , wherein the potential vehicle event corresponds to the first vehicle event.

3. The system of claim 1 , wherein the second vehicle operator is a benchmark autonomous driving algorithm.

4. The system of claim 1 , wherein individual ones of the stored set of vehicle event scenarios correspond to detected vehicle events in real life.

5. The system of claim 1 . wherein the communication link provides the vehicle operator with control over the operations of the simulated vehicle.

6. The system of claim 1 , wherein the simulation engine is computer-implemented and configured by a set of machine-readable instructions, and wherein the set of simulation scenarios in the simulation engine is run at faster-than-real-time.

7. The system of claim 1 , wherein one of the one or more metrics is reduced responsive to an individual one of the set of simulation scenarios resulting in an accident.

8. The system of claim 1 , wherein the one or more processors are further configured to take an action based on the comparison of the performance of the vehicle operator with the second performance of the second vehicle operator.

9. A method for determining driving performance by a vehicle operator and by a second vehicle operator for simulated driving of a simulated vehicle in a simulation engine, wherein the vehicle operator and the second vehicle operator are included in a set of vehicle operators, wherein the simulated driving is based on real-world operation of real-world vehicles, the method comprising:

determining one or more vehicle parameters of individual vehicles, wherein the one or more vehicle parameters are determined directly based on output signals from at least two different sensors, wherein the one or more vehicle parameters are determined multiple times in an ongoing manner during operation of the vehicle;

obtaining a stored set of vehicle event scenarios that correspond to vehicle events that have occurred in the real world at particular times during the real-world operation of the real-world vehicles, wherein individual vehicle events are associated with physical surroundings of individual vehicles around the particular times the individual vehicle events occurred, wherein individual vehicle events are detected based on comparing the one or more vehicle parameters of individual vehicles with one or more thresholds, wherein a first vehicle event scenario is associated with a first set of circumstances that is based on a first set of physical surroundings of a first vehicle around a particular time a first vehicle event occurred, wherein the first vehicle event scenario has a scenario time period that begins prior to an occurrence of a potential vehicle event;

creating a set of simulation scenarios that are suitable for use by the simulation engine, wherein individual ones of the set of simulation scenarios correspond to individual ones of the stored set of vehicle event scenarios, wherein individual ones of the set of simulation scenarios mimic circumstances associated with a corresponding vehicle event scenario, such that a first simulation scenario mimics the first set of circumstances associated with the first vehicle event scenario, wherein the simulated vehicle is based on the first vehicle;

establishing a communication link between the vehicle operator and the simulation engine, wherein the vehicle operator is an autonomous driving algorithm that controls operations of the simulated vehicle autonomously through the communication link;

running the set of simulation scenarios in the simulation engine, wherein the simulated vehicle interacts with the vehicle operator and is operated by the vehicle operator based on input received from the autonomous driving algorithm;

detecting, by the simulation engine during the running of the set of simulation scenarios, one or more simulated vehicle events that have occurred to the simulated vehicle as the autonomous driving algorithm controlled the operations of the simulated vehicle;

determining one or more metrics that quantify a performance of the vehicle operator in running the set of simulation scenarios, wherein the determination of the one or more metrics is based on the one or more simulated vehicle events as detected;

establishing a second communication link between the second vehicle operator and the simulation engine, wherein the second vehicle operator is a second autonomous driving algorithm that controls operations of the simulated vehicle autonomously through the second communication link;

running the set of simulation scenarios in the simulation engine, wherein the simulated vehicle interacts with the second vehicle operator and is operated by the second vehicle operator based on second input received from the second autonomous driving algorithm;

detecting, by the simulation engine during the running of the set of simulation scenarios, a second set of simulated vehicle events that have occurred to the simulated vehicle as the second autonomous driving algorithm controlled the operations of the simulated vehicle;

determining a second set of metrics that quantify a second performance of the second vehicle operator in running the set of simulation scenarios, wherein the determination of the second set of metrics is based on the second set of simulated vehicle events as detected;

comparing the performance of the vehicle operator with the second performance of the second vehicle operator, wherein comparison is based on the one or more metrics and the second set of metrics;

based on the comparison, determine whether the vehicle operator or the second vehicle operator performed best in running the set of simulation scenarios; and

generating a report based on the comparison and transferring the report to one or more users.

10. The method of claim 9 , wherein the potential vehicle event corresponds to the first vehicle event.

11. The method of claim 9 , wherein the second vehicle operator is a benchmark autonomous driving algorithm.

12. The method of claim 9 , wherein individual ones of the stored set of vehicle event scenarios correspond to detected vehicle events in real life.

13. The method of claim 9 , wherein the communication link provides the vehicle operator with control over the operations of the simulated vehicle.

14. The method of claim 9 , wherein the set of simulation scenarios in the simulation engine is run at faster-than-real-time.

15. The method of claim 9 , wherein one of the one or more metrics is reduced responsive to an individual one of the set of simulation scenarios resulting in an accident.

16. The method of daim 9 , wherein the report includes at least one of a warning and a recommendation reaarding the vehicle operator, and wherein at least one of the warning and the recommendation are based on at least one of the one or more metrics and the comparison.

Assignments (16)
CORRECTIVE ASSIGNMENT TO CORRECT THE INCORRECT PATENT NUMBER D856640 PREVIOUSLY RECORDED ON REEL 056598 FRAME 0059. ASSIGNOR(S) HEREBY CONFIRMS THE SECOND LIEN PATENT SECURITY AGREEMENT. Recorded Nov 17, 2021
From: OMNITRACS, LLC; ROADNET TECHNOLOGIES, INC.; SMARTDRIVE SYSTEMS, INC.; XRS CORPORATION; HYPERQUEST, LLC (F/K/A HYPERQUEST, INC.); AUDATEX NORTH AMERICA, LLC (F/K/A AUDATEX NORTH AMERICA, INC.); CLAIMS SERVICES GROUP, LLC; DMEAUTOMOTIVE LLC; ENSERVIO, LLC (F/K/A ENSERVIO, INC.); MOBILE PRODUCTIVITY, LLC; SEE PROGRESS, LLC (F/K/A SEE PROGRESS, INC.); SOLERA HOLDINGS, LLC (F/K/A SOLERA HOLDINGS, INC.); EDRIVING FLEET LLC; FINANCE EXPRESS LLC
To: ALTER DOMUS (US) LLC, AS COLLATERAL AGENT
Reel/Frame 058175/0775 →
CORRECTIVE ASSIGNMENT TO CORRECT THE INCORRECT PATENT NUMBER D856640 PREVIOUSLY RECORDED ON REEL 056601 FRAME 0630. ASSIGNOR(S) HEREBY CONFIRMS THE FIRST LIEN PATENT SECURITY AGREEMENT. Recorded Nov 17, 2021
From: OMNITRACS, LLC; ROADNET TECHNOLOGIES, INC.; SMARTDRIVE SYSTEMS, INC.; XRS CORPORATION; HYPERQUEST, LLC (F/K/A HYPERQUEST, INC.); AUDATEX NORTH AMERICA, LLC (F/K/A AUDATEX NORTH AMERICA, INC.); CLAIMS SERVICES GROUP, LLC; DMEAUTOMOTIVE LLC; ENSERVIO, LLC (F/K/A ENSERVIO, INC.); MOBILE PRODUCTIVITY, LLC; SEE PROGRESS, LLC (F/K/A SEE PROGRESS, INC.); SOLERA HOLDINGS, LLC (F/K/A SOLERA HOLDINGS, INC.); EDRIVING FLEET LLC; FINANCE EXPRESS LLC
To: GOLDMAN SACHS LENDING PARTNERS LLC, AS COLLATERAL AGENT
Reel/Frame 058174/0907 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Jun 16, 2021
From: OMNITRACS, LLC; ROADNET TECHNOLOGIES, INC.; SMARTDRIVE SYSTEMS, INC.; XRS CORPORATION; HYPERQUEST, LLC (F/K/A HYPERQUEST, INC.); AUDATEX NORTH AMERICA, LLC (F/K/A AUDATEX NORTH AMERICA, INC.); CLAIMS SERVICES GROUP, LLC; DMEAUTOMOTIVE LLC; ENSERVIO, LLC (F/K/A ENSERVIO, INC.); MOBILE PRODUCTIVITY, LLC; SEE PROGRESS, LLC (F/K/A SEE PROGRESS, INC.); SOLERA HOLDINGS, LLC (F/K/A SOLERA HOLDINGS, INC.); EDRIVING FLEET LLC; FINANCE EXPRESS LLC
To: ALTER DOMUS (US) LLC, AS COLLATERAL AGENT
Reel/Frame 056598/0059 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Jun 16, 2021
From: OMNITRACS, LLC; ROADNET TECHNOLOGIES, INC.; SMARTDRIVE SYSTEMS, INC.; XRS CORPORATION; HYPERQUEST, LLC (F/K/A HYPERQUEST, INC.); AUDATEX NORTH AMERICA, LLC (F/K/A AUDATEX NORTH AMERICA, INC.); CLAIMS SERVICES GROUP, LLC; DMEAUTOMOTIVE LLC; ENSERVIO, LLC (F/K/A ENSERVIO, INC.); MOBILE PRODUCTIVITY, LLC; SEE PROGRESS, LLC (F/K/A SEE PROGRESS, INC.); SOLERA HOLDINGS, LLC (F/K/A SOLERA HOLDINGS, INC.); EDRIVING FLEET LLC; FINANCE EXPRESS LLC
To: GOLDMAN SACHS LENDING PARTNERS LLC, AS COLLATERAL AGENT
Reel/Frame 056601/0630 →
SECURITY INTEREST RELEASE (REEL/FRAME: 054236/0320) Recorded Jun 8, 2021
From: BARCLAYS BANK PLC, AS GRANTEE
To: SMARTDRIVE SYSTEMS, INC.
Reel/Frame 056520/0944 →
SECURITY INTEREST RELEASE (REEL/FRAME: 054236/0435) Recorded Jun 8, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS GRANTEE
To: SMARTDRIVE SYSTEMS, INC.
Reel/Frame 056518/0845 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Oct 6, 2020
From: SMARTDRIVE SYSTEMS, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 054236/0435 →
TERMINATION AND RELEASE OF GRANT OF A SECURITY INTEREST - PATENTS Recorded Oct 6, 2020
From: TCS TALENTS, LLC, AS THE COLLATERAL AGENT
To: SMARTDRIVE SYSTEMS, INC.
Reel/Frame 053983/0525 →
SECURITY INTEREST Recorded Oct 6, 2020
From: SMARTDRIVE SYSTEMS, INC.
To: BARCLAYS BANK PLC, AS COLLATERAL AGENT
Reel/Frame 054236/0320 →
RELEASE OF SUPPLEMENT TO IP SECURITY AGREEMENT Recorded Sep 23, 2019
From: ALLY BANK
To: SMARTDRIVE SYSTEMS, INC.
Reel/Frame 050460/0598 →
SECURITY INTEREST Recorded Sep 3, 2019
From: SMARTDRIVE SYSTEMS, INC.
To: TCS TALENTS, LLC, AS THE COLLATERAL AGENT
Reel/Frame 050255/0071 →
RELEASE OF SECURITY INTEREST Recorded Sep 3, 2019
From: ORIX GROWTH CAPITAL, LLC
To: SMARTDRIVE SYSTEMS, INC.
Reel/Frame 050254/0872 →
RELEASE OF SECURITY INTEREST Recorded Sep 3, 2019
From: ALLY BANK
To: SMARTDRIVE SYSTEMS, INC.
Reel/Frame 050254/0893 →
SECURITY INTEREST Recorded Feb 15, 2019
From: SMARTDRIVE SYSTEMS, INC.
To: ORIX GROWTH CAPITAL, LLC
Reel/Frame 048352/0843 →
SUPPLEMENT TO IP SECURITY AGREEMENT Recorded Feb 11, 2019
From: SMARTDRIVE SYSTEMS, INC.
To: ALLY BANK
Reel/Frame 048302/0216 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 2, 2018
From: PALMER, JASON; GHANBARI, REZA; BROOKINS, NICHOLAS SHAYNE; SLJIVAR, SLAVEN; FREITAS, MARK; PARSHALL, BARRY JAMES; DENINGER, DANIEL ANDREW; SHAHRASBI, BEHZAD; ZIYADI, MOJTABA
To: SMARTDRIVE SYSTEMS, INC.
Reel/Frame 046255/0530 →
Continuity (1)
Related Publication 20200005662A1 · Jan 2, 2020
Cited By (1)
US 12,497,028