IP Library › Granted Patent US 12,594,959
Granted Patent B1
US 12,594,959 · App. 17/349,448 · Granted Apr 7, 2026

Scene generation using probabilistic programming languages

Inventor: Congrui Hetang (Mountain View, CA)
Assignee: Waymo LLC
B60W60/0011B60W40/04B60W40/06G06F18/214G06N20/00B60W2552/00B60W2554/4041
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,594,959
App. No.
17/349,448
Granted
Apr 7, 2026
Kind
B1
Abstract

A system includes a memory device, and a processing device, operatively coupled to the memory device, to receive a set of input data including a roadgraph and a distribution of a plurality of scene types associated with a driving context, the roadgraph including an autonomous vehicle driving path, perform stochastic sampling based on the distribution of the plurality of scene types to obtain a set of synthetic scenes for the driving context, and train a machine learning model to identify, for each synthetic scene of the set of synthetic scenes, a respective modified autonomous vehicle driving path.

Claims (38)

1 . A system comprising:

a memory device; and

a processing device, operatively coupled to the memory device, to:

receive a set of input data including a roadgraph and a first distribution of a plurality of scene types associated with a driving context, the roadgraph representing an autonomous vehicle driving path, and the first distribution of the plurality of scene types comprising the plurality of scene types each associated with a weight indicating a probability of an occurrence of a respective scene type;

generate a set of synthetic scenes for the driving context by performing stochastic sampling based on the first distribution of the plurality of scene types, wherein the processing device is to place a set of artifacts to define a synthetic scene within the roadgraph based on a second distribution of a variable associated with requirements for the driving context;

train a machine learning model to identify, for each synthetic scene of the set of synthetic scenes, a respective modified autonomous vehicle driving path to be navigated by an autonomous vehicle; and

cause an autonomous vehicle control system to modify, using the trained machine learning model, the autonomous driving path.

2 . The system of claim 1 , wherein each synthetic scene of the set of synthetic scenes is a synthetic construction zone.

3 . The system of claim 1 , wherein each respective modified autonomous vehicle path includes at least one of: a path shift, or a path merge into a second autonomous vehicle driving path represented by the roadgraph.

4 . The system of claim 1 , wherein the first distribution of the plurality of scene types comprises the plurality of scene types each associated with the weight indicating the probability of occurrence of the respective scene type under realistic driving conditions.

5 . The system of claim 1 , wherein the second distribution follows a probability density function.

6 . The system of claim 1 , wherein the stochastic sampling is performed by a probabilistic programming language module (PPLM) written in a probabilistic programming language and nested within a program written in a general purpose programming language.

7 . The system of claim 1 , wherein the set of synthetic scenes comprises a plurality of synthetic scenes, each synthetic scene of the plurality of synthetic scenes being associated with an intraclass variety.

8 . The system of claim 1 , wherein the processing device is further to:

generate a set of training input data comprising a set of data frames from the set of synthetic scenes; and

obtain a set of target output data for the set of training input data, wherein the machine learning model is trained using the set of training input data and the set of target output data.

9 . The system of claim 8 , wherein the set of target output data comprises at least one of: messages with injected markers or perception objects, or tensorflow examples.

10 . A method comprising:

receiving, by a processing device, a set of input data including a roadgraph and a first distribution of a plurality of scene types associated with a driving context, the roadgraph representing an autonomous vehicle driving path, and the first distribution of the plurality of scene types comprising the plurality of scene types each associated with a weight indicating a probability of an occurrence of a respective scene type;

generating, by the processing device, a set of synthetic scenes for the driving context by performing stochastic sampling based on the first distribution of the plurality of scene types, wherein the processing device is to place a set of artifacts to define a synthetic scene within the roadgraph based on a second distribution of a variable associated with requirements for the driving context;

training, by the processing device, a machine learning model to identify, for each synthetic scene of the set of synthetic scenes, a respective modified autonomous vehicle driving path to be navigated by an autonomous vehicle; and

causing an autonomous vehicle control system to modify, using the trained machine learning model, the autonomous driving path.

11 . The method of claim 10 , wherein each synthetic scene of the set of synthetic scenes is a synthetic construction zone.

12 . The method of claim 10 , wherein each respective modified autonomous vehicle path includes at least one of: a path shift, or a path merge into a second autonomous vehicle driving path represented by the roadgraph.

13 . The method of claim 10 , wherein the first distribution of the plurality of scene types comprises the plurality of scene types each associated with the weight indicating the probability of occurrence of the respective scene type under realistic driving conditions.

14 . The method of claim 10 , wherein the second distribution follows a probability density function.

15 . The method of claim 10 , wherein the stochastic sampling is performed by a probabilistic programming language module (PPLM) written in a probabilistic programming language and nested within a program written in a general purpose programming language.

16 . The method of claim 10 , wherein the set of synthetic scenes comprises a plurality of synthetic scenes, each synthetic scene of the plurality of synthetic scenes being associated with an intraclass variety.

