The present invention relates to the technical field of route searching devices and methods for detecting an optimum route from possible routes to travel from a first point to a second point, on the basis of link costs that are set for the each links constituting the possible routes.
In a conventional route searching device of this type, a total link cost is calculated by adding up the link costs (Assigning of the weights determined in accordance with factors such as the length of the road corresponding to each link and the road attributes (such as the road width)) set for the possible routes to travel from a departure point or the present location to a destination. The possible route having the smallest total link cost is determined to be the optimum route.
In a navigation apparatus disclosed in Patent Document 1, the node cost of each node that connects links is also taken into consideration, and the total cost is the sum of the total link cost and the total node cost. The node cost of each node can be determined by a turn. In a case of a right turn, the node cost is increased, because it is difficult to make a right turn.
In a navigation apparatus disclosed in Patent Document 2, the travel frequency of the traveling road (the number of times the road has been run) is also taken into consideration, and the link cost of the link corresponding to the traveling road is varied accordingly (by a so-called learning function).
With such a navigation apparatus disclosed in either Patent Document 1 or Patent Document 2, a route that is closer to the route requested by the driver can be detected.
However, in a case where a vehicle moves (runs straight ahead or makes a left or right turn) from the road corresponding to a link to the road corresponding to another link via the intersection corresponding to a node, for example, the difficulty of the move is varied not only by a right turn but also by the widths of the roads, the existence of a signal light, the existence of a right-turn lane or a left-turn lane, the shape formed with the roads (a T-shaped junction, a right angle crossroad, or the like), the traffic conditions (such as the congestion levels) of the roads, and the like. In the conventional navigation apparatus disclosed in Patent Document 1, those factors are not taken into consideration. Therefore, the navigation apparatus has limitations in detecting an optimum route that is the closest possible to the desired one.
Furthermore, in a case where each link cost in the conventional navigation apparatus disclosed in Patent Document 1 is varied with the travel frequency as disclosed in Patent Document 2, a problem in relation to the node costs that do not vary with the travel frequency might be caused.
In an exemplary case where two different routes have the same departure point and the same destination, and one (route A) of the two routes has a total cost of “1400” (“1000” in total link cost and “400” in total node cost) while the other one (route B) has a total cost of “1600” (“1500” in total link cost and “100” in total node cost) (the route A being the optimum route, having the shorter length though having more left and right turns than the route B), the link costs decrease as the travel frequency increases when the vehicle runs the route A and the route B with the same frequency (or learns about the route A and the route B equally). Accordingly, the difference in link cost due to the length difference between the route A and the route B becomes relatively smaller after the learning. However, the node costs do not change after the learning. As a result, the total cost of the route A becomes “900” (“500” in total link cost and “400” in total node cost), and the total cost of the route B becomes “850” (“750” in total link cost and “100” in total node cost). With this reversed result, the route B is selected as the optimum route, instead of the route A that is actually the optimum route.
Therefore, a general object of the present invention is to eliminate the above disadvantages, and amore specific object of the present invention is to provide a route searching device that can detect an optimum route with higher precision, a route searching method, and a route searching program.
To solve the above problems, according to one aspect of the present invention, there is provided a route searching device that detects an optimum route among possible routes to travel from a first point to a second point, on the basis of link costs that are set for a plurality of links constituting the possible routes. This route searching device comprises: a determining means that makes at least one of a determination on whether there is a restricting element for restricting the movement of a movable body at the time of moving from the road corresponding to one link to the road corresponding to another link via the connecting portion corresponding to a node to which at least two links are connected, a determination on the number of links connected to the node, a determination on the shape formed with the roads corresponding to the links connected to the connecting portion corresponding to the node, a determination on attributes of at least one of roads corresponding to the links connected to the node, and a determination on the conditions of the roads; an acquiring means that acquires a node cost that represents the difficulty of the movement from the road corresponding to the one link to the road corresponding to the another link, the node cost being in accordance with one or a combination of two or more of factors including the existence of a restricting element, the number of connected links, the shape of the connection formed with the roads corresponding to the links, the attributes of the roads, and the conditions of the roads, the factors being on the basis of the determination results of the determining means; and a route searching means that searches for the optimum route, on the basis of the link cost and the acquired node cost.
In the route searching device, the determining means further determines the direction of the movement from the road corresponding to the one link to the road corresponding to the another link, and the acquiring means acquires the node cost in accordance with a combination of two or more of the factors including the direction of the movement, on the basis of the determination results of the determining means.
In the route searching device, the acquiring means acquires the node cost from a plurality of predetermined node costs, in accordance with the one or the combination of two or more of the factors.
In the route searching device, the road attributes include the width of the road corresponding to the one link and the width of the road corresponding to the another link.
In the route searching device, the road attributes include the width of the road corresponding to a link other than the one link and the another link.
In the route searching device, the conditions of the road include the traffic condition of the road corresponding to the another link.
In the route searching device, the conditions of the roads include the traffic condition of the road corresponding to a link other than the one link and the another link.
The route searching device further comprises: a link learning level setting means that sets a learning level of the link in accordance with the frequency of the movable body passing through the road corresponding to the link; a node learning level setting means that sets a learning level of the node in accordance with the frequency of the movable body moving from the road corresponding to the one link to the road corresponding to the another link via the connecting portion corresponding to the node; a link cost calculating means that calculates a new link cost of the link, using the link cost set for the link and the learning level of the link; and a node cost calculating means that calculates a new node cost of the node, using the acquired node cost and the learning level of the node. In this route searching device, the route searching means searches for the optimum route, on the basis of the new link cost and the new node cost.
To solve the above problems, according to another aspect of the present invention, there is provided a route searching device that detects an optimum route among possible routes to travel from a first point to a second point, on the basis of link costs that are set for a plurality of links constituting the possible routes, and node costs that are set for a plurality of nodes to which at least two links are respectively connected. This route searching device comprises; a link learning level setting means that sets a learning level of the link in accordance with the frequency of a movable body passing through the road corresponding to the link; a node learning level setting means that sets a learning level of the node in accordance with the frequency of the movable body moving from the road corresponding to one link to the road corresponding to another link via the connecting portion corresponding to the node; a link cost calculating means that calculates a new link cost of the link, using the link cost set for the link and the learning level of the link; a node cost calculating means that calculates a new node cost of the node, using the node cost set for the node and the learning level of the node; and a route searching means that searches for the optimum route, on the basis of the new link cost and the new node cost.
In the route searching device, the change rate between the new link cost calculated by the link cost calculating means and the previous link cost is substantially the same as the change rate between the new node cost calculated by the node cost calculating means and the previous node cost.
In the route searching device, the node learning level setting means sets the learning level of the node, making a distinction between a case where the movable body moves from the road corresponding to the one link to the road corresponding to the another link via the connecting portion corresponding to the node and a case where the movable body moves from the road corresponding to the another link to the road corresponding to the one link via the connecting portion corresponding to the node.
In the route searching device, the node cost is set, with a distinction being made between a case where the movable body moves from the road corresponding to the one link to the road corresponding to the another link via the connecting portion corresponding to the node and a case where the movable body moves from the road corresponding to the another link to the road corresponding to the one link via the connecting portion corresponding to the node.
To solve the above problems, the present invention also provides a navigation apparatus that comprises the route searching device and a presenting means that presents information about the detected optimum route.
To solve the above problems, according to another aspect of the present invention, there is provided a route searching method for detecting an optimum route among possible routes to travel from a first point to a second point, on the basis of link costs that are set for a plurality of link constituting the possible routes. This route searching method comprises the steps of: making at least one of a determination on whether there is a restricting element for restricting the movement of a movable body at the time of moving from the road corresponding to one link to the road corresponding to another link via the connecting portion corresponding to a node to which at least two links are connected, a determination on the number of links connected to the node, a determination on the shape of the connection formed with the roads corresponding to the links connected to the connecting portion corresponding to the node, a determination on attributes of at least one of the roads corresponding to the links connected to the node, and a determination on the conditions of the roads; acquiring a node cost that represents the difficulty of the movement from the road corresponding to the one link to the road corresponding to the another link, the node cost being in accordance with one or a combination of two or more of factors including the existence of a restricting element, the number of connected links, the shape of the connection formed with the roads corresponding to the links, the attributes of the roads, and the conditions of the roads, the factors being on the basis of the determination results; and searching for the optimum route, on the basis of the link cost and the acquired node cost.
To solve the above problems, according to another aspect of the present invention, there is provided a route searching method for detecting an optimum route among possible routes from a first point to a second point, on the basis of link costs that are set for a plurality of links constituting the possible routes, and node costs that are set for a plurality of nodes to which at least two links are respectively connected. This route searching method comprises the steps of: setting a learning level of the link in accordance with the frequency of a movable body passing through the road corresponding to the link; setting a learning level of the node in accordance with the frequency of the movable body moving from the road corresponding to one link to the road corresponding to another link via the connecting portion corresponding to the node; calculating a new link cost of the link, using the link cost set for the link and the learning level of the link; calculating a new node cost of the node, using the node cost set for the node and the learning level of the node; and searching for the optimum route, on the basis of the new link cost and the new node cost.
To solve the above problems, according to another aspect of the present invention, there is provided a route searching program that is executed in a computer for detecting an optimum route among possible routes from a first point to a second point, on the basis of link costs that are set for a plurality of links constituting the possible routes. This route searching program causes the computer to function as: a determining means that makes at least one of a determination on whether there is a restricting element for restricting the movement of a movable body at the time of moving from the road corresponding to one link to the road corresponding to another link via the connecting portion corresponding to a node to which at least two links are connected, a determination on the number of links connected to the node, a determination on the shape formed with the roads corresponding to the links connected to the connecting portion corresponding to the node, a determination on attributes of at least one of the roads corresponding to the links connected to the node, and a determination on the conditions of the roads; an acquiring means that acquires a node cost that represents the difficulty of the movement from the road corresponding to the one link to the road corresponding to the another link, the node cost being in accordance with one or a combination of two or more of factors including the existence of a restricting element, the number of connected links, the shape formed with the roads corresponding to the links, the attributes of the roads, and the conditions of the roads, the factors being on the basis of the determination results of the determining means; and a route searching means that searches for the optimum route, on the basis of the link cost and the acquired node cost.
To solve the above problems, according to another aspect of the present invention, there is provided a route searching program that is executed in a computer for detecting an optimum route among possible routes from a first point to a second point, on the basis of link costs that are set for a plurality of links constituting the possible routes, and node costs that are set for a plurality of nodes to which at least two links are respectively connected. This route searching program causes the computer to function as: a link learning level setting means that sets a learning level of the link in accordance with the frequency for a movable body of passing through a road corresponding to the link; a node learning level setting means that sets a learning level of the node in accordance with the frequency of the movable body moving from the road corresponding to one link to the road corresponding to another link via the connecting portion corresponding to the node; a link cost calculating means that calculates a new link cost of the link, using the link cost set for the link and the learning level of the link; a node cost calculating means that calculates a new node cost of the node, using the node cost set for the node and the learning level of the node; and a route searching means that searches for the optimum route, on the basis of the new link cost and the new node cost.
To solve the above problems, according to another aspect of the present invention, there is provided a recording medium having the route searching program recorded on it so that the route searching program is readable by a computer.
The following is a description of preferred embodiments of the present invention, with reference to the accompanying drawings. In the embodiment described below, the present invention is applied to a car navigation apparatus. This car navigation apparatus is mounted on a vehicle as an example of a movable body, and operates with the power supplied from the battery mounted in the vehicle.
Referring first to
As shown in
The GPS receiving unit 1 receives a navigational wave signal from a GPS satellite orbiting the earth along a satellite orbit via an antenna (not shown). On the basis of the received signal, the GPS receiving unit 1 detects the present location information (the latitude and longitude), and outputs the present location information as GPS data to the system control unit 8.
The sensor unit 2 includes a speed sensor, a direction sensor (a gyro sensor), an acceleration sensor, a distance sensor, and the like. The speed sensor detects the speed of the vehicle on the basis of a vehicle speed pulse. The direction sensor detects the traveling direction of the vehicle, using the earth magnetism. The acceleration sensor detects the acceleration of the vehicle. The distance sensor detects the traveling distance of the vehicle. The sensor unit 2 outputs data (the speed data, the direction data, the acceleration data, the traveling distance data, and the like) obtained through those sensors to the system control unit 8.
The traffic information receiving unit 3 has a VICS (Vehicle Information and Communication System) receiver, for example. The traffic information receiving unit 3 receives traffic information (information about traffic conditions such as the level of traffic congestion) that is transmitted through FM multiple broadcasting or optical (infrared) beacons, electric wave (quasi-microwave) beacons, and the like placed on roads (major arteries and freeways). The traffic information receiving unit 3 outputs the traffic information to the system control unit 8.
The information memory unit 4 includes a CD (Compact Disc)-ROM drive, a DVD (Digital Versatile Disc)-ROM drive, a HD (Hard Disc) drive, or the like. Under the control of the system control unit 8, the drive reads data or a program for route searching and route guiding (route introducing) that is recorded on a recording medium such as a CD-ROM, a DVD-ROM, a HD, or the like. The data or the program is then output to the system control unit 8.
Here, the data for route searching and route guiding contains map data, link data, node data, route guiding data, and data for prompting users to input an instruction or select an instruction (such as menu data).
The map data contains sets of region (mesh) data, with each set having a unique identification number allotted thereto. Each set of region data contains data such as the image of the region and the length of one side of the region (or the length obtained by reducing the length in the actual shape of land to the scale used in the map). The map data is formed continuously with those sets of region data arranged both horizontally and vertically. Each set of region data also contains information about roads, intersections, corners, branching points, junctions, traffic lights, road signs (such as a one-way sign), tollgates, toll-road interchanges, landmarks, and the names (or symbols) of obstacles such as buildings, and location information (such as latitudes and longitudes, and coordinates (X, Y) in the map data)).
The roads in the map data are formed with links as plural line segments, and at least two links are connected with one node. This node is equivalent to a connecting portion such as an intersection, a corner, a branching point, a junction of roads, or a junction point such as a toll-road interchange. Besides, the connecting portion may also be a “roundabout” that is often seen in Europe. A roundabout is a connecting portion of roads, as shown in the square indicated by dotted lines in
Each link has a unique identification number allotted thereto (hereinafter referred to as the “link ID”), and each node has a unique identification number allotted thereto (hereinafter referred to as the “node ID”).
The link data contains information about the link ID of each link, the node IDs of two nodes to which the subject link is connected, the road distance corresponding to the subject link (the length of the road), the attributes, the direction, and the like. The information is associated with each link. The attribute of a road are information about the width of the road, the number of traffic lanes, the distinction between one-way traffic and two-way traffic, existence of a right-turn lane and a left-turn lane, and the like.
A link cost as a weight determined from the distance and the attribute of the road corresponding to the traveling road is set for each link. For example, in a case where the road distance is short or the width of the road is large, the time required for traveling through the length becomes shorter, and a small link cost is set.
The node data of each node contains information about the node ID of the node, the location information (the latitude and longitude, and the coordinates (X, Y) in the map data), the link ID of the link connected to the node, and the like.
A node cost as a weight indicative of the difficulty of movement (straight-ahead driving, a left or right turn, or the like) of a vehicle from a road corresponding to one link to a road corresponding to another link via the connecting portion corresponding to the node is set for each node.
The difficulty of the vehicle movement via the connecting portion varies with: (i) the direction of the movement (straight-ahead driving, a right turn, a left turn, or the like); (ii) the existence of traffic regulations (obstacles such as signal lights, traffic signs (for temporary stop, for example), tollgates, traffic regulators, and buildings) for restricting movement via the connecting portion; (iii) the number of roads leading to the connecting portion (a junction of three streets, four streets, or five streets); (iv) the shape of the connecting portion (such as T-shaped or across-shaped); (v) the attributes of at least one of the roads connected with the connecting portion (such as the width of the traveling road or the number of lanes in the traveling road before a left or right turn at an intersection, the width of the traveling road or the number of lanes in the traveling road after the left or right turn at the intersection, the width of the traveling road or the number of lanes in the road the traveling road faces before the left or right turn at the intersection, the width of the traveling road or the number of lanes in the traveling road before going straight ahead the intersection, the width of the traveling road or the number of lanes in the traveling road after going straight ahead the intersection, the width of the traveling road or the number of lanes in the road the traveling road crosses when going straight ahead the intersection, the existence of a left turn lane or a right turn lane in the traveling road before the left or right turn at the intersection, the distinction between one-way traffic and two-way traffic with respect to the traveling road before or after passing the intersection, and the like); and (vi) the condition of at least one of the roads connected with the connecting portion (the traffic condition (such as the congestion level) of the traveling road before the left or right turn at the intersection, the traffic condition of the traveling road after the left or right turn at the intersection, the traffic condition of the road the traveling road faces before the left or right turn at the intersection, the traffic condition of the traveling road before going straight ahead the intersection, the traffic condition of the traveling road-after going ahead the intersection, the traffic condition of the road the traveling road crosses when going straight ahead the intersection, and the like). The difficulty of the vehicle movement via the connecting portion also varies with combinations of two or more of the above factors (i) through (vi) (for example, the difficulty of the movement varies with the existence of traffic lights and the attribute of the road, even when the connecting portion has a cross-shaped).
With the above aspects being taken into consideration, a node cost is set suitably for each node. For example, in a case where the vehicle takes a right turn from a wide road to a narrow road via an intersection, it is difficult to make the turn, and therefore, a large node cost is set. Also, if there is not a signal light at the intersection in that case, the difficulty increases further, and therefore, an even larger node cost is set. If there is traffic congestion after the right turn, the difficulty increases further, and therefore, an even larger node cost is set.
The route guiding data contains image data, text data, and audio data to be used for a later described route guiding operation.
The data and the program for performing a route searching operation and a route guiding (route introducing) operation may be stored in a predetermined server connected to a communication network including the Internet and a mobile communication network (including wireless base stations), instead of being stored in the information memory unit 4. The data and the program are transmitted from the server when necessary, and may be output to the system control unit 8.
The display unit 5 includes a drawing unit, a buffer memory, and a display (such as a liquid crystal display or an organic EL display). Under the control of the system control unit 8, the drawing unit downloads and draws map image data or image data relating to a route guiding operation into the buffer memory, and the map image data or the image data (such as a map, a route, the distance of the route, and a list of charges) is displayed on the screen of the display. Under the control of the system control unit 8, a menu for prompting the user to input an instruction or select an instruction is also displayed on the display.
The audio output unit 6 includes a DAC (Digital/Analog signal Converter), an amplifier, and a speaker. After the DAC D-A converts the audio data relating to the route guiding output from the system control unit 8, the amplifier amplifies the audio data, and the audio data is output as sound waves through the speaker.
The operating unit 7 includes operating buttons for receiving input instructions and selection instructions (for designating destinations, for example) from users. An instruction signal corresponding to an operating button pushed by a user is output to the system control unit 8.
The system control unit 8 includes a CPU having operating functions, a work RAM, and a ROM for storing various types of data and programs. The system control unit 8 collectively controls the entire structure of the navigation apparatus S. The CPU of the system control unit 8 reads out and executes the program for performing a route searching operation and a route guiding operation (including the route searching program of the present invention) stored in the information memory unit 4, so that the system control unit 8 functions as the present location calculating unit 8a, the link cost calculating unit 8b as the link cost calculating means, the link learning level setting unit Bc as the link learning level setting means, the node cost calculating unit 8d as the determining means, the acquiring means, and the node cost calculating means, the node learning level setting unit 8e as the node learning level setting means, the route searching unit 8f as the route searching means, and the route guiding unit 8g as the presenting means.
The present location calculating unit 8a receives the speed data, the direction data, the acceleration data, the traveling distance data, and the like that are output from the sensor unit 2. On the basis of those data, the present location calculating unit 8a calculates the present location information (the latitude and longitude, and the coordinates (X, Y) in the map data) of the vehicle. Also, on the basis of the GPS data from the GPS receiving unit 1, the present location calculating unit 8a appropriately corrects the calculated information about the present location of the vehicle. The method of calculating the information about the present location of the vehicle is a known technique, and therefore, further explanation of it is omitted herein.
The link cost calculating unit 8b obtains and sets the link cost of each of the links constituting possible routes for reaching from the present location as a first point to the destination as a second point. On the basis of the link costs, the link cost calculating unit 8b calculates the total link cost of each of the possible routes. The link cost to be set for each link is determined in accordance with the distance, the attributes, the traffic condition, and the like of the road corresponding to the link, or is calculated using parameters such as the distance, the attributes, the traffic condition, and the like of the road corresponding to the link.
The link learning level setting unit 8c sets the learning level of each link in accordance with the frequency of the vehicle passing (traveling) through the road corresponding to the link. The learning level of the link is a value that is set in proportion to the number of times the vehicle passes (travels) through the road corresponding to the link (The value of the learning level becomes larger as the number of times the vehicle passes through the road becomes larger).
Using the link cost set for the link and the link learning level set for the link, the link cost calculating unit 8b calculates a new link cost of the link. After calculating a new link cost, the link cost calculating unit 8b calculates the total link cost of the possible routes, on the basis of the new link cost. The new link cost becomes smaller, as the link learning level becomes higher. In other words, the link cost becomes smaller, as the frequency of the vehicle passing through the road corresponding to the link becomes higher.
The node cost calculating unit 8d obtains and sets the node cost of each of the nodes connecting the at least two links. On the basis of those node costs, the node cost calculating unit 8d calculates the total node cost of the possible routes.
The node cost to be set for each node is selected from predetermined node costs in accordance with one or a combination of two or more of the following factors: (i) the traveling direction of the vehicle via the connecting portion; (ii) the existence of restricting element s for restricting movement via the connecting portion; (iii) The number of roads connected with the connecting portion; (iv) the shape formed with the roads at the connecting portion; (v) the attributes of at least one of the roads connected with the connecting portion; and (vi) the condition of at least one of the roads connected with the connecting portion. Alternatively, the node cost to be set for each node is calculated and obtained, using the parameters that are set on the basis of the factors (i) through (vi).
Accordingly, the node cost calculating unit 8d determines at least one of the following factors for each node when the vehicle moves from the road corresponding to one link to the road corresponding to another link via the connecting portion corresponding to the node. The factors are the moving direction of the vehicle via the connecting portion, the existence of restricting element s for restricting the movement, the number of links connected to the node, the shape formed with the roads corresponding to the links connected to the connecting portion corresponding to the node, the attribute of the road corresponding to at least one of the links connected with the node, and the traffic condition of the road.
The node learning level setting unit 8e sets the learning level for the node in accordance with the frequency of the vehicle moving from the road corresponding to one link to the road corresponding to another link via the connecting portion corresponding to the node. The learning level of the node is a value that is set in proportion to the number of times the vehicle passes through the connecting portion corresponding to the node (in other words, the node learning level becomes higher, as the number of times becomes larger).
Using the node cost set for the node and the node learning level set for the node, the node cost calculating unit 8d calculates a new node cost for the node. After calculating a new node cost, the node cost calculating unit 8d calculates the total node cost of each of the possible routes, on the basis of the new node cost. The new node cost is smaller as the node learning level is higher. In other words, the node cost becomes smaller, as the frequency of the vehicle passing through the connecting portion corresponding to the node becomes higher.
On the basis of the link cost and the node cost, the route searching unit 8f searches the possible routes for the optimum route. For example, the route searching unit 8f calculates the total cost of each of the possible routes. The total cost is the sum of the total link cost calculated by the link cost calculating unit 8b and the total node cost calculated by the node cost calculating unit 8d. The route searching unit 8f searches for the optimum route that is the possible route having the smallest total cost among all the possible routes. It is also possible to set more than one optimum routes.
The route guiding unit 8g performs map matching to determine whether the present location is located on a road, while recognizing the present location of the vehicle calculated by the present location calculating unit 8a. Using the optimum route detected by the route searching unit 8f, the route guiding unit 8g presents the information about the optimum route (such as the route guidance (introduction) to the optimum route, and the length and the charge of the optimum route) to users. The information is displayed on the display unit 5, and is output through the audio output unit 6.
Referring now to
Referring first to
When a user activates the car navigation apparatus S by operating the operating unit 7, a menu screen is shown on the display of the display unit 5. As the user operates the operating unit 7 to input a desired destination and instruct to search for a route through the menu screen, the route searching operation shown in
In the operation shown in
The system control unit 8 (the route searching unit 8f) then extracts all the links connected to the present point (step S2), and registers the extracted links (link IDs, for example) in a link table.
The system control unit 8 (the link cost calculating unit 8b) performs a link cost calculating operation for each of the links registered in the link table (step S3). The link cost calculating operation is shown in
The system control unit 8 (the route searching unit 8f) then determines whether the link cost calculation for all the links registered in the link table has been completed (step S4). If the link cost calculation for all the links registered in the link table has not been completed (“N” in step S4), the operation returns to step S3. If the link cost calculation for all the links registered in the link table has been completed (“Y” in step S4), the operation moves on to step S5.
In step S5, the system control unit 8 (the route searching unit 8f) determines whether the vehicle has reached the destination point. If the vehicle has not reached the destination point (“N” in step S5), the operation moves on to step S6. If the vehicle has reached the destination point (“Y” in step S5), the operation moves on to step S10.
In step S6, the system control unit 8 (the route searching unit 8f) extracts all the nodes connected to the links registered in the link table, and registers the extracted nodes (node IDs, for example) in a node table.
The system control unit 8 (the node cost calculating unit 8d) then performs a node cost calculating operation for the nodes registered in the node table (step S7). The node cost calculating operation is shown in
The system control unit 8 (the route searching unit 8f) then determines whether the node cost calculation for all the nodes registered in the node table has been completed (step S8). If the node cost calculation for all the registered nodes has not been completed (“N” in step S8), the operation returns to step S7. If the node cost calculation for all the registered nodes has been completed (“Y” in step S8), the operation moves on to step S9.
In step S9, the system control unit 8 (the route searching unit 8f) extracts all the links connected to all the nodes registered in the node table (step S9), and newly registers the extracted links in the link table. The operation then returns to step S3. In step S3, the system control unit 8 (the link cost calculating unit 8b) calculates the link costs of all the newly registered links in the same manner as described above (step S4). If the vehicle is determined not to have reached the destination in step S5 (“N” in step S5), all the nodes connected to the newly added links are extracted (step S6), and are newly registered in the node table. The node costs of the newly registered nodes are calculated (step S7).
In this manner, the link cost calculation and the node cost calculation are performed until the vehicle reaches the destination point. The link costs calculated in step S3 are added up for each possible route, and the total link cost is obtained by the system control unit 8 (the route searching unit 8f). Also, the node costs calculated in step S7 are added up for each possible route, and the total node cost is obtained by the system control unit 8 (the route searching unit 8f). If there are several possible routes between the present point and the destination point, a total link cost and a total node cost are calculated for each of the possible routes.
In step S10, the system control unit 8 (the route searching unit 8f) calculates the total cost that is the sum of the total link cost and the total node cost calculated for each of the possible routes (step S10). The system control unit 8 (the route searching unit 8f) then determines the possible route having the smallest total cost to be the optimum route (step S11).
After determining the optimum route, the system control unit 8 (the route guiding unit 8g) performs a route guiding operation. More specifically, the system control unit 8 (the route guiding unit 8g) recognizes the present location of the car calculated by the present location calculating unit 8a, and presents the information about the detected optimum route (such as the guide (introduction) to the optimum route, and the length and the charge of the optimum route) to the user. The information is displayed on the display unit 5, and is output through the audio output unit 6.
In the above described operation, the total link cost is added separately from the total node cost. However, every time the link cost and the node cost of a possible route are calculated, the link cost and the node cost may be added to the total cost (in this case, the procedure of step S10 becomes unnecessary).
Referring now to
In the operation shown in
The system control unit 8 (the link cost calculating unit 8b) then determines whether a learning level is set for the selected link (step S33). If a learning level is set (“Y” in step S33), the system control unit 8 (the link cost calculating unit 8b) calculates a new link cost of the link, using the above link cost and the learning level of the link (obtained from the link learning level setting unit 8c) (step S34). If a link learning level is not set (“N” in step S33), the operation moves on to step S35.
This new link cost is calculated in accordance with the following calculation formula (1):
LC=(100−K1×S)×LC0/100 (1)
Wherein, “LC” represents the new link cost, and “LC0” represents the original link cost (the above determined link cost). Also, “S” represents the link learning level, showing the number of times the vehicle has passed the road corresponding to the subject link, for example. Further, “K1” represents a constant or a function that defines the change rate between the new link cost LC and the original link cost LC0.
The system control unit 8 (the link cost calculating unit 8b) adds the ultimately obtained or calculated link cost to the total link cost of the corresponding possible route, and stores (updates) the addition result as a new total link cost (step S35). The operation then returns to a procedure shown in FIG. 3 (or moves on to step S4). In this manner, every time a link cost is calculated, the link cost is added to the total link cost of the corresponding possible route.
The link cost calculating procedures of steps S33 and S34 involving a link learning level can be made disabled by a learning function lock or the like. In such a case, the determined link cost is added to the total link cost of the corresponding possible route, and the addition result is stored (updated) as a new total link cost in step S35.
Referring now to
In the operation shown in
The system control unit 8 (the node cost calculating unit 8d) then determines whether restricting element s (such as signal lights) exist for restricting movement via the connecting portion corresponding to the selected node (step S72), and stores the determination result. This determination on whether such restricting element s exist can be made on the basis of the map data.
The system control unit 8 (the node cost calculating unit 8d) then determines the shape (such as a T-shaped or a cross-shaped) formed with the roads connected to the connecting portion corresponding to the selected node (step S73), and stores the determination result. The determination on the connection shape can be made on the basis of the angle of the approach link with respect to another link connected to the selected node.
The system control unit 8 (the node cost calculating unit 8d) then determines the attributes (such as a large width (10 m or more), a normal width (5 m or more to less than 10 m), or a small width (less than 5 m)) of the roads corresponding to the approach link and the exit link among the roads connected with the connecting portion corresponding to the selected node (step S74). The determination results are stored. As described above, checking may be performed to determine the number of lanes in the traveling road, instead of the widths of the roads corresponding to the approach link and the exit link.
On the basis of the determination results of steps S71 through S74, the system control unit 8 (the node cost calculating unit 8d) acquires (or stores at a certain address in the RAM, for example) a node cost suitable for the combination of the determined shape formed with the connected roads, the attribute of the road, the existence of the restricting element s, and the moving direction, from the predetermined node costs (such as the node costs registered in a node cost table as shown in
As shown in
The node costs shown in
In a case where the connecting portion corresponding to the subject node is a right angle crossroad with signal lights, the width of the road corresponding to the approach link is small, and the width of the road corresponding to the exit link is large, the signal waiting times for both left turns and right turns are long. Therefore, the difficulty of turning left and the difficulty of turning right are both large. If there is not a signal light at the right angle crossroad, the difficulty of turning left and the difficulty of turning right are larger.
In a case where the connecting portion corresponding to the subject node is a right angle crossroad with signal lights, the width of the road corresponding to the intersecting link is large, and the width of the road corresponding to the exit link is small, the signal waiting time for going straight ahead is long. In such a case, the difficulty of moving straight ahead is large. In the opposite case to that, the signal waiting time for going straight ahead is short, and the difficulty of moving straight ahead is small. In a case where the connecting portion corresponding to the subject node is a right angle crossroad without a signal light, the width of the road corresponding to the intersecting link is large, and the width of the road corresponding to the exit link is small, the difficulty of going straight ahead (intersecting) is very large.
In a case where the connecting portion corresponding to the subject node is a T-shaped intersection with signal lights, the difficulty of turning right and the difficulty of turning left are the same (compared with a case of a right angle crossroad with signal lights, the difficulty of turning right at a T-shaped intersection is smaller). If the width of the road corresponding to the exit link is large in such a case, the signal waiting times for both right and left turns are long, and the difficulty of turning right and the difficulty of turning left are large. If there is not a signal light at the T-shaped intersection, the difficulty of turning right is very large.
Although examples of the basic principles have been described above, other various factors may be taken into consideration when a node cost is determined. The basic principles are also determined in accordance with the traffic rules or the like in each country, as some countries have different traffic rules from one another. For example, since car drivers keep to the left side of the road in the United Kingdom, as in Japan, the above described basic principles also apply in the United Kingdom. Meanwhile, car drivers keep to the right side of the road in countries like Germany and France. Therefore, the difficulty of turning right and the difficulty of turning left based on the above described principles are reversed in those countries. Further, if the traffic rules allow right turns at a red light, as in the United States, the difference between the difficulty of turning right and the difficulty of turning left may be made larger.
In the node cost table shown in
The system control unit 8 (the node cost calculating unit 8d) then determines whether the number of links connected to the selected node is five or more and there is a restricting element (such as a signal light) (step S76). If those conditions are satisfied (“Y” in step S76), the system control unit 8 (the node cost calculating unit 8d) calculates and acquires a new node cost (by the formula of NC=(n−3)×NC0, with “n” being the number of connected links, “NC0” being the original node cost, “NC” being the new node cost) suitable for the number of connected links, on the basis of the node cost acquired in step S75 (step S77). As the number of connected roads corresponding to the links (a junction of five streets, a junction of six streets, . . . ) increases, the signal waiting time becomes longer, and the difficulty of movement becomes larger. The number of preset node costs is increased accordingly.
The system control unit 8 (the node cost calculating unit 8d) then obtains the traffic information as to the roads from the traffic information receiving unit 3, and determines the traffic condition of the road corresponding to the exit link connected to the selected node (step S78). For example, the system control unit 8 (the node cost calculating unit 8d) determines whether there is a traffic jam. If there is a traffic jam (“Y” in step S78), the system control unit 8 (the node cost calculating unit 8d) adds a cost generated by the traffic jam to the node cost acquired in step S77, so as to obtain a new node cost (step S79). In a case where there is not congestion information on the road corresponding to the approach link (taking into consideration the fact that congestion information is not provided for all the roads and the roads connected to a road that is provided with congestion information and is actually congested with traffic are often also congested with traffic even though congestion information is not provided for such roads) and the vehicle is to take a left or right turn into a road congested with traffic (the road corresponding to the exit link), the chances are that the road before the turn (the road corresponding to the approach link) is also congested with traffic, and the difficulty of a left or right turn increases. In view of this, the node cost is increased accordingly. In a case where the vehicle is to turn right from a road congested with traffic, the signal waiting time before a right turn is longer (the blue light might be skipped several times), and the difficulty of a right turn increases. In view of this, the node cost is increased accordingly. If a node cost is to be set for atoll-road interchange, the node cost is increased in accordance with the congestion level of the toll road ahead (the road corresponding to the exit link).
In this manner, the node cost acquired in step S79 is set for the subject node (node ID).
Although the traffic condition (congestion level) of the road corresponding to the exit link is checked in step S78, the present invention is not limited to that. For example, the traffic condition (congestion level) of the road corresponding to the opposed link may be checked. In a case where the road corresponding to the opposed link is congested with traffic, the difficulty of a right turn increases, and the node cost is increased accordingly.
It is also possible to check the traffic condition (congestion level) of the road corresponding to the exit link in steps S71 through S74, and the node costs are set, with the traffic conditions (congestion levels) of the roads being incorporated into the node cost table.
The system control unit 8 (the node cost calculating unit 8d) then determines whether a learning level is set for the selected node (step S80). If a learning level is set (“Y” in step S80), the system control unit 8 (the node cost calculating unit 8d) calculates a new node cost for the node, using the node cost acquired and set in step S79 and the learning level of the node (obtained from the node learning setting unit 8e) (step S81). Even in a case where the vehicle is to move from the road corresponding to the approach link to the road corresponding to the exit link via the connecting portion corresponding to the node, the difficulty of the movement decreases as the driver becomes accustomed to the movement if the frequency of the movement (the number of times the vehicle moves in the same way) is large. The node cost is reduced accordingly. On the other hand, if a learning level is not set for the node (“N” in step S80), the operation moves on to step S82.
This new node cost is calculated by the following calculation formula (2):
NC=(100−K2(S1+S2)/2)×NC0/100 (2)
Here, “NC” represents the new node cost, and “NC0” represents the original node cost (the node cost acquired in step S79). Further, “(S1+S2)/2” represents the learning level of the node, which is a value obtained by dividing the sum of the learning level S1 of the approach link (the number of times the vehicle has passed through the road corresponding to the approach link) and the learning level S2 of the exit link (the number of times the vehicle has passed through the road corresponding to the exit link) by “2”. Accordingly, the above described link learning level set for each link can be used. Alternatively, a node learning level is not determined by the learning level S1 of the approach link and the learning level S2 of the exit link, but the number of times the vehicle passes through the connecting portion corresponding to the node may be counted and set as the node learning level.
In a case where the vehicle passes through the road corresponding to the same link and the intersection corresponding to the same node, the difficulty of the vehicle movement varies with the directions of the movement, as indicated by pattern 1 and pattern 2 shown in
However, the node learning level ((S1+S2)/2) in the calculation formula (2) does not vary between the pattern 1 and the pattern 2. More specifically, a distinction is not made between a case where the vehicle moves from the road corresponding to one link to the road corresponding to another link via the connecting portion corresponding to a node and a case where the vehicle moves from the road corresponding to the other link to the road corresponding to the one link via the connecting portion corresponding to the node. To counter this problem, the node learning level in the case of the pattern 1 is set as “S12”, and the node learning level in the case of the pattern 2 is set as “S21”. The node learning level setting unit 8e should preferably be designed to count the number of times the vehicle passes through the connecting portion corresponding to the node, with respect to the node learning level S12 and the node learning level S21 separately from each other. In this manner, different node learning levels can be distinctly set for the pattern 1 and the pattern 2.
In a case where node learning levels are distinctly set for the pattern 1 and the pattern 2 separately from each other as described above, a new node cost for the pattern 1 is calculated by the following calculation formula (3), and a new node cost for the pattern 2 is calculated by the following calculation formula (4), so as to set different node costs for the pattern 1 and the pattern 2.
NC=(100−K2×S12)×NC0/100 (3)
NC=(100−K2×S21)×NC0/100 (4)
In each of the above formulas (2) through (4), “K2” represents the constant or the function that defines the change rate (ratio) between the new node cost NC and the previous node cost NC0, and the value K2 is preferably the same as the change rate K1 (in the formula (1)) between the new link cost LC and the previous link cost LC0. Accordingly, when the vehicle travels through a route, each link cost and each node cost decrease at the same rate (ratio) in accordance with the travel frequency. Thus, the inconvenience mentioned as the problems to be solved by the present invention can be avoided. More specifically, in a case where the vehicle travels through the route A and the route B (described in the Problems to be Solved by the Invention) with the same frequency, the total cost of the route A is “700” (“500” in total link cost and “200” in total node cost), for example, and the total cost of the route B is “800” (“750” in total link cost and “50” in total node cost). The total cost of the route A does not change after the learning, and is constantly selected as the optimum route. As long as the total cost of the route A does not change after the learning and is constantly selected as the optimum route in a case where the vehicle travels through the route A and the route B in the same frequency, “K2” in each of the formulas (2) through (4) is not necessarily the same as “K1” in the formula (1), but may be in the neighborhood of “K1” (there may be a constant difference between K1 and K2).
The system control unit 8 (the node cost calculating unit 8d) adds the ultimately acquired or calculated node cost to the total node cost of the corresponding possible route (the possible route extending through the connecting portion corresponding to the node), and stores (updates) the addition result as a new total node cost (step S82). In this manner, every time a node cost is calculated, the calculated node cost is added to the total node cost of the corresponding possible route.
The node cost calculating procedures involving a node learning level in steps S80 and S81 can be disabled by a learning function lock or the like. In such a case, the node cost acquired and set in step S79 is added to the total node cost of the corresponding possible route, and the addition result is stored (updated) as a new total node cost in step S82.
As described above, in accordance with this embodiment, when a vehicle moves from the road corresponding to one link to the road corresponding to another link via the connecting portion corresponding to a node, checking is performed to make at least one of the following determinations: a determination on the direction of the movement of the vehicle via the connecting portion, a determination on whether there is a restricting element for restricting the movement, a determination on the number of links connected to the node, a determination on the shape formed with the connected roads corresponding to the links connected to the connecting portion corresponding to the node, a determination on the attribute of the road corresponding to at least one of the links connected to the node, and a determination on the conditions of the roads. A node cost is then obtained in accordance with one or a combination of two or more of the determination results. On the basis of the node cost and the link cost, an optimum route is searched for. With this arrangement, the total cost of each route becomes more accurate, and the optimum route can be detected with higher precision. Thus, a route through which users can easily travel by car can be determined.
Furthermore, a concept of learning level is applied not only for each link cost but also for each node cost. Accordingly, the link cost and the node cost exhibit the same change rate in accordance with the travel frequency of the vehicle. In this manner, the problem that the total costs of the routes with the same travel frequency are reversed after the learning, and the optimum route can be detected with high precision.
In the above described embodiment, each node cost is acquired in accordance with the results of determinations on the direction of the vehicle movement via the connecting portion corresponding to the node, whether there is a restricting element for restricting the movement via the connecting portion, and the like. For example, information about the waiting time for a restricting element (such as a signal light), the switching cycles of the restricting element, and the like, may be contained in the data for performing a route searching operation. For each node having such a restricting element, the waiting time and the switching cycles of the restricting element (such as a signal light) are checked, and the node cost is acquired in accordance with the check results. Also, the changes caused in the amount of traffic and the switching cycles of a signal light by the time at which a route searching operation starts or the time at which a route guiding operation starts are taken into consideration, and each node cost may be dynamically set.
Although the route searching device and method of the present invention are implemented in the car navigation apparatus S mounted on a vehicle in the above described embodiment, but are not limited to these, the route searching device and method of the present invention may be implemented in a communication navigation system or the like.
The communication navigation terminal 10 includes a GPS (Global Positioning System) receiving unit 1, a sensor unit 2, a traffic information receiving unit 3, a display unit 5, an audio output unit 6, and an operating unit 7 that are the same as those in the car navigation apparatus S. The communication navigation terminal 10 further includes a communication unit or the like for performing communications with the communication center device 11 via the mobile communication network 12, and a terminal control unit (not shown) that collectively controls those components and controls information exchange with the communication center device 11.
Meanwhile, the communication center device 11 includes a communication unit that performs communications with the communication navigation terminal 10 via the mobile communication network 12, a memory unit that stores data and programs for performing route search operations and route guiding (introducing) operations stored (recorded) in an information memory unit 4 as in the car navigation apparatus S, and a system control unit that substantially has the same functions as those (including the present location calculating unit 8a, the link cost calculating unit 8b, the link learning level setting unit 8c, the node cost calculating unit 8d, the node learning level setting unit 8e, the route searching unit 8f, the route during unit 8g, and the like) of the system control unit 8 in the car navigation apparatus S.
In this structure, the communication center device 11 transmits (provides) the minimum map data or the like to the communication navigation terminal 10, in response to a request from the navigation terminal 10 via the mobile communication network 12. The communication center device 11 also performs a route searching operation that is the same as the operation illustrated in
With this communication navigation system SX, the same effects as those achieved with the car navigation apparatus S can be achieved.
Although the present invention is applied to the car navigation system S and the communication navigation system SX involving a vehicle as a moving (movable) body in the above described embodiments, the present invention is not limited to those embodiments. As described in the following, the present invention can be applied to many other structures, and can achieve the same effects as those achieved with the above described embodiments.
For example, the present invention may be applied to a mobile terminal (such as a portable telephone device, a PDA (Personal Digital Assistant), a PHS (Personal Handy-phone System), or a laptop PC (Personal Computer) that is carried by a pedestrian or a bicycle rider (or mounted on a bicycle), with the pedestrian (that may be an animal) or the bicycle being the moving (movable) body. In such a case, the “roads” corresponding to links include pedestrian roads (sidewalks), and the “road conditions” include the congestion level of each sidewalk.
The present invention may also be applied to a navigation apparatus that is mounted on a ship or an aircraft, with the ship or the aircraft being the moving (movable) body. In such a case, the “roads” corresponding to links include ship routes or air routes, and the “connecting portion” corresponding to each node is equivalent to a harbor or an airport.
The present invention may also be applied to a mobile terminal that is carried by a train passenger, with the passenger being the moving (movable) body. In such a case, the “roads” corresponding to links are equivalent to train lines (such as the Yamanote Line), the “connecting portion” corresponding to a node is equivalent to a station with transfers of trains, and the “road conditions” include the congestion level of each train. In this case, the train map data as the map data is stored in the mobile terminal of the train passenger or in a server device connected to the mobile terminal via a mobile communication network. Further, information such as train timetables is stored.
In this case, the mobile terminal of the train passenger makes at least one of the following determinations when the train passenger moves (transfers) from the “line” corresponding to one link to the “line” corresponding to another link via the “station with transfers” corresponding to a node to which at least two links are respectively connected. The determinations include a determination on whether there is a restricting element (such as stairs or a ticket gate for restricting the movement, a determination on the number of links connected to the node, a determination on the shape formed with the “lines” corresponding to the links connected to the connecting portion corresponding to the node, a determination on the attribute (such as train intervals) of the “line” corresponding to at least one of the links connected to the node, and a determination on the conditions (such as the congestion level) of the “line” (a determination on the time required for a transfer may be included herein).
On the basis of the determination results, the mobile terminal of the train passenger acquires a node cost in accordance with one or a combination of two or more of the following factors: the existence of a restricting element, the number of connected links, the shape of the connected point of the road corresponding to the link, the attribute of the road, and the conditions of the road. The mobile terminal then detects the optimum route from the possible routes to travel from the first point (Tokyo Station, for example) to the second point (Shibuya Station, for example), on the basis of the link cost (determined by the distance of the line, the attribute of the line, and the like, as in the foregoing embodiments) and the acquired node cost (here, the setting of the link and node learning levels, and the calculations of a new link cost and a new node cost on the basis of the link and node learning levels, are also taken into consideration). In this case, a node cost table that is the same as the table shown in
It should be noted that the present invention is not limited to the embodiments specifically disclosed above, but other variations and modifications may be made without departing from the scope of the present invention.
The above described embodiments are merely examples, and any structure that is technically the same as that claimed in the present invention and achieves the same effects as those claimed is within the technical scope of the present invention.
It should be noted that the entire contents of Japanese Priority Patent Application No. 2004-138718, filed on May 7, 2004, including the specification, the claims, the drawings, and the abstract, are incorporated herein by reference.
Number | Date | Country | Kind |
---|---|---|---|
2004-138718 | May 2004 | JP | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/JP05/07825 | 4/25/2005 | WO | 00 | 9/17/2007 |