JP2013247667A - Route specifying method and device and route specifying program in network - Google Patents

Route specifying method and device and route specifying program in network Download PDF

Info

Publication number
JP2013247667A
JP2013247667A JP2012122622A JP2012122622A JP2013247667A JP 2013247667 A JP2013247667 A JP 2013247667A JP 2012122622 A JP2012122622 A JP 2012122622A JP 2012122622 A JP2012122622 A JP 2012122622A JP 2013247667 A JP2013247667 A JP 2013247667A
Authority
JP
Japan
Prior art keywords
route
node
basic
cycle
specifying
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2012122622A
Other languages
Japanese (ja)
Other versions
JP5958697B2 (en
Inventor
Shinya Ishida
晋哉 石田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2012122622A priority Critical patent/JP5958697B2/en
Publication of JP2013247667A publication Critical patent/JP2013247667A/en
Application granted granted Critical
Publication of JP5958697B2 publication Critical patent/JP5958697B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

PROBLEM TO BE SOLVED: To provide a route specifying method and device, and a route specifying program, by which a processing load can be reduced when specifying three or more different routes which do not share a link/node on a way of the route connecting two nodes.SOLUTION: The method includes: specifying k route-containing closed routes (C200+C400, C300) which pass an arbitrary first node (N300) and second node (N500) and do not intersect each other based on the closed route closed by a plurality of nodes and links in a network; and specifying different (k+1) routes between the first node and the second node from the route-containing closed route.

Description

本発明は複数のノードがリンク接続されたネットワークにおける経路を特定する方法および装置並びに経路特定プログラムに関する。   The present invention relates to a method and apparatus for specifying a route in a network in which a plurality of nodes are linked and a route specifying program.

複数のノードがリンク接続されたネットワークにおいて、冗長な経路を特定する方法としては、ダイクストラ(Dijkstra)法(非特許文献1を参照)を繰り返し用いる方法が最も代表的である。たとえば、各リンクにコスト値が与えられ、経路のコストがその経路が経由するリンクのコスト和で与えられるグラフを考えると、まず、2つの端点ノードを結ぶ経路として、コストが最小となる経路(第1の経路)をDijkstra法に従って特定する。次いで、特定された経路に含まれる全てのリンクあるいはノードを除外し、再度、上記端点ノードを結ぶ経路として、コストが最小となる経路(第2の経路)をDijkstra法に従って特定する。こうして、端点ノード間でリンクやノードを共有しない2つの異なる経路(第1の経路と第2の経路)を特定することができる。   In a network in which a plurality of nodes are linked, a method of repeatedly using a Dijkstra method (see Non-Patent Document 1) is the most representative method for specifying a redundant route. For example, when considering a graph in which a cost value is given to each link and the cost of the route is given by the sum of the costs of the links through which the route passes, first, the route with the lowest cost as a route connecting two end point nodes ( The first route) is specified according to the Dijkstra method. Next, all links or nodes included in the specified route are excluded, and a route (second route) with the lowest cost is specified according to the Dijkstra method again as a route connecting the end point nodes. In this way, it is possible to specify two different routes (first route and second route) that do not share links or nodes between the end point nodes.

しかしながら、上述したDijkstra法を繰り返して適用する方法では、グラフのトポロジにトラップ構造が含まれる場合、迂回経路を特定できないことがある。例えば、図1に示したグラフにおいて、ノードN100とノードN400とを結ぶ経路を特定する場合を考える。まず、Dijkstra法により、リンクL100−L900−L500−L400をこの順に連結した経路が最小コスト経路(第1の経路)として特定されると、続いて、第1の経路に含まれる全てのリンク(図中の破線リンク)を除外する。すると、これ以上ノードN100とノードN400とを結ぶ経路を特定することができなくなる。即ち、このグラフのトポロジはトラップ構造を含んでいる、と言うことができる。   However, in the method of repeatedly applying the Dijkstra method described above, a detour route may not be specified if the topology of the graph includes a trap structure. For example, consider a case where the route connecting the node N100 and the node N400 is specified in the graph shown in FIG. First, when a route connecting links L100-L900-L500-L400 in this order is specified as a minimum cost route (first route) by the Dijkstra method, then all links included in the first route ( (Broken link in the figure) is excluded. Then, it becomes impossible to specify a route connecting the node N100 and the node N400 any more. That is, it can be said that the topology of this graph includes a trap structure.

このような課題に対処するため、バンダリ(Bhandari)法が知られている(非特許文献2を参照)。この方法によれば、Dijkstra法を繰り返し用いる工程を拡張することによりグラフのトポロジの一部を変換し、トラップ構造の基となるトラップリンクを特定する。続いて、特定されたトラップリンクを除いたグラフにおいて、再度、Dijkstra法を繰り返し用いることにより、リンクを共有しない2つの異なる経路を特定する。したがって、Bhandari法を繰り返し用いることで複数の異なる経路の計算が可能である。   In order to cope with such a problem, the Bhandari method is known (see Non-Patent Document 2). According to this method, a part of the topology of the graph is converted by extending the process of repeatedly using the Dijkstra method, and the trap link that is the basis of the trap structure is specified. Subsequently, in the graph excluding the identified trap link, two different routes that do not share the link are identified by repeatedly using the Dijkstra method again. Therefore, it is possible to calculate a plurality of different routes by repeatedly using the Bhandari method.

E. W. Dijkstra, “A note on two problems in connexion with graphs”, Numerische Mathematik, 1(1959), pp.269-271E. W. Dijkstra, “A note on two problems in connexion with graphs”, Numerische Mathematik, 1 (1959), pp.269-271 Ramesh Bhandari,“Survivable Networks: Algorithms for diverse routing”, Springer (1999)Ramesh Bhandari, “Survivable Networks: Algorithms for diverse routing”, Springer (1999)

しかしながら、Bhandari法を用いる方法では、トラップリンクを特定し、トラップリンクの影響を排除するための計算量が比較的大きいために、Bhandari法を繰り返し用いるとトラップ構造を避けるための処理負荷が大きくなる。たとえばk個の異なる経路を計算する場合、Dijkstra法あるいはそれに代わる最短経路計算法を最大で{(k+3k−2)/2}回繰り返す必要があり、kの値が大きくなるにつれて計算量が二次関数的に増加する。 However, in the method using the Bhandari method, the amount of calculation for specifying the trap link and eliminating the influence of the trap link is relatively large. Therefore, when the Bhandari method is used repeatedly, the processing load for avoiding the trap structure increases. . For example, when calculating k different routes, the Dijkstra method or the alternative shortest route calculation method needs to be repeated {(k 2 + 3k−2) / 2} at most, and the amount of calculation increases as the value of k increases. It increases in a quadratic function.

そこで、本発明の目的は、2つのノードを結ぶ経路途中のリンク/ノードを共有しない3以上の異なる経路を特定する際の処理負荷を低減することができる経路特定方法および装置並びに経路特定プログラムを提供することにある。   Therefore, an object of the present invention is to provide a path specifying method and apparatus and a path specifying program capable of reducing the processing load when specifying three or more different paths that do not share a link / node in the middle of a path connecting two nodes. It is to provide.

本発明による経路特定方法は、複数のノードがリンク接続されたネットワークにおける経路特定方法であって、前記ネットワーク内にある複数のノードおよびリンクにより閉じられた経路(以下、閉路という。)に基づいて、任意の第1ノードおよび第2ノードを通り互いに交差しないk個(kは2以上の整数)の経路含有閉路を特定し、前記k個の経路含有閉路から前記第1ノードと前記第2ノードとの間の異なる(k+1)個の経路を特定する、ことを特徴とする。
本発明による経路特定装置は、複数のノードがリンク接続されたネットワークにおける経路特定装置であって、前記ネットワーク内にある複数のノードおよびリンクにより閉じられた経路(以下、閉路という。)に基づいて、任意の第1ノードおよび第2ノードを通り互いに交差しないk個(kは2以上の整数)の経路含有閉路を特定する閉路特定手段と、前記k個の経路含有閉路から前記第1ノードと前記第2ノードとの間の異なる(k+1)個の経路を特定する経路特定手段と、を有することを特徴とする。
本発明によるプログラムは、複数のノードがリンク接続されたネットワークにおける経路特定装置としてコンピュータを機能させるプログラムであって、前記ネットワーク内にある複数のノードおよびリンクにより閉じられた経路(以下、閉路という。)に基づいて、任意の第1ノードおよび第2ノードを通り互いに交差しないk個(kは2以上の整数)の経路含有閉路を特定する機能と、前記k個の経路含有閉路から前記第1ノードと前記第2ノードとの間の異なる(k+1)個の経路を特定する機能と、を前記コンピュータで実現させることを特徴とする。
The route specifying method according to the present invention is a route specifying method in a network in which a plurality of nodes are linked, and is based on a route closed by a plurality of nodes and links in the network (hereinafter referred to as closed circuit). K path-containing cycles that pass through any first node and second node and do not cross each other (k is an integer of 2 or more), and the first node and the second node are identified from the k path-containing cycles. And (k + 1) different paths between and are identified.
The route specifying device according to the present invention is a route specifying device in a network in which a plurality of nodes are linked, and is based on a route closed by a plurality of nodes and links in the network (hereinafter referred to as closed circuit). A path specifying means for specifying k (k is an integer of 2 or more) path-containing cycles that do not cross each other through any first node and second node, and the first node from the k path-containing cycles Route specifying means for specifying different (k + 1) routes from the second node.
A program according to the present invention is a program that causes a computer to function as a path specifying device in a network in which a plurality of nodes are linked, and is a path closed by a plurality of nodes and links in the network (hereinafter referred to as a closed path). ) To specify k path-containing cycles that do not cross each other through any first node and second node (k is an integer greater than or equal to 2), and A function of specifying different (k + 1) paths between a node and the second node is realized by the computer.

本発明によれば、2つのノードを結ぶ経路途中のリンク/ノードを共有しない3以上の異なる経路を特定する際の処理負荷を低減することができる。   According to the present invention, it is possible to reduce the processing load when specifying three or more different routes that do not share a link / node in the middle of a route connecting two nodes.

図1は背景技術による経路特定方法を説明するためのネットワークトポロジを示す図である。FIG. 1 is a diagram showing a network topology for explaining a route specifying method according to the background art. 図2は本発明の第1実施形態による経路特定装置の機能構成を示す概略的ブロック図である。FIG. 2 is a schematic block diagram showing a functional configuration of the path identifying device according to the first embodiment of the present invention. 図3は第1実施形態による経路特定方法を説明するための模式的ネットワーク図である。FIG. 3 is a schematic network diagram for explaining the route specifying method according to the first embodiment. 図4は図3に示すネットワークの基本グラフ情報を示す模式図である。FIG. 4 is a schematic diagram showing basic graph information of the network shown in FIG. 図5は第1実施形態における閉路隣接グラフを生成するフローチャートである。FIG. 5 is a flowchart for generating a closed adjacency graph in the first embodiment. 図6は第1実施形態における全域木を概念的に示す模式図である。FIG. 6 is a schematic diagram conceptually showing the spanning tree in the first embodiment. 図7は図6における閉路C100の閉路情報を示す模式図である。FIG. 7 is a schematic diagram showing the closed circuit information of the closed circuit C100 in FIG. 図8は図6における閉路C200の閉路情報を示す模式図である。FIG. 8 is a schematic diagram showing the closed circuit information of the closed circuit C200 in FIG. 図9は図6における閉路C300の閉路情報を示す模式図である。FIG. 9 is a schematic diagram showing the closed circuit information of the closed circuit C300 in FIG. 図10は図6における閉路C400の閉路情報を示す模式図である。FIG. 10 is a schematic diagram showing the closed circuit information of the closed circuit C400 in FIG. 図11(A)は本発明の第1実施形態による経路特定方法を説明するための閉路隣接グラフを示す図であり、図11(B)は図11(A)の閉路隣接グラフに対応する閉路隣接グラフ情報を示す模式図である。FIG. 11A is a diagram showing a closed adjacency graph for explaining the route specifying method according to the first embodiment of the present invention, and FIG. 11B is a closed circuit corresponding to the closed adjacency graph of FIG. It is a schematic diagram which shows adjacent graph information. 図12は図11に示す閉路隣接グラフを用いた閉路探索グラフを示す模式図である。FIG. 12 is a schematic diagram showing a cycle search graph using the cycle adjacency graph shown in FIG. 図13は第1実施形態による経路特定方法を示すフローチャートである。FIG. 13 is a flowchart showing a route specifying method according to the first embodiment. 図14は図12に示す閉路探索グラフから探索除外リンクを除いたグラフを示す模式図である。FIG. 14 is a schematic diagram showing a graph obtained by removing a search exclusion link from the cycle search graph shown in FIG. 図15は第1実施形態による経路含有閉路を表す閉路情報を示す模式図である。FIG. 15 is a schematic diagram showing cycle information representing a route-containing cycle according to the first embodiment. 図16は本発明の第2実施形態による経路特定方法を説明するための閉路隣接グラフを示す図である。FIG. 16 is a diagram showing a closed adjacency graph for explaining a route specifying method according to the second embodiment of the present invention. 図17は図16に示す閉路隣接グラフを用いた閉路探索グラフを示す模式図である。FIG. 17 is a schematic diagram showing a cycle search graph using the cycle adjacency graph shown in FIG. 図18は本発明の第3実施形態による経路特定装置のグラフ情報記憶部に格納される併合閉路情報を示す模式図である。FIG. 18 is a schematic diagram showing merged cycle information stored in the graph information storage unit of the route specifying device according to the third embodiment of the present invention. 図19は本発明の第4実施形態による経路特定方法を示すフローチャートである。FIG. 19 is a flowchart showing a route specifying method according to the fourth embodiment of the present invention. 図20は本発明の第5実施形態による経路特定装置の機能構成を示す概略的ブロック図である。FIG. 20 is a schematic block diagram showing a functional configuration of a path identifying device according to the fifth embodiment of the present invention.

本発明の実施形態によれば、複数のノードがリンクで接続されたネットワークにおいて、任意の第1ノードと第2ノードとを共通の頂点として含むk(>=2)個の経路含有閉路を特定し、前記k個の経路含有閉路から、重複しない(k+1)本の異なる経路を特定する。前記k個以上の経路含有閉路を特定するための手続きは、前記ネットワークのトポロジに基づいて作成される閉路探索グラフにおける、最短経路計算のk回の繰り返しに帰着させて行う。このように、少ない計算量で、第1ノードと第2ノードとを結ぶ経路途中のリンク/ノードを共有しない3以上の異なる経路を特定することができる。   According to the embodiment of the present invention, in a network in which a plurality of nodes are connected by links, k (> = 2) path-containing cycles including any first node and second node as a common vertex are identified. Then, (k + 1) different routes that do not overlap are identified from the k route-containing cycles. The procedure for specifying the k or more route-containing cycles is performed by reducing the shortest route calculation k times in the cycle search graph created based on the topology of the network. In this way, it is possible to specify three or more different routes that do not share a link / node in the middle of the route connecting the first node and the second node with a small amount of calculation.

本発明の実施形態による経路特定装置は情報処理装置として構成可能であり、たとえばネットワーク内のサーバ装置、ネットワーク・スイッチ、ルータ、パーソナルコンピュータ、携帯電話端末、PHS(Personal Handyphone System)、PDA(Personal Data AssistanceあるいはPersonal Digital Assistant)、スマートフォン、カーナビゲーション端末あるいはゲーム端末等に設けることができる。すなわち、本実施形態による経路特定装置は、中央処理装置(CPU; Central Processing Unit)、一次記憶装置(RAM; Random Access Memory)および二次記憶装置(ハードディスク駆動装置(HDD; Hard Disk Drive)を備える情報処理装置に実装可能である。   The route specifying device according to the embodiment of the present invention can be configured as an information processing device, for example, a server device in a network, a network switch, a router, a personal computer, a mobile phone terminal, a PHS (Personal Handyphone System), a PDA (Personal Data). Assistance or Personal Digital Assistant), a smartphone, a car navigation terminal, a game terminal, or the like. That is, the path specifying device according to the present embodiment includes a central processing unit (CPU), a primary storage device (RAM), and a secondary storage device (hard disk drive (HDD)). It can be mounted on an information processing apparatus.

また、本実施形態による経路決定機能は、二次記憶装置に記憶されているプログラムをCPU上で実行することにより実現されてもよいし、回路等のハードウェアにより実現されてもよい。また、プログラムは、二次記憶装置ではなく、コンピュータが読み取り可能な記録媒体に記憶されていてもよい。例えば、記録媒体としては、フレキシブルディスク、光ディスク、光磁気ディスク、および、半導体メモリ等の可搬性を有する媒体を用いることが得きる。以下、本発明の実施形態および実施例について図面を参照しながら詳細に説明する。   Further, the route determination function according to the present embodiment may be realized by executing a program stored in the secondary storage device on the CPU, or may be realized by hardware such as a circuit. Further, the program may be stored in a computer-readable recording medium instead of the secondary storage device. For example, a portable medium such as a flexible disk, an optical disk, a magneto-optical disk, and a semiconductor memory can be used as the recording medium. Hereinafter, embodiments and examples of the present invention will be described in detail with reference to the drawings.

1.第1実施形態
1.1)構成
図2に示すように、本発明の第1実施形態による経路特定装置1は、経路特定装置全体の動作を制御し、各種データ処理および演算を実行する制御部10と、グラフ情報記憶部11と、閉路特定部12と、閉路探索空間特定部13と、経路含有閉路特定部14と、経路特定部15と、経路選定部16と、を含む。
1. 1. First Embodiment 1.1) Configuration As shown in FIG. 2, a route specifying device 1 according to a first embodiment of the present invention controls the operation of the entire route specifying device, and executes various data processing and operations. 10, a graph information storage unit 11, a cycle specifying unit 12, a cycle search space specifying unit 13, a route-containing cycle specifying unit 14, a route specifying unit 15, and a route selecting unit 16.

