System and method for presenting a computed route

Information

  • Patent Grant
  • 8577598
  • Patent Number
    8,577,598
  • Date Filed
    Tuesday, March 22, 2011
    13 years ago
  • Date Issued
    Tuesday, November 5, 2013
    11 years ago
Abstract
A method for presenting a route includes receiving a starting point and a destination point and computing a route that includes a route segment between the two points. The method further includes determining, based on a user's travel history, whether the route segment is an unfamiliar segment, and identifying, based on the user's travel history, a road that is familiar to the user. The method includes providing, in a format that distinguishes the familiar road from the computed route, the computed route and the familiar road relative to the unfamiliar segment for presentation of the familiar road within a scaled range of the unfamiliar segment.
Description
BACKGROUND

Computer mapping applications allow a user to view maps of regions around the world. Mapping applications typically allow the user to zoom in and zoom out of a map so that the user can explore the region at various levels, e.g., street level, city level, state level. One common feature of the typical mapping application is the ability to compute a route between two locations in response to receiving a starting point and a destination point from the user. Typically, the computed route is highlighted on a map of the region containing the starting and destination points. The user can magnify sections of the map to see the route in greater detail. For example, the map can be magnified to display the streets on the route, as well as the streets surrounding the route. In some cases, the mapping application can also display landmarks and/or points of interest along the route.


The computed route is typically the shortest path between the starting point and destination point. Nevertheless, the mapping application can take into consideration various factors, such as the size of the streets, i.e., the number of lanes, and whether the streets are one way or bi-directional. This mapping data is typically stored in a storage mechanism, locally or remotely, and accessed by the mapping application in computing the route. Thus, the resulting route need not necessarily be the absolute shortest path, but the most practical path under the conditions considered.


Because the mapping data only provides information about the roads, the mapping application does not take into account factors specific to the user. In particular, the mapping application generally does not consider the user's familiarity with the roads on the route and therefore, the computed route can be disorienting for the user if it comprises several unfamiliar segments. To address this concern, some mapping applications track and store the user's preferences and travel history, e.g., the roads traveled by the user, and use the preferences and travel history to compute the route. This approach, however, can be problematic when the resulting computed route is significantly lengthened to accommodate the familiar roads.


SUMMARY

Accordingly, a method and a device for presenting a route are described. According to one exemplary embodiment, a method for presenting a route includes receiving a starting point and a destination point and computing a route that includes a route segment between the two points. The method further includes determining, based on a user's travel history, whether the route segment is an unfamiliar segment, and identifying, based on the user's travel history, a road that is familiar to the user and that is within a scaled range of the unfamiliar segment. The computed route and the familiar road are then presented in a format that distinguishes the familiar road from the computed route, and the familiar road is represented relative to the unfamiliar segment.


According to another exemplary embodiment, a device includes means for receiving a starting point and a destination point, means configured to compute a route that includes a route segment between the two points, means for determining, based on a user's travel history, whether the route segment is an unfamiliar segment, and means for identifying, based on the user's travel history, a road that is familiar to the user and that is within a scaled range of the unfamiliar segment. The device further includes means for presenting the computed route and the familiar road relative to the unfamiliar segment in a format that distinguishes the familiar road from the computed route.


According to another exemplary embodiment, a device comprises a user interface for receiving a starting point and a destination point, and a routing module configured to compute a route that includes a route segment between the two points. The routing module is also configured to determine, based on a user's travel history, whether the route segment is an unfamiliar segment, and to identify, based on the user's travel history, a road that is familiar to the user and that is within a scaled range of the unfamiliar segment. The device also includes a display that presents the computed route and the familiar road relative to the unfamiliar segment in a format that distinguishes the familiar road from the computed route.





BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings provide visual representations which will be used to more fully describe the representative embodiments disclosed here and can be used by those skilled in the art to better understand them and their inherent advantages. In these drawings, like reference numerals identify corresponding elements, and:



FIG. 1 is a block diagram illustrating an exemplary route device according to an exemplary embodiment;



FIG. 2 is a flow diagram illustrating an exemplary process for presenting a route according to an exemplary embodiment;



FIG. 3 is a flow diagram illustrating an exemplary process for determining whether a route segment is unfamiliar according to an exemplary embodiment;



FIG. 4 is a flow diagram illustrating an exemplary process for identifying a familiar road according to an exemplary embodiment; and



FIGS. 5A-5D are diagrams illustrating an exemplary computed route according to an exemplary embodiment.





DETAILED DESCRIPTION

Various aspects will now be described in connection with exemplary embodiments, including certain aspects described in terms of sequences of actions that can be performed by elements of a computing device or system. For example, it will be recognized that in each of the embodiments, at least some of the various actions can be performed by specialized circuits or circuitry (e.g., discrete and/or integrated logic gates interconnected to perform a specialized function), by program instructions being executed by one or more processors, or by a combination of both. Thus, the various aspects can be embodied in many different forms, and all such forms are contemplated to be within the scope of what is described.


According to one embodiment, a route device receives a starting point and a destination point and computes a route between the two points. The computed route can be divided into a plurality of route segments. Each route segment is analyzed to determine whether the segment is familiar or unfamiliar to the user based on the user's travel history. When a route segment is unfamiliar, a road that is familiar to the user and that is within a scaled range of the unfamiliar segment is identified. After each segment is analyzed, the computed route and the identified familiar road(s) are presented to the user in a format that distinguishes the familiar road(s) from the computed route.


In one embodiment, the computed route can be distinguished from the familiar road(s) in a variety of ways, including, but not limited to, using different colors, line thicknesses, highlighting, line styles, and line flashing to represent the route and the familiar road. In this manner, the computed route can be the most practical route from a starting point to a destination point, and because the user is provided with familiar reference points in otherwise unfamiliar segments of the computed route, the user can feel more comfortable and confident following the computed route.



