(57)【要約】【課題】障害発生時における交通管制システムの迅速な障害復旧を図ること。【解決手段】自ノードを直接管理する第１のノードとの通信が不能となったか否かを判断して、その結果、通信不能と判断された場合、第１のノードによって直接管理されている各ノードと対応付けられている管轄エリアの交通を管理する制御信号の送信要求を、前記第１のノードを管理する第２のノードに送信する。この結果、第２のノードから制御信号を受信することができるため、交通管制システム１００を適切に維持することができる。【選択図】図１
2008234006.tif 000002
【特許請求の範囲】
【請求項１】
複数の管轄エリアからなる広域エリアの交通を管理する交通管制システムを構成する階層構造化されたノードに、当該ノードが対応付けられている管轄エリアの交通を管理させる交通管制プログラムであって、
自ノードを直接管理する第１のノードとの通信が不能となったか否かを判断させる判断工程と、
前記判断工程によって通信不能と判断された場合、前記第１のノードによって直接管理されている各ノードと対応付けられている管轄エリアの交通を管理する制御信号の送信要求を、前記第１のノードを管理する第２のノードに送信させる送信工程と、
前記送信工程によって前記送信要求が送信された結果、前記第２のノードから前記制御信号を受信させる受信工程と、
前記受信工程によって受信された制御信号を、前記第１のノードによって直接管理されているノード群のうち前記自ノードとは異なる他ノードに転送させる転送工程と、
をコンピュータに実行させることを特徴とする交通管制プログラム。
【請求項２】
前記判断工程によって通信不能と判断された場合、前記第１のノードの代わりに前記ノード群を直接管理するマスタノードを当該ノード群の中から決定させる決定工程を前記コンピュータに実行させ、
前記送信工程は、
前記決定工程によって前記自ノードがマスタノードに決定された場合、前記送信要求を記第１のノードを管理する第２のノードに送信させることを特徴とする請求項１に記載の交通管制プログラム。
【請求項３】
前記決定工程は、
前記判断工程によって通信不能と判断された時刻に基づいて、前記ノード群の中から前記マスタノードを決定させることを特徴とする請求項２に記載の交通管制プログラム。
【請求項４】
前記判断工程によって通信不能と判断された場合、前記ノード群のうち前記第１のノードとの通信が不能となったノードを検出させる検出工程を前記コンピュータに実行させ、
前記送信工程は、
前記検出工程によって検出されたノードと対応付けられている管轄エリアの交通を管理する制御信号の送信要求を、前記第１のノードを管理する第２のノードに送信させることを特徴とする請求項１〜３のいずれか一つに記載の交通管制プログラム。
【請求項５】
前記判断工程によって通信不能と判断された場合、前記ノード群のうち前記自ノードと直接接続されたノード（以下、「隣接ノード」という）に、前記第１のノードとの通信が不能となったノードの探索要求を送信させる探索要求送信工程と、
前記探索要求送信工程によって前記探索要求が送信された結果、前記第１のノードとの通信が不能となったノードを特定するノード情報を含む探索応答を前記隣接ノードから受信させる探索応答受信工程と、を前記コンピュータに実行させ、
前記検出工程は、
前記探索応答受信工程によって受信された探索応答に含まれるノード情報によって特定されるノードを検出させることを特徴とする請求項４に記載の交通管制プログラム。
【請求項６】
請求項１〜５のいずれか一つに記載の交通管制プログラムを記録した前記コンピュータに読み取り可能な記録媒体。
【請求項７】
複数の管轄エリアからなる広域エリアの交通を管理する交通管制システムを構成し、階層構造化され、自ノードと対応付けられている管轄エリアの交通を管理するノードであって、
前記自ノードを直接管理する第１のノードとの通信が不能となったか否かを判断する判断手段と、
前記判断手段によって通信不能と判断された場合、前記第１のノードによって直接管理されている各ノードと対応付けられている管轄エリアの交通を管理する制御信号の送信要求を、前記第１のノードを管理する第２のノードに送信する送信手段と、
前記送信手段によって前記送信要求が送信された結果、前記第２のノードから前記制御信号を受信する受信手段と、
前記受信手段によって受信された制御信号を、前記第１のノードによって直接管理されているノード群のうち前記自ノードとは異なる他ノードに転送する転送手段と、
を備えることを特徴とするノード。
【請求項８】
複数の管轄エリアからなる広域エリアの交通を管理する交通管制システムを構成する階層構造化されたノードに、当該ノードと対応付けられている管轄エリアの交通を管理させる交通管制方法であって、
自ノードを直接管理する第１のノードとの通信が不能となったか否かを判断する判断工程と、
前記判断工程によって通信不能と判断された場合、前記第１のノードによって直接管理されている各ノードと対応付けられている管轄エリアの交通を管理する制御信号の送信要求を、前記第１のノードを管理する第２のノードに送信する送信工程と、
前記送信工程によって前記送信要求が送信された結果、前記第２のノードから前記制御信号を受信する受信工程と、
前記受信工程によって受信された制御信号を、前記第１のノードによって直接管理されているノード群のうち前記自ノードとは異なる他ノードに転送する転送工程と、
を含んだことを特徴とする交通管制方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、交通管制システムの障害復旧をおこなう交通管制プログラム、該プログラムを記録した記録媒体、ノード、および交通管制方法に関する。特に、広域にわたって信号灯器が制御不能となった場合に、障害発生から完全復旧までの交通管制をおこなう交通管制プログラム、該プログラムを記録した記録媒体、ノード、および交通管制方法に関する。
【背景技術】
【０００２】
一般に、交通管制システムは、交通管制センターを頂点とする階層化構造を有している。具体的には、たとえば、交通管制システムは、交通管制センターに設置される情報処理装置と、当該情報処理装置から配信される制御信号を中継する複数のノードと、各所に点在する端末装置（たとえば、信号灯器、ビーコン、超音波式車両感知装置、交通情報表示装置など）と、から構成されている。
【０００３】
交通管制システム内のあるノードが故障すると、そのノードの管理下にある端末装置が制御不能となってしまう。この状況が継続すると、時間の経過とともに交通障害（交通渋滞、交通事故など）が拡大してしまうため、迅速な障害復旧をおこなう技術が必要とされている。
【０００４】
従来より、交通管制システム内の一部で何らかの障害が発生した場合に、代替用の迂回経路を確保する技術が提供されている（たとえば、下記特許文献１参照。）。具体的には、交通管制システム内のノードは、代替用の迂回経路に関する情報を記憶する迂回用回線ＤＢを備えており、常用の回線の遮断を検知すると、迂回用回線ＤＢを参照して、代替用の迂回経路を探索し、その迂回経路を使用して通信をおこなう。
【０００５】
また、ノードを稼働系と待機系とからなる冗長構成にし、稼働系のいずれかのノードにおいて障害が発生した場合に、待機系のノードに系を切り替えて運用の引き継ぎをおこなう技術が提供されている（たとえば、下記特許文献２参照。）。
【０００６】
【特許文献１】特開２００２−２２２４８９号公報
【特許文献２】特開２００１−２４３５８７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上述した従来技術の特許文献１によれば、何らかの原因によって交通管制システム内のあるノードが故障してしまった場合などに、そのノードの管理下にある複数の端末装置（信号灯器など）が制御不能となる状況からの障害復旧については考慮されていなかった。
【０００８】
このため、災害時などに、交通管制システムから複数の信号灯器が孤立するなどの広域にわたる障害が発生すると、障害復旧までに多大な時間を要してしまい、その結果、交通障害が拡大してしまうという問題があった。
【０００９】
また、迂回用回線ＤＢを破損した場合には、代替用の迂回経路を探索することができないため、迂回用回線ＤＢの交換、あるいは補修などの修復作業が必要となる。このため、上記同様に、障害復旧までに多大な時間を要してしまい、その結果、交通障害が拡大してしまうという問題があった。
【００１０】
また、上述した従来技術の特許文献２によれば、交通管制システム内のノードを稼働系と待機系とからなる冗長構成とするため、ノードの製造コストが増加してしまい、ひいては交通管制システムの保守運用コストの増加を招いてしまうという問題があった。
【００１１】
この発明は、上述した従来技術による問題点を解消するため、障害発生時に、迅速な障害復旧をおこなうことにより、適切な交通管制システムを提供することができる交通管制プログラム、該プログラムを記録した記録媒体、ノード、および交通管制方法を提供することを目的とする。
【課題を解決するための手段】
【００１２】
上述した課題を解決し、目的を達成するため、この発明にかかる交通管制プログラム、該プログラムを記録した記録媒体、ノード、および交通管制方法は、複数の管轄エリアからなる広域エリアの交通を管理する交通管制システムを構成する階層構造化されたノードに、当該ノードが対応づけられた管轄エリアの交通を管理する交通管制プログラム、該プログラムを記録した記録媒体、ノード、および交通管制方法であって、自ノードを直接管理する第１のノードとの通信が不能となったか否かを判断し、通信不能と判断された場合、前記第１のノードによって直接管理されている各ノードが対応づけられている管轄エリアの交通を管理する制御信号の送信要求を、前記第１のノードを管理する第２のノードに送信し、前記送信要求が送信された結果、前記第２のノードから前記制御信号を受信し、受信された制御信号を、前記第１のノードによって直接管理されているノード群のうち前記自ノードとは異なる他ノードに転送することを特徴とする。
【００１３】
この発明によれば、第１のノードとの通信が不能となると、第１のノードによって直接管理されているノード群によって暫定的なグループを形成し、そのグループ内のいずれかのノードが第１のノードの機能を代替することにより、自律的な交通管制をおこなうことができる。
【００１４】
また、上記発明において、前記第１のノードとの通信が不能と判断された場合、前記第１のノードの代わりに前記ノード群を直接管理するマスタノードを当該ノード群の中から決定し、前記自ノードがマスタノードに決定された場合、前記送信要求を前記第１のノードを管理する第２のノードに送信することとしてもよい。
【００１５】
また、上記発明において、前記第１のノードとの通信が不能と判断された時刻に基づいて、前記ノード群の中から前記マスタノードを決定することとしてもよい。
【００１６】
これらの発明によれば、マスタノードに決定されたノードがゲートウェイとなって第１のノードの機能を代替することにより、グループを管理するノードが無秩序に存在してしまうことを防ぐことができ、円滑かつ効率的な交通管制をおこなうことができる。
【００１７】
また、上記発明において、前記第１のノードとの通信が不能と判断された場合、前記ノード群のうち前記第１のノードとの通信が不能となったノードを検出し、検出されたノードと対応付けられている管轄エリアの交通を管理する制御信号の送信要求を、前記第１のノードを管理する第２のノードに送信することとしてもよい。
【００１８】
また、上記発明において、前記第１のノードとの通信が不能と判断された場合、前記ノード群のうち前記自ノードと直接接続されたノード（以下、「隣接ノード」という）に、前記第１のノードとの通信が不能となったノードの探索要求を送信し、前記探索要求が送信された結果、前記第１のノードとの通信が不能となったノードを特定するノード情報を含む探索応答を前記隣接ノードから受信し、そのノード情報によって特定されるノードを検出することとしてもよい。
【００１９】
これらの発明によれば、第１のノードによって直接管理されているノード群のうち、第１のノードとの通信が不能となったノードからなるグループを形成し、そのグループによる自律的な交通管制をおこなうことができる。
【００２０】
また、この発明にかかる交通管制プログラム、該プログラムを記録した記録媒体、ノード、および交通管制方法は、複数の管轄エリアからなる広域エリアの交通を管理する交通管制システムを構成する階層構造化されたノードに、当該ノードが対応付けられている管轄エリアの交通を管理する交通管制プログラム、該プログラムを記録した記録媒体、ノード、および交通管制方法であって、自ノードを直接管理する第１のノードとの通信が不能となったか否かを判断し、前記第１のノードによって直接管理されているノード群のうち、前記自ノードと直接接続されたノード（以下、「隣接ノード」という）から、前記第１のノードとの通信が不能となったノードの探索要求を受信し、前記探索要求を受信した場合、前記判断結果に基づいて、前記第１のノードとの通信が不能となったノードを特定するノード情報を含む探索応答を前記隣接ノードに送信し、前記探索応答が送信された結果、前記自ノードと対応付けられている管轄エリアの交通を管理する制御信号を前記隣接ノードから受信することを特徴とする。
【００２１】
この発明によれば、第１のノードとの通信が不能となった場合に、第１のノードによって直接管理されているノード群によって暫定的なグループを形成し、そのグループ内のマスタノードから転送される制御信号を隣接ノードから受信することができる。
【００２２】
また、上記発明において、前記探索要求を受信した場合、前記隣接ノードとは異なる他の隣接ノードの存否を判定し、存在すると判定された場合、前記他の隣接ノードに前記探索要求を送信し、前記探索要求が送信された結果、前記他の隣接ノードから前記ノード情報を含む探索応答を受信し、前記判断結果に基づいて、受信されたノード情報を含む探索応答を前記隣接ノードに送信することとしてもよい。
【００２３】
また、上記発明において、存在しないと判定された場合、前記判断結果に基づいて、前記ノード情報を含む探索応答を前記隣接ノードに送信することとしてもよい。
【００２４】
これらの発明によれば、第１のノードとの通信が不能となったノードの探索要求を第１のノードによって直接管理されているノード間で伝播させることができる。
【発明の効果】
【００２５】
本発明にかかる交通管制プログラム、該プログラムを記録した記録媒体、ノード、および交通管制方法によれば、障害発生時に、迅速な障害復旧をおこなうことにより、適切な交通管制システムを提供することができるという効果を奏する。
【発明を実施するための最良の形態】
【００２６】
以下に添付図面を参照して、この発明にかかる交通管制プログラム、該プログラムを記録した記録媒体、ノード、および交通管制方法の好適な実施の形態を詳細に説明する。
【００２７】
（交通管制システムのシステム構成）
まず、この発明の実施の形態にかかる交通管制システムのシステム構成について説明する。図１は、この発明の実施の形態にかかる交通管制システム１００のシステム構成図である。図１において、交通管制システム１００は、情報処理装置１０１と、複数のノード（図１では９台）１０２−１〜１０２−９と、複数の信号灯器（図１では５台）１０３−１〜１０３−５とがインターネット、ＬＡＮ、ＷＡＮなどのネットワーク１１０を介して相互に交信可能に接続されている。
【００２８】
交通管制システム１００は、道路交通に関する情報の収集、伝達などを一元的におこない、広域エリアの交通の安全および円滑化、環境の保護などを実現するシステムである。具体的には、交通管制システム１００は、階層構造化されたノード１０２−１〜１０２−９により、各ノードが設置されたまたは各ノードが対応づけられた管轄エリアの交通を管理させる。
【００２９】
情報処理装置１０１は、交通管制センターに設置されるコンピュータ装置であり、各管轄エリア内に設置された信号灯器１０３などの端末装置を制御する機能を有している。情報処理装置１０１は、たとえば、各管轄エリア内の交通状況に応じて、道路交通に関する制御信号を決定し、その制御信号を信号灯器１０３に配信して、各管轄エリア内の信号灯器１０３をコントロールしている。
【００３０】
ノード１０２−１〜１０２−９は、自ノードよりも下位層に属するノードを管理する機能を有するコンピュータ装置であり、ルータやサーバなどである。具体的には、各ノードに記憶された配信表に基づいて、上位ノードから送信されてきた制御信号を自ノードの管理下にある下位ノードに配信する機能（ダウンリンク）を有している。また、下位ノードから送信されてきた各種信号を自ノードを直接管理する上位ノードに送信する機能（アップリンク）を有している。
【００３１】
各ノードは、何らかの原因によって上位ノードとの通信が途絶した場合、同一階層に属するノード群によってグループを形成する機能を有している。また、各ノードは、グループの管理をおこなうマスタノードとして稼働することができ、マスタノードとして決定された場合にはマスタノードとして稼働する。一方、自ノード以外の他ノードがマスタノードに決定された場合には、マスタノードとして稼働しているノードによって管理される。
【００３２】
信号灯器１０３−１〜１０３−５は、交差点などの道路上に設置されるコンピュータ装置であり、交通の安全を確保するため、進行停止などの信号を示す機能を有している。
ここでは、各管轄エリア内に設置された端末装置として、信号灯器１０３−１〜１０３−５を例に挙げて説明したが、交通情報表示装置、可変標識、光ビーコン、および超音波検出器などであってもよい。
【００３３】
（コンピュータ装置のハードウェア構成）
つぎに、図１に示す情報処理装置１０１、ノード１０２−１〜１０２−９および信号灯器１０３−１〜１０３−５（以下、「情報処理装置１０１など」という）のハードウェア構成について説明する。図２は、この発明の実施の形態にかかる情報処理装置１０１などのハードウェア構成を示す説明図である。
【００３４】
図２において、情報処理装置１０１などは、コンピュータ本体２１０と、入力装置２２０と、出力装置２３０と、から構成されており、不図示のルータやモデムを介してＬＡＮ、ＷＡＮやインターネットなどのネットワーク１１０に接続可能である。
【００３５】
コンピュータ本体２１０は、ＣＰＵ、メモリ、インタフェースを有する。ＣＰＵは、情報処理装置１０１などのハードウェア構成の全体の制御を司る。メモリは、ＲＯＭ、ＲＡＭ、ＨＤ、光ディスク２１１、フラッシュメモリから構成される。メモリはＣＰＵのワークエリアとして使用される。
【００３６】
また、メモリには各種プログラムが格納されており、ＣＰＵからの命令に応じてロードされる。ＨＤおよび光ディスク２１１はディスクドライブによりデータのリード／ライトが制御される。また、光ディスク２１１およびフラッシュメモリはコンピュータ本体２１０に対し着脱自在である。インタフェースは、入力装置２２０からの入力、出力装置２３０への出力、ネットワーク１１０に対する送受信の制御をおこなう。
【００３７】
また、入力装置２２０としては、キーボード２２１、マウス２２２、スキャナ２２３などがある。キーボード２２１は、文字、数字、各種指示などの入力のためのキーを備え、データの入力をおこなう。また、タッチパネル式であってもよい。マウス２２２は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などをおこなう。スキャナ２２３は、画像を光学的に読み取る。読み取られた画像は画像データとして取り込まれ、コンピュータ本体２１０内のメモリに格納される。なお、スキャナ２２３にＯＣＲ機能を持たせてもよい。
【００３８】
また、出力装置２３０としては、ディスプレイ２３１、スピーカ２３２、プリンタ２３３などがある。ディスプレイ２３１は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。また、スピーカ２３２は、効果音や読み上げ音などの音声を出力する。また、プリンタ２３３は、画像データや文書データを印刷する。
【００３９】
（メモリテーブルの記憶内容）
つぎに、図１に示すノード１０２−１〜１０２−９が保持しているメモリテーブル３００について説明する。以下、上位ノードとの通信が途絶した場合に形成されるグループ内の各ノードが保持しているメモリテーブル３００の記憶内容について説明する。図３は、メモリテーブルの記憶内容を示す説明図（その１）である。
【００４０】
図３において、メモリテーブル３００は、各ノード１０２−１〜１０２−９が備えるインタフェースごとに、インタフェースＩＤ、伝送方向、終端、隣接ノードＩＤおよび登録状態に関する情報を格納している。インタフェースＩＤは、各ノード１０２−１〜１０２−９が備えるインタフェースを識別する識別情報である。
【００４１】
伝送方向は、後述するグループ化を促すメッセージデータの伝送方向を示している。たとえば、自ノードにメッセージデータが送信されてきた場合の伝送方向は「ｉｎ」、自ノードからメッセージデータを送信した場合の伝送方向は「ｏｕｔ」となる。終端は、メッセージデータの伝送先のノードの存否を示す情報である。たとえば、メッセージデータの伝送先が存在する場合は「ｎｏｎｅ」、伝送先が存在しない場合は「ｙｅｓ」となる。
【００４２】
隣接ノードＩＤは、自ノードと直接接続されている隣接ノードを識別する識別情報である。各ノード１０２−１〜１０２−９が備えるインタフェースを介して、直接接続されている隣接ノードが存在する場合は、その隣接ノードのノードＩＤ（たとえば、「００２４３」）、隣接ノードが存在しない場合は「ｎｏｎｅ」となる。
【００４３】
登録状態は、グループを形成する場合における各ノードの登録状態を示す情報である。たとえば、グループに仮登録された場合は「仮」、グループに本登録された場合は「完了」となる。なお、登録状態についての詳細な説明は後述する。
【００４４】
つぎに、上位ノードとの通信が途絶した場合に形成されるグループ内のマスタノードが保持しているメモリテーブル４００のデータ構造について説明する。図４は、メモリテーブルの記憶内容を示す説明図（その２）である。図４において、メモリテーブル４００は、マスタノードが備えるインタフェースごとに、インタフェースＩＤ、グループＩＤ、隣接ノードＩＤおよび登録状態に関する情報を格納している。
【００４５】
インタフェースＩＤは、マスタノードが備えるインタフェースを識別する識別情報である。グループＩＤは、マスタノードが直接管理しているグループを識別する識別情報である。隣接ノードＩＤは、自ノードと直接接続されている隣接ノードを識別する識別情報である。登録状態は、グループを形成する場合における各ノードの登録状態を示す情報である。
【００４６】
また、メモリテーブル４００は、各グループを構成するノード群を特定するノードリストを保持している。図５は、ノードリストの一例を示す説明図である。図５において、ノードリスト５００は、マスタノードが直接管理しているグループごとに、各グループを構成するノードを識別するノードＩＤを記憶している。
【００４７】
ここで、グループＩＤ「００１」によって特定されるグループを例に挙げると、このグループを構成する各ノードのノードＩＤ「００４３４」，「００８２４」，「００９２０」および「００９２１」を記憶している。なお、ノードリスト５００内の未使用の項目は「未使用」と表記され、グループを構成するノードが新たに追加された場合などに、この未使用の項目を使用して追加されたノードのノードＩＤが登録されることとなる。
【００４８】
（ノード１０２−１〜１０２−９の機能的構成）
つぎに、この発明の実施の形態にかかるノード１０２−１〜１０２−９（以下、「ノード１０２」という）の機能的構成について説明する。図６は、この発明の実施の形態にかかるノード１０２の機能的構成を示すブロック図である。
【００４９】
ノード１０２は、複数の管轄エリアからなる広域エリアの交通を管理する交通管制システム１００を構成し、階層構造化され、自ノードと対応付けられている管轄エリアの交通を管理する機能を有する。
【００５０】
図６において、ノード１０２は、メモリテーブル（３００，４００）と、判断部６０１と、送信部６０２と、受信部６０３と、転送部６０４と、決定部６０５と、検出部６０６と、判定部６０７と、を備えている。
【００５１】
これら各機能６０１〜６０７は、メモリに格納された当該機能に関するプログラムをＣＰＵに実行させることにより、当該機能を実現することができる。また、各機能６０１〜６０７からの出力データはメモリに保持される。また、図６中矢印で示した接続先の機能的構成は、接続元の機能からの出力データをメモリから読み込んで、当該機能に関するプログラムをＣＰＵに実行させる。
【００５２】
図６において、まず、判断部６０１は、自ノードを直接管理する第１のノードとの通信が不能となったか否かを判断する機能を有する。自ノードと第１のノードとの通信が不能となる原因としては、たとえば、第１のノードの故障や、第１のノードと当該第１のノードを直接管理するノードとの間の物理的な通信網の断線などがある。
【００５３】
判断部６０１は、たとえば、一定時間、自ノードが設置された（または、自ノードと対応付けられている）管轄エリアの交通を管理する制御信号が第１のノードから送信されてこなかった場合に、第１のノードとの通信が不能となったと判断することとしてもよい。
【００５４】
具体的には、ノード１０２内部に搭載されたタイマをセットし、第１のノードからの制御信号を受信してからの経過時間を計測する。このあと、新たな制御信号が所定時間内に送信されてきた場合、通信が不能となっていないと判断する。一方、新たな制御信号が所定時間内に送信されてこなかった場合、通信が不能となっていると判断する。
【００５５】
ここで、制御信号とは、管理下にある信号灯器１０３−１〜１０３−５の挙動を制御するサイクル、スプリット、オフセットなどの信号（信号機を制御するパラメータ）であってもよく、また、交通渋滞、交通事故、旅行時間などの道路交通に関する各種情報であってもよい。
【００５６】
図１に示す交通管制システム１００を例に挙げると、たとえば、自ノードをノード１０２−６とすると、第１のノードはノード１０２−３となり、また、自ノードの管理下にある信号灯器は信号灯器１０３−２となる。なお、判断部６０１によって判断された判断結果はメモリに記憶される。
【００５７】
送信部６０２は、判断部６０１によって通信不能と判断された場合、第１のノードによって直接管理されている各ノードが設置された管轄エリアの交通を管理する制御信号の送信要求を、第１のノードを管理する第２のノードに送信する機能を有する。このとき使用される回線は、交通管制システム１００を構成する通常の回線種別とは、物理的、論理的に異なる非常用回線である。なお、この非常用回線は、制御信号を疎通させるプロトコルスタックを持つこととする。
【００５８】
具体的には、送信部６０２は、メモリから判断部６０１による判断結果を読み出して、その判断結果が通信不能であった場合に、制御信号の送信要求を第２のノードに送信する。第２のノードとは、第１のノードを管理下におくノードであればよく、たとえば、第１のノードを直接管理するノードであってもよく、また、交通管制センターに設置される情報処理装置１０１であってもよい。
【００５９】
たとえば、自ノードをノード１０２−６とすると、ノード１０２−３によって直接管理されているノード群を構成するノード１０２−５，１０２−６，１０２−７が設置された管轄エリアの交通を管理する制御信号の送信要求を、ノード１０２−１に送信する。
【００６０】
なお、第１のノードによって直接管理されているノード群を構成する各ノードを識別するノードＩＤは、各ノードのメモリに予め記憶されていてもよい。この場合、送信部６０２は、メモリから判断部６０１による判断結果とともに、ノード群を構成する各ノードのノードＩＤを読み出して、制御信号の送信要求を第２のノードに送信する。
【００６１】
また、送信部６０２は、後述する検出部６０６による検出結果を参照することにより、第１のノードによって直接管理されているノード群を構成する各ノードを特定することとしてもよい。
【００６２】
受信部６０３は、送信部６０２によって送信要求が送信された結果、第２のノードから制御信号を受信する機能を有する。たとえば、送信要求が送信された結果、ノード１０２−５，１０２−６，１０２−７が設置された管轄エリアの交通を管理する制御信号をノード１０２−１から受信する。なお、受信部６０３によって受信された制御信号はメモリに記憶される。
【００６３】
転送部６０４は、受信部６０３によって受信された制御信号を、ノード群を構成するノードのうち自ノードとは異なる他ノードに転送する機能を有する。具体的には、転送部６０４は、メモリから受信部６０３によって受信された制御信号、および当該制御信号の分配先が記述された分配表を読み出して、その分配表に基づいて制御信号を他ノードに転送する。
【００６４】
たとえば、自ノードをノード１０２−６とすると、分配表に基づいて、ノード１０２−３によって直接管理されているノード群を構成するノード１０２−５，１０２−７に制御信号を分配して転送する。また、分配先のノードと直接接続されていない場合には、自ノードと直接接続されたノードを介して制御信号を分配先のノードに転送することとしてもよい。
【００６５】
たとえば、ノード１０２−５からノード１０２−７に制御信号を転送する場合には、ノード１０２−６を介して転送することとなる（ノード１０２−５→ノード１０２−６→ノード１０２−７の順に転送される）。なお、分配表は、メモリに予め記憶されていてもよく、また、受信部６０３によって制御信号とともに第２のノードから受信して、メモリに記憶することとしてもよい。
【００６６】
決定部６０５は、判断部６０１によって通信不能と判断された場合、第１のノードの代わりにノード群を直接管理するマスタノードを当該ノード群の中から決定する機能を有する。ここでは、ノード群のうちいずれかのノードがマスタノードとして稼働し、ゲートウェイの役割を果たすことにより、第１のノードに替わってノード群を管理する。
【００６７】
具体的には、決定部６０５は、メモリから判断部６０１による判断結果を読み出して、その判断結果が通信不能であった場合に、ノード群の中からマスタノードを決定する。決定部６０５によるマスタノードの決定手法は、第１のノードによって直接管理されているノード群においてマスタノードが一意的に決定される手法であればよい。
【００６８】
たとえば、決定部６０５は、判断部６０１によって通信不能と判断された時刻に基づいてマスタノードを決定することとしてもよい。具体的には、自ノードと第１のノードとの通信が不能となった時刻と、他ノードと第１のノードとの通信が不能となった時刻と、を比較して、その比較結果に基づいてマスタノードを決定する。
【００６９】
第１のノードと通信不能となった時刻を特定するタイムスタンプは、たとえば、後述する探索要求（グループ化を促すメッセージデータ）に付加される。決定部６０５は、そのタイムスタンプを用いて、各ノードと第１のノードとの通信が不能となった時刻を判断し、その時刻が最も早いノードを特定して、そのノードをマスタノードに決定する。なお、各ノード１０２における時刻は同期が取られていることとする。
【００７０】
また、決定部６０５は、第１のノードとの通信が不能となった各ノードを識別する識別情報に基づいてマスタノードを決定することとしてもよい。たとえば、各ノードを識別する識別情報として各ノードに付与されるノードＩＤのＩＤ番号が、最も小さい（または、大きい）ノードをマスタノードに決定する。
【００７１】
また、送信部６０２は、決定部６０５によってマスタノードに決定された場合、第１のノードによって直接管理されている各ノードが設置された管轄エリアの交通を管理する制御信号の送信要求を、第１のノードを管理する第２のノードに送信することとしてもよい。
【００７２】
検出部６０６は、判断部６０１によって通信不能と判断された場合、ノード群のうち第１のノードとの通信が不能となったノードを検出する機能を有する。具体的には、検出部６０６は、メモリから判断部６０１による判断結果を読み出して、その判断結果が通信不能であった場合に、ノード群のうち第１のノードとの通信が不能となったノードを検出する。
【００７３】
ここで、検出部６０６による検出手法の一例について説明する。まず、送信部６０２により、判断部６０１によって通信不能と判断された場合、ノード群のうち自ノードと直接接続されたノード（以下、「隣接ノード」という）に、第１のノードとの通信が不能となったノードの探索要求を送信する。
【００７４】
具体的には、たとえば、送信部６０２は、第１のノードとの通信が不能となったノードの探索要求とともに、グループ化を促すメッセージデータを隣接ノードに送信する。すなわち、第１のノードとの通信が不能となったことにより、交通管制システム１００内で孤立しているノードに対して、グループ化を促すメッセージデータを送信する。
【００７５】
探索要求（メッセージデータ）には、第１のノードとの通信が不能となったノードを識別するノードＩＤを記述するノード情報（たとえば、図５に示したノードリスト５００）が含まれている。送信部６０２は、自ノードを識別するノードＩＤが記述されたノード情報を、第１のノードとの通信が不能となったノードの探索要求として隣接ノードに送信する。
【００７６】
つぎに、受信部６０３により、送信部６０２によって探索要求が送信された結果、第１のノードとの通信が不能となったノードを特定するノード情報を含む探索応答を隣接ノードから受信する。このノード情報には、第１のノードとの通信が不能となったノードを識別するノードＩＤが記述されている。なお、受信部６０３によって受信された探索応答はメモリに記憶される。
【００７７】
そして、検出部６０６により、メモリから受信部６０３によって受信された探索応答を読み出して、その探索応答に含まれるノード情報によって特定されるノードを、第１のノードとの通信が不能となったノードとして検出する。
【００７８】
つぎに、上述した第１のノードとの通信が不能となったノードの探索要求を自ノードが受信する場合について説明する。まず、受信部６０３は、第１のノードによって直接管理されているノード群のうち、自ノードと直接接続されたノード（以下、「隣接ノード」という）から、第１のノードとの通信が不能となったノードの探索要求を受信する機能を有する。受信部６０３によって受信された探索要求はメモリに記憶される。
【００７９】
送信部６０２は、受信部６０３によって探索要求を受信した場合、判断部６０１によって判断された判断結果に基づいて、第１のノードとの通信が不能となったノードを特定するノード情報を含む探索応答を隣接ノードに送信する機能を有する。具体的には、送信部６０２は、メモリから受信部６０３によって受信された探索要求、および判断部６０１によって判断された判断結果を読み出して、その判断結果に基づいて、ノード情報を含む探索応答を隣接ノードに送信する。
【００８０】
より具体的には、送信部６０２は、判断部６０１によって第１のノードとの通信が不能と判断された場合、自ノードを識別するノードＩＤが付加されたノード情報を含む探索応答を隣接ノードに送信する。また、判断部６０１によって第１のノードとの通信が不能と判断されなかった場合、探索応答を隣接ノードに送信しなくてもよく、また、自ノードを識別するノードＩＤが付加されていないノード情報を含む探索応答を隣接ノードに送信することとしてもよい。
【００８１】
また、受信部６０３は、送信部６０２によって探索応答が送信された結果、自ノードが設置された管轄エリアの交通を管理する制御信号を隣接ノードから受信する機能を有する。具体的には、受信部６０３は、第１のノードとの通信が不能となった場合に、自ノードが設置された管轄エリアの交通を管理する制御信号を隣接ノードから受信する。
【００８２】
判定部６０７は、受信部６０３によって探索要求を受信した場合、隣接ノードとは異なる他の隣接ノードの存否を判定する機能を有する。具体的には、たとえば、判定部６０７は、図３に示したメモリテーブル３００を参照することにより、自ノードと直接接続され、探索要求の送信元の隣接ノードとは異なる他の隣接ノードが存在するか否かを判定する。
【００８３】
より具体的には、たとえば、自ノードに備えられているインタフェースを認識し、探索要求の送信元の隣接ノードが接続されているインタフェースとは異なるインタフェースと接続された他の隣接ノードが存在するか否かを判定する。判定部６０７によって判定された判定結果はメモリに記憶される。
【００８４】
また、送信部６０２は、判定部６０７によって他の隣接ノードが存在すると判定された場合、他の隣接ノードに探索要求を送信する機能を有する。具体的には、送信部６０２は、メモリから判定部６０７によって判定された判定結果を読み出して、他の隣接ノードが存在する判定結果であった場合、メモリテーブル３００によって特定される他の隣接ノードに探索要求を送信する。
【００８５】
また、受信部６０３は、送信部６０２によって探索要求が送信された結果、他の隣接ノードからノード情報を含む探索応答を受信する機能を有する。また、送信部６０２は、判断部６０１によって判断された判断結果に基づいて、受信部６０３によって受信されたノード情報を含む探索応答を隣接ノードに送信する機能を有する。
【００８６】
具体的には、たとえば、送信部６０２は、第１のノードとの通信が不能と判断された場合には、他の隣接ノードから送信されてきたノード情報に自ノードを識別するノードＩＤを付加して、そのノード情報を含む探索応答を隣接ノードに送信する。一方、第１のノードとの通信が不能と判断されなかった場合には、他の隣接ノードから送信されてきたノード情報を含む探索応答を隣接ノードに送信することとしてもよい。
【００８７】
また、送信部６０２は、判定部６０７によって存在しないと判定された場合、判断部６０１によって判断された判断結果に基づいて、ノード情報を含む探索応答を隣接ノードに送信することとしてもよい。
【００８８】
（グループ形成の具体例）
つぎに、第１のノードとの通信が不能となった場合に、第１のノードによって直接管理されているノード群によって暫定的なグループを形成する具体例について説明する。このグループは、マスタノードを起点として、第１のノードとの通信が不能となったノードの探索要求を隣接するノードに伝播させていくことにより形成される。
【００８９】
図７は、グループ形成の一例を示す説明図（その１）である。図７において、何らかの原因によって上位ノードとの通信が途絶したため、交通管制システム１００（図１参照）内でノード１０２−ａ〜ノード１０２−ｉが孤立した状態となっている。ここで、ノード１０２−ａ〜ノード１０２−ｉのうち、ノード１０２−ａはマスタノードとして稼働しており、グループ７００の管理をおこなっている。
【００９０】
以下、グループ７００を形成する場合の各ノード１０２−ａ〜ノード１０２−ｉにおいて実行される処理の概要について説明する。グループ７００を形成するために、まず、マスタノードであるノード１０２−ａは、自ノードに直接接続されている隣接ノードにグループ化を促すメッセージデータを送信する。
【００９１】
このメッセージデータは、図６に示した送信部６０２によって送信される第１のノードとの通信が不能となったノードの探索要求に相当する。ここでは、ノード１０２−ａの送信部６０２により、隣接ノードであるノード１０２−ｂおよびノード１０２−ｆにグループ化を促すメッセージデータが送信される。
【００９２】
ノード１０２−ｂは、メッセージデータを受信すると、ノード１０２−ａとは異なる他の隣接ノードであるノード１０２−ｃの存在を判定し、メッセージデータをノード１０２−ｃに送信する。このとき、ノード１０２−ｂは、メッセージデータに自ノードを識別するノードＩＤを付加して、そのメッセージデータをノード１０２−ｃに送信する。
【００９３】
また、ノード１０２−ｂは、メッセージデータの送受信にともなって、メモリテーブル３００の記憶内容を更新する。具体的には、ノード１０２−ａからメッセージデータを受信すると、ノード１０２−ａが接続されているインタフェースの欄の記憶内容を更新する。
【００９４】
ここでは、外部からの入力のため、伝送方向を「ｉｎ」とし、登録状態を「仮」とする。また、メッセージデータをノード１０２−ｃに送信すると、ノード１０２−ｃが接続されているインタフェースの欄の記憶内容を更新する。ここでは、装置からの信号出力のため、伝送方向を「ｏｕｔ」とし、登録状態を「仮」とする。
【００９５】
同様に、ノード１０２−ｃ、ノード１０２−ｄ、ノード１０２−ｅにおいても、メッセージデータの送受信、およびそれにともなうメモリテーブル３００の更新がおこなわれる。なお、ノード１０２−ｅは、ノード１０２−ｄとは異なる他の隣接ノードが存在しないため、自ノードを識別するノードＩＤが付加されたメッセージデータをノード１０２−ｄに送信することとなる。
【００９６】
ここで、ノード１０２−ｅが保持するメモリテーブル３００の記憶内容について説明する。図８は、メモリテーブルの記憶内容を示す説明図（その３）である。図８において、ノード１０２−ｅからノード１０２−ｄにメッセージデータが送信された結果、ノード１０２−ｅが保持するメモリテーブル８００が示されている。
【００９７】
具体的には、メッセージデータをノード１０２−ｄに送信すると、ノード１０２−ｄが接続されているインタフェースの欄の伝送方向を「ｏｕｔ」とし、登録状態を「完了」とする。登録状態が「完了」となると、グループに本登録されたこととなる。また、ノード１０２−ｄとは異なる他の隣接ノードが存在しないため、もう一方のインタフェースの欄の伝送方向を「ｎｏｎｅ」とし、終端を「ｙｅｓ」とし、隣接ノードを「ｎｏｎｅ」とし、登録状態を「完了」とする。
【００９８】
図７の説明に戻り、ノード１０２−ｄは、ノード１０２−ｅからメッセージデータを受信すると、メモリテーブル８００の記憶内容を更新（登録状態を「完了」とする）し、そのメッセージデータをノード１０２−ｃに送信する。ノード１０２−ｃおよびノード１０２−ｂにおいても同様の処理を繰り返し、その結果、ノード１０２−ａから送信されたメッセージデータが再びノード１０２−ａに戻ってくることとなる。
【００９９】
これにより、ノード１０２−ａ〜ノード１０２−ｅから構成されるサブグループ７１０が形成される。また、ノード１０２−ａからノード１０２−ｆにメッセージデータを送信することにより、ノード１０２−ａおよびノード１０２−ｆ〜ノード１０２−ｉから構成されるサブグループ７２０が形成される。
【０１００】
この結果、ノード１０２−ａをマスタノードとする、サブグループ７１０およびサブグループ７２０からなるグループ７００が形成される。マスタノードであるノード１０２−ａは、通信不能となった上位ノードの機能を代替して、各ノード１０２−ａ〜ノード１０２−ｉが設置された管轄エリアの交通を管理する制御信号を受信して、各ノード１０２−ａ〜ノード１０２−ｉに配信する。
【０１０１】
このように、上位ノードとの通信が不能となると、その上位ノードによって直接管理されているノード群（ノード１０２−ａ〜ノード１０２−ｉ）によって暫定的なグループ７００を形成し、ノード１０２−ａが上位ノードの機能を代替することにより、自律的な交通管制をおこなうことができる。
【０１０２】
なお、上述した例では、グループ７００に対してマスタノードが１台存在することとしたが、必要に応じて２台以上のマスタノードを同一グループ内に存在させることも可能とする。なぜなら、障害発生時には、たとえば、図１に示す情報処理装置１０１とノード１０２−１〜１０２−９とを接続する通信経路の信頼性が不安定となっている可能性が高いため、通信状況に応じて複数の代替経路を確保することが望ましいからである。
【０１０３】
図９は、グループ形成の一例を示す説明図（その２）である。図９において、ノード１０２−ａ〜ノード１０２−ｉのうち、ノード１０２−ａおよびノード１０２−ｊはマスタノードとして稼働しており、グループ９００の管理をおこなっている。グループ９００は、サブグループ９１０，９２０，９３０および９４０から構成されている。
【０１０４】
具体的には、ノード１０２−ａは、サブグループ９１０およびサブグループ９２０からなるグループ９００を管理している。また、ノード１０２−ｊは、サブグループ９３０およびサブグループ９４０からなるグループ９００を管理している。このような場合、各ノード１０２−ａ〜ノード１０２−ｉが設置された管轄エリアの交通を管理する制御信号は、２台のマスタノード（ノード１０２−ａおよびノード１０２−ｊ）を経由して、各ノード１０２−ａ〜ノード１０２−ｉに複数回配信されることとなる。
【０１０５】
通常、各ノード１０２−ａ〜ノード１０２−ｉが複数経路から制御信号を重複して受信することはないが、障害発生時には、同一内容の制御信号を複数回受信することとなる。このような状況では、各ノード１０２−ａ〜ノード１０２−ｉは、既に受信した内容と同一内容の制御信号を受信した場合、その制御信号を無視することで、平常時と同様の動作をおこなうことができる。
【０１０６】
なお、複数のマスタノードが存在している状況下において、上位ノードとの通信が不能となったノードの探索要求を伝播させてサブグループを形成する場合、以下のような処理を実行することとしてもよい。たとえば、第１のマスタノードから送信された探索要求を、第２のマスタノードが受信すると、第２のマスタノードがサブグループの終端であると判断し、探索応答を隣接ノードに送信することとなる。
【０１０７】
具体的には、たとえば、サブグループ９３０を形成する場合、マスタノードであるノード１０２−ａは、もう一つのマスタノードであるノード１０２−ｊからの探索要求を隣接するノード１０２−ｂから受信すると、自ノードを終端と判断し、自ノードを識別するノードＩＤを付加した探索応答をノード１０２−ｂに送信する。
【０１０８】
（交通管制システム１００の障害復旧処理の概要）
つぎに、この発明の実施の形態にかかる交通管制システム１００の障害復旧処理の概要について説明する。図１０は、この発明の実施の形態にかかる交通管制システム１００の障害復旧処理の概要を示す説明図である。図１０において、交通管制センター（図１に示す情報処理装置１０１）からの制御信号が複数のノード１０２−１〜１０２−９を介して、信号灯器１０３−１〜１０３−５に配信されている。
【０１０９】
ここでは、ノード１０２−３（階層Ｂ）が故障したことにより、ノード１０２−５，１０２−６，１０２−７（階層Ｃ）によって管理されている管轄エリア（２）が交通管制システム１００から孤立してしまい、交差点３，４，５に設置されている信号灯器１０３−１，１０３−２，１０３−３が制御不能となっている。このため、ノード１０２−５〜１０２−７によって暫定的なグループを形成し、ノード１０２−５をマスタノードとした障害復旧処理を実行する。
【０１１０】
まず、ノード１０２−３との通信が不能となったノード１０２−５，１０２−６，１０２−７の中からマスタノードを決定する。ここでは、ノード１０２−５がマスタノードに決定されている。そして、ノード１０２−５からのグループ化を促すメッセージデータを各ノード１０２−５，１０２−６，１０２−７に伝播させることにより、ノード１０２−５，１０２−６，１０２−７からなるグループ１０００を形成する。
【０１１１】
つぎに、マスタノードであるノード１０２−５は、非常用回線を使用して、ノード１０２−３を直接管理しているノード１０２−１（階層Ａ）に、管轄エリア（２）の交通を管理する制御信号の送信要求を送信する。その結果、ノード１０２−５は、管轄エリア（２）の交通を管理する制御信号をノード１０２−１から受信する。
【０１１２】
そして、ノード１０２−５は、制御信号に関する配信表を参照することにより、ノード１０２−６，１０２−７が設置された管轄エリア（２）の信号灯器１０３−２，１０３−３を管理する制御信号をノード１０２−６，１０２−７に配信する。
【０１１３】
この結果、各ノード１０２−５，１０２−６，１０２−７は、それぞれに管理下にある信号灯器１０３−１，１０３−２，１０３−３を制御するための制御信号を受信することができる。
【０１１４】
このように、自ノード（ノード１０２−５）を直接管理するノード１０２−３との通信が不能となった場合であっても、ノード１０２−５，１０２−６，１０２−７によって暫定的なグループを形成し、マスタノードであるノード１０２−５がゲートウェイとなってノード１０２−３の機能を代替することにより、管轄エリア（２）の交通を適切に管理することができる。
【０１１５】
（交通管制処理手順）
つぎに、この発明の実施の形態にかかる各ノード１０２−１〜１０２−９において実行される交通管制処理手順について説明する。まず、第１のノードによって直接管理されているノード群によって暫定的なグループを形成するグループ形成処理手順について説明する。図１１は、図１０に示したノード１０２−５〜１０２−７において実行されるグループ形成処理手順を示すシーケンス図である。
【０１１６】
図１１に示す例は、図１０に示したノード１０２−５〜１０２−７がノード１０２−３との通信不能により、ノード１０２−５〜１０２−７からなるグループを形成する動作シーケンスである。図１１において、まず、ノード１０２−５の送信部６０２により、ノード１０２−３との通信が不能となったノードの探索要求をノード１０２−６に送信する（１）。この探索要求には、ノード１０２−５を識別するノードＩＤが付加されている。
【０１１７】
このあと、ノード１０２−６の判定部６０７により、探索要求の中継先となる隣接ノードがあるか否かを判定する（２）。ここでは中継先が存在するため、ノード１０２−６の送信部６０２により、探索要求をノード１０２−７に送信し（３）、メモリテーブル３００の記憶内容を更新する（４）。この探索要求には、ノード１０２−５およびノード１０２−６を識別するノードＩＤが付加されている。
【０１１８】
つぎに、ノード１０２−７の判定部６０７により、探索要求の中継先となる隣接ノードがあるか否かを判定する（５）。ここでは中継先が存在しないため、ノード１０２−７の送信部６０２により、探索応答をノード１０２−６に送信し（６）、メモリテーブル３００の記憶内容を更新する（７）。この探索応答には、ノード１０２−５，ノード１０２−６およびノード１０２−７を識別するノードＩＤが付加されている。
【０１１９】
このあと、ノード１０２−６の送信部６０２により、探索応答をノード１０２−５に送信し（８）、メモリテーブル３００の記憶内容を更新する（９）。これにより、ノード１０２−５〜１０２−７からなるグループが形成され、最後に、ノード１０２−５の送信部６０２により、各ノード１０２−５〜１０２−７が設置された管轄エリアの交通を管理する制御信号の送信要求をノード１０２−１に送信する（１０）。なお、各ノード１０２−５〜１０２−７の受信部６０３による処理の説明は省略している。
【０１２０】
つぎに、マスタノードに決定された各ノード１０２−１〜１０２−９において実行される交通管制処理手順について説明する。図１２は、マスタノードにおいて実行される交通管制処理手順を示すフローチャートである。図１２のフローチャートにおいて、まず、判断部６０１により、自ノードを直接管理する第１のノードとの通信が不能となったか否かを判断する（ステップＳ１２０１）。
【０１２１】
ここで、第１のノードとの通信が不能と判断されるのを待って（ステップＳ１２０１：Ｎｏ）、通信不能と判断された場合（ステップＳ１２０１：Ｙｅｓ）、検出部６０６により、第１のノードによって直接管理されているノード群のうち第１のノードとの通信が不能となったノードの検出処理を実行する（ステップＳ１２０２）。
【０１２２】
このあと、送信部６０２により、検出部６０６によって検出されたノードが設置された管轄エリアの交通を管理する制御信号の送信要求を、第１のノードを管理する第２のノードに送信する（ステップＳ１２０３）。つぎに、受信部６０３により、送信部６０２によって送信要求が送信された結果、第２のノードから制御信号を受信する（ステップＳ１２０４）。
【０１２３】
最後に、転送部６０４により、制御信号の配信表に基づいて、受信部６０３によって受信された制御信号を、ノード群を構成するノードのうち自ノードとは異なる他ノード（隣接ノード）に転送して（ステップＳ１２０５）、本フローチャートによる一連の処理を終了する。
【０１２４】
ここで、図１２に示したステップＳ１２０２における検出処理手順について説明する。図１３は、ステップＳ１２０２における検出処理手順を示すフローチャートである。図１３のフローチャートにおいて、まず、送信部６０２により、第１のノードによって直接管理されているノード群のうち自ノードと直接接続されたノード（以下、「隣接ノード」という）に、第１のノードとの通信が不能となったノードの探索要求を送信する（ステップＳ１３０１）。
【０１２５】
このあと、受信部６０３により、送信部６０２によって探索要求が送信された結果、第１のノードとの通信が不能となったノードを特定するノード情報を含む探索応答を隣接ノードから受信する（ステップＳ１３０２）。つぎに、検出部６０６により、受信部６０３によって受信された探索応答に含まれるノード情報によって特定されるノードを検出し（ステップＳ１３０３）、図１２に示すステップＳ１２０３に移行する。
【０１２６】
このように、この発明の実施の形態にかかるノード１０２によれば、自ノードを直接管理する第１のノードとの通信が不能となると、第１のノードによって直接管理されているノード群によって暫定的なグループを形成し、そのグループ内のいずれかのノードがゲートウェイとなって第１のノードの機能を代替することにより、各管轄エリアの交通管制を適切に維持することができる。
【０１２７】
また、第１のノードとの通信が不能となったノード群の中から当該ノード群を管理するマスタノードを一意的に決定するため、ノード群を管理するノードが無秩序に存在してしまうことを防ぐことができ、円滑かつ効率的な交通管制をおこなうことができる。
【０１２８】
さらに、［背景技術］で示した従来技術のような、障害発生時に、まず、迂回用回線ＤＢにアクセスして迂回経路を決定し、このあと、決定された迂回経路を使用して各ノードにアクセスする処理が不要となる。これにより、障害復旧に際して使用される通信資源の削減を実現することができる。
【０１２９】
また、障害発生時に、暫定的にグループを形成するため、障害復旧にかかる負荷を一極集中させることができ、障害対応時における動作管理が容易となる。
【０１３０】
なお、障害復旧が完了すると、通常の通信経路による制御信号（第１のノードからの制御信号）の配信が再開される。この場合、グループを構成する各ノードは、第１のノードからの制御信号と、マスタノードからの制御信号とを受信する状況に遭遇することとなる。このとき、各ノードは、第１のノードから送信されてくる制御信号を優先的に採用し、かつ、これを契機としてグループからの離脱を示す信号を隣接ノードに送信してグループから離脱することとしてもよい。
【０１３１】
以上説明したように、交通管制プログラム、該プログラムを記録した記録媒体、ノード、および交通管制方法によれば障害発生時に、迅速な障害復旧をおこなうことにより、適切な交通管制システムを提供することができる。
【０１３２】
なお、本実施の形態で説明した交通管制方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーションなどのコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネットなどのネットワークを介して配布することが可能な伝送媒体であってもよい。
【０１３３】
また、本実施の形態で説明したノード１０２は、スタンダードセルやストラクチャードＡＳＩＣ(Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ)などの特定用途向けＩＣ（以下、単に「ＡＳＩＣ」と称す。）やＦＰＧＡなどのＰＬＤ(Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ)によっても実現することができる。具体的には、たとえば、上述したノード１０２の機能的構成（６０１〜６０７）をＨＤＬ記述によって機能定義し、そのＨＤＬ記述を論理合成してＡＳＩＣやＰＬＤに与えることにより、ノード１０２を製造することができる。
【０１３４】
（付記１）複数の管轄エリアからなる広域エリアの交通を管理する交通管制システムを構成する階層構造化されたノードに、当該ノードが対応付けられている管轄エリアの交通を管理させる交通管制プログラムであって、
自ノードを直接管理する第１のノードとの通信が不能となったか否かを判断させる判断工程と、
前記判断工程によって通信不能と判断された場合、前記第１のノードによって直接管理されている各ノードと対応付けられている管轄エリアの交通を管理する制御信号の送信要求を、前記第１のノードを管理する第２のノードに送信させる送信工程と、
前記送信工程によって前記送信要求が送信された結果、前記第２のノードから前記制御信号を受信させる受信工程と、
前記受信工程によって受信された制御信号を、前記第１のノードによって直接管理されているノード群を構成するノードのうち前記自ノードとは異なる他ノードに転送させる転送工程と、
をコンピュータに実行させることを特徴とする交通管制プログラム。
【０１３５】
（付記２）前記判断工程によって通信不能と判断された場合、前記第１のノードの代わりに前記ノード群を直接管理するマスタノードを当該ノード群の中から決定させる決定工程を前記コンピュータに実行させ、
前記送信工程は、
前記決定工程によって前記自ノードがマスタノードに決定された場合、前記送信要求を前記第１のノードを管理する第２のノードに送信させることを特徴とする付記１に記載の交通管制プログラム。
【０１３６】
（付記３）前記決定工程は、
前記判断工程によって通信不能と判断された時刻に基づいて、前記ノード群の中から前記マスタノードを決定させることを特徴とする付記２に記載の交通管制プログラム。
【０１３７】
（付記４）前記決定工程は、
前記第１のノードによって直接管理されている各ノードに付与されるノードＩＤに基づいて、前記ノード群の中から前記マスタノードを決定させることを特徴とする付記２に記載の交通管制プログラム。
【０１３８】
（付記５）前記判断工程によって通信不能と判断された場合、前記ノード群のうち前記第１のノードとの通信が不能となったノードを検出させる検出工程を前記コンピュータに実行させ、
前記送信工程は、
前記検出工程によって検出されたノードと対応付けられている管轄エリアの交通を管理する制御信号の送信要求を、前記第１のノードを管理する第２のノードに送信させることを特徴とする付記１〜４のいずれか一つに記載の交通管制プログラム。
【０１３９】
（付記６）前記判断工程によって通信不能と判断された場合、前記ノード群のうち前記自ノードと直接接続されたノード（以下、「隣接ノード」という）に、前記第１のノードとの通信が不能となったノードの探索要求を送信させる探索要求送信工程と、
前記探索要求送信工程によって前記探索要求が送信された結果、前記第１のノードとの通信が不能となったノードを特定するノード情報を含む探索応答を前記隣接ノードから受信させる探索応答受信工程と、を前記コンピュータに実行させ、
前記検出工程は、
前記探索応答受信工程によって受信された探索応答に含まれるノード情報によって特定されるノードを検出させることを特徴とする付記５に記載の交通管制プログラム。
【０１４０】
（付記７）複数の管轄エリアからなる広域エリアの交通を管理する交通管制システムを構成する階層構造化されたノードに、当該ノードが対応付けられた管轄エリアの交通を管理させる交通管制プログラムであって、
自ノードを直接管理する第１のノードとの通信が不能となったか否かを判断させる判断工程と、
前記第１のノードによって直接管理されているノード群のうち、前記自ノードと直接接続されたノード（以下、「隣接ノード」という）から、前記第１のノードとの通信が不能となったノードの探索要求を受信させる第１の受信工程と、
前記第１の受信工程によって前記探索要求を受信した場合、前記判断工程によって判断された判断結果に基づいて、前記第１のノードとの通信が不能となったノードを特定するノード情報を含む探索応答を前記隣接ノードに送信させる送信工程と、
前記送信工程によって前記探索応答が送信された結果、前記自ノードが対応付けられた管轄エリアの交通を管理する制御信号を前記隣接ノードから受信させる第２の受信工程と、
をコンピュータに実行させることを特徴とする交通管制プログラム。
【０１４１】
（付記８）前記第１の受信工程によって前記探索要求を受信した場合、前記隣接ノードとは異なる他の隣接ノードの存否を判定させる判定工程と、
前記判定工程によって存在すると判定された場合、前記他の隣接ノードに前記探索要求を送信させる探索要求送信工程と、
前記探索要求送信工程によって前記探索要求が送信された結果、前記他の隣接ノードから前記ノード情報を含む探索応答を受信させる探索応答受信工程と、を前記コンピュータに実行させ、
前記送信工程は、
前記判断工程によって判断された判断結果に基づいて、前記探索応答受信工程によって受信されたノード情報を含む探索応答を前記隣接ノードに送信させることを特徴とする付記７に記載の交通管制プログラム。
【０１４２】
（付記９）前記送信工程は、
前記判定工程によって存在しないと判定された場合、前記判断工程によって判断された判断結果に基づいて、前記ノード情報を含む探索応答を前記隣接ノードに送信させることを特徴とする付記８に記載の交通管制プログラム。
【０１４３】
（付記１０）付記１〜９のいずれか一つに記載の交通管制プログラムを記録した前記コンピュータに読み取り可能な記録媒体。
【０１４４】
（付記１１）複数の管轄エリアからなる広域エリアの交通を管理する交通管制システムを構成し、階層構造化され、自ノードと対応付けられている管轄エリアの交通を管理するノードであって、
前記自ノードを直接管理する第１のノードとの通信が不能となったか否かを判断する判断手段と、
前記判断手段によって通信不能と判断された場合、前記第１のノードによって直接管理されている各ノードと対応付けられている管轄エリアの交通を管理する制御信号の送信要求を、前記第１のノードを管理する第２のノードに送信する送信手段と、
前記送信手段によって前記送信要求が送信された結果、前記第２のノードから前記制御信号を受信する受信手段と、
前記受信手段によって受信された制御信号を、前記第１のノードによって直接管理されているノード群のうち前記自ノードとは異なる他ノードに転送する転送手段と、
を備えることを特徴とするノード。
【０１４５】
（付記１２）複数の管轄エリアからなる広域エリアの交通を管理する交通管制システムを構成し、階層構造化され、自ノードと対応付けられている管轄エリアの交通を管理するノードであって、
前記自ノードを直接管理する第１のノードとの通信が不能となったか否かを判断する判断手段と、
前記第１のノードによって直接管理されているノード群のうち、前記自ノードと直接接続されたノード（以下、「隣接ノード」という）から、前記第１のノードとの通信が不能となったノードの探索要求を受信する受信手段と、
前記受信手段によって前記探索要求を受信した場合、前記判断手段によって判断された判断結果に基づいて、前記第１のノードとの通信が不能となったノードを特定するノード情報を含む探索応答を前記隣接ノードに送信する送信手段と、を備え、
前記受信手段は、
前記送信手段によって前記探索応答が送信された結果、前記自ノードと対応付けられている管轄エリアの交通を管理する制御信号を前記隣接ノードから受信することを特徴とするノード。
【０１４６】
（付記１３）複数の管轄エリアからなる広域エリアの交通を管理する交通管制システムを構成する階層構造化されたノードに、当該ノードと対応付けられている管轄エリアの交通を管理させる交通管制方法であって、
自ノードを直接管理する第１のノードとの通信が不能となったか否かを判断する判断工程と、
前記判断工程によって通信不能と判断された場合、前記第１のノードによって直接管理されている各ノードと対応付けられている管轄エリアの交通を管理する制御信号の送信要求を、前記第１のノードを管理する第２のノードに送信する送信工程と、
前記送信工程によって前記送信要求が送信された結果、前記第２のノードから前記制御信号を受信する受信工程と、
前記受信工程によって受信された制御信号を、前記第１のノードによって直接管理されているノード群のうち前記自ノードとは異なる他ノードに転送する転送工程と、
を含んだことを特徴とする交通管制方法。
【０１４７】
（付記１４）複数の管轄エリアからなる広域エリアの交通を管理する交通管制システムを構成する階層構造化されたノードに、当該ノードと対応付けられている管轄エリアの交通を管理させる交通管制方法であって、
自ノードを直接管理する第１のノードとの通信が不能となったか否かを判断する判断工程と、
前記第１のノードによって直接管理されているノード群のうち、前記自ノードと直接接続されたノード（以下、「隣接ノード」という）から、前記第１のノードとの通信が不能となったノードの探索要求を受信する第１の受信工程と、
前記第１の受信工程によって前記探索要求を受信した場合、前記判断工程によって判断された判断結果に基づいて、前記第１のノードとの通信が不能となったノードを特定するノード情報を含む探索応答を前記隣接ノードに送信する送信工程と、
前記送信工程によって前記探索応答が送信された結果、前記自ノードと対応付けられている管轄エリアの交通を管理する制御信号を前記隣接ノードから受信する第２の受信工程と、
を含んだことを特徴とする交通管制方法。
【産業上の利用可能性】
【０１４８】
以上のように、本発明にかかる交通管制プログラム、該プログラムを記録した記録媒体、ノード、および交通管制方法は、公共性の高い交通管制システムに有用であり、特に、災害時など広域にわたって信号灯器が制御不能となった状況からの障害復旧に適している。
【図面の簡単な説明】
【０１４９】
【図１】この発明の実施の形態にかかる交通管制システム１００のシステム構成図である。
【図２】この発明の実施の形態にかかる情報処理装置１０１などのハードウェア構成を示す説明図である。
【図３】メモリテーブルの記憶内容を示す説明図（その１）である。
【図４】メモリテーブルの記憶内容を示す説明図（その２）である。
【図５】ノードリストの一例を示す説明図である。
【図６】この発明の実施の形態にかかるノード１０２の機能的構成を示すブロック図である。
【図７】グループ形成の一例を示す説明図（その１）である。
【図８】メモリテーブルの記憶内容を示す説明図（その３）である。
【図９】グループ形成の一例を示す説明図（その２）である。
【図１０】この発明の実施の形態にかかる交通管制システム１００の障害復旧処理の概要を示す説明図である。
【図１１】図１０に示したノード１０２−５〜１０２−７において実行されるグループ形成処理手順を示すシーケンス図である。
【図１２】マスタノードにおいて実行される交通管制処理手順を示すフローチャートである。
【図１３】ステップＳ１２０２における検出処理手順を示すフローチャートである。
【符号の説明】
【０１５０】
１００  交通管制システム
１０１  情報処理装置
１０２−１〜１０２−９  ノード
１０３−１〜１０３−５  信号灯器
３００，４００，８００  メモリテーブル
５００  ノードリスト
６０１  判断部
６０２  送信部
６０３  受信部
６０４  転送部
６０５  決定部
６０６  検出部
６０７  判定部
【図１】
2008234006.tif 000003
【図２】
2008234006.tif 000004
【図３】
2008234006.tif 000005
【図４】
2008234006.tif 000006
【図５】
2008234006.tif 000007
【図６】
2008234006.tif 000008
【図７】
2008234006.tif 000009
【図８】
2008234006.tif 000010
【図９】
2008234006.tif 000011
【図１０】
2008234006.tif 000012
【図１１】
2008234006.tif 000013
【図１２】
2008234006.tif 000014
【図１３】
2008234006.tif 000015