Route calculation device, route calculation method, and program

The route calculation device optimizes route calculation by adjusting costs around specified nodes, reducing computational complexity and ensuring inclusion of via nodes, thus enhancing efficiency and reliability in communication networks.

JP7720006B2Active Publication Date: 2025-08-07NIPPON TELEGRAPH & TELEPHONE CORP
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2024510606
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-03-28
Publication Date
2025-08-07
Estimated Expiration
2042-03-28

AI Technical Summary

Technical Problem

In large-scale communication networks, calculating multiple routes that avoid overlapping nodes or edges and include specified via nodes leads to an enormous amount of calculation, especially when considering conditions like not passing through the same node or edge more than twice.

Method used

A route calculation device that adjusts the cost values of nodes and edges around a specified via node using a predetermined reduction policy, allowing it to search for the shortest route that includes the via node without dividing the search section, by reducing or increasing costs as necessary.

Benefits of technology

Reduces the computational burden of route calculation by ensuring the inclusion of specified nodes while optimizing route selection, thereby enhancing efficiency and reliability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007720006000001
    Figure 0007720006000001
  • Figure 0007720006000002
    Figure 0007720006000002
  • Figure 0007720006000003
    Figure 0007720006000003
Patent Text Reader

Abstract

This path calculating device (1) is characterized by comprising : a cost adjusting unit (101) that uses a predetermined policy of selecting a reduction target to select nodes and / or edges peripheral to a designated passing-via node and that reduces a to-be-adjusted cost value from the initial costs of the selected nodes and / or edges, thereby calculating a cost value as adjusted; and a path calculating unit (102) that uses the cost value as adjusted to determine the shortest path, wherein when the determined shortest path does not include the designated passing-via node, the cost adjusting unit (101) repeats the selection of the nodes and / or edges peripheral to the designated passing-via node, thereby calculating a cost value as adjusted, and the path calculating unit (102) repeats the determination of the shortest path for which the cost has been reduced until the shortest path including the designated passing-via node is determined.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a route calculation device, a route calculation method, and a program for calculating a route in a network made up of multiple nodes. [Background technology]

[0002] In currently widespread communication networks, such as optical path networks, multiple users and services share a single optical path. In the future, however, with the advancement of the Internet of Things (IoT), it is expected that a wide variety of communication devices will be connected with high quality and low latency, and optical paths will be allocated to each user and service. If an optical path is allocated to each user or service, a huge number of optical paths will be required.

[0003] In route design for optical path networks, multiple routes may be designed to ensure reliability. Although there are various requirements for such route design, the basic requirement is to avoid route duplication (overlapping nodes or edges on the network). As shown in Figure 7, in route calculation for a communication network, a "node" is a vertex corresponding to a communication device such as a server, and an edge is a link connecting nodes, represented by a line (edge). Furthermore, a common method for determining a route is to find the shortest path from the start node to the end node using Dijkstra's algorithm or the like (see Non-Patent Document 1). In this case, the shortest path found by Dijkstra's algorithm is used as the first route, and then the nodes and edges that make up the first route are excluded, and a second route is found using the shortest path.

[0004] However, when designing multiple routes using the shortest route, it is sometimes impossible to design routes that do not overlap, or even if multiple routes can be designed, the second route may be longer. In such cases, it is necessary to find not only the shortest route but also multiple route candidates such as second, third, etc., and then design the optimal combination of routes. [Prior art documents] [Non-patent literature]

[0005] [Non-Patent Document 1] "Dijkstra algorithm", [online], [searched March 11, 2022], Internet<URL:https: / / nw.tsuda.ac.jp / lec / dijkstra / > Summary of the Invention [Problem to be solved by the invention]

[0006] Furthermore, when designing a more reliable route, it may be necessary to specify nodes to pass through (passing nodes). In such cases, one method is to divide the search section and perform a route search for each section. For example, as shown in Figure 7, when searching for a route that passes through node D (the "specified via node" described below), node D is considered to be the end node, and the search section is divided into sections such as "node A → node D" (symbol α in Figure 7) and "node D → node F" (symbol β in Figure 7), and a route search is performed in each section, and the shortest route is calculated from the results obtained.

[0007] However, in large-scale networks, as the number of specified nodes increases, the number of route searches increases, resulting in a large amount of calculation. Furthermore, when considering conditions such as not passing through the same node or edge more than twice, i.e., not having overlapping nodes or edges, route searches become even more complicated. Furthermore, when multiple routes are designed by searching for multiple route candidates, such as the second, third, etc., in addition to the shortest route, the amount of calculation becomes enormous.

[0008] The present invention has been made in view of the above points, and an object of the present invention is to reduce the amount of calculation required for route calculation in which passing nodes are specified. [Means for solving the problem]

