Patent ID: 9677903
Date: 2017-06-13
CPC Classifications: G01C,G05D,G06F,G08G

Claim:
1. A system for determining whether to notify a traveler of events proximate to a travel path, comprising: a global positioning receiver to obtain a current travel position of user; a user data store configured to store, an identifier of the user in association with (i) contact information for contacting the user while traveling and (ii) a user in-route travel path including geographic coordinates defining a start point and an end point of each of multiple contiguous segments between a start location and an end location of the user in-route travel path; an event data store configured to store, for each of multiple events, an event identifier in association with (i) a description of the applicable event and (ii) geographic coordinates defining a location of the applicable event; a processor configured to: receive, from the user, a description of an event of interest to the user, and geographic coordinates of a current travel location of the user along the stored user in-route travel path, establish, based on the received geographic coordinates of the user's current travel location, an event search area for searching for events of interest to the user, including a maximum off-route crow-fly distance from the stored user in-route travel path, determine that one or more of the multiple events identified by the stored event identifiers is of interest to the user, based on the received event description, the established event search area, the stored descriptions of the multiple events, and the stored geographic coordinates of the multiple event locations, determine each of the off-route travel paths that connects each of the determined one or more events to the stored user in-route travel path; compute, for each of the determined off-route travel paths, (i) an off-route driving time from the stored user in-route travel path to the applicable determined event, and (ii) an off-route driving time from the applicable determined event to the stored user in-route travel path, compute for each of the determined one or more events, based on the computed off-route driving time for each of the determined off-route travel paths, a total in-route and off-route driving time to go from the stored user in-route travel path to the applicable determined event and from the applicable determined event to the stored user in-route travel path, determine, based on a total driving time to go from the user's current travel location to the applicable determined event, events that will expire or events that will be closed upon the user's arrival based on the total driving time; identify, for each of the determined one or more events, excluding the events that will expire or the events that will close, the one of the determined off-route travel paths connecting the stored user in-route travel path to the applicable determined event that has a minimum computed off-route driving time to go from the stored user in-route travel path to the applicable determined event and from the applicable determined event to the stored in-route travel path, identify, for each of the determined one or more events, the one or more of the determined off-route travel paths connecting the stored user in-route travel path to the applicable determined event that has a minimum computed total in-route and off-route driving time to go from the stored user in-route travel path to the applicable determined event and from the applicable determined event to the stored user in-route travel path, and direct transmission to the user in accordance with the stored user contact information, for each of the determined one or more events, at least one of (i) the minimum computed off-route driving time and the identified off-route travel path having the minimum computed off-route driving time, and (ii) the minimum computed total in-route and off-route driving time and the identified one or more off-route travel paths having the minimum computed total in-route and off-route driving time.