a)グラフ情報記憶部11
グラフ情報記憶部11は、基本グラフ情報と、閉路情報と、閉路隣接グラフ情報と、閉路探索グラフ情報と、経路含有閉路情報と、を記憶する。詳しくは後述するが、グラフ情報記憶部11に格納される情報の概略は以下の通りである。
a) Graph information storage unit 11
The graph information storage unit 11 stores basic graph information, cycle information, cycle adjacency graph information, cycle search graph information, and route-containing cycle information. Although details will be described later, the outline of the information stored in the graph information storage unit 11 is as follows.

基本グラフ情報は、基本グラフを構成する複数の基本ノードのそれぞれを識別するための基本ノード識別子と、複数の基本リンクのそれぞれを識別するための基本リンク識別子と、複数の基本ノードの任意の2つの基本ノードを結ぶ基本リンクを特定するための情報(即ち、2つの基本ノードがある基本リンクによって接続されているか否かを表す情報)と、を含む(具体的には図3および図4を参照)。基本グラフ情報は、隣接行列あるいは隣接リスト等の形式で表されるが、情報処理装置により処理可能な他の形式により表されてもよい。   The basic graph information includes a basic node identifier for identifying each of a plurality of basic nodes constituting the basic graph, a basic link identifier for identifying each of the plurality of basic links, and any two of the plurality of basic nodes. Information for specifying a basic link connecting two basic nodes (that is, information indicating whether or not two basic nodes are connected by a certain basic link) (specifically, FIG. 3 and FIG. 4) reference). The basic graph information is expressed in a format such as an adjacency matrix or an adjacency list, but may be expressed in other formats that can be processed by the information processing apparatus.

閉路情報は、基本グラフにおける閉路(単位閉路)を表す情報である。閉路情報は、閉路を識別するための閉路識別子と当該閉路を構成する基本リンクを特定するための情報とを含む(具体的には図7〜図10を参照)。   The cycle information is information representing a cycle (unit cycle) in the basic graph. The closed circuit information includes a closed circuit identifier for identifying the closed circuit and information for specifying the basic link constituting the closed circuit (specifically, refer to FIGS. 7 to 10).

閉路隣接グラフ情報は、閉路隣接グラフを構成する複数の閉路ノードのそれぞれを識別するための閉路ノード識別子と、複数の閉路隣接リンクのそれぞれを識別するための閉路隣接リンク識別子と、複数の閉路ノードの任意の2つの閉路ノードを結ぶ閉路隣接リンクを特定するための情報(即ち、2つの閉路ノードが閉路隣接リンクによって接続されているか否かを表す情報)と、を含む(具体的には図11(B)を参照)。閉路隣接グラフ情報は、隣接行列あるいは隣接リスト等の形式で表されるが、情報処理装置により処理可能な他の形式により表されてもよい。   The cycle adjacency graph information includes a cycle node identifier for identifying each of a plurality of cycle nodes constituting the cycle adjacency graph, a cycle adjacent link identifier for identifying each of the plurality of cycle adjacent links, and a plurality of cycle nodes Information for specifying a closed link adjacent to any two closed nodes (that is, information indicating whether or not the two closed nodes are connected by the closed link). 11 (B)). The closed adjacency graph information is expressed in a format such as an adjacency matrix or an adjacency list, but may be expressed in other formats that can be processed by the information processing apparatus.

ここで、閉路隣接グラフは、基本グラフにおける複数の閉路(単位閉路)のそれぞれを閉路ノードにより表すとともに、2つの閉路によって基本グラフにおける基本グラフ要素(基本ノード、又は、基本リンク)が共有されていることを、当該2つの閉路を結ぶ閉路隣接リンクにより表すグラフである(具体的には図11(A)を参照)。   Here, in the cycle adjacency graph, each of a plurality of cycles (unit cycles) in the basic graph is represented by a cycle node, and a basic graph element (basic node or basic link) in the basic graph is shared by two cycles. This is a graph that represents the presence of a closed link adjacent to the two closed circuits (specifically, refer to FIG. 11A).

閉路探索グラフ情報は、閉路探索グラフを表す情報である。ここで、閉路探索グラフは、閉路隣接グラフに包含ノードおよび包含リンクを追加したグラフである(具体的には図12を参照)。包含ノードは、閉路ノードが表す閉路が基本グラフにおいて通る(即ち、当該閉路に含まれる)基本ノードを表すノードである。包含リンクは、閉路ノードが表す閉路が基本グラフにおいて包含ノードを通ることを表し、且つ、当該閉路ノードと当該包含ノードとを結ぶリンクである。閉路探索グラフ情報は、閉路隣接グラフ情報に加えて、複数の包含ノードのそれぞれを識別するための包含ノード識別子と、包含ノードと閉路ノードとの任意の組のそれぞれに対して、当該包含ノードと当該閉路ノードとを結ぶ包含リンクが存在するか否かを表す情報と、を含む。したがって、グラフ情報記憶部11は閉路隣接グラフ情報を閉路探索グラフ情報の一部として保持することもできるし、閉路探索グラフ情報とは別に保持することもできる。    The cycle search graph information is information representing a cycle search graph. Here, the cycle search graph is a graph in which an inclusion node and an inclusion link are added to the cycle adjacency graph (specifically, see FIG. 12). An inclusion node is a node that represents a basic node through which the cycle represented by the cycle node passes in the basic graph (that is, included in the cycle). The inclusion link is a link that represents that the cycle represented by the cycle node passes through the inclusion node in the basic graph, and that connects the cycle node and the inclusion node. The cycle search graph information includes, in addition to the cycle adjacency graph information, an inclusion node identifier for identifying each of the plurality of inclusion nodes, and for each of the arbitrary combinations of inclusion nodes and cycle nodes, the inclusion node and Information indicating whether or not there is an inclusive link connecting the closed node. Therefore, the graph information storage unit 11 can hold the cycle adjacent graph information as a part of the cycle search graph information, or can hold it separately from the cycle search graph information.

経路含有閉路情報は、基本グラフにおける経路含有閉路を表す情報である。経路含有閉路は、基本グラフにおいて、経路の端点となる2つのノード(第1の基本ノードと第2の基本ノード)を通る閉路である。経路含有閉路情報は、経路含有閉路を識別するための経路含有閉路識別子と、当該経路含有閉路を構成する基本リンクを特定するための情報と、を含む。   The route-containing cycle information is information representing the route-containing cycle in the basic graph. A route-containing cycle is a cycle that passes through two nodes (a first basic node and a second basic node) as end points of a route in the basic graph. The route-containing cycle information includes a route-containing cycle identifier for identifying the route-containing cycle and information for specifying a basic link that constitutes the route-containing cycle.

b)閉路特定部12
閉路特定部12は、グラフ情報記憶部11に記憶されている基本グラフ情報に基づいて、第1の基本ノードを通る第1の閉路と第2の基本ノードを通る第2の閉路とを含む複数の閉路を特定する。閉路特定部12は特定された閉路を表す閉路情報をグラフ情報記憶部11に格納する。
b) Closure specifying unit 12
The cycle specifying unit 12 includes a plurality of first cycles that pass through the first basic node and second cycles that pass through the second basic node based on the basic graph information stored in the graph information storage unit 11. Identify the cycle of. The cycle specifying unit 12 stores cycle information indicating the specified cycle in the graph information storage unit 11.

c)閉路探索空間特定部13
閉路探索空間特定部13は、閉路特定部12により特定された複数の閉路のうち、第1の基本ノードと第2の基本ノードとを通る閉路の特定に使用可能な閉路を選定し、選定された閉路情報もしくは選定された閉路を取得するための選定条件をグラフ情報記憶部11に格納する。
c) Cycle search space specifying unit 13
The cycle search space specifying unit 13 selects and selects a cycle that can be used to specify a cycle that passes through the first basic node and the second basic node among the plurality of cycles specified by the cycle specifying unit 12. The selection information for acquiring the closed cycle information or the selected closed cycle is stored in the graph information storage unit 11.

d)経路含有閉路特定部14
経路含有閉路特定部14は、閉路探索空間特定部13により選定された閉路のうち、基本グラフ要素の少なくとも1つを共有する閉路同士を併合することにより経路含有閉路を特定する。ここで、経路含有閉路特定部14は、2つの閉路が少なくとも1つの基本リンクを共有している場合、当該2つの閉路の一方から共有リンクを除いた部分を構成するすべての基本リンクと、当該2つの閉路の他方から共有リンクを除いた部分を構成するすべての基本リンクと、を連結した閉路を、当該2つの閉路同士を併合した閉路として用いる。ここで、共有リンクは、上記2つの閉路により共有されている基本リンクである。
d) Route-containing cycle specifying unit 14
The route-containing cycle specifying unit 14 specifies a route-containing cycle by merging the cycles sharing at least one of the basic graph elements among the cycles selected by the cycle search space specifying unit 13. Here, when the two closed circuits share at least one basic link, the route-containing closed circuit specifying unit 14 includes all the basic links that constitute a part excluding the shared link from one of the two closed circuits, A closed circuit obtained by connecting all the basic links constituting the portion excluding the shared link from the other of the two closed circuits is used as a closed circuit obtained by merging the two closed circuits. Here, the shared link is a basic link shared by the two closed circuits.

具体的には、経路含有閉路特定部14は、グラフ情報記憶部11に記憶されている閉路情報に基づいて閉路隣接グラフを生成し、生成された閉路隣接グラフ情報をグラフ情報記憶部11に格納する。加えて、経路含有閉路特定部14は、生成された閉路隣接グラフに基づいて、基本グラフにおける経路含有閉路を特定する。このとき、経路含有閉路特定部14は、基本グラフにおける基本リンクのそれぞれに対して予め設定された基本リンクコストの総和を最小とするように、基本グラフにおける経路含有閉路を特定する。また、閉路隣接グラフ内の閉路探索空間特定部13により選定された閉路に相当する部分のみが使用される。経路含有閉路特定部14は、特定された経路含有閉路を表す経路含有閉路情報をグラフ情報記憶部11に格納する。   Specifically, the route-containing cycle specifying unit 14 generates a cycle adjacent graph based on the cycle information stored in the graph information storage unit 11 and stores the generated cycle adjacent graph information in the graph information storage unit 11. To do. In addition, the route-containing cycle specifying unit 14 specifies a route-containing cycle in the basic graph based on the generated cycle adjacency graph. At this time, the route-containing cycle specifying unit 14 specifies a route-containing cycle in the basic graph so as to minimize the sum of basic link costs set in advance for each of the basic links in the basic graph. In addition, only the portion corresponding to the cycle selected by the cycle search space specifying unit 13 in the cycle adjacent graph is used. The route-containing cycle specifying unit 14 stores route-containing cycle information representing the specified route-containing cycle in the graph information storage unit 11.

e)経路特定部15
経路特定部15は、グラフ情報記憶部11に記憶されている、経路含有閉路特定部14により特定された経路含有閉路情報を用いて、第1の基本ノードと第2の基本ノードとを結び、且つ、基本リンクを共有しない2つの異なる経路を特定し、これら経路情報をグラフ情報記憶部11に格納する。
e) Route specifying unit 15
The route specifying unit 15 uses the route-containing cycle information specified by the route-containing cycle specifying unit 14 stored in the graph information storage unit 11 to connect the first basic node and the second basic node, In addition, two different routes that do not share the basic link are specified, and the route information is stored in the graph information storage unit 11.

f)経路選定部16
経路選定部16は、グラフ情報記憶部11に記録されている経路情報から第1の基本ノードと第2の基本ノードとを結び、且つ、基本リンクを共有しないk+1(k≧1)以上の異なる経路を選定する。
f) Route selection unit 16
The route selection unit 16 connects the first basic node and the second basic node from the route information recorded in the graph information storage unit 11 and does not share the basic link, and is different by k + 1 (k ≧ 1) or more. Select a route.

1.2)動作
次に、図3に示す基本グラフを一例として用い、経路特定装置1の経路特定動作について説明する。ただし、ここでは、簡単のために比較的規模が小さい基本グラフを例示するが、より規模が大きい基本グラフ、又は、より規模が小さい基本グラフに対しても、本実施形態による経路特定装置1が適用可能であることは言うまでもない。
1.2) Operation Next, the route specifying operation of the route specifying device 1 will be described using the basic graph shown in FIG. 3 as an example. However, here, for the sake of simplicity, a basic graph having a relatively small scale is illustrated, but the route specifying device 1 according to the present embodiment is also used for a basic graph having a larger scale or a basic graph having a smaller scale. Needless to say, it is applicable.