[0009] The route calculation device according to the present invention is a route calculation device that calculates a route for a network made up of a plurality of nodes, and includes a storage unit that stores connection information indicated by each node constituting a network having a node connected to a user terminal as a start and end point, connection information indicated by each edge indicating a link between the nodes, and an initial cost at the node and the edge when calculating the route, and the route calculation device selects nodes and / or edges around a designated via node that indicates a designated via node from among the routes that pass between the start and end nodes using a predetermined reduction target selection policy, and reduces the initial cost of the selected node and / or edge by an adjusted cost value calculated by a predetermined adjusted cost value calculation logic, The system comprises a cost adjustment unit that calculates an adjusted cost value, and a route calculation unit that uses the adjusted cost value to search for the shortest route that minimizes the total cost value of the nodes and / or edges between the start and end nodes, and when the searched shortest route does not include the specified via node, the cost adjustment unit repeatedly selects nodes and / or edges around the specified via node, reduces the adjusted cost value for the costs of the selected nodes and / or edges, and calculates the adjusted cost value, and the route calculation unit repeatedly searches for shortest routes with the reduced costs of the nodes and / or edges until the shortest route that includes the specified via node is found. [Effects of the Invention]

[0010] According to the present invention, it is possible to reduce the amount of calculation required for route calculation in which passing nodes are specified. [Brief explanation of the drawings]

[0011] [Figure 1] 1 is a diagram showing the overall configuration of a route calculation system including a route calculation device according to an embodiment of the present invention. [Figure 2] 10 is a flowchart showing the overall process flow (only one cost reduction) executed by the route calculation device according to the present embodiment. [Figure 3A] FIG. 10 is a diagram showing an example of a route for explaining a predetermined selection order rule for nodes and edges. [Figure 3B] FIG. 10 is a diagram illustrating an example in which nodes and edges are alternately selected to reduce costs as a predetermined selection order rule. [Figure 4A] FIG. 10 is a diagram illustrating an example of a predetermined selection order rule in which the costs of both nodes and edges are reduced at once for each hop count. [Figure 4B] FIG. 10 is a diagram illustrating an example of cost reduction for a route including a designated transit node. [Figure 5] 10 is a flowchart showing the overall process flow (cost reduction multiple times) executed by the route calculation device according to the present embodiment. [Figure 6] FIG. 2 is a hardware configuration diagram illustrating an example of a computer that realizes the functions of the route calculation device according to the present embodiment. [Figure 7] FIG. 10 is a diagram showing an example of dividing a search section and searching for a route including a specified via node according to a conventional example. DETAILED DESCRIPTION OF THE INVENTION

[0012] Next, an embodiment of the present invention (hereinafter referred to as "the present embodiment") will be described. FIG. 1 is a diagram showing the overall configuration of a route calculation system 1000 including a route calculation device 1 according to this embodiment. The route calculation system 1000 includes a network 3 configured with multiple nodes and edges, a route calculation device 1, and a network control device 2. The route calculation device 1 is a device that performs route calculations to realize network services. The network control device 2 controls the network using the route information calculated by the route calculation device 1, specifically, a device that rewrites the route information of each node.

[0013] When performing route calculation, if nodes to be passed through are specified, the route calculation device 1 according to this embodiment calculates a route that passes through the specified passed nodes (hereinafter referred to as "specified passed nodes") without dividing the search section for each specified passed node, as in the prior art. The route calculation device 1 sets in advance the costs of nodes and edges around the specified via node to be smaller than the costs of other nodes and edges. As a result, when searching for a route using the shortest route, the route calculation device 1 makes it easier to select nodes around the specified via node, thereby enabling a route that passes through the specified via node to be searched for.

[0014] For example, in the network topology shown in Fig. 3A (to be described later), assume that the shortest route between user terminal U1 and user terminal U2 is N1 → N4 → N7 → N9. In this case, when searching for a route that passes through a specified via node (e.g., node N5), the route calculation device 1 reduces the costs of surrounding nodes and edges including the specified via node N5. As a result, the route calculation device 1 calculates a route that passes through the specified via node N5, such as N1 → N2 → N5 → N8 → N9. When calculating a route that passes through this specified via node, the route calculation device 1 does not need to divide the search section as in the prior art, and therefore the amount of calculation required to calculate a route that passes through the specified node can be reduced. The functions of the route calculation device 1 will be specifically described below.

[0015] As shown in FIG. 1, the route calculation device 1 includes a control unit 10, a storage unit 11, an input unit 12, a communication unit 13, and an output unit 14. The input unit 12 is an interface that accepts input of information about designated passing nodes from a management device (not shown) of the route calculation system 1000. The input unit 12 also accepts input of connection information, cost information, and the like about the network that is input in advance to the storage unit 11.

