IP Library Granted Patent US 12,280,794
Granted Patent B2
US 12,280,794 · App. 17/667,854 · Granted Apr 22, 2025

Method for predicting a trajectory of an agent in a vicinity of a self-driving vehicle based on ranking

Inventors: Boris Konstantinovich Yangel (Nalchik, RU); Yury Aleksandrovich Biktairov (Mytishchi, RU)
Assignee: Y.E. Hub Armenia LLC
B60W60/001B60W2420/408B60W2554/4049
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,280,794
App. No.
17/667,854
Granted
Apr 22, 2025
Kind
B2
Abstract

A method of operating a self-driving vehicle is provided. The method includes predicting a trajectory of an agent in a vicinity of the self-driving vehicle. This is done by: receiving sensor data indicative of a current situation in the vicinity of the self-driving vehicle; generating a current situation feature vector based, at least in part, on the sensor data; searching a pre-built bank of library feature vectors to identify a result feature vector from the pre-built bank that is most relevant to the current situation feature vector, wherein each library feature vector in the pre-built bank is associated with an observed trajectory; and predicting the trajectory of the agent based, at least in part, on the result feature vector. The method also includes planning an action of the vehicle based, at least in part, on the predicted agent trajectory, and operating the vehicle according to the planned action.

Claims (55)

1. A method of generating a bank of library feature vectors for use in predicting a trajectory of an agent in a vicinity of an in-use self-driving vehicle, the method comprising:

receiving, on a server, a plurality of observation samples, each observation sample collected by a sensor on a data collection self-driving vehicle, each observation sample including data on a trajectory of an observed agent in the vicinity of the data collection self-driving vehicle over a predetermined period of time;

generating a library of agent trajectories by:

clustering agent trajectories from at least a first portion of the plurality of observation samples into a plurality of clusters, each cluster in the plurality of clusters containing similar agent trajectories,

randomly selecting a cluster from the plurality of clusters, and

randomly selecting an agent trajectory, to be added to the library of agent trajectories, from the selected cluster;

generating, on the server, a library feature vector for each trajectory in the library of agent trajectories;

assembling, on the server, the bank of library feature vectors based, at least in part, on the library feature vectors, wherein each library feature vector in the bank of library feature vectors represents a possible future trajectory for the agent in the vicinity of the data collection self-driving vehicle; and

sending the bank of library feature vectors to a computing device of the in-use self-driving vehicle.

2. The method of claim 1 , wherein assembling, on the server, the bank of library feature vectors further comprises generating an index of library feature vectors in the bank of library feature vectors.

3. The method of claim 2 , wherein generating the index of library feature vectors comprises generating a proximity graph of the library feature vectors.

4. The method of claim 3 , wherein the proximity graph comprises a hierarchical navigable small world graph.

5. The method of claim 1 , wherein generating, on the server, the library feature vector for each trajectory in the library of agent trajectories comprises using a neural network to generate the library feature vector from each trajectory in the library of agent trajectories.

6. The method of claim 1 , wherein each observation sample further includes data on a scene surrounding the observed agent, and wherein the method further comprises:

using at least a second portion of the plurality of observation samples for training a first neural network to generate first feature vectors based on input of the scenes surrounding the observed agents; and

using at least the second portion of the plurality of observation samples for jointly training a second neural network to generate second feature vectors based on input of the trajectories of the observed agents; and

wherein the first feature vectors and second feature vectors will be close when the trajectory of an observed agent corresponds to the scene surrounding that observed agent.

7. The method of claim 1 , further comprising:

predicting, by the computing device of the in-use self-driving vehicle, a trajectory of an agent in a vicinity of the in-use self-driving vehicle by:

receiving sensor data indicative of a current situation in the vicinity of the in-use self-driving vehicle from a sensor associated with the in-use self-driving vehicle;

generating a current situation feature vector based, at least in part, on the sensor data;

searching the bank of library feature vectors to identify a result feature vector from the bank of library feature vectors that is most relevant to the current situation feature vector; and

predicting the trajectory of the agent based, at least in part, on the result feature vector;

planning, by the computing device of the in-use self-driving vehicle, an action of the in-use self-driving vehicle based, at least in part, on the predicted trajectory of the agent; and

operating the in-use self-driving vehicle according to the planned action.

8. The method of claim 7 , wherein generating the current situation feature vector comprises using a pre-trained neural network to generate the current situation feature vector.

9. The method of claim 8 , wherein using the pre-trained neural network comprises providing a feature map representing aspects of a birds-eye view of the current situation in the vicinity of the in-use self-driving vehicle, based, at least in part, on the sensor data as input to the pre-trained neural network.

10. The method of claim 9 , wherein the feature map is centered on the agent, and has an orientation based on an orientation of the agent.

11. The method of claim 7 , wherein searching the bank of library feature vectors comprises performing an approximate nearest neighbor search.

12. The method of claim 11 , wherein the bank of library feature vectors includes an index based on a hierarchical navigable small world graph, and wherein performing the approximate nearest neighbor search comprises traversing the hierarchical navigable small world graph.

13. The method of claim 7 , wherein the result feature vector comprises the library feature vector that is closest to the current situation feature vector.

