IP Library Granted Patent US 12,209,877
Granted Patent B2
US 12,209,877 · App. 17/886,547 · Granted Jan 28, 2025

Adaptive and personalized navigation system

Inventors: Andrew R. Golding (Sunnyvale, CA); Jens Eilstrup Rasmussen (San Francisco, CA)
Assignee: GOOGLE LLC
G01C21/3492G01C21/3484G01C21/36
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,209,877
App. No.
17/886,547
Granted
Jan 28, 2025
Kind
B2
Abstract

Adaptive navigation techniques are disclosed that allow navigation systems to learn from a user's personal driving history. As a user drives, models are developed and maintained to learn or otherwise capture the driver's personal driving habits and preferences. Example models include road speed, hazard, favored route, and disfavored route models. Other attributes can be used as well, whether based on the user's personal driving data or driving data aggregated from a number of users. The models can be learned under explicit conditions (e.g., time of day/week, driver ID) and/or under implicit conditions (e.g., weather, drivers urgency, as inferred from sensor data). Thus, models for a plurality of attributes can be learned, as well as one or more models for each attribute under a plurality of conditions. Attributes can be weighted according to user preference. The attribute weights and/or models can be used in selecting a best route for user.

Claims (67)

1. A computer-implemented method for updating map data, comprising:

obtaining, by one or more processors, sensor data from one or more vehicle sensors of a vehicle during a driving session traversing one or more road segments, wherein map data available to the vehicle comprises the one or more road segments;

identifying, by the one or more processors, whether the vehicle is traveling along a path which is distinct from the one or more road segments, based on the sensor data and the map data available to the vehicle;

determining, by the one or more processors, an inference associated with an update to be made to the map data available to the vehicle, based on information associated with the path which is distinct from the one or more road segments by implementing a navigation system configured to learn in real-time a presence of a first road segment not found in the map data available to the vehicle, based on speed information associated with the vehicle along the path and a comparison of global positioning system data associated with the path with the map data available to the vehicle; and

updating, by the one or more processors, the map data available to the vehicle based on the inference to include the first road segment.

2. The computer-implemented method of claim 1 , wherein updating the map data available to the vehicle includes removing one or more road segments from the one or more road segments.

3. The computer-implemented method of claim 1 , wherein updating the map data available to the vehicle includes adding one or more road segments to the map data.

4. The computer-implemented method of claim 1 , wherein updating the map data available to the vehicle includes modifying one or more road segments from the one or more road segments.

5. The computer-implemented method of claim 1 , further comprising providing, by the one or more processors, information associated with updating the map data to a service which provides the map data to the vehicle.

6. The computer-implemented method of claim 1 , further comprising receiving, by the one or more processors from a user associated with the vehicle, information associated with the update to be made to the map data available to the vehicle.

7. The computer-implemented method of claim 1 , further comprising identifying potentially hazardous conditions associated with the first road segment based on the sensor data, the speed information associated with the vehicle, and an expected speed associated with the first road segment.

8. The computer-implemented method of claim 1 , wherein at least part of a route to a destination includes the one or more road segments, the method further comprising:

storing, by the one or more processors, the updated map data in a memory; and

computing, by the one or more processors, an updated route to the destination based on the updated map data.

9. The computer-implemented method of claim 8 , wherein computing, by the one or more processors, the updated route to the destination based on the updated map data, comprises:

generating a plurality of candidate routes to the destination based on a location of the vehicle and the updated map data,

accessing one or more conditional variant models learned from previous driving sessions and which are associated with a target attribute of the plurality of candidate routes,

probabilistically determining which of the one or more conditional variant models to apply to the driving session by evaluating probabilities assigned to each of the one or more conditional variant models based on the driving session,

scoring the plurality of candidate routes using the determined conditional variant model, and

automatically selecting one of the plurality of candidate routes as the updated route to the destination or providing at least one of the plurality of candidate routes for selection as the updated route by a user associated with the vehicle, based on the scoring of the plurality of candidate routes.