[0016] The communication unit 13 is a communication interface for transmitting and receiving various types of information to and from the nodes connected via the network 3 and the network control device 2 and the like. The output unit 14 is an interface that outputs route information that passes through the calculated specified via node (for a route that includes the specified via node) to an output device such as a monitor for a management device (not shown) of the route calculation system 1000.

[0017] The storage unit 11 is configured with a hard disk, flash memory, RAM (Random Access Memory), etc., and temporarily stores programs for executing the functions of the control unit 10 and information necessary for the processing of the control unit 10. The storage unit 11 includes a network information storage unit 110, a cost adjustment policy storage unit 120, and a route information storage unit .

[0018] Connection information for each node constituting the network and connection information between user terminals and nodes are stored in the network information storage unit 110. This network information also stores information on the cost (initial cost) that is initially set for each node and edge.

[0019] The cost adjustment policy storage unit 120 stores a reduction target selection policy 121 and a reduction count policy 122 as policies for adjusting the cost for route calculation assigned to each node or each edge. The reduction target selection policy 121 is a policy for selecting nodes and edges around a specified passing node as targets for cost reduction. The reduction count policy 122 specifies whether the number of cost reductions for nodes and edges selected as reduction targets is limited to one time or multiple times (not limited to one time, multiple times including one time, i.e., one or more times). The reduction target selection policy 121 and the reduction count policy 122 will be described in detail later.

[0020] The control unit 10 controls all of the processes executed by the route calculation device 1, and includes a cost adjustment unit 101 and a route calculation unit 102.

[0021] When searching for a route that passes through a specified passing node, the cost adjustment unit 101 selects nodes and edges whose costs are to be adjusted. Then, the cost adjustment unit 101 adjusts the costs of the nodes and edges based on predetermined cost adjustment policies (specifically, a reduction target selection policy 121, a reduction count policy 122, etc.) stored in the storage unit 11.

[0022] Here, the reduction target selection policy 121 and the reduction count policy 122 will be explained. <Reduction target selection policy> The reduction target selection policy 121 stores selection rules (node selection rules, edge selection rules) for nodes and edges to be selected as targets for cost reduction.

[0023] Node Selection Rules -Select nodes in order of proximity to the specified transit node. When the user terminal reaches the node that is directly accommodated (start / end node), nodes farther from the specified transit node are not selected. -Selection ends when there are no more selectable nodes.

[0024] Edge selection rules Of the edges connected to the selected node (the N-th hop node described below), select the edge closest to the specified transit node. -Selection ends when there are no more selectable edges.

[0025] The cost adjustment unit 101 selects nodes and edges in order of proximity to the designated transit node based on the above-mentioned "node selection rule" and "edge selection rule." In this case, the cost adjustment unit 101 may reduce the cost in the order of node, edge, node, edge, as the number of hops (N=0, 1, 2, 3, . . .) from the designated transit node, or may simultaneously reduce the costs of the nodes and edges corresponding to the number of hops. The cost adjusting unit 101 determines the value of the cost to be reduced by using a predetermined logic (adjusted cost value calculation logic) to be described later.

[0026] The route calculation unit 102 calculates the optimum route between the specified user terminals, that is, the route with the lowest cost (shortest route). The route calculation unit 102 first searches for the shortest route at the initial cost for each node and each edge. Then, the route calculation unit 102 stores the total cost of the shortest route at the calculated initial cost in the storage unit 11. Furthermore, after the cost adjustment unit 101 adjusts the costs of the nodes and edges, the route calculation unit 102 calculates the shortest route with the adjusted costs.

[0027] If the route calculation unit 102 calculates an optimal route (shortest route) using the adjusted cost and finds that the route includes a specified via node, the cost adjustment unit 101 terminates the cost adjustment process and stores the route information including the specified via node in the route information storage unit 130 (Figure 1) in the storage unit 11. Furthermore, if the route calculation unit 102 calculates the optimal route (shortest route) using the adjusted cost and the route does not include the specified via node, the cost adjustment unit 101 continues the process of further reducing the costs of nodes and edges. When the route calculation unit 102 calculates a route that does not include a specified via node, the cost adjustment unit 101 may adjust the cost of both or either of the nodes and edges that make up the route to increase the cost. Whether the cost adjusting unit 101 increases the costs of nodes and edges that make up a route that does not include a specified transit node is set in advance based on instruction information from a management device such as the route calculation system 1000.