17 . The method of claim 10 , further comprising:

generating, by the processing device, a set of training input data comprising a set of data frames from the set of synthetic scenes; and

obtaining a set of target output data for the set of training input data, wherein the machine learning model is trained using the set of training input data and the set of target output data.

18 . The method of claim 17 , wherein the set of target output data comprises at least one of: messages with injected markers or perception objects, or tensorflow examples.

19 . A non-transitory computer-readable storage medium having instructions stored thereon that, when executed by a processing device, cause the processing device to:

receive a set of input data including a roadgraph and a first distribution of a plurality of scene types associated with a driving context, the roadgraph representing an autonomous vehicle driving path, and the first distribution of the plurality of scene types comprising the plurality of scene types each associated with a weight indicating a probability of an occurrence of a respective scene type;

generate a set of synthetic scenes for the driving context by performing stochastic sampling based on the first distribution of the plurality of scene types, wherein the processing device is to place a set of artifacts to define a synthetic scene within the roadgraph based on a second distribution of a variable associated with requirements for the driving context;

train a machine learning model to identify, for each synthetic scene of the set of synthetic scenes, a respective modified autonomous vehicle driving path to be navigated by an autonomous vehicle; and

cause an autonomous vehicle control system to modify, using the trained machine learning model, the autonomous driving path.

