# Patent

## Title
Guidance with feature accounting for insignificant roads

## Abstract

Systems, devices and methods are provided to account for insignificant route segments to enhance a route guidance experience. An electronic navigational aid device is provided according to one aspect. The device includes a processor and a memory adapted to communicate with the processor. The processor and memory are adapted to cooperate to provide route guidance that accounts for insignificant route segments. According to various embodiments, insignificant route segments are accounted for by nullifying and/or modifying route guidance maneuvers associated with the insignificant route segments. Other aspects are provided herein.

## Background
FIELD OF THE INVENTION
The present invention relates generally to navigational devices, and in particular to navigational route guidance that accounts for insignificant route segments or roads.
BACKGROUND OF THE INVENTION
Route planning devices are well known in the field of navigational instruments. The capabilities of known route planning devices and methods depend on system resources, such as processor speed and the amount and speed of memory. The processes implemented by a navigation device are a function of overall system cost because an increase in system capability also increases system cost. The known art includes a spectrum of products in which the degree of navigational accuracy is dictated primarily by the cost of the system. The lower cost systems currently offer a lower degree of accuracy that often is inadequate for most users.
Processes inherently affected by the limited system resources include navigational route planning and navigational route guidance. A navigational route between a starting destination and a final destination is determined using cartographic data. The navigational route is formed from a number of a navigational route segments. These route segments, for example, include the various roads that are traveled upon to move from the starting destination to the final destination.
Navigational route guidance provides information to a user to guide the user along the route from route segment to route segment. That is, navigational route guidance provides information used to maneuver from one route segment to another route segment. Such guidance is desirable when a user is confronted with maneuvering options, such as whether to turn left or right, for example, onto the next route segment or road.
However, some route segments are essentially insignificant in so far as traveling from a first significant route segment through an insignificant route segment to a second significant route segment essentially only confronts the user with an obvious maneuvering option between the first significant route segment and the second significant route segment. An example of an insignificant route segment is a separately digitized turn lane.
Attempts to provide guidance information from the first significant route segment to the insignificant route segment, and to provide guidance information from the insignificant route segment to the second significant route segment is unnecessary information as it is extraneous or redundant. Users view maneuvers associated with insignificant route segments interposed between two significant route segments as obvious maneuvers. Thus, users only desire appropriate navigational guidance from the first significant route segment to the second significant route segment.
Therefore, there exists a need for route guidance that appropriately accounts for insignificant route segments by nullifying, and/or modifying route guidance maneuvers associated with the insignificant route segments to improve a route guidance experience.
SUMMARY OF THE INVENTION
The above mentioned problems of navigational devices are addressed by the present invention and will be understood by reading and studying the following specification. Systems, devices and methods are provided to identify insignificant route segments and to provide clear and concise route guidance by appropriately accounting for the insignificant route segments. As such, a route guidance experience is enhanced.
One aspect of the present invention provides an electronic navigational device. According to one embodiment, the device includes a processor and a memory adapted to communicate with the processor. The processor and memory are adapted to cooperate to perform processes, and in particular, to perform a route guidance process that accounts for insignificant route segments.
According to one embodiment, the insignificant segment is accounted for by skipping or nullifying route guidance for a maneuver associated with the insignificant segment, i.e. for a maneuver that immediately proceeds or follows the insignificant segment. According to another embodiment, the insignificant route segment is accounted for by modifying a route guidance maneuver associated with the insignificant route segment.
According to one embodiment, a sequence of route segments and a sequence of maneuvers associated with the route segments are identified. It is determined whether a segment in the sequence of route segments is significant or insignificant. The processor and memory provide route guidance for a maneuver associated with significant segments, and account for an insignificant segment prior to providing route guidance for a maneuver associated with the insignificant segment.
Other aspects provided herein include a navigation system and a method. These, as well as other novel aspects, embodiments, advantages, details, and features of the present invention will be apparent to those skilled in the art from the following detailed description of the invention, the attached claims and accompanying drawings, listed herein below, which are useful in explaining the invention.



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a representative of a global positioning system (GPS);
FIGS. 2A and 2B illustrate views for one embodiment of an electronic navigational device;
FIGS. 3A-3C illustrate views for another embodiment of an electronic navigational device;
FIG. 4A is a block diagram of one embodiment for the electronic components within the hardware of FIGS. 2A-2B;
FIG. 4B is a block diagram of one embodiment for the electronic components within the hardware of FIGS. 3A-3C;
FIG. 5 is a block diagram of a navigation system;
FIG. 6 is an example of a navigation route that includes an insignificant route segment;
FIG. 7 is a flow diagram illustrating one embodiment of a route guidance process according to the present invention;
FIG. 8 is a flow diagram illustrating one embodiment of a route guidance process according to the present invention;
FIG. 9 is a flow diagram illustrating one embodiment for determining whether a segment is insignificant as shown in FIG. 7; and
FIG. 10 is a flow diagram illustrating one embodiment for determining whether a segment is insignificant as shown in FIG. 8.



