(57)【特許請求の範囲】
【請求項１】
列車の進路制御のために地上設備に対する制御命令を発行する進路制御プログラムを、進路制御プログラム生成装置によって生成する方法であって、
進路制御プログラム生成装置の線路配線入力部が、複数の閉そく区間から構成される線路の線路配線情報を受け付けるステップと、
進路制御プログラム生成装置の幾何パターン抽出部が、前記複数の閉そく区間各々について、前記線路配線を構成する他の一の閉そく区間とで構成される二つの閉そく区間の組み合わせ各々について、当該二つの閉そく区間の間の幾何的関係を、あらかじめ定められた複数の幾何パターン種別の一を用いて定義するステップと、
進路制御プログラム生成装置の制御ロジック選択部が、前記二つの閉そく区間の組み合わせ各々について、当該二つの閉そく区間の一つへの列車の進入可否の判断に用いられるロジックを、当該二つの閉そく区間の組み合わせに対して定義された幾何パターン種別に基づいて選択するステップと、
進路制御プログラム生成装置のプログラムモジュール結合部が、前記制御ロジック選択部によって選択された複数のロジックによって特定される複数のプログラムモジュールを結合して、前記進路制御プログラムを生成するステップとを有することを特徴とする、進路制御プログラム生成方法。
【請求項２】
請求項１記載の進路制御プログラム生成方法であって、
二つの閉そく区間の幾何的関係は、当該二つの閉そく区間について、一方の閉そく区間の端点と他方の閉そく区間の端点の重複についての基準、一方の閉そく区間に包含される他方の閉そく区間の端点についての基準、および各閉そく区間への列車の進入方向についての基準に基づいて分類され、
前記幾何パターン抽出部は、複数の前記基準に従って、前記二つの閉そく区間の組み合わせ各々について、当該二つの閉そく区間の間の幾何的関係を表す幾何パターン種別を選択することを特徴とする進路制御プログラム生成方法。
【請求項３】
請求項２記載の進路制御プログラム生成方法であって、
前記進路制御プログラム生成装置は複数の制御ロジックを備えており、
前記複数の制御ロジックは各々、進路決定ロジックタイプ、順序判断ロジックタイプ、衝突・脱線防止ロジックタイプの三種類の種別のいずれかに分類されており、
前記複数の幾何パターン種別には各々、当該幾何パターン種別が満たす前記基準に従って、必要な制御ロジックの種別が定義されており、
前記制御ロジック選択部は、前記二つの閉そく区間の組み合わせ各々について、当該二つの閉そく区間の組み合わせに対して選択された幾何パターン種別について必要だと定義されている制御ロジック種別に属する制御ロジックを、前記複数の制御ロジックの中から選択することを特徴とする進路制御プログラム生成方法。
【請求項４】
請求項３記載の進路制御プログラム生成方法であって、
更に、前記二つの閉そく区間の組み合わせ各々について、当該二つの閉そく区間の組み合わせに対して選択された幾何パターン種別を表示するステップを有することを特徴とする進路制御プログラム生成方法。  
【請求項５】
請求項１記載の進路制御プログラム生成方法であって、
前記線路配線入力部は、
線路配線情報として、前記線路の構成要素を一以上の線分として表した線路形状情報と、前記複数の閉そく区間各々について当該閉そく区間の構成要素を前記線路形状情報に含まれる線分の集合で表した閉そく形状情報とを受け付け、
前記線路形状情報に含まれる線分のうち、いずれの閉そく区間の閉そく形状情報にも含まれない線分が存在する場合に、エラーメッセージを出力することを特徴とする進路制御プログラム生成方法。
【請求項６】
地上設備に制御命令を発行して列車の進路制御を実行する列車進路制御装置であって、
線路を構成する複数の閉そく区間各々について、当該閉そく区間と前記線路を構成する一以上の他の閉そく区間各々との間の幾何的関係を登録した閉そく情報と、
各幾何的関係について、当該幾何的関係を構成する二つの閉そく区間の識別情報と、あらかじめ定められた複数の幾何パターン種別のいずれに当該幾何的関係が分類されるかを示した幾何パターン種別と、当該幾何パターン種別に基づいて当該幾何的関係に対して選択された制御ロジックとを登録した幾何情報と、
処理対象の閉そく区間への列車の進入可否を判定する閉そく予約管理部とを有しており、
前記閉そく予約管理部は、
前記処理対象閉そく区間について、当該処理対象の閉そく区間と他の閉そく区間との間の一以上の幾何的関係を前記閉そく情報より特定し、
特定された各幾何的関係について、当該幾何的関係について登録されている制御ロジックを用いて、当該幾何的関係を構成する他の閉そく区間への列車の在線状況もしくは進入予定に基づき、当該処理対象閉そく区間への列車の進入可否を判定することを特徴とする列車進路制御装置。
【請求項７】
請求項６記載の列車進路制御装置であって、
前記幾何的関係は、当該幾何的関係を構成する二つの閉そく区間について、一方の閉そく区間の端点と他方の閉そく区間の端点の重複についての基準、一方の閉そく区間に包含される他方の閉そく区間の端点についての基準、および各閉そく区間への列車の進入方向についての基準に基づいて分類され、
前記幾何情報は、前記分類に基づいて定められる各幾何的関係の幾何パターン種別に基づいて選択された制御ロジックを登録していることを特徴とする列車進路制御装置。
【請求項８】
請求項７記載の列車進路制御装置であって、
制御ロジックは各々、進路決定ロジックタイプ、順序判断ロジックタイプ、衝突・脱線防止ロジックタイプの三種類の種別のいずれかに分類されており、
幾何パターン種別には各々、当該幾何パターン種別が満たす前記基準に従って、必要な制御ロジックの種別が定義されており、
前記幾何情報は、各幾何的関係について、当該幾何的関係の幾何パターン種別にとって必要だと定義されている制御ロジック種別に属する制御ロジックを登録していることを特徴とする列車進路制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
軌道上を移動する物体を制御するための技術に関し、例えば鉄道運行管理システムの進路制御に関する。
【背景技術】
【０００２】
コンピュータ制御の発展に伴い、列車の運行管理は従来の駅員による信号機制御から鉄道運行管理システムによる自動信号機制御へと移り変わってきた。鉄道運行管理システムは、従来の駅員業務を計算機により自動化することで発展してきており、信号機の制御は駅員業務の管理単位である駅ごとに実行されている。鉄道運行管理システムにおいて、信号機の制御は進路制御装置によりコントロールされている。
【０００３】
ここで、鉄道運行管理システムのサブシステムである電子連動システムにおいて、線路配線および連動表から一進路単位で行なえる合理性をチェックし、電子連動システムが使用可能な連動データベースを生成する技術が開示されている（特許文献１）。なお、電子連動システムとは鉄道保安装置の一種であり、互いに連動関係にある信号機および転轍機を連動論理に従って制御するシステムである。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平６−３２１１０７
【発明の概要】
【発明が解決しようとする課題】
【０００５】
進路制御装置は駅の線路配線に応じてプログラムを構築する必要があるが、駅の線路配線は多様であるため、現状では線区や駅ごとに独自のプログラムが開発されている。また、線路配線の改修が行われた際にはプログラムの修正が必要である。ところが近年、線路配線の複雑化や制御の高度化によりプログラムが大規模化してきており、線区や駅ごとに独自プログラムを構築する方式では人材の確保が難しくなってきている。結果として、プログラム品質の低下や開発の長期化、コストの増大を招いている。
【０００６】
そのため、線路配線が異なる線区や駅であっても共通的な方法によって、進路制御装置およびそのプログラムを開発できる手法が求められている。
【課題を解決するための手段】
【０００７】
列車の進路制御のために地上設備に対する制御命令を発行する進路制御プログラムを生成する方法であって、当該方法は、
複数の閉そく区間から構成される線路の線路配線情報を受け付けるステップと、
複数の閉そく区間各々について、線路配線を構成する他の一の閉そく区間とで構成される二つの閉そく区間の組み合わせ各々について、当該二つの閉そく区間の間の幾何的関係を、あらかじめ定められた複数の幾何パターン種別の一を用いて定義するステップと、
二つの閉そく区間の組み合わせ各々について、当該二つの閉そく区間の一つへの列車の進入可否の判断に用いられるロジックを、当該二つの閉そく区間の組み合わせに対して定義された幾何パターン種別に基づいて選択するステップと、
選択された複数のロジックによって特定される複数のプログラムモジュールを結合して進路制御プログラムを生成するステップを有する。
【０００８】
また、地上設備に制御命令を発行して列車の進路制御を実行する列車進路制御装置であって、当該列車進路制御装置は、
線路を構成する複数の閉そく区間各々について、当該閉そく区間と線路を構成する一以上の他の閉そく区間各々との間の幾何的関係を登録した閉そく情報と、
各幾何的関係について、当該幾何的関係を構成する二つの閉そく区間の識別情報と、あらかじめ定められた複数の幾何パターン種別のいずれに当該幾何的関係が分類されるかを示した幾何パターン種別と、幾何パターン種別に基づいて当該幾何的関係に対して選択された制御ロジックを登録した幾何情報と、
処理対象の閉そく区間への列車の進入可否を判定する閉そく予約管理部とを有しており、
閉そく予約管理部は、
処理対象閉そく区間について、当該処理対象の閉そく区間と一以上の他の閉そく区間との間の一以上の幾何的関係を閉そく情報より特定し、
特定された各幾何的関係について、当該幾何的関係について登録されている制御ロジックを用いて、当該幾何的関係を構成する他の閉そく区間への列車の在線状況もしくは進入予定に基づき、当該処理対象閉そく区間への列車の進入可否を判定する。
【発明の効果】
【０００９】
実施態様の一例によれば、線路配線が異なる線区や駅であっても共通的な方法に進路制御装置を開発することができ、線路形状に応じて進路制御プログラムや進路制御装置を簡便に開発することが可能となる。また、実施態様の一例によれば、進路制御プログラム生成に用いられるプログラムモジュールは様々な進路制御装置へと再利用することが可能となるため、再利用性の向上による開発工数や開発期間、開発コストの削減が可能となる。さらに、実施態様の一例によれば、同一のプログラムモジュールが多種の製品に組み込まれテストされることによる品質の向上が実現できる。加えて、実施態様の一例によれば、プログラムモジュールの更新が行われた際、容易に多数の進路制御プログラム群へ反映させることが可能となり、バグの修正や先進的な追加機能を迅速に進路制御装置製品群へと適用できるようになる。
【図面の簡単な説明】
【００１０】
【図１（Ａ）】進路制御プログラム生成装置のハードウェア構成例である。
【図１（Ｂ）】進路制御プログラム生成装置のソフトウェア構成例である。
【図２（Ａ）】進路制御プログラム生成装置が有する線路形状情報テーブルの一例である。
【図２（Ｂ）】進路制御プログラム生成装置が有する閉そく形状情報テーブルの一例である。
【図２（Ｃ）】進路制御プログラム生成装置が有する幾何パターン格納テーブルの一例である。
【図２（Ｄ）】進路制御プログラム生成装置が有する選択済制御ロジック格納テーブルの一例である。
【図２（Ｅ）】進路制御プログラム生成装置が有する幾何パターン決定用テーブルの一例である。
【図３（Ａ）】幾何パターン種別「交差Ａ」の模式図である。
【図３（Ｂ）】幾何パターン種別「交差Ｂ」の模式図である。
【図３（Ｃ）】幾何パターン種別「始点片封鎖Ａ」の模式図である。
【図３（Ｄ）】幾何パターン種別「始点片封鎖Ｂ」の模式図である。
【図３（Ｅ）】幾何パターン種別「終点片封鎖Ａ」の模式図である。
【図３（Ｆ）】幾何パターン種別「終点片封鎖Ｂ」の模式図である。
【図３（Ｇ）】幾何パターン種別「始終点交互片封鎖」の模式図である。
【図３（Ｈ）】幾何パターン種別「デッドロックＢ」の模式図である。
【図３（Ｉ）】幾何パターン種別「終点両封鎖Ｃ」の模式図である。
【図３（Ｊ）】幾何パターン種別「始終点片封鎖Ａ」の模式図である。
【図３（Ｋ）】幾何パターン種別「始終点片封鎖Ｂ」の模式図である。
【図３（Ｌ）】幾何パターン種別「順方向接続」の模式図である。
【図３（Ｍ）】幾何パターン種別「逆方向接続Ａ」の模式図である。
【図３（Ｎ）】幾何パターン種別「逆方向接続Ｂ」の模式図である。
【図３（Ｏ）】幾何パターン種別「逆方向接続Ｃ」の模式図である。
【図３（Ｐ）】幾何パターン種別「進路選択Ａ」の模式図である。
【図３（Ｑ）】幾何パターン種別「進路選択Ｂ」の模式図である。
【図３（Ｒ）】幾何パターン種別「進路選択Ｃ」の模式図である。
【図３（Ｓ）】幾何パターン種別「終点両封鎖Ａ」の模式図である。
【図３（Ｔ）】幾何パターン種別「終点両封鎖Ｂ」の模式図である。
【図３（Ｕ）】幾何パターン種別「始終点片封鎖Ｃ」の模式図である。
【図３（Ｖ）】幾何パターン種別「デッドロックＡ」の模式図である。
【図４（Ａ）】進路制御プログラム生成装置が有する幾何パターン-制御ロジック種別対応票の一例である。
【図４（Ｂ）】進路制御プログラム生成装置が有する制御ロジックインデックステーブルの一例である。
【図５】進路制御プログラム生成装置の全体処理フローの例である。
【図６】進路制御プログラム生成装置の線路配線入力部が実行する処理フローの例である。
【図７】進路制御プログラム生成装置が線路配線情報を受け付ける際に表示する画面の例である。
【図８】進路制御プログラム生成装置の線路配線入力部が表示するエラー表示の画面例である。
【図９】進路制御プログラム生成装置の幾何パターン抽出部が実行する処理フローの例である。
【図１０】進路制御プログラム生成装置の幾何パターン抽出部が表示する画面例である。
【図１１】進路制御プログラム生成装置の幾何パターン抽出部が表示するエラー表示の一例である。
【図１２】進路制御プログラム生成装置の制御ロジック選択部が実行する処理フローの例である。
【図１３】進路制御プログラム生成装置の制御ロジック選択部が表示する画面例である。
【図１４（Ａ）】進路制御プログラム生成装置により生成される進路制御プログラムのソフトウェア構成例である。
【図１４（Ｂ）】進路制御プログラム生成装置により生成される進路制御プログラムで用いる予約処理中間データ格納テーブルの構成例である。
【図１４（Ｃ）】進路制御プログラム生成装置により生成される進路制御プログラムで用いる幾何情報テーブルの構成例である。
【図１４（Ｄ）】進路制御プログラム生成装置により生成される進路制御プログラムで用いる閉そく情報テーブルの構成例である。
【図１４（Ｅ）】進路制御プログラム生成装置により生成される進路制御プログラムで用いる閉そく状態テーブルの構成例である。
【図１４（Ｆ）】進路制御プログラム生成装置により生成される進路制御プログラムで用いる閉そく進入列車テーブルの構成例である。
【図１４（Ｇ）】進路制御プログラム生成装置により生成される進路制御プログラムで用いる列車ダイヤの構成例である。
【図１４（Ｈ）】進路制御プログラム生成装置のプログラムモジュール結合部が実行する処理フローの例である。
【図１５】進路制御プログラム生成装置により生成される進路制御プログラムの全体処理フローの例である。
【図１６】進路制御プログラム生成装置により生成される進路制御プログラムの処理フローの一部（処理１５２３）についての詳細処理フローの例である。
【図１７】進路制御プログラム生成装置により生成される進路制御プログラムの処理フローの一部（処理１５２５）についての詳細処理フローの例である。
【図１８】進路制御プログラム生成装置により生成される進路制御プログラムの処理フローの一部（処理１５２６）についての詳細処理フローの例である。
【図１９】進路制御プログラムが提供する画面の一例である。
【図２０】鉄道運行管理システムの全体構成例である。
【図２１】進路制御プログラム生成装置により生成される進路制御プログラムの動作概要を例示した図である。
【発明を実施するための形態】
【００１１】
以下、本発明の一実施形態を図１〜図２１を参照して詳細に説明する。
【００１２】
図２０は列車運行計画と列車の在線位置や信号機、転轍機などの設備状態を監視しながら列車の運行を管理する鉄道運行管理システムのシステム全体構成例で、進路制御装置９９００と計画系システム９９１０と地上装置９９２０と列車９９３０と地上設備群９９４０（図では軌道回路９９４１と信号機９９４２と転轍機９９４３のみ記載）から構成される。
【００１３】
進路制御装置９９００は計画系システム９９１０によって決定された列車ダイヤ情報および地上設備９９２０によって収集された地上設備群９９４０の状態をネットワークを介して受信して内部に保持しており、軌道回路９９４１から得られる列車９９３０の在線位置と列車ダイヤ情報に記載された出発時刻や計画進路を参照して列車９９３０の進路上に設置されている信号機９９４２や転轍機９９４３を地上装置９９４０を介して制御する。後述する進路制御プログラム生成装置１００では進路制御装置９９００を動作させるプログラムを生成する。
【００１４】
計画系システム９９１０は列車ダイヤや車両運用計画、点検・保守計画など列車の運行に関連する計画の作成を支援するシステムで、進路制御装置９９００とネットワークを介して接続されている。
【００１５】
地上装置９９４０は進路制御装置９９００とネットワークを介して接続されており、進路制御装置９９００からの制御要求に対して信号機９９４２、転轍機９９４３の反位制御を行う。また信号機９９４２や転轍機９９４３の状態(定位／反位)や軌道回路９９４１の状態(落下／扛上)を監視し、結果を進路制御装置９９００に伝達する。
【００１６】
列車９９３０は内部にＡＴＳ(Ａｕｔｏｍａｔｉｃ  Ｔｒａｉｎ  Ｓｔｏｐ)やＡＴＣ(Ａｕｔｏｍａｔｉｃ  Ｔｒａｉｎ  Ｃｏｎｔｒｏｌ)といった列車の自動停止や自動制御を行うための安全装置、車上の詳細な動作状態や故障情報を収集・表示・記録する情報管理システムなどの車上装置を有している。また車上装置が有する情報はデジタル無線を介して地上装置９９２０に送信する事が可能である。本実施形態では列車９９３０の在線位置を軌道回路９９４１の状態から判断する事を想定しているが、例えば車上装置が自列車の位置を算出または計測して、デジタル無線を介して地上装置に伝達することにより列車９９３０の在線位置を判断してもよい。
【００１７】
図２１は進路制御プログラム生成装置１００により生成される進路制御装置９９００を動作させるためのプログラムである進路制御プログラム１４００の動作概念図である。
【００１８】
進路制御プログラム１４００は、計画系システム９９１０から受け取った計画情報、地上装置９９２０から受け取った地上設備群情報を用いて信号機の制御判断を行い、地上装置９９２０に対して信号機の進行現示制御を要求するプログラムである。進路制御プログラム１４００は、線路９９０１を閉そくの集合として管理する。ここで、閉そくとは信号機の防護区間のことであり、信号機の内方区間に設置された第一内方軌道回路から最終内方軌道回路までの線路領域を指す。図２１に示す線路には、閉そくＡ９０１１、閉そくＢ９０１２、閉そくＣ９０１３、閉そくＤ９０１４、閉そくＥ９０１５、閉そくＦ９０１６が存在する。閉そくへの列車進入許可を運転手や指令員へと指示する装置が信号機であり、例えば閉そくへの列車進入許可は青信号を現示（進行現示）することにより、閉そくへの列車進入不許可は赤信号（停止現示）を現示することにより指示する。図２１においては、例えば信号機Ｄ９０２１が進行現示であれば列車Ｕ９０３２は閉そくＤ９０１４へ進入することができるが、信号機Ｄ９０２１が停止現示であれば列車Ｕ９０３２は閉そくＤ９０１４へ進入することができない。
【００１９】
進路制御プログラム１４００では信号機の制御を列車による閉そくの予約という方式を用いて実現する。ここで、閉そくが列車により予約されるとは、当該閉そくに対して次に進入する列車が当該列車であると進路制御装置９９００により決定されたことを意味する。閉そくが予約された際には、進路制御装置９９００は当該閉そくを防護区間とする信号機の進行現示要求を地上装置９９２０に対して行う。閉そくの予約は列車が在線している閉そくを起点として開始され、列車の進路に沿って当該列車に近い閉そくから順に行う。図２１においては、例えば列車Ｔ９０３１を起点として開始された予約処理は、進路９０３３に沿って閉そくＣ９０１３、閉そくＥ９０１５、閉そくＦ９０１６の順に行われる。予約処理は失敗した時点で終了とし、例えば前記例において閉そくＥ９０１５の予約が失敗した場合は閉そくＦ９０１６以降の予約は行わない。
【００２０】
進路制御プログラム１４００では進路制御装置の制御原理として進路決定、順序管理、衝突・脱線防止の３つが定義されており、各制御原理を実現するロジックである制御ロジックが二つの閉そくの間で定義された幾何パターン種別（後述）と対応付けられている。閉そくの予約が行われる際、当該閉そくが持つ幾何パターン種別に対応付けられた制御ロジックが実行される。図２１においては、例えば幾何パターン９０４１を持つ閉そくである閉そくＢ９０１２および閉そくＣ９０１３が予約される際には進路決定に対応する制御ロジックが、幾何パターン９０４２を持つ閉そくである閉そくＤ９０１４および閉そくＥ９０１５が予約される際には順序管理に対応する制御ロジックが、幾何パターン９０４１あるいは幾何パターン９０４２を持つ閉そくである閉そくＢ９０１２、閉そくＣ９０１３、閉そくＤ９０１４、閉そくＥ９０１５が予約される際には衝突・脱線防止に対応する制御ロジックが実行される。
【００２１】
図１（Ａ）は進路制御プログラム生成装置１００のハードウェア構成例である。進路制御プログラム生成装置１００のハードウェアは、中央処理装置１１０と主記憶装置１２０と内部バス１３０とバスインタフェース１４０と外部バス１５０と入出力装置１６０と入出力装置インタフェース１６１と大容量記憶装置１７０と大容量記憶装置インタフェース１７１と通信装置１８０と通信装置インタフェース１８１から構成される。
【００２２】
中央処理装置１１０はプログラム実行等の演算を行うためのプロセッサである。主記憶装置１２０はプログラム実行時の処理領域および計画系システム９９１０や地上装置９９２０との送受信に使用するデータの一時格納領域として使用し、例えばＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）などの基本プログラムや基本データを格納する。更に主記憶装置１２０は、線路配線入力部２１１、幾何パターン抽出部２１２、制御ロジック選択部２１３、プログラムモジュール結合部２１４、コントローラ部２２０、画面管理部２３０、入力インタフェース２４１、出力インタフェース２４２を実現するプログラムをプログラム実行時に一時的に格納する。中央処理装置１１０と主記憶装置１２０は内部バス１３０により接続されており、内部バス１３０はバスインタフェース１４０を介して外部バス１５０に接続されている。
【００２３】
入出力装置１６０はディスプレイやキーボード、マウスなど、ユーザとのインターフェースデバイスおよび外部媒体に読み書き可能なドライブ装置などであるである。ユーザはキーボードやマウスなどの入力デバイスを用いてプログラムの実行を制御することができる。
【００２４】
大容量記憶装置１７０は例えばＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）といった装置であり、基本プログラムや処理結果、線路配線入力部２１１、幾何パターン抽出部２１２、制御ロジック選択部２１３、プログラムモジュール結合部２１４、コントローラ部２２０、画面管理部２３０、入力インタフェース２４１、出力インタフェース２４２を実現するプログラムなどを永続的に記憶することができる。各種処理実行の際には中央処理装置１１０が主記憶装置１２０にプログラムを読み出して実行する。また、線路形状テーブル２５１や閉そく形状情報テーブル２５２、幾何パターン格納テーブル２５３、幾何パターン決定用テーブル２５４、選択済み制御ロジック格納テーブル２５５、幾何パターン - 制御ロジック種別対応表３００、制御ロジックインデックステーブル４００、制御ロジックライブラリ２５６、鉄道運行管理コアモジュールライブラリ２５７などの各種データが格納される。 
通信装置１８０は例えばＥｔｈｅｒｎｅｔ（登録商標）といった外部サーバ装置などと接続するための装置であり、進路制御プログラム生成装置１００が生成したプログラムをネットワークを通じて外部サーバ装置へと提供することができる。通信装置１８０を用いることにより、例えば進路制御プログラム生成装置１００の機能をネットワークを通じた先に接続されている計算機に対してサービスとして提供することが可能となる。
【００２５】
入出力装置１６０と大容量記憶装置１７０と通信装置１８０はそれぞれ入出力装置インタフェース１６１と大容量記憶装置インタフェース１７１と通信装置インタフェース１８１を介して外部バス１５０と接続されている。入出力装置１６０や大容量記憶装置１７０、通信装置１８０を含めた構成を進路制御装置１００であるとしてもよい。
【００２６】
尚、進路制御装置９９００も図１（Ａ）に示すハード構成例と同様のハードウェア構成を有している。進路制御プログラム生成装置１００との主な違いは、主記憶装置１２０および大容量記憶装置１７０に格納されているソフトウェア、データであり、これについては図１４（Ａ）を用いて後述する。
【００２７】
図１（Ｂ）は進路制御プログラム生成装置１００のソフトウェア構成例である。進路制御プログラム生成装置１００のソフトウェアは、線路配線入力部２１１と幾何パターン抽出部２１２と制御ロジック選択部２１３とプログラムモジュール結合部２１４とコントローラ部２２０と画面管理部２３０と入力インタフェース２４１と出力インタフェース２４２と線路形状テーブル２５１と閉そく形状情報テーブル２５２と幾何パターン格納テーブル２５３と幾何パターン決定用テーブル２５４と選択済み制御ロジック格納テーブル２５５と幾何パターン - 制御ロジック種別対応表３００と制御ロジックインデックステーブル４００と制御ロジックライブラリ２５６と鉄道運行管理コアモジュールライブラリ２５７から構成される。
【００２８】
線路配線入力部２１１と幾何パターン抽出部２１２と制御ロジック選択部２１３とプログラムモジュール結合部２１４とコントローラ部２２０と画面管理部２３０と入力インタフェース２４１と出力インタフェース２４２を実現するプログラムおよび幾何パターン決定用テーブル２５４と制御ロジックインデックステーブル２５６と制御ロジックライブラリ２５７と鉄道運行管理コアモジュールライブラリ２５８は実行時に大容量記憶装置１７０から主記憶装置１２０へと展開され、中央処理装置１１０により演算が行われる。また、プログラムの実行により生成された線路形状テーブル２５１と閉そく形状情報テーブル２５２と幾何パターン格納テーブル２５３と選択済み制御ロジック格納テーブル２５５は主記憶装置１２０へと展開される。ユーザはキーボードやマウス、ディスプレイなどの入出力装置１６０を介して入力インタフェース２４１へと指示を与えることによりプログラムの実行を制御することができる。また、入出力装置１６０として着脱可能で可搬性のある記憶媒体を用いることによりデータの入出力を行うことができる。通信装置１８０を通じ、他の装置との間で入出力を行うこともできる。各機能部を実現するプログラムは、予め大容量記憶装置１７０に格納されていてもよいし、利用可能な媒体を介して他の装置から大容量記憶装置１７０や主記憶装置１２０に導入されてもよい。媒体とは、例えば、入出力装置１６０としては着脱可能な記憶媒体、または、通信装置１８０としてはネットワーク、ネットワークを伝搬する搬送波やデジタル信号などの通信媒体を指す。
【００２９】
線路配線入力部２１１は、ユーザから入力インタフェース２４１を介して線路配線および閉そくの入力情報を受け取り、線路形状情報テーブル２５１および閉そく形状情報テーブル２５２に登録する部分である。 
幾何パターン抽出部２１２は、線路形状情報テーブル２５１、閉そく形状情報テーブル２５２、幾何パターン決定用テーブル２５４を用いて二つの閉そく間の幾何パターン種別を判別し、結果を幾何パターン格納テーブル２５３に格納する部分である。
【００３０】
制御ロジック選択部２１３は、幾何パターン格納テーブル２５３、幾何パターン - 制御ロジック種別対応表、制御ロジックインデックステーブル４００を用いて選択可能な制御ロジックを選択して出力インタフェースを介してディスプレイに表示し、ユーザから入力インタフェース２４１を介して幾何パターンごとに実行される制御ロジックを受け取り、選択済制御ロジック格納テーブル２５５に登録する部分である。
【００３１】
プログラムモジュール結合部２１４は、線路形状情報テーブル２５１、閉そく形状情報テーブル２５２、幾何パターン格納テーブル２５３、選択済制御ロジック格納テーブル２５５、制御ロジックインデックステーブル、制御ロジックライブラリ２５６、鉄道運行管理コアモジュールライブラリ２５７から進路制御装置９９００を動作させるプログラムを生成する部分である。
【００３２】
線路形状テーブル２５１と閉そく形状情報テーブル２５２と幾何パターン格納テーブル２５３と幾何パターン決定用テーブル２５４と選択済み制御ロジック格納テーブル２５５と幾何パターン - 制御ロジック種別対応表３００と制御ロジックインデックステーブル４００は構成例を用いて後述する。
【００３３】
制御ロジックライブラリ２５６は多数の制御ロジックモジュールを格納したライブラリである。ここで、制御ロジックモジュールは制御ロジックモジュールを一意に識別するためのキーである制御ロジックＩＤを与えることにより一意に決定する。 
鉄道運行管理コアモジュールライブラリ２５７は、進路制御装置９９００を動作させるプログラムを生成するにあたり必要なモジュールのうち制御ロジックモジュール以外のモジュールを格納したライブラリであり、例えば進路制御プログラム１４００の通信管理部１４６０や入力インタフェース１４７１、出力インタフェース１４７２、計画系システム情報管理部１４１５、列車ダイヤ１４８７、地上設備群情報管理部１４５２、設備状態１４８８、閉そく予約管理部１４１０、予約処理中間データ格納テーブル１４８１、閉そく状態テーブル１４８４、閉そく進入列車テーブル１４８５を実現するモジュールを格納している。
【００３４】
コントローラ部２２０はユーザからの入力情報を画面管理部２３０を介して受け取り、線路配線入力部２１１と幾何パターン抽出部２１２と制御ロジック選択部２１３とプログラムモジュール結合部２１４を制御する部分である。画面管理部２３０は入力インタフェース２４１を介してユーザからの入力情報を受け取り、コントローラ部４２１へと受け渡す部分である。また、線路配線入力部２１１と幾何パターン抽出部２１２と制御ロジック選択部２１３とプログラムモジュール結合部２１４の処理結果を受け取り、画面出力を出力インタフェース２４２へと受け渡す部分である。入力インタフェース２４１はユーザからの入力情報を受け取り、画面管理部２３０へと受け渡す部分である。出力インタフェース２４２は画面管理部から受け取った画面出力をディスプレイなどのユーザインタフェースへと出力する部分である。
【００３５】
図２は進路制御プログラム生成装置１００で使用する各種テーブルの一例を示している。
【００３６】
図２（Ａ）は線路形状テーブル２５１の一例であり、線路要素ＩＤ、駅名、開始座標、終了座標を要素として持つ。線路要素ＩＤには図７に示す線路配線入力窓７３０に入力された線路を表す線分を一意に識別するためのキーが格納されている。駅名には当該線分が所属する駅名が格納されている。開始座標および終了座標には、当該線分が持つ二つの端点の図７に示す線路配線入力窓７３０上における座標値がそれぞれ格納されている。
【００３７】
図２（Ｂ）は閉そく形状テーブル２５２の一例であり、閉そくＩＤ、発点座標、着点座標、対応線路要素ＩＤ、方向、隣駅境界を要素として持つ。閉そくＩＤには線路配線入力窓７３０に入力された閉そくを一意に識別するためのキーが格納されている。発点座標、着点座標には各々当該閉そくの発点、着点の線路配線入力窓７３０上における座標値が格納されている。ここで、発点とは閉そくに列車が進入する際に当該列車が当該閉そく外で最後に通過する場所を指し、着点とは閉そくから列車が進出する際に当該列車が当該閉そく内で最後に通過する場所を指す。例えば、図７に示す線路配線入力窓７３０おいて、７３５は閉そく７３３の発点、７３６は閉そく７３３の着点となっている。なお、７３５は閉そく７３３の発点であるが、７３５が指す線路位置は閉そく７３３には含まれない。また、７３６は同時に閉そく７３４の発点ともなっている。対応線路要素ＩＤには、線路配線入力窓７３０上において当該閉そくが内部に包含している線分のすべてについて、線路形状テーブル２５１の線路要素ＩＤの値が格納されている。例えば、図７に示す線路配線入力窓７３０おいて、閉そく７３３の内部に包含する線分は線分７３７、７３８、７３９である。方向には当該閉そくの方向が格納されている。ここで、閉そくの方向とは例えば上りおよび下りの２値から成る。
【００３８】
図２（Ｃ）は幾何パターン格納テーブル２５３の一例であり、幾何パターンＩＤ、幾何パターン種別、閉そく１ＩＤ、閉そく２ＩＤを要素として持つ。幾何パターンＩＤには、二つの閉そくの組み、および当該二つの閉そく間の幾何的関係（以降、幾何的関係を「幾何パターン」とも呼ぶ）を一意に識別するためのキーが格納されている。幾何パターン種別には当該幾何パターンがあらかじめ定義された２２の幾何パターン種別のいずれに分類されるのかを示す幾何パターンの種別が格納されている（幾何パターンの種別については図３を用いて後述する）。閉そく１ＩＤ、閉そく２ＩＤには、当該幾何パターンを構成する二つの閉そくを特定するために、閉そく形状テーブル２５２に定義されている当該閉そくの閉そくＩＤの値が格納されている。
【００３９】
図２（Ｄ）は選択済み制御ロジック格納テーブル２５５の一例であり、幾何パターンＩＤ、予約対象閉そく選定ロジック、順序判断ロジック、閉そく照査ロジック（閉そく１→閉そく２）、閉そく照査ロジック（閉そく２→閉そく１）を要素として持つ。幾何パターンＩＤは幾何パターン格納テーブル２５３の幾何パターンＩＤと同一である。予約対象閉そく選定ロジック、順序判断ロジック、閉そく照査ロジック（閉そく１→閉そく２）、閉そく照査ロジック（閉そく２→閉そく１）には各々、当該幾何パターンに対して図１３に示す制御ロジック入力窓１３１０に入力された予約対象閉そく選定ロジック、順序判断ロジック、閉そく照査ロジックのそれぞれに対応する制御ロジックＩＤが格納されている。ここで、制御ロジックＩＤとは制御ロジックモジュールを一意に識別するためのキーであり、制御ロジックインデックステーブル４００の制御ロジックＩＤと同一のものである。なお、予約対象閉そく選定ロジックとは制御原理のうち進路決定を実現するロジック、順序判断ロジックとは制御原理のうち順序管理を実現するロジック、閉そく照査ロジックとは制御原理のうち衝突・脱線防止を実現するロジックである。
【００４０】
図２（Ｅ）は進路制御プログラム生成装置１００で使用する幾何パターン決定用テーブル２５４の構成例である。幾何パターン決定用テーブル２５４は、幾何パターン分類基準、幾何パターン種別を要素として持つ。幾何パターン分類基準は重複端点数、重複端点種類、閉そく１に包含される閉そく２の端点数、閉そく１に包含される閉そく２の端点種類、閉そく２に包含される閉そく１の端点数、閉そく２に包含される閉そく１の端点種類、閉そく１と閉そく２の方向関係を要素として持つ。幾何パターン分類基準とは幾何パターン抽出部２１２が二つの閉そく間に定義される幾何パターン種別を判別する際に用いる情報である。幾何パターン種別とはそれぞれの幾何パターン分類基準を満たす幾何パターンについてその分類名称を与えたものであり、全部で２２パターン（種別）存在する。なお、幾何パターン分類基準には物理的に実現不可能なものが存在し、それらについては幾何パターン種別を与えていない。
【００４１】
図３に２２の幾何パターン種別を示す。
【００４２】
図３（Ａ）は幾何パターン決定用テーブル２５４のＮｏ．１に登録されている「交差Ａ」の例である。矢印は線路を表しており、実線で表された分岐器、着点、矢印は閉そく１を、破線で表された分岐器、着点、矢印は閉そく２を表している。なお、閉そく１、閉そく２の両方に属する分岐器は実線で示している。矢印の向きは閉そく内で列車が進む向きを表しており、例えば左方向が上り、右方向が下りである。発点１、着点１はそれぞれ閉そく１の発点、着点であり、発点２、着点２はそれぞれ閉そく２の発点、着点である。信号機１、信号機２はそれぞれ閉そく１、閉そく２への列車進入許可を表示する信号機である。なお、図中の信号機は丸印方向から縦棒方向へと表示面を向けており、当該信号機の縦棒方向に在線している列車に対して指示を行う。図３（Ａ）においては、信号機１、信号機２は図左方向に表示面を向けている。「交差Ａ」では、幾何パターン分類基準として重複端点数が０端点重複、重複端点種類がなしとなっており、これは図３（Ａ）においては発点１、発点２、着点１、着点２が重複していないことと対応している。また、幾何パターン分類基準として閉そく１に包含される閉そく２の端点数が０、閉そく１に包含される閉そく２の端点種類がなし、閉そく２に包含される閉そく１の端点数が０、閉そく２に包含される閉そく１の端点種類がなしとなっており、これは図３（Ａ）においては発点１、着点１が閉そく２に含まれていないことおよび発点２、着点２が閉そく１に含まれていないことと対応している。また、幾何パターン分類基準として閉そく１と閉そく２の方向関係が順方向となっており、これは図３（Ａ）においては閉そく１、閉そく２とも方向が右方向であることと対応している。なお、幾何パターン分類基準には分岐器の数は含まれていないため、図３（Ａ）に表記されている分岐器の数は幾何パターン種別を特定するためには関係ない情報であるが、「交差Ａ」の幾何パターン種別を実現するためには最低二つの分岐器が必要である。
【００４３】
図３（Ｂ）は幾何パターン決定用テーブル２５４のＮｏ．２に登録されている「交差Ｂ」の例である。矢印、実線、点線、信号機の表記が示す意味は図３（Ａ）と同様である。「交差Ｂ」では、分類基準として重複端点数が０端点重複、重複端点種類がなしとなっており、これは図３（Ｂ）においては発点１、発点２、着点１、着点２が重複していないことと対応している。また、幾何パターン分類基準として閉そく１に包含される閉そく２の端点数が０、閉そく１に包含される閉そく２の端点種類がなし、閉そく２に包含される閉そく１の端点数が０、閉そく２に包含される閉そく１の端点種類がなしとなっており、これは図３（Ｂ）においては発点１、着点１が閉そく２に含まれていないことおよび発点２、着点２が閉そく１に含まれていないことと対応している。また、幾何パターン分類基準として閉そく１と閉そく２の方向関係が逆方向となっており、これは図３（Ｂ）においては閉そく１が右方向、閉そく２が左方向であることと対応している。なお、幾何パターン分類基準には分岐器の数は含まれていないため、図３（Ｂ）に表記されている分岐器の数は幾何パターン種別を特定するためには関係ない情報であるが、当該幾何パターン種別を実現するためには最低二つの分岐器が必要である。
【００４４】
図３（Ｃ）は幾何パターン決定用テーブル２５４のＮｏ．３に登録されている「始点片封鎖Ａ」の例である。矢印、実線、点線、信号機の表記が示す意味は図３（Ａ）と同様である。「始点片封鎖Ａ」では、分類基準として重複端点数が０端点重複、重複端点種類がなしとなっており、これは図３（Ｃ）においては発点１、発点２、着点１、着点２が重複していないことと対応している。また、幾何パターン分類基準として閉そく１に包含される閉そく２の端点数が１、閉そく１に包含される閉そく２の端点種類が発点、閉そく２に包含される閉そく１の端点数が０、閉そく２に包含される閉そく１の端点種類がなしとなっており、これは図３（Ｃ）においては発点２が閉そく１に含まれていることと対応している。また、幾何パターン分類基準として閉そく１と閉そく２の方向関係が順方向となっており、これは図３（Ｃ）においては閉そく１、閉そく２とも方向が右方向であることと対応している。なお、幾何パターン分類基準には分岐器の数は含まれていないため、図３（Ｃ）に表記されている分岐器の数は幾何パターン種別を特定するためには関係ない情報であるが、当該幾何パターン種別を実現するためには最低１つの分岐器が必要である。
【００４５】
図３（Ｄ）は幾何パターン決定用テーブル２５４のＮｏ．４に登録されている「始点片封鎖Ｂ」の例である。矢印、実線、点線、信号機の表記が示す意味は図３（Ａ）と同様である。「始点片封鎖Ｂ」では、分類基準として重複端点数が０端点重複、重複端点種類がなしとなっており、これは図３（Ｄ）においては発点１、発点２、着点１、着点２が重複していないことと対応している。また、幾何パターン分類基準として閉そく１に包含される閉そく２の端点数が１、閉そく１に包含される閉そく２の端点種類が発点、閉そく２に包含される閉そく１の端点数が０、閉そく２に包含される閉そく１の端点種類がなしとなっており、これは図３（Ｄ）においては発点２が閉そく１に含まれていることと対応している。また、幾何パターン分類基準として閉そく１と閉そく２の方向関係が逆方向となっており、これは図３（Ｄ）においては閉そく１が右方向、閉そく２が左方向であることと対応している。なお、幾何パターン分類基準には分岐器の数は含まれていないため、図３（Ｄ）に表記されている分岐器の数は幾何パターン種別を特定するためには関係ない情報であるが、当該幾何パターン種別を実現するためには最低１つの分岐器が必要である。
【００４６】
図３（Ｅ）は幾何パターン決定用テーブル２５４のＮｏ．５に登録されている「終点片封鎖Ａ」の例である。矢印、実線、点線、信号機の表記の意味は図３（Ａ）と同様である。「終点片封鎖Ａ」では、分類基準として重複端点数が０端点重複、重複端点種類がなしとなっており、これは図３（Ｅ）においては発点１、発点２、着点１、着点２が重複していないことと対応している。また、幾何パターン分類基準として閉そく１に包含される閉そく２の端点数が１、閉そく１に包含される閉そく２の端点種類が着点、閉そく２に包含される閉そく１の端点数が０、閉そく２に包含される閉そく１の端点種類がなしとなっており、これは図３（Ｅ）においては着点２が閉そく１に含まれていることと対応している。また、幾何パターン決定用テーブル２５４のＮｏ．５では、幾何パターン分類基準として閉そく１と閉そく２の方向関係が順方向となっており、これは図３（Ｅ）においては閉そく１、閉そく２とも方向が右方向であることと対応している。なお、幾何パターン分類基準には分岐器の数は含まれていないため、図３（Ｅ）に表記されている分岐器の数は幾何パターン種別の特定には関係ない情報だが、当該幾何パターン種別を実現するためには最低１つの分岐器が必要である。
【００４７】
図３（Ｆ）は幾何パターン決定用テーブル２５４のＮｏ．６に登録されている「終点片封鎖Ｂ」の例である。矢印、実線、点線、信号機の表記の意味は図３（Ａ）と同様である。「終点片封鎖Ｂ」では、分類基準として重複端点数が０端点重複、重複端点種類がなしとなっており、これは図３（Ｆ）においては発点１、発点２、着点１、着点２が重複していないことと対応している。また、幾何パターン分類基準として閉そく１に包含される閉そく２の端点数が１、閉そく１に包含される閉そく２の端点種類が着点、閉そく２に包含される閉そく１の端点数が０、閉そく２に包含される閉そく１の端点種類がなしとなっており、これは図３（Ｆ）においては着点２が閉そく１に含まれていることと対応している。また、幾何パターン分類基準として閉そく１と閉そく２の方向関係が逆方向となっており、これは図３（Ｆ）においては閉そく１が右方向、閉そく２が左方向であることと対応している。なお、幾何パターン分類基準には分岐器の数は含まれていないため、図３（Ｆ）に表記されている分岐器の数は幾何パターン種別の特定には関係ない情報であるが、当該幾何パターン種別を実現するためには最低１つの分岐器が必要である。
【００４８】
図３（Ｇ）は幾何パターン決定用テーブル２５４のＮｏ．７に登録されている「始終点交互片封鎖」の例である。矢印、実線、点線、信号機の表記の意味は図３（Ａ）と同様である。「始終点交互片封鎖」では、分類基準として重複端点数が０端点重複、重複端点種類がなしとなっており、これは図３（Ｇ）においては発点１、発点２、着点１、着点２が重複していないことと対応している。また、幾何パターン分類基準として閉そく１に包含される閉そく２の端点数が１、閉そく１に包含される閉そく２の端点種類が発点、閉そく２に包含される閉そく１の端点数が１、閉そく２に包含される閉そく１の端点種類が着点となっており、これは図３（Ｇ）においては発点１が閉そく２に含まれていることおよび着点２が閉そく１に含まれていることと対応している。また、幾何パターン分類基準として閉そく１と閉そく２の方向関係が順方向となっており、これは図３（Ｇ）においては閉そく１、閉そく２とも方向が右方向であることと対応している。なお、幾何パターン分類基準には分岐器の数は含まれていないため、図３（Ｇ）に表記されている分岐器の数は幾何パターン種別の特定には関係ない情報であるが、当該幾何パターン種別は分岐器がなくても実現可能である。
【００４９】
なお、幾何パターン決定用テーブル２５４のＮｏ．８は幾何パターン決定用テーブル２５４のＮｏ．７に対し、閉そく１と閉そく２の方向関係を逆方向としたものであるが、物理的に実現することは不可能である。  図３（Ｈ）は幾何パターン決定用テーブル２５４のＮｏ．１０に登録されている「デッドロックＢ」の例である。矢印、実線、点線、信号機の表記の意味は図３（Ａ）と同様である。「デッドロックＢ」では、分類基準として重複端点数が０端点重複、重複端点種類がなしとなっており、これは図３（Ｈ）においては発点１、発点２、着点１、着点２が重複していないことと対応している。また、幾何パターン分類基準として閉そく１に包含される閉そく２の端点数が１、閉そく１に包含される閉そく２の端点種類が発点、閉そく２に包含される閉そく１の端点数が１、閉そく２に包含される閉そく１の端点種類が発点となっており、これは図３（Ｈ）においては発点１が閉そく２に含まれていることおよび発点２が閉そく１に含まれていることと対応している。また、幾何パターン分類基準として閉そく１と閉そく２の方向関係が逆方向となっており、これは図３（Ｈ）においては閉そく１が右方向、閉そく２が左方向であることと対応している。なお、幾何パターン分類基準には分岐器の数は含まれていないため、図３（Ｈ）に表記されている分岐器の数は幾何パターン種別の特定には関係ない情報だが、当該幾何パターン種別は分岐器がなくても実現可能である。
【００５０】
なお、幾何パターン決定用テーブル２５４のＮｏ．９は幾何パターン決定用テーブル２５４のＮｏ．１０に対し、閉そく１と閉そく２の方向関係を順方向としたものであるが、物理的に実現することは不可能である。
【００５１】
図３（Ｉ）は幾何パターン決定用テーブル２５４のＮｏ．１２に登録されている「終点両封鎖Ｃ」の例である。矢印、実線、点線、信号機の表記の意味は図３（Ａ）と同様である。「終点両封鎖Ｃ」では、分類基準として重複端点数が０端点重複、重複端点種類がなしとなっており、これは図３（Ｉ）においては発点１、発点２、着点１、着点２が重複していないことと対応している。また、幾何パターン分類基準として閉そく１に包含される閉そく２の端点数が１、閉そく１に包含される閉そく２の端点種類が着点、閉そく２に包含される閉そく１の端点数が１、閉そく２に包含される閉そく１の端点種類が着点となっており、これは図３（Ｉ）においては着点１が閉そく２に含まれていることおよび着点２が閉そく１に含まれていることと対応している。また、幾何パターン分類基準として閉そく１と閉そく２の方向関係が逆方向となっており、これは図３（Ｉ）においては閉そく１が右方向、閉そく２が左方向であることと対応している。なお、幾何パターン分類基準には分岐器の数は含まれていないため、図３（Ｉ）に表記されている分岐器の数は幾何パターン種別の特定には関係ない情報だが、当該幾何パターン種別は分岐器がなくても実現可能である。
【００５２】
なお、幾何パターン決定用テーブル２５４のＮｏ．１１は幾何パターン決定用テーブル２５４のＮｏ．１２に対し、閉そく１と閉そく２の方向関係を順方向としたものであるが、物理的に実現することは不可能である。
【００５３】
図３（Ｊ）は幾何パターン決定用テーブル２５４のＮｏ．１３に登録された「始終点片封鎖Ａ」の例である。矢印、実線、点線、信号機の表記の意味は図３（Ａ）と同様である。「始終点片封鎖Ａ」では、分類基準として重複端点数が０端点重複、重複端点種類がなしとなっており、これは図３（Ｊ）においては発点１、発点２、着点１、着点２が重複していないことと対応している。また、幾何パターン分類基準として閉そく１に包含される閉そく２の端点数が２、閉そく１に包含される閉そく２の端点種類が両方、閉そく２に包含される閉そく１の端点数が２、閉そく２に包含される閉そく１の端点種類が両方となっており、これは図３（Ｊ）においては発点１および着点１が閉そく２に含まれていることならびに発点２および着点２が閉そく１に含まれていることと対応している。また、幾何パターン分類基準として閉そく１と閉そく２の方向関係が順方向となっており、これは図３（Ｊ）においては閉そく１、閉そく２とも方向が右方向であることと対応している。なお、幾何パターン分類基準には分岐器の数は含まれていないため、図３（Ｊ）に表記されている分岐器の数は幾何パターン種別を特定するには関係ない情報だが、当該幾何パターン種別は分岐器がなくても実現可能である。
【００５４】
図３（Ｋ）は幾何パターン決定用テーブル２５４のＮｏ．１４に登録された「始終点片封鎖Ｂ」の例である。矢印、実線、点線、信号機の表記の意味は図３（Ａ）と同様である。「始終点片封鎖Ｂ」では、分類基準として重複端点数が０端点重複、重複端点種類がなしとなっており、これは図３（Ｋ）においては発点１、発点２、着点１、着点２が重複していないことと対応している。また、幾何パターン分類基準として閉そく１に包含される閉そく２の端点数が２、閉そく１に包含される閉そく２の端点種類が両方、閉そく２に包含される閉そく１の端点数が２、閉そく２に包含される閉そく１の端点種類が両方となっており、これは図３（Ｋ）においては発点１および着点１が閉そく２に含まれていることならびに発点２および着点２が閉そく１に含まれていることと対応している。また、幾何パターン分類基準として閉そく１と閉そく２の方向関係が逆方向となっており、これは図３（Ｋ）においては閉そく１が右方向、閉そく２が左方向であることと対応している。なお、幾何パターン分類基準には分岐器の数は含まれていないため、図３（Ｋ）に表記されている分岐器の数は幾何パターン種別を特定するには関係ない情報だが、当該幾何パターン種別は分岐器がなくても実現可能である。
【００５５】
図３（Ｌ）は幾何パターン決定用テーブル２５４のＮｏ．１５に登録された「順方向接続」の例である。矢印、実線、点線、信号機の表記の意味は図３（Ａ）と同様である。「順方向接続」では、分類基準として重複端点数が１端点重複、重複端点種類が閉そく１の発点と閉そく２の着点となっており、これは図３（Ｌ）においては着点１と発点２が重複していることと対応している。また、幾何パターン分類基準として閉そく１に包含される閉そく２の端点数が０、閉そく１に包含される閉そく２の端点種類がなし、閉そく２に包含される閉そく１の端点数が０、閉そく２に包含される閉そく１の端点種類がなしとなっており、これは図３（Ｌ）においては発点１、着点１が閉そく２に含まれていないことおよび発点２、着点２が閉そく１に含まれていないことと対応している。ここで、端点の重複は包含には含まない。また、幾何パターン分類基準として閉そく１と閉そく２の方向関係が順方向となっており、これは図３（Ｌ）においては閉そく１、閉そく２とも方向が右方向であることと対応している。なお、幾何パターン分類基準には分岐器の数は含まれていないため、図３（Ｌ）に表記されている分岐器の数は幾何パターン種別を特定するには関係ない情報だが、当該幾何パターン種別は分岐器がなくても実現可能である。
【００５６】
図３（Ｍ）は幾何パターン決定用テーブル２５４のＮｏ．１６に登録された「逆方向接続Ａ」の例である。矢印、実線、点線、信号機の表記の意味は図３（Ａ）と同様である。「逆方向接続Ａ」では、分類基準として重複端点数が１端点重複、重複端点種類が閉そく１の発点と閉そく２の着点となっており、これは図３（Ｍ）においては着点１と発点２が重複していることと対応している。また、幾何パターン分類基準として閉そく１に包含される閉そく２の端点数が０、閉そく１に包含される閉そく２の端点種類がなし、閉そく２に包含される閉そく１の端点数が０、閉そく２に包含される閉そく１の端点種類がなしとなっており、これは図３（Ｍ）においては発点１、着点１が閉そく２に含まれていないことおよび発点２、着点２が閉そく１に含まれていないことと対応している。ここで、端点の重複は包含には含まない。また、幾何パターン分類基準として閉そく１と閉そく２の方向関係が逆方向となっており、これは図３（Ｍ）においては閉そく１が右方向、閉そく２が左方向であることと対応している。なお、幾何パターン分類基準には分岐器の数は含まれていないため、図３（Ｍ）に表記されている分岐器の数は幾何パターン種別の特定には関係ない情報だが、当該幾何パターン種別を実現するためには最低１つの分岐器が必要である。
【００５７】
図３（Ｎ）は幾何パターン決定用テーブル２５４のＮｏ．１８に登録された「逆方向接続Ｂ」の例である。矢印、実線、点線、信号機の表記の意味は図３（Ａ）と同様である。「逆方向接続Ｂ」では、分類基準として重複端点数が１端点重複、重複端点種類が閉そく１の発点と閉そく２の着点となっており、これは図３（Ｎ）においては着点１と発点２が重複していることと対応している。また、幾何パターン分類基準として閉そく１に包含される閉そく２の端点数が１、閉そく１に包含される閉そく２の端点種類が発点、閉そく２に包含される閉そく１の端点数が０、閉そく２に包含される閉そく１の端点種類がなしとなっており、これは図３（Ｎ）においては発点１が閉そく２に含まれていることと対応している。ここで、端点の重複は包含には含まない。また、幾何パターン分類基準として閉そく１と閉そく２の方向関係が逆方向となっており、これは図３（Ｎ）においては閉そく１が右方向、閉そく２が左方向であることと対応している。なお、幾何パターン分類基準には分岐器の数は含まれていないため、図３（Ｎ）に表記されている分岐器の数は幾何パターン種別の特定には関係ないが、当該幾何パターン種別は分岐器がなくても実現可能である。
【００５８】
なお、幾何パターン決定用テーブル２５４のＮｏ．１７は幾何パターン決定用テーブル２５４のＮｏ．１８に対し、閉そく１と閉そく２の方向関係を順方向としたものであるが、物理的に実現することは不可能である。
【００５９】
図３（Ｏ）は幾何パターン決定用テーブル２５４のＮｏ．２０に登録されている「逆方向接続Ｃ」の例である。矢印、実線、点線、信号機の表記の意味は図３（Ａ）と同様である。「逆方向接続Ｃ」では、分類基準として重複端点数が１端点重複、重複端点種類が閉そく１の発点と閉そく２の着点となっており、これは図３（Ｏ）においては着点１と発点２が重複していることと対応している。また、幾何パターン分類基準として閉そく１に包含される閉そく２の端点数が１、閉そく１に包含される閉そく２の端点種類が着点、閉そく２に包含される閉そく１の端点数が０、閉そく２に包含される閉そく１の端点種類がなしとなっており、これは図３（Ｏ）においては着点２が閉そく１に含まれていることと対応している。ここで、端点の重複は包含には含まない。また、幾何パターン分類基準として閉そく１と閉そく２の方向関係が逆方向となっており、これは図３（Ｏ）においては閉そく１が右方向、閉そく２が左方向であることと対応している。なお、幾何パターン分類基準には分岐器の数は含まれていないため、図３（Ｏ）に表記されている分岐器の数は幾何パターン種別の特定には関係ないが、当該幾何パターン種別は分岐器がなくても実現可能である。
【００６０】
なお、幾何パターン決定用テーブル２５４のＮｏ．１９は幾何パターン決定用テーブル２５４のＮｏ．２０に対し、閉そく１と閉そく２の方向関係を順方向としたものであるが、物理的に実現することは不可能である。
【００６１】
図３（Ｐ）は幾何パターン決定用テーブル２５４のＮｏ．２１に登録されている「進路選択Ａ」の例である。矢印、実線、点線、信号機の表記の意味は図３（Ａ）と同様である。「進路選択Ａ」では、分類基準として重複端点数が１端点重複、重複端点種類が閉そく１の発点と閉そく２の発点となっており、これは図３（Ｐ）においては発点１と発点２が重複していることと対応している。また、幾何パターン分類基準として閉そく１に包含される閉そく２の端点数が０、閉そく１に包含される閉そく２の端点種類がなし、閉そく２に包含される閉そく１の端点数が０、閉そく２に包含される閉そく１の端点種類がなしとなっており、これは図３（Ｐ）においては発点１、着点１が閉そく２に含まれていないことおよび発点２、着点２が閉そく１に含まれていないことと対応している。ここで、端点の重複は包含には含まない。また、幾何パターン分類基準として閉そく１と閉そく２の方向関係が順方向となっており、これは図３（Ｐ）においては閉そく１、閉そく２とも方向が右方向であることと対応している。なお、幾何パターン分類基準には分岐器の数は含まれていないため、図３（Ｐ）に表記されている分岐器の数は幾何パターン種別の特定には関係ないが、当該幾何パターン種別を実現するためには最低１つの分岐器が必要である。
【００６２】
図３（Ｑ）は幾何パターン決定用テーブル２５４のＮｏ．２２に登録されている「進路選択Ｂ」の例である。矢印、実線、点線、信号機の表記の意味は図３（Ａ）と同様である。「進路選択Ｂ」では、分類基準として重複端点数が１端点重複、重複端点種類が閉そく１の発点と閉そく２の発点となっており、これは図３（Ｑ）においては発点１と発点２が重複していることと対応している。また、幾何パターン分類基準として閉そく１に包含される閉そく２の端点数が０、閉そく１に包含される閉そく２の端点種類がなし、閉そく２に包含される閉そく１の端点数が０、閉そく２に包含される閉そく１の端点種類がなしとなっており、これは図３（Ｑ）においては発点１、着点１が閉そく２に含まれていないことおよび発点２、着点２が閉そく１に含まれていないことと対応している。ここで、端点の重複は包含には含まない。また幾何パターン分類基準として閉そく１と閉そく２の方向関係が逆方向となっており、これは図３（Ｑ）においては閉そく１が右方向、閉そく２が左方向であることと対応している。なお、幾何パターン分類基準には分岐器の数は含まれていないため、図３（Ｑ）に表記されている分岐器の数は幾何パターン種別の特定には関係ないが、当該幾何パターン種別は分岐器がなくても実現可能である。
【００６３】
図３（Ｒ）は幾何パターン決定用テーブル２５４のＮｏ．２３に登録されている「進路選択Ｃ」の例である。矢印、実線、点線、信号機の表記の意味は図３（Ａ）と同様である。「進路選択Ｃ」では、分類基準として重複端点数が１端点重複、重複端点種類が閉そく１の発点と閉そく２の発点となっており、これは図３（Ｒ）においては発点１と発点２が重複していることと対応している。また、幾何パターン分類基準として閉そく１に包含される閉そく２の端点数が１、閉そく１に包含される閉そく２の端点種類が着点、閉そく２に包含される閉そく１の端点数が０、閉そく２に包含される閉そく１の端点種類がなしとなっており、これは図３（Ｒ）においては着点２が閉そく１に含まれていることと対応している。ここで、端点の重複は包含には含まない。また、幾何パターン分類基準として閉そく１と閉そく２の方向関係が順方向となっており、これは図３（Ｒ）においては閉そく１、閉そく２とも方向が右方向であることと対応している。なお、幾何パターン分類基準には分岐器の数は含まれていないため、図３（Ｒ）に表記されている分岐器の数は幾何パターン種別の特定には関係ないが、当該幾何パターン種別は分岐器がなくても実現可能である。
【００６４】
なお、幾何パターン決定用テーブル２５４のＮｏ．２４は幾何パターン決定用テーブル２５４のＮｏ．２３に対し、閉そく１と閉そく２の方向関係を逆方向としたものであるが、物理的に実現することは不可能である。
【００６５】
図３（Ｓ）は幾何パターン決定用テーブル２５４のＮｏ．２５に登録されている「終点両封鎖Ａ」の例である。矢印、実線、点線、信号機の表記の意味は図３（Ａ）と同様である。「終点両封鎖Ａ」では、分類基準として重複端点数が１端点重複、重複端点種類が閉そく１の着点と閉そく２の着点となっており、これは図３（Ｓ）においては着点１と着点２が重複していることと対応している。また、幾何パターン分類基準として閉そく１に包含される閉そく２の端点数が０、閉そく１に包含される閉そく２の端点種類がなし、閉そく２に包含される閉そく１の端点数が０、閉そく２に包含される閉そく１の端点種類がなしとなっており、これは図３（Ｓ）においては発点１、着点１が閉そく２に含まれていないことおよび発点２、着点２が閉そく１に含まれていないことと対応している。ここで、端点の重複は包含には含まない。また、幾何パターン分類基準として閉そく１と閉そく２の方向関係が順方向となっており、これは図３（Ｓ）においては閉そく１、閉そく２とも方向が右方向であることと対応している。なお、幾何パターン分類基準には分岐器の数は含まれていないため、図３（Ｓ）に表記されている分岐器の数は幾何パターン種別の特定には関係ないが、当該幾何パターン種別を実現するためには最低１つの分岐器が必要である。
【００６６】
図３（Ｔ）は幾何パターン決定用テーブル２５４のＮｏ．２６に登録されている「終点両封鎖Ｂ」の例である。矢印、実線、点線、信号機の表記は図３（Ａ）と同様である。「終点両封鎖Ｂ」では、分類基準として重複端点数が１端点重複、重複端点種類が閉そく１の着点と閉そく２の着点となっており、これは図３（Ｔ）においては着点１と着点２が重複していることと対応している。また、幾何パターン分類基準として閉そく１に包含される閉そく２の端点数が０、閉そく１に包含される閉そく２の端点種類がなし、閉そく２に包含される閉そく１の端点数が０、閉そく２に包含される閉そく１の端点種類がなしとなっており、これは図３（Ｔ）においては発点１、着点１が閉そく２に含まれていないことおよび発点２、着点２が閉そく１に含まれていないことと対応している。ここで、端点の重複は包含には含まない。また、幾何パターン分類基準として閉そく１と閉そく２の方向関係が逆方向となっており、これは図３（Ｔ）においては閉そく１が右方向、閉そく２が左方向であることと対応している。なお、幾何パターン分類基準には分岐器の数は含まれていないため、図３（Ｔ）に表記されている分岐器の数は幾何パターン種別の特定には関係ないが、当該幾何パターン種別は分岐器がなくても実現可能である。
【００６７】
図３（Ｕ）は幾何パターン決定用テーブル２５４のＮｏ．２７に登録されている「始終点片封鎖Ｃ」の例である。矢印、実線、点線、信号機の表記の意味は図３（Ａ）と同様である。「始終点片封鎖Ｃ」では、分類基準として重複端点数が１端点重複、重複端点種類が閉そく１の着点と閉そく２の着点となっており、これは図３（Ｕ）においては着点１と着点２が重複していることと対応している。また、幾何パターン分類基準として閉そく１に包含される閉そく２の端点数が１、閉そく１に包含される閉そく２の端点種類が発点、閉そく２に包含される閉そく１の端点数が０、閉そく２に包含される閉そく１の端点種類がなしとなっており、これは図３（Ｕ）においては発点２が閉そく１に含まれていることと対応している。ここで、端点の重複は包含には含まない。また、幾何パターン分類基準として閉そく１と閉そく２の方向関係が順方向となっており、これは図３（Ｕ）においては閉そく１、閉そく２とも方向が右方向であることと対応している。なお、幾何パターン分類基準には分岐器の数は含まれていないため、図３（Ｕ）に表記されている分岐器の数は幾何パターン種別の特定には関係ないが、当該幾何パターン種別は分岐器がなくても実現可能である。
【００６８】
なお、幾何パターン決定用テーブル２５４のＮｏ．２８は幾何パターン決定用テーブル２５４のＮｏ．２７に対し、閉そく１と閉そく２の方向関係を逆方向としたものであるが、物理的に実現することは不可能である。
【００６９】
図３（Ｖ）は幾何パターン決定用テーブル２５４のＮｏ．３０に登録されている「デッドロックＡ」の例である。矢印、実線、点線、信号機の表記の意味は図３（Ａ）と同様である。「デッドロックＡ」では、分類基準として重複端点数が２端点重複、重複端点種類が閉そく１の発点と閉そく２の着点および閉そく１の着点と閉そく２の発点となっており、これは図３（Ｖ）においては発点１と着点２が重複していることおよび着点１と発点２が重複していることと対応している。また、幾何パターン分類基準として閉そく１に包含される閉そく２の端点数が０、閉そく１に包含される閉そく２の端点種類がなし、閉そく２に包含される閉そく１の端点数が０、閉そく２に包含される閉そく１の端点種類がなしとなっており、これは図３（Ｖ）においては発点１、着点１が閉そく２に含まれていないことおよび発点２、着点２が閉そく１に含まれていないことと対応している。ここで、端点の重複は包含には含まない。また、幾何パターン分類基準として閉そく１と閉そく２の方向関係が逆方向となっており、これは図３（Ｖ）においては閉そく１が右方向、閉そく２が左方向であることと対応している。なお、幾何パターン分類基準には分岐器の数は含まれていないため、図３（Ｖ）に表記されている分岐器の数は幾何パターン種別の決定には関係ないが、当該幾何パターン種別は分岐器がなくても実現可能である。
【００７０】
なお、幾何パターン決定用テーブル２５４のＮｏ．２９は幾何パターン決定用テーブル２５４のＮｏ．３０に対し、閉そく１と閉そく２の方向関係を順方向としたものであるが、物理的に実現することは不可能である。
【００７１】
幾何パターン決定用テーブル２５４のＮｏ．３１は閉そく１と閉そく２が同一であることを表しており、特に幾何パターン種別は与えていない。幾何パターン決定用テーブル２５４のＮｏ．３２は幾何パターン決定用テーブル２５４のＮｏ．３１に対し、閉そく１と閉そく２の方向関係を順方向としたものであるが、物理的に実現することは不可能である。
【００７２】
図４（Ａ）は進路制御プログラム生成装置１００で使用する幾何パターン - 制御ロジック種別対応表３００の構成例である。幾何パターン - 制御ロジック種別対応表３００は幾何パターン種別、制御判断種別を要素として持つ。制御判断種別は予約対象閉そく選定、順序判断、閉そく照査を要素として持つ。幾何パターン種別には幾何パターン決定用テーブル２５４の２２の幾何パターン種別が格納されている。予約対象閉そく選定、順序判断、閉そく照査は、当該幾何パターンに対し制御ロジックとして予約対象閉そく選定、順序判断、閉そく照査のそれぞれが必要であるか否かを示す情報が格納されている。図４（Ａ）においては○が必要、×が不要を表している。
【００７３】
ここで、予約対象閉そく選定ロジックが必要な幾何パターンとは、二つの閉そくの発点が重複しているもの、または一方の閉そくの着点が他方の閉そくの発点と重複しているものであり、前者は（１２）順方向接続、（１３）逆方向接続Ａ、（１４）逆方向接続Ｂ、（１５）逆方向接続Ｃ、の幾何パターン種別のいずれかに分類される幾何パターン、後者は（１６）進路選択Ａ、（１７）進路選択Ｂ、（１８）進路選択Ｃの幾何パターン種別のいずれかに分類される幾何パターンが挙げられる。
【００７４】
順序判断ロジックが必要な幾何パターンとは、一方の閉そくの発点が他方の閉そくに重複も包含もされていないものであり、（１）交差Ａ、（２）交差Ｂ、（５）終点片封鎖Ａ、（６）終点片封鎖Ｂ、（９）終点両封鎖Ｃ、（１９）終点両封鎖Ａ、（２０）終点両封鎖Ｂの幾何パターン種別のいずれかに分類される幾何パターンが挙げられる。
【００７５】
閉そく照査ロジックが必要な幾何パターンとは、一方の閉そくの発点が他方の閉そくに重複も包含もされていないもの、あるいは幾何パターンを実現するために最低１つは分岐器が必要であるものであり、順序判断ロジックが必要な幾何パターンのほかに、（３）始点片封鎖Ａ、（４）始点片封鎖Ｂ、（１３）逆方向接続Ａ、（１６）進路選択Ａの幾何パターン種別のいずれかに分類される幾何パターンが挙げられる。
【００７６】
図４（Ｂ）は進路制御プログラム生成装置１００で使用する制御ロジックインデックステーブル４００の構成例である。制御ロジックインデックステーブル４００は制御判断種別、制御ロジック名称、制御ロジックＩＤを要素として持つ。制御判断種別は予約対象閉そく選定、順序判断、閉そく照査から成る。制御ロジック名称とは、予約対象閉そく選定、順序判断、閉そく照査のそれぞれを実現するロジックについて識別名称を与えたものが格納されている。制御ロジックＩＤとは制御ロジックモジュールを一意に識別するためのキーであり、制御ロジックライブラリ２５６に格納されている制御ロジックモジュールを選択するためのものである。制御ロジックライブラリ２５６に格納されている制御ロジックモジュールは制御ロジックＩＤを与えることにより一意に特定することができる。
【００７７】
図５は進路制御プログラム生成装置１００が実行する処理の全体の流れを表している。処理５００は進路制御プログラム生成装置１００の起動をトリガとして開始され、処理６００、９００、１２００、１４９０が実行される。  処理６００は線路配線入力部２１１によって実行され、線路配線および閉そくの入力を受け付ける処理である。ユーザから線路配線および閉そくの情報を受け付ける際には、進路制御プログラム生成装置１００は例えば図７に示す画面をユーザインタフェースとして表示する。
【００７８】
処理６００の詳細な流れを図６に示す。処理６００は進路制御プログラム生成装置１００の起動をトリガとして開始され、処理６１０、６１１、６１２、６１３、６１４、６２０、６２１を実行する。処理６００は線路配線入力部２１１が実行する処理である。
【００７９】
処理６１０は処理６１１、６１２、６１３、６１４を反復する処理であり、終了条件は図７に示す幾何パターン分析ステップへ進むボタン７０５の押下を受け付けた場合である。
【００８０】
処理６１１は図７に示す駅選択窓７１０へのユーザの入力を受け付け、入力対象となっている駅の情報を取得する処理である。図７において、駅とは例えば三笠駅７１２や銀天町駅７１３である。入力対象となっている駅は例えば駅を反転表示や破線表示することにより表示され、図７においては銀天町駅７１３が入力対象となっている。ユーザは、入力対象の駅が駅選択窓７１０に存在しない場合は駅追加ボタン７０４を押下することで入力対象の駅を追加することができる。また、前駅へボタン７４１を押下することで現在の入力対象駅の前駅を、後駅へボタン７４２を押下することで現在の入力対象駅の後駅へと入力対象駅を切り替えることができる。
【００８１】
処理６１２は図７に示す線路配線入力窓７３０へのユーザの入力を受け付け、線路配線の情報を取得する処理である。図７において、線路配線とは太実線で示された線であり、例えば線分７３７、７３８、７３９である。ユーザは例えば描画制御窓７２０の配線描画ボタン７２１が押下された状態で線路配線入力窓７３０に線路配線を入力することができる。また、ユーザは例えば描画制御窓７２０の配線描画ボタン７２２が押下された状態で線路配線入力窓７３０に入力された線路配線を消去することができる。ここで、配線描画ボタン７２１と配線描画ボタン７２２は同時に押下されないものとする。取得した線路配線情報は線路形状情報テーブル２５１に格納される。
【００８２】
処理６１３は図７に示す線路配線入力窓７３０へのユーザの入力を受け付け、閉そく形状情報を取得する処理である。図７において、閉そくとは二つの黒菱形に挟まれた線路領域であり、例えば閉そく７３３である。閉そく７３３は線路領域として線分７３７、７３８、７３９を内部に包含している。また、閉そく７３３の発点は黒菱形７３５、着点は黒菱形７３６である。閉そくの方向は例えば閉そく方向矢印７３１で示され、本例では右向きとなっている。ユーザは例えば描画制御窓７２０の閉そく定義ボタン７２３が押下された状態で線路配線入力窓７３０に閉そくを入力することができる。入力方法としては、例えば線路配線上の位置を選択することにより発点を決定し、次に線路配線上の別の位置を選択することにより着点を決定する。また、ユーザは例えば描画制御窓７２０の閉そく消去ボタン７２４が押下された状態で線路配線入力窓７３０に入力された閉そくを消去することができる。ここで、閉そく定義ボタン７２３と閉そく消去ボタン７２４は同時に押下されないものとする。なお、閉そくとは信号機の内方区間に設置された第一内方軌道回路から最終内方軌道回路までの線路領域を指しているため、ユーザは上記区間に一致するように閉そくを入力する。取得した閉そく情報は閉そく形状情報テーブル２５２に格納される。
【００８３】
処理６１４は図７に示す線路配線入力窓７３０へのユーザの入力を受け付け、隣駅境界情報を取得する処理である。図７において、隣駅境界は太矢印で表記されており、例えば隣駅境界７３１である。ユーザは例えば描画制御窓７２０の隣駅境界ボタン７２１が押下された状態で線路配線入力窓７３０に隣駅境界を入力することができる。隣駅境界は線分の端点にしか入力できない。なお、本例では線路配線入力窓７３０は駅単位で表示されているが、一度に多数の駅が表示されてもよい。この場合は隣駅境界の入力を省略することができる。取得した隣駅境界情報は閉そく形状情報テーブル２５２に格納される。
【００８４】
なお、ユーザは保存ボタン７０３を押下することにより入力された線路配線情報、閉そく情報、隣駅境界情報をファイルへと書き込むことができる。また、ファイル読込ボタン７０１を押下することによりファイルへと保存された線路配線情報、閉そく情報、隣駅境界情報を読み出すことができる。また、ファイル追加読込ボタン７０２を押下することによりファイルへと保存された線路配線情報、閉そく情報、隣駅境界情報を既存の入力内容に追加する形で読み込むことができる。この際、データの競合が起こった場合は例えば競合が起こった各データについて確認ダイアログを表示し、ユーザの選択を受け付けることにより解消することができる。
【００８５】
処理６２０は処理６１１−６１４で取得した線路配線情報、閉そく形状情報、隣駅境界情報の整合性をチェックする処理であり、幾何パターン分析ステップへ進むボタン７０５の押下をトリガとして実行される。整合性チェックは、例えば線路形状情報テーブル２５１に格納されているすべての線分が閉そく形状情報テーブル２５２に格納されているいずれかの閉そくに属しているかのチェックであり、線路形状情報テーブル２５１のすべての線路要素ＩＤについて、閉そく形状情報テーブル２５２の対応線路要素ＩＤの値として存在しているかを検索することにより実現できる。処理６２０により、信号機配置の誤りを検出することができる。
【００８６】
処理６２１は処理６２０のチェック結果を判定する処理であり、処理６２０の整合性チェックが失敗した場合、例えば図８のエラーメッセージ表示窓８０１を表示させることによりユーザに整合性チェックの失敗を通知する。ここで、エラー内容修正ボタン８０２が押下された場合は再び処理６１０を開始し、エラー内容無視ボタン８０３が押下された場合は処理６００を終了し、処理９００を開始する。
【００８７】
図５に戻って、処理９００は処理６００で入力された複数の閉そくについて、任意のすべての２閉そくの組について、信号機の発点および着点ならびに方向から幾何パターン種別を決定する処理であり、幾何パターン抽出部２１２によって実行される。この処理を実行する際、進路制御プログラム生成装置１００は例えば図１０に示す画面をユーザインタフェースとして表示する。
【００８８】
処理９００の詳細な流れを図９に示す。処理９００は処理６００の終了をトリガとして開始され、処理９１０、９２０、９２１、９２２、９２３、９２４、９２５、９３０、９３１を実行する。処理９００は幾何パターン抽出部２１２が実行する。
【００８９】
処理９１０は処理９２０を反復する処理であり、終了条件は閉そく形状情報テーブル２５２に登録されているすべての閉そくについて反復が完了することである。未処理の閉そくがある場合、その中の一つが選択される。
【００９０】
処理９２０は処理９２１、９２２、９２３、９２４、９２５を反復する処理であり、終了条件は閉そく形状情報テーブル２５２の処理９１０で既に選択された閉そくを除いたすべての閉そくについて反復が完了することである。未処理の閉そくがある場合、その中の一つ（ただし処理９１０で選択されている閉そく以外の閉そく）が選択される。
【００９１】
処理９２１は処理９１０で選択された閉そくと処理９２０で選択された閉そくについて発着点の重複をチェックする処理である。発着点の重複チェックは、例えば閉そく形状情報テーブル２５２の発点座標と着点座標を二つの閉そく間で比較を行うことにより実現できる。
【００９２】
処理９２２は処理９１０で選択された閉そくと処理９２０で選択された閉そくについて発着点の包含をチェックする処理である。発着点の包含チェックは、例えば一方の閉そくについて閉そく形状情報テーブル２５２の対応線路要素ＩＤから閉そくの内部点を判定し、他方の閉そくの発点座標と着点座標が前記内部点に包含されているかの判定を行うことにより実現できる。
【００９３】
処理９２３は処理９１０で選択された閉そくと処理９２０で選択された閉そくについて方向をチェックする処理である。方向のチェックは、例えば閉そく形状情報テーブル２５２の方向を二つの閉そく間で比較し、同一の場合は順方向、異なる場合は逆方向とすることにより実現できる。
【００９４】
処理９２４は処理９２１、９２２、９２３のチェック結果を幾何パターン決定用テーブル２５４と照合し、幾何パターン種別を決定する処理である。幾何パターン決定用テーブル２５４との照合は、例えば処理９２１の結果を幾何パターン決定用テーブル２５４の重複端点数、重複端点種類と照合し、処理９２２の結果を幾何パターン決定用テーブル２５４の閉そく１に包含される閉そく２の端点数、閉そく１に包含される閉そく２の端点種類、閉そく２に包含される閉そく１の端点数、閉そく２に包含される閉そく１の端点種類と照合し、処理９２３の結果を幾何パターン決定用テーブル２５４の閉そく１と閉そく２の方向関係からと照合し、すべてが合致した行の幾何パターン種別を取得することにより実現できる。
【００９５】
処理９２５は処理９２４で決定された幾何パターン種別を幾何パターン格納テーブル２５３に格納する処理である。例えば、閉そくＩＤとしてＢｌｏｃｋ＿＃１、Ｂｌｏｃｋ＿＃２を持つ二つの閉そくについて、処理９２４の結果が（１６）進路選択Ａであった場合は、幾何パターン格納テーブル２５３の幾何パターン種別に１６を、閉そく１ＩＤにＢｌｏｃｋ＿＃１を、閉そく２ＩＤにＢｌｏｃｋ＿＃２を格納する。
【００９６】
処理９３０は閉そく形状情報テーブル２５２および幾何パターン格納テーブル５２３に格納された情報を図１０に示す線路形状グラフ表示窓１０２０へと表示する処理である。図１０において、閉そく形状情報テーブル２５２に格納されている閉そくは例えば閉そくＦ１０２１のように表示される。また、幾何パターン格納テーブル５２３に格納されている幾何パターン種別は、二つの閉そく間をつなぐ線または矢印のパターンによって表示される。たとえば閉そくＤと閉そくＦの間の幾何パターン種別は順方向接続幾何パターン１０２２のように表示される。幾何パターン種別は、例えば幾何パターン一覧窓１０１０の幾何パターンアイコン１０１１によりユーザが識別できるように表示する。なお、ユーザによる幾何パターンアイコン１０１１の押下を契機に線路形状グラフ表示窓１０２０の該当する幾何パターンをハイライト表示してもよい。
【００９７】
処理９４０は処理９１０の結果について整合性をチェックする処理である。整合性チェックは、例えば閉そくへ列車が進入するための幾何パターン種別がすべての閉そくに対して定義されているかのチェックである。閉そく形状情報テーブル２５２に登録されたすべての閉そくについて、幾何パターン格納テーブル５２３の閉そく１ＩＤまたは閉そく２ＩＤが当該閉そくであり、かつ幾何パターン種別の値として１２、１３、１４、１５が格納されているものが少なくとも一つ存在しているかを検索することにより実現できる。処理９３０により、信号機配置の妥当性を検証することができる。
【００９８】
処理９４１は処理９４０のチェック結果を判定する処理である。処理９３０の整合性チェックが失敗した場合、例えば図１１のエラーメッセージ表示窓１１０１およびエラー範囲１１０２を表示させることによりユーザに整合性チェックの失敗を通知する。ここで、エラー内容修正ボタン１１０３が押下された場合は再び処理６００を開始し、エラー内容無視ボタン１１０４が押下された場合は処理９４０を実行する。
【００９９】
処理９５０はユーザによる制御ロジック選択ステップへ進むボタン１００１の押下を待ち受ける処理であり、制御ロジック選択ステップへ進むボタン１００１の押下をトリガとして処理９００を終了し、処理１２００を開始する。
【０１００】
図５に戻って処理１２００は処理９００で幾何パターン種別を定義された２閉そく間の幾何パターンに制御ロジックを対応付ける処理であり、例えば図１３に示す画面をユーザインタフェースとして提供する。処理１２００の詳細な流れを図１２に示す。処理１２００は処理９００の終了をトリガとして開始され、処理１２１０、１２１１、１２１２、１２１３、１２１４、１２２０を実行する。処理１２００は制御ロジック選択部２１３が実行する処理である。
【０１０１】
処理１２１０は処理１２１１、１２１２、１２１３、１２１４、を反復する処理であり、終了条件はプログラム動作確認ステップへ進むボタン１３０１の押下を受け付けることである。
【０１０２】
処理１２１１は線路形状グラフ表示窓１０２０から制御ロジック選択の対象となっている幾何パターン（すなわち、二つの閉そく区間の組）を取得する処理である。ユーザは図１３に示す線路形状グラフ表示窓１０２０から任意の幾何パターンを選択することで、制御ロジック選択の対象とする幾何パターンを指定することができる。今、図１３において、制御ロジック選択の対象となっている幾何パターンは閉そくＪと閉そくＫの間に定義されている幾何パターンである。ここで、ユーザが制御ロジック選択の対象となっている幾何パターンを容易に識別できるように制御ロジック選択の対象となっている幾何パターンをハイライト表示してもよい。
【０１０３】
処理１２１２は制御ロジック入力窓１３１０を画面上に表示する処理である。ここで、制御ロジック入力窓１３１０の表示項目は、制御ロジック選択の対象となっている幾何パターンの幾何パターン種別を幾何パターン - 制御ロジック種別対応表３００（図４（Ａ）参照）と照合することにより決定する。図１３の例では、制御ロジック選択の対象となっている幾何パターンの幾何パターン種別は（１９）終点両封鎖Ａであり、幾何パターン - 制御ロジック種別対応表３００の幾何パターン種別が（１９）終点両封鎖Ａに該当する行の制御判断種別は予約対象閉そく選定が×、順序判断が○、閉そく照査が×となっている。従って、制御ロジック入力窓１３１０には順序判断、閉そく照査が表示されている。
【０１０４】
処理１２１３は制御ロジック入力窓１３１０から制御ロジックの指定を取得する処理である。ユーザは制御ロジック入力窓１３１０のプルダウンメニュー１３１１から制御ロジックを選択し設定することができる。処理１２１３ではプルダウンメニューに設定された制御ロジックの指定を取得する。ここで、プルダウンメニュー１３１１に表示される制御ロジックは制御ロジックインデックステーブル４００（図４(Ｂ)参照）に登録されているものである。なお、ユーザが不正な制御ロジックを選択することを防止するため、制御ロジックインデックステーブル４００に登録されている制御ロジックのうち、制御判断種別がプルダウンメニュー１３１１に対応する制御判断種別と異なるものを非表示としてもよい。また、既に他の幾何パターンについて選択された制御ロジックが制御ロジック選択の対象となっている幾何パターンで選択された制御ロジックと干渉し不正動作する可能性がある場合、プルダウンメニュー１３１１において当該制御ロジックを非表示としてもよい。また、処理１２２０において制御ロジックの干渉を検出し、干渉が検出された場合はエラー表示窓を画面上にポップアップさせてもよい。ここで、既に他の幾何パターンで選択された制御ロジックが制御ロジック選択の対象となっている幾何パターンで選択された制御ロジックと干渉し不正動作する場合とは、例えば閉そくＡと閉そくＢの間の幾何パターンＴ１と、閉そくＡおよび閉そくＣとの間の幾何パターンＴ２に順序判断が必要な場合に、Ｔ１では順序判断の制御ロジックとして制御ロジックインデックステーブル４００のダイヤ時刻順が設定されているが、Ｔ２では順序判断の制御ロジックとして制御ロジックインデックステーブル４００の列車位置順が設定されている場合である。制御ロジックインデックステーブル４００のダイヤ時刻順、列車時刻順の詳細については後述する。また、ユーザはインポートボタン１３１２を押下することにより、制御ロジックインデックステーブル４００に登録されていない制御ロジックを外部ファイルからインポートすることができる。インポートするファイルは例えば制御ロジックの処理内容を記述したソースコードファイルや当該ソースコードファイルをコンパイルした実行可能モジュールファイルである。また、属性設定ボタン１３１３を押下することにより選択された制御ロジックのパラメータを設定することができる。なお、制御ロジックの選択が完了した幾何パターンは例えばアイコンを付与することによりユーザが容易に識別できるようにしてもよい。また、線路形状グラフ表示窓９２０に拡大、縮小ボタンを追加することにより画面を拡大、縮小できるようにしてもよい。
【０１０５】
処理１２１４は１２１３で選択されたもしくはインポートされた制御ロジック情報を選択済制御ロジック格納テーブル２５５に格納する処理である。処理１２１４は、制御ロジック入力窓１３１０の入力確定ボタン１３１４の押下を受け付けたことをトリガとして開始され、制御ロジック入力窓１３１０のプルダウンメニュー１３１１から入力された制御ロジックを取得し、対応する制御ロジックＩＤを選択済制御ロジック格納テーブル２５５へと格納する。なお、処理１２１３後にキャンセルボタン１３１５が押下された場合、処理１２１４では何も行わずに処理１２１１へと移行する。
【０１０６】
処理１２２０はユーザによるプログラム動作確認ステップへ進むボタン１３０１の押下を待ち受ける処理であり、プログラム動作確認ステップへ進むボタン１３０１の押下を受け付けたのをトリガとして処理１２００を終了し、処理１４９０を開始する。
【０１０７】
図５に戻って、処理１４９０は処理６００で生成した閉そく形状情報テーブル２５２、処理９００で生成した幾何パターン格納テーブル、処理１２００で生成した選択済制御ロジック格納テーブル２５５および予め進路制御プログラム生成装置１００の内部に保持している制御ロジックライブラリ２５６、鉄道運行管理コアモジュール２５７から、進路制御装置９９００を実現するためのプログラムである進路制御プログラム１４００を生成し、動作確認画面を表示する処理である。
【０１０８】
処理１４９０の詳細な流れを図１４（Ｈ）に示す。処理１４９０は処理１２００の終了をトリガとして開始され、処理１４９１、１４９２、１４９３、１４９４、１４９５を実行する。処理１４９０はプログラムモジュール結合部が実行する処理である。
【０１０９】
処理１４９１は幾何パターン格納テーブル２５３（図２（Ｃ）参照）と選択済制御ロジック格納テーブル２５５（図２（Ｄ）参照）から、図１４（Ｃ）に示す幾何情報テーブル１４８２を生成する処理である。幾何情報テーブル１４８２の生成は、例えば幾何パターン格納テーブル２５３と選択済制御ロジック格納テーブル２５５の両者で幾何パターンＩＤが同一の行を検索、連結することにより実現できる。
【０１１０】
処理１４９２は幾何パターン格納テーブル２５３（図２（Ｃ）参照）と閉そく形状情報テーブル２５２（図２（Ｂ）参照）から、図１４（Ｄ）に示す閉そく情報テーブル１４８３を生成する処理である。閉そく情報テーブル１４８３の幾何パターンＩＤ項については、閉そく形状情報テーブル２５２の閉そくＩＤのそれぞれについて、幾何パターン格納テーブル２５３の閉そく１ＩＤ、閉そく２ＩＤから一致するものを検索し、対応する幾何パターンＩＤを抽出することにより特定できる。閉そく情報テーブル１４８３の駅項や関連設備項は、地上設備群情報管理部１４５２の設備状態１４８７から取得した地上設備群９９４０の状態を閉そくと関連付けるためのキー情報であり、例えばファイルとして予め定義されたものを読み込むことにより生成する。あるいは、例えばユーザが図１０の線路形状グラフ表示窓において閉そくＦ１０２１を選択した際に、設備入力画面を表示するなどの方法によりユーザから閉そくに関連付けるべき地上設備群の指定を受け付けて、駅項や関連設備項の入力としてもよい。
【０１１１】
処理１４９３は選択済制御ロジック格納テーブル２５５（図２（Ｄ）参照）に現れる制御ロジックを制御ロジックライブラリ２５６から選択し、制御ロジックモジュール群１４８６を生成する処理である。制御ロジックモジュール群１４８６の生成は、例えば制御ロジックライブラリ２５６内の各制御ロジックをオブジェクトファイルとして管理しておき、選択済制御ロジック格納テーブル２５５に現れる制御ロジックに対応するオブジェクトファイルを抽出して制御ロジックモジュール群１４８６へ格納することにより実現する。
【０１１２】
処理１４９４は鉄道運行管理コアモジュールライブラリ２５７、幾何情報テーブル１４８２（図１４（Ｃ））、閉そく情報テーブル１４８３（図１４（Ｄ））、制御ロジックモジュール群１４８６から進路制御プログラム１４００を生成する処理である。すなわち処理１４９４では、処理１４９１で生成された幾何情報テーブル１４８２、処理１４９２で生成された閉そく情報テーブル１４８３、処理１４９３で生成された制御ロジックモジュール群１４８６と、予め鉄道運行管理コアモジュールライブラリ２５６の内部に格納されているモジュールである閉そく予約管理部１４１０、計画系システム情報管理部１４５１、地上設備群情報管理部１４５２、通信管理部１４６０、入力インタフェース１４７１、出力インタフェース１４７２、予約処理中間データ格納テーブル１４８１、閉そく状態テーブル１４８４、閉そく進入列車テーブル１４８５、列車ダイヤ１４８７、設備状態１４８８とを結合させることにより進路制御プログラム１４００を生成する。
【０１１３】
処理１４９４で生成される進路制御プログラム１４００のソフトウェア構成例を図１４（Ａ）に示す。進路制御プログラム１４００は閉そく予約管理部１４１０、計画系システム情報管理部１４５１、地上設備群情報管理部１４５２、通信管理部１４６０、入力インタフェース１４７１、出力インタフェース１４７２から構成される。
【０１１４】
閉そく予約管理部１４１０は、計画系システム情報管理部１４５１、地上設備群情報管理部１４５２からそれぞれ列車ダイヤ１４８７および設備状態１４８８を受け取り、閉そくの予約処理を通じて信号機の制御状態を演算し、地上設備群情報管理部１４５２へ信号機制御要求を出力する部分である。閉そく予約管理部１４１０によって閉そくが予約された際には、閉塞予約管理部が出力する信号機制御要求に基づいて、進路制御装置９９００は地上装置９９２０に対し、当該閉そくを防護区間とする信号機の進行現示制御要求を行う。
【０１１５】
計画系システム情報管理部１４５１は、計画系システム９９１０から例えば列車ダイヤなどの計画情報を受け取り、閉そく予約管理部１４１０の要求に応じて情報を提供する部分である。
【０１１６】
地上設備群情報管理部１４５２は、地上装置９９２０から例えば設備状態などの地上設備群情報を受け取り、閉そく予約管理部１４１０の要求に応じて情報を提供する部分である。また、閉そく予約管理部１４１０から信号機制御要求を受け取り、地上装置９９２０へと信号機制御要求を出力する部分である。
【０１１７】
通信管理部１４６０は、例えば計画系システム９９１０や地上装置９９２０などの外部装置との通信を管理する部分である。入力インタフェース１４７１、出力インタフェース１４７２は、例えば計画系システム９９１０や地上装置９９２０などの外部装置との通信を実行する部分である。
【０１１８】
図１４（Ｂ）は進路制御プログラム１４００で使用する予約処理中間データ格納テーブル１４８１の一例を示す。  予約処理中間データ格納テーブル１４８１は予約要求閉そく、予約対象閉そく、前回予約対象閉そくを要素として持ち、それぞれ現在処理中の予約要求閉そく、予約対象閉そく、前回予約対象閉そくの値（識別情報）が格納されている。予約処理中間データ格納テーブル１４８１に格納される値は、進路制御プログラム１４００が実行されるとその処理の中で更新される。詳細は後述する。
【０１１９】
図１４（Ｃ）は進路制御プログラム１４００で使用する幾何情報テーブル１４８２の一例を示す。幾何情報テーブル１４８２は幾何パターンＩＤ、幾何パターン種別、閉そく１ＩＤ、閉そく２ＩＤ、予約対象閉そく選定ロジック、順序判断ロジック、閉そく照査ロジック（閉そく１→閉そく２）、閉そく照査ロジック（閉そく２→閉そく１）を要素として持つ。幾何パターンＩＤ、幾何パターン種別、閉そく１ＩＤ、閉そく２ＩＤは幾何パターン格納テーブル２５３と、予約対象閉そく選定ロジック、順序判断ロジック、閉そく照査ロジック（閉そく１→閉そく２）、閉そく照査ロジック（閉そく２→閉そく１）は選択済制御ロジック格納テーブルと同一である。
【０１２０】
図１４（Ｄ）は進路制御プログラム１４００で使用する閉そく情報テーブル１４８３の一例を示す。閉そく情報テーブル１４８３は閉そくＩＤ、幾何パターン、駅、関連設備を要素として持つ。幾何パターンには、閉そくＩＤで特定される閉そくと他閉そくとの間に定義されているすべての幾何パターンの幾何パターンＩＤが格納されている。駅には、閉そくＩＤで特定される閉そくが所属する駅が格納されている。関連設備には、閉そくＩＤで特定される閉そくの閉そく内の設備状態を決定するために必要なすべての設備が格納されている。ここで、当該閉そくの閉そく内設備状態を決定するために必要なすべての設備とは、例えば当該閉そくが指す線路領域内にある軌道回路、当該閉そくを防護区間としている信号機、当該閉そくが指す線路領域内にある転轍機や踏切、当該閉そくを防護区間としている信号機に対して停止現示指示を行うてこである線路閉鎖てこがある。ある閉そくが予約された場合（後述する閉そく状態テーブル１４８４の予約状態が「予約中」になった場合）には、閉そく情報テーブル１４８３において当該閉そくに対応する関連設備として登録されている信号機に対して、進路制御プログラム１４００が進行現示制御要求を出力する。
【０１２１】
図１４（Ｅ）は進路制御プログラム１４００で使用する閉そく状態テーブル１４８４の一例を示す。閉そく状態テーブル１４８４は閉そくＩＤ、予約状態、予約列車、在線列車、列車在線位置、閉そく内設備状態を要素として持つ。予約状態には、閉そくＩＤで指定される閉そくが列車により予約されている場合は予約中が、そうでない場合は未予約が格納されている。予約列車は当該閉そくが予約中の状態である場合に当該閉そくを予約している列車の識別子が格納されている。在線列車には、当該閉そくに列車が在線していた場合に当該列車の識別子が格納されている。列車在線位置には、当該閉そくに列車が在線していた場合に当該列車の閉そく内における位置が格納されている。在線列車および在線位置は、地上設備群情報管理部１４８８が随時地上設備群９９４０から収集する情報に基づいて更新される。閉そく内設備状態には、当該閉そくに関連する全ての設備が制御可能であるかが格納されており、例えば制御可能と制御不可の２値をとる。当該閉そくに関連する全ての設備が制御可能であるかの決定は、例えば閉そく情報テーブル１４８３の当該閉そくに対応する関連設備項のすべての設備群の状態を参照し、すべての設備が制御可能な条件を満たしているかをチェックすることにより行う。
【０１２２】
図１４（Ｆ）は進路制御プログラム１４００で使用する閉そく進入列車テーブル１４８５の一例を示す。閉そく進入列車テーブル１４８５は閉そくＩＤ、進入予定列車、未進入／進入済を要素として持つ。進入予定列車には列車運行計画上において、閉そくＩＤで指定される閉そくへと進入する予定の列車の識別子を進入時刻順に並べたものが格納されており、例えば列車ダイヤ１４８７の経由閉そくから当該閉そくの閉そくＩＤを検索し、対応する列車ＩＤを経由時刻順に並べることにより作成される。未進入／進入済には、前記列車が既に閉そくに進入したかが格納されており、例えばまだ進入していない場合には未進入、既に進入している場合は進入済を格納する。未進入／進入済の情報も、地上設備群情報管理部１４８８が随時地上設備群９９４０から収集する情報に基づいて更新される。
【０１２３】
図１４（Ｇ）は進路制御プログラム１４００で使用する列車ダイヤ１４８７の一例を示す。列車ダイヤ１４８７は列車ＩＤ、経由閉そく、経由時刻を要素として持つ。列車ＩＤは列車を一意に識別するためのキーであり、例えば列車番号である。経由閉そくには、当該列車が列車運行計画上で経由する予定となっている閉そくがすべて格納されている。経由閉そくは、例えば計画系システム９９１０から入力インタフェース１４７１、通信管理部１４６０を介して通信を行うことにより取得する。計画系システム９９１０から取得した列車運行計画が閉そく単位で作成されていなかった場合は、例えば計画系システム情報管理部１４５１内部に変換ルール定義テーブルを作成しておき、列車運行計画を閉そく単位の計画へと変換する。列車運行計画が閉そく単位で作成されていなかった場合とは、例えば駅の番線ごとに列車の発着時刻が与えられている場合などである。経由時刻には当該列車が前記閉そくを経由する時刻が格納されている。列車ダイヤ１４８７は、計画系システム９９１０から入力インタフェース１４７１、通信管理部１４６０を介して取得する。
【０１２４】
図１４（Ｈ）に戻って、処理１４９５は、処理１４９４で生成された進路制御プログラム１４００を実行し、実行結果をユーザへ提示する処理であり、例えば図１９に示す画面をユーザインタフェースとして表示する。
【０１２５】
進路制御プログラム１４００は初期化ボタン２１０２の押下を受け付けることにより初期化される。プログラム内での時刻はプログラム実行制御窓２１１０に表示され、ユーザはプログラム内時刻２１１１をキーボード等の入力装置を介して操作することにより指定のプログラム内時刻の状態を、進路制御プログラム１４００に再現させることができる。また、ユーザは時刻コントローラ２１１２を介して進路制御プログラム１４００の早送り、巻き戻し、一時停止、一時停止解除を指示することができる。
【０１２６】
進路制御プログラム１４００の内部状態は線路形状グラフ表示窓２１３０に表示される。線路形状グラフ表示窓２１３０に表示されるのは、線路形状グラフ窓１０２０に表示される線路形状情報に、閉そく状態テーブル１４８４の内容を反映させた情報である。予約中の閉そくは、例えば閉そくＢ２１３２のように二重線表示（反転表示としてもよい）することにより識別できるようにする。未予約の閉そくは、例えば閉そくＬ２１３３のように点線表示することにより識別できるようにする。いずれかの列車により予約が試行されたが失敗した閉そくは、例えば閉そくＤ２１３４のように実線表示することにより識別できるようにしてもよい。また、このとき予約を試行した列車を例えば予約試行列車アイコン２１３５により、失敗の原因となった制御ロジックを予約失敗原因制御ロジックアイコン２１３６により識別できるようにしてもよい。図１９においては、予約試行列車アイコン２１３５は列車Ｔが閉そくＤ２１３４の予約を試みたが失敗したことを示している。また、予約失敗原因制御ロジックアイコン２１３６は予約失敗した原因は閉そく照査ロジックの実行結果が失敗であったためであることを示している。
【０１２７】
ユーザが線路形状グラフ表示窓２１３０から例えば閉そくや幾何パターンを選択すること、この選択を受け付けた進路制御プログラム１４００は情報表示窓２１２０に当該閉そくや幾何パターンの詳細情報を表示することができる。情報表示窓２１２０に表示されるのは、閉そく状態テーブル１４８４、閉そく情報テーブル１４８３、閉そく進入列車テーブル１４８５、幾何情報テーブル１４８２に登録されている情報である。例えば図１９においては、閉そくＥ２１３７が選択状態となっており、情報表示窓２１２０には閉そくＥ２１３７の名称、在線列車、列車位置、保有設備情報が表示されている。ユーザは線路形状グラフ表示窓２１３０を確認することで進路制御プログラム１４００の内部状態を把握することができる。また、同時にプログラム実行制御窓２１１０を通じてプログラム時間を操作することにより、各時間断面においてプログラムが正常動作しているかを確認することができる。プログラムがユーザの意図通りに動作しない場合、情報表示窓２１２０を確認することで原因を究明することができる。尚、図１９に示す画面は、生成されたプログラムのチェックのために進路制御プログラム１４００が実行された場合だけでなく、列車の進路制御のために進路制御プログラム１４００が進路制御装置９９００で実行された場合にも進路制御プログラム１４００によって出力されることとしても良い。
【０１２８】
処理１４９４で生成される進路制御プログラム１４００の処理の流れを、閉そく予約管理部１４１０の処理を中心に図１５に示す。図１５に示す処理フローは、先述の処理１４９５で進路制御プログラム１４００が実行される際や、処理１４９４で生成された進路制御プログラム１４００が進路制御装置９９００にインストールされて進路制御装置で実行される際の処理フローに相当する。
【０１２９】
進路制御プログラム１４００は先述の通り例えば図１９に示す画面をユーザインタフェースとして提供する。処理１５００は図１９の初期化ボタン２１０２の押下を受け付けたことをトリガとして開始され、処理１５１０、１５１１、１５２０、１５２１、１５２２、１５２３、１５２４、１５２５、１５２６、１５３０、１５３１、１５３２、１５３３が実行される。処理１５００は例えば２秒周期といった指定周期ごとに反復されてもよいし、地上設備群９９２０や計画系システム９９１０から状態変更を受け取ることをトリガとして実行されてもよい。 
処理１５１０は前回処理結果をクリアする処理であり、全ての閉そくに対し、閉そく状態テーブル１４８４の予約状態項、予約列車項をクリアする。
【０１３０】
処理１５１１は閉そく予約処理の起点となる閉そくを検索する処理であり、閉そく状態テーブル１４８４の在線列車項に列車が格納されている閉そくを特定する。
【０１３１】
処理１５２０は閉そくの予約を実行する処理であり、処理１５１１で特定された全ての閉そくについて反復される。ここで、反復して実行される処理１５２１以降の処理の各回について、処理の対象として処理１５１１で特定された複数の閉そくの中から選ばれる一の閉そくを以下では予約要求閉そくと呼称する。
【０１３２】
処理１５２１は予約要求閉そくの閉そくＩＤを予約処理中間データ格納テーブル１４８１の予約要求閉そく、および前回予約対象閉そく項にセット（記録）する処理である。
【０１３３】
処理１５２２は閉そく情報テーブル１４８３から、予約処理中間データ格納テーブル１４８１に前回予約対象閉そくとして登録されている閉そくＩＤを検索し、この閉そくＩＤに対応する全ての幾何パターンを取得する処理である。
【０１３４】
処理１５２３は、処理１５２２で取得した幾何パターンのうち、幾何パターン - 制御ロジック種別対応表３００の予約対象閉そく選定項に○が格納されている幾何パターンについて、幾何情報テーブル１４８２から対応する予約対象閉そく選定ロジックを決定して、実行し、結果を予約処理中間データ格納テーブル１４８１の予約対象閉そく項にセットする処理である。ここで、予約対象閉そく選定ロジックの詳細については後述する。
【０１３５】
処理１５２４は閉そく情報テーブル１４８３から予約処理中間データ格納テーブル１４８１に予約対象閉そくとして登録されている閉そくＩＤを検索し、この閉そくＩＤに対応する全ての幾何パターンを取得する処理である。
【０１３６】
処理１５２５は、処理１５２４で取得した幾何パターンのうち、幾何パターン - 制御ロジック種別対応表３００の順序判断項に○が格納されている幾何パターンについて、幾何情報テーブル１４８２から対応する順序判断ロジックを決定して、実行する処理である。ここで、順序判断ロジックの詳細については後述する。 
処理１５２６は、処理１５２４で取得した幾何パターンのうち、幾何パターン - 制御ロジック種別対応表３００の閉そく照査項に○が格納されている幾何パターンについて、幾何情報テーブル１４８２から対応する閉そく照査ロジックを決定して、実行する処理である。ここで、閉そく照査ロジックの詳細については後述する。
【０１３７】
処理１５３０は、処理１５２５、１５２６の実行結果がすべて成功であるかを判定する処理である。すべて成功である場合は処理１５３１に移行し、一つでも失敗していた場合は処理１５２０の反復処理に戻って、他の閉そくを処理１５１１で特定された複数の閉そくの中から選択してこれを予約要求閉そくとして処理を続ける。
【０１３８】
処理１５３１は、閉そく状態テーブル１４８４から予約処理中間データ格納テーブル１４８１に予約対象閉そくとして登録されている閉そくＩＤを検索し、当該閉そくＩＤに対応する予約状態項に予約済をセットする処理である。
【０１３９】
処理１５３２は、閉そく状態テーブル１４８４から、予約処理中間データ格納テーブル１４８１に予約対象閉そくとして登録されている閉そくＩＤと、予約処理中間データ格納テーブル１４８１に予約要求閉そくとして登録されている閉そくＩＤとを検索する。そして、予約要求閉そくとして登録されている閉そくＩＤに対応する在線列車の識別情報を、予約対象閉そくとして登録されている閉そくＩＤに対応する予約列車項にセットする処理である。
【０１４０】
処理１５３３は、予約処理中間データ格納テーブル１４８１に予約対象閉そくとして登録されている閉そくＩＤを予約処理中間データ格納テーブル１４８１の前回予約対象閉としてセットする処理である。
【０１４１】
図１５の処理１５２３で実行される予約対象閉そく選定ロジックは、予約処理の対象となる閉そくを決定するためのロジックであり、例えば優先進路選択ロジックやダイヤ進路選択ロジックが挙げられる。優先進路選択ロジックでは、（１６）進路選択Ａ、（１７）進路選択Ｂ、（１８）進路選択Ｃの幾何パターン種別の関係にある二つの閉そくに対して予め優先順位を付けておき、列車が当該２閉そくのどちらかを予約対象閉そくとして選択する際には優先順位が高い閉そくを選択する。この際、優先順位が高い閉そくが既に列車が在線しているなどの理由により予約できない場合には、優先順位が低い閉そくを予約対象閉そくとして選択する。ダイヤ進路選択ロジックでは、予め列車の進路を例えばダイヤにより定義しておき、列車が当該２閉そくのどちらかを予約対象閉そくとして選択する際には例えばダイヤ上で進路と定義された閉そくを列車の進路として選択する。ダイヤ進路選択ロジックの一例について処理の流れを図１６に示す。
【０１４２】
処理１６００は、予約対象閉そく選定ロジックの一例であるダイヤ進路選択ロジックの例であり、進路制御プログラム１４００は処理１６１０、１６２０、１６３０、１６３１、１６３２、１６４０、１６４１、１６５０を実行する。
【０１４３】
処理１６１０は、幾何情報テーブル１４８２を参照して、処理１５２２で取得した幾何パターンのうち、（１２）順方向接続、（１３）逆方向接続Ａ、（１４）逆方向接続Ｂ、（１５）逆方向接続Ｃのいずれかの幾何パターン種別に属し、かつ閉そく１が予約処理中間データ格納テーブル１４８１の前回予約対象閉そくと一致するものの数をカウントする処理である。
【０１４４】
処理１６２０は処理１６１０でカウントした幾何パターンの数が１に等しいかどうかを判定する処理である。処理１６１０でカウントした幾何パターンの数が１である場合は処理１６５０を実行し、２以上である場合は処理１６３０を実行する。なお、０である場合は列車が進行できる進路がないため、処理１６００を終了する。
【０１４５】
処理１６５０は、処理１６１０でカウントした幾何パターンの数が１に等しい場合に実行される処理である。ここで、処理１６１０でカウントした幾何パターンの数が１に等しいとは、前回予約対象閉そくに在線している列車が次に進入することができる閉そくがただ一つであることを意味している。処理１６５０では、処理１６１０でカウントされた幾何パターンについて幾何情報テーブル１４８２に登録されている閉そく１、閉そく２項のうち、予約処理中間データ格納テーブル１４８１の予約対象閉そくと一致しない方を、予約処理中間データ格納テーブル１４８１の予約対象閉そくとしてセットする。処理１６５０の完了により処理１６００は終了される。
【０１４６】
処理１６３０は処理１６１０でカウントした幾何パターンの数が２以上の場合に実行される処理である。ここで、処理１６１０でカウントした幾何パターンの数が２以上であるとは、前回予約対象閉そくに在線している列車が次に進入することができる閉そくが複数あり、列車はその中から一つを選択し進行しなければならないことを意味している。処理１６３０では、処理１６１０でカウント対象となったすべての幾何パターンについて処理１６３１、１６３２、１６４０を反復する。
【０１４７】
処理１６３１は、前回予約対象閉そくに在線している列車が次に進入することができる閉そくを抽出する処理である。処理１６３１では、今回の処理で対象としている幾何パターンに対し、幾何情報テーブル１４８２の対応する閉そく１、閉そく２項を参照し、そのうち予約処理中間データ格納テーブル１４８１の予約対象閉そくと一致しない方を選択する。
【０１４８】
処理１６３２は、処理１６３１で抽出した閉そくが列車のダイヤ上における進路と合致しているかを判定する処理である。処理１６３２では、閉そく状態テーブル１４８４の予約要求閉そくの在線列車項に格納されている列車について、１６３１で選択した閉そくが列車ダイヤ１４８６の当該列車の経由閉そく項に含まれているかを判定する。
【０１４９】
処理１６４０は、処理１６３２の判定結果により分岐を行う処理である。処理１６３２の判定結果が「含まれている」である場合、処理１６４１を実行する。「含まれていない」である場合、処理１６３０に戻る。
【０１５０】
処理１６４１は、１６３２で選択した閉そくを予約処理中間データ格納テーブル１４８１の予約対象閉そくとしてセットする処理である。処理１６４１の完了により処理１６００は終了される。
【０１５１】
図１５の処理１５２５で実行される順序判断ロジックは、閉そくの予約にあたり列車の運行順序を満たしているかを判定する処理であり、例えばダイヤ時刻順ロジックと列車位置順ロジックが挙げられる。ここで、列車の運行順序は必ずしも計画系システム９９１０により列車運行計画として与えられる必要はないが、少なくとも閉そくの予約によりデッドロックが発生しないことを保証するものでなければならない。デッドロックとは、例えば単線区間に上り列車と下り列車が同時に進入することにより発生する。順序判断ロジックは、予約対象閉そくに対応する幾何パターンが、幾何パターン - 制御ロジック種別対応表３００（図４（Ａ））の順序判断列に○が記入されている幾何パターン種別である（１）交差Ａ、（２）交差Ｂ、（５）終点片封鎖Ａ、（６）終点片封鎖Ｂ、（９）終点両封鎖Ｃ、（１９）終点両封鎖Ａ、（２０）終点両封鎖Ｂのいずれかに分類される場合に実行され、これらの幾何パターン種別に属する幾何パターンが複数存在する場合はそのすべてに対して実行される。
【０１５２】
順序判断ロジックとしてダイヤ時刻順ロジックが用いられる場合、先述の幾何パターン種別（１）交差Ａ、（２）交差Ｂ、（５）終点片封鎖Ａ、（６）終点片封鎖Ｂ、（９）終点両封鎖Ｃ、（１９）終点両封鎖Ａ、（２０）終点両封鎖Ｂのいずれかの関係をもつ２つの閉そくである閉そく１、閉そく２に対して、例えばダイヤにより列車が当該２閉そくに進入する順序を定義しておき、列車Ｔが閉そく１または閉そく２に進入する際に、列車Ｔが順序上で一位でなければ列車Ｔによる閉そく１または閉そく２の予約を許可しない。
【０１５３】
ダイヤ時刻順ロジックの一例について処理の流れを図１７に示す。
【０１５４】
処理１７００は順序判断ロジックの一例であるダイヤ時刻順ロジックの例であり、進路制御プログラム１４００は処理１７１０、１７２０、１７２１、１７２２、１７２３、１７２４、１７３０、１７３１、１７３２を実行する。
【０１５５】
処理１７１０は、処理１５２４で取得した幾何パターンから、幾何パターン - 制御ロジック種別対応表３００（図４（Ａ））の順序判断列に○が記入されている幾何パターン種別である（１）交差Ａ、（２）交差Ｂ、（５）終点片封鎖Ａ、（６）終点片封鎖Ｂ、（９）終点両封鎖Ｃ、（１９）終点両封鎖Ａ、（２０）終点両封鎖Ｂのいずれかに属するものすべて抽出する処理である。
【０１５６】
処理１７２０は、処理１７１０で抽出した全ての幾何パターンについて処理１７２１、１７２２、１７２３、１７２４を反復する処理である。ここで、処理１７２１から処理１７２４では、処理の対象となっている幾何パターンに対応する２つの閉そくについてダイヤ上で定義された進入予定列車の進入順序を参照し、予約要求閉そくに在線している列車が当該閉そくにおける進入順序の一位であるかを判定する。この判定を実行するにあたり、以下の等価な２条件に分解して考える。条件１は、予約要求閉そくに在線している列車が、処理対象となっている幾何パターンに対応する２閉そくのうち予約対象閉そくと合致する閉そくに対して、ダイヤ上で次に進入する列車であることである。条件２は、処理対象となっている幾何パターンに対応する２閉そくのうち予約対象閉そくではない方の閉そくに次に進入する列車の当該閉そくに対する進入時刻が、予約要求閉そくに在線している列車の予約対象閉そくに対する進入時刻より早いことである。このうち、条件１はダイヤの不整合がなければ必ず満たされる条件であるため、図１７に示す処理では明示的に条件チェックを行っていないが、ダイヤの妥当性検証を狙い明示的に条件チェックを行ってもよい。
【０１５７】
処理１７２１は、処理１７２０で対象としている幾何パターンに対し、幾何情報テーブル１４８２の対応する閉そく１、閉そく２項を参照し、そのうち予約処理中間データ格納テーブル１４８１の予約対象閉そくと一致しない方を選択する処理である。
【０１５８】
処理１７２２は、処理１７２１で選択した閉そくに対し、閉そく進入列車テーブル１４８４の未進入/進入済項が未進入であるもののうち進入順序が最も早い列車を判定する処理である。
【０１５９】
処理１７２３は、列車ダイヤ１４８７を参照し、列車ＩＤ項が処理１７２２で選択した列車と一致し、かつ経由閉そく項が処理１７２１で選択した閉そくと一致する行の経由時刻項を取得する処理である。
【０１６０】
処理１７２４は、閉そく状態テーブル１４８４から予約要求閉そくに在線している列車を特定し、特定された列車について列車ダイヤ１４８６から予約対象閉そくに対応する経由時刻を取得する処理である。
【０１６１】
処理１７３０は、処理１７２４で取得した時刻が処理１７２３で取得した時刻より早いかどうかを判定する処理である。
【０１６２】
処理１７２４で取得した時刻が１７２３で取得した時刻より早い場合は、別の幾何パターンについて処理１７２１から処理１７２４を実行する。処理１７１０で特定した全ての幾何パターンについて処理１７３０において処理１７２４で取得した時刻が処理１７２３で取得した時刻より早いとの判定が行われた場合は、処理１７３１を実行し、実行結果として成功を返却する。
【０１６３】
一方で、処理１７３０において処理１７２４で取得した時刻が処理１７２３で取得した時刻より早いと判断された場合は、処理１７３２を実行し、実行結果として失敗を返却する。
【０１６４】
ここで、処理１７２４で取得した時刻が処理１７２３で取得した時刻と同じ場合は、例えばエラーメッセージをディスプレイに出力し、ユーザが成功または失敗を手動で指示するなどの方法により結果を決定する。あるいは、予め二つの閉そくに優先順位を定義しておき、予約対象閉そくが他方の閉そくより優先順位が高い場合は成功を、そうでない場合は失敗を返却してもよい。    図１５の処理１５２６で実行される閉そく照査ロジックは、閉そくの予約にあたり列車の衝突や脱線が起こらないことを担保するための処理であり、例えば列車在線照査ロジックや列車位置照査ロジックが挙げられる。閉そく照査ロジックは、予約対象閉そくに対応する幾何パターンが、幾何パターン - 制御ロジック種別対応表３００の閉そく照査列に○が記入されている幾何パターン種別である（１）交差Ａ、（２）交差Ｂ、（３）始点片封鎖Ａ、（４）始点片封鎖Ｂ、（５）終点片封鎖Ａ、（６）終点片封鎖Ｂ、（９）終点両封鎖Ｃ、（１３）逆方向接続Ａ、（１６）進路選択Ａ、（１９）終点両封鎖Ａ、（２０）終点両封鎖Ｂのいずれかに分類される場合に実行され、複数の幾何パターン種別に分類される場合はそのすべてに対して実行される。
【０１６５】
列車在線照査ロジックでは、（１）交差Ａ、（２）交差Ｂ、（３）始点片封鎖Ａ、（４）始点片封鎖Ｂ、（５）終点片封鎖Ａ、（６）終点片封鎖Ｂ、（９）終点両封鎖Ｃ、（１３）逆方向接続Ａ、（１６）進路選択Ａ、（１９）終点両封鎖Ａ、（２０）終点両封鎖Ｂのいずれかの幾何パターン種別の関係をもつ２つの閉そくである閉そく１、閉そく２のいずれか一方を列車Ｔが予約しようとする際に、他方の閉そくに既に他の列車が在線していた場合には、列車Ｔによる閉そく１または閉そく２の予約を許可しない。
【０１６６】
列車位置照査ロジックでは、（１）交差Ａ、（２）交差Ｂ、（３）始点片封鎖Ａ、（４）始点片封鎖Ｂ、（５）終点片封鎖Ａ、（６）終点片封鎖Ｂ、（９）終点両封鎖Ｃ、（１３）逆方向接続Ａ、（１６）進路選択Ａ、（１９）終点両封鎖Ａ、（２０）終点両封鎖Ｂのいずれかの幾何パターン種別の関係をもつ２つの閉そくである閉そく１、閉そく２に対して、予め閉そく内に基準位置Ｐを定義しておく。列車Ｔが閉そく１または閉そく２を予約する際に、他方の閉そくに既に他の列車Ｕが在線しており、かつ列車Ｕの在線位置が基準位置Ｐよりも前である場合には列車Ｔによる閉そく１または閉そく２の予約を許可しない。 
列車在線照査ロジックの一例について処理の流れを図１８に示す。
【０１６７】
処理１８００は閉そく照査ロジックの一例である列車位置照査ロジックの例であり、進路制御プログラム１４００は処理１８１０、１８２０、１８２１、１８２２、１８３０、１８３１、１８３２を実行する。
【０１６８】
処理１８１０は、処理１５２４で取得した幾何パターンから、幾何パターン - 制御ロジック種別対応表３００の閉そく照査列に○が記入されている幾何パターン種別である（１）交差Ａ、（２）交差Ｂ、（３）始点片封鎖Ａ、（４）始点片封鎖Ｂ、（５）終点片封鎖Ａ、（６）終点片封鎖Ｂ、（９）終点両封鎖Ｃ、（１３）逆方向接続Ａ、（１６）進路選択Ａ、（１９）終点両封鎖Ａ、（２０）終点両封鎖Ｂのいずれかに分類されるものをすべて抽出する処理である。
【０１６９】
処理１８２０は、処理１８１０で抽出した全ての幾何パターンについて処理１８２１、１８２２、１８３０を反復する処理である。
【０１７０】
処理１８２１は、処理対象としている幾何パターンに対し、幾何情報テーブル１４８２の対応する閉そく１、閉そく２項を参照し、そのうち予約処理中間データ格納テーブル１４８１の予約対象閉そくと一致しない方を選択する処理である。
【０１７１】
処理１８２２は、処理１８２１で選択した閉そくに既に列車が在線しているかを判定する処理である。処理１８２２では、処理１８２１で選択した閉そくに対し、閉そく状態テーブル１４８４の対応する在線列車項に列車がセットされているかを判定する。
【０１７２】
処理１８３０は処理１８２２の結果を判定する処理である。
【０１７３】
処理１８２１で選択した閉そくに列車が在線していなかった場合は、処理１８１０で抽出された他の幾何パターンについて、処理１８２１から処理１８３０を実行する。処理１８１０で抽出された幾何パターンすべてについて、処理１８２１で選択した閉そくに列車が在線していなかった場合は、処理１８３１を実行し、実行結果として成功を返却する。
【０１７４】
一方で、処理１８２１で選択した閉そくに列車が在線していた場合は、処理１８３２を実行し、実行結果として失敗を返却する。
【０１７５】
ここまで、発明の実施形態を説明したが、これは一例に過ぎない。また鉄道運行管理システムにおける進路制御装置を実現するプログラムの生成は、発明の一実施形態にすぎない。これ以外にも、軌道上を移動する物体を制御するための装置であり、軌道が一定の区間に分割されており、かつ当該区間に対し同時に高々一つの物体しか存在することができず、かつどの区間に物体が存在するかを取得可能な装置を実現するプログラムの生成に、本発明は広く用いることができる。この場合は、区間を閉そくと、物体を列車と置き換えることにより、これまでに説明した実施形態と同様の手順でプログラムの生成を実現することができる。
【符号の説明】
【０１７６】
１００・・・進路制御プログラム生成装置
２１１・・・線路配線入力部
２１２・・・幾何パターン抽出部
２１３・・・制御ロジック選択部
２１４・・・プログラムモジュール結合部
２２０・・・コントローラ部
２３０・・・画面管理部
２４１・・・入力インタフェース
２４２・・・出力インタフェース
２５１・・・線路形状情報テーブル
２５２・・・閉そく形状情報テーブル
２５３・・・幾何パターン格納テーブル
２５４・・・幾何パターン決定用テーブル
２５５・・・選択済制御ロジック格納テーブル
２５６・・・制御ロジックライブラリ
２５７・・・鉄道運行管理コアモジュールライブラリ
３００・・・幾何パターン−制御ロジック種別対応表
４００・・・制御ロジックインデックステーブル
１４００・・・進路制御プログラム
１４１０・・・閉そく要約管理部
１４５１・・・計画系システム情報管理部
１４５２・・・地上設備群情報管理部
１４６０・・・通信管理部
１４７１・・・入力インタフェース
１４７２・・・出力インタフェース
９９００・・・進路制御装置
９９１０・・・計画系システム
９９２０・・・地上装置
９９３０・・・列車
９９４０・・・地上設備群
【図１（Ａ）】
0005624956.tif 000002
【図１（Ｂ）】
0005624956.tif 000003
【図２（Ａ）】
0005624956.tif 000004
【図２（Ｂ）】
0005624956.tif 000005
【図２（Ｃ）】
0005624956.tif 000006
【図２（Ｄ）】
0005624956.tif 000007
【図２（Ｅ）】
0005624956.tif 000008
【図３（Ａ）】
0005624956.tif 000009
【図３（Ｂ）】
0005624956.tif 000010
【図３（Ｃ）】
0005624956.tif 000011
【図３（Ｄ）】
0005624956.tif 000012
【図３（Ｅ）】
0005624956.tif 000013
【図３（Ｆ）】
0005624956.tif 000014
【図３（Ｇ）】
0005624956.tif 000015
【図３（Ｈ）】
0005624956.tif 000016
【図３（Ｉ）】
0005624956.tif 000017
【図３（Ｊ）】
0005624956.tif 000018
【図３（Ｋ）】
0005624956.tif 000019
【図３（Ｌ）】
0005624956.tif 000020
【図３（Ｍ）】
0005624956.tif 000021
【図３（Ｎ）】
0005624956.tif 000022
【図３（Ｏ）】
0005624956.tif 000023
【図３（Ｐ）】
0005624956.tif 000024
【図３（Ｑ）】
0005624956.tif 000025
【図３（Ｒ）】
0005624956.tif 000026
【図３（Ｓ）】
0005624956.tif 000027
【図３（Ｔ）】
0005624956.tif 000028
【図３（Ｕ）】
0005624956.tif 000029
【図３（Ｖ）】
0005624956.tif 000030
【図４（Ａ）】
0005624956.tif 000031
【図４（Ｂ）】
0005624956.tif 000032
【図５】
0005624956.tif 000033
【図６】
0005624956.tif 000034
【図７】
0005624956.tif 000035
【図８】
0005624956.tif 000036
【図９】
0005624956.tif 000037
【図１０】
0005624956.tif 000038
【図１１】
0005624956.tif 000039
【図１２】
0005624956.tif 000040
【図１３】
0005624956.tif 000041
【図１４（Ａ）】
0005624956.tif 000042
【図１４（Ｂ）】
0005624956.tif 000043
【図１４（Ｃ）】
0005624956.tif 000044
【図１４（Ｄ）】
0005624956.tif 000045
【図１４（Ｅ）】
0005624956.tif 000046
【図１４（Ｆ）】
0005624956.tif 000047
【図１４（Ｇ）】
0005624956.tif 000048
【図１４（Ｈ）】
0005624956.tif 000049
【図１５】
0005624956.tif 000050
【図１６】
0005624956.tif 000051
【図１７】
0005624956.tif 000052
【図１８】
0005624956.tif 000053
【図１９】
0005624956.tif 000054
【図２０】
0005624956.tif 000055
【図２１】
0005624956.tif 000056