20 . The non-transitory computer-readable storage medium of claim 19 , wherein each synthetic scene of the set of synthetic scenes is a synthetic construction zone.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2021
From: HETANG, CONGRUI
To: WAYMO LLC
Reel/Frame 056566/0931 →
References Cited (94)
US 10379538B1 · Sheckells et al. · 2019 [cited by applicant]
US 10671075B1 · Kobilarov · 2020 [cited by applicant]
US 10933869B2 · Gochev et al. · 2021 [cited by applicant]
US 11003183B2 · Zhu · 2021 [cited by examiner]
US 11034364B1 · Narang · 2021 [cited by examiner]
US 11560154B1 · Gate · 2023 [cited by examiner]
US 11731612B2 · Zhou et al. · 2023 [cited by applicant]
US 11891087B2 · Marchetti-Bowick et al. · 2024 [cited by applicant]
US 11891088B1 · Kobilarov et al. · 2024 [cited by applicant]
US 11922642B1 · Setzer · 2024 [cited by examiner]
US 12013256B1 · Kaplan · 2024 [cited by examiner]
US 12103554B2 · Urtasun et al. · 2024 [cited by applicant]
US 12459539B1 · Nag · 2025 [cited by examiner]
US 20150353082A1 · Lee et al. · 2015 [cited by applicant]
US 20150353085A1 · Lee · 2015 [cited by applicant]
US 20160375901A1 · Di Cairano et al. · 2016 [cited by applicant]
US 20170202131A1 · Bunderson et al. · 2017 [cited by applicant]
US 20170357262A1 · Dix et al. · 2017 [cited by applicant]
US 20180011494A1 · Zhu · 2018 [cited by examiner]
US 20180162412A1 · Gao et al. · 2018 [cited by applicant]
US 20180188043A1 · Chen · 2018 [cited by examiner]
US 20180203445A1 · Micks · 2018 [cited by examiner]
US 20180284769A1 · Wang et al. · 2018 [cited by applicant]
US 20190079514A1 · Zhu · 2019 [cited by examiner]
US 20190079523A1 · Zhu et al. · 2019 [cited by applicant]
US 20190079528A1 · Zhu et al. · 2019 [cited by applicant]
US 20190080266A1 · Zhu et al. · 2019 [cited by applicant]
US 20190086925A1 · Fan et al. · 2019 [cited by applicant]
US 20190086930A1 · Fan et al. · 2019 [cited by applicant]
US 20190086932A1 · Fan et al. · 2019 [cited by applicant]
US 20190113927A1 · Englard · 2019 [cited by examiner]
US 20190146500A1 · Yalla · 2019 [cited by examiner]
US 20190147255A1 · Homayounfar et al. · 2019 [cited by applicant]
US 20190235506A1 · Bardapurkar et al. · 2019 [cited by applicant]
US 20190303759A1 · Farabet · 2019 [cited by examiner]
US 20190310644A1 · Zhang · 2019 [cited by applicant]
US 20190315357A1 · Zhang et al. · 2019 [cited by applicant]
US 20190361432A1 · Levinson et al. · 2019 [cited by applicant]
US 20190384304A1 · Towal · 2019 [cited by applicant]
US 20200074266A1 · Peake · 2020 [cited by examiner]
US 20200191586A1 · Luo · 2020 [cited by examiner]
US 20200191979A1 · Lindskog · 2020 [cited by applicant]
US 20200192389A1 · ReMine · 2020 [cited by applicant]
US 20200209864A1 · Chen · 2020 [cited by examiner]
US 20200211370A1 · Chen · 2020 [cited by examiner]
US 20200218261A1 · Zidek · 2020 [cited by applicant]
US 20200301733A1 · Zhang et al. · 2020 [cited by applicant]
US 20200301799A1 · Manivasagam · 2020 [cited by applicant]
US 20200310446A1 · Zhu · 2020 [cited by applicant]
US 20200341466A1 · Pham · 2020 [cited by examiner]
US 20200356828A1 · Palanisamy · 2020 [cited by examiner]
US 20210004017A1 · Colgate · 2021 [cited by examiner]
US 20210020045A1 · Huang · 2021 [cited by examiner]
US 20210061307A1 · Connell · 2021 [cited by examiner]
US 20210080955A1 · Wilkinson et al. · 2021 [cited by applicant]
US 20210181740A1 · Zhu · 2021 [cited by applicant]
US 20210241614A1 · Mubarek · 2021 [cited by examiner]
US 20210309248A1 · Choe · 2021 [cited by examiner]
US 20210325891A1 · Young · 2021 [cited by examiner]
US 20210347382A1 · Huang et al. · 2021 [cited by applicant]
US 20210370980A1 · Ramamoorthy · 2021 [cited by examiner]
US 20210373566A1 · Agarwal et al. · 2021 [cited by applicant]
US 20220157161A1 · Tan · 2022 [cited by examiner]
US 20220219730A1 · Song et al. · 2022 [cited by applicant]
US 20220261519A1 · Muehlenstaedt · 2022 [cited by examiner]
US 20220349725A1 · Chreptyk · 2022 [cited by examiner]
US 20220391766A1 · Acuna Marrero · 2022 [cited by examiner]
US 20230021034A1 · Cui et al. · 2023 [cited by applicant]
US 20230027496A1 · Rajakumar · 2023 [cited by examiner]
US 20230038842A1 · Yu · 2023 [cited by examiner]
US 20230252624A1 · Sergeev · 2023 [cited by applicant]
US 20230415772A1 · Wolff · 2023 [cited by examiner]
US 20240001957A1 · Choe · 2024 [cited by examiner]
US 20240001963A1 · Kinakar et al. · 2024 [cited by applicant]
US 20240017747A1 · Hasenklever et al. · 2024 [cited by applicant]
US 20240061307A1 · Yafuso et al. · 2024 [cited by applicant]
US 20240092357A1 · Kobilarov et al. · 2024 [cited by applicant]
US 20240288274A1 · Zhou · 2024 [cited by examiner]
US 20240290143A1 · Famiglietti · 2024 [cited by examiner]
US 20240391495A1 · Nister · 2024 [cited by applicant]
EP 3723001A1 · 2020 [cited by applicant]
WO 2021016116A1 · 2021 [cited by applicant]
Tristan Cazenave et al., Monte Carlo Vehicle Routing, 2020 CEUR-WS, vol. 2701, pp. 1-8 (pdf). [cited by examiner]
J.A. Cobano et al., Path planning based on Genetic Algorithm and the Monte-Carlo method to avoid aerial vehicle collision under uncertainties, 2011 IEEE, pp. 4429-4434. [cited by examiner]
Chenjing Jiao et al., A fast and effective deep learning approach for road extraction from historical maps by automatically generating training data with symbol reconstruction, Aug. 22, 2022, elsevier.com, pp. 1-2 (pdf). [cited by examiner]
David Yu, Road Feature Detection & Geo Tagging with Deep Learning, Jun. 6, 2019, Medium.com, pp. 1-50 (pdf). [cited by examiner]
Mariusz Bojarski et al., End-to-End Deep Learning for Self-Driving Cars, Aug. 17, 2016, Nvidia corp., pp. 1-9 (pdf). [cited by examiner]
Inkyung Sung et al., On the training of a neural network for online path planning with offline path planning algorithms, Jun. 2020, Elsevier.com, pp. 1-9. [cited by examiner]
Maya Kabkab et al., DCNNs on a Diet: Sampling Strategies for Reducing the Training Set Size, Jun. 14, 2016, arxiv, pp. 1-14 (pdf). [cited by examiner]
Noah Goodman, Uber AI Labs Open Sources Pyro, a Depp Probabilistic Programming Language, Nov. 3, 2017, Uber Blog, pp. 1-10 (pdf). [cited by examiner]
Ivan Sikiric et al., Traffic Scene Classification on a Representation Budget, 2019, IEEE, pp. 1-10. [cited by examiner]
The extended European search report for EP Application No. 22179405.0, mailed Nov. 22, 2022, 8 pages. [cited by applicant]
The extended European search report for EP Application No. 22179410.0, mailed Nov. 23, 2022, 8 pages. [cited by applicant]
NIVIDIA: “NIVIDIA Drive Sim”, Youtube, Jan. 8, 2019 (Jan. 8, 2019), p. 1 pp. , XP054981495, Retrieved from the Internet: URL:https://www.youtube.com/watch?v=DXsLDyiONV4, [retrieved on Mar. 8, 2021]. [cited by applicant]
Cited By (1)
US 12,746,946