FIG. 1 is block diagram illustrating an exemplary route device according to an exemplary embodiment. The device 100 includes a means for tracking a position of the device 100. For example, the device 100 can include a positioning system 102 that tracks the position of the device 100. The positioning system 102 can be a well known global positioning system (GPS) that utilizes satellites 104 to determine the device's longitudinal and latitudinal position. The device 100 can also include a map source 106 from which mapping data (not shown) can be retrieved that allows the positioning system 102 to correlate the device's position with a road.


In one embodiment, the device 100 is used in a vehicle that is operated by the user. Accordingly, when the user is traveling in the vehicle, the device 100 is effectively tracking the position of the user and the roads on which the user is traveling.


According to one embodiment, the device 100 includes a means for recording the user's travel history that stores and manages the roads on which the user has traveled. For example, the device 100 can include a travel history manager 130 that is configured to receive travel data 142, i.e., a road on which the user is presently traveling, from the positioning system 102 and to store the travel data 142 in a storage mechanism, such as a database 140. In one embodiment, the travel history manager 130 manages the travel data 142 and tracks how frequently the user has traveled on a road.


In an exemplary embodiment, the device 100 includes a means for computing a route between a starting point and a destination point. For example, the device 100 can include a routing module 120 that is configured to compute a route between the starting point and the destination point. The routing module 120 is coupled to a means for receiving the starting point and the destination point, such as a user interface 110. In one embodiment, the user interface 110 can prompt the user to enter the starting point and the destination point. In another embodiment, the user interface 110 can prompt the user to enter only the destination point, and the routing module 120 can use the present position of the user as the starting point. Given the starting point and the destination point, the routing module 120 can compute a route between the two points by using mapping data retrieved from the map source 106, as is well known in the art.


According to an exemplary embodiment, the routing module 120 is configured to divide the computed route into a plurality of route segments and to determine whether a route segment is unfamiliar to the user based on the travel history of the user. In one embodiment, the routing module 120 uses the travel history manager 130 to search the travel data 142 to determine whether any portion of a route segment matches a road that is familiar to the user. When no portion of the route segment matches a familiar road, the route segment is an unfamiliar segment, and the routing module 120 is configured to identify one or more roads that are familiar to the user and that are within a scaled range of the unfamiliar segment. The computed route and identified familiar road(s) are then presented on a display 110 in a format that distinguishes the familiar road(s) from the computed route such that the user can orient herself in the unfamiliar segment(s) of the computed route.


Although not shown in FIG. 1, the positioning system 102 and map source 106 can be external to the route device 100. In one embodiment, the map source 106 can reside on a server (not shown) communicatively coupled to the positioning system 102 and the route device 100 via a network, such as the Internet. In addition, the travel data 142 can be stored on an external storage mechanism, e.g., database 140, on the network, e.g., the Internet, so that the travel data 142 for a particular user can be retrieved using different route devices 100. Thus, for example, the user can operate a friend's vehicle that is also equipped with the route device 100, and the route device 100 can identify roads familiar to the user, regardless of whether the user is the vehicle's regular user.



FIG. 2 is a flow diagram illustrating an exemplary process for presenting a route using the route device 100 according to one embodiment. Referring to FIGS. 1 and 2, the exemplary process begins when the routing module 120 receives a starting point and a destination point (block 200). As stated above, the user interface 110 can prompt the user to enter the starting and destination points, i.e., addresses, intersections, cities, etc. In another embodiment, the user interface 110 can prompt the user to enter the destination point, and the routing module 120 can retrieve the present position of the user from the positioning system 102 and use the present position as the starting point. Once the starting and destination points have been received, the routing module 120 can compute one or more routes between the two points (block 202) using any well known route computing technique, e.g., shortest distance, shortest distance using wide streets, fastest route, etc. An exemplary route is illustrated in FIG. 5A, where point A represents the starting point 501 and point B represents the destination point 503. If more than one route 500 is computed, the user can be prompted to select a route 500 for presentation.


According to an exemplary embodiment, the routing module 120 may divide the (selected) computed route 500 into a plurality of route segments (block 204). For example, as shown in FIG. 5B, the computed route 500 is divided into three (3) route segments, x (502a), y (502b) and z (502c). In one embodiment, the route segments 502a-502c can be equal in length and based on the overall length of the computed route 500. For example, the length of each route segment 502a-502c can be the smaller of a pre-selected fraction of the computed route length, e.g., ⅛ of the total length, or a predetermined length, e.g., 10 miles. In another embodiment, the route segments 502a-502c need not be equal in length, but based on characteristics of the computed route 500 instead. For example, the route segments 502a-502c can be based on a change of direction, or on a change of the road being traversed, or on a change of terrain, e.g., from a valley to mountains, from a city to a suburb. In another embodiment, the route segments 502a-502c can be based on a combination of factors, including but not limited to those mentioned above.


Referring again to FIG. 2, after the computed route 500 has been divided into route segments 502a-502c, the routing module 120 analyzes a first route segment (e.g., 502a) (block 206) and determines whether the route segment 502a is unfamiliar to the user (block 207). FIG. 3 is a flow diagram illustrating a process for determining whether the route segment 502a is unfamiliar according to one embodiment.


Referring to FIG. 1 and FIG. 3, the exemplary process begins by tracking the user's position while the user is traveling and correlating the position with a road (block 300). As stated above, the positioning system 102 tracks the position of the user in the vehicle. For example, the positioning system 102 can be a global positioning system (GPS) that uses a receiver in the vehicle to receive broadcasts from GPS satellites 104. Based on signals received from at least three satellites, the positioning system 102 can accurately determine its position in longitudinal and latitudinal coordinates. When coupled with a map source 106, the positioning system 102 can correlate the position with a road. Such positioning systems 102 are well known and are quickly becoming standard components in vehicles.