[0028] <Adjustment cost value calculation logic> Next, a predetermined logic (adjusted cost value calculation logic) executed by the cost adjustment unit 101 to calculate a value (adjusted cost value) for adjusting (reducing) an edge or cost will be described. Here, "C" is the cost of a node or edge, and "k" is an adjusted cost value (prescribed amount) that is a numerical value for reducing the cost.

[0029] [Logic 1] A predetermined adjusted cost value (prescribed amount) "k" is subtracted from or divided by the cost "C" of a node or edge. In other words, the adjusted cost value is calculated using Ck or C / k.

[0030] [Logic 2] The minimum value k_min, maximum value k_max, average value k_ave, and median value k_med of the costs of the nodes and edges that make up the network are set as predetermined adjustment cost values (prescribed amounts), and the cost to be adjusted (reduced) is subtracted or divided by these values. For example, C-k_min or C / k_min. By using these minimum value k_min, maximum value k_max, average value k_ave, and median value k_med, it is possible to automatically determine the adjusted cost value without manual setting by an administrator, etc. Furthermore, when using Dijkstra's algorithm to search for the shortest path, it is required that the cost values used in the calculation do not become negative values, so a value that satisfies this requirement may be selected from the minimum value k_min, maximum value k_max, average value k_ave, and median value k_med.

[0031] [Logic 3] The costs of the nodes and edges that make up the network are assumed to follow a normal distribution, and after excluding outliers in advance, the cost to be adjusted (reduced) is subtracted or divided by the minimum cost value k_min, maximum cost value k_max, average cost value k_ave, and median cost value k_med. To detect outliers, for example, the Smirnoff-Grubbs test is used.

[0032] [Logic 4] The costs of the nodes and edges that make up the network are assumed to follow a mixed normal distribution, and the overall distribution of costs is estimated using kernel density estimation. If the estimation results indicate a high probability of following a mixed normal distribution, parameters are estimated (average and variance estimation), a determination is made as to which distribution the cost of the specified transit node belongs, and the cost to be adjusted (reduced) is subtracted or divided by the average value of the distribution to which the cost of the specified transit node belongs.

[0033] In addition, when the route calculation unit 102 calculates a route that does not include a specified via node as the shortest route, and the cost adjustment unit 101 increases the cost of the nodes and / or edges that make up the route, the cost to be adjusted (increased) is calculated by adding, rather than subtracting, and multiplying, rather than dividing, the specified adjusted cost value (prescribed amount) calculated by the above-mentioned specified logic (adjusted cost value calculation logic).

[0034] <Processing by route calculation device> Next, the flow of the process executed by the route calculation device 1 will be described. FIG. 2 is a flowchart showing the overall process flow (only one cost reduction) executed by the route calculation device 1 according to this embodiment. It is assumed that the storage unit 11 of the route calculation device 1 stores in advance connection information such as nodes and edges that constitute the network, and information on initial costs. In addition, it is assumed here that the reduction count policy 122 (FIG. 1) is set to only 1 for the number of times of cost reduction for nodes or edges selected as reduction targets. Furthermore, it is assumed that a value (adjusted cost value) for adjusting (reducing) edges or costs is also set in advance.

[0035] When the route calculation device 1 starts processing, first, the cost adjustment unit 101 sets the number of hops H to H=0 (step S1). This number of hops H indicates the number of hops from a designated passed node, and H=0 is the designated passed node.

[0036] Next, the cost adjustment unit 101 reduces the cost value of the designated passed node by a specified amount (adjusted cost value) (step S2). Note that here, the cost value of the designated passed node becomes the initial cost value. Then, the route calculation unit 102 executes a shortest route search using the cost adjusted by the cost adjustment unit 101 (step S3).

[0037] Next, the route calculation unit 102 determines whether the calculated shortest route is a route that includes the specified via node (step S4). If the calculated shortest route includes the specified via node (step S4->Yes), it is determined that the optimum route has been found, and the process ends.

[0038] On the other hand, if the route calculation unit 102 determines that the calculated shortest route does not include the specified via node (step S4→No), the cost adjustment unit 101 sets the number of hops H=H+1 (step S5).

[0039] Then, the cost adjustment unit 101 reduces the cost of the nodes and / or edges that are the targets of cost reduction by a specified amount (adjusted cost value) based on a "predetermined selection order rule" for selecting the nodes and / or edges that are the targets of cost reduction (step S6). Here, the predetermined selection order rule may select nodes and edges alternately, such as node → edge → node → edge, as will be described later, or may select both nodes and edges. Next, the route calculation unit 102 executes a shortest route search using the cost adjusted by the cost adjustment unit 101 (step S7).

[0040] Next, the route calculation unit 102 determines whether the calculated shortest route is a route that includes the specified via node (step S8). If the calculated shortest route includes the specified via node (step S8->Yes), it is determined that the optimum route has been found, and the process ends.