図3に示す基本グラフは、7つの基本ノードN100〜N700と9つの基本リンクL100〜L900とにより構成されものとし、この基本グラフが図4に示す基本グラフ情報(隣接行列)により表される。図4に示す隣接行列おいて、「N100」〜「N700」がそれぞれ基本ノード識別子であり、隣接行列における値「1」は、当該値の行と列にそれぞれ対応付けられた2つの基本ノードが基本リンクにより接続されていることを示す。   The basic graph shown in FIG. 3 is composed of seven basic nodes N100 to N700 and nine basic links L100 to L900, and this basic graph is represented by the basic graph information (adjacency matrix) shown in FIG. In the adjacency matrix shown in FIG. 4, “N100” to “N700” are basic node identifiers, respectively, and the value “1” in the adjacency matrix indicates two basic nodes respectively associated with the row and column of the value. Indicates that they are connected by a basic link.

1.2.1)閉路隣接グラフの生成
先ず、経路特定装置1の制御部10は、図5に示す手順に従って閉路特定部12を制御し、基本グラフから閉路隣接グラフを生成する。
1.2.1) Generation of a cycle adjacency graph First, the control unit 10 of the route identification device 1 controls the cycle identification unit 12 according to the procedure shown in FIG. 5 to generate a cycle adjacency graph from the basic graph.

図5において、閉路特定部12は、基本グラフにおける全域木(スパニングツリー)Tを計算する(ステップS101)。全域木の取得には、深さ優先探索法、幅優先探索法、Dijkstra(ダイクストラ)法あるいはプリム法等の種々の方法を利用することができる。ここでは、図3に示す基本グラフに対して、図6に示す全域木が取得された場合を想定する。すなわち、本例における全域木は、図6に示すように、基本ノード(N100〜N700)と、実線により示された基本リンク(L100、L400〜L700およびL1000)とにより構成される。   In FIG. 5, the cycle identification unit 12 calculates a spanning tree T in the basic graph (step S101). Various methods such as a depth-first search method, a breadth-first search method, a Dijkstra (Dijkstra) method, or a prim method can be used for obtaining the spanning tree. Here, it is assumed that the spanning tree shown in FIG. 6 is acquired for the basic graph shown in FIG. That is, the spanning tree in this example is composed of basic nodes (N100 to N700) and basic links (L100, L400 to L700, and L1000) indicated by solid lines, as shown in FIG.

次いで、閉路特定部12は、取得された全域木Tに含まれない基本リンクの集合E’を生成する(ステップS102)。したがって、図7に示す例に従えば、初期状態の基本リンク集合E’には、図6における破線の基本リンクL200、L300、L600、L800およびL900がメンバとして含まれる。以下、閉路特定部12は、ステップS103〜S106によって、図6に示す全域木に対して、基本リンク集合E’から読み出した基本リンクを1つずつ追加することで閉路(単位閉路)を特定し、特定された閉路に基づいて閉路隣接グラフを生成する。具体的には、以下の通りである。   Next, the closed loop specifying unit 12 generates a set E ′ of basic links not included in the acquired spanning tree T (step S102). Therefore, according to the example shown in FIG. 7, the basic link set E ′ in the initial state includes the broken basic links L200, L300, L600, L800, and L900 in FIG. 6 as members. Hereinafter, the cycle identifying unit 12 identifies the cycle (unit cycle) by adding the basic links read from the basic link set E ′ one by one to the spanning tree illustrated in FIG. 6 in steps S103 to S106. A closed adjacency graph is generated based on the specified closed cycle. Specifically, it is as follows.

まず、閉路特定部12は基本リンク集合E’が空集合であるか否かを判定し(ステップS103)、空集合でない場合には(ステップS103;No)、基本リンク集合E’から基本リンクを1つ読み出し、この基本リンクを全域木Tに追加することで構成される閉路を特定すると共に、読み出された基本リンクを基本リンク集合E’から削除する(ステップS104)。   First, the cycle identification unit 12 determines whether or not the basic link set E ′ is an empty set (step S103). If the basic link set E ′ is not an empty set (step S103; No), the basic link set E ′ is determined from the basic link set E ′. One cycle is read, and a closed path formed by adding this basic link to the spanning tree T is specified, and the read basic link is deleted from the basic link set E ′ (step S104).

続いて、閉路特定部12は、特定された閉路を表す閉路ノードを閉路隣接グラフに追加し(ステップS105)、前回までに追加されていた閉路ノードが表す閉路と、今回新たに追加された閉路ノードが表す閉路とを結ぶ閉路リンクを閉路隣接グラフに追加する(ステップS106)。以上のステップS103〜ステップS106の処理が、基本リンク集合E’が空集合になるまで繰り返され、基本リンク集合E’が空集合となると(ステップS103;Yes)、閉路隣接グラフ生成処理を終了する。   Subsequently, the cycle identification unit 12 adds a cycle node representing the identified cycle to the cycle adjacency graph (step S105), the cycle represented by the cycle node added up to the previous time, and the cycle newly added this time A closed link connecting the closed route represented by the node is added to the closed route adjacency graph (step S106). The processes in steps S103 to S106 are repeated until the basic link set E ′ becomes an empty set. When the basic link set E ′ becomes an empty set (step S103; Yes), the closed-circuit adjacent graph generation process is terminated. .

なお、閉路特定部12は、上記処理により得られた閉路情報と閉路隣接グラフ情報とをグラフ情報記憶部11に格納する。   The cycle specifying unit 12 stores the cycle information and the cycle adjacent graph information obtained by the above processing in the graph information storage unit 11.

図5に示す閉路隣接グラフ生成処理を図6に示す全域木を例にして説明する。まず基本リンク集合E’から基本リンクL200を読み出して、図6に示す全域木に追加することにより、経路N100−N200−N600−N100からなる閉路C100が得られ、これが閉路ノードC100となる。同様に、基本リンクL300を追加することにより経路N200−N300−N700−N200から閉路ノードC200が、基本リンクL800を追加することにより経路N300−N400−N500−N700−N300から閉路ノードC300が、基本リンクL900を追加することにより経路N200−N700−N500−N600−N200から閉路ノードC400が、それぞれ得られる。   The cycle adjacency graph generation processing shown in FIG. 5 will be described using the spanning tree shown in FIG. 6 as an example. First, the basic link L200 is read from the basic link set E ′ and added to the spanning tree shown in FIG. 6 to obtain a closed path C100 composed of paths N100-N200-N600-N100, which becomes a closed node C100. Similarly, by adding the basic link L300, the closed node C200 from the route N200-N300-N700-N200 is added, and by adding the basic link L800, the closed node C300 from the route N300-N400-N500-N700-N300 is changed to the basic. By adding the link L900, the closed node C400 is obtained from the route N200-N700-N500-N600-N200, respectively.

閉路C100は図7に示す閉路情報(隣接行列)により表され、その閉路識別子が「C100」である。同様に、閉路C200は図8に示す閉路情報(隣接行列)により表され閉路識別子が「C200」、閉路C300は図9に示す閉路情報(隣接行列)により表され閉路識別子が「C300」、閉路C400は図10に示す閉路情報(隣接行列)により表され閉路識別子が「C400」である。   The cycle C100 is represented by the cycle information (adjacency matrix) shown in FIG. 7, and the cycle identifier is “C100”. Similarly, the closed circuit C200 is represented by the closed circuit information (adjacency matrix) shown in FIG. 8 and the closed circuit identifier is “C200”, and the closed circuit C300 is represented by the closed circuit information (adjacent matrix) shown in FIG. 9 and the closed circuit identifier is “C300”. C400 is represented by the cycle information (adjacency matrix) shown in FIG. 10, and the cycle identifier is “C400”.

また、図6に示すように、閉路C100と閉路C400とは基本リンクL400を共有している。また、閉路C200と閉路C300とは基本リンクL700を、閉路C200と閉路C400とは基本リンクL500を、閉路C300と閉路C400とは基本リンクL1000を、それぞれ共有している。なお、2つの閉路間で複数の連結した基本リンクを共有している場合、その2つの閉路が共有している区間の両端以外に位置するノードを臨界ノードと呼ぶものとする。   As shown in FIG. 6, the closed circuit C100 and the closed circuit C400 share the basic link L400. The closed circuit C200 and the closed circuit C300 share the basic link L700, the closed circuit C200 and the closed circuit C400 share the basic link L500, and the closed circuit C300 and the closed circuit C400 share the basic link L1000. Note that when a plurality of linked basic links are shared between two closed circuits, a node located at a position other than both ends of a section shared by the two closed circuits is called a critical node.

こうして生成された閉路隣接グラフは、図11(A)のように表現できる。すなわち、閉路ノードC100と閉路ノードC400とが隣接リンクA100により連結し、閉路ノードC200と閉路ノードC400とが隣接リンクA200により、閉路ノードC200と閉路ノードC300とが隣接リンクA300により、閉路ノードC300と閉路ノードC400とが隣接リンクA400により、それぞれ錬鉄されている。この場合、隣接リンクA100は基本リンクL400と、隣接リンクA200は基本リンクL500と、隣接リンクA300は基本リンクL700と、隣接リンクA400は基本リンクL1000と、それぞれ関連づけられている。以下、隣接リンクAが基本リンクLと関連づけられている状態を単に「隣接リンクAは基本リンクLを含む(又は、内包する)」というものとする。なお、複数の連結した基本リンクを含む隣接リンクは臨界ノードを含む。   The cycle adjacency graph generated in this way can be expressed as shown in FIG. That is, the closed node C100 and the closed node C400 are connected by the adjacent link A100, the closed node C200 and the closed node C400 are connected by the adjacent link A200, the closed node C200 and the closed node C300 are connected by the adjacent link A300, and the closed node C300 is connected. Each of the closed nodes C400 is wrought by the adjacent link A400. In this case, the adjacent link A100 is associated with the basic link L400, the adjacent link A200 is associated with the basic link L500, the adjacent link A300 is associated with the basic link L700, and the adjacent link A400 is associated with the basic link L1000. Hereinafter, a state in which the adjacent link A is associated with the basic link L is simply referred to as “the adjacent link A includes (or includes) the basic link L”. An adjacent link including a plurality of connected basic links includes a critical node.

図11(A)に示す閉路隣接グラフは、図11(B)に示す閉路隣接グラフ情報(隣接行列)により表される。図11(B)において、隣接行列における値「1」は、当該値の行と列とにそれぞれ対応付けられた閉路ノード間を結ぶ隣接リンクが存在することを表わしている。   The closed adjacency graph shown in FIG. 11A is represented by closed adjacency graph information (adjacency matrix) shown in FIG. In FIG. 11B, the value “1” in the adjacency matrix indicates that there is an adjacent link connecting between the closed nodes respectively associated with the row and column of the value.

なお、経路特定装置1は、上述した方法以外の方法で閉路隣接グラフを生成してもよい。ただし、閉路隣接グラフを生成する方法は、基本グラフにおける基本リンクのそれぞれが少なくとも1つの閉路ノードに含まれていること(第1の条件)と、閉路隣接グラフが連続していること(第2の条件)との両方を満たすことが好適である。上述した方法は、基本グラフにおける各基本リンクは全域木に含まれるか、又は、閉路を構成するために追加される基本リンクであるから第1の条件を満たし、いずれの閉路も全域木の一部を含むので第2の条件も満たしている。   Note that the route identification device 1 may generate a closed adjacency graph by a method other than the method described above. However, in the method of generating the cycle adjacency graph, each basic link in the basic graph is included in at least one cycle node (first condition), and the cycle adjacency graph is continuous (second). It is preferable to satisfy both of the above conditions. In the method described above, each basic link in the basic graph is included in the spanning tree or is a basic link added to form a cycle, so the first condition is satisfied, and each cycle is one of the spanning trees. The second condition is also satisfied.

1.2.2)閉路探索グラフの生成
続いて、制御部10は閉路探索空間特定部13を制御して、包含ノードを閉路隣接グラフに追加するとともに、閉路ノードと当該包含ノードとを結ぶ包含リンクを閉路隣接グラフに追加することにより、閉路探索グラフを生成する。図3に示す基本グラフを用いた場合の閉路探索グラフを図12に示す。図12において、閉路Cと包括ノードNとを接続する破線は包含リンクE101〜E114を表す。
1.2.2) Generation of Cycle Search Graph Subsequently, the control unit 10 controls the cycle search space specifying unit 13 to add an inclusion node to the cycle adjacency graph, and an inclusion that connects the cycle node and the inclusion node. A cycle search graph is generated by adding a link to the cycle adjacency graph. FIG. 12 shows a cycle search graph when the basic graph shown in FIG. 3 is used. In FIG. 12, broken lines connecting the closed circuit C and the comprehensive node N represent the inclusion links E101 to E114.

1.2.3)経路の特定
次に、制御部10は、経路含有閉路特定部14、経路特定部15および経路選定部16を制御して、閉路隣接グラフに基づいて経路を特定する。以下、図13〜図15を参照しながら、本実施形態による経路特定動作について説明する。
1.2.3) Specifying Route Next, the control unit 10 controls the route containing cycle specifying unit 14, the route specifying unit 15, and the route selecting unit 16 to specify a route based on the cycle adjacency graph. Hereinafter, the route specifying operation according to the present embodiment will be described with reference to FIGS.

上述したように、グラフ情報記憶部11には、基本グラフ情報、閉路情報および閉路隣接グラフ情報が格納されており、以下に説明するように、制御部10はこれらの情報に基づいて経路を特定するように制御する。   As described above, the graph information storage unit 11 stores basic graph information, cycle information, and cycle adjacency graph information. As described below, the control unit 10 specifies a route based on these pieces of information. Control to do.

まず、基本グラフ情報として、各基本リンクに対して予め設定された基本リンクコストをw(x)とする。パラメータxは、基本リンクを特定するための情報である。なお、基本リンクコストw(x)は、経路特定装置1のユーザにより入力された情報であってもよい。基本リンクコストw(x)はスカラ値を有し、基本リンクの長さあるいは基本リンクのその他の属性等に基づいて設定されることが好適である。ところで、基本リンクの系列としての経路p(={l,l,…,l})のコストW(p)は、次式(1)により表される。 First, as basic graph information, a basic link cost preset for each basic link is set to w 0 (x). The parameter x is information for specifying the basic link. The basic link cost w 0 (x) may be information input by the user of the route identification device 1. The basic link cost w 0 (x) has a scalar value, and is preferably set based on the length of the basic link or other attributes of the basic link. By the way, the cost W (p) of the path p (= {l 0 , l 1 ,..., L i }) as a basic link sequence is expressed by the following equation (1).


ここで、lはj番目の基本リンク、jは0〜iの整数である。

Here, l j is the j-th basic link, and j is an integer from 0 to i.

また、制御部10は、基本リンクコストw(x)に基づいて、閉路隣接グラフにおける隣接リンクのそれぞれに対する隣接リンクコストw(x)を算出する。パラメータxが、閉路ノードcと閉路ノードcとを結ぶ隣接リンクである場合において、当該隣接リンクが第1の基本ノードと第2の基本ノードとのいずれも臨界ノードとして含まないとき、制御部10は、隣接リンクコストw(x)を次式(2)に基づいて算出する。 Further, the control unit 10 calculates the adjacent link cost w (x) for each of the adjacent links in the closed circuit adjacent graph based on the basic link cost w 0 (x). When the parameter x is an adjacent link connecting the closed node c 0 and the closed node c 1 , the control is performed when the adjacent link includes neither the first basic node nor the second basic node as a critical node. The unit 10 calculates the adjacent link cost w (x) based on the following equation (2).

w(x) = W(co)+W(c1)−2W(co∩c1) (2) w (x) = W (c o ) + W (c 1 ) −2W (c o ∩c 1 ) (2)