According to an exemplary embodiment, the roads traveled by the user, i.e., the travel data 142, are collected by the travel history manager 130 and stored in a database 140 (block 302). When the routing module 120 analyzes a route segment 502a to determine whether it is unfamiliar, the routing module 120 parses the route segment into its component roads and uses the travel history manager 130 to compare each road of the route segment with the travel data 142 (block 304). If any road of the route segment matches a road traveled by the user (block 305), the route segment is determined to be familiar (block 306). In one embodiment, the user need not have actually traveled on that particular part of the route segment that matches the road traveled by the user. In other words, the road is familiar to the user so long as the user has traveled on some portion of the matching road. If none of the roads of the route segment match a road traveled by the user (block 305), the route segment is determined to be unfamiliar (block 308).


Referring again to FIG. 2, when the route segment 502a is determined to be an unfamiliar segment (block 207), the routing module 120 identifies, based on the user's travel history/data 142, one or more roads that are familiar to the user and that are within a scaled range of the unfamiliar segment (block 208). In one embodiment, the scaled range is based on the length of the unfamiliar segment. For example, the scaled range can be the smaller of a pre-selected fraction, e.g., ⅕, of the length of the unfamiliar segment and a predetermined distance, e.g., 1 mile. In another embodiment, the user can incrementally expand the scaled range in order to find the nearest familiar road when no familiar roads are identified within the initial scaled range.



FIG. 4 is a flow diagram illustrating a process for identifying a familiar road according to an exemplary embodiment. Referring to FIG. 1 and FIG. 4, the exemplary process begins by determining the scaled range based on the length of the unfamiliar segment (block 400). In one embodiment, shown in FIG. 5C, the scaled range, SR (504), is a circle with radius, r, around a point on the unfamiliar segment 502c. The radius, r, can be based on the length of the unfamiliar segment. The routing module 120 then identifies roads within the scaled range 504 on which the user has traveled (block 402). In one embodiment, the routing module 120 can use the travel history manager 130 to search the travel data 142 for traveled roads falling within the scaled range 504. As is shown in FIG. 5C, the routing module 120 has identified three (3) traveled roads, TR1 (510a), TR2 (510b), TR3 (510c). As noted above, the portions of the identified traveled roads that fall within the scaled range 504 can be portions on which the user has not actually traveled. Thus, the user need only be familiar with the road name and not necessarily with the portion of the road near the unfamiliar segment.


According to one exemplary embodiment, once the traveled roads 510a-510c have been identified (block 402), the routing module 120 considers a first traveled road, e.g., 510a, (block 404), and determines the distance, d, between the road 510a and the unfamiliar segment 502c (block 406). Then, the routing module 120 determines the number of times, n, the user has traveled on the road 510a (block 408). Based on the distance, d, and the frequency with which the user has traveled on the road 510a, the routing module 120 calculates a weight for the road 510a (block 410). For example, in one embodiment, the weight, W, can be calculated in the following manner:

W=n×1/(1+d)


If more traveled roads exist (block 411), the next traveled road, e.g., 510b, is considered (block 412) and process blocks 406 through 410 are repeated. Once all of the identified traveled roads 510a-510c have been weighted, the routing module 120 can select the familiar road based on its weight (block 414). In addition, the routing module 120 can select the familiar road based only on its distance from the unfamiliar segment, or only on the number of times the user has traveled on that road, or any weighted combination of the two. Alternatively, the routing module 120 can merely select all of the familiar roads that are within the scaled range without regard to ranking them by familiarity or proximity.


Referring again to FIG. 2, once the one or more familiar roads are identified (block 208), the routing module 120 determines whether more route segments 502a-502c need to be processed (block 209). If such is the case, the routing module 120 proceeds to the next route segment, e.g., 502b, (block 210) and processing blocks 207 and 208 are repeated for each remaining route segment. After all of the route segments 502a-502c have been analyzed, the computed route 500 and the familiar road(s) are displayed to the user (block 212) in a format that distinguishes the familiar roads from the computed route. As stated above, the computed route 500 can be distinguished from the familiar roads in a number of ways, including, but not limited to, using different colors, line thicknesses, highlighting, line flashing and line styles, as is shown in FIG. 5D. In one embodiment, familiar roads are presented using a presentation scheme different from the presentation scheme of the computed route and/or of the surrounding map information. That is, the familiar road or roads can be presented according to a common scheme that differs from the scheme of other elements of the map.


Although FIG. 2 illustrates an example in which the route is divided into multiple segments, it should be understood that dividing the route into segments is optional and the route can, in effect, be processed as a single segment. That is, blocks 204, 209, and 210 may be omitted from the figure and the route can be considered as a single segment without departing from the subject matter described herein.


In one exemplary embodiment, an alternative route can be computed in response to the user selecting one or more of the familiar roads 512. In this embodiment, the alternative route replaces an unfamiliar road in an unfamiliar route segment with the familiar road selected by the user. In this manner, the user can customize the computed route.


The executable instructions of a computer program as illustrated in FIG. 2, FIG. 3 and FIG. 4 can be embodied in any computer readable medium for use by or in connection with an instruction execution system, apparatus, or device, such as a computer based system, processor containing system, or other system that can fetch the instructions from the instruction execution system, apparatus, or device and execute the instructions.


As used here, a “computer readable medium” can be any means that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device. The computer readable medium can be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, device, or propagation medium.