[0041] On the other hand, if the route calculation unit 102 determines that the calculated shortest route does not include the specified via node (step S8 → No), the route calculation unit 102 determines whether there is a selectable node and / or edge that corresponds to the reduction target selection policy (node selection rule, edge selection rule) for the next node and / or edge based on the predetermined selection order rule (step S9). Here, for example, if the start / end node (the node accommodating the user terminal) has been reached or there is no selectable edge, it is determined that there is no next selectable node and / or edge (step S9 → No), and the process ends. On the other hand, if it is determined that there are selectable nodes and / or edges (step S9→Yes), the process proceeds to the next step S10.

[0042] In step S10, the cost adjustment unit 101 increases the cost of the nodes and / or edges that make up the calculated shortest route, which was determined in step S8 not to be a route that includes the specified via node, by a specified amount (adjusted cost value), and then returns to the process of setting the number of hops H=H+1 in step S5. Whether or not to perform the process of increasing the cost of a route that does not include the designated transit node in step S10 is set in advance by an administrator of the route calculation system 1000 or the like.

[0043] <Node and edge selection order rules> Here, a predetermined selection order rule for nodes and edges selected by the route calculation unit 102 as targets for cost reduction will be described.

[0044] [Selection order rule 1: Select nodes and edges alternately] 3A, it is assumed that node N5 is designated as a designated transit node on the route between user terminal U1 and user terminal U2, and the start and end nodes are nodes N1 and N9. In this example, the predetermined selection order rule is a rule that sequentially decreases the node cost and the edge cost. The selection order will be explained below with reference to Figure 3B. Note that the arrows in Figure 3B indicate the selection order.

[0045] First, the cost adjustment unit 101 reduces the cost of the designated via node N5 by a specified amount, with the number of hops H=0 (0th hop). Then, if the result of the shortest path calculation shows that a path including the designated via node N5 is not calculated, the path calculation unit 102 determines the next edge to be reduced in cost based on [Selection Order Rule 1] and uses the <Edge Selection Rule>. Here, of the edges connected to the node (nodes N2, N8) selected as the next number of hops H=1 (1st hop), the edge (edge E) closest to the designated via node N5 is selected as the next edge to be reduced in cost. 25 ,E 58 ) is selected, and the cost is reduced. Then, if the result of the shortest path calculation does not result in a path including the specified via node N5 being calculated, the path calculation unit 102 sets the next node as a cost reduction target based on [Selection Order Rule 1], and determines the next target for reduction using the <Node Selection Rule>. Here, the nodes (nodes N2 and N8) selected with the number of hops H=1 (first hop) are selected, and the cost is reduced. In this way, the path calculation device 1 repeats the process of sequentially reducing the node cost and edge cost until a path including the specified via node is found.

[0046] If the number of times of cost reduction for a node or edge selected as a reduction target is set to only one, the process ends when the selection target reaches the start or end node or when there are no more selectable edges. The process when the number of times of cost reduction is set to multiple times (one or more) as the reduction count policy 122 will be described later with reference to FIG.

[0047] [Selection order rule 2: Select both nodes and edges] As shown in FIG. 4A, it is assumed that an initial cost is set for each node and each edge in the path between user terminal U1 and user terminal U2. Here, the shortest path before cost reduction is node N1→N4→N7→N9, and the total cost of the nodes and edges on this path is 20+20+20+20+20+20+20=140. In this example, the predetermined selection order rule is a rule that reduces both the node cost and the edge cost at once for each number of hops H.

[0048] In this selection order rule, nodes to be deleted are selected in order of proximity to the designated transit node, that is, for each hop count, based on the <node selection rule>. Also, edges to be selected are selected based on the <edge selection rule> from among the edges connected to the selected node (the Nth hop node), the edge closest to the designated transit node. The cost adjustment unit 101 reduces the cost by a specified amount (adjusted cost value) of "15".

[0049] As shown in Figure 4B, the total cost of the route (nodes N1 → N2 → N5 → N8 → N9) that passes through designated transit node N5 when the initial cost is set is "180." Then, when the number of hops H = 0 (0th hop), that is, when the cost of designated transit node N5 is reduced by "15," the total cost (20 + 20 + 20 + 20 + 5 + 20 + 20 + 20 + 20) is "165." At this point in time, this is greater than the total cost of the shortest route, "140," so the cost reduction process continues.

[0050] Next, the number of hops H=1 (first hop), that is, the cost of nodes N2 and N8 and the cost of edge E 25 ,E 58 If each of the above costs is further reduced by 15, the total cost (20 + 20 + 5 + 5 + 5 + 5 + 5 + 20 + 20) becomes 105. At this point, the total cost is less than the shortest route cost of 140, so the route that passes through specified via node N5 (nodes N1 → N2 → N5 → N8 → N9) is calculated as the shortest route.