一方、パラメータxが、閉路ノードcと閉路ノードcとを結ぶ隣接リンクである場合において、当該隣接リンクが第1の基本ノード又は第2の基本ノードの少なくとも一方を臨界ノードとして含むとき、制御部10は、隣接リンクコストw(x)を次式(3)に基づいて算出する。 On the other hand, when the parameter x is an adjacent link connecting the closed node c 0 and the closed node c 1 , when the adjacent link includes at least one of the first basic node or the second basic node as a critical node, The control unit 10 calculates the adjacent link cost w (x) based on the following equation (3).

w(x) = ∞ (3) w (x) = ∞ (3)

また、パラメータxが、包含リンクである場合において、当該包含リンクが第1の基本ノードから閉路ノードcへのリンクであるとき、制御部10は、探索リンクコストw(x)を次式(4)に基づいて算出する。  When the parameter x is an inclusion link and the inclusion link is a link from the first basic node to the closed node c, the control unit 10 calculates the search link cost w (x) by the following equation (4) ).

w(x) = W(c) (4) w (x) = W (c) (4)

また、パラメータxが、包含リンクである場合において、当該包含リンクが閉路ノードcから第2の基本ノードへのリンクであるとき、制御部10は、探索リンクコストw(x)を次式(5)に基づいて算出する。  When the parameter x is an inclusive link and the inclusive link is a link from the closed node c to the second basic node, the control unit 10 sets the search link cost w (x) to the following formula (5) ).

w(x) = 0 (5) w (x) = 0 (5)

また、パラメータxが、包含リンクである場合において、当該包含リンクが、第1の基本ノード及び第2の基本ノード以外の基本ノード(包含ノード)と、閉路ノードと、を結ぶとき、経路特定装置1は、探索リンクコストw(x)を次式(6)に基づいて算出する。   In addition, when the parameter x is an inclusion link, when the inclusion link connects a basic node (inclusion node) other than the first basic node and the second basic node and a closed node, the route specifying device 1 calculates the search link cost w (x) based on the following equation (6).

w(x) = ∞ (6) w (x) = ∞ (6)

以下、第1の基本ノードおよび第2の基本ノードをそれぞれ基本ノードN300およびN500とし、ノードN300とN500との間で求める経路の数をk=3として、図13を参照しながら、経路特定装置1の経路特定動作を説明する。   Hereinafter, it is assumed that the first basic node and the second basic node are the basic nodes N300 and N500, respectively, and the number of routes to be obtained between the nodes N300 and N500 is k = 3, with reference to FIG. One route specifying operation will be described.

図13において、まず、制御部10は、求めるべき経路数kから既に決定された経路数mを減じた値が0より大きいか否かを判定する(ステップS201)。なお、決定経路数mの初期値は0である。k−m>0であれば(ステップS201;Yes)、制御部10は、以下の処理を実行するようにし、そうでなければ(ステップS201;No)、経路特定処理は終了する。   In FIG. 13, first, the control unit 10 determines whether or not a value obtained by subtracting the already determined route number m from the route number k to be obtained is greater than 0 (step S201). Note that the initial value of the determined route number m is zero. If k−m> 0 (step S201; Yes), the control unit 10 performs the following process; otherwise (step S201; No), the route specifying process ends.

k−m>0であれば(ステップS201;Yes)、閉路探索空間特定部13は、閉路探索グラフの探索可能領域を特定する(ステップS202)。具体的には、図12に示す閉路探索グラフのうち、第1の基本ノードN300と第2の基本ノードN500とを通る閉路を構成するために使用可能な閉路の集合を与える。初期状態では閉路探索グラフ全体が探索可能領域となるが、それ以降では、後述するように、初期の探索可能領域からそれまでに特定された閉路ノード間の隣接リンクを除外した残りが探索可能領域となる。   If k−m> 0 (step S201; Yes), the cycle search space specifying unit 13 specifies a searchable region of the cycle search graph (step S202). Specifically, in the cycle search graph shown in FIG. 12, a set of cycles that can be used to construct a cycle that passes through the first basic node N300 and the second basic node N500 is given. In the initial state, the entire cycle search graph becomes a searchable region, but thereafter, as will be described later, the remainder of the initial searchable region excluding adjacent links between the closed nodes identified so far is the searchable region. It becomes.

なお、上記閉路の使用可否は、後述の経路含有閉路特定部14によって特定された経路含有閉路に含まれる閉路の除外処理の他、基本ノード(通信装置)や基本リンク(通信路/通信回線)の稼動状態 (故障、負荷など) やそれらに対する管理・運用ポリシなどの外部からの情報を考慮して決定しても構わない。本例では簡単のため、初期状態で除外されるべき基本ノードないし基本リンクはないものとする。   The availability of the above-mentioned closed circuit is determined by the basic node (communication device) and the basic link (communication path / communication line) in addition to the exclusion process of the closed circuit included in the path-containing circuit specified by the path-containing circuit specifying unit 14 described later. It may be determined in consideration of external information such as the operational status (failure, load, etc.) and management / operation policy for them. In this example, for simplicity, it is assumed that there are no basic nodes or basic links to be excluded in the initial state.

続いて、経路含有閉路特定部14は、特定された閉路探索グラフ内の探索可能領域において、最小コスト経路を特定する(ステップS203)。最小コスト経路は、第1の基本ノードN300と第2の基本ノードN500を通る閉路をのうち、コストが最小となる閉路を与える経路である。最小コスト経路を特定する方法としては、既に述べたように、幅優先探索法や修正ダイクストラ法(バンダリ法;非特許文献2)等の負のリンクコストを許容する最短経路計算アルゴリズムを用いることができる。   Subsequently, the route-containing cycle specifying unit 14 specifies the minimum cost route in the searchable area in the specified cycle search graph (step S203). The minimum cost route is a route that gives a closed circuit having a minimum cost among the closed circuits passing through the first basic node N300 and the second basic node N500. As a method for specifying the minimum cost route, as already described, a shortest route calculation algorithm that allows a negative link cost such as a breadth-first search method or a modified Dijkstra method (Bandari method; Non-Patent Document 2) can be used. .

なお、閉路探索グラフ内の探索可能領域は、閉路探索グラフ内の使用不可能な閉路ノードに接続する隣接リンクあるいは包含リンクのコストを無限大∞とすることで表現できる。コスト∞のリンクは上記最短経路計算アルゴリズム内での経路探索候補から除外されるからである。   The searchable area in the cycle search graph can be expressed by setting the cost of an adjacent link or an inclusion link connected to an unusable cycle node in the cycle search graph to infinity ∞. This is because the link with the cost ∞ is excluded from the route search candidates in the shortest route calculation algorithm.

あるいは、図14に例示するように、閉路探索グラフ内の使用不可能な閉路ノードに接続する隣接リンクあるいは包含リンクおよびコスト∞のリンクをグラフ情報から除外することで表現することもできる。たとえば、図14で包含リンクEが一方向にしか通過できない場合には、逆方向のコストを∞にすればよい。また更に、図14において、リンクをもたないノードN100、N200、N400、N600、N700をグラフ情報から除外しても構わない。あるいは、上記の表現方法を併用して閉路探索グラフ内の探索可能領域を表現しても構わない。   Alternatively, as illustrated in FIG. 14, it can be expressed by excluding an adjacent link or an inclusion link connected to an unusable cycle node in the cycle search graph and a link of cost ∞ from the graph information. For example, when the inclusion link E can pass only in one direction in FIG. 14, the cost in the reverse direction may be set to ∞. Furthermore, in FIG. 14, the nodes N100, N200, N400, N600, and N700 that do not have a link may be excluded from the graph information. Alternatively, the searchable area in the cycle search graph may be expressed by using the above expression method together.

制御部10は、閉路探索グラフにおける最小コスト経路が特定されたか否かを判定する(ステップS204)。最小コスト経路が特定されなかった場合には(ステップS204;No)、制御部10は経路特定処理を終了する。ここでは、閉路探索グラフにおける最小コスト経路として、経路N300−C200−C400−N500が特定されたものとする。制御部10は最小コスト経路が特定されたので(ステップS204;Yes)、経路特定部15を制御して、閉路探索グラフにおける最小コスト経路が通る閉路を併合することにより経路含有閉路を特定する(ステップS205)。すなわち、2つの閉路C200およびC400のそれぞれから、2つの閉路により共有されている基本リンク(共有リンク)を除去し、残りの全ての基本リンクを連結した閉路を当該2つの閉路同士を併合した閉路(経路含有閉路)として用いる。閉路情報は図7〜図10に示すような隣接行列として芦原されるので、2つの閉路同士を併合した閉路(経路含有閉路)はそれらの閉路情報(隣接行列)の排他的論理和を計算することにより得ることができる。   The control unit 10 determines whether or not the minimum cost route in the cycle search graph has been identified (step S204). When the minimum cost route is not specified (step S204; No), the control unit 10 ends the route specifying process. Here, it is assumed that the route N300-C200-C400-N500 is specified as the minimum cost route in the closed loop search graph. Since the minimum cost route has been specified (step S204; Yes), the control unit 10 controls the route specifying unit 15 to specify the route-containing cycle by merging the cycles through which the minimum cost route passes in the cycle search graph ( Step S205). That is, a basic link (shared link) shared by two closed circuits is removed from each of the two closed circuits C200 and C400, and a closed circuit in which all the remaining basic links are connected is merged with the two closed circuits. Used as (path containing cycle). Since the closed circuit information is generated as an adjacency matrix as shown in FIGS. 7 to 10, a closed circuit obtained by merging two closed circuits (path-containing circuit) calculates an exclusive OR of the closed circuit information (adjacent matrix). Can be obtained.

具体的には、図6に示すように、閉路C200と閉路C400を併合することにより、経路含有閉路N300−N200−N600−N500−N700−N300を特定することができる。すなわち、閉路C200を示す図8の閉路情報(隣接行列)と閉路C400を示す図9の閉路情報(隣接行列)との排他的論理和を算出することにより、図15に示す経路含有閉路を表す閉路情報を得ることができる。ただし、閉路の併合方法は、これに限定されるものではない。   Specifically, as shown in FIG. 6, by combining the closed circuit C200 and the closed circuit C400, the route-containing closed circuit N300-N200-N600-N500-N700-N300 can be specified. That is, by calculating the exclusive OR of the cycle information (adjacency matrix) of FIG. 8 showing the cycle C200 and the cycle information (adjacency matrix) of FIG. 9 showing the cycle C400, the path-containing cycle shown in FIG. 15 is represented. Cycle information can be obtained. However, the method of merging the closed circuits is not limited to this.

続いて、経路特定部15は、特定された経路含有閉路において、第1の基本ノードN300と第2の基本ノードN500とを結ぶ最小コスト経路(第1の経路)を特定する(ステップS206)。経路特定部15は、基本リンクコストw(x)に基づいて、幅優先探索法あるいはダイクストラ法等を用いることにより最小コスト経路を特定する。あるいは、第1の基本ノードN300と第2の基本ノードN500で上記の経路含有閉路を2つの経路に区切り、それぞれのコストを比較して最小コスト経路を特定してもよい。ここでは、最小コスト経路(第1の経路)として、N300−N700−N500が特定されたものとする。 Subsequently, the route specifying unit 15 specifies the minimum cost route (first route) connecting the first basic node N300 and the second basic node N500 in the specified route-containing cycle (step S206). The route specifying unit 15 specifies the minimum cost route by using the breadth-first search method or the Dijkstra method based on the basic link cost w 0 (x). Alternatively, the above-mentioned route-containing closed circuit may be divided into two routes by the first basic node N300 and the second basic node N500, and the minimum cost route may be specified by comparing the respective costs. Here, it is assumed that N300-N700-N500 is specified as the minimum cost route (first route).

同様にして、経路特定部15は、特定された経路含有閉路において、第1の基本ノードN300と第2の基本ノードN500とを結ぶ、第1の経路と異なる冗長経路(第2の経路)を特定する(ステップS207)。ここでは、冗長経路(第2の経路)として、N300−N200−N600−N500が特定されたものとする。第2の経路の特定方法としては、たとえば、ステップS205にて特定された経路含有閉路を表す環状リストからステップS206にて特定された第1の経路に相当する部分を取り除くことで第2の経路を特定する。なお、ステップS206にて特定された第1の経路における中間の基本ノード又は基本リンクを使用不可とする条件を設けた状態において、深さ優先探索法あるいはダイクストラ法等を用いることにより第2の経路を特定することもできる。   Similarly, the route specifying unit 15 determines a redundant route (second route) different from the first route that connects the first basic node N300 and the second basic node N500 in the specified route-containing cycle. Specify (step S207). Here, it is assumed that N300-N200-N600-N500 is specified as the redundant route (second route). As a method for specifying the second route, for example, the second route is obtained by removing a portion corresponding to the first route specified in step S206 from the circular list representing the route-containing cycle specified in step S205. Is identified. Note that the second route can be obtained by using the depth-first search method or the Dijkstra method in a state where a condition for disabling the intermediate basic node or the basic link in the first route specified in step S206 is provided. Can also be specified.

次に、制御部10は経路選定部16を制御して、特定された第1の経路と第2の経路によって計算結果を更新する(ステップS208)。具体的には、今回特定した2つの経路がこれまでに得られたいずれの経路とも全く重ならない場合には、今回得られた2つの経路を計算結果に追加する。もしこれまでの経路の一部でも重なりがあれば、その経路を計算結果から削除してから、今回特定した2つの経路を計算結果に追加する。   Next, the control unit 10 controls the route selection unit 16 to update the calculation result with the identified first route and second route (step S208). Specifically, if the two routes specified this time do not overlap any of the routes obtained so far, the two routes obtained this time are added to the calculation result. If there is an overlap in a part of the route so far, the route is deleted from the calculation result, and the two routes specified this time are added to the calculation result.

本例の場合、第1の基本ノードN300と第2の基本ノードN500との間の2つの経路が上記のステップS206およびステップS207において初めて計算されたため、計算結果は空の状態である。したがって、経路選定部16は、今回得られた第1の経路および第2の経路をグラフ情報記憶部11にそのまま記録する。こうして決定経路の総数mを更新した後(この場合、m=2に更新した後)、ステップS201へ戻る。   In the case of this example, since the two paths between the first basic node N300 and the second basic node N500 are calculated for the first time in the above step S206 and step S207, the calculation result is empty. Therefore, the route selection unit 16 records the first route and the second route obtained this time in the graph information storage unit 11 as they are. After updating the total number m of determined paths in this way (in this case, after updating to m = 2), the process returns to step S201.

