# US 12,190,735 B2 · Testing a scheduling system for autonomous vehicles using simulations

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,190,735 B2
- Document ID: US12190735B2
- Status: Granted
- Kind: B2
- Application number: 17/354,395
- Filed: 2021-06-22
- Published: 2022-12-22
- Granted: 2025-01-07
- Earliest claimed: 2021-06-22
- Assignees: Waymo LLC
- Applicants: Waymo LLC
- Inventors: Cindy Cao Butler
- Web page: https://patentgrep.com/patent/US12190735B2

## CPC

- G08G 1/202: {Dispatching vehicles on the basis of a location, e.g. taxi dispatching}
- B62D 6/00: Arrangements for automatically controlling steering depending on driving conditions sensed and responded to, e.g. control circuits (means for initiating a change in direction B62D1/00; steering valves B62D5/06; combined with means for inclining the vehicle body or wheels on bends B62D9/00)
- G06F 30/20: Design optimisation, verification or simulation (optimisation, verification or simulation of circuit designs G06F30/30)
- G08G 1/127: to a central station {; Indicators in a central station}
- B62D 15/025: {Active steering aids, e.g. helping the driver by actively influencing the steering system after environment evaluation (B62D1/28 takes precedence)}
- G06F 2119/02: Reliability analysis or reliability optimisation; Failure analysis, e.g. worst case scenario performance, failure mode and effects analysis [FMEA]
- G08G: TRAFFIC CONTROL SYSTEMS (guiding railway traffic, ensuring the safety of railway traffic B61L; arrangement of road signs or traffic signals E01F9/00; radar or analogous systems, sonar systems, lidar systems specially adapted for traffic control G01S13/91, G01S15/88, G01S17/88; {radar or analogous systems, sonar systems, lidar systems specially adapted for anti-collision purposes G01S13/93, G01S15/93, G01S17/93})
- B62D: MOTOR VEHICLES; TRAILERS (steering, or guiding on a desired track, of agricultural machines or implements A01B69/00; wheels, castors, axles, increasing wheel adhesion B60B; vehicle tyres, tyre inflation or tyre changing B60C; connections between vehicles of a train or the like B60D; vehicles for use on rail and road, amphibious or convertible vehicles B60F; suspension arrangements B60G; heating, cooling, ventilating or other air treating devices B60H; windows, windscreens, non-fixed roofs, doors or similar devices, protective coverings for vehicles not in use B60J; propulsion plant arrangements, auxiliary drives, transmissions, controls, instrumentation or dashboards B60K; electric equipment or propulsion of electrically-propelled vehicles B60L; power supply for electrically-propelled vehicles B60M; passenger accommodation not otherwise provided for B60N; adaptations for load transportation or to carry special loads or objects B60P; arrangement of signalling or lighting devices, the mounting or supporting thereof or circuits therefor, for vehicles in general B60Q; vehicles, vehicle fittings or vehicle parts not otherwise provided for B60R; servicing, cleaning, repairing, supporting, lifting, or manoeuvring, not otherwise provided for, B60S; brake arrangements, brake control systems or parts thereof B60T; air-cushion vehicles B60V; motor-cycles, accessories therefor B62J, B62K; testing of vehicles G01M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Aspects of the disclosure provide for the evaluation of a scheduling system software for managing autonomous vehicle scheduling and dispatching. For instance, a problem condition for a simulation may be identified. The simulation may be run using the identified problem condition. The simulation may include a plurality of simulated autonomous vehicles each utilizing its own autonomous vehicle control software and map information common to each simulated autonomous vehicle. The problem condition may relate to a particular simulated autonomous vehicle of the plurality. Output of the simulation may be analyzed to determine a score for the scheduling system software. The scheduling system software may be evaluated using the score.

## Claims

### Claim 1

A method comprising:
identifying, by one or more processors, a problem condition related to scheduling and dispatching of a fleet of autonomous vehicles, and the problem condition being associated with a particular autonomous vehicle of the fleet of autonomous vehicles;
running, by the one or more processors using map information common to the fleet of autonomous vehicles, a first portion of a simulation for the fleet of autonomous vehicles;
running, by the one or more processors using the map information, a second portion of the simulation including occurrence of the problem condition, the second portion of the simulation being subsequent to the first portion of the simulation;
running, by the one or more processors using the map information, a third portion of the simulation including a response of a scheduling system to the occurrence of the problem condition, the third portion of the simulation being subsequent to the second portion of the simulation,
wherein running the first portion, the second portion and the third portion of the simulation includes:
generating, by respective autonomous vehicle control of each autonomous vehicle of the fleet of autonomous vehicles, a respective route to a respective destination;
controlling, by the respective autonomous vehicle control of each autonomous vehicle of the fleet of autonomous vehicles, the autonomous vehicle along at least a portion of the respective route;
simulating scheduling and dispatching of the fleet of autonomous vehicles by the scheduling system;
determining, by the one or more processors, a score associated with the scheduling and dispatching of the fleet of autonomous vehicles by the scheduling system during at least the third portion of the simulation; and
evaluating, by the one or more processors based at least on the score, one or more decisions by the scheduling system during at least the third portion of the simulation.

### Claim 2 (depends on 1)

The method of claim 1, wherein the problem condition includes a delay in a passenger meeting the particular autonomous vehicle during at least the second portion of the simulation.

### Claim 3 (depends on 1)

The method of claim 1, wherein the problem condition includes the particular autonomous vehicle encountering a failure of a component of the particular autonomous vehicle during at least the second portion of the simulation.

### Claim 4 (depends on 1)

The method of claim 1, wherein the problem condition includes the particular autonomous vehicle being in an accident during at least the second portion of the simulation.

### Claim 5 (depends on 1)

The method of claim 1, wherein determining the score is further based on whether each autonomous vehicle of the fleet of autonomous vehicles, other than the particular autonomous vehicle, reaches the respective destination.

### Claim 6 (depends on 5)

The method of claim 5, wherein determining the score is further based on differences in estimated times of arrival at one or more of the respective destinations during the first portion of the simulation and estimated times of arrival at one or more of the respective destinations during the third portion of the simulation.

### Claim 7 (depends on 1)

The method of claim 1, wherein running the second portion of the simulation includes providing a notification of the occurrence of the problem condition to the scheduling system.

### Claim 8 (depends on 1)

The method of claim 1, wherein running the first portion, the second portion and the third portion of the simulation includes simulating picking up and dropping off, by one or more autonomous vehicles of the fleet of autonomous vehicles, users of a transportation service at different locations in a service area for the transportation service.

### Claim 9 (depends on 1)

The method of claim 1, wherein evaluating the one or more decisions by the scheduling system includes comparing the score to another score associated with other simulated scheduling and dispatching of the fleet of autonomous vehicles by a different version of the scheduling system.

### Claim 10

A system comprising a simulation system including one or more computing devices configured to:
identify a problem condition related to scheduling and dispatching of a fleet of autonomous vehicles and associated with a particular autonomous vehicle of the fleet of autonomous vehicles;
run, using map information common to the fleet of autonomous vehicles, a first portion of a simulation of the fleet of autonomous vehicles;
run, using the map information, a second portion of the simulation including occurrence of the problem condition, the second portion of the simulation being subsequent to the first portion of the simulation;
run, using the map information, a third portion of the simulation including a response of a scheduling system to the problem condition, the third portion of the simulation being subsequent to the second portion of the simulation,
wherein the first portion, the second portion and the third portion of the simulation includes:
generation of, by respective autonomous vehicle control of each autonomous vehicle of the fleet of autonomous vehicles, a respective route to a respective destination;
control of, by the respective autonomous vehicle control of each autonomous vehicle of the fleet of autonomous vehicles, the autonomous vehicle along at least a portion of the respective route; and
simulation of scheduling and dispatching of the fleet of autonomous vehicles by the scheduling system;
determine, a score associated with the scheduling and dispatching of the fleet of autonomous vehicles by the scheduling system during at least the third portion of the simulation; and
evaluate, based at least on the score, one or more decisions by the scheduling system during at least the third portion of the simulation.

### Claim 11 (depends on 10)

The system of claim 10, wherein the problem condition includes a delay in a passenger meeting the particular autonomous vehicle during at least the second portion of the simulation.

### Claim 12 (depends on 10)

The system of claim 10, wherein the problem condition includes the particular autonomous vehicle encountering a failure of a component of the particular autonomous vehicle during at least the second portion of the simulation.

### Claim 13 (depends on 10)

The system of claim 10, wherein the problem condition includes the particular autonomous vehicle being in an accident during at least the second portion of the simulation.

### Claim 14 (depends on 10)

The system of claim 10, wherein the one or more computing devices are further configured to determine the score based on whether each autonomous vehicle of the fleet of autonomous vehicles, other than the particular autonomous vehicle, reaches the respective destination.

### Claim 15 (depends on 14)

The system of claim 14, wherein the one or more computing devices are further configured to determine the score based on differences in estimated times of arrival at one or more of the respective destinations during the first portion of the simulation and estimated times of arrival at one or more of the respective destinations during the third portion of the simulation.

### Claim 16 (depends on 10)

The system of claim 10, wherein the one or more computing devices are configured to, during the second portion of the simulation, provide a notification of the occurrence of the problem condition to the scheduling system.

### Claim 17 (depends on 10)

The system of claim 10, wherein the one or more computing devices are configured to, during the first portion, the second portion and the third portion of the simulation, simulate picking up and dropping off, by one or more autonomous vehicles of the fleet of autonomous vehicles, users of a transportation service at different locations in a service area for the transportation service.

### Claim 18 (depends on 10)

The system of claim 10, wherein the one or more computing devices are further configured to evaluate the one or more decisions by the scheduling system by comparing the score to another score of a different version of the scheduling system.

### Claim 19 (depends on 10)

The system of claim 10, further comprising the scheduling system.

### Claim 20

A non-transitory computer-readable medium on which instructions are stored, the instructions, when executed by one or more processors cause the one or more processors to perform a method comprising:
identifying a problem condition related to scheduling and dispatching of a fleet of autonomous vehicles and associated with a particular autonomous vehicle of the fleet of autonomous vehicles;
running, using map information common to the fleet of autonomous vehicles, a first portion of a simulation of the fleet of autonomous vehicles;
running, using the map information, a second portion of the simulation including occurrence of the problem condition, the second portion of the simulation being subsequent to the first portion of the simulation;
running, using the map information, a third portion of the simulation including a response of a scheduling system to the problem condition, the third portion of the simulation being subsequent to the second portion of the simulation,
wherein running the first portion, the second portion and the third portion of the simulation includes:
generating, by respective autonomous vehicle control of each autonomous vehicle of the fleet of autonomous vehicles, a respective route to a respective destination;
controlling, by the respective autonomous vehicle control of each autonomous vehicle of the fleet of autonomous vehicles, the autonomous vehicle along at least a portion of the respective route; and
simulating scheduling and dispatching of the fleet of autonomous vehicles by the scheduling system;
determining a score associated with the scheduling and dispatching of the fleet of autonomous vehicles by the scheduling system during at least the third portion of the simulation; and
evaluating, based at least on the score, one or more decisions by the scheduling system during at least the third portion of the simulation.