[0051] <Route calculation process with multiple cost reductions> 2, the process of searching for the shortest route including the specified via node when the number of times the cost of a node or edge is reduced is set to only one time has been described. Here, the process when the number of times the cost of a node or edge is reduced is not limited to one time but is performed multiple times (one or more times) will be described.

[0052] FIG. 5 is a flowchart showing the overall process flow (multiple cost reductions) executed by the route calculation device 1 according to this embodiment. The process of repeating cost reduction is basically the same as that shown in Fig. 2, but in step S9, when the route calculation unit 102 determines whether or not there is a next selectable node and / or edge based on a predetermined selection order rule, if it determines that there is no next selectable node and / or edge (step S9 → No), the process does not end as shown in Fig. 2, but returns to step S1 and continues. Then, in step S2, the cost value of the currently specified via node is further reduced by a specified amount (adjusted cost value). In this way, the current cost values of the nodes and edges are further reduced in order from those closest to the designated passed node, thereby searching for the shortest route including the designated passed node.

[0053] In this way, by reducing the cost multiple times, the route calculation device 1 can more reliably search for a route that includes the specified transit node.

[0054] <Hardware configuration> The route calculation device 1 according to this embodiment is realized by a computer 900 having a configuration as shown in FIG. 6, for example. 6 is a hardware configuration diagram showing an example of a computer 900 that realizes the functions of the route calculation device 1 according to this embodiment. The computer 900 includes a CPU (Central Processing Unit) 901, a ROM (Read Only Memory) 902, a RAM 903, an HDD (Hard Disk Drive) 904, an input / output I / F (Interface) 905, a communication I / F 906, and a media I / F 907.

[0055] The CPU 901 operates based on a program stored in the ROM 902 or the HDD 904, and performs control by the control unit 10 (FIG. 1). The ROM 902 stores a boot program executed by the CPU 901 when the computer 900 is started up, programs related to the hardware of the computer 900, and the like.

[0056] The CPU 901 controls an input device 910 such as a mouse or keyboard, and an output device 911 such as a display or printer, via an input / output I / F 905. The CPU 901 acquires data from the input device 910 via the input / output I / F 905, and outputs generated data to the output device 911. The input / output I / F 905 corresponds to the input unit 12 and the output unit 14 of the route calculation device 1.

[0057] The HDD 904 stores programs executed by the CPU 901 and data used by the programs. The communication I / F 906 receives data from other devices via a communication network (e.g., NW (Network) 920) and outputs the data to the CPU 901, and also transmits data generated by the CPU 901 to other devices via the communication network. The communication I / F 906 corresponds to the communication unit 13 of the route calculation device 1.

[0058] The media I / F 907 reads a program or data stored in the recording medium 912 and outputs it to the CPU 901 via the RAM 903. The CPU 901 loads a program related to a target process from the recording medium 912 onto the RAM 903 via the media I / F 907, and executes the loaded program. The recording medium 912 is an optical recording medium such as a DVD (Digital Versatile Disc) or a PD (Phase Change Rewritable Disc), a magneto-optical recording medium such as an MO (Magneto Optical Disk), a magnetic recording medium, a semiconductor memory, or the like.

[0059] For example, when a computer 900 functions as the route calculation device 1 of the present invention, a CPU 901 of the computer 900 executes a program loaded onto a RAM 903 to realize the functions of the route calculation device 1. Furthermore, data stored in the RAM 903 is stored in an HDD 904. The CPU 901 reads and executes a program related to a target process from a recording medium 912. Alternatively, the CPU 901 may read a program related to a target process from another device via a communication network (NW 920).

[0060] <Effects> The effects of the route calculation device 1 and the like according to the present invention will be described below. The route calculation device according to the present invention is a route calculation device 1 that calculates a route for a network 3 that is made up of a plurality of nodes, and includes a storage unit 11 that stores connection information indicated by each node that constitutes the network 3, which has nodes connected to a user terminal as its start and end points, and each edge that indicates a link between the nodes, as well as initial costs at the nodes and edges when calculating the route, and a route calculation device that uses a predetermined reduction target selection policy 121 to select nodes and / or edges around a designated via node that indicates a designated via node from among the routes that pass between the start and end nodes, and calculates an adjusted cost value calculated by a predetermined adjusted cost value calculation logic from the initial costs of the selected nodes and / or edges. The network includes a cost adjustment unit 101 that reduces the adjusted cost value and calculates an adjusted cost value, and a route calculation unit 102 that uses the adjusted cost value to search for the shortest route that minimizes the total cost value of the nodes and / or edges between the start and end nodes. If the searched shortest route does not include the specified via node, the cost adjustment unit 101 repeatedly selects nodes and / or edges around the specified via node, reduces the adjusted cost value for the costs of the selected nodes and / or edges, and calculates the adjusted cost value, and the route calculation unit 102 repeatedly searches for shortest routes with reduced node and / or edge costs until a shortest route that includes the specified via node is found.