具体的に述べると、k−2>0であるから(ステップS201;Yes)、ステップS202において、前回のステップS203で特定された経路N200−C200−C400−N500が通る隣接リンクA200を除外する(図14参照)。これは前述の通り、隣接リンクA200のコストを∞にする、もしくは閉路探索グラフから削除することで実現できる。   Specifically, since k-2> 0 (step S201; Yes), in step S202, the adjacent link A200 through which the route N200-C200-C400-N500 specified in the previous step S203 passes is excluded ( (See FIG. 14). As described above, this can be realized by setting the cost of the adjacent link A200 to ∞ or deleting it from the cycle search graph.

次に、制御部10は、ステップS203において前回同様、閉路探索グラフの探索可能領域において最小コスト経路を特定する。今回は、図14において経路N300−C300−N500を特定する。最小コスト経路が特定されたので、ステップS204に続いて、ステップS205が実行される。   Next, the control part 10 specifies the minimum cost path | route in the searchable area | region of a closed circuit search graph similarly to last time in step S203. This time, the route N300-C300-N500 is specified in FIG. Since the minimum cost route has been identified, step S205 is executed subsequent to step S204.

ステップS205において、経路含有閉路特定部14は、最小コスト経路N300−C300−N500が通る閉路を併合して新たな経路含有閉路を特定する。ただし、本例ではただ一つの閉路C300を通るため、実際の閉路の併合処理は行われない。結果として、N300−N400−N500−N700−N300の経路含有閉路が特定される。   In step S205, the route-containing cycle specifying unit 14 specifies a new route-containing cycle by combining the routes through which the minimum cost route N300-C300-N500 passes. However, in this example, since only one closed circuit C300 is passed, the actual combined processing of closed circuits is not performed. As a result, a route-containing cycle of N300-N400-N500-N700-N300 is identified.

次に、ステップS205で特定した経路含有閉路N300−N400−N500−N700−N300に対して前回同様、第1の基本ノードN300と第2の基本ノードN500との間の最小コスト経路を特定する。本例では第3の経路としてN300−N700−N500を得るものとする。   Next, the minimum cost route between the first basic node N300 and the second basic node N500 is specified as in the previous time for the route-containing cycle N300-N400-N500-N700-N300 specified in step S205. In this example, N300-N700-N500 is obtained as the third route.

続いて、ステップS205で特定した経路含有閉路N300−N400−N500−N700−N300に対して前回同様、第1の基本ノードN300と第2の基本ノードN500との間の冗長経路を特定する。この結果、第4の経路としてN300−N400−N500を得る。   Subsequently, the redundant route between the first basic node N300 and the second basic node N500 is specified for the route-containing cycle N300-N400-N500-N700-N300 specified in step S205 as in the previous case. As a result, N300-N400-N500 is obtained as the fourth route.

そして、ステップS206およびステップS207で特定した第3の経路と第4の経路を用いて、経路計算結果を更新する。(ステップS208)。今回特定した第3の経路と第4の経路のうち、第4の経路は前回のステップS206で特定した第1の経路と基本リンクL700と基本リンクL1000が重複している。したがって、第1の経路を計算結果から破棄し、第3の経路と第4の経路を計算結果に追加する。この段階で、計算結果として第2の経路N300−N200−N600−N500、第3の経路N300−N700−N500、および、第4の経路N300−N400−N500の計3本の経路(m=3)が特定されている。   Then, the route calculation result is updated using the third route and the fourth route specified in step S206 and step S207. (Step S208). Of the third route and the fourth route specified this time, the fourth route is the same as the first route specified in the previous step S206, the basic link L700, and the basic link L1000. Therefore, the first route is discarded from the calculation result, and the third route and the fourth route are added to the calculation result. At this stage, a total of three routes (m = 3) of the second route N300-N200-N600-N500, the third route N300-N700-N500, and the fourth route N300-N400-N500 are calculated. ) Has been identified.

こうして、ステップS201に戻ると、この段階ではm=3であるから、ステップs201では「No」となるので経路特定処理を終了する。以上、所望の値kが与えられると、k−mが0になるまで(ステップS201;No)あるいは最小コスト経路が特定されなくなるまで(ステップS204;No)、ステップS201〜S208が繰り返され、最初に指定した本数kの経路を特定することができる。なお、繰り返しを制御するステップS201はステップS208の次に設けられてもよい。   Thus, when returning to step S201, since m = 3 at this stage, “No” is obtained in step s201, and the route specifying process is terminated. As described above, when the desired value k is given, steps S201 to S208 are repeated until k−m becomes 0 (step S201; No) or until the minimum cost path is not specified (step S204; No). It is possible to specify the number k of routes specified in (1). Note that step S201 for controlling repetition may be provided after step S208.

このようにして、経路特定装置1は、閉路探索グラフを用いることにより、第1の基本ノードN300と第2の基本ノードN500とを結び、基本リンクを共有しないk本の異なる経路を特定することができる。   In this way, the route specifying device 1 connects the first basic node N300 and the second basic node N500 by using the closed loop search graph, and specifies k different routes that do not share the basic link. Can do.

1.3)効果
以上、説明したように、本発明の第1実施形態によれば、2つの基本ノードを結び、基本リンクを共有しない3つ以上の異なる経路を確実に特定することができる。更に、2つの基本ノードを結び、基本リンクあるいは経路途中の基本ノードを共有しない2つの異なる経路を特定する際の処理負荷を低減することができる。
1.3) Effects As described above, according to the first embodiment of the present invention, it is possible to reliably specify three or more different paths that connect two basic nodes and do not share a basic link. Furthermore, it is possible to reduce the processing load when two basic nodes are connected and two different routes that do not share a basic link or a basic node in the middle of the route are specified.

更に、本発明の第1実施形態よれば、基本グラフにおける基本リンクのそれぞれに対して予め設定された基本リンクコストの総和を最小とするように、基本グラフにおける経路含有閉路を特定する。経路含有閉路を特定することにより、基本リンクコストの総和を最小とするように2つの基本ノードを結び、基本リンクあるいは経路途中の基本ノードを共有しない3つ以上の異なる経路を、計算負荷を増大させることなく、特定することが可能となる。   Furthermore, according to the first embodiment of the present invention, the route-containing cycle in the basic graph is specified so as to minimize the total sum of basic link costs set in advance for each of the basic links in the basic graph. By specifying route-containing cycles, two basic nodes are connected to minimize the sum of basic link costs, and the calculation load is increased for three or more different routes that do not share basic links or basic nodes along the route. It is possible to specify without making it.

2.第2実施形態
次に、本発明の第2実施形態による経路特定装置について説明する。本実施形態によれば、経路含有閉路特定部14が2つの閉路を併合して経路含有閉路を特定する際に、当該2つの閉路が1つの基本ノードのみを共有している場合でも、それらを併合対象にする点で第1実施形態と異なっている。
2. Second Embodiment Next, a path identification device according to a second embodiment of the present invention will be described. According to the present embodiment, when the route-containing cycle specifying unit 14 merges two cycles and specifies the route-containing cycle, even when the two cycles share only one basic node, It differs from the first embodiment in that it is to be merged.

たとえば、図6において、閉路C100と閉路C200はノードN200を唯一の共有ノードとしているが、本実施形態によれば、この場合も閉路C100と閉路C200を併合して1つの経路含有閉路として扱い、経路特定に利用することができる。なお、閉路C200とC400のように2つの閉路が基本リンク(図6のL500)を共有している状態は「強隣接状態」とも呼ばれ、閉路C100とC200のように2つの閉路が、基本リンクを共有することなく基本ノードのみ(図6のN200)を共有している状態は「弱隣接状態」とも呼ばれる。以下、本発明の第2実施形態の特徴的な点を中心に説明する。   For example, in FIG. 6, the closed circuit C100 and the closed circuit C200 have the node N200 as the only shared node. However, according to the present embodiment, the closed circuit C100 and the closed circuit C200 are combined and treated as one route-containing closed circuit. It can be used for route identification. A state where two closed circuits share a basic link (L500 in FIG. 6) like closed circuits C200 and C400 is also called “strongly adjacent state”, and two closed circuits like closed circuits C100 and C200 A state in which only a basic node (N200 in FIG. 6) is shared without sharing a link is also referred to as a “weakly adjacent state”. Hereinafter, the characteristic points of the second embodiment of the present invention will be mainly described.

2.1)構成
本実施形態による経路特定装置は、図2に示す第1実施形態による経路特定装置1と基本的に同じ機能構成を有するので、構成の説明は省略し、以下、図2と同じ参照番号を用いて経路特定機能について説明する。
2.1) Configuration Since the route specifying device according to the present embodiment has basically the same functional configuration as the route specifying device 1 according to the first embodiment shown in FIG. 2, description of the configuration is omitted, and FIG. The route identification function will be described using the same reference numbers.

2.2)動作
2.2.1)閉路隣接グラフの生成
経路特定装置1の閉路特定部12は上述した第1実施形態と同様に閉路を特定する。閉路C100と閉路C200とは、基本リンクを共有することなく、基本ノードN200のみを共有しているので弱隣接状態にある。制御部10は、図16に示すように、弱隣接状態を表す隣接リンクである弱隣接リンクA500(点線で示す)を閉路隣接グラフに追加する。なお、弱隣接状態にある2つの閉路に共有される唯一の基本ノードは臨界ノードと見なされる。すなわち、いずれの弱隣接リンクも基本リンクを含まず臨界ノードを1つ含む。
2.2) Operation 2.2.1) Generation of a cycle adjacency graph The cycle identification unit 12 of the path identification device 1 identifies a cycle as in the first embodiment described above. Since the closed circuit C100 and the closed circuit C200 share only the basic node N200 without sharing the basic link, they are in a weakly adjacent state. As illustrated in FIG. 16, the control unit 10 adds a weakly adjacent link A500 (indicated by a dotted line), which is an adjacent link representing a weakly adjacent state, to the closed adjacency graph. Note that the only basic node shared by two cycles in a weakly adjacent state is considered a critical node. That is, any weakly adjacent link does not include a basic link but includes one critical node.

2.2.2)閉路探索グラフの生成
続いて、制御部10は閉路探索空間特定部13を制御して、包含ノードを閉路隣接グラフに追加するとともに、閉路ノードと当該包含ノードとを結ぶ包含リンクを閉路隣接グラフに追加することにより、閉路探索グラフを生成する。図3に示す基本グラフを用いた場合の閉路探索グラフを図17に示す。図17において、閉路Cと包括ノードNとを接続する破線は包含リンクE101〜E114を表す。
2.2.2) Generation of Cycle Search Graph Subsequently, the control unit 10 controls the cycle search space specifying unit 13 to add an inclusion node to the cycle adjacency graph, and an inclusion that connects the cycle node and the inclusion node. A cycle search graph is generated by adding a link to the cycle adjacency graph. FIG. 17 shows a cycle search graph when the basic graph shown in FIG. 3 is used. In FIG. 17, a broken line connecting the closed circuit C and the comprehensive node N represents the inclusion links E101 to E114.

2.2.3)経路の特定
次に、制御部10は、経路含有閉路特定部14、経路特定部15および経路選定部16を制御して、図17に示す閉路隣接グラフに基づいて経路を特定する。以下、第1実施形態と同様に図13のフローチャートを参照しながら、第2実施形態の特徴的な動作を中心として説明する。なお、以下の説明において、第1実施形態と同様の動作については説明を簡略化あるいは省略する。
2.2.3) Specifying Route Next, the control unit 10 controls the route containing cycle specifying unit 14, the route specifying unit 15, and the route selecting unit 16 to select a route based on the cycle adjacency graph shown in FIG. Identify. Hereinafter, the characteristic operation of the second embodiment will be mainly described with reference to the flowchart of FIG. 13 as in the first embodiment. In the following description, description of operations similar to those of the first embodiment is simplified or omitted.

上述した第1実施形態における式(1)〜式(6)において、パラメータxが閉路ノードcと閉路ノードcとを結ぶ隣接リンクであり、かつ閉路ノードcが表す閉路と閉路ノードcが表す閉路とが弱隣接状態にある場合、当該隣接リンク(弱隣接リンク)に含まれる基本ノードが求めるべき経路の端点でなければ、隣接リンクコストw(x)は次式(7)により算出される。 In formulas (1) to (6) in the first embodiment described above, an adjacent link parameter x connecting the closed node c 0 and closed nodes c 1, and closed and closed node representing the closed node c 0 c When the closed circuit represented by 1 is in a weakly adjacent state, if the basic node included in the adjacent link (weakly adjacent link) is not the end point of the route to be obtained, the adjacent link cost w (x) is expressed by the following equation (7). Calculated.

w(x) = W(c0) + W(c1) (7) w (x) = W (c 0 ) + W (c 1 ) (7)

ただし、弱隣接リンクは基本リンクを含まないので式(4)は式(2)と同等である。したがって、第1実施形態における式(1)〜式(6)により示した隣接リンクコストw(x)は、第2実施形態においてもそのまま使用することができる。   However, since the weakly adjacent link does not include the basic link, Expression (4) is equivalent to Expression (2). Therefore, the adjacent link cost w (x) shown by the equations (1) to (6) in the first embodiment can be used as it is in the second embodiment.

以下、第2実施形態による経路特定機能を説明するために、第1の基本ノードがノードN300、第2の基本ノードがノードN600であるとし、また、求める経路数k=3とする。   Hereinafter, in order to explain the path specifying function according to the second embodiment, it is assumed that the first basic node is the node N300, the second basic node is the node N600, and the number of paths k to be calculated is k = 3.

図17に示すように、初期状態において、閉路探索グラフにおける最小コスト経路として経路N300−C200−C400−N600を特定したものとすると、第1実施形態で説明したように図13のステップS201〜S208を実行することで、第1の経路N300−N200−N600および第2の経路N300−N700−N500−N600を特定し(図6参照)、グラフ情報記憶部11の計算結果に追加する。   As shown in FIG. 17, assuming that the route N300-C200-C400-N600 is specified as the minimum cost route in the cycle search graph in the initial state, steps S201 to S208 in FIG. 13 are described as described in the first embodiment. Is executed to identify the first route N300-N200-N600 and the second route N300-N700-N500-N600 (see FIG. 6), and add them to the calculation result of the graph information storage unit 11.

続いて、図17に示すように、閉路探索グラフにおける最小コスト経路として経路N300−C300−C400−N600を特定したものとすると、同様に図13のステップS201〜S207を実行することで、第3の経路N300−N700−N200−N600および第4の経路N300−N400−N500−N600を特定する(図6参照)。しかしながら、ステップS208において、既に特定されている第1の経路と今回特定された第3の経路とは基本リンクL400で重複しており、第2の経路と第4の経路とは基本リンクL900で重複している。このため、経路選定部16は、第1の経路および第2の経路を計算結果から破棄し、第3の経路と第4の経路を計算結果に追加する。   Subsequently, as illustrated in FIG. 17, assuming that the route N300-C300-C400-N600 is specified as the minimum cost route in the cycle search graph, the third step is performed by executing steps S201 to S207 in FIG. Route N300-N700-N200-N600 and the fourth route N300-N400-N500-N600 are specified (see FIG. 6). However, in step S208, the first route already specified and the third route specified this time are overlapped by the basic link L400, and the second route and the fourth route are the basic link L900. Duplicate. For this reason, the route selection unit 16 discards the first route and the second route from the calculation result, and adds the third route and the fourth route to the calculation result.

続いて、図17に示すように、閉路探索グラフにおける最小コスト経路として経路N300−C200−C100−N600を特定したものとする。この場合、ステップS205において、前回同様、最小コスト経路を通る閉路を併合して経路含有閉路を特定し、経路含有閉路N300−N200−N100−N600−N200−N700−N300が特定される。   Subsequently, as illustrated in FIG. 17, it is assumed that the route N300-C200-C100-N600 is specified as the minimum cost route in the closed route search graph. In this case, in step S205, as in the previous time, the route containing the minimum cost route is merged to specify the route-containing cycle, and the route-containing cycle N300-N200-N100-N600-N200-N700-N300 is specified.