14. The method of claim 7 , wherein searching the bank of library feature vectors comprises generating a ranked list of feature vectors from the bank of library feature vectors.

15. The method of claim 14 , wherein generating the ranked list of feature vectors comprises ranking the library feature vectors based, at least in part, on a measure of relevance of the library feature vectors to the current situation feature vector.

16. A server comprising:

a processor;

a memory coupled to the processor, the memory comprising programmed instructions that when executed by the processor cause the processor to:

access, on the server, a plurality of observation samples, each observation sample collected by a sensor on a data collection self-driving vehicle, each observation sample including data on a trajectory of an observed agent in a vicinity of the data collection self-driving vehicle over a predetermined period of time;

generate a library of agent trajectories by:

clustering agent trajectories from at least a first portion of the plurality of observation samples into a plurality of clusters, each cluster in the plurality of clusters containing similar agent trajectories,

randomly selecting a cluster from the plurality of clusters, and

randomly selecting an agent trajectory, to be added to the library of agent trajectories, from the selected cluster;

generate, on the server, a library feature vector for each trajectory in the library of agent trajectories;

assemble, on the server, a bank of library feature vectors based, at least in part, on the library feature vectors, wherein each library feature vector in the bank of library feature vectors represents a possible future trajectory for the agent in the vicinity of the data collection self-driving vehicle; and

provide the bank of library feature vectors to a computing device of a self-driving vehicle.

17. A system comprising the server of claim 16 and the self-driving vehicle, wherein the self-driving vehicle comprises:

at least one sensor;

a computing device including a processor and a memory, the memory storing programmed instructions that when executed by the processor cause the computing device to:

predict a trajectory of an agent in a vicinity of the self-driving vehicle by:

receiving sensor data indicative of a current situation in the vicinity of the self-driving vehicle from the at least one sensor;

generating a current situation feature vector based, at least in part, on the sensor data;

searching the bank of library feature vectors to identify a result feature vector from the bank of library feature vectors that is most relevant to the current situation feature vector; and

predicting the trajectory of the agent based, at least in part, on the result feature vector;

plan an action of the self-driving vehicle based, at least in part, on the predicted trajectory of the agent; and

operate the self-driving vehicle according to the planned action.

18. The system of claim 17 , wherein the self-driving vehicle comprising a self-driving car.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 9, 2024
From: DIRECT CURSUS TECHNOLOGY L.L.C
To: Y.E. HUB ARMENIA LLC
Reel/Frame 068534/0687 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 2, 2023
From: YANDEX SELF DRIVING GROUP LLC
To: DIRECT CURSUS TECHNOLOGY L.L.C
Reel/Frame 065447/0048 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 9, 2022
From: YANGEL, BORIS KONSTANTINOVICH; BIKTAIROV, YURY ALEKSANDROVICH
To: YANDEX SELF DRIVING GROUP LLC
Reel/Frame 058938/0920 →
Priority Claims (1)
RU 2021115369 · May 28, 2021 · national
Continuity (1)
Related Publication 20220388532A1 · Dec 8, 2022
References Cited (21)
US 9911346B2 · Klinger et al. · 2018 [cited by applicant]
US 10801841B1 · Rintoul · 2020 [cited by examiner]
US 10915524B1 · Gupta · 2021 [cited by examiner]
US 20170228507A1 · Bottinger · 2017 [cited by examiner]
US 20180374359A1 · Li et al. · 2018 [cited by applicant]
US 20190102630A1 · Bamba · 2019 [cited by examiner]
US 20190179858A1 · Douze · 2019 [cited by examiner]
US 20200346093A1 · Ono · 2020 [cited by examiner]
US 20200361483A1 · Yonushonis · 2020 [cited by examiner]
US 20200379461A1 · Singh · 2020 [cited by examiner]
US 20210146963A1 · Li · 2021 [cited by examiner]
US 20210150350A1 · Gao et al. · 2021 [cited by applicant]
CN 111114543A · 2020 [cited by applicant]
CN 111114543B · 2020 [cited by applicant]
RU 2699177C2 · 2019 [cited by applicant]
Biktairov et al. “PRANK: motion Prediction based on RANKing” Published on Oct. 22, 2020, 34th Conference on Neural Information Processing Systems (NeurIPS 2020), Vancouver, Canada, https://arxiv.org/abs/2010.12007v1. [cited by applicant]
Russian Search Report dated May 23, 2023 issued in respect of the counterpart Russian Patent Application No. RU 2021115369. [cited by applicant]
Biktairov et al.,“PRANK: motion Prediction based on RANKing”, Published on Oct. 22, 2020, https://arxiv.org/abs/2010.12007v1. [cited by applicant]
Malkov et al.,“Efficient and Robust Approximate Nearest Neighbor Search Using Hierarchical Navigable Small World Graphs”, IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 42, Issue: 4, Apr. 1, 2020, … [cited by applicant]
Rudenko et al.,“Human MotionTrajectory Prediction: A Survey”, Published on May 15, 2019, arXiv:1905.06113v2 [cs.RO]. [cited by applicant]
European Search Report dated Jul. 4, 2022 issued in respect of the European Patent Application No. 22154048.7. [cited by applicant]