DETAILED DESCRIPTION OF THE INVENTION
A better understanding of the present invention reference may be had to the following detailed description taken in conjunction with dependant claims and accompanied drawings. In essence, the present invention allows an electronic navigation device to account for insignificant route segments to enhance a route guidance experience by nullifying and/or modifying route guidance maneuvers associated with insignificant route segments.
FIG. 1 is a representative of a global positioning system (GPS). The GPS 100 includes a plurality of satellites 120 and a GPS receiver device 140. The plurality of satellites 120 are in orbit about the Earth 124. The orbit of each satellite 120 is not necessarily synchronous with the orbits of other satellites 120 and, in fact, is likely asynchronous. The GPS receiver device 140 of the present invention is shown receiving spread spectrum GPS satellite signals 160 from the various satellites 120.
The spread spectrum signals 160 continuously transmitted from each satellite 120 utilize a highly accurate frequency standard accomplished with an extremely accurate atomic clock. Each satellite 120, as part of its data signal transmission 160, transmits a data stream indicative of that particular satellite 120. It will be appreciated by those skilled in the relevant art that the GPS receiver device 140 must acquire spread spectrum GPS satellite signals 160 from at least three satellites 120 for the GPS receiver device 140 to calculate its two-dimensional position by triangulation. Acquisition of an additional signal 160, resulting in signals 160 from a total of four satellites 120, permits GPS receiver device 140 to calculate its three-dimensional position.
FIGS. 2A and 2B illustrate views for one embodiment of an electronic navigational device 230 according to the teachings of the present invention. As one of ordinary skill in the art will understand upon reading this disclosure, the device can be portable and can be utilized in any number of implementations such as automobile, personal marine craft, and avionic navigation. In the embodiment of FIG. 2A a front view of the navigational device 230 is provided showing the navigational device has a generally rectangular housing 232. The housing 232 is constructed of resilient material and has been rounded for aesthetic and ergonomic purposes. As shown in FIG. 2A, the control face 234 has access slots for an input key pad 238, other individual keys 239, and a display screen 236. In one embodiment, the display screen 236 is a LCD display which is capable of displaying both text and graphical information. The invention, however, is not so limited.
In FIG. 2B, a side view of the navigational device 230 is provided. FIG. 2B illustrates that the device's housing 232 is defined by an outer front case 240 and a rear case 242. As shown in FIG. 2B, the outer front case 240 is defined by the control face 234. In the embodiment shown in FIG. 2B, the outer front case 240 and the rear case 242 are made of separate molded pieces to form the device housing 232 and support input key pad 238, other individual keys 239, and display screen 236 in respective access slots shown in the control face 234 of FIG. 2A.
FIGS. 3A-3C illustrate views for another embodiment of an electronic navigational device 310 according to the teachings of the present invention. The navigational device 310 shown in FIGS. 3A-3C includes a personal digital assistant (PDA) with integrated GPS receiver and cellular transceiver according to the teachings of the present invention. The GPS integrated PDA operates with an operating system (OS) such as, for example, the well-known Palm or Pocket PC operating systems, or the lesser-used Linux OS. As shown in the top view of FIG. 3A, the GPS integrated PDA 310 includes an internal integrated GPS patch antenna 314 and a cellular transceiver 316 contained in a housing 318. The housing 318 is generally rectangular with a low profile and has a front face 320 extending from a top end 322 to a bottom end 324. Mounted on front face 320 is a display screen 326, which is touch sensitive and responsive to a stylus 330 (shown stored in the side view of FIG. 3B) or a finger touch. FIGS. 3A-3C illustrate the stylus 330 nested within housing 318 for storage and convenient access in a conventional manner. The embodiment shown in FIG. 3A illustrates a number of control buttons, or input keys 328 positioned toward the bottom end 324. The invention, however, is not so limited and one of ordinary skill in the art will appreciate that the input keys 328 can be positioned toward the top end 322 or at any other suitable location. The end view of FIG. 3C illustrates a map data cartridge bay slot 332 and headphone jack 334 provided at the top end 322 of the housing 318. Again, the invention is not so limited and one of ordinary skill in the art will appreciate that a map data cartridge bay slot 332 and headphone jack 334 can be provided at the bottom end 324, separately at opposite ends, or at any other suitable location.
It should be understood that the structure of GPS integrated PDA 310 is shown as illustrative of one type of integrated PDA navigation device. Other physical structures, such as a cellular telephone and a vehicle-mounted unit are contemplated within the scope of this invention.
FIGS. 2A-2B and 3A-3C are provided as illustrative examples of hardware components for a navigational device according to the teachings of the present invention. However, the invention is not limited to the configuration shown in FIGS. 2A-2B and 3A-3C. One of ordinary skill in the art will appreciate other suitable designs for a hardware device which can accommodate the present invention.
FIG. 4A is a block diagram of one embodiment for the electronic components within the hardware of FIGS. 2A-2B, such as within housing 332 and utilized by the electronic navigational device. In the embodiment shown in FIG. 4A, the electronic components include a processor 410 which is connected to an input 420, such as keypad via line 425. It will be understood that input 420 may alternatively be a microphone for receiving voice commands. Processor 410 communicates with memory 430 via line 435. Processor 410 also communicates with display screen 440 via line 445. An antenna/receiver 450, such as a GPS antenna/receiver is connected to processor 410 via line 455. It will be understood that the antenna and receiver, designated by reference numeral 450, are combined schematically for illustration, but that the antenna and receiver may be separately located components, and that the antenna may be a GPS patch antenna or a helical antenna. The electronic components further include I/O ports 470 connected to processor 410 via line 475. According to one embodiment, a speaker 480 is connected to the processor 410 via line 485, and the device is adapted to provide the voice guidance through the speaker 480. According to one embodiment, the device is adapted to be connected to an auxiliary speaker, such as a speaker from a car stereo, earphones or an earpiece, and is adapted to provide the voice guidance through the auxiliary speaker.
FIG. 4B is a block diagram of one embodiment for the electronic components within the hardware of FIGS. 3A-3C and utilized by the GPS integrated PDA 310 according to the teachings of the present invention. The electronic components shown in FIG. 4B include a processor 436 which is connected to the GPS antenna 414 through GPS receiver 438 via line 441. The processor 436 interacts with an operating system (such as PalmOS; Pocket PC) that runs selected software depending on the intended use of the PDA 310. Processor 436 is coupled with memory 442 such as RAM via line 444, and power source 446 for powering the electronic components of PDA 310. The processor 436 communicates with touch sensitive display screen 426 via data line 448.
The electronic components further include two other input sources that are connected to the processor 436. Control buttons 428 are connected to processor 436 via line 451 and a map data cartridge 433 inserted into cartridge bay 432 is connected via line 452. A conventional serial I/O port 454 is connected to the processor 436 via line 456. Cellular antenna 416 is connected to cellular transceiver 458, which is connected to the processor 436 via line 466. Processor 436 is connected to the speaker/headphone jack 434 via line 462. The PDA 310 may also include an infrared port (not shown) coupled to the processor 436 that may be used to beam information from one PDA to another.
As will be understood by one of ordinary skill in the art, the electronic components shown in FIGS. 4A and 4B are powered by a power source in a conventional manner. As will be understood by one of ordinary skill in the art, different configurations of the components shown in FIGS. 4A and 4B are considered within the scope of the present invention. For example, in one embodiment, the components shown in FIGS. 4A and 4B are in communication with one another via wireless connections and the like. Thus, the scope of the navigation device of the present invention includes a portable electronic navigational aid device.
According to the teachings of the present invention, the electronic components embodied in FIGS. 4A and 4B are adapted to perform a route guidance process that accounts for insignificant route segments. That is, according to the teachings of the present invention, a processor 410 is provided with the electronic navigational aid device, and a memory 430 is connected to the processor 410. The memory 430 includes cartographic data, and algorithms for performing the route planning and route guidance processes. According to one embodiment, a display 440 is adapted to communicate with the processor 410 and is capable of providing a visual indication of the planned route and the route guidance to a user. According to one embodiment, a speaker 480 is adapted to communicate with the processor 410 and is capable of providing an audio indication of the route guidance to a user.
As will be discussed in more detail below, the processor 410 and memory 430 cooperate to perform various processes according to the teachings of the present invention. According to one embodiment, the processor 410 and memory 430 cooperate to provide route guidance that accounts for insignificant route segments. According to various embodiment, the route guidance provided by the processor 410 and memory 430 accounts for insignificant segments by nullifying and/or modifying maneuvers associated with the insignificant route segments. These, and other embodiments, are discussed in more detail below.
FIG. 5 is a block diagram of an embodiment of a navigation system. The navigation system 500 includes a server 502. According to one embodiment, the server 502 includes a processor 504 operably coupled to memory 506, and further includes a transmitter 508 and a receiver 510 to send and receive communication signals. The transmitter 508 and receiver 510 are selected or designed according to the communication requirements and the communication technology used in the communication design for the navigation system. The functions of the transmitter 508 and the receiver 510 may be combined into a single transceiver.
The navigation system further includes a mass data storage 512 coupled to the server 502 via communication link 514. The mass data storage 512 contains a store of navigation data. One of ordinary skill in the art will understand, upon reading and comprehending this disclosure, that the mass data storage 512 can be a separate device from the server 502 or can be incorporated into the server 502.
According to one embodiment, the navigation system further includes a navigation device 516 adapted to communicate with the server 502 through the communication channel 518. According to one embodiment, the navigation device 516 includes a processor and memory, as previously shown and described with respect to the block diagrams of FIGS. 4A and 4B. Furthermore, the navigation device 516 includes a transmitter 520 and receiver 522 to send and receive communication signals through the communication channel 518. The transmitter 520 and receiver 522 are selected or designed according to the communication requirements and the communication technology used in the communication design for the navigation system. The functions of the transmitter 520 and receiver 522 may be combined into a single transceiver.
Software stored in the server memory 506 provides instructions for the processor 504 and allows the server 502 to provide services to the navigation device 516. One service provided by the server 502 involves processing requests from the navigation device 516 and transmitting navigation data from the mass data storage 512 to the navigation device 516. According to one embodiment, another service provided by the server 502 includes processing the navigation data using various algorithms for a desired application, and sending the results of these calculations to the navigation device 516.
The communication channel 518 is the propagating medium or path that connects the navigation device 516 and the server 502. According to one embodiment, both the server 502 and the navigation device 516 include a transmitter for transmitting data through the communication channel and a receiver for receiving data that has been transmitted through the communication channel.
The communication channel 518 is not limited to a particular communication technology. Additionally, the communication channel 518 is not limited to a single communication technology; that is, the channel 518 may include several communication links that use a variety of technology. For example, according to various embodiments, the communication channel is adapted to provide a path for electrical, optical, and/or electromagnetic communications. As such, the communication channel includes, but is not limited to, one or a combination of the following: electrical circuits, electrical conductors such as wires and coaxial cables, fiber optic cables, converters, radio-frequency (RF) waveguides, the atmosphere, and empty space. Furthermore, according to various embodiments, the communication channel includes intermediate devices such as routers, repeaters, buffers, transmitters, and receivers, for example.
In one embodiment, for example, the communication channel 518 includes telephone and computer networks. Furthermore, in various embodiments, the communication channel 516 is capable of accommodating wireless communication such as radio frequency, microwave frequency and infrared communication, and the like. Additionally, according to various embodiments, the communication channel 516 accommodates satellite communication.
The communication signals transmitted through the communication channel 518 include such signals as may be required or desired for a given communication technology. For example, the signals may be adapted to be used in cellular communication technology, such as time division multiple access (TDMA), frequency division multiple access (FDMA), code division multiple access (CDMA), global system for mobile communications (GSM), and the like. Both digital and analog signals may be transmitted through the communication channel 518. According to various embodiments, these signals are modulated, encrypted and/or compressed signals as may be desirable for the communication technology.
The mass data storage includes sufficient memory for the desired navigation application. Examples of mass data storage include magnetic data storage media such as hard drives, optical data storage media such as CD ROMs, charge storing data storage media such as Flash memory, and molecular memory.
According to one embodiment of the navigation system, the 502 server includes a remote server accessed by the navigation device 516 through a wireless channel. According to other embodiments of the navigation system, the server 502 includes a network server located on a local area network (LAN), wide area network (WAN), a virtual private network (VPN) and server farms.
According to another embodiment of the navigation system, the server 502 includes a personal computer such as a desktop or laptop computer. In one embodiment, the communication channel 518 is a cable connected between the personal computer and the navigation device. According to one embodiment, the communication channel 518 is a wireless connection between the personal computer and the navigation device 516.
As will be discussed in more detail below, the system performs various processes according to the teachings of the present invention. According to one embodiment, the mass data storage 512 is adapted to store navigation data. According to various embodiments, the navigation data includes text, images and/or audio. The server 502 communicates with the mass data storage 512, and thus is able to access and/or process the navigation data. The navigation device 516 communicates with and retrieves navigation data from the server 502 via a communication channel 518.
The navigation device includes a processor and a memory connected to the processor, as previously described with respect to the device of FIGS. 4A and 4B. According to one embodiment, the processor and memory of the navigation device are adapted to provide a route planning process and/or provide route guidance that accounts for the insignificant route segments. According to another embodiment, the processor 504 and memory 506 of the server 502 are adapted to provide a route planning process and/or provide route guidance that accounts for the insignificant route segments. According to various embodiments, the route guidance provided by the system accounts for insignificant segments by nullifying and/or modifying maneuvers associated with the insignificant route segments. These, and other embodiments, are discussed in more detail below.
FIG. 6 is an example of a navigation route that includes an insignificant route segment. In this example, a map is shown that includes an intersection between a split highway 610 (US-40) and a street 612 (SW 19th St), and further includes an intersection between the street 612 (SW 19th St.) and an avenue 614 (SW Sunset Ave). A planned route, designated with the reference numeral 616, extends from point “A” on US-40 610 to point D at the intersection of SW 19th St 612 and SW Sunset Ave 614.
The route 616 includes a first significant route segment 618 extending between points A and B, an insignificant route segment 620 extending between points B and C, and a second significant route segment 622 extending between points C and D. The route segment 620 corresponds to the turn lane 624, and is characterized as insignificant for navigation route guidance because the maneuvering decision to exit in the desired direction on 19th St 612 is made at point B. Once on the turn lane 624, as represented by the insignificant segment 620, the decision to merge or turn right on 19th St 612 is an obvious decision as the user essentially does not have another option at point C.
A route guidance process that does not account for insignificant route segments would likely generate two Turn Right maneuvers. One Turn Right maneuver would be at point B. The other Turn Right maneuver would be at point C. One of ordinary skill in the art will understand upon reading and comprehending this disclosure that other route segments preceded by one maneuver and followed by another maneuver may be considered insignificant.
The insignificant segment 620 is essentially a turn lane that does not confront a user with maneuvering options. Therefore, the user only desires guidance to turn right at point B. Thus, FIG. 6 provides an example of a planned route 616 that includes route segments 618, 620 and 622, and further provides an example of an insignificant route segment 620.
More generally, a planned route is formed from a plurality of route segments. A route guidance maneuver is associated with each segment to assist the user with transitions between route segments. Several examples of route guidance maneuvers are presented below. The route guidance maneuver examples provided below are not intended to be an exhaustive list of such maneuvers.
One maneuver is Continue which indicates that there is no turn decision to be made. According to one embodiment, a user is not explicitly instructed to continue on a route. Rather, because most of the route is a Continue, it is assumed that the user will not make any turn maneuvers unless otherwise instructed. Since an explicit route guidance command is not provided according to some embodiments, the Continue maneuver may be considered to be a null maneuver or a skipped maneuver.
Other maneuvers include Turn Left, Turn Right, Turn Sharp Left, Turn Sharp Right, and U-Turn. These turn maneuvers occur at intersections, and are believed to be self-explanatory.
Other maneuvers include Keep Left and Keep Right. These maneuvers often occur when a road splits into a “V” such as on a major highway or a ramp. Another maneuver is Take Ramp which indicates an off ramp off of a highway or an on ramp onto a highway. Another maneuver is Merge, which provides an indication to merge with traffic on a road, as may be appropriate traveling from a ramp onto a road.
According to various embodiments, several factors are considered in making the determination of whether a route segment is significant or insignificant. One factor is segment length. According to one embodiment, the segment length must be under a predetermined length in order to warrant consideration as a insignificant route segment. In one embodiment, the segment length must be under 100 meters in order to be considered potentially insignificant. According to one embodiment, in order for a segment to be considered potentially insignificant, the length of the segment must be shorter than the length of a successive route segment; i.e. the route segment that immediately follows the current route segment.
Another factor considered in making the determination of whether a route segment is significant or insignificant is whether the segment is named. An unnamed route segment is considered to be a potentially insignificant route segment.
Another factor involves whether the maneuver type at the start of a route segment and the maneuver type at the end of the segment qualify such that the route segment may be considered an insignificant route segment. That is, the maneuvers performed at the start and at the end of a route segment have certain characteristics or relationships that are consistent with insignificant route segments.
As will be understood by one of ordinary skill in the art upon reading and comprehending this disclosure, the process of characterizing a route segment as insignificant may include one of the factors described above, or any combination thereof. Additionally, one of ordinary skill in the art will understand that the factors do not have to be considered in any particular order.
There are a number of special cases that have special case handlers to modify guidance for maneuvers. These cases include, but are not limited to, Ramp/Merge, Roundabouts, and Ramp/Ramp transitions. Special case handlers are provided for these special cases.
For example, in the drawing of FIG. 6, a turn lane classified as a digitized turn lane is shown. A first Turn Right maneuver occurs at point B and a second Turn Right maneuver occurs at point C such that the segment BC is a turn lane. However, in order to provide clear and concise guidance, it is desired to provide only a single Turn Right maneuver for the digitized turn lane. The second Turn Right maneuver is effectively nullified or skipped. As a result, the user is guided through a single Turn Right maneuver at point B.
However, should the segment BC, or a segment similar thereto, be classified as a ramp, for example, a Take Ramp maneuver occurs at point B and a Merge maneuver occurs at point C. The merge maneuver may be nullified by changing the maneuver to a Continue maneuver, which would only leave a Take Ramp maneuver. However, in order to provide clear and concise route guidance, it is desirable to modify one of the maneuvers. For example, the combined turn angle from segment AB to segment CD is used to derive a simple turn maneuver, such as Turn Right. This derived turn maneuver is used in place of the Take Ramp/Merge maneuvers. Therefore, for example, the Take Ramp maneuver at point B is modified to a Turn Right maneuver, and the Merge maneuver at point C is replaced with a Continue maneuver which effectively nullifies or skips the guidance maneuver between route segments BC and CD. As a result, the user is guided through one maneuver (Turn Right) rather than through two maneuvers (Take Ramp and Merge).
If the route segment is characterized as an insignificant route segment, and if none of the special case handlers are applied, the maneuver at the start of the insignificant segment is replaced with the maneuver at the end of the segment. The maneuver at the end of the segment is modified to a Continue. This effectively nullifies or skips one of the maneuvers associated with the insignificant route segment since a user is not explicitly instructed to continue on a route.
FIG. 7 is a flow diagram illustrating one embodiment of a route guidance process according to the present invention. According this process, a route is calculated, determined or otherwise provided at 702.
According to one embodiment, the route planning process is performed by the server 502 of FIG. 5. According to anther embodiment, the route planning process is performed by the navigation device 516 of FIG. 5. This route is formed from a series of N segments, such that the sequence of route segments extends from segment SEG(1) to segment SEG(N). Each of these segments is associated with a route guidance maneuver, such that segment SEG(1) is associated with maneuver MAN(1) and segment SEG(N) is associated with maneuver MAN(N). MAN(1) is the maneuver performed to proceed on segment SEG(1), MAN(2) is the maneuver performed to proceed on segment SEG(2), and MAN(N) is the maneuver performed to proceed on segment SEG(N). The user arrives at the destination after completing travel along segment SEG(N).
At 704, the sequence of route segments, i.e. SEG(1) to SEG(N), is identified for the route. At 706, the sequence of maneuvers, MAN(1) to MAN(N), is identified for the sequence of route segments. A counter variable “I” is set to one at 708. As will be illustrated below, this counter variable counts from one to N to evaluate each route guidance maneuver and each route segment in sequence.
It is determined at 710 whether segment SEG(I) is insignificant. Upon determining that segment SEG(I) is not insignificant (i.e., upon determining that segment SEG(I) is significant), the process proceeds to 712 where route guidance is explicitly provided for the route guidance maneuver MAN(I). If, at 710, it is determined that segment SEG(I) is insignificant, the process skips or nullifies the route guidance represented at 712. As provided above, according to one embodiment, skipping or nullifying the route guidance maneuver involves changing the maneuver to a Continue maneuver. As provided above, according to one embodiment, a user is not explicitly instructed to continue on a route.
The process proceeds to 714, where it is determined whether the final segment has been reached. That is, it is determined if the counter variable I equals N. If the final segment has not been reached, the process proceeds to 716, where the counter variable I is incremented (I=I+1) so as to evaluate the next route guidance maneuver and the next route guidance segment, and the process returns to 710. If the final segment has been reached, the process ends.
FIG. 8 is a flow diagram illustrating one embodiment of a route guidance process according to the present invention. The process illustrated in FIG. 8 adds steps 818 and 820 to the process illustrated in FIG. 7. Again, the process illustrated in FIG. 8 may be performed by the server 502 or by the navigation device 516 of FIG. 5.
According the process illustrated in FIG. 8, a route is calculated, determined or otherwise provided at 802. At 804, a sequence of route segments, i.e. SEG(1) to SEG(N), is identified for the route. At 806, a sequence of maneuvers, MAN(1) to MAN(N), is identified for the sequence of route segments. A counter variable “I” is set to one at 808. As will be illustrated below, this counter variable counts from one to N to evaluate each route guidance maneuver and each route segment in sequence.
It is determined at 810 whether segment SEG(I) is insignificant. Upon determining that segment SEG(I) is not insignificant (i.e., upon determining that segment SEG(I) is significant), the process proceeds to 812 where route guidance is explicitly provided for the route guidance maneuver MAN(I). If, at 810, it is determined that segment SEG(I) is insignificant, the process proceeds to 818, where it is determined whether to modify the route guidance maneuver MAN(I). Some factors used in making this determination were identified above with respect to FIG. 6. If it is determined to modify the route guidance maneuver MAN(I), the route guidance maneuver MAN(I) is modified at 820, and the process proceeds to 812 where route guidance is provided for the route guidance maneuver MAN(I). If, at 818, it is determined not to modify the route guidance maneuver MAN(I), then the process skips or nullifies the route guidance represented at 812. As provided above, according to one embodiment, skipping or nullifying the route guidance maneuver involves changing the maneuver to a Continue maneuver. As provided above, according to one embodiment, a user is not explicitly instructed to continue on a route.
The process proceeds to 814, where it is determined whether the final segment has been reached. That is, it is determined if the counter variable I equals N. If the final segment has not been reached, the process proceeds to 816, where the counter variable I is incremented (I=I+1) so as to evaluate the next route guidance maneuver and the next route guidance segment, and the process returns to 810. If the final segment has been reached, the process ends.
FIG. 9 is a flow diagram illustrating one embodiment for determining whether a segment is insignificant as shown in FIG. 7. The flow diagram of FIG. 9 is generally designated by the reference numeral 922, which generally corresponds to the area of the flow diagram of FIG. 7 designated by the reference numeral 722.
According to this embodiment for determining whether a segment is insignificant, it is determined whether segment SEG(I) has a name at 924. If it is determined that the segment SEG(I), has a name, the process proceeds to 912 to provide route guidance for the route guidance maneuver MAN(I), which is, for example, represented at 712 in FIG. 7.
At 926, it is determined whether segment SEG(I) has a length less that a predetermined length X. According to one embodiment, the predetermined length X is 100 meters. If it is determined that the segment SEG(I) does not have a length less than the predetermined length X, the process proceeds to 912 to provide route guidance for the route guidance maneuver MAN(I).
At 928, it is determined whether the length of segment SEG(I) is less than the length of a successive segment SEG(I+1). If it is determined that the length of segment SEG(I) is not less than the length of the successive segment SEG(I+1), the process proceeds to 912 to provide route guidance for the route guidance maneuver MAN(I).
At 930, it is determined whether the route guidance maneuver MAN(I) and a successive route guidance maneuver MAN(I+1) qualify for nullification. Some factors used in making this determination were identified above with respect to FIG. 6. If it is determined that the route guidance maneuvers MAN(I) and MAN(I+1) do not qualify, the process proceeds to 912 to provide route guidance for the route guidance maneuver MAN(I). The process proceeds to 914 to skip or nullify the route guidance, which is, for example, represented at 712 in FIG. 7. As provided above, according to one embodiment, skipping or nullifying the route guidance maneuver involves changing the maneuver to a Continue maneuver. As provided above, according to one embodiment, a user is not explicitly instructed to continue on a route.
As will be evident to one of ordinary skill in the art, the determinations designated by the reference numerals 924, 926, 928 and 930 do not have to be performed in a particular order, and the present invention is not so limited. Additionally, according to various embodiments, the process for determining whether a segment is insignificant includes any single or combination of the determinations designated by the reference numerals 924, 926, 928 and 930.
FIG. 10 is a flow diagram illustrating one embodiment for determining whether a segment is insignificant as shown in FIG. 8. The flow diagram of FIG. 10 is generally designated by the reference numeral 1022, which generally corresponds to the area of the flow diagram of FIG. 8 designated by the reference numeral 822.
According to this embodiment for determining whether a segment is insignificant, it is determined whether segment SEG(I) has a name at 1024. If it is determined that the segment SEG(I), has a name, the process proceeds to 1012 to provide route guidance for the route guidance maneuver MAN(I), which is, for example, represented at 812 in FIG. 8.
At 1026, it is determined whether segment SEG(I) has a length less that a predetermined length X. According to one embodiment, the predetermined length X is 100 meters. If it is determined that the segment SEG(D does not have a length less than the predetermined length X, the process proceeds to 1012 to provide route guidance for the route guidance maneuver MAN(I).
At 1028, it is determined whether the length of segment SEG(I) is less than the length of a successive segment SEG(I+1). If it is determined that the length of segment SEG(I) is not less than the length of the successive segment SEG(I+1), the process proceeds to 1012 to provide route guidance for the route guidance maneuver MAN(I).
At 1030, it is determined whether the route guidance maneuver MAN(I) and a successive route guidance maneuver MAN(I+1) qualify for nullification. Some factors used in making this determination were identified above with respect to FIG. 6. The concept of determining whether two maneuvers qualify for nullification is discussed in more detail below. If it is determined that the route guidance maneuvers MAN(I) and MAN(1+1) do not qualify, the process proceeds to 1012 to provide route guidance for the route guidance maneuver MAN(I).
At 1018, which generally corresponds to the reference numeral 818 in FIG. 8, it is determined whether to modify the route guidance maneuver MAN(I). Some factors used in making this determination were identified above with respect to FIG. 6. If it is determined to modify the route guidance maneuver MAN(I), the route guidance maneuver MAN(I) is modified at 1020, and the process proceeds to 1012 where route guidance is provided for the route guidance maneuver MAN(I). The process proceeds to 1014 to skip or nullify the route guidance, which is, for example, represented at 812 in FIG. 8. As provided above, according to one embodiment, skipping or nullifying the route guidance maneuver involves changing the maneuver to a Continue maneuver. As provided above, according to one embodiment, a user is not explicitly instructed to continue on a route.
As will be evident to one of ordinary skill in the art, the determinations designated by the reference numerals 1024, 1026, 1028, 1030 and 1018 do not have to be performed in a particular order, and the present invention is not so limited. Additionally, according to various embodiments, the process for determining whether a segment is insignificant includes any single or combination of the determinations designated by the reference numerals 1024, 1026, 1028, 1030 and 1018.
In some embodiments, the methods illustrated in FIGS. 7-10 are implemented as a computer data signal embodied in a carrier wave that represents a sequence of instructions which, when executed by a processor such as processor 410 in FIG. 4A and processor 436 in FIG. 4B, cause the processor to perform the respective method. In other embodiments, these methods are implemented as a computer-accessible medium, such as memory 430 in FIG. 4A and memory 442 in FIG. 4B, having executable instructions capable of directing a processor, such as processor 410 in FIG. 4A and processor 436 in FIG. 4B, to perform the respective method. In varying embodiments, the medium is a magnetic medium, an electronic medium, or an optical medium.
As one of ordinary skill in the art will understand upon reading this disclosure, the electronic components of the device shown in FIGS. 4A and 4B and components of the system 500 shown in FIG. 5 can be embodied as computer hardware circuitry or as a computer-readable program, or a combination of both. In another embodiment, system 500 is implemented in an application service provider (ASP) system.
The system of the present invention includes software operative on a processor to perform methods according to the teachings of the present invention. One of ordinary skill in the art will understand, upon reading and comprehending this disclosure, the manner in which a software program can be launched from a computer readable medium in a computer based system to execute the functions defined in the software program. One of ordinary skill in the art will further understand the various programming languages which may be employed to create a software program designed to implement and perform the methods of the present invention. The programs can be structured in an object-orientation using an object-oriented language such as Java, Smalltalk or C++, and the programs can be structured in a procedural-orientation using a procedural language such as COBOL or C. The software components communicate in any of a number of means that are well-known to those skilled in the art, such as application program interfaces (A.P.I.) or interprocess communication techniques such as remote procedure call (R.P.C.), common object request broker architecture (CORBA), Component Object Model (COM), Distributed Component Object Model (DCOM), Distributed System Object Model (DSOM) and Remote Method Invocation (RMI). However, as will be appreciated by one of ordinary skill in the art upon reading this disclosure, the teachings of the present invention are not limited to a particular programming language or environment.
CONCLUSION
The above systems, devices and methods have been described, by way of example and not by way of limitation, with respect to improving route guidance by providing a feature that identifies insignificant route segments, or roads, in a planned route to provide clear and concise route guidance by appropriately accounting for the insignificant route segments. According to various embodiments, maneuvers associated with the insignificant route segments are nullified and/or modified as appropriate to provide clear and concise route guidance that enhances a route guidance experience.
Although specific embodiments have been illustrated and described herein, it will be appreciated by those of ordinary skill in the art that any arrangement which is calculated to achieve the same purpose may be substituted for the specific embodiment shown. This application is intended to cover any adaptations or variations of the present invention. It is to be understood that the above description is intended to be illustrative, and not restrictive. Combinations of the above embodiments, and other embodiments will be apparent to those of skill in the art upon reviewing the above description. The scope of the invention includes any other applications in which the above systems, devices and methods are used. The scope of the invention should be determined with reference to the appended claims, along with the full scope of equivalents to which such claims are entitled.

## Claims

1. An electronic navigational aid device, comprising:
a processor; and 
a memory adapted to communicate with the processor, wherein the processor and memory are adapted to cooperate to: 
identify a sequence of route segments and a sequence of maneuvers associated with the route segments, 
determine whether a route segment in the sequence of route segments is significant or insignificant, 
provide route guidance for a maneuver associated with a significant route segment, and 
account for an insignificant route segment prior to providing route guidance for the maneuver associated with the insignificant route segment, wherein accounting for the insignificant route segments includes nullifying some maneuvers associated with insignificant route segments and modifying other maneuvers associated with insignificant route segments.

2. The device of claim 1, wherein the processor and the memory determine whether a segment in the sequence of route segments is significant or insignificant by determining whether the segment has a name.

3. The device of claim 1, wherein the processor and the memory determine whether a segment in the sequence of route segments is significant or insignificant by determining whether the segment has a length less than a predetermined distance.

4. The device of claim 1, wherein the processor and the memory determine whether a segment in the sequence of route segments is significant or insignificant by determining whether the segment has a length less than a length of a successive segment.

5. The device of claim 1, wherein the processor and the memory determine whether a segment in the sequence of route segments is significant or insignificant by determining whether a route guidance maneuver for the segment and a route guidance maneuver for a successive segment qualify for nullification.

6. The device of claim 1, wherein the processor and the memory determine whether a segment in the sequence of route segments is significant or insignificant by determining whether a route guidance maneuver for the segment and a route guidance maneuver for a successive segment qualify for modification, and by modifying the route guidance maneuver for the segment upon determining that the route guidance maneuver for the segment and the route guidance maneuver for the successive segment qualify for modification.

7. The device of claim 1, wherein the processor and the memory determine whether a segment in the sequence of route segments is significant or insignificant by:
determining whether the segment has a name; 
determining whether the segment has a length less than a predetermined distance; 
determining whether the segment has a length less than a length of a successive segment; and 
determining whether a route guidance maneuver for the segment and a route guidance maneuver for a successive segment qualify for nullification or modification.

8. A navigation system, comprising:
a server; and 
a navigation device adapted to communicate with and retrieve navigation data from the server via a communication channel, 
wherein the system is adapted to provide route guidance that accounts for insignificant route segments, including route guidance that modifies a maneuver associated with an insignificant route segment wherein the system is adapted to identify a sequence of route segments and a sequence of maneuvers associated with the route segments, determine whether a route segment in the sequence of route segments is significant or insignificant, provide route guidance for a maneuver associated with a significant route segment, and account for an insignificant route segment prior to providing route guidance for a maneuver associated with the insignificant route segment.

9. The system of claim 8, wherein the route guidance for a maneuver associated with the insignificant route segment includes route guidance that nullifies a maneuver associated with an insignificant route segment.

10. The navigation system of claim 8 wherein the communication channel includes a wireless channel.

11. The navigation system of claim 8, wherein the server includes a remote server.

12. The navigation system of claim 8, wherein the server includes a processor adapted to respond to a request from the navigation device by performing calculations on the navigation data and transmitting the results to the navigation device.

13. The navigation system of claim 8, wherein the navigation device is adapted to communicate with and retrieve navigation data from the server using streaming data.

14. The navigation system of claim 8, wherein the navigation device is adapted to communicate with and retrieve navigation data from the server using cellular communication technology.

15. The navigation system of claim 8, wherein:
the navigation device includes a processor in communication with a memory; and 
the processor and the memory of the navigation device are adapted to cooperate to: 
identify the sequence of route segments and the sequence of maneuvers associated with the route segments, 
determine whether a route segment in the sequence of route segments is significant or insignificant, 
provide route guidance for the maneuver associated with a significant route segment, and 
account for an insignificant route segment prior to providing route guidance for the maneuver associated with the insignificant route segment.

16. An electronic navigational aid device, comprising:
a processor; and 
a memory adapted to communicate with the processor, wherein the processor and memory are adapted to cooperate to: 
identify a sequence of route segments and a sequence of maneuvers associated with the route segments; 
determine whether a route segment in the sequence of route segments is significant or insignificant; 
provide route guidance for a maneuver associated with a significant route segment; and 
account for an insignificant route segment prior to providing route guidance for the maneuver associated with the insignificant route segment, 

wherein the processor and the memory determine whether a segment in the sequence of route segments is significant or insignificant by: 
determining whether the segment has a name; 
determining whether the segment has a length less than a predetermined distance; 
determining whether the segment has a length less than a length of a successive segment; and 
determining whether a route guidance maneuver for the segment and a route guidance maneuver for a successive segment qualify for nullification or modification.