続くステップS206において、経路特定部15は、前回同様、経路含有閉路N300−N200−N100−N600−N200−N700−N300から、第1の基本ノードN300と第2の基本ノードN600との間の最小コスト経路を特定する。ここでは、第5の経路N300−N700−N200−N600が特定されたものとする。同様に、ステップS207において、経路特定部15は、経路含有閉路N300−N200−N100−N600−N200−N700−N300から第6の経路N300−N200−N100−N600を特定する。   In the subsequent step S206, the route specifying unit 15 determines the minimum value between the first basic node N300 and the second basic node N600 from the route-containing cycles N300-N200-N100-N600-N200-N700-N300 as in the previous time. Identify the cost path. Here, it is assumed that the fifth route N300-N700-N200-N600 is specified. Similarly, in step S207, the route specifying unit 15 specifies the sixth route N300-N200-N100-N600 from the route-containing closed circuit N300-N200-N100-N600-N200-N700-N300.

ところが、第5の経路は、グラフ情報記憶部11に記録されている第3の経路N300−N700−N200−N600と同値である。したがって、ステップS208において、第3の経路は削除され、第5の経路および第6の経路がグラフ情報記憶部11の計算結果に追加される。   However, the fifth route is equivalent to the third route N300-N700-N200-N600 recorded in the graph information storage unit 11. Therefore, in step S208, the third route is deleted, and the fifth route and the sixth route are added to the calculation result of the graph information storage unit 11.

この時点で計算結果として、3つの経路、すなわち第4の経路N300−N400−N500−N600、第5の経路N300−N700−N200−N600、第6の経路N300−N200−N100−N600が特定されているので、ステップS201において経路特定動作は終了する。   At this point, three routes, that is, a fourth route N300-N400-N500-N600, a fifth route N300-N700-N200-N600, and a sixth route N300-N200-N100-N600 are identified as calculation results. Therefore, the route specifying operation ends in step S201.

2.3)効果
以上説明したように、閉路C100と閉路C200のように1つの基本ノードだけを共有する閉路同士を第1実施形態と同様に併合させることにより、第1実施形態による経路特定装置1と同様の作用および効果を得ることができる。
2.3) Effects As described above, the route specifying device according to the first embodiment is obtained by merging the cycles that share only one basic node like the cycles C100 and C200 in the same manner as in the first embodiment. The same operation and effect as 1 can be obtained.

3.第3実施形態
本発明の第3実施形態による経路特定装置では、経路を特定する処理中に取得される閉路情報を保持しておき、保持された閉路情報を他の経路を特定する処理で利用する。これにより経路特定処理を高速化することができる。以下、かかる相違点を中心として説明する。
3. Third Embodiment In the route specifying device according to the third embodiment of the present invention, the closed circuit information acquired during the process of specifying the route is held, and the held closed circuit information is used in the process of specifying another route. To do. As a result, the route specifying process can be speeded up. Hereinafter, this difference will be mainly described.

図18に示すように、第3実施形態におけるグラフ情報記憶部11には、図2に示す各情報の加えて、併合閉路情報が格納されている。併合閉路情報は、ある2つの閉路が併合された場合、その併合により生成された閉路を表す情報を元になる2つの閉路情報と対応付けた情報である。   As shown in FIG. 18, the graph information storage unit 11 in the third embodiment stores merged cycle information in addition to the information shown in FIG. The merged cycle information is information in which, when two certain cycles are merged, information indicating the cycle generated by the merge is associated with the two pieces of cycle information.

併合閉路情報は、図18に示すように、併合の対象となる2つの閉路のそれぞれを識別するための閉路識別子と、併合により生成された閉路を識別するための閉路識別子と、を含むテーブルである。即ち、このテーブルにおける値である識別子は、当該値の行と列にそれぞれ対応付けられた閉路識別子により識別される閉路同士を併合することにより生成された閉路の識別子である。なお、併合閉路情報は、このようなテーブル形式ではなく、情報処理装置により処理可能な他の形式により表されてもよい。   As shown in FIG. 18, the merged cycle information is a table including a cycle identifier for identifying each of the two cycles to be merged and a cycle identifier for identifying the cycle generated by the merge. is there. That is, the identifier that is a value in this table is an identifier of a cycle generated by merging the cycles identified by the cycle identifier respectively associated with the row and column of the value. The merged cycle information may be represented not in such a table format but in another format that can be processed by the information processing apparatus.

本実施形態による経路特定装置1は、図13のステップS205以外の処理を第1実施形態と同様に実行する。   The path identifying device 1 according to the present embodiment executes processes other than step S205 of FIG. 13 as in the first embodiment.

制御部10は、ステップS205に進んだとき、まず、グラフ情報記憶部11に、併合の対象となる2つの閉路に係る併合閉路情報が記憶されているか否かを判定する。併合の対象となる2つの閉路に係る併合閉路情報が記憶されている場合、制御部10は、当該併合閉路情報から併合により生成された閉路を表す情報を取得する。   When the control unit 10 proceeds to step S205, the control unit 10 first determines whether or not merged cycle information related to two cycles to be merged is stored in the graph information storage unit 11. When merged cycle information relating to two cycles to be merged is stored, the control unit 10 acquires information representing a cycle generated by merging from the merged cycle information.

一方、併合の対象となる2つの閉路に係る併合閉路情報が記憶されていない場合、制御部10は、第1実施形態と同様に、2つの閉路同士を併合することにより経路含有閉路を生成する。更に、この場合、併合の対象となる2つの閉路の閉路識別子と併合により生成された閉路の閉路識別子とを対応付けて上記テーブル形式で記憶する。   On the other hand, when the merged cycle information related to the two cycles to be merged is not stored, the control unit 10 generates a route-containing cycle by merging the two cycles as in the first embodiment. . Furthermore, in this case, the closing identifiers of the two closings to be merged are associated with the closing identifiers of the closings generated by the merging and stored in the above table format.

たとえば、閉路C200とC400を併合することにより閉路C500が生成される場合を想定する。この場合、2つの閉路同士を併合する前は、併合閉路情報はT1の状態であるが、閉路C200とC400とを併合して閉路C500が生成されると、併合閉路情報はT2の状態となる。このように保持された併合閉路情報を利用することで経路特定処理を高速化することができる。   For example, it is assumed that the closed circuit C500 is generated by merging the closed circuits C200 and C400. In this case, the merged cycle information is in the state of T1 before the two cycles are merged, but when the cycle C500 is generated by merging the cycles C200 and C400, the merged cycle information is in the state of T2. . By using the merged cycle information held in this way, the route specifying process can be speeded up.

4.第4実施形態
本発明の第4実施形態による経路特定装置では、基本グラフに基づいて経路を特定できなかった場合にのみ閉路探索グラフを用いることにより経路を特定する。その他は、上述した第1〜第3実施形態と同様であるから、かかる相違点を中心として説明する。
4). Fourth Embodiment In the route specifying device according to the fourth embodiment of the present invention, a route is specified by using a closed loop search graph only when a route cannot be specified based on a basic graph. The other points are the same as those in the first to third embodiments described above, and thus the differences will be mainly described.

図19において、経路特定装置1は、基本グラフに基づいて(即ち、閉路探索グラフを用いることなく)経路を特定する(ステップS401)。ここでは、ダイクストラ法を繰り返し用いることにより基本ノード間を結び互いに基本ノードを共有しない2つ以上の異なる経路を特定する。即ち、第1の経路を特定し、その後、第1の経路が通る基本ノードを基本グラフから除去したグラフに基づいて、第2の経路を特定する。同様にして、第(i−1)経路を特定し、その後、第1〜第(i−1)経路が通る基本ノードを基本グラフから除去したグラフに基づいて、第i経路を特定する。ただし、1<i≦kである。なお、他の方法で経路を特定してもよい。   In FIG. 19, the route specifying device 1 specifies a route based on the basic graph (that is, without using the closed loop search graph) (step S401). Here, the Dijkstra method is repeatedly used to specify two or more different paths that connect the basic nodes and do not share the basic nodes. That is, the first route is specified, and then the second route is specified based on the graph obtained by removing the basic node through which the first route passes from the basic graph. Similarly, the (i-1) th route is specified, and then the ith route is specified based on the graph obtained by removing the basic nodes through which the first to (i-1) th routes pass from the basic graph. However, 1 <i ≦ k. Note that the route may be specified by other methods.

ここで、基本グラフから基本ノードを除去する操作は、基本グラフのデータ構造から実際に基本ノードを除去する他、基本グラフのデータ構造に対して除去すべき基本ノードを隠蔽するマスキング処理を施す、あるいは、該基本ノードに接続する基本リンクのコストを∞にするなど、ダイクストラ法あるいは他の経路計算に用いられるアルゴリズムで該基本ノードが選択されないような処理であればよい。   Here, the operation for removing the basic node from the basic graph is to remove the basic node from the data structure of the basic graph, and to perform a masking process for hiding the basic node to be removed from the data structure of the basic graph. Alternatively, a process that does not select the basic node by the Dijkstra method or another algorithm used for route calculation, such as setting the cost of the basic link connected to the basic node to ∞, may be used.

なお、第2実施形態あるいはそれに基づく第3実施形態のように、閉路隣接グラフにおける弱隣接リンクを許容する場合は、上記の特定した経路が通る基本ノードを基本グラフから除去する代わりに、上記の特定した経路が通る基本リンクを基本グラフから除去する。   In addition, as in the second embodiment or the third embodiment based on it, when a weakly adjacent link in a closed adjacency graph is allowed, instead of removing the basic node through which the identified route passes from the basic graph, Remove the basic links that the specified route passes from the basic graph.

ステップS401の処理により特定される第1の経路は、基本グラフにおいてコストが最小となる経路である。一方、このように特定された第1の経路および第2の経路は、第1の経路のコストと第2の経路のコストとの和が最小であるとは限らない。   The first route specified by the process of step S401 is a route with the lowest cost in the basic graph. On the other hand, the first route and the second route identified in this way do not necessarily have the smallest sum of the cost of the first route and the cost of the second route.

次いで、制御部10は、ステップS402にて、経路が特定されたか否かを判定する。ステップS401にて経路が特定されなかった場合、ステップS403にて、第1実施形態と同様に、閉路隣接グラフを生成するとともに、生成された閉路隣接グラフに基づいて、2つの異なる経路を特定する。なお、経路が特定された場合であっても、特定された経路が、予め設定された条件を満たさなかった場合、「No」と判定するように構成されていてもよい。例えば、この条件は、第2の経路のコストが、予め設定された基準値よりも大きいという条件である。ステップS401にて経路が特定された場合には(ステップS402;Yes)、処理の実行を終了する。   Next, in step S402, the control unit 10 determines whether a route is specified. If no route is specified in step S401, a closed adjacency graph is generated in step S403 as in the first embodiment, and two different routes are specified based on the generated closed adjacency graph. . Even when the route is specified, the route may be determined as “No” when the specified route does not satisfy a preset condition. For example, this condition is a condition that the cost of the second route is larger than a preset reference value. When the route is specified in step S401 (step S402; Yes), the execution of the process is terminated.

以上、説明したように、本発明の第4実施形態によれば、第1実施形態と同様に効果を得ることができると共に、第1〜第k(k≧2)経路のコストの和が最小となる他の経路を特定することもできる。   As described above, according to the fourth embodiment of the present invention, it is possible to obtain the same effect as in the first embodiment, and the sum of the costs of the first to kth (k ≧ 2) routes is minimized. It is also possible to specify other routes.

5.第5実施形態
図20を参照しながら、本発明の第5実施形態による経路特定装置について説明する。第5実施形態による経路特定装置1000は、閉路特定部1001と、経路含有閉路特定部1002と、経路特定部1003と、経路選定部1004と、閉路探索空間特定部1005と、を備える。
5. Fifth Embodiment With reference to FIG. 20, a route identifying device according to a fifth embodiment of the present invention will be described. A route identification device 1000 according to the fifth embodiment includes a cycle identification unit 1001, a route-containing cycle identification unit 1002, a route identification unit 1003, a route selection unit 1004, and a cycle search space identification unit 1005.

閉路特定部1001は、第1の基本ノードを通る第1の閉路と第2の基本ノードを通る第2の閉路とを含む複数の閉路を特定する。経路含有閉路特定部1002は、特定された複数の閉路のうちの基本ノード又は基本リンクである基本グラフ要素の少なくとも1つを共有する閉路同士を併合することにより第1の基本ノードと第2の基本ノードとを通る閉路である経路含有閉路を特定する。経路特定部1003は、特定された経路含有閉路において、第1の基本ノードと第2の基本ノードとを結び、基本ノードあるいは基本リンクを共有しない2つの異なる経路を特定する。経路選定部1004は、特定された上記2つの異なる経路に基づいて、特定済みの経路を保持する計算結果を更新する。閉路探索空間特定部1005は、経路含有閉路特定部1002によって行われた閉路間の併合を次回から適用不可能な処理として記録する。   The cycle specifying unit 1001 specifies a plurality of cycles including a first cycle that passes through the first basic node and a second cycle that passes through the second basic node. The route-containing cycle specifying unit 1002 combines the first basic node and the second by combining the cycles sharing at least one of the basic graph elements that are the basic nodes or basic links of the plurality of specified cycles. A route-containing cycle that is a cycle passing through the basic node is specified. The route specifying unit 1003 connects the first basic node and the second basic node in the specified route-containing cycle, and specifies two different routes that do not share the basic node or the basic link. The route selection unit 1004 updates the calculation result holding the specified route based on the two different routes specified above. The cycle search space identification unit 1005 records the merge between cycles performed by the route-containing cycle identification unit 1002 as a process that cannot be applied from the next time.

更に、経路含有閉路特定部1002〜閉路探索空間特定部1005の一連の処理は、第1の基本ノードと第2の基本ノードとを結び基本ノードあるいは基本リンクを共有しない経路が求めるべき数だけ特定できるまで、あるいはその数だけ特定するのは不可能と判断されるまで、繰り返されるように構成される。このように構成することにより、2つの基本ノードを結び基本リンクを共有しない2つ以上の異なる経路を確実に特定することができ、その処理負荷を低減することができる。   Further, the series of processing of the route-containing cycle specifying unit 1002 to the cycle search space specifying unit 1005 specifies the number of routes that connect the first basic node and the second basic node and do not share the basic node or basic link. It is configured to repeat until it is possible or until it is determined that it is impossible to specify that number. With this configuration, two or more different paths that connect two basic nodes and do not share a basic link can be reliably specified, and the processing load can be reduced.

6.その他
上述した第1実施形態〜第4実施形態においては、経路特定装置1は、閉路探索グラフの生成する処理(第1の処理)と経路の特定する処理(第2の処理)とを続けて実行するように構成されていた。ところで、経路特定装置1は、第1の処理の実行結果を保持し、その後、保持されている実行結果を用いることにより、複数回、第2の処理を実行するように構成されていてもよい。
6). Others In the first embodiment to the fourth embodiment described above, the route specifying device 1 continues the process of generating a closed loop search graph (first process) and the process of specifying a route (second process). Was configured to run. By the way, the route identification device 1 may be configured to hold the execution result of the first process and then execute the second process a plurality of times by using the held execution result. .

また、閉路隣接グラフ又は閉路探索グラフを生成するためのプログラムと、経路を特定するためのプログラムと、は、1つのプログラムを構成していてもよいし、互いに独立した2つのプログラムであってもよい。なお、経路特定装置1は、互いに独立した2つのプログラムのそれぞれに対して、中央処理装置、一次記憶装置、及び、二次記憶装置等のプログラムを実行するために必要な計算資源を、物理的又は論理的に分離して割り当てるように構成されていてもよい。   Further, the program for generating the cycle adjacency graph or the cycle search graph and the program for specifying the route may constitute one program, or may be two programs independent of each other. Good. In addition, the path specifying device 1 physically allocates calculation resources necessary for executing a program such as a central processing unit, a primary storage device, and a secondary storage device for each of two independent programs. Or you may be comprised so that it may allocate logically separately.