[0061] In this way, the route calculation device 1 can search for the shortest route that includes the specified passed-through node without dividing the search section, thereby reducing the amount of calculation required for route calculation in which passed-through nodes are specified.

[0062] In addition, in the route calculation device 1, the predetermined reduction target selection policy is characterized in that it selects nodes in order of proximity to a designated transit node, and selects the edge closer to the designated transit node from among the edges connected to the selected nodes, and when the selected node reaches the start and end nodes, it does not select nodes farther from the designated transit node.

[0063] In this way, the route calculation device 1 selects nodes and / or edges in order of proximity to the specified via node to reduce costs and more reliably searches for a route that includes the specified via node. Furthermore, when the route calculation device 1 reaches the start and end nodes, it does not select nodes that are farther away from the specified via node, thereby preventing a route that does not include the specified via node from being easily searched for.

[0064] Furthermore, in the route calculation device 1, when the selected node reaches the start and end nodes, the cost adjustment unit 101 repeatedly selects nodes and / or edges in order of proximity to the specified via node, further reduces the adjusted cost value for the cost of the selected nodes and / or edges, and calculates the adjusted cost value, and the route calculation unit 102 repeatedly searches for the shortest route with the node and / or edge costs further reduced until the shortest route including the specified via node is found.

[0065] When the number of times of cost reduction is set to one or more (multiple times including once), even if the node selected by the cost adjustment unit 101 as the target for cost reduction has reached the start or end node, the route calculation device 1 further selects nodes and / or edges in order of proximity to the specified via node, and the route calculation unit 102 performs route calculation with a further reduced cost, thereby more reliably searching for a route including the specified via node.

[0066] Furthermore, in the route calculation device 1, when the searched shortest route does not include the specified via node, the cost adjustment unit 101 further performs a calculation to add an adjusted cost value to the current cost of the node and / or edge that belongs to the route that does not include the specified via node, and calculates the adjusted cost value.

[0067] In this way, when a route that does not include the specified via node is searched for, the route calculation device 1 increases the cost of the nodes and / or edges that belong to that route, thereby more reliably searching for a route that includes the specified via node.

[0068] In addition, in the route calculation device 1, the predetermined adjusted cost value calculation logic is characterized in that the adjusted cost value is one of the minimum, maximum, average, and median of the costs of the nodes and / or edges that make up the network 3.

[0069] In this way, when using Dijkstra's algorithm in route calculation, the route calculation device 1 can select a value from the minimum, maximum, average, and median so that the cost value of a node or edge does not become negative. Furthermore, by using the minimum, maximum, average, and median values, it becomes possible to automatically set and execute the process for the adjusted cost value without relying on manual setting by an administrator of the route calculation system 1000, etc.

[0070] The present invention is not limited to the above-described embodiments, and many modifications can be made by a person skilled in the art within the technical concept of the present invention. (1) In the above embodiment, the cost of both the nodes and the edges is reduced sequentially or simultaneously. However, only the cost of the edges may be reduced.

[0071] (2) In the above-described embodiment, the cost of a node and / or edge is uniformly reduced by a specified amount (adjusted cost value) while expanding the range of cost reduction. As another example, the cost of a node may first be reduced by a specified amount to the minimum value, and if a route including the specified via node is not found, the cost of the adjacent edge may then be reduced by a specified amount to the minimum value. Furthermore, if a route including the specified via node is not found, the cost of the node with the next hop count may be reduced by a specified amount to the minimum value in the order node → edge → node → edge...

[0072] (3) In the above embodiment, the edges and nodes to be reduced are reduced by the same specified amount (adjusted cost value). However, this is not limited to this, and the reduction may be based on the magnitude of the initial cost. For example, if the costs of nodes A and B are "10" and "20," respectively, the specified reduction amounts may be "1" and "2," respectively, which is a 10% reduction of the initial cost.

[0073] (4) In the above embodiment, the designated transit node is one, but a plurality of designated transit nodes may be set.

[0074] (5) In the above embodiment, the shortest path search is performed by reducing only the edge cost of the edge closer to the specified transit node among the edges connected to the node selected as the reduction target (reduction target node). Alternatively, the costs of all edges connected to the reduction target node may be reduced.