10. The computer-implemented method of claim 1 , wherein

the first road segment connects to a second road segment among the one or more road segments, and

determining, by the one or more processors, the inference associated with the update to be made to the map data available to the vehicle, based on information associated with the path which is distinct from the one or more road segments, comprises inferring the first road segment has been removed or reconstructed when the path is spaced apart from the first road segment and the vehicle travels along the path to connect to the second road segment.

11. A computing system, comprising:

one or more processors; and

one or more memories including instructions that, when executed by the one or more processors, cause the processors to perform operations, the operations comprising:

obtaining sensor data from one or more vehicle sensors of a vehicle during a driving session traversing one or more road segments, wherein map data available to the vehicle comprises the one or more road segments,

identifying whether the vehicle is traveling along a path which is distinct from the one or more road segments, based on the sensor data and the map data available to the vehicle,

determining an inference associated with an update to be made to the map data available to the vehicle, based on information associated with the path which is distinct from the one or more road segments by implementing a navigation system configured to learn in real-time a presence of a first road segment not found in the map data available to the vehicle, based on speed information associated with the vehicle along the path and a comparison of global positioning system data associated with the path with the map data available to the vehicle, and

updating the map data available to the vehicle based on the inference to include the first road segment.

12. The computing system of claim 11 , wherein updating the map data available to the vehicle includes at least one of removing one or more road segments from the one or more road segments, adding one or more road segments to the map data, or modifying one or more road segments from the one or more road segments.

13. The computing system of claim 11 , further comprising identifying potentially hazardous conditions associated with the first road segment based on the sensor data, the speed information associated with the vehicle, and an expected speed associated with the first road segment.

14. The computing system of claim 11 , wherein

at least part of a route to a destination includes the one or more road segments, and

the operations further comprise:

storing the updated map data in at least one of the one or more memories; and

computing an updated route to the destination based on the updated map data.

15. The computing system of claim 14 , wherein computing the updated route to the destination based on the updated map data, comprises:

generating a plurality of candidate routes to the destination based on a location of the vehicle and the updated map data,

accessing one or more conditional variant models learned from previous driving sessions and which are associated with a target attribute of the plurality of candidate routes,

probabilistically determining which of the one or more conditional variant models to apply to the driving session by evaluating probabilities assigned to each of the one or more conditional variant models based on the driving session,

scoring the plurality of candidate routes using the determined conditional variant model, and

automatically selecting one of the plurality of candidate routes as the updated route to the destination or providing at least one of the plurality of candidate routes for selection as the updated route by a user associated with the vehicle, based on the scoring of the plurality of candidate routes.

16. The computing system of claim 11 , wherein

the first road segment connects to a second road segment among the one or more road segments, and

determining the inference associated with the update to be made to the map data available to the vehicle, based on information associated with the path which is distinct from the one or more road segments, comprises inferring the first road segment has been removed or reconstructed when the path is spaced apart from the first road segment and the vehicle travels along the path to connect to the second road segment.

17. A vehicle, comprising:

one or more vehicle sensors;

one or more processors; and

one or more memories including instructions that, when executed by the one or more processors, cause the one or more processors to perform operations, the operations comprising:

obtaining sensor data from the one or more vehicle sensors during a driving session traversing one or more road segments, wherein map data available to the vehicle comprises the one or more road segments,

identifying whether the vehicle is traveling along a path which is distinct from the one or more road segments, based on the sensor data and the map data available to the vehicle,

determining an inference associated with an update to be made to the map data available to the vehicle, based on information associated with the path which is distinct from the one or more road segments by implementing a navigation system configured to learn in real-time a presence of a first road segment not found in the map data available to the vehicle, based on speed information associated with the vehicle along the path and a comparison of global positioning system data associated with the path with the map data available to the vehicle, and

updating the map data available to the vehicle based on the inference to include the first road segment.

18. The vehicle of claim 17 , further comprising identifying potentially hazardous conditions associated with the first road segment based on the sensor data, the speed information associated with the vehicle, and an expected speed associated with the first road segment.