なお、上記各実施形態において経路特定装置の各機能は、CPUがプログラム(ソフトウェア)を実行することにより実現されていたが、回路等のハードウェアにより実現されていてもよい。また、上記各実施形態においてプログラムは、記憶装置に記憶されていたが、コンピュータが読み取り可能な記録媒体に記憶されていてもよい。例えば、記録媒体は、フレキシブルディスク、光ディスク、光磁気ディスク、及び、半導体メモリ等の可搬性を有する媒体である。   In each of the above embodiments, each function of the path identification device is realized by the CPU executing a program (software), but may be realized by hardware such as a circuit. In each of the above embodiments, the program is stored in the storage device, but may be stored in a computer-readable recording medium. For example, the recording medium is a portable medium such as a flexible disk, an optical disk, a magneto-optical disk, and a semiconductor memory.

以上、上記実施形態を参照して本願発明を説明したが、本願発明は、上述した実施形態に限定されるものではない。本願発明の構成及び詳細に、本願発明の範囲内において当業者が理解し得る様々な変更をすることができる。また、上記実施形態の他の変形例として、上述した実施形態及び変形例の任意の組み合わせが採用されてもよい。   Although the present invention has been described with reference to the above embodiment, the present invention is not limited to the above-described embodiment. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention. In addition, as another modified example of the above-described embodiment, any combination of the above-described embodiments and modified examples may be employed.

7.付記
上述した実施形態の一部あるいは全部は、以下の付記のようにも記載されうるが、これらに限定されるものではない。
(付記1)
複数のノードがリンク接続されたネットワークにおける経路特定方法であって、
前記ネットワーク内にある複数のノードおよびリンクにより閉じられた経路(以下、閉路という。)に基づいて、任意の第1ノードおよび第2ノードを通り互いに交差しないk個(kは2以上の整数)の経路含有閉路を特定し、
前記k個の経路含有閉路から前記第1ノードと前記第2ノードとの間の異なる(k+1)個の経路を特定する、
ことを特徴とする経路特定方法。
(付記2)
前記k個の経路含有閉路は、前記第1ノードと前記第2ノードとの間の経路コストを基準として特定されることを特徴とする付記1に記載の経路特定方法。
(付記3)
前記k個の経路含有閉路からそれぞれ2本の経路を特定し、重複した経路を削除することで前記(k+1)個の経路を特定することを特徴とする付記1または2に記載の経路特定方法。
(付記4)
前記k個の経路含有閉路の各々は、前記第1ノードを通る単位閉路と前記第2ノードを通る単位閉路とを含む複数の単位閉路を併合することで特定されることを特徴とする付記1−3のいずれか1項に記載の経路特定方法。
(付記5)
複数のノードがリンク接続されたネットワークにおける経路特定装置であって、
前記ネットワーク内にある複数のノードおよびリンクにより閉じられた経路(以下、閉路という。)に基づいて、任意の第1ノードおよび第2ノードを通り互いに交差しないk個(kは2以上の整数)の経路含有閉路を特定する閉路特定手段と、
前記k個の経路含有閉路から前記第1ノードと前記第2ノードとの間の異なる(k+1)個の経路を特定する経路特定手段と、
を有することを特徴とする経路特定装置。
(付記6)
前記閉路特定手段は、前記第1ノードと前記第2ノードとの間の経路コストを基準として前記k個の経路含有閉路を特定することを特徴とする付記5に記載の経路特定装置。
(付記7)
前記経路特定手段は、前記k個の経路含有閉路からそれぞれ2本の経路を特定し、重複した経路を削除することで前記(k+1)個の経路を特定することを特徴とする付記5または6に記載の経路特定装置。
(付記8)
前記閉路特定手段は、
前記第1ノードを通る単位閉路と前記第2ノードを通る単位閉路とを含む複数の単位閉路を併合することで前記k個の経路含有閉路の各々を順次特定することを特徴とする付記5−7のいずれか1項に記載の経路特定装置。
(付記9)
複数のノードがリンク接続されたネットワークにおける経路特定装置としてコンピュータを機能させるプログラムであって、
前記ネットワーク内にある複数のノードおよびリンクにより閉じられた経路(以下、閉路という。)に基づいて、任意の第1ノードおよび第2ノードを通り互いに交差しないk個(kは2以上の整数)の経路含有閉路を特定する機能と、
前記k個の経路含有閉路から前記第1ノードと前記第2ノードとの間の異なる(k+1)個の経路を特定する機能と、
を前記コンピュータで実現させることを特徴とするプログラム。
(付記10)
基本ノードと、2つの基本ノードを結ぶ基本リンクと、により構成される基本グラフにおいて第1の基本ノードと第2の基本ノードとを結ぶ経路を特定する経路特定方法であって、
a)前記第1の基本ノードを通る第1の閉路と前記第2の基本ノードを通る第2の閉路とを含む複数の閉路を特定し、
b)前記特定された複数の閉路のうちの、基本ノード又は基本リンクである基本グラフ要素の少なくとも1つを共有する閉路同士を併合することにより、前記第1の基本ノードと前記第2の基本ノードとを通る閉路である第1の経路含有閉路を特定し、
c)前記第1の基本ノードと前記第2の基本ノードを通る閉路である第(k-1)の経路含有閉路を特定した後(ただし、kは2以上の整数)、前記特定された複数の閉路のうち、前記第1の経路含有閉路から前記第(k-1)の経路含有閉路の特定過程で併合された閉路を除いた閉路集合のうちの、基本ノード又は基本リンクである基本グラフ要素の少なくとも1つを共有する閉路同士を併合することにより、前記第1の基本ノードと前記第2の基本ノードを通る閉路である第kの経路含有閉路を特定し、
d)前記c)をk=2からkを1ずつ増加させながら(k-1)回繰り返すことで特定されたk個の経路含有閉路から、前記第1の基本ノードと前記第2の基本ノードとを結び基本リンクまたは当該第1の基本ノード及び当該第2の基本ノード以外の基本ノードを共有しない(k+1)の異なる経路を特定する、
ことを特徴とする経路特定方法。
(付記11)
付記10に記載の経路特定方法であって、
前記第1の基本ノードと前記第2の基本ノードとを結ぶ経路の特定に使用可能な閉路の集合を示すこと、あるいは、前記第1の基本ノードと前記第2の基本ノードとを結ぶ経路の特定に使用不可能な閉路の集合を示すことにより、前記第1の基本ノードと前記第2の基本ノードとを結ぶ経路の特定に使用可能な閉路を選定することを特徴とする経路特定方法。
(付記12)
付記10または11に記載の経路特定方法であって、
第i (i>1)の経路含有閉路より得る、前記第1の基本ノードと前記第2の基本ノードとを結ぶ第(2*i-1)および第(2*i)の経路のいずれかと、第j(j >i) の経路含有閉路より得る、前記第1の基本ノードと前記第2の基本ノードとを結ぶ第(2*j-1)および第(2*j)の経路のいずれかが前記第1の基本ノードおよび前記第2の基本ノードを除く基本ノードもしくは基本リンクを共有している場合、該当する前記第(2*i-1)の経路もしくは前記第(2*i)の経路あるいはその両方を破棄し、前記(k+1)の異なる経路を特定することを特徴とする経路特定方法。
(付記13)
付記10−12のいずれか1項に記載の経路特定方法であって、
2つの閉路が少なくとも1つの基本リンクを共有している場合、当該2つの閉路の一方から、当該共有されている基本リンクである共有リンクを除いた部分を構成するすべての基本リンクと、当該2つの閉路の他方から、当該共有リンクを除いた部分を構成するすべての基本リンクと、を連結した閉路を当該2つの閉路同士を併合した閉路として用いることを特徴とする経路特定方法。
(付記14)
付記13に記載の経路特定方法であって、
2つの閉路が基本リンクを共有することなく基本ノードのみを共有している場合、当該2つの閉路の一方を構成するすべての基本リンクと、当該2つの閉路の他方を構成するすべての基本リンクと、を連結した閉路を当該2つの閉路同士を併合した閉路として用いること特徴とする経路特定方法。
(付記15)
付記13または14に記載の経路特定方法であって、
前記特定された複数の閉路のそれぞれを閉路ノードにより表すとともに、2つの閉路によって前記基本グラフにおける基本グラフ要素が共有されていることを、当該2つの閉路のそれぞれを表す閉路ノードを結ぶ隣接リンクにより表す閉路隣接グラフを生成し、
前記生成された閉路隣接グラフに、前記閉路ノードが表す閉路が前記基本グラフにおいて通る基本ノードのそれぞれを表す包含ノードと、閉路ノードが表す閉路が前記基本グラフにおいて包含ノードを通ることを表し且つ当該閉路ノードと当該包含ノードとを結ぶ包含リンクと、を追加した、閉路探索グラフを生成し、
当該生成された閉路探索グラフに基づいて前記基本グラフにおける前記経路含有閉路を特定する、
ことを特徴とする経路特定方法。
(付記16)
付記10−15のいずれか1項に記載の経路特定方法であって、
前記経路含有閉路特定手段は、前記基本グラフにおける前記基本リンクのそれぞれに対して予め設定された基本リンクコストの総和を最小とするように、前記基本グラフにおける前記経路含有閉路を特定することを特徴とする経路特定方法。
(付記17)
基本ノードと、2つの基本ノードを結ぶ基本リンクと、により構成される基本グラフにおいて第1の基本ノードと第2の基本ノードとを結ぶ経路を特定する経路特定装置であって、
前記第1の基本ノードを通る第1の閉路と前記第2の基本ノードを通る第2の閉路とを含む複数の閉路を特定する閉路特定手段と、
前記特定された複数の閉路のうち、前記第1の基本ノードと前記第2の基本ノードとを結ぶ経路の特定に使用可能な閉路の集合を選定する閉路探索空間特定手段と、
前記特定された閉路探索空間に含まれる閉路のうちの、基本ノード又は基本リンクである基本グラフ要素の少なくとも1つを共有する閉路同士を併合することにより、前記第1の基本ノードと前記第2の基本ノードとを通る閉路である経路含有閉路を特定する経路含有閉路特定手段と、
前記特定された経路含有閉路において、前記第1の基本ノードと前記第2の基本ノードとを結び、且つ、基本リンク、又は、当該第1の基本ノード及び当該第2の基本ノード以外の基本ノードを共有しない、2つの異なる経路を特定する経路特定手段と、
前記経路含有閉路特定手段によって得る、前記第1の基本ノードと前記第2の基本ノードとを通るk個(k≧1)の経路含有閉路から前記経路特定手段によって得る2*kの経路から、(k+1)以上の異なる経路を選定する、経路選定手段と、
を備えることを特徴とする経路特定装置。
(付記18)
基本ノードと、2つの基本ノードを結ぶ基本リンクと、により構成される基本グラフにおいて第1の基本ノードと第2の基本ノードとを結ぶ経路を特定する経路特定機能をコンピュータに実現するためのプログラムであって、
a)前記第1の基本ノードを通る第1の閉路と前記第2の基本ノードを通る第2の閉路とを含む複数の閉路を特定し、
b)前記特定された複数の閉路のうちの、基本ノード又は基本リンクである基本グラフ要素の少なくとも1つを共有する閉路同士を併合することにより、前記第1の基本ノードと前記第2の基本ノードとを通る閉路である第1の経路含有閉路を特定し、
c)前記第1の基本ノードと前記第2の基本ノードを通る閉路である第(k-1)の経路含有閉路を特定した後(ただし、kは2以上の整数)、前記特定された複数の閉路のうち、前記第1の経路含有閉路から前記第(k-1)の経路含有閉路の特定過程で併合された閉路を除いた閉路集合のうちの、基本ノード又は基本リンクである基本グラフ要素の少なくとも1つを共有する閉路同士を併合することにより、前記第1の基本ノードと前記第2の基本ノードを通る閉路である第kの経路含有閉路を特定し、
d)前記c)をk=2からkを1ずつ増加させながら(k-1)回繰り返すことで特定されたk個の経路含有閉路から、前記第1の基本ノードと前記第2の基本ノードとを結び基本リンクまたは当該第1の基本ノード及び当該第2の基本ノード以外の基本ノードを共有しない(k+1)の異なる経路を特定する、
ように前記コンピュータを機能させることを特徴とする経路特定プログラム。
7). Additional Notes Part or all of the above-described embodiments may be described as the following additional notes, but are not limited thereto.
(Appendix 1)
A method for specifying a route in a network in which a plurality of nodes are linked,
Based on a route closed by a plurality of nodes and links in the network (hereinafter referred to as a closed route), k pieces that do not cross each other through any first node and second node (k is an integer of 2 or more) Identify the path-containing cycles of
Identifying different (k + 1) paths between the first node and the second node from the k path-containing cycles;
A route specifying method characterized by the above.
(Appendix 2)
The route specifying method according to claim 1, wherein the k route-containing cycles are specified based on a route cost between the first node and the second node.
(Appendix 3)
The route specifying method according to claim 1 or 2, wherein two routes are specified from each of the k route-containing cycles, and the (k + 1) routes are specified by deleting duplicate routes. .
(Appendix 4)
Each of the k path-containing cycles is specified by merging a plurality of unit cycles including a unit cycle passing through the first node and a unit cycle passing through the second node. The route specifying method according to any one of -3.
(Appendix 5)
A routing device in a network in which a plurality of nodes are linked,
Based on a route closed by a plurality of nodes and links in the network (hereinafter referred to as a closed route), k pieces that do not cross each other through any first node and second node (k is an integer of 2 or more) A cycle specifying means for specifying a path-containing cycle of
Route specifying means for specifying different (k + 1) routes between the first node and the second node from the k route-containing cycles;
A path specifying device comprising:
(Appendix 6)
The route specifying device according to appendix 5, wherein the cycle specifying means specifies the k route-containing cycles based on a route cost between the first node and the second node.
(Appendix 7)
The route specifying means specifies two routes from the k route-containing cycles, and specifies the (k + 1) routes by deleting duplicate routes. The route identification device described in 1.
(Appendix 8)
The closed circuit specifying means includes:
Appendix 5- wherein each of the k path-containing cycles is sequentially identified by merging a plurality of unit cycles including a unit cycle passing through the first node and a unit cycle passing through the second node. The route specifying device according to any one of 7.
(Appendix 9)
A program for causing a computer to function as a path identification device in a network in which a plurality of nodes are linked,
Based on a route closed by a plurality of nodes and links in the network (hereinafter referred to as a closed route), k pieces that do not cross each other through any first node and second node (k is an integer of 2 or more) The ability to identify the path-containing cycles of
A function of identifying different (k + 1) paths between the first node and the second node from the k path-containing cycles;
Is realized by the computer.
(Appendix 10)
A route specifying method for specifying a route connecting a first basic node and a second basic node in a basic graph composed of a basic node and a basic link connecting two basic nodes,
a) identifying a plurality of cycles including a first cycle through the first basic node and a second cycle through the second basic node;
b) The first basic node and the second basic are merged by merging the cycles sharing at least one of the basic graph elements that are basic nodes or basic links among the plurality of specified cycles. Identify a first path containing cycle that is a cycle through the node;
c) After specifying the (k-1) th path-containing circuit that is a circuit passing through the first basic node and the second basic node (where k is an integer of 2 or more), the specified plural A basic graph that is a basic node or a basic link in a set of closed loops obtained by removing a closed loop merged in a specific process of the (k-1) th path-containing loop from the first path-containing loop. Merging cycles that share at least one of the elements to identify a kth path-containing cycle that is a cycle through the first basic node and the second basic node;
d) From the k path-containing cycles identified by repeating the above c) (k−1) times while increasing k by 1 from k = 2, the first basic node and the second basic node And (k + 1) different routes that do not share a basic link or a basic node other than the first basic node and the second basic node.
A route specifying method characterized by the above.
(Appendix 11)
The route specifying method according to attachment 10, wherein
Indicating a set of cycles that can be used to identify a path connecting the first basic node and the second basic node; or a path connecting the first basic node and the second basic node A route specifying method comprising: selecting a closed cycle that can be used for specifying a route connecting the first basic node and the second basic node by indicating a set of closed cycles that cannot be specifically used.
(Appendix 12)
The route specifying method according to appendix 10 or 11,
Any one of the (2 * i-1) and (2 * i) paths connecting the first basic node and the second basic node obtained from the i-th (i> 1) path-containing cycle , Any one of the (2 * j-1) and (2 * j) paths connecting the first basic node and the second basic node obtained from the j (j> i) path-containing cycle Are sharing a basic node or basic link excluding the first basic node and the second basic node, the corresponding (2 * i-1) path or the (2 * i) The route specifying method is characterized by discarding the route or both of them and specifying the (k + 1) different route.
(Appendix 13)
The route specifying method according to any one of appendices 10-12,
When two cycles share at least one basic link, all the basic links that constitute a portion excluding the shared link that is the shared basic link from one of the two cycles; A route specifying method characterized in that a closed circuit obtained by connecting all basic links constituting a portion excluding the shared link from the other closed circuit is used as a closed circuit obtained by merging the two closed circuits.
(Appendix 14)
A route identification method according to attachment 13, comprising:
When two cycles share only a basic node without sharing a basic link, all the basic links constituting one of the two cycles and all the basic links constituting the other of the two cycles A path specifying method characterized by using a closed circuit connecting the two closed circuits as a closed circuit.
(Appendix 15)
The route specifying method according to appendix 13 or 14,
Each of the plurality of identified cycles is represented by a cycle node, and the basic graph element in the basic graph is shared by two cycles, by an adjacent link connecting the cycle nodes representing each of the two cycles Generate a cycle adjacency graph that represents
The generated cycle adjacency graph represents an inclusion node representing each of the basic nodes through which the cycle represented by the cycle node passes in the basic graph, and the cycle represented by the cycle node passes through the inclusion node in the basic graph and Generate a cycle search graph with an inclusion link connecting the cycle node and the inclusion node,
Identifying the path-containing cycle in the basic graph based on the generated cycle search graph;
A route specifying method characterized by the above.
(Appendix 16)
The route specifying method according to any one of appendices 10-15,
The route-containing cycle specifying means specifies the route-containing cycle in the basic graph so as to minimize the total sum of basic link costs set in advance for each of the basic links in the basic graph. The route identification method.
(Appendix 17)
A route specifying device for specifying a route connecting a first basic node and a second basic node in a basic graph composed of a basic node and a basic link connecting two basic nodes,
A cycle specifying means for specifying a plurality of cycles including a first cycle that passes through the first basic node and a second cycle that passes through the second basic node;
A cycle search space identifying means for selecting a set of cycles that can be used to identify a path connecting the first basic node and the second basic node among the plurality of identified cycles;
Of the cycles included in the identified cycle search space, the first basic node and the second are shared by merging the cycles sharing at least one of the basic graph elements that are basic nodes or basic links. A route-containing cycle specifying means for specifying a route-containing cycle that is a cycle passing through the basic node of
In the specified route-containing cycle, the first basic node and the second basic node are connected, and a basic link, or a basic node other than the first basic node and the second basic node Route identification means for identifying two different routes that do not share
From 2 * k routes obtained by the route specifying means from k (k ≧ 1) route-containing cycles passing through the first basic node and the second basic node obtained by the route-containing cycle specifying means, a route selection means for selecting (k + 1) or more different routes;
A path specifying device comprising:
(Appendix 18)
A program for realizing in a computer a route specifying function for specifying a route connecting a first basic node and a second basic node in a basic graph composed of a basic node and a basic link connecting two basic nodes Because
a) identifying a plurality of cycles including a first cycle through the first basic node and a second cycle through the second basic node;
b) The first basic node and the second basic are merged by merging the cycles sharing at least one of the basic graph elements that are basic nodes or basic links among the plurality of specified cycles. Identify a first path containing cycle that is a cycle through the node;
c) After specifying the (k-1) th path-containing circuit that is a circuit passing through the first basic node and the second basic node (where k is an integer of 2 or more), the specified plural A basic graph that is a basic node or a basic link in a set of closed loops obtained by removing a closed loop merged in a specific process of the (k-1) th path-containing loop from the first path-containing loop. Merging cycles that share at least one of the elements to identify a kth path-containing cycle that is a cycle through the first basic node and the second basic node;
d) From the k path-containing cycles identified by repeating the above c) (k−1) times while increasing k by 1 from k = 2, the first basic node and the second basic node And (k + 1) different routes that do not share a basic link or a basic node other than the first basic node and the second basic node.
A path specifying program for causing the computer to function as described above.