More specific examples (a non-exhaustive list) of the computer readable medium can include the following: a wired network connection and associated transmission medium, such as an ETHERNET transmission system, a wireless network connection and associated transmission medium, such as an IEEE 802.11(a), (b), or (g) or a BLUETOOTH transmission system, a wide-area network (WAN), a local-area network (LAN), the Internet, an intranet, a portable computer diskette, a random access memory (RAM), a read only memory (ROM), an erasable programmable read only memory (EPROM or Flash memory), an optical fiber, a portable compact disc (CD), a portable digital video disc (DVD), and the like.


According to the exemplary embodiments, a computed route from a starting point to a destination point is displayed along with one or more familiar roads near unfamiliar segments of the computed route. By displaying the familiar roads near unfamiliar segments of the route, the user can orient herself with reference to the familiar roads. Accordingly, the user can follow the computed route with more confidence and less anxiety.


It will be appreciated by those of ordinary skill in the art that the concepts and techniques described here can be embodied in various specific forms without departing from the essential characteristics thereof. The presently disclosed embodiments are considered in all respects to be illustrative and not restrictive. The scope of the invention is indicated by the appended claims, rather than the foregoing description, and all changes that come within the meaning and range of equivalence thereof are intended to be embraced.

Claims
  • 1. A method for determining a route, the method comprising: identifying, by a user device, a plurality of locations of the user device;generating a user's travel history including information identifying the plurality of locations of the user device;receiving a starting point and a destination point;computing a route from the starting point to the destination point, wherein the computed route comprises a route segment;determining, based on a user's travel history, that the route segment does not include a location from the plurality of locations, wherein the route segment is an unfamiliar segment;identifying, based on the user's travel history, a location from the plurality of locations that is associated with the unfamiliar route segment; andproviding, in a format that distinguishes the location from the computed route, the computed route and the location relative to the unfamiliar segment for presentation of the location within a scaled range of the unfamiliar segment.
  • 2. The method of claim 1 wherein receiving the starting point comprises determining a present position of the user.
  • 3. The method of claim 1 wherein receiving the starting point and the destination point includes prompting a user to enter the starting point and the destination point.
  • 4. The method of claim 1 wherein computing the route comprises: retrieving mapping data from a map source; andusing the mapping data to create the computed route.
  • 5. The method of claim 1 further comprising determining a plurality of roads on which the user has traveled and storing the plurality of traveled roads to identify a familiar road.
  • 6. The method of claim 5 wherein determining the plurality of traveled roads includes using an electronic positioning system to track the user's position while the user is traveling and using a map source to correlate the user's position with a road.
  • 7. The method of claim 5 wherein identifying the familiar road includes: searching the plurality of traveled roads to identify a portion of a traveled road that falls within the scaled range of the unfamiliar segment, wherein the portion of the traveled road within the scaled range is a portion on which the user has not traveled.
  • 8. The method of claim 5 wherein identifying the familiar road includes: searching the plurality of traveled roads to identify a portion of a traveled road that falls within the scaled range of the unfamiliar segment, wherein the portion of the traveled road within the scaled range is a portion on which the user has traveled.
  • 9. The method of claim 5 wherein identifying the familiar road includes: searching the plurality of traveled roads to identify a plurality of traveled roads that fall within the scaled range of the unfamiliar segment; andselecting the familiar road from the identified plurality of traveled roads based on a distance between each of the identified traveled roads and the unfamiliar segment and a frequency with which the user has traveled on each of the identified plurality of traveled roads.
  • 10. The method of claim 1 further comprising: determining an alternative route from the starting point to the destination point that includes the location associated with a road that is a familiar road instead of the unfamiliar segment; andproviding the alternative route for presentation to the user.
  • 11. A system for determining a route, the system comprising: a positioning system configured to track the user's position while the user is traveling to identifying, by a user device, a plurality of locations of the user device;a storage component configured to store a user's travel history including information identifying the plurality of locations of the user devicea routing module configured to receive a starting point and a destination point, to compute a route from the starting point to the destination point, wherein the computed route comprises a route segment, to determine, based on a user's travel history, that the route segment does not include a location from the plurality of locations, wherein the route segment is an unfamiliar segment, to identify, based on the user's travel history, a location from the plurality of locations that is associated with the unfamiliar route segment, and to provide, in a format that distinguishes the location from the computed route, the computed route and the location relative to the unfamiliar segment for presentation of the location within a scaled range of the unfamiliar segment.
  • 12. The system of claim 11 wherein the positioning system is configured to determine the starting point based on a current position of a device associated with the user.
  • 13. The system of claim 11 further comprising: a map source configured to correlate the position of the user with a road on a map; andthe storage component configured to store a plurality of roads on which the user has traveled.
  • 14. The system of claim 13 wherein the routing module is further configured to search the plurality of traveled roads, to identify a plurality of traveled roads that fall within the scaled range of the unfamiliar segment, and to select a familiar road from the identified plurality of traveled roads based on a distance between each of the identified traveled roads and the unfamiliar segment and a frequency with which the user has traveled on each of the identified plurality of traveled roads.
  • 15. A tangible computer readable storage medium containing stored programming instructions for determining a route, the programming instructions for: identifying, by a user device, a plurality of locations of the user device;generating a user's travel history including information identifying the plurality of locations of the user device;receiving a starting point and a destination point;computing a route from the starting point to the destination point, wherein the computed route comprises a route segment;determining, based on a user's travel history, that the route segment does not include a location from the plurality of locations, wherein the route segment is an unfamiliar segment;identifying, based on the user's travel history, a location from the plurality of locations that is associated with the unfamiliar route segment; andproviding, in a format that distinguishes the location from the computed route, the computed route and the location relative to the unfamiliar segment for presentation of the location within a scaled range of the unfamiliar segment.
  • 16. A method for presenting a route, the method comprising: identifying, by a user device, a plurality of locations of the user device;generating a user's travel history including information identifying the plurality of locations of the user device;receiving a route from a starting point to a destination point, wherein the route comprises a route segment;determining, based on a user's travel history, that the route segment does not include a location from the plurality of locations, wherein the route segment is an unfamiliar segment;determining, based on the user's travel history, a location from the plurality of locations associated with the unfamiliar segment;presenting the route; andin response to determining the location is within a scaled range of the unfamiliar segment, presenting the location relative to the unfamiliar segment in a format that distinguishes the location from the route.
  • 17. The method of claim 16 further comprising determining a plurality of roads on which the user has traveled and storing the plurality of traveled roads to identify a familiar road.
  • 18. The method of claim 17 wherein determining the plurality of traveled roads includes using an electronic positioning system to track the user's position while the user is traveling and using a map source to correlate the user's position with a road.
  • 19. The method of claim 17 wherein identifying the familiar road includes: searching the plurality of traveled roads to identify a portion of a traveled road that falls within the scaled range of the unfamiliar segment, wherein the portion of the traveled road within the scaled range is a portion on which the user has not traveled.
  • 20. The method of claim 17 wherein identifying the familiar road includes: searching the plurality of traveled roads to identify a portion of a traveled road that falls within the scaled range of the unfamiliar segment, wherein the portion of the traveled road within the scaled range is a portion on which the user has traveled.
  • 21. The method of claim 17 wherein identifying the familiar road includes: searching the plurality of traveled roads to identify a plurality of traveled roads that fall within the scaled range of the unfamiliar segment; andselecting the familiar road from the identified plurality of traveled roads based on a distance between each of the identified traveled roads and the unfamiliar segment and a frequency with which the user has traveled on each of the identified plurality of traveled roads.
  • 22. The method of claim 16 further comprising: determining an alternative route from the starting point to the destination point that includes the familiar road instead of the unfamiliar segment; andproviding the alternative route for presentation to the user.
  • 23. A system for presenting a route, the system comprising: a positioning system configured to track the user's position while the user is traveling to identifying, by a user device, a plurality of locations of the user device;a storage component configured to store a user's travel history including information identifying the plurality of locations of the user devicea routing module configured to receive a route from a starting point to a destination point, wherein the route comprises a route segment, to determine, based on a user's travel history, that the route segment does not include a location from the plurality of locations, wherein the route segment is an unfamiliar segment, determine, based on the user's travel history, a location from the plurality of locations that is associated with the unfamiliar segment; anda display configured to present the route and, in response to a determination that the location is within a scaled range of the unfamiliar segment, present the location relative to the unfamiliar segment in a format that distinguishes the location from the route.
  • 24. The system of claim 23 further comprising: a map source configured to correlate the position of the user with a road on a map; andthe storage component configured to store a plurality of roads on which the user has traveled.
  • 25. The system of claim 24 wherein the routing module is further configured to search the plurality of traveled roads, to identify a plurality of traveled roads that fall within the scaled range of the unfamiliar segment, and to select a familiar road from the identified plurality of traveled roads based on a distance between each of the identified traveled roads and the unfamiliar segment and a frequency with which the user has traveled on each of the identified plurality of traveled roads.
  • 26. A tangible computer readable storage medium containing stored programming instructions for determining a route, the programming instructions for: identifying, by a user device, a plurality of locations of the user device;generating a user's travel history including information identifying the plurality of locations of the user device;receiving a route from a starting point to a destination point, wherein the route comprises a route segment;determining, based on a user's travel history, that the route segment does not include a location from the plurality of locations, wherein the route segment is an unfamiliar segment;determining, based on the user's travel history, a location from the plurality of locations associated with the unfamiliar segment;presenting the route; andin response to determining the location is within a scaled range of the unfamiliar segment, presenting the location relative to the unfamiliar segment in a format that distinguishes the location from the route.
RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No. 12/715,452 titled, “SYSTEM AND METHOD FOR PRESENTING A COMPUTED ROUTE,” filed Mar. 2, 2010, now U.S. Pat. No. 7,991,548, which is a continuation of U.S. patent application Ser. No. 11/279,781 titled, “SYSTEM AND METHOD FOR PRESENTING A COMPUTED ROUTE,” filed Apr. 14, 2006 now U.S. Pat. No. 7,702,456, which are commonly owned with this application, the entire disclosure of which are here incorporated by reference.

US Referenced Citations (174)
Number Name Date Kind
5177685 Davis et al. Jan 1993 A
5220507 Kirson Jun 1993 A
5371678 Nomura Dec 1994 A
5452212 Yokoyama et al. Sep 1995 A
5493692 Theimer et al. Feb 1996 A
5528501 Hanson Jun 1996 A
5659476 LeFebvre et al. Aug 1997 A
5682525 Bouve et al. Oct 1997 A
5729457 Seymour Mar 1998 A
5754939 Herz et al. May 1998 A
5790976 Boll et al. Aug 1998 A
5802492 DeLorme et al. Sep 1998 A
5987380 Backman et al. Nov 1999 A
6014090 Rosen et al. Jan 2000 A
6023241 Clapper Feb 2000 A
6047235 Hiyokawa et al. Apr 2000 A
6049711 Ben-Yehezkel et al. Apr 2000 A
6098015 Nimura et al. Aug 2000 A
6124826 Garthwaite et al. Sep 2000 A
6127945 Mura-Smith Oct 2000 A
6212474 Fowler et al. Apr 2001 B1
6249742 Friederich Jun 2001 B1
6282492 Gorai et al. Aug 2001 B1
6321158 DeLorme et al. Nov 2001 B1
6324467 Machii et al. Nov 2001 B1
6334086 Park et al. Dec 2001 B1
6339746 Sugiyama et al. Jan 2002 B1
6349203 Asaoka et al. Feb 2002 B1
6366856 Johnson Apr 2002 B1
6415226 Kozak Jul 2002 B1
6430498 Maruyama et al. Aug 2002 B1
6459987 Krull et al. Oct 2002 B1
6466938 Goldberg Oct 2002 B1
6477526 Hayashi et al. Nov 2002 B2
6480783 Myr Nov 2002 B1
6484092 Seibel Nov 2002 B2
6505118 Chowanic Jan 2003 B2
6510379 Hasegawa et al. Jan 2003 B1
6526349 Bullock et al. Feb 2003 B2
6539080 Bruce et al. Mar 2003 B1
6542749 Tanaka et al. Apr 2003 B2
6546336 Matsuoka et al. Apr 2003 B1
6549768 Fraccaroli Apr 2003 B1
6567743 Mueller et al. May 2003 B1
6577949 Robinson et al. Jun 2003 B1
6580999 Maruyama et al. Jun 2003 B2
6611754 Klein Aug 2003 B2
6618593 Drutman et al. Sep 2003 B1
6633812 Martin et al. Oct 2003 B1
6654681 Kiendl et al. Nov 2003 B1
6662105 Tada et al. Dec 2003 B1
6694252 Ukita Feb 2004 B2
6721650 Fushiki et al. Apr 2004 B2
6721653 Watanabe et al. Apr 2004 B2
6748317 Maruyama et al. Jun 2004 B2
6762696 Hulverscheidt et al. Jul 2004 B2
6765998 Bruce et al. Jul 2004 B2
6766245 Padmanabhan Jul 2004 B2
6778903 Robinson et al. Aug 2004 B2
6813502 Son et al. Nov 2004 B2
6820005 Matsuda et al. Nov 2004 B2
6895329 Wolfson May 2005 B1
6961658 Ohler Nov 2005 B2
7096233 Mori et al. Aug 2006 B2
7123189 Lalik et al. Oct 2006 B2
7130740 Vanegas et al. Oct 2006 B2
7149625 Mathews et al. Dec 2006 B2
7158876 Crook Jan 2007 B2
7231293 Lapstun et al. Jun 2007 B2
7236799 Wilson et al. Jun 2007 B2
7243134 Bruner et al. Jul 2007 B2
7271742 Sheha et al. Sep 2007 B2
7283628 Stein et al. Oct 2007 B2
7333820 Sheha et al. Feb 2008 B2
7333889 Hashizume Feb 2008 B2
7424363 Cheng et al. Sep 2008 B2
7538691 Horstemeyer May 2009 B2
7590486 Okude et al. Sep 2009 B2
7617542 Vataja Nov 2009 B2
7624024 Levis et al. Nov 2009 B2
7694156 Gammel et al. Apr 2010 B2
7698061 Singh Apr 2010 B2
7702456 Singh Apr 2010 B2
7706280 Raciborski et al. Apr 2010 B2
7729947 Philbin et al. Jun 2010 B1
7809500 Couckuyt et al. Oct 2010 B2
7874521 Shuster Jan 2011 B2
7912642 Zhao et al. Mar 2011 B2
7991548 Singh Aug 2011 B2
20010019309 Saeki et al. Sep 2001 A1
20010029425 Myr Oct 2001 A1
20010044310 Lincke Nov 2001 A1
20010047241 Khavakh et al. Nov 2001 A1
20010056325 Pu et al. Dec 2001 A1
20020070862 Francis et al. Jun 2002 A1
20020120396 Boies et al. Aug 2002 A1
20020128773 Chowanic et al. Sep 2002 A1
20020152020 Seibel Oct 2002 A1
20020165662 Maruyama et al. Nov 2002 A1
20030055558 Watanabe et al. Mar 2003 A1
20030105585 Ukita Jun 2003 A1
20030109985 Kotzin Jun 2003 A1
20030126100 Chithambaram Jul 2003 A1
20030144794 Schuessler Jul 2003 A1
20030163333 Podgurny et al. Aug 2003 A1
20030182052 DeLorme et al. Sep 2003 A1
20030191584 Robinson et al. Oct 2003 A1
20030195695 Maruyama et al. Oct 2003 A1
20040106415 Maeda et al. Jun 2004 A1
20040117110 Sasajima Jun 2004 A1
20040158393 Oonishi et al. Aug 2004 A1
20040172191 Vitikainen Sep 2004 A1
20040186661 Barton Sep 2004 A1
20040192339 Wilson et al. Sep 2004 A1
20040196163 Takenaga et al. Oct 2004 A1
20040203902 Wilson et al. Oct 2004 A1
20040203903 Wilson et al. Oct 2004 A1
20040224702 Chaskar Nov 2004 A1
20040225436 Yoshihashi Nov 2004 A1
20050043881 Brulle-Drews et al. Feb 2005 A1
20050060088 Helal et al. Mar 2005 A1
20050064864 Horton et al. Mar 2005 A1
20050080556 Toelle Apr 2005 A1
20050096840 Simske May 2005 A1
20050102098 Montealegre et al. May 2005 A1
20050102101 Beesley et al. May 2005 A1
20050131628 Peeters Jun 2005 A1
20050192742 Okochi Sep 2005 A1
20050209773 Hara Sep 2005 A1
20050246095 Banet et al. Nov 2005 A1
20050256635 Gardner Nov 2005 A1
20050278371 Funk et al. Dec 2005 A1
20050288859 Golding Dec 2005 A1
20060004512 Herbst et al. Jan 2006 A1
20060009907 Kuroda et al. Jan 2006 A1
20060031007 Agnew et al. Feb 2006 A1
20060036363 Crook Feb 2006 A1
20060046740 Johnson Mar 2006 A1
20060047568 Eisenberg et al. Mar 2006 A1
20060069500 Hashizume Mar 2006 A1
20060069503 Suomela et al. Mar 2006 A1
20060080029 Kodani et al. Apr 2006 A1
20060080034 Hayashi Apr 2006 A1
20060082472 Adachi et al. Apr 2006 A1
20060085419 Rosen Apr 2006 A1
20060129308 Kates Jun 2006 A1
20060149461 Rowley et al. Jul 2006 A1
20060161599 Rosen Jul 2006 A1
20060184313 Butler Aug 2006 A1
20060203804 Whitmore et al. Sep 2006 A1
20060217879 Ikeuchi et al. Sep 2006 A1
20060227047 Rosenberg Oct 2006 A1
20060229802 Vertelney et al. Oct 2006 A1
20060247849 Mohsini et al. Nov 2006 A1
20060247852 Kortge et al. Nov 2006 A1
20060265119 McMahan et al. Nov 2006 A1
20060265121 Kuo et al. Nov 2006 A1
20060287815 Gluck Dec 2006 A1
20070032942 Thota Feb 2007 A1
20070050129 Salmre Mar 2007 A1
20070078596 Grace Apr 2007 A1
20070083428 Goldstein Apr 2007 A1
20070093955 Hughes Apr 2007 A1
20070118278 Finn et al. May 2007 A1
20070124157 Laumeyer et al. May 2007 A1
20070155416 Donnellan Jul 2007 A1
20070159299 Tsai Jul 2007 A1
20070168888 Jawerth Jul 2007 A1
20070202844 Wilson et al. Aug 2007 A1
20070244633 Phillips et al. Oct 2007 A1
20080004043 Wilson et al. Jan 2008 A1
20080048856 Culpepper et al. Feb 2008 A1
20080188246 Sheha et al. Aug 2008 A1
20080319808 Wofford et al. Dec 2008 A1
Foreign Referenced Citations (1)
Number Date Country
09-287970 Apr 1997 JP
Non-Patent Literature Citations (35)
Entry
Dogru, Muzaffer, “Car Pooling With GIS Map Server and Web Services,” Department of Information Technology, University of Zurich, Switzerland, Aug. 6, 2004, pp. 1-83.
Marshall, M., “Destination Known,” The Mercury News [online] (Sep. 27, 2004) [retrieved on Aug. 2, 2005] Retrieved from the Internet: <URL: http://www.mercurynews.com/mid/mercury-news/business/9770733.htm?1c> 2 pages.
“GPS Mapping Software” [online] Des Newman's OziExplorer [retrieved on Aug. 2, 2005] Retrieved from the Internet <URL: http://www.ozieplorer.com> 2 pages.
“Off Road Navigation” [online] Thales Navigation, Inc., 2005 [retrieved on Aug. 2, 2005] Retrieved from the Internet: <URL: http://www.magellangps.com/assets/manuals/newprod/manual—offroadnav.pdf> 21 pages.
“RFID in Japan, Crossing the Chasm, RFID Gets Bendy,” Card Korea & Ubiquitous Biz Show 2005 in Seoul [online] (Mar. 17, 2005), [retrieved on Aug. 2, 2005] Retrieved from the Internet: <URL: http://ubiks.net/local/blog/jmt/archives3/003524.html> 2 pages.
“About Google Map Maker,” at <http://sites.google.com/site/mapmakeruserhelp/home>, printed May 21, 2009, 1 page.
“AirSage's WiSE Technology,” at <http://www.airsage.com/site/index.cfm?id—art=46598&actMenultemID=22134&vsprache/EN/AIRSAGE—WiSE—TECHNOLOGY—L.cfm>, viewed as early as Mar. 22, 2010, company founded in May 2000, 1 page.
“Club TomTom,” at <http://www.clubtomtom.com/general/get-to-know-tomtom-mapshare%E2%84%A2/>, Jul. 31, 2007, copyright TomTom, printed Mar. 12, 2010, 9 pages.
Zahradnik, Fred, “Dash Express is Innovative, but There's Room for Improvement,” at <http://gps.about.com/od/incarportablegp1/fr/dash—review.htm>, from the Internet Archive, dated Nov. 8, 2009, printed Apr. 20, 2012, 3 pages.
Millonig, A. and Schechtner, K., “Developing Landmark-based Pedestrian Navigation Systems,” Proceedings of the 8th International IEEE Conference on Intelligent Transportation Systems, Vienna, Austria, Sep. 13-16, 2005, copyright 2005, IEEE, 6 pages.
Davies, J. J. et al., “Distributed, vehicular computation for map generation,” presentation slides, 2007 Annual Meeting of the Association of American Geographers, Apr. 2007, found at <http://www.cl.cam.ac.uk/research/dtg/www/files/publications/public/jjd27/davies-aag07.pdf>, 21 pages.
“dodgeball.com :: mobile social software,” at <http://www.dodgeball.com/>, copyright 2008, Google Inc., printed Jan. 16, 2008, 1 page.
Abstract, Ekpenyong, F., Palmer-Brown, D., and Brimicombe, A., “Extracting road information from recorded GPS data using snap-drift neural network,” Neurocomputing, vol. 73, Issues 1-3, Dec. 2009, pp. 24-36, 6 pages.
“Fire Eagle,” at <http://fireeagle.yahoo.net>, copyright 2007-2011, Yahoo! Inc., printed Apr. 28, 2011, 2 pages.
“Fire Eagle : What is Fire Eagle?”, found at <http://fireeagle.yahoo.net/help> on the Internet Archive, dated Jul. 9, 2011, copyright 2007-2011, Yahoo! Inc., printed Nov. 10, 2011, 4 pages.
Shankland, Stephen, “Google crowdsources maps directions, too,” Mar. 11, 2009, at <http://news.cnet.com/8301-17939—109-10193481-2.html>, printed May 21, 2009, 3 pages.
Bruntrup, R. et al., “Incremental Map Generation with GPS Traces,” Presentation Slides, University of Dortmund, Germany, 2005, found at <http://www.google.com/url?sa=t&rct=j&q=bruntrup%20incremental%20map%20generation&source=web&cd=2&ved=0CCoQFjAB&url=http%3A%2F%2Fmapgeneration.berlios.de%2Ftiki%2Ftiki-download—wiki—attachment.php%3FattId%3D1&ei=ZruVT—O8J9L16AGV-LGKBA&usg=AFQjCNF4B61uAHpAjtDc46FyNLqw4bgl1A>, 16 pages.
“Intel and ARM collaborate on device security,” Oct. 15, 2007, at <http://www.windowsfordevices.com/news/NS5120676853.html>, copyright 1996-2010, Ziff Davis Enterprise Holdings, Inc., printed Apr. 20, 2012, 5 pages.
Ardagna, C.A. et al., “Location Privacy Protection Through Obfuscation-based Techniques,” Lecture Notes in Computer Science, 2007, vol. 4602, pp. 47-60, Data and Applications Security XXI, Jul. 8-11, 2007, Redondo Beach, California, 16 pages.
Jones, M., “Matt's Wikimapia Blog,” Sep. 15, 2006, at <http://wikimapia.mattjonesblog.com/2006/09/15/how-to-1-adding-a-new-place/>, printed May 21, 2009, 24 pages.
Amin, Saurabh et al., “Mobile Century—Using GPS Mobile Phones as Traffic Sensors: A Field Experiment,” 15th World Conference on Intelligent Transportation Systems, Nov. 16-20, 2008, New York, New York, available from <http://www.ce.berkeley.edu/˜bayen/conferences/its08.pdf>, 4 pages.
Choney, Suzanne, “Mobile services mushroom for locating friends,” Aug. 14, 2008, copyright 2008, MSNBC.com, 1 page.
“MySpace,” at <http://www.myspace.com/>, copyright 2003-2008, MySpace.com, printed Jan. 16, 2008, 2 pages.
Priya Ganapati, “Navigation Companies Crowdsource Maps, Traffic Services,” Feb. 11, 2009, at <http://www.wired.com/gadgetlab/2009/02/user-generated/>, printed May 21, 2009, 4 pages.
“NAVTEQ: The secrets behind Ovi Maps,” at <http://noknok.tv/2009/07/08/navteq-the-secrets-behind-ovi-maps/>, Jul. 8, 2009, copyright 2007-2010, Republic Publishing Ltd, printed Mar. 12, 2010, 6 pages.
Privat, Ludovic, “NAVX: “We provide Content to TomTom, Garmin and Mio,”” GPS Business News, Feb. 2, 2009, at <http://www.gpsbusinessnews.com/NAVX-we-provide-content-to-TomTom,-Garmin-and-Mio-—a1305.html>, printed Apr. 20, 2012, 2 pages.
“Neatcall—Products,” found at <http://neatcall.com/index.php?dir=site&page=content&cs=3008> on Internet Archive, dated Mar. 1, 2010, copyright 2010, Neatcall Ltd., printed Oct. 26, 2011, 2 pages.
“OpenStreetMap,” <http://www.openstreetmap.org/>, printed May 21, 2009, 1 page.
Davies, J. J. et al., “Scalable, Distributed, Real-Time Map Generation,” Pervasive Computing, vol. 5, No. 4, Oct.-Dec. 2006, pp. 47-54, copyright 2006, IEEE, 9 pages.
“Tele Atlas Leverages Community Input to Add New Roads and Location Content,” at <http://www.teleatlas.com/WhyTeleAtlas/Pressroom/PressReleases/TA—CT031226>, Jun. 22, 2009, Gent, Belgium, copyright 2010, Tele Atlas BV, printed Mar. 12, 2010, 2 pages.
“TomTom Map Share technology,” at <http://www.tomtom.com/page/mapshare>, copyright 2009, TomTom International BV, printed Mar. 12, 2010, 3 pages.
“TrackItBack—The World's Largest Lost & Found Recovery Service | News,” articles dating from Mar. 29, 2005, to Jun. 27, 2008, found at <http://www.trackitback.com/portal/press.html>, copyright 2003-2011, TrackItBack, printed on Apr. 18, 2011, 4 pages.
Ekpenyong, F. et al., “Updating of Road Network Databases: Spatio-Temporal Trajectory Grouping Using Snap-Drift Neural Network,” In Proceedings of International Conference on Engineering Applications of Neural Networks, EANN 2007, Aug. 29-31, 2007, Thessaloniki, Greece, 10 pages.
Jones, Q. et al., “Urban Enclave Location-Aware Social Computing,” Proceeds of Internet Research 7.0: Internet Convergences, Brisbane, Australia, Sep. 27-30, 2006, found at <http://aoir.org/files/c4d0c2e397e8a5ddb140a40f7fa9.pdf>, 10 pages.
“WikiMapia,” Wikipedia, at <http://en.wikipedia.org/wiki/WikiMapia>, last modified May 19, 2009, printed May 21, 2009, 4 pages.
Related Publications (1)
Number Date Country
20110172908 A1 Jul 2011 US
Continuations (2)
Number Date Country
Parent 12715452 Mar 2010 US
Child 13053298 US
Parent 11279781 Apr 2006 US
Child 12715452 US