(57)【要約】      （修正有）【課題】鉄道運行管理システムの列車運行をシミュレーションする装置において、ダイヤが定まっていない状況下であっても動作可能な列車運行シミュレータを提供する。【解決手段】気象・災害情報および人流情報を更新するステップ５１０と、物理状態をシミュレートするステップと、列車経路の生成および災害による不通部が発生した際の列車の経路変更を行うステップ５３０と、列車経路上の信号機を制御するステップ５７０と、デッドロック発生時の状態巻き戻しおよびデッドロック再発を防ぐ順序制約の付与を行うステップにより列車経路や順序情報を自動設定しつつデッドロックの発生を回避する。【選択図】図５（Ａ）
2015013487.tif 000002
【特許請求の範囲】
【請求項１】
列車の設備に関する設備情報及び、列車の在線位置を含む列車情報を列車運行シミュレーション装置に送信する計画系システムと、
列車の環境に関する環境情報を前記列車運行シミュレーション装置に送信する外部装置と、
前記計画系システムから取得した前記設備情報を記憶する設備情報記憶部と、
前記計画系システムから取得した前記列車情報を記憶する列車情報記憶部と、
前記外部装置から取得した環境情報を更新する環境情報更新部と、
前記環境情報に基づいて、前記設備情報と前記列車情報を更新し、列車の走行経路を算出する列車走行経路更新部と、
を備える列車運行シミュレーション装置と、
を備えることを特徴とする列車運行管理システム。
【請求項２】
請求項１に記載の列車運行管理システムにおいて、
前記列車運行シミュレーション装置の前記列車走行経路更新部は、
前記環境情報と前記設備情報に基づいて、線路が不通となる線路不通範囲を算出し、前記線路不通範囲に関連する列車について、走行経路を変更する列車と決定し、走行経路を更新する
ことを特徴とする列車運行管理システム。
【請求項３】
請求項２に記載の列車運行管理システムにおいて、
前記列車運行シミュレーション装置は、
予め優先させる走行線路を記憶する優先度記憶部を更に備え、
前記列車走行経路更新部は、前記走行経路が複数算出された場合、閉そくの方向と閉そくの着点部にある線路の優先方向が不一致である閉そくの長さの総和が最も短い経路を選択する
ことを特徴とする列車運行管理システム。
【請求項４】
請求項３に記載の列車運行管理システムにおいて、
前記列車運行シミュレーション装置は、
算出された前記走行経路を評価する列車走行状況評価部を更に備え、
前記優先度記憶部では、予め列車の優先度も記憶し、
前記列車走行状況評価部は、算出された前記走行経路についてデッドロックの発生を検知し、前記デッドロックの発生が検知された場合には、前記列車の優先度に基づいて列車の走行順序を変更する
ことを特徴とする列車運行管理システム。
【請求項５】
列車の設備に関する設備情報を記憶する設備情報記憶部と、
列車の在線位置を含む列車情報を記憶する列車情報記憶部と、
環境情報を取得する環境情報更新部と、
前記環境情報に基づいて、前記設備情報と前記列車情報を更新し、列車の走行経路を算出する列車走行経路更新部と
を備えることを特徴とする列車運行シミュレーション装置。
【請求項６】
請求項５に記載の列車運行シミュレーション装置において、
前記列車走行経路更新部は、
前記環境情報と前記設備情報に基づいて、線路が不通となる線路不通範囲を算出し、前記線路不通範囲に関連する列車について、走行経路を変更する列車と決定し、走行経路を更新する
ことを特徴とする列車運行シミュレーション装置。
【請求項７】
請求項６に記載の列車運行シミュレーション装置において、
予め優先させる走行線路を記憶する優先度記憶部を更に備え、
前記列車走行経路更新部は、前記走行経路が複数算出された場合、閉そくの方向と閉そくの着点部にある線路の優先方向が不一致である閉そくの長さの総和が最も短い経路を選択する
ことを特徴とする列車運行シミュレーション装置。
【請求項８】
請求項７に記載の列車運行シミュレーション装置において、
算出された前記走行経路を評価する列車走行状況評価部を更に備え、
前記優先度記憶部では、予め列車の優先度も記憶し、
前記列車走行状況評価部は、算出された前記走行経路についてデッドロックの発生を検知し、前記デッドロックの発生が検知された場合には、前記列車の優先度に基づいて列車の走行順序を変更する
ことを特徴とする列車運行シミュレーション装置。
【請求項９】
列車運行シミュレーション装置において実行される列車運行シミュレーション方法において、
列車運行シミュレーション装置は、
列車の設備に関する設備情報を記憶し、
列車の在線位置を含む列車情報を記憶し、
環境情報を取得し、
前記環境情報に基づいて、前記設備情報と前記列車情報を更新し、列車の走行経路を算出する
ことを特徴とする列車運行シミュレーション方法。
【請求項１０】
請求項９に記載の列車運行シミュレーション方法において、
列車運行シミュレーション装置は、
前記環境情報と前記設備情報に基づいて、線路が不通となる線路不通範囲を算出し、前記線路不通範囲に関連する列車について、走行経路を変更する列車と決定し、走行経路を更新する
ことを特徴とする列車運行シミュレーション方法。
【請求項１１】
請求項１０に記載の列車運行シミュレーション方法において、
予め優先させる走行線路を記憶し、
前記走行経路が複数算出された場合、閉そくの方向と閉そくの着点部にある線路の優先方向が不一致である閉そくの長さの総和が最も短い経路を選択する
ことを特徴とする列車運行シミュレーション方法。
【請求項１２】
請求項１１に記載の列車運行シミュレーション方法において、
算出された前記走行経路を評価し、
予め列車の優先度も更に記憶し、
算出された前記走行経路についてデッドロックの発生を検知し、前記デッドロックの発生が検知された場合には、前記列車の優先度に基づいて列車の走行順序を変更する
ことを特徴とする列車運行シミュレーション方法。
【発明の詳細な説明】
【技術分野】
【０００１】
列車運行管理システム、列車運行シミュレーション装置及び列車運行シミュレーション方法に関する。
【背景技術】
【０００２】
コンピュータ制御の発展に伴い、列車の運行管理は従来の駅員による信号機制御から鉄道運行管理システムによる自動信号機制御へと移り変わってきた。鉄道運行管理システムにおいて、信号機の制御は進路制御装置によりコントロールされている。進路制御装置は、地上設備の状態、列車の在線位置、そして予め定められた列車の運行計画であるダイヤに従って信号機を制御する装置である。
【０００３】
ここで、鉄道運行管理システムは多数の列車や旅客が関わる複雑なシステムであり、運行計画や制御方式、設備配置といった様々な要素の協調が不可欠である。列車走行のシミュレーションを実現する技術として、特許文献１に記載の技術がある。特許文献１に記載の技術では、簡易駅シミュレータによって、不稼動駅の自動認識とその駅システムをシミュレートする代替シミュレータの生成、削除を自動的に行い、定常走行での計画ダイヤと実績ダイヤの差分の補正および予告実績による走行時間の自動調整、運転整理入力装置の運転整理ジャーナルと実績ダイヤによる在線位置を簡易駅シミュレータ上で再現することが記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００１−３５４１３９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら特許文献1に記載の技術では、実績ダイヤによる在線位置を簡易駅シミュレータ上で再現しているため、ダイヤ情報を使用しなければ列車の運行シミュレーションを実行することができない。例えば、新線開通や線区間直通運転などの効果を試算するといった上流フェイズにおいては厳密なダイヤが決定していないケースも多く、特に都市部のように線路網が複雑かつ多数の列車が運行するエリアでは、ダイヤの作成は専門の技術者を動員した長期に渡る検討を要する。また、自然災害といった不測の事態が発生した際には厳密なダイヤの再作成は困難であり、災害時の代替プラン立案といった用途への適用も限定的である。さらに、シミュレーション対象に旅客が含まれていないため、人流へ及ぼす効果を算定することはできない。
【０００６】
そのため、ダイヤ情報を使用せずに列車の運行シミュレーションを行うことが求められている。
【課題を解決するための手段】
【０００７】
開示する列車運行管理システムは、計画系システム、外部装置及び列車運行シミュレーション装置を備える。計画系システムは、列車の設備に関する設備情報及び、列車の在線位置を含む列車情報を列車運行シミュレーション装置に送信し、外部装置は、列車の環境に関する環境情報を列車運行シミュレーション装置に送信し列車運行シミュレーション装置の設備情報記憶部は、計画系システムから取得した記設備情報を記憶し、列車情報記憶部は、計画系システムから取得した列車情報を記憶し、環境情報更新部は、外部装置から取得した環境情報を取得し、列車走行経路更新部は、環境情報に基づいて、設備情報と列車情報を更新し、列車の走行経路を算出する。
【発明の効果】
【０００８】
本実施形態によれば、ダイヤ情報を使用せずに列車の運行シミュレーションを行うことが可能となる。
【図面の簡単な説明】
【０００９】
【図１】鉄道運行管理システムの全体構成例である。
【図２】列車運行シミュレーション装置のハードウェア構成例である。
【図３】列車運行シミュレーション装置のソフトウェア構成例である。
【図４（Ａ）】気象・災害情報テーブルの一例である。
【図４（Ｂ）】人流情報テーブルの一例である。
【図４（Ｃ）】列車情報テーブルの一例である。
【図４（Ｄ）】設備情報テーブルの一例である。
【図４（Ｅ）】閉そく情報テーブルの一例である。
【図４（Ｆ）】幾何情報テーブルの一例である。
【図４（Ｇ）】順序情報テーブルの一例である。
【図５（Ａ）】全体処理フローの例である。
【図５（Ｂ）】設備・列車情報更新部が実行する処理フローの例である。
【図５（Ｃ）】列車走行経路更新部が実行する処理フローの例である。
【図５（Ｄ）】列車走行経路更新部が実行する処理フローの例である。
【図５（Ｅ）】列車走行経路更新部が実行する処理フローの例である。
【図５（Ｆ）】列車走行状況評価部が実行する処理フローの例である。
【図５（Ｇ）】列車走行状況評価部が実行する処理フローの例である。
【図６】列車走行状況評価部が表示する画面の一例である。
【発明を実施するための形態】
【００１０】
以下、本発明の一実施形態を図１〜図６を参照して詳細に説明する。
【００１１】
図１は列車運行計画と列車の在線位置や信号機、転轍機などの設備状態を監視しながら列車の運行を管理する鉄道運行管理システムのシステム全体構成例で、進路制御装置１００と計画系システム１１０と地上装置１２０と列車１３０と地上設備群１４０（図では軌道回路１４１と信号機１４２と転轍機１４３のみ記載）から構成される。
【００１２】
進路制御装置１００は計画系システム１１０によって決定された列車ダイヤ情報および地上設備１２０によって収集された地上設備群１４０の状態をネットワークを介して受信して内部に保持しており、軌道回路１４１から得られる列車１３０の在線位置と列車ダイヤ情報に記載された出発時刻や計画進路を参照して列車１３０の進路上に設置されている信号機１４２や転轍機１４３を地上装置１４０を介して制御する。
【００１３】
計画系システム１１０は列車ダイヤや車両運用計画、点検・保守計画など列車の運行に関連する計画の作成を支援するシステムで、進路制御装置１００とネットワークを介して接続されている。
【００１４】
地上装置１４０は進路制御装置１００とネットワークを介して接続されており、進路制御装置１００からの制御要求に対して信号機１４２、転轍機１４３の反位制御を行う。また信号機１４２や転轍機１４３の状態(定位／反位)や軌道回路１４１の状態(落下／扛上)を監視し、結果を進路制御装置１００に伝達する。
【００１５】
列車１３０は内部にＡＴＳ(Ａｕｔｏｍａｔｉｃ  Ｔｒａｉｎ  Ｓｔｏｐ)やＡＴＣ(Ａｕｔｏｍａｔｉｃ  Ｔｒａｉｎ  Ｃｏｎｔｒｏｌ)といった列車の自動停止や自動制御を行うための安全装置、車上の詳細な動作状態や故障情報を収集・表示・記録する情報管理システムなどの車上装置を有している。また車上装置が有する情報はデジタル無線を介して地上装置１２０に送信する事が可能である。進路制御装置１００は列車１３０の在線位置を軌道回路１４１の状態を用いることにより、あるいは車上装置が自列車の位置を算出または計測して、デジタル無線を介して地上装置に伝達することにより判断する。
【００１６】
後述する列車運行シミュレーション装置２００では、進路制御装置１００と計画系システム１１０と地上装置１２０と列車１３０と地上設備群１４０の状態をシミュレートする。
【００１７】
図２は列車運行シミュレーション装置２００のハードウェア構成例である。列車運行シミュレーション装置のハードウェアは、中央処理装置１１０と主記憶装置１２０と内部バス１３０とバスインタフェース１４０と外部バス１５０と入出力装置１６０と入出力装置インタフェース１６１と大容量記憶装置１７０と大容量記憶装置インタフェース１７１と通信装置１８０と通信装置インタフェース１８１から構成される。
【００１８】
中央処理装置１１０はプログラム実行等の演算を行うためのプロセッサである。主記憶装置１２０はプログラム実行時の処理領域および計画系システム１１０や地上装置１２０との送受信に使用するデータの一時格納領域として使用し、例えばＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）などの基本プログラムや基本データを格納する。更に主記憶装置１２０は、環境情報更新部３１１、列車・設備状態更新部３１２、列車走行経路更新部３１３、信号機制御部３１４、列車走行状況評価部３１５、コントローラ部３２０、画面管理部３３０、入力インタフェース３４１、出力インタフェース３４２を実現するプログラムをプログラム実行時に一時的に格納する。中央処理装置１１０と主記憶装置１２０は内部バス１３０により接続されており、内部バス１３０はバスインタフェース１４０を介して外部バス１５０に接続されている。
【００１９】
入出力装置１６０はディスプレイやキーボード、マウスなど、ユーザとのインターフェースデバイスおよび外部媒体に読み書き可能なドライブ装置などであるである。ユーザはキーボードやマウスなどの入力デバイスを用いてプログラムの実行を制御することができる。
【００２０】
大容量記憶装置１７０は例えばＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）といった装置であり、基本プログラムや処理結果、環境情報更新部３１１、列車・設備状態更新部３１２、列車走行経路更新部３１３、信号機制御部３１４、列車走行状況評価部３１５、コントローラ部３２０、画面管理部３３０、入力インタフェース３４１、出力インタフェース３４２を実現するプログラムなどを永続的に記憶することができる。各種処理実行の際には中央処理装置１１０が主記憶装置１２０にプログラムを読み出して実行する。また、気象・災害情報テーブル３５１、人流情報テーブル３５２、列車情報テーブル３６１、設備情報テーブル３６２、閉そく情報テーブル３６３、幾何情報テーブル３６４、順序情報テーブル３６５、列車走行実績３７１、シミュレーションログ３７２などの各種データが格納される。 
通信装置１８０は例えばＥｔｈｅｒｎｅｔ（登録商標）といった外部サーバ装置などと接続するための装置であり、ネットワークを通じて進路制御装置１００と外部サーバ装置との間で情報の入出力を行うことができる。通信装置１８０を用いることにより、例えば進路制御装置１００の機能をネットワークを通じた先に接続されている計算機に対してサービスとして提供することが可能となる。
【００２１】
入出力装置１６０と大容量記憶装置１７０と通信装置１８０はそれぞれ入出力装置インタフェース１６１と大容量記憶装置インタフェース１７１と通信装置インタフェース１８１を介して外部バス１５０と接続されている。入出力装置１６０や大容量記憶装置１７０、通信装置１８０を含めた構成を列車運行シミュレーション装置２００であるとしてもよい。
【００２２】
図３は列車運行シミュレーション装置２００のソフトウェア構成例である。列車運行シミュレーション装置２００のソフトウェアは、環境情報更新部３１１、列車・設備状態更新部３１２、列車走行経路更新部３１３、信号機制御部３１４、列車走行状況評価部３１５、コントローラ部３２０、画面管理部３３０、入力インタフェース３４１、出力インタフェース３４２と気象・災害情報テーブル３５１、人流情報テーブル３５２、列車情報テーブル３６１、設備情報テーブル３６２、閉そく情報テーブル３６３、幾何情報テーブル３６４、順序情報テーブル３６５、列車走行実績３７１、シミュレーションログ３７２から構成される。
【００２３】
環境情報更新部３１１、列車・設備状態更新部３１２、列車走行経路更新部３１３、信号機制御部３１４、列車走行状況評価部３１５、コントローラ部３２０、画面管理部３３０、入力インタフェース３４１、出力インタフェース３４２を実現するプログラムは実行時に大容量記憶装置１７０から主記憶装置１２０へと展開され、中央処理装置１１０により演算が行われる。また、プログラムの実行により生成された気象・災害情報テーブル３５１、人流情報テーブル３５２、列車情報テーブル３６１、設備情報テーブル３６２、閉そく情報テーブル３６３、幾何情報テーブル３６４、順序情報テーブル３６５、列車走行実績３７１、シミュレーションログ３７２は主記憶装置１２０へと展開される。ユーザはキーボードやマウス、ディスプレイなどの入出力装置１６０を介して入力インタフェース３４１へと指示を与えることによりプログラムの実行を制御することができる。また、入出力装置１６０として着脱可能で可搬性のある記憶媒体を用いることによりデータの入出力を行うことができる。通信装置１８０を通じ、他の装置との間で入出力を行うこともできる。各機能部を実現するプログラムは、予め大容量記憶装置１７０に格納されていてもよいし、利用可能な媒体を介して他の装置から大容量記憶装置１７０や主記憶装置１２０に導入されてもよい。媒体とは、例えば、入出力装置１６０としては着脱可能な記憶媒体、または、通信装置１８０としてはネットワーク、ネットワークを伝搬する搬送波やデジタル信号などの通信媒体を指す。
【００２４】
環境情報更新部３１１は、外部ファイルから入力インタフェース３４１を介して気象・災害情報テーブル３５１、人流情報テーブル３５２を更新する部分である。外部ファイルには予め気象・災害情報テーブル３５１、人流情報テーブル３５２の時間変化が記録されている。ユーザはＧＵＩから入力インタフェース３４１を介してこれらのテーブルを直接書き換えてもよい。ここで、環境情報とは、気象や災害等の情報および旅客の人流情報である。本実施例では、環境情報を用いて列車運行シミュレーションを行うことにより、災害時等の運行シミュレーションを煩雑なダイヤ変更を行うことなく実行できる。また、人流情報を含めたシミュレーションにより、列車運行サービスの維持能力測定や危険ポテンシャルの予測、災害対策立案と対策効果測定等を容易に実施できる。
【００２５】
列車・設備状態更新部３１２は列車在線位置や設備状態、人流の変化を算出し、列車情報テーブル３６１、設備情報テーブル３６２、人流情報テーブル３５２の更新を行う部分である。また、列車の走行実績を列車走行実績３７１に、気象・災害情報テーブル３５１、人流情報テーブル３５２、列車情報テーブル３６１、設備情報テーブル３６２、閉そく情報テーブル３６３、順序情報テーブル３６５の現在状態をシミュレーションログ３７２に格納する部分である。また、気象、災害情報テーブル３５１、人流情報テーブル３５２、列車情報テーブル３６１、設備情報テーブル３６２、閉そく情報テーブル３６３、幾何情報テーブル３６４、順序情報テーブル３６５、列車走行実績３７１の内容について出力インタフェース３４２を介してＧＵＩへと表示する部分である。
【００２６】
列車走行経路更新部３１３は、経路が定まっていない列車について列車経路を算出し、列車情報テーブル３６１に登録する部分である。また、気象・災害情報テーブル３５１、設備情報テーブル３６２、閉そく情報テーブル３６３から線路の不通部を決定し、当該不通部を経路上に持つ列車について経路変更を実施する部分である。変更結果は列車情報テーブル３６１に登録される。
【００２７】
信号機制御部３１４は、列車情報テーブル３６１、設備情報テーブル３６２、順序情報テーブル３６５を用いて信号機の制御を行い、設備情報テーブル３６２を更新する部分である。
【００２８】
列車走行状況評価部３１５は閉そく情報テーブル３６３、幾何情報テーブル３６４を用いてシミュレーション中に列車のデッドロックが発生していないかをチェックし、デッドロックが発生していた場合はシミュレーションログ３７２を用いてシミュレーション状況をデッドロック発生前に巻き戻すとともに、デッドロックが回避されるように列車の走行順序を決定する部分である。
【００２９】
気象・災害情報テーブル３５１、人流情報テーブル３５２、列車情報テーブル３６１、設備情報テーブル３６２、閉そく情報テーブル３６３、幾何情報テーブル３６４、順序情報テーブル３６５は構成例を用いて後述する。
【００３０】
列車走行実績３７１は線路の各位置における列車の走行時刻を格納するものであり、例えば位置、列車、時刻の組として表される。
【００３１】
シミュレーションログ３７２はシミュレータの内部時刻の各断面における気象・災害情報テーブル３５１、人流情報テーブル３５２、列車情報テーブル３６１、設備情報テーブル３６２、閉そく情報テーブル３６３、順序情報テーブル３６５、列車走行実績３７１の内容を格納するものであり、指定した時間断面におけるテーブル群の格納値をシミュレーションログ３７２から抽出、展開することで、各時間断面におけるシミュレーション状態を復元することができる。
【００３２】
コントローラ部３２０はユーザからの入力情報を画面管理部３３０を介して受け取り、環境情報更新部３１１、列車・設備状態更新部３１２、列車走行経路更新部３１３、信号機制御部３１４、列車走行状況評価部３１５を制御する部分である。画面管理部３３０は入力インタフェース３４１を介してユーザからの入力情報を受け取り、コントローラ部３２０へと受け渡す部分である。また、環境情報更新部３１１、列車・設備状態更新部３１２、列車走行経路更新部３１３、信号機制御部３１４、列車走行状況評価部３１５の処理結果を受け取り、画面出力を出力インタフェース３４２へと受け渡す部分である。入力インタフェース３４１はユーザからの入力情報を受け取り、画面管理部３３０へと受け渡す部分である。出力インタフェース３４２は画面管理部から受け取った画面出力をディスプレイなどのユーザインタフェースへと出力する部分である。
【００３３】
図４（Ａ）、図４（Ｂ）、図４（Ｃ）、図４（Ｄ）、図４（Ｅ）、図４（Ｆ）、図４（Ｇ）は列車運行シミュレーション装置２００で使用する各種テーブルの一例を示している。
【００３４】
図４（Ａ）は気象・災害情報テーブルの一例であり、閉そくＩＤおよび気象・災害情報を要素として持つ。本例では気象・災害情報として風速、雨量、落石を要素としている。閉そくＩＤには閉そくを一意に識別するためのキーが格納されている。ここで、閉そくとは一台の信号機と当該信号機が防護する線路領域であり、当該線路領域は軌道回路による列車在線検知方式では信号機の内方区間に設置された第一内方軌道回路から最終内方軌道回路までの領域である。あるいは、例えば列車１１０の車上装置が位置算出装置やＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）などの測位センサを備えており、当該センサの値を使用して列車在線位置を算出する方式下においては、当該線路領域は列車１１０の在線により信号機が停止現示を指示する領域である。風速には例えば現在時刻の直近一定時分の間における最大風速が格納される。直近一定時分とは例えば３０分とする。雨量には例えば連続雨量がｍｍ単位で格納される。落石には該当閉そく上に列車の運行を支障する落石が存在しているか否かが格納される。
【００３５】
図４（Ｂ）は人流情報テーブルの一例であり、駅名および旅客情報を要素として持つ。駅名には駅を一意に識別するためのキーが格納されている。旅客情報には当該駅に滞留している旅客の人数が旅客の行先別に記載されている。図４（Ｂ）の例では、Ｓｔａｔｉｏｎ＿＃１にはＳｔａｔｉｏｎ＿＃２を行先とする旅客が１２人、Ｓｔａｔｉｏｎ＿＃３を行先とする旅客が２１人列車を待っていることを示している。
【００３６】
図４（Ｃ）は列車情報テーブル３６１の一例であり、列車ＩＤ、長さ、在線閉そく、在線位置、旅客情報、目的地、経由駅、経由閉そく、経路変更対象列車を要素として持つ。列車ＩＤには列車を一意に識別するためのキーが格納されている。長さには列車の先端から末端までの長さが格納されている。在線閉そくには列車が直近で進行現示を確認し、内方に進入した信号機に対応する閉そくの閉そくＩＤが格納されている。列車の先端部は当該閉そくが表す線路領域上にある。在線位置には在線閉そくの始端から列車の先端部までの長さが格納されている。図４（Ｃ）の例では、Ｔｒａｉｎ＿＃１の先端部はＢｌｏｃｋ＿＃５の始端から３７ｍの位置に存在していることを表している。旅客情報には列車に乗車している旅客の人数が旅客の目的地ごとに格納されている。図４（Ｃ）の例では、Ｔｒａｉｎ＿＃１にはＳｔａｔｉｏｎ＿＃１を目的地とする旅客が５２人、Ｓｔａｔｉｏｎ＿＃２を目的地とする旅客が９５人乗車していることを表している。目的地には列車の終着駅が格納されている。経由駅には、列車が目的地までに経由していく駅が経由順に格納されている。経由閉そくは列車が目的地までに経由していく閉そくが経由順に格納されている。経路変更対象列車には列車が列車走行経路更新部３１３による走行経路変更の対象となっているか否かが格納されている。
【００３７】
図４（Ｄ）は設備情報テーブル３６２の一例であり、設備ＩＤ、設備状態、状態継続時間、制御試行中を要素として持つ。設備ＩＤには設備を一意に判別するためのキーが格納されている。設備状態には設備の状態が格納されており、例えば信号機であれば進行現示、進行制御中、停止現示、停止制御中、故障中のいずれかの状態が、軌道回路であれば落下、扛上、異常のいずれかの状態が格納される。継続時間には同一の設備状態が継続している時間が秒単位で格納されている。
【００３８】
図４（Ｅ）は閉そく情報テーブル３６３の一例であり、閉そくＩＤ、駅、番線、次閉そくＩＤ、長さ、信号機、軌道回路、優先度、通行可、制御試行中、制御列車を要素として持つ。閉そくＩＤは閉そくを一意に識別するためのキーが格納されている。駅は当該閉そくが旅客乗降可能な個所にある場合に設定され、旅客が乗降する駅が格納される。番線は駅と同様の条件で設定され、旅客が乗降する番線が格納される。次閉そくＩＤは閉そくに在線中の列車が次に進入可能なすべての閉そくが格納されている。図４（Ｅ）の例では、Ｂｌｏｃｋ＿＃１に在線している列車は、Ｂｌｏｃｋ＿＃１から進出する際にＢｌｏｃｋ＿＃２あるいはＢｌｏｃｋ＿＃３に進入可能であることを表している。長さは閉そくの始端から終端までの経路帳が格納されている。信号機には当該閉そくに対応する信号機が格納されている。軌道回路には当該閉そくに対応する線路領域上にある軌道回路およびその長さが閉そくの始端から順に格納されている。図４（Ｅ）の例では、Ｂｌｏｃｋ＿＃１は始端から順にＴｒａｃｋＣｉｒｃｕｉｔ＿＃１、ＴｒａｃｋＣｉｒｃｕｉｔ＿＃２、ＴｒａｃｋＣｉｒｃｕｉｔ＿＃３を内方に持ち、それぞれの長さは２００ｍ、２５０ｍ、１７５ｍであることを表している。優先度には優先と非優先の２値が格納されており、例えば予め線路の優先方向が指定されている状況において、閉そくの向きと閉そくの終端にある線路の優先方向が一致するときに優先が、そうでないときに非優先が格納される。通行可には当該閉そくが列車走行経路更新部３１３により不通部と判定されているか否かが格納されており、図４（Ｅ）の例では×が不通部であることを、○がそうでないことを表している。制御試行中には当該閉そくが前回周期に信号機制御部３１４による制御の対象となったか否かが格納されている。図４（Ｅ）の例では、Ｂｌｏｃｋ＿＃１は前回周期に信号機制御部３１４による制御の対象となったことを、Ｂｌｏｃｋ＿＃２は制御の対象となっていないことを表している。制御列車には当該閉そくに制御要求を行った列車が格納されている。制御列車は制御試行中がＹｅｓであるとき、あるいは当該閉そくの信号機の状態が進行現示または進行制御中であるときに値が格納される。
【００３９】
図４（Ｆ）は幾何情報テーブル３６４の一例であり、幾何ＩＤ、幾何種別、閉そくＩＤ１、閉そくＩＤ２、順序競合を要素として持つ。幾何ＩＤは幾何関係を一意に識別するためのキーが格納されている。幾何種別は当該幾何関係の種別が格納されている。閉そく１ＩＤ，閉そく２ＩＤは当該幾何関係にある２つの閉そくが格納されている。順序競合は当該幾何関係が順序判断の制御ロジックを要する幾何関係である場合にＹｅｓ，そうでない場合にＮｏが格納される。幾何関係が順序判断の制御ロジックを要するか否かは出願番号Ｐ２０１１−１６４９２８に従う。
【００４０】
図４（Ｇ）は順序情報テーブル３６５の一例であり、幾何ＩＤ，優先列車、非優先列車を要素として持つ。幾何ＩＤは幾何関係を一意に識別するためのキーが格納されている。優先列車、非優先列車はそれぞれ、優先列車項に記載されている列車が当該幾何関係にある２つの閉そくのいずれか一方を通過するまで、非優先列車項に記載の列車は当該幾何関係にある２つの閉そくのいずれについても進入することができないことを表す。順序情報テーブル３６５はシミュレーションの開始時点ではレコードを持たないものとする。
【００４１】
図５（Ａ）は列車運行シミュレーション装置２００が実行する処理の全体の流れを表している。処理５００は図６に示すシミュレーション制御ボタン６１３の押下をトリガとして開始され、処理５０１、５１０、５２０、５３０、５７０、５８０を実行する。
【００４２】
処理５０１は処理５１０、５２０、５３０、５７０、５８０を反復する処理である。反復は予め定められた時間間隔で周期的に実行され、例えば1秒周期で実行される。また、反復時にシミュレータの内部時刻を進める。この際、反復周期とシミュレータの内部時刻を進める量に差を持たせることで見かけ上のシミュレーションの加減速が可能となる。例えば、処理５０１の反復間隔を１秒、反復時のシミュレータの内部時刻を進める量を５秒とした場合、ユーザからはシミュレーションが５倍速で実行されているように見える。処理５０１の反復間隔とシミュレータの内部時刻を進める量の比は、例えば図６に示すシミュレーション速度変更窓６１２をユーザが操作することで適宜変更することができる。
【００４３】
処理５１０は環境情報更新部３１１によって実行される処理であり、気象・災害情報テーブル３５１、人流情報テーブル３５２を更新する。テーブルの更新は、例えば予め気象・災害情報テーブル３５１、人流情報テーブル３５２の時間変化が記録されている外部ファイルを用意しておき、当該ファイルから入力インタフェース３４１を介して本時間周期に該当するデータを取得することで実現する。ファイルの選択は、例えば図６に示すファイル設定ボタン６０２を押下することで表示されるダイアログボックスを用いて行う。あるいは、ユーザがＧＵＩから入力インタフェース３４１を介してテーブルを直接書き換えてもよい。すなわち、計画系システム１１０は、列車の設備に関する設備情報及び、列車の在線位置を含む列車情報を列車運行シミュレーション装置２００に送信し、外部装置は、列車の環境に関する環境情報を列車運行シミュレーション装置２００に送信し、列車運行シミュレーション装置２００は、計画系システム１１０から取得した設備情報を記憶する設備情報記憶部（設備情報テーブル３６２）と、計画系システム１１０から取得した列車情報を記憶する列車情報記憶部（列車情報テーブル３６１）と、を備える。
【００４４】
処理５２０は列車・設備状態更新部３１２により実行され、列車在線位置や設備状態、人流の変化をシミュレートし、列車情報テーブル３６１、設備情報テーブル３６２、人流情報テーブル３５２の更新を行う処理である。また、本処理では列車の走行実績および各種テーブルの現在状態を列車走行実績３７１およびシミュレーションログ３７２に格納する。
【００４５】
処理５２０の詳細な流れを図５（Ｂ）に示す。処理５２０では処理５２１、５２２、５２３、５２４を逐次実行する。
【００４６】
処理５２１は列車の移動距離を算出し、新規の列車在線位置を列車情報テーブル３６１に格納する処理である。列車の移動距離は、例えばシミュレーションの実行周期と予め定められた列車の基準速度の積として算出される。ここで、列車ごとに異なる基準速度を用いる場合は、例えば列車情報テーブル３６２に列車基準速度項を追加することで実現できる。また、新規の列車在線位置は、列車情報テーブル３６２の在線位置項に格納されている移動前の列車在線位置に対して、上記で算出した列車の移動距離を加えることで決定される。ここで、新規の列車在線位置が在線中の閉そくの長さを超える場合は列車を次の閉そくに移動させる。列車が在線している閉そく、閉そくの長さ、移動先の閉そくは列車情報テーブル３６２、閉そく情報テーブル３６３から取得する。なお、移動先の閉そくは、移動前の在線閉そくの次閉そくＩＤ項に記載されている閉そくのうち、信号機の設備状態が進行現示であるものとする。移動先の閉そくにおける列車の在線位置は、列車の移動距離のうち移動元の閉そくの長さを超過した分とする。
【００４７】
処理５２２は列車在線位置の移動に伴う軌道回路、信号機等の設備状態の変化を算出し、設備情報テーブル３６２に格納する処理である。軌道回路状態は、列車が在線している軌道回路を落下状態、それ以外を扛上状態とする。列車在線位置にある軌道回路は、列車情報テーブル３６１の在線位置と列車長さから列車在線範囲を決定し、列車情報テーブル３６１の在線閉そくに対応する閉そく情報テーブル３６３の軌道回路項に格納されている軌道回路について列車在線範囲と比較することにより決定する。これらの信号機状態、軌道回路状態に加えて、ユーザはＧＵＩから入力インタフェース３４１を介して設備故障などの異常状態を入力することができる。あるいは、予め外部ファイルに設備の異常状態の時間変化を定義しておき、当該ファイルから入力インタフェース３４１を介して本時間周期に該当するデータを取得してもよい。 
処理５２３は駅に停車中の列車について、当該駅が目的地または乗換駅である旅客を列車から降車させ、列車情報テーブル３６１を更新する処理である。当該駅が目的地である旅客は列車情報テーブル３６１の旅客情報項から判定できる。旅客の降車は、列車情報テーブル３６１の旅客情報のうち、当該駅が目的地または乗換駅である旅客データを除去する操作として実現する。また、同時に人流情報テーブル３５２の降車駅に該当する駅の旅客情報項へ降車した旅客データを追加する。
【００４８】
処理５２４は駅に停車中の列車について、当該列車の経由駅が目的地あるいは乗換駅と一致する旅客を列車に乗車させ、列車情報テーブル３６１を更新する処理である。旅客の目的地が当該列車の経由駅に含まれているかの判定は人流情報テーブル３５２、列車情報テーブル３６１を比較すればよい。旅客の乗車は、列車情報テーブル３６１の旅客情報に旅客データを追加する操作として実現する。また、同時に人流情報テーブル３５２から乗車した旅客データを除去する。
【００４９】
処理５２５はシミュレーションの状態を画面に表示する処理である。処理５２５説明するにあたり、まずは図６の詳細な説明を行う。
【００５０】
図６は列車運行シミュレーション装置２００の動作状態を表示した画面であり、終了ボタン６０１、ファイル設定ボタン６０２、シミュレータ動作制御窓６１０、情報表示窓６２０、シミュレーション状況表示窓６３０から構成される。
【００５１】
終了ボタン６０１は列車運行シミュレーション装置２００が実行するシミュレーションプログラムを終了させるボタンであり、ユーザは当該ボタンの押下によりプログラムを終了させることができる。
【００５２】
ファイル設定ボタン６０２は気象・災害情報テーブル３５１や人流情報テーブル３５２の読込元となるファイルを指定するためのボタンであり、例えばファイル設定ボタン６０２を押下することでダイアログボックスが表示され、ユーザはダイアログボックスを用いてファイルの指定を行うことができる。
【００５３】
シミュレータ動作制御窓６１０は列車運行シミュレーション装置２００の動作を制御するための窓であり、シミュレータ内部時刻表示窓６１１、シミュレーション速度変更窓６１２、シミュレーション制御ボタン６１３から構成される。
【００５４】
シミュレータ内部時刻表示窓６１１は列車運行シミュレーション装置２００の内部時刻を表示する窓であり、ユーザは当該窓からシミュレータの内部時刻を直接書き換えることができる。シミュレーション速度変更窓６１２はシミュレーション速度をコントロールするための窓であり、ユーザは当該窓からシミュレーション速度の加減速を行うことができる。シミュレーション制御ボタン６１３は画面描画をコントロールするための窓であり、ユーザは当該窓の操作により描画の一時停止や再開、過去のシミュレーション状態の再生を行うことができる。
【００５５】
情報表示窓６２０は気象、災害情報テーブル３５１、人流情報テーブル３５２、列車情報テーブル３６１、設備情報テーブル３６２、閉そく情報テーブル３６３、幾何情報テーブル３６４、順序情報テーブル３６５、列車走行実績３７１を画面に表示するための窓である。また、ユーザは当該窓よりテーブルの内容を直接編集することができる。
【００５６】
シミュレーション状況表示窓６３０は列車の在線位置や信号機の制御状態、気象情報、人流情報といった内容をグラフィカルに表示するための窓である。６３１、６３２は列車であり、列車の色の濃淡は旅客の乗車率を表している。ユーザは列車の色により乗車率の大小を一目で把握することができる。６３３は列車＃１の走行経路である。６３４は信号機を、６３５は閉そくを表している。６３６は旅客乗降可能な駅であり、色の濃淡は駅の混雑率を表している。
【００５７】
以上で図６の説明は終了であり、処理５２５の説明を再開する。処理５２５では、シミュレータ動作制御窓６１０、情報表示窓６２０、シミュレーション表示窓６３０の描画に要する情報を画面管理部３３０に送信する。画面管理部３３０は描画情報を作成し、出力インタフェース３４２を通じてユーザに図６の画面を提示する。
【００５８】
以上で処理５２０は完了し、処理５３０へと移行する。処理５３０は列車走行経路更新部３１３により実行される処理であり、おのおのの列車について列車経路を算出あるいは変更した結果を列車情報テーブル３６１に格納する。すなわち、列車運行シミュレーション装置２００は、外部装置から取得した環境情報を取得する環境情報更新部３１１と、環境情報に基づいて、設備情報と列車情報を更新し、列車の走行経路を算出する列車走行経路更新部３１３と、を備える。
【００５９】
処理５３０の詳細な流れを図５（Ｃ）に示す。処理５３０では処理５４０、５５０、５６０を実行する。
【００６０】
処理５４０は列車の走行経路が列車情報テーブル３６１に登録されていない列車について、列車の目的地および経由駅から経路上の閉そく群を決定する処理である。経路の抽出は、例えば列車の在線している閉そくを基点として閉そく情報テーブル３６３を辿っていくことで目的地に到達可能な閉そく列のうち、列車の経由駅をすべて経由するものを取り出すことで実現できる。抽出された経路が複数あった場合は、例えば、列車運行シミュレーション装置２００は、予め優先させる走行線路である線路に優先方向を定めておく優先度記憶部を更に備え、閉そくの方向と閉そくの着点部にある線路の優先方向が不一致である閉そくの長さの総和が最も短い経路を選択するといった方法により経路を一つに絞り込む。
【００６１】
処理５５０は気象・災害情報テーブル３５１、列車情報テーブル３６１、設備情報テーブル３６２、閉そく情報テーブル３６３から走行経路を変更する対象となる列車を決定する処理である。処理５５０の詳細な流れを図５（Ｄ）に示す。処理５５０では処理５５１、５５２、５５３、５５４を逐次実行する。
【００６２】
処理５５１は気象・災害情報テーブル３５１および設備情報テーブル３６２から線路の不通部を決定する処理である。線路が不通であるかの判定は、例えば気象・災害情報テーブル３５１に格納されている風速、雨量が予め規定された運行停止基準を超過していないかを判定することにより行う。例えば風速が２５ｍ毎秒を超えている、あるいは雨量が１００ｍｍを超えている閉そくを不通部と判定する。また、気象・災害情報テーブル３５１の落石情報や設備情報テーブル３６２の設備状態が異常を示していないかを判定することにより行う。線路の不通部は閉そくに対して紐付けられ、判定結果は閉そく情報テーブル３６３に格納される。設備と閉そくの対応は閉そく情報テーブル３６３を参照することで判定できる。
【００６３】
処理５５２は処理５５１で決定された線路の不通部により二次的に不通となる線路不通範囲を決定する処理である。二次的に不通となる線路不通範囲は閉そく情報テーブル３６３の各閉そくに対して判定する。閉そくが二次的に不通となる線路不通範囲に含まれるか否かは、例えば当該閉そくに列車が在線していた場合、その列車が処理５５１で決定された線路の不通部を通ることが不可避であるかの判定により行う。このような閉そくは、閉そく情報テーブル３６３の次閉そくＩＤに格納されているすべての閉そくが不通であるような閉そくを線路不通範囲に含まれる閉そくに加えるという処理を、新規に線路不通範囲に含まれる閉そくが増加しなくなるまで反復することにより抽出できる。 
処理５５３は処理５５２の結果を用いて走行経路を変更する対象となる列車を決定する処理である。走行経路を変更する対象となる列車は、例えば列車情報テーブル３６１に存在する列車のうち、処理５５２により決定された線路の不通範囲を列車情報テーブル３６１の経由閉そく項に含んでおり、かつ当該閉そくへの予想到達時刻が一定時分以内であるものとして決定できる。閉そくへの予想到達時刻は、例えば列車情報テーブル３６１の経由閉そくと閉そく情報テーブル３６３の長さから到達までの距離を算出し、それを予め定められた列車の基準速度で除算することにより決定できる。列車の基準速度が列車ごとに異なる場合には、列車情報テーブル３６２に列車基準速度項を追加してもよい。走行経路を変更する対象となった列車は列車情報テーブル３６２の経路変更対象に「Ｙｅｓ」が格納される。
【００６４】
処理５５４は処理５５３以外に予め定められた走行経路変更列車の決定基準がある場合に当該基準を満たす列車を走行経路変更対象の列車に追加する処理である。予め定められた基準とは、例えば列車の指定駅への到着といったものであり、基準を満たした列車は走行経路に関わらず経路変更の対象とする。この際、指定された経路変更が目的地の変更を伴う場合には新規目的地も同時に指定する。
【００６５】
以上で処理５５０は完了し、処理５６０へと移行する。処理５６０は列車情報テーブル３６１に経路変更対象として登録されている列車に対して、閉そく情報テーブル３６３を参照することで列車の経路変更を行い、結果を列車情報テーブル３６１に登録する処理である。すなわち、列車運行シミュレーション装置２００の列車走行経路更新部３１３は、環境情報と設備情報に基づいて、線路が不通となる線路不通範囲を算出し、線路不通範囲に関連する列車について、走行経路を変更する列車と決定し、走行経路を更新する。
【００６６】
処理５６０の詳細な流れを図５（Ｅ）に示す。処理５６０では処理５６１、５６２、５６３、５６４、５６５、５６６、５６７を実行する。
【００６７】
処理５６１は処理５５０で決定された経路変更対象のすべての列車について処理５６２、５６３、５６４、５６５、５６６を反復する処理である。
【００６８】
処理５６２は現在反復の対象となっている列車について、列車の在線位置から目的地に至るすべての経路を探索する処理である。探索された経路は閉そくの列として表現される。経路の探索は、例えば列車の在線している閉そくを基点として閉そく情報テーブル３６３を辿っていくことで目的地に到達可能な閉そく列のうち、列車の経由駅をすべて経由するものを取り出すことで実現できる。
【００６９】
処理５６３は処理５６２で得られた経路数に応じて処理５６４、５６５、５６６の分岐を行う処理である。経路数が一つのときは処理５６６を、二つ以上のときは処理５６５を、経路がない場合は処理５６４を実行する。
【００７０】
処理５６４は処理５６２で経路が得られなかった場合に実行される処理であり、列車の目的地を新規に設定する。新規の目的地は、例えば対象列車の後運用列車の経路上にある駅のうち、対象列車の従来の経路上にあり、かつ対象列車の現在位置から最も遠方にある駅とする。この場合、対象列車は新規の目的地に到着した後、後運用列車へと運用が切り替わる。
【００７１】
処理５６５は処理５６２で複数の経路が得られた場合に実行される処理であり、得られた複数の経路の中から一つを選択するものである。経路の選択は、例えば処理５６２で探索された経路のうち、従来の経路上における経由駅を最も多く経由するものとする。従来の経路上における経由駅は列車情報テーブル３６１を参照することで判別できる。条件を満たす経路が複数あった場合は、例えば線路に優先方向を定めておき、閉そくの方向と閉そくの着点部にある線路の優先方向が不一致である閉そくの長さの総和が最も短い経路を選択するといった方法により経路を一つに絞り込む。
【００７２】
処理５６６は、処理５６２または処理５６５で一つに絞り込まれた経路を新たな列車走行経路として列車情報テーブル３６１に格納する処理である。
【００７３】
以上で処理５６０、５３０は完了し、処理５７０へと移行する。処理５７０は信号機制御部３１４により実行される処理であり、列車情報テーブル３６１、設備情報テーブル３６２、順序情報テーブル３６５から制御対象の信号機を決定する。制御可能な信号機の決定は進路制御装置１００に用いられる制御プログラムを実行することで得られ、例えば予め出願番号Ｐ２０１１−１６４９２８の装置により生成された進路制御プログラムを用意しておけばよい。ここで、列車情報テーブル３６１および順序情報テーブル３６５が進路制御装置１００に対する計画系システム１１０からの入力および列車１３０の在線位置情報に、設備情報テーブルの内容が地上装置１２０からの入力を模擬したものとなる。ここで、予め進路制御プログラムを生成する際には、進路選択ロジックタイプに属する制御ロジックは列車情報テーブル３６１に格納された列車走行経路を、順序判断ロジックタイプに属する制御ロジックは順序情報テーブル３６５を読み込んで実行する設定としておく。進路制御装置１００により得られた信号機の状態は設備状態テーブル３６２の設備状態へと反映する。
【００７４】
処理５８０は列車走行状況評価部３１５により実行される処理であり、閉そく情報テーブル３６３、幾何情報テーブル３６４を用いてシミュレーション中に列車のデッドロックが発生していないかをチェックする。デッドロックが発生していた場合はシミュレーションログ３７２を用いてシミュレーション状況をデッドロック発生前に巻き戻すとともに、デッドロックが回避されるように列車の走行順序を決定する。
【００７５】
処理５８０の詳細な流れを図５（Ｆ）に示す。処理５８０では処理５８１、５８２、５８３、５８４、５９０、５８５、５８６を実行する。
【００７６】
処理５８１は信号機制御部３１４の結果を用いて列車間のデッドロック発生箇所を検知する処理である。デッドロック発生箇所の検知は閉そく情報テーブル３６３および幾何情報テーブル３６４を用いて行われる。デッドロック発生箇所の検知は、例えば以下の手順により行われる。まず、閉そく情報テーブル３６３において制御試行中がＹｅｓであるすべての閉そくを集めた集合（以下、Ｂとする。Ｂの要素はＢ１、Ｂ２、…Ｂｎ（ｎ：自然数）とする。）を取得する。次に、幾何情報テーブル３６４からＢの各要素間が持つ幾何的な関係を判別する。続いて、Ｂの部分集合Ｂｐ＝｛Ｂｐ１，Ｂｐ２，…Ｂｐｋ｝（ｐ１、ｐ２…ｐｋ：自然数、ｋ≦ｎ）について、ｉ番目の閉そくがｉ＋１番目の閉そくの発点を包含する幾何関係であるかを１≦ｉ≦ｋ−１のすべてのｉについて判別する。すべてのｉについて本条件が成立するＢｐが存在した場合、Ｂｐにおいてデッドロックが発生したと判定する。この際、デッドロックに関与する列車（以下、Ｔｐとする）は、閉そく情報テーブル３６３からＢｐのすべての要素閉そくについて制御列車を抽出することで得られる。なお、Ｂｐの要素数が２のときは、Ｂｐの要素が（８）デッドロックＢ、（１４）逆方向接続Ｂ、（２２）デッドロックＡのいずれかの幾何関係にある場合にＢｐにおいてデッドロックが発生したと判定してもよい。
【００７７】
処理５８２は処理５８１で得られたすべてのＢｐについて処理５８３、５８４、５８５を反復する処理である。
【００７８】
処理５８３はＴｐの優先度を決定する処理であり、例えば列車種別および目的地に対して優先度を予め定めておき、Ｔｐの各列車について列車情報テーブル３６１の格納値を比較することで実現すればよい。
【００７９】
処理５８４はＴｐの中から処理５８３で決定された優先度が最も低い列車を決定する処理である。以下、本処理で決定された列車をＴｄとする。
【００８０】
すなわち、列車運行シミュレーション装置２００は、算出された走行経路を評価する列車走行状況評価部３１５を備え、優先度記憶部で、予め列車の優先度も記憶し、列車走行状況評価部３１５は、算出された走行経路についてデッドロックの発生を検知し、デッドロックの発生が検知された場合には、列車の優先度に基づいて列車の走行順序を変更する。
【００８１】
処理５９０については詳細なフローを図５（Ｇ）に示す。処理５９０では処理５９１、５９２、５９３、５９４、５９５、５９６、５９７、５９８が実行される。
【００８２】
処理５９１は処理５９２、５９３、５９４、５９５、５９６、５９７、５９８をループ実行する処理である。ここで、処理のループは列車Ｔｄにより制御が行われている閉そくをＴｄの走行経路の遠方側から順にソートしたものに対して実行する。閉そくの抽出およびソートは、閉そく情報テーブル３６３の制御列車項および次閉そくＩＤを参照することで実現できる。
【００８３】
処理５９２では処理５９１でループ対象となっている閉そくが持つ幾何関係のうち、幾何情報テーブル３６４の順序競合項がＹｅｓであるものをすべて抽出する。
【００８４】
処理５９３では、処理５９２で幾何関係が一つも得られなかった場合には処理を次のループへ処理を移行させ、一つ以上得られた場合には処理５９４を実行する。
【００８５】
処理５９４では、デッドロックに関与する列車Ｔｐのうち、ループ対象の閉そくと処理５９２で得られた幾何関係にある閉そくを一つでも経路上に持つ列車を取得する。
【００８６】
処理５９５では、処理５９４で幾何関係が一つも得られなかった場合には次のループへ処理を移行させ、一つ以上得られた場合には処理５９６を実行する。
【００８７】
処理５９６は順序情報テーブル３６５に新規のレコードを追加する処理である。追加されるレコードは、幾何ＩＤ項に処理５９３で得られた幾何関係が、優先列車項に処理５９５で得られた列車が、非優先列車項にＴｂが格納される。
【００８８】
処理５９７では、処理５９１においてＴｐのすべての列車に対応するレコードが順序情報テーブル３６５に追加されているかを判定し、未処理の列車がある場合には次のループへ処理を移行させ、全列車についてレコード追加が行われている場合には処理５９８を実行する。
【００８９】
処理５９８では、シミュレーションログ３７２を参照することでＴｂが現在ループの対象となっている閉そくを制御した時刻を取得する処理である。得られた時刻はメモリ等の一時領域に格納しておく。なお、本処理で得られた時刻においては列車群Ｔｐの間のデッドロックはまだ発生しておらず、処理５９１で新たに順序情報テーブル３６５に追加されたレコードを用いてかつ当該時刻からシミュレーションを実行し直した場合にはＴｐの間のデッドロックは発生しない。
【００９０】
以上で処理５９０は終了である。以降、図５（Ｄ）に戻り処理５８５の説明を行う。
【００９１】
処理５８５では反復処理５８２内の処理５９８で得られた時刻のうち、最も早い時刻を算出する。
【００９２】
処理５８６では、シミュレーションログ３７２から処理５８５で算出された時刻における各種テーブルの格納値を復元する。ここで、各種テーブルとは気象・災害情報テーブル３５１、人流情報テーブル３５２、列車情報テーブル３６１、設備情報テーブル３６２、閉そく情報テーブル３６３、列車走行実績３７１である。幾何情報テーブル３６４は定数でありシミュレーションに伴って書き換わることはないので復元の必要はない。また、順序情報テーブル３６５については復元を行わず、本時間周期の処理５９０で得られたものをそのまま引き継ぐ。
【００９３】
以上のように本実施形態によれば、列車の時刻や順序といったダイヤ情報が定まっていない状況下においてもデッドロックを発生させることなく列車を走行させることが可能となり、簡便かつ迅速な列車運行シミュレーションが実現できる。また、災害時等の運行シミュレーションを煩雑なダイヤ変更を行うことなく行うことができるため、列車運行サービスの維持能力測定や危険ポテンシャルの予測、災害対策立案と対策効果測定等を容易に実施できる。さらに、本シミュレータを計画系システム１１０に接続し、不測の事態が発生した際に本シミュレータで生成された列車走行実績をダイヤとして用いることで、災害時の列車運行可用性を大きく向上させることができる。
【００９４】
なお、本発明は記載した実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
【符号の説明】
【００９５】
１００・・・進路制御装置
１１０・・・計画系システム
１２０・・・地上装置
１３０・・・列車
１４０・・・地上設備群
２００・・・列車運行シミュレーション装置
３１１・・・環境情報更新部
３１２・・・設備・列車情報更新部
３１３・・・列車走行経路更新部
３１４・・・信号機制御部
３１５・・・列車走行状況評価部
３２０・・・コントローラ部
３３０・・・画面管理部
３４１・・・入力インタフェース
３４２・・・出力インタフェース
３５１・・・気象・災害情報テーブル
３５２・・・人流情報テーブル
３６１・・・列車情報テーブル
３６２・・・設備情報テーブル
３６３・・・閉そく情報テーブル
３６４・・・幾何情報テーブル
３６５・・・順序情報テーブル
３７１・・・列車走行実績
３７２・・・シミュレーションログ
【図１】
2015013487.tif 000003
【図２】
2015013487.tif 000004
【図３】
2015013487.tif 000005
【図４（Ａ）】
2015013487.tif 000006
【図４（Ｂ）】
2015013487.tif 000007
【図４（Ｃ）】
2015013487.tif 000008
【図４（Ｄ）】
2015013487.tif 000009
【図４（Ｅ）】
2015013487.tif 000010
【図４（Ｆ）】
2015013487.tif 000011
【図４（Ｇ）】
2015013487.tif 000012
【図５（Ａ）】
2015013487.tif 000013
【図５（Ｂ）】
2015013487.tif 000014
【図５（Ｃ）】
2015013487.tif 000015
【図５（Ｄ）】
2015013487.tif 000016
【図５（Ｅ）】
2015013487.tif 000017
【図５（Ｆ）】
2015013487.tif 000018
【図５（Ｇ）】
2015013487.tif 000019
【図６】
2015013487.tif 000020