19. The vehicle of claim 17 , wherein

at least part of a route to a destination includes the one or more road segments, and

the operations further comprise:

computing an updated route to the destination based on the updated map data by:

generating a plurality of candidate routes to the destination based on a location of the vehicle and the updated map data,

accessing one or more conditional variant models learned from previous driving sessions and which are associated with a target attribute of the plurality of candidate routes,

probabilistically determining which of the one or more conditional variant models to apply to the driving session by evaluating probabilities assigned to each of the one or more conditional variant models based on the driving session,

scoring the plurality of candidate routes using the determined conditional variant model, and

automatically selecting one of the plurality of candidate routes as the updated route to the destination or providing at least one of the plurality of candidate routes for selection as the updated route by a user associated with the vehicle, based on the scoring of the plurality of candidate routes.

20. The vehicle of claim 17 , wherein

the first road segment connects to a second road segment among the one or more road segments, and

determining the inference associated with the update to be made to the map data available to the vehicle, based on information associated with the path which is distinct from the one or more road segments, comprises inferring the first road segment has been removed or reconstructed when the path is spaced apart from the first road segment and the vehicle travels along the path to connect to the second road segment.

Assignments (2)
CHANGE OF NAME Recorded Aug 31, 2022
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 061364/0128 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 17, 2022
From: GOLDING, ANDREW R.; RASMUSSEN, JENS EILSTRUP
To: GOOGLE INC.
Reel/Frame 060834/0412 →
Continuity (7)
Continuation 16705281 · Dec 6, 2019
Continuation 15804298 · Nov 6, 2017
Continuation 15080781 · Mar 25, 2016
Continuation 14170471 · Jan 31, 2014
Division 12414461 · Mar 30, 2009
Continuation 11556120 · Nov 2, 2006
Related Publication 20230043557A1 · Feb 9, 2023
References Cited (130)
US 5220507A · Kirson · 1993 [cited by applicant]
US 5272638A · Martin et al. · 1993 [cited by applicant]
US 5307419A · Tsujino et al. · 1994 [cited by applicant]
US 5434788A · Seymour et al. · 1995 [cited by applicant]
US 5450343A · Yurimoto et al. · 1995 [cited by applicant]
US 5459304A · Eisenmann · 1995 [cited by applicant]
US 5610821A · Gazis et al. · 1997 [cited by applicant]
US 5933100A · Golding · 1999 [cited by applicant]
US 5948042A · Heimann · 1999 [cited by examiner]
US 6021371A · Fulz · 2000 [cited by applicant]
US 6021372A · Harrington · 2000 [cited by applicant]
US 6028550A · Froeberg et al. · 2000 [cited by applicant]
US 6144917A · Walters et al. · 2000 [cited by applicant]
US 6150961A · Alewine et al. · 2000 [cited by applicant]
US 6178378B1 · Leibold · 2001 [cited by applicant]
US 6202024B1 · Yokoyama et al. · 2001 [cited by applicant]
US 6266615B1 · Jin · 2001 [cited by applicant]
US 6308133B1 · Loffert et al. · 2001 [cited by applicant]
US 6333703B1 · Alewine et al. · 2001 [cited by applicant]
US 6349257B1 · Liu et al. · 2002 [cited by applicant]
US 6351707B1 · Ichikawa · 2002 [cited by applicant]
US 6370475B1 · Breed et al. · 2002 [cited by applicant]
US 6405132B1 · Breed et al. · 2002 [cited by applicant]
US 6426709B1 · Becker et al. · 2002 [cited by applicant]
US 6476731B1 · Miki et al. · 2002 [cited by applicant]
US 6526352B1 · Breed · 2003 [cited by examiner]
US 6542812B1 · Obradovich et al. · 2003 [cited by applicant]
US 6553130B1 · Lemelson et al. · 2003 [cited by applicant]
US 6622084B2 · Cardno et al. · 2003 [cited by applicant]
US 6622087B2 · Anderson · 2003 [cited by applicant]
US 6680674B1 · Park · 2004 [cited by applicant]
US 6728635B2 · Hamada · 2004 [cited by examiner]
US 6754580B1 · Ask et al. · 2004 [cited by applicant]
US 6785595B2 · Kominami et al. · 2004 [cited by applicant]
US 6834232B1 · Malhotra · 2004 [cited by applicant]
US 6888445B2 · Gotfried et al. · 2005 [cited by applicant]
US 6915205B2 · Kim · 2005 [cited by applicant]
US 6923370B2 · Gotfried et al. · 2005 [cited by applicant]
US 7031983B2 · Israni et al. · 2006 [cited by applicant]
US 7053830B2 · Krumm et al. · 2006 [cited by applicant]
US 7071842B1 · Brady, Jr. · 2006 [cited by applicant]
US 7082359B2 · Breed · 2006 [cited by examiner]
US 7185198B2 · Nakamura et al. · 2007 [cited by applicant]
US 7188013B2 · Krimmel · 2007 [cited by examiner]
US 7499800B2 · Kimura · 2009 [cited by examiner]
US 7689321B2 · Karlsson · 2010 [cited by examiner]
US 8014796B2 · Boudreau · 2011 [cited by examiner]
US 8155877B2 · Baudisch · 2012 [cited by examiner]
US 8301641B2 · Rossio · 2012 [cited by examiner]
US 8364398B2 · Rossio · 2013 [cited by examiner]
US 8370060B2 · Rossio · 2013 [cited by examiner]
US 8374791B2 · Holsinger · 2013 [cited by examiner]
US 8930135B2 · Abramovich Ettinger · 2015 [cited by examiner]
US 9020637B2 · Schnittman · 2015 [cited by examiner]
US 9046380B2 · Mori · 2015 [cited by examiner]
US 9222797B2 · Abramovich Ettinger · 2015 [cited by examiner]
US 9243920B2 · Ettinger · 2016 [cited by examiner]
US 9286810B2 · Eade · 2016 [cited by examiner]
US 9297663B1 · Golding et al. · 2016 [cited by applicant]
US 9341498B2 · Aist · 2016 [cited by examiner]
US 9373149B2 · Abhyanker · 2016 [cited by examiner]
US 9581458B2 · Aist · 2017 [cited by examiner]
US 9644988B2 · Aist · 2017 [cited by examiner]
US 10533868B2 · Golding et al. · 2020 [cited by applicant]
US 11625038B2 · Matsui · 2023 [cited by examiner]
US 11747814B2 · Matsui · 2023 [cited by examiner]
US 11847667B2 · Ramirez · 2023 [cited by examiner]
US 20020019703A1 · Levine · 2002 [cited by applicant]
US 20020036584A1 · Jocoy et al. · 2002 [cited by applicant]
US 20020072848A1 · Hamada · 2002 [cited by examiner]
US 20020077745A1 · Ohmura · 2002 [cited by examiner]
US 20020085095A1 · Janssen · 2002 [cited by examiner]
US 20020105423A1 · Rast · 2002 [cited by applicant]
US 20020120396A1 · Boies · 2002 [cited by examiner]
US 20020126044A1 · Gustafson · 2002 [cited by examiner]
US 20020128773A1 · Chowanic et al. · 2002 [cited by applicant]
US 20020198632A1 · Breed et al. · 2002 [cited by applicant]
US 20020198660A1 · Lutter et al. · 2002 [cited by applicant]
US 20030009270A1 · Breed · 2003 [cited by applicant]
US 20030025597A1 · Schofield · 2003 [cited by applicant]
US 20030060973A1 · Matthews et al. · 2003 [cited by applicant]
US 20030112132A1 · Trajkovic et al. · 2003 [cited by applicant]
US 20030125871A1 · Cherveny · 2003 [cited by examiner]
US 20030149530A1 · Stopczynski · 2003 [cited by applicant]
US 20030151541A1 · Oswald et al. · 2003 [cited by applicant]
US 20030191568A1 · Breed · 2003 [cited by applicant]
US 20030210806A1 · Yoichi · 2003 [cited by examiner]
US 20040022416A1 · Lemelson et al. · 2004 [cited by applicant]
US 20040036601A1 · Obradovich · 2004 [cited by applicant]
US 20040049344A1 · Simon et al. · 2004 [cited by applicant]
US 20040078750A1 · Frank · 2004 [cited by applicant]
US 20040130442A1 · Breed et al. · 2004 [cited by applicant]
US 20040130463A1 · Bloomquist et al. · 2004 [cited by applicant]
US 20040193347A1 · Harumoto et al. · 2004 [cited by applicant]
US 20040215382A1 · Breed et al. · 2004 [cited by applicant]
US 20050004903A1 · Tsuda · 2005 [cited by applicant]
US 20050046584A1 · Breed · 2005 [cited by applicant]
US 20050049785A1 · Vergin · 2005 [cited by examiner]
US 20050060069A1 · Breed et al. · 2005 [cited by applicant]
US 20050071119A1 · Obradovich et al. · 2005 [cited by applicant]
US 20050090955A1 · Engelman et al. · 2005 [cited by applicant]
US 20050107955A1 · Isaji et al. · 2005 [cited by applicant]
US 20050125117A1 · Breed · 2005 [cited by examiner]
US 20050134440A1 · Breed · 2005 [cited by applicant]
US 20050137786A1 · Breed et al. · 2005 [cited by applicant]
US 20050182518A1 · Karlsson · 2005 [cited by examiner]
US 20050192727A1 · Shostak et al. · 2005 [cited by applicant]
US 20050225429A1 · Burzio · 2005 [cited by applicant]
US 20050273218A1 · Breed et al. · 2005 [cited by applicant]
US 20060095195A1 · Nishimura et al. · 2006 [cited by applicant]
US 20060271281A1 · Ahn et al. · 2006 [cited by applicant]
US 20110054716A1 · Stahlin · 2011 [cited by examiner]
US 20120062395A1 · Sonnabend · 2012 [cited by examiner]
US 20120316780A1 · Huth · 2012 [cited by examiner]
US 20140132767A1 · Sonnabend · 2014 [cited by examiner]
US 20140297116A1 · Anderson · 2014 [cited by examiner]
US 20150345974A1 · Takahashi · 2015 [cited by examiner]
US 20160189004A1 · Anastassov · 2016 [cited by examiner]
US 20170010618A1 · Shashua · 2017 [cited by examiner]
US 20170147989A1 · Onimaru · 2017 [cited by examiner]
US 20180025235A1 · Fridman · 2018 [cited by examiner]
US 20200109961A1 · Golding et al. · 2020 [cited by applicant]
EP 1193626 · 2002 [cited by applicant]
Burges et al., “Learning to Rank Using Gradient Descent”, Proceedings of the 22 [cited by applicant]
Chen et al., “Vision-Based Autonomous Land Vehicles Guidance in Outdoor Road Environments Using combined Land and Road Following Techniques”, Department of Computer and Information Science, National Chiao Tung Universit… [cited by applicant]
Communication from European Patent Office for European Patent Application No. EP06826074.4, Jan. 3, 2011, 8 pages. [cited by applicant]
Fraser et al., “Usability of Geospatial Metadata of Space—Time Matters”, Bulletin of the American Society for Information Science and Technology, vol. 25, No. 6, Aug. 1999, pp. 24-28. [cited by applicant]
Fukunaga et al., “Hitachi Group Initiatives as ITS Businesses Begin to Take Off”, Hitachi Corporation, pp. 22-27. [cited by applicant]
Meeks et al., “Geospatial Information Utility: an Estimation of the Relevance of Geospatial Information to Users”, Decision Support Systems, 2003, 17 pages. [cited by applicant]
Summons to Attend Oral Proceedings Pursuant to Rule 115(1) EPC for European Patent Application No. EP06826074.4, Oct. 27, 2010, 6 pages. [cited by applicant]