本発明は第1のノードと第2のノードとを結ぶ経路を特定する機能を有するサーバ装置などに適用可能である。   The present invention can be applied to a server device having a function of specifying a route connecting a first node and a second node.

1 経路特定装置
11 グラフ情報記憶部
12 閉路特定部
13 閉路探索空間特定部
14 経路含有閉路特定部
15 経路特定部
16 経路選定部
1000 経路特定装置
1001 閉路特定部
1002 経路含有閉路特定部
1003 経路特定部
1004 経路選定部
1005 閉路探索空間特定部
1 Route Identification Device 11 Graph Information Storage Unit
12 Closing part
13 cycle search space specifying unit 14 route-containing cycle specifying unit
15 Route identification part
16 Route Selection Unit 1000 Route Identification Device
1001 Cycle identification unit 1002 Path-containing cycle identification unit
1003 Route specifying unit 1004 Route selecting unit 1005 Cycle search space specifying unit

Claims (9)

複数のノードがリンク接続されたネットワークにおける経路特定方法であって、
前記ネットワーク内にある複数のノードおよびリンクにより閉じられた経路(以下、閉路という。)に基づいて、任意の第1ノードおよび第2ノードを通り互いに交差しないk個(kは2以上の整数)の経路含有閉路を特定し、
前記k個の経路含有閉路から前記第1ノードと前記第2ノードとの間の異なる(k+1)個の経路を特定する、
ことを特徴とする経路特定方法。
A method for specifying a route in a network in which a plurality of nodes are linked,
Based on a route closed by a plurality of nodes and links in the network (hereinafter referred to as a closed route), k pieces that do not cross each other through any first node and second node (k is an integer of 2 or more) Identify the path-containing cycles of
Identifying different (k + 1) paths between the first node and the second node from the k path-containing cycles;
A route specifying method characterized by the above.
前記k個の経路含有閉路は、前記第1ノードと前記第2ノードとの間の経路コストを基準として特定されることを特徴とする請求項1に記載の経路特定方法。   The route specifying method according to claim 1, wherein the k route-containing cycles are specified based on a route cost between the first node and the second node. 前記k個の経路含有閉路からそれぞれ2本の経路を特定し、重複した経路を削除することで前記(k+1)個の経路を特定することを特徴とする請求項1または2に記載の経路特定方法。   3. The route specification according to claim 1, wherein two routes are specified from each of the k route-containing cycles, and the (k + 1) routes are specified by deleting duplicate routes. Method. 前記k個の経路含有閉路の各々は、前記第1ノードを通る単位閉路と前記第2ノードを通る単位閉路とを含む複数の単位閉路を併合することで特定されることを特徴とする請求項1−3のいずれか1項に記載の経路特定方法。   Each of the k route-containing cycles is specified by merging a plurality of unit cycles including a unit cycle passing through the first node and a unit cycle passing through the second node. The route specifying method according to any one of 1-3. 複数のノードがリンク接続されたネットワークにおける経路特定装置であって、
前記ネットワーク内にある複数のノードおよびリンクにより閉じられた経路(以下、閉路という。)に基づいて、任意の第1ノードおよび第2ノードを通り互いに交差しないk個(kは2以上の整数)の経路含有閉路を特定する閉路特定手段と、
前記k個の経路含有閉路から前記第1ノードと前記第2ノードとの間の異なる(k+1)個の経路を特定する経路特定手段と、
を有することを特徴とする経路特定装置。
A routing device in a network in which a plurality of nodes are linked,
Based on a route closed by a plurality of nodes and links in the network (hereinafter referred to as a closed route), k pieces that do not cross each other through any first node and second node (k is an integer of 2 or more) A cycle specifying means for specifying a path-containing cycle of
Route specifying means for specifying different (k + 1) routes between the first node and the second node from the k route-containing cycles;
A path specifying device comprising:
前記閉路特定手段は、前記第1ノードと前記第2ノードとの間の経路コストを基準として前記k個の経路含有閉路を特定することを特徴とする請求項5に記載の経路特定装置。   6. The route specifying apparatus according to claim 5, wherein the closed route specifying unit specifies the k route-containing closed routes based on a route cost between the first node and the second node. 前記経路特定手段は、前記k個の経路含有閉路からそれぞれ2本の経路を特定し、重複した経路を削除することで前記(k+1)個の経路を特定することを特徴とする請求項5または6に記載の経路特定装置。   The route specifying means specifies two routes from the k route-containing cycles, and specifies the (k + 1) routes by deleting duplicate routes. 6. The route specifying device according to 6. 前記閉路特定手段は、
前記第1ノードを通る単位閉路と前記第2ノードを通る単位閉路とを含む複数の単位閉路を併合することで前記k個の経路含有閉路の各々を順次特定することを特徴とする請求項5−7のいずれか1項に記載の経路特定装置。
The closed circuit specifying means includes:
6. The k path-containing cycles are sequentially identified by merging a plurality of unit cycles including a unit cycle passing through the first node and a unit cycle passing through the second node. The route identifying device according to any one of -7.
複数のノードがリンク接続されたネットワークにおける経路特定装置としてコンピュータを機能させるプログラムであって、
前記ネットワーク内にある複数のノードおよびリンクにより閉じられた経路(以下、閉路という。)に基づいて、任意の第1ノードおよび第2ノードを通り互いに交差しないk個(kは2以上の整数)の経路含有閉路を特定する機能と、
前記k個の経路含有閉路から前記第1ノードと前記第2ノードとの間の異なる(k+1)個の経路を特定する機能と、
を前記コンピュータで実現させることを特徴とするプログラム。
A program for causing a computer to function as a path identification device in a network in which a plurality of nodes are linked,
Based on a route closed by a plurality of nodes and links in the network (hereinafter referred to as a closed route), k pieces that do not cross each other through any first node and second node (k is an integer of 2 or more) The ability to identify the path-containing cycles of
A function of identifying different (k + 1) paths between the first node and the second node from the k path-containing cycles;
Is realized by the computer.
JP2012122622A 2012-05-30 2012-05-30 Route specifying method and apparatus in network and route specifying program Active JP5958697B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012122622A JP5958697B2 (en) 2012-05-30 2012-05-30 Route specifying method and apparatus in network and route specifying program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012122622A JP5958697B2 (en) 2012-05-30 2012-05-30 Route specifying method and apparatus in network and route specifying program

Publications (2)

Publication Number Publication Date
JP2013247667A true JP2013247667A (en) 2013-12-09
JP5958697B2 JP5958697B2 (en) 2016-08-02

Family

ID=49847094

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012122622A Active JP5958697B2 (en) 2012-05-30 2012-05-30 Route specifying method and apparatus in network and route specifying program

Country Status (1)

Country Link
JP (1) JP5958697B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015220496A (en) * 2014-05-14 2015-12-07 富士通株式会社 Data transfer method and data transfer system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002141943A (en) * 2000-11-06 2002-05-17 Ntt Communications Kk Path search method and system
JP2003087311A (en) * 2001-09-12 2003-03-20 Mitsubishi Electric Corp Path finding device
JP2005260708A (en) * 2004-03-12 2005-09-22 Mitsubishi Electric Corp Ring network system having redundant path, and transfer device used in the system
JP2012044379A (en) * 2010-08-18 2012-03-01 Nippon Telegr & Teleph Corp <Ntt> Node, packet transfer method, and communication network

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002141943A (en) * 2000-11-06 2002-05-17 Ntt Communications Kk Path search method and system
JP2003087311A (en) * 2001-09-12 2003-03-20 Mitsubishi Electric Corp Path finding device
JP2005260708A (en) * 2004-03-12 2005-09-22 Mitsubishi Electric Corp Ring network system having redundant path, and transfer device used in the system
JP2012044379A (en) * 2010-08-18 2012-03-01 Nippon Telegr & Teleph Corp <Ntt> Node, packet transfer method, and communication network

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015220496A (en) * 2014-05-14 2015-12-07 富士通株式会社 Data transfer method and data transfer system

Also Published As

Publication number Publication date
JP5958697B2 (en) 2016-08-02

Similar Documents

Publication Publication Date Title
Yang et al. Constraint reformulation and a Lagrangian relaxation-based solution algorithm for a least expected time path problem
Hamacher et al. Finding representative systems for discrete bicriterion optimization problems
CN107196858B (en) K shortest path solving method considering multi-type constraints
Amiri et al. Congestion-free rerouting of flows on dags
Matsuo et al. Reducing the overhead of mapping quantum circuits to IBM Q system
Sevkli et al. Discrete particle swarm optimization for the orienteering problem
JP2019121137A (en) Optimization device and control method for optimization device
Li et al. Finding optimal memoryless policies of POMDPs under the expected average reward criterion
JP5391322B2 (en) Route calculation method, program, and calculation device
Bergman et al. Lagrangian bounds from decision diagrams
Koliechkina et al. Solving extremum problems with linear fractional objective functions on the combinatorial configuration of permutations under multicriteriality
Gouveia et al. Extended formulations and branch-and-cut algorithms for the black-and-white traveling salesman problem
US20210042298A1 (en) Program storage medium, device, and method for shortest path search
Housni An efficient algorithm for enumerating all minimal paths of a graph
Blum et al. A comprehensive comparison of metaheuristics for the repetition-free longest common subsequence problem
Pradhan et al. On the defect prediction for large scale software systems–from defect density to machine learning
Baldacci et al. Pricing strategies for capacitated ring-star problems based on dynamic programming algorithms
He et al. Coeus: Consistent and continuous network update in software-defined networks
JP5958697B2 (en) Route specifying method and apparatus in network and route specifying program
Amar et al. An exact resolution for the probabilistic traveling salesman problem under the a priori strategy
JPWO2016067548A1 (en) Domain linear model optimization system, method and program
JPWO2018016299A1 (en) Estimated distance calculator, estimated distance calculation method, estimated distance calculation program and automatic planer
Yang et al. Finding K shortest looping paths in a traffic-light network
JP2013062735A (en) Route specification device, route specification method, and route specification program
Lin et al. A tabu search based metaheuristic for the network design problem with relays

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150406

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160302

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160502

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160525

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160607

R150 Certificate of patent or registration of utility model

Ref document number: 5958697

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150