[0075] (6) In the above embodiment, nodes and edges on both the start and end sides of the specified transit node are selected as targets for cost reduction. However, it is also possible to select only nodes and edges closer to the start node (e.g., node N1 in Figure 3A) from the perspective of the specified transit node as targets for cost reduction.

[0076] (7) When lowering the cost on either the source or destination side, the decision as to which side to lower the cost on can be made by selecting the side with the smallest minimum number of hops between the specified transit node and the source node, or by using the physical location of the node to select the side closer to the source node. [Explanation of symbols]

[0077] 1. Route calculation device 2 Network control device 3 Network 10 Control Unit 11 Storage section 12 Input section 13 Communications Department 14 Output section 101 Cost Adjustment Department 102 Route calculation unit 110 Network information storage unit 120 Cost adjustment policy storage unit 121 Reduction Target Selection Policy 122 Reduction Policy 130 Route information storage unit 1000 Route Calculation System

Claims

1. A route calculation device that calculates a route in a network made up of a plurality of nodes, a storage unit that stores connection information indicated by each node constituting a network having a node connected to a user terminal as a start point and each edge indicating a link between the nodes, and an initial cost at the time of route calculation at the nodes and the edges; a cost adjustment unit that selects, from among the paths passing between the start and end nodes, nodes and / or edges around a designated via node that indicates a designated via node using a predetermined reduction target selection policy, and calculates an adjusted cost value by reducing the adjusted cost value calculated by a predetermined adjusted cost value calculation logic from the initial cost of the selected nodes and / or edges; a route calculation unit that uses the adjusted cost value to search for a shortest route that minimizes the total cost of nodes and / or edges between the start and end nodes, If the searched shortest path does not include the specified passed node, the cost adjustment unit repeatedly selects nodes and / or edges around the specified passed node, reduces the adjusted cost value for the cost of the selected nodes and / or edges, and calculates an adjusted cost value; The route calculation unit repeats searching for the shortest route with reduced costs of the nodes and / or edges until the shortest route including the specified via node is found. A route calculation device characterized by:

2. The predetermined reduction target selection policy selects nodes in order of proximity to the designated transit node, and selects an edge closer to the designated transit node among the edges connected to the selected nodes, and when the selected node reaches a start or end node, does not select a node farther from the designated transit node.

2. The route calculation device according to claim 1,

3. When the selected node reaches a start or end node, the cost adjustment unit repeats the selection of nodes and / or edges in order of proximity to the specified transit node, and further reduces the adjusted cost value for the costs of the selected nodes and / or edges to calculate an adjusted cost value; The route calculation unit repeats searching for a shortest route with further reduced costs for the nodes and / or edges until the shortest route including the specified via node is found.

3. The route calculation device according to claim 2, wherein:

4. When the searched shortest path does not include the specified via node, the cost adjustment unit further calculates a cost value after adjustment by adding the adjusted cost value to the current cost of the node and / or edge for the node and / or edge belonging to the path that does not include the specified via node.

4. The route calculation device according to claim 1, wherein:

5. The predetermined adjusted cost value calculation logic sets the adjusted cost value to one of the minimum, maximum, average, and median of the costs of the nodes and / or edges that constitute the network.

5. The route calculation device according to claim 1, wherein:

6. A route calculation method for a route calculation device that calculates a route in a network made up of a plurality of nodes, comprising: The route calculation device a storage unit for storing connection information indicated by each node constituting a network having a node connected to a user terminal as a start point and each edge indicating a link between the nodes, and an initial cost at the time of route calculation at the node and the edge; a cost adjustment step of selecting, from among the paths passing between the start and end nodes, nodes and / or edges around a designated via node that indicates a designated via node using a predetermined reduction target selection policy, and reducing the initial cost of the selected nodes and / or edges by an adjusted cost value calculated by a predetermined adjusted cost value calculation logic to calculate an adjusted cost value; a route calculation step of searching for a shortest route that minimizes the total cost of nodes and / or edges between the start and end nodes using the adjusted cost value; If the searched shortest path does not include the specified via node, in the cost adjustment step, repeatedly selecting nodes and / or edges around the specified via node, reducing the adjusted cost value for the cost of the selected nodes and / or edges, and calculating an adjusted cost value; In the route calculation step, a search for a shortest route with reduced costs for the nodes and / or edges is repeated until the shortest route including the specified via node is found. A route calculation method characterized by:

7. A program for causing a computer to function as the route calculation device according to any one of claims 1 to 5.

Citation Information

Patent Citations

  • Communication path control method, its execution device, and recording medium recording its processing program

    JP2001016262A

  • Route calculation method, route calculation program, and route calculation apparatus

    JP2008054233A

  • Method of evaluating route in multi-hop communication network, and node of multi-hop communication network

    JP2008301446A