(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-07-05
(45)【発行日】2023-07-13
(54)【発明の名称】車両運用計画生成方法、車両運用計画生成装置、及びプログラム
(51)【国際特許分類】
B61L 27/12 20220101AFI20230706BHJP
G06Q 50/30 20120101ALI20230706BHJP
【FI】
B61L27/12
G06Q50/30
(21)【出願番号】P 2019180358
(22)【出願日】2019-09-30
【審査請求日】2022-09-30
(73)【特許権者】
【識別番号】522388431
【氏名又は名称】落合 康文
(74)【代理人】
【識別番号】110002860
【氏名又は名称】弁理士法人秀和特許事務所
(72)【発明者】
【氏名】落合 康文
【審査官】佐々木 淳
(56)【参考文献】
【文献】特開2016-203873(JP,A)
【文献】特開平08-329155(JP,A)
【文献】特開2016-105294(JP,A)
【文献】特開2003-154939(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B61L 27/12
(57)【特許請求の範囲】
【請求項1】
情報処理装置が、
列車のダイヤ案のデータと、前記ダイヤ案の変更可能箇所を示すデータとを受け付け、
前記ダイヤ案のデータを用いて、前記ダイヤ案に基づく車両運用計画の実行可能解を数理計画法により求め、
前記実行可能解が求まらない場合に、前記変更可能箇所を示すデータを用いて、前記ダイヤ案を修正し、
修正したダイヤ案に基づく車両運用計画の実行可能解を数理計画法により求め、
得られた実行可能解に基づく車両運用計画のデータを出力する、
ことを含む車両運用計画生成方法。
【請求項2】
前記情報処理装置が、前記ダイヤ案のデータとともに、又は前記実行可能解が求まらない場合に、前記変更可能箇所のデータの入力を促す画面を表示する
ことをさらに含む請求項1に記載の車両運用計画生成方法。
【請求項3】
前記情報処理装置が、
前記ダイヤ案の編集画面を表示し、
前記編集画面を用いて生成された前記ダイヤ案の修正箇所を示すデータを、前記変更可能箇所を示すデータとして記憶する
ことをさらに含む請求項1に記載の車両運用計画生成方法。
【請求項4】
前記情報処理装置は、前記ダイヤ案のデータを用いて、前記車両運用計画のモデルとして、前記車両運用計画に係る事象を示すノードと、前記ノード間を接続する重みを持ったアークとからなるネットワークを生成し、
前記変更可能箇所は、前記ネットワークに追加するアークである追加アークにより表現され、
前記追加アークは、前記実行可能解を求めるために選択される
る請求項1から3のいずれか一項に記載の車両運用計画生成方法。
【請求項5】
前記変更可能箇所は、前記追加アークと、前記追加アークによって前記ネットワーク中のノードと接続されるダミーノードとにより表現される
請求項4に記載の車両運用計画生成方法。
【請求項6】
前記実行可能解の求解において、前記ネットワーク中のノードは求解に使用され、前記ダミーノードは、求解における使用及び不使用を選択可能である
請求項5に記載の車両運用計画生成方法。
【請求項7】
前記追加アークには、前記実行可能解の求解における、前記追加アークの使用の優先度を示す重みが設定されている
請求項4から6のいずれか一項に記載の車両運用計画生成方法。
【請求項8】
前記実行可能解は、前記ネットワークを用いて混合整数計画法により算出される
請求項4から7のいずれか一項に記載の車両運用計画生成方法。
【請求項9】
前記情報処理装置は、前記ダイヤ案と、前記ダイヤ案の運行に使用する車両に係る車両情報に基づく車両運用計画の実行可能解を求める
請求項1から8のいずれか一項に記載の車両運用計画生成方法。
【請求項10】
前記情報処理装置は、前記ダイヤ案と,前記ダイヤ案の運行に使用する車両の検査に係
る検査情報に基づく車両運用計画の実行可能解を求める
請求項1から9のいずれか一項に記載の車両運用計画生成方法。
【請求項11】
前記情報処理装置は、前記ダイヤ案が複数の運行会社の直通運転を含む場合における、駅間の運行会社別のキロ程を示すキロ程情報を考慮した車両運用計画の実行可能解を求める
請求項1から10のいずれか一項に記載の車両運用計画生成方法。
【請求項12】
列車のダイヤ案のデータと、前記ダイヤ案の変更可能箇所を示すデータとを受け付ける処理と、前記ダイヤ案のデータを用いて、前記ダイヤ案に基づく車両運用計画の実行可能解を数理計画法により求める処理と、前記実行可能解が求まらない場合に、前記変更可能箇所を示すデータを用いて、前記ダイヤ案を修正する処理と、修正したダイヤ案に基づく車両運用計画の実行可能解を数理計画法により求める処理と、得られた実行可能解に基づく車両運用計画のデータを出力する処理と、を実行する制御部と
を含む車両運用計画生成装置。
【請求項13】
コンピュータに、
列車のダイヤ案のデータと、前記ダイヤ案の変更可能箇所を示すデータとを受け付けるステップと、
前記ダイヤ案のデータを用いて、前記ダイヤ案に基づく車両運用計画の実行可能解を数理計画法により求めるステップと、
前記実行可能解が求まらない場合に、前記変更可能箇所を示すデータを用いて、前記ダイヤ案を修正するステップと、
修正したダイヤ案に基づく車両運用計画の実行可能解を数理計画法により求めるステップと、
得られた実行可能解に基づく車両運用計画のデータを出力するステップと、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、車両運用計画生成方法、車両運用計画生成装置、及びプログラムに関する。
【背景技術】
【0002】
鉄道会社は一般に、線路設備や車両設備変更への対応や、輸送サービスの向上を目的として、ダイヤグラム(以下ダイヤ)の改正を行う。ダイヤは、交通機関の運行計画を表現した線図であり、運行図表とも呼ばれる。
【0003】
ダイヤ改正を実施するにあたっては、各列車の各駅における発着時刻だけでなく、構内作業計画、乗務員運用計画等の様々な基本計画を生成することが要求される。構内作業計画は、各駅構内の着発番線や走行経路の計画であり、車両運用計画は、各列車に対する車両の割り当て計画である。乗務員運用計画は、運転士や車掌をどの列車にどの順番で乗せるかの計画である。また、異なる鉄道会社の車両が相互直通運転を行う路線では、各社の車両の走行キロが均衡するように、各列車に充当する車両を調整する必要もある。
【0004】
上述した様々な計画の多くは大規模で複雑な問題であることから、専門のエキスパートが多大な時間と労力をかけて生成しているのが一般的である。車両運用計画の策定に関する従来技術としては、例えば、特許文献1~3に記載のものがある。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2003-154939号公報
【文献】特開2005-259052号公報
【文献】特開2003-306147号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、ダイヤ案に示される列車の発着情報に基づいて車両運用計画を問題なく生成できても、実際の運行上において不適な部分(例えば、交番に係る制約を守れない部分)を含む場合があった。車両運用計画の不適な部分を見いだす作業や、不適な部分に応じてダイヤを修正し、構内作業計画や車両運用計画に反映する作業は、経験と知識を持つ者によって人手で行われていた。このため、車両運用計画の策定は煩雑であり長い時間を要していた。
【0007】
本発明は、ダイヤの修正作業の負担を軽減して車両運用計画の策定を容易化可能な車両運用計画生成方法、車両運用計画生成装置、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明の実施例の一つは、情報処理装置が、
列車のダイヤ案のデータと、前記ダイヤ案の変更可能箇所を示すデータとを受け付け、
前記ダイヤ案のデータを用いて、前記ダイヤ案に基づく車両運用計画の実行可能解を数理計画法により求め、
前記実行可能解が求まらない場合に、前記変更可能箇所を示すデータを用いて、前記ダイヤ案を修正し、
修正したダイヤ案に基づく車両運用計画の実行可能解を数理計画法により求め、
得られた実行可能解に基づく車両運用計画のデータを出力する、
ことを含む車両運用計画生成方法である。
【0009】
車両運用計画生成方法において、前記情報処理装置が、前記ダイヤ案のデータとともに、又は前記実行可能解が求まらない場合に、前記変更可能箇所のデータの入力を促す画面を表示する
ことをさらに含む、構成を採用してもよい。
【0010】
車両運用計画生成方法において、前記情報処理装置が、前記ダイヤ案の編集画面を表示し、前記編集画面を用いて生成された前記ダイヤ案の修正箇所を示すデータを、前記変更可能箇所を示すデータとして記憶することをさらに含む、構成を採用してもよい。
【0011】
車両運用計画生成方法において、前記情報処理装置は、前記ダイヤ案のデータを用いて、前記車両運用計画のモデルとして、前記車両運用計画に係る事象を示すノードと、前記ノード間を接続する重みを持ったアークとからなるネットワークを生成し、前記変更可能箇所は、前記ネットワークに追加するアークである追加アークにより表現され、前記追加アークは、前記実行可能解を求めるために選択される、構成を採用してもよい。
【0012】
前記変更可能箇所は、前記追加アークと、前記追加アークによって前記ネットワーク中のノードと接続されるダミーノードとにより表現される、構成を採用してもよい。この場合、前記実行可能解の求解において、前記ネットワーク中のノードは求解に使用され、前記ダミーノードは、求解における使用及び不使用を選択可能である、構成を採用してもよい。
【0013】
また、前記追加アークには、前記実行可能解の求解における、前記追加アークの使用の優先度を示す重みが設定されている、構成を採用してもよい。また、前記実行可能解は、前記ネットワークを用いて混合整数計画法により算出される、構成を採用してもよい。
【0014】
車両運用計画生成方法において、前記情報処理装置は、前記ダイヤ案と、前記ダイヤ案の運行に使用する車両に係る車両情報に基づく車両運用計画の実行可能解を求める、構成を採用してもよい。また、前記情報処理装置は、前記ダイヤ案と、前記ダイヤ案の運行に使用する車両の検査に係る検査情報に基づく車両運用計画の実行可能解を求める、構成を採用してもよい。また、前記情報処理装置は、前記ダイヤ案が複数の運行会社の直通運転を含む場合における、駅間の運行会社別のキロ程を示すキロ程情報を考慮した車両運用計画の実行可能解を求める、構成を採用してもよい。
【0015】
本発明の実施例の一つは、列車のダイヤ案のデータと、前記ダイヤ案の変更可能箇所を示すデータとを受け付ける処理と、前記ダイヤ案のデータを用いて、前記ダイヤ案に基づく車両運用計画の実行可能解を数理計画法により求める処理と、前記実行可能解が求まらない場合に、前記変更可能箇所を示すデータを用いて、前記ダイヤ案を修正する処理と、修正したダイヤ案に基づく車両運用計画の実行可能解を数理計画法により求める処理と、得られた実行可能解に基づく車両運用計画のデータを出力する処理と、を実行する制御部と、を含む車両運用計画生成装置である。
【0016】
本発明の実施例の一つは、コンピュータに、
列車のダイヤ案のデータと、前記ダイヤ案の変更可能箇所を示すデータとを受け付けるステップと、
前記ダイヤ案のデータを用いて、前記ダイヤ案に基づく車両運用計画の実行可能解を数理計画法により求めるステップと、
前記実行可能解が求まらない場合に、前記変更可能箇所を示すデータを用いて、前記ダイヤ案を修正するステップと、
修正したダイヤ案に基づく車両運用計画の実行可能解を数理計画法により求めるステップと、
得られた実行可能解に基づく車両運用計画のデータを出力するステップと、
を実行させるプログラムである。
【発明の効果】
【0017】
本発明によれば、ダイヤの修正作業の負担を軽減して車両運用計画の策定を容易化することができる。
【図面の簡単な説明】
【0018】
【
図3】
図3は、ダイヤの修正による仕業の組み替え例を示す。
【
図6】
図6は、実施形態に係る車両運用計画生成装置で行うプロセスを示す。
【
図7】
図7A及びBは、列車ダイヤ生成の説明図である。
【
図8】
図8A及びBは、列車ダイヤ生成の説明図である。
【
図10】車両運用計画生成装置として動作する情報処理装置(コンピュータ)のハードウェア構成例を示す。
【
図11】
図11は、列車ダイヤ生成処理の例を示すフローチャートである。
【
図14】
図14は、キロ定情報のファイルを説明する図である。
【
図15】
図15は、基地内帯泊本数のファイルを説明する図である。
【
図18】
図18は、最適解が発見された場合の画面表示例を示す。
【
図20】
図20は、最適解が発見されない場合の画面表示例を示す。
【
図26】
図26は、応答実行例中の制約なしでの交番出力例を示す。
【発明を実施するための形態】
【0019】
以下、図面に基づいて、本発明の実施の形態を説明する。以下の実施形態の構成は例示であり、本発明は実施形態の構成に限定されない。
【0020】
<列車ダイヤ案の策定>
列車を運行するにあたり、最も基本となる計画は列車ダイヤである。列車運行に係わる情報はすべて列車ダイヤに紐づけられているといっても過言ではない。従って、ダイヤ改正において、ダイヤを変更することは、列車の発着時刻を変更するだけではなく、関連するすべての計画を作り直すことを意味する。
【0021】
列車ダイヤには様々な情報が含まれている。初期のダイヤ案は、主に以下の3つのフェーズで検討し、生成する。
(1)はじめに、どのような列車を、どの区間にどのくらい走らせるか、すなわち、各駅停車の他に、急行や特急といった停車駅の異なる列車種別を複数用意する。それらの始発駅及び終着駅、おおよその運転間隔(例えば10分や30分)、運転本数を時間帯ごとに検討する。
(2)続いて、各列車の所要時間や各列車同士の接続等を考慮しながら、各駅で使用できるホームの番線等を勘案し、各駅の着発時刻、通過時刻、着発番線を時間帯毎に検討する。
(3)以上の検討が済んだのち、使用可能な車両編成数や収容場所等を考慮し、必要により回送列車を設定しながら、早朝から深夜にわたる、1日分の初期のダイヤ案を策定する。
【0022】
初期列車ダイヤ案が策定されると、所有している車両をどの列車に、どのような順番で充当していくかを定める車両運用計画の策定を行う。他に、運転士や車掌といった乗務員の運用計画など、列車ダイヤに付随する様々な計画の策定作業が始まる。列車ダイヤに付随する計画がすべて成立するように、必要により初期のダイヤ案に修正を加えながら計画の策定を進める。そして、全ての計画が成立する最終的なダイヤが完成すると、ダイヤ改正を実施することができる。
【0023】
<車両運用計画の概要>
車両運用計画には、大きく二つの種類の計画がある。一つ目は仕業(あるいは運用)と呼ばれる、ある車両の1日の動きを示す計画である。
図1は、仕業の例を示す。
図1では、ある車両は、6時7分に9122 列車としてB駅を出発し、A駅に6時35分40秒に到
着する。その後、折り返し運転の6時41分30秒発の1701 列車でC駅に向かう。以降
、同様の手法で各列車に充当され、この日は19時52分に9236 列車としてE駅の車庫
に入庫して、一日の仕業を終える。
【0024】
二つ目は、交番(あるいは運用順序)と呼ばれる。交番は、仕業と、仕業が順番に並んだ棒ダイヤと呼ばれる図表で表される。交番は、例えば、6両編成のグループ、10両編成のグループ、特急車のグループのような、同一の車種や管理区分などの所定の分類方法により分けられたグループ(以下、「運用グループ」と呼ぶ)毎に生成される。
【0025】
図2は、交番の例を示す。
図2に示す例では、A11運用からA18運用までの8つの運用パターン(仕業)がある。A11運用の次の日の運用パターンはA12運用となり、その翌日はA13運用と進む。A18運用の翌日の運用パターンはA11運用に戻る。また、A11運用とA13運用において検査が行われる。このように、交番は、各車両が交番内の各仕業を1日ごとに、最初の仕業から順番に進んだ後、最後の仕業が終わると、その翌日の最初の仕業に戻ることができるように生成する。
【0026】
車両運行計画を生成する際には、多数の事項の考慮が要求される。事項は、車両が充当される列車の編成両数(6両分のホームしかない駅に停車する列車に対し、10両編成の車両を充当することはできない等)や、車両毎の所属基地(重要な検査やメンテナンス作業は所属している基地で行う必要がある)、各種検査周期(列車検査と月検査)、夜間の
留置場所(留置可能な場所か)、留置可能本数などを含む。
【0027】
初期ダイヤ案は、車両の次の充当先(どの列車の次にどの列車に充当するか)や、車両の回送元(どこから車両を回送してきてどの列車に充当するか)等、一日の車両の動きである仕業を意識して生成される。しかし、初期ダイヤ案の生成において交番は意識されていない。このため、初期ダイヤ案の段階で生成された仕業を並べ替えただけでは、交番生成に必要な制約を守ることができない場合がある。
【0028】
例えば、留置本数が1本のみの場所を朝出庫した車両が一日の仕業を終えて同じ場所に留置される仕業が初期ダイヤ案で設定されたと仮定する。この仮定における車両は、臨時に回送列車等を運転しない限り、上述の仕業に永遠に充当されることになる。このため、交番を成立させることが出来ない。
【0029】
図3は、ダイヤの修正による仕業の組み替え例を示す。初期ダイヤ案の仕業を並び替えた結果、
図3の左側に示す交番が生成されたと仮定する。
図3において、「検」の文字は検査を、A~Eは駅名を示す。左側の交番では、車両に対し、1日目に検査を行った後、5日目に次の検査を行い、6日目までの仕業を終えると、1日目に戻り検査を行う。ところが、検査の周期が4日以内と定められている場合、
図3の左側の交番は成立しない。さらに、検査周期の制約を満たすように仕業を並べ替えることもできない。
【0030】
図3の左側に示すケースでは、ダイヤを変更し、検査周期の制約を満たすように計画を修正することが要求される。例えば、4日目の出庫場所をC駅からE駅に変更し、6日目の出庫場所をE駅からC駅に変更するダイヤの修正が可能である場合、
図3の右側に示すように仕業を並べ替え、検査周期を満たす交番が生成される。このように、ダイヤ改正においては、列車ダイヤ案の一部を修正し、修正された仕業から全ての制約を満たす交番が出来るかどうかを検討する、という作業を、すべての制約が満たされるまで繰り返す。
【0031】
<車両運用計画に伴う列車ダイヤ案の修正>
車両運用計画を完成させるためにダイヤの修正を要する場合がある。ダイヤの修正を行う方法として、以下の方法が主に使用される。
【0032】
(方法1)出庫場所・入庫場所を変更する。
図4Aは方法1の説明図である。
図4Aの左図では、回送列車aはB駅から出庫し、回送列車bはA駅から出庫している。右図では、回送列車aがA駅から出庫し、回送列車bがB駅から出庫するように、出庫場所が夫々変更されている。
図4A~C、
図5A~Cにおいて、円印は出庫を示し、三角形は入庫を示す。また、駅間を結ぶ斜めの直線は列車を示し、長方形が挿入された直線は回送列車を示す。
【0033】
(方法2)折り返し駅での充当列車を変更する。
図4Bは方法2の説明図である。
図4Bの左図では、折り返しの列車cに列車bの車両を充当し、折り返しの列車dに列車aの車両を充当している。
図4Bの右図では、折り返しの列車cに列車aの車両を充当し、折り返しの列車dに列車bの車両を充当する変更が行われている。
【0034】
(方法3)回送列車の時刻変更と折り返し駅での充当列車を変更する。
図4Cは方法3の説明図である。
図4Cの左図では、B駅からC駅へ向かう回送列車bが、C駅からの折り返し列車cとすれ違う。列車cには列車aの車両が充当されており、回送列車bは、C駅からの折り返し列車dに充当される。
図4Cの右図では、回送列車bが列車aより早くC駅に到着するように発車時刻が変更されている。また、折り返しの列車cに回送列車bの車両を充当し、折り返しの列車dに列車aの車両を充当する変更が行
われている。
【0035】
(方法4)回送列車を追加で運行する。
図5Aは方法4の説明図である。
図5Aの左図では、B駅に到着した列車aが折り返しの列車dに充当されている。
図5Aの右図では、列車aの後に回送列車bがB駅に到着する。列車aは回送列車cとなり、回送列車bは、C駅にて列車dに充当される。
【0036】
(方法5)出入庫の追加による車両を差し替える。
図5Bは方法5の説明図である。
図5Bの左図では、B駅に到着した列車aが折り返しの列車bに充当されている。
図5Bの右図では、列車aはB駅に入庫され、列車bにはB駅から出庫された車両が充当されるように変更されている。
【0037】
(方法6)列車の始発駅または終着駅を変更する。
図5Cは方法6の説明図である。
図5Cの左図では、C駅に到着した列車aが折り返しの列車dに充当され、B駅に到着した列車bが折り返しの列車cに充当されている。
図5Cの右図では、C駅に到着した列車aの車両が列車cに充当されることで、列車cの始発駅がB駅からC駅に変更されている。また、B駅に到着した列車bの車両が列車dに充当されることで、列車dの始発駅がC駅からB駅に変更されている。
【0038】
上記した方法1~6以外に、その他やむを得ない場合は列車を削除する(方法7)が行われている。方法1~7を組み合わせ、ダイヤの修正と、車両の仕業・交番の生成とを往復しながら、初期ダイヤ案の修正が行われる。
【0039】
初期のダイヤ案は要求される輸送サービスに関し、1日の運行に焦点をあてて理想的に生成される。このため、車両の交番上の都合に伴う初期ダイヤ案からの変更は可能な限り少ない方が好ましい。一方、所有車両数が多く、夜間の車両の留置場所も多岐にわたる場合、一度のダイヤ修正で制約を満たす交番を生成できることは稀であり、修正を要する箇所が多岐に亘ることが多い。このため、交番を生成する作業は非常に困難であり、現状、エキスパートであっても検討に多くの時間と労力を要している。
【0040】
<課題>
車両運用計画に関する研究にはダイヤ改正時に策定される基本計画(仕業と交番)と呼ばれるものと、基本計画策定後、毎日の各仕業に、どの編成を充当するかを決定する計画(ここでは回帰計画と呼ぶ)について、これまで様々な研究がなされてきた。しかし、従来の研究では、車両運用計画と、駅の着発番線変更やダイヤの変更については別々の問題として取り扱われてきた。このため車両運用計画の生成に必要な発着番線の変更による、列車ダイヤに与える影響を十分に考慮したものはみられない。
【0041】
<装置の概要>
以下、実施形態に係る車両運用計画生成装置について説明する。実施形態に係る車両運用計画生成装置は、実際のダイヤ改正業務における車両運用計画策定と車両運用計画策定に伴う列車ダイヤの修正を同時に取扱い、現実の路線において実行可能な最適解を、数理計画法を用いて比較的短時間で自動的に生成するものである。数理計画法は、数学的手法に基づいて、与えられた制約条件の下で、目的関数を最大化又は最小化する手法であり、数学的な厳密解が求まる。
【0042】
図6は、実施形態に係る車両運用計画生成装置で行うプロセスを示す。本プロセスでは、最初に、ダイヤ案計画を策定する。ダイヤ案計画の工程では、実際のダイヤ改正業務プロセスに則り、列車の発着時刻、駅構内番線、入れ換え計画(折返し充当列車の指定や回送列車等)、少なくとも1日の運行に必要な情報がすべて設定されたダイヤ案(初期ダイ
ヤ案と呼ぶ)を用意し、車両運用計画生成装置に入力する(S1)。
【0043】
続いて、列車ダイヤ全体に対する影響を考慮した上で初期ダイヤ案からの変更が可能と判断できる箇所(変更可能箇所)の情報を設定する(S2)。変更可能箇所の情報の設定は、手動でも自動でもよい。変更可能箇所の情報は、予め静的に設定されても、解がない場合に事後的に入力されてもよい。
【0044】
初期ダイヤ案と変更可能箇所との二つの情報から、検査周期等の各種制約を満たした、複数の運用グループの仕業と交番を自動的に生成する。このとき、初期ダイヤ案からの変更を最低限に抑えるのが好ましい。また、複数の鉄道会社(運行会社)が相互直通運転を行っている場合には、直通列車に関する走行キロの調整も自動的に行う(S3)。S3において実行可能解があれば、ダイヤが決定される(S4)。
【0045】
図7A及びB、
図8A及びB、並びに
図9は、列車ダイヤ生成及び修正の説明図である。
図7Aにおいて、A駅、B駅、C駅が直線で示されている。
図7Aにおいて、直線は1日の時間の流れを示し、時間は紙面の左から右に流れている。始発駅の出発時刻と終着駅の到着時刻との間に斜めの直線が引かれる。この直線は列車を示す。このようにして、ダイヤは、各駅からの列車の発着時刻、列車の走行区間を示す。
図7Aのダイヤに関して、A駅及びC駅の夫々の夜間留置は1本である。A駅及びC駅には、ホームが2本ある。B駅には車庫がある。
【0046】
図7Bは、仕業の策定作業を示す。白丸は「出庫」を示し、三角は「入庫」を示す。A駅、B駅、C駅の夫々の最初の列車に対して、「出庫」を示す白丸が付される。A駅及びC駅の最初の始発列車には、A駅及びC駅のそれぞれにおいて夜間留置(入庫)された車両が割り当てられる。B駅の最初の始発列車は車庫から出庫される車両が割り当てられる。また、B駅からA駅へ向かう始発列車に対し、車庫から出庫する車両が割り当てられる。また、各駅の始発列車に、折り返し運転の車両を割り当てることができる場合は、到着時刻と折り返しの出発時刻とが、曲線で結ばれる。
【0047】
図7Bにおいて、折り返し運転の車両割り当て後において、割り当てる車両がない列車、および車庫に戻る経路のない列車が存在する(折り返しを示す曲線を破線で示す)。
図8Aにおいて、太線で示すように、C駅から割り当てる車両がない列車に対し、車庫から出す運行(回送)および、A駅及びC駅に到着したが車庫に戻る経路のない列車を車庫に戻す運行(回送)を追加し、列車の到着時刻と回送列車の出発時刻とが曲線で結ばれる。
【0048】
次に、
図8Bに示すように、
図8Aに示したダイヤから交番(棒ダイヤ)を生成する。
図8Bでは、
図8Aに示したダイヤから、6つの仕業を抽出して、出庫駅をA駅→B駅→C駅の順に並べた交番が図示されている。しかし、
図8Bに示す交番には、以下の問題がある。
(1)車両“1”がA駅を出庫し、A駅に入庫するため、車両“1”~“6”を並び替えるだけでは、循環する交番を作成することが出来ない。
【0049】
そこで、
図9に示すようなダイヤの修正を行うことで、交番を成立させる。修正箇所は破線で示し、修正前のものは一点鎖線で示す。上記問題(1)について、車両“1”をB駅の車庫に入庫するように変更するとともに車両“5”をA駅からC駅への折り返し列車に充当し、A駅での夜間留置に変更する。
【0050】
実施形態に係る車両運用計画生成装置には、
図7Aに示す初期ダイヤ案のデータと、
図9に破線で示した変更可能箇所のデータ(変更可能情報)とを適宜の(所定の)タイミングで設定乃至入力することができる。車両運用計画生成装置は、初期ダイヤ案計画を示す
情報を用いた数理計画法により、車両運用計画(仕業及び交番)を自動的に生成する。このとき、実際に運用可能な(問題のない)交番、すなわち実行可能解があれば、初期ダイヤ案のダイヤを最終的なダイヤに決定する。これに対し、実行可能解がない場合(交番が
図8(B)に示した問題を含む場合)には、変更可能箇所のデータを用いて、車両運用計画生成装置がダイヤの修正を自動的に実行する。修正によって全ての問題が解決した場合、その時点の修正ダイヤが最終的なダイヤとして決定される。
【0051】
このように、車両運用計画生成装置によれば、初期ダイヤ案に基づく車両運用計画の生成において、実行可能解が導出されない場合に、仕業の変更可能箇所を示すデータを用いてダイヤの修正を行い、交番を成立させることができる。以下、車両運用計画生成装置の詳細について説明する。
【0052】
<<ハードウェア構成>>
図10は、車両運用計画生成装置として動作する情報処理装置(コンピュータ)のハードウェア構成例を示す。情報処理装置10には、例えば、パーソナルコンピュータ、ワークステーション、サーバマシンなどの汎用または専用のコンピュータを適用することができる。また、情報処理装置10は、固定端末でも、移動端末(スマートフォン、タブレット端末などのスマートデバイス等)でもよい。
【0053】
図10に示す例では、情報処理装置10は、バス1を介して相互に接続された、CPU(Central Processing Unit)11と、記憶装置12と、通信インタフェース(通信IF
)13と、入力装置14と、ディスプレイ15とを含む。CPU11は、「制御部」、「プロセッサ」の一例である。
【0054】
記憶装置12は、主記憶装置と補助記憶装置とを含む。主記憶装置は、データやプログラムの記憶領域、CPU11の作業領域、通信データ等のバッファ領域として使用される。主記憶装置は、RAM(Random Access Memory)、又はRAMとROM(Read Only Memory)との組み合わせである。補助記憶装置は、データやプログラムの記憶領域として使用される。補助記憶装置は、ハードディスクドライブ、SSD(Solid State Drive)、
EEPROM(Electrically Erasable Programmable Read-Only Memory)、フラッシュ
メモリなどを含む。
【0055】
通信IF13は、例えばLAN(Local Area Network)カードであり、ネットワーク(例えばインターネット)との接続やデータの送受信を司る。通信IF13は、有線によってネットワークとのに接続を行うものでも、無線LANなどの所定の無線通信規格に従った無線接続を行うものでもよい。
【0056】
入力装置14は、情報の入力に使用される、キー、ボタン、ポインティングデバイス、タッチパネルなどである。ディスプレイ15は、情報を表示(出力)する。入力装置14及びディスプレイ15でユーザインタフェース(UI)16をなす。また、情報処理装置10は、音声入力装置(マイクロフォン)や音声出力装置(スピーカ)を含んでいてもよい。
【0057】
CPU11は、記憶装置12に記憶されたプログラムを実行することによって、以下の処理を行うことができる。
(1)ダイヤ案(初期ダイヤ案又は修正ダイヤ案)のデータを受け付ける処理
(2)ダイヤ案に基づく車両運用計画の実行可能解を数理計画法によって求める処理
(3)ダイヤ案に対する変更可能箇所を示すデータを受け付ける処理
(4)ダイヤ案に対する車両運用計画の実行可能解がない場合に、変更可能箇所を示すデータを用いてダイヤ案を修正する処理
(5)修正したダイヤ案について数理計画法による実行可能解を求める処理
(6)実行可能解が求まった場合に、修正したダイヤ案に基づく車両運行計画のデータを出力する処理
【0058】
CPU11が行う処理の一部又は全部は、複数のCPUや、マルチコア形のCPU、CPU以外のプロセッサ(DSPやGPUなど)、集積回路(FPGA(Field Programmable Gate Array)やASIC(Application Specific Integrated Circuit)など)、プロセッサとハードウェアの組み合わせ(SoC(System-on-a-Chip)、MCU(Micro Control Unit)など)などによって行われてもよい。
【0059】
<<列車ダイヤ生成処理の例>>
図11は、列車ダイヤ生成処理の例を示すフローチャートである。列車ダイヤ生成処理は、CPU11が記憶装置12に記憶されたプログラムを実行することによって行われる。入力データとして、ダイヤ案(ダイヤ案データ)、車両情報(車両運用グループデータ)、検査情報(検査データ)、キロ程情報(駅間キロ程データ)が入力装置14を用いて情報処理装置10に入力され、記憶装置12に記憶される。必要に応じて、基地内滞泊本数を示す帯泊車両情報がさらに入力・記憶される。
【0060】
ダイヤ案(初期ダイヤ案)を記録したファイルは、以下の情報項目(パラメータ)を含む。但し、全てを含むことは必ずしも必須ではない。ダイヤ案のファイル形式は、例えば、テキスト形式のCSVファイル形式であるが、このファイル形式に制限されない。
・駅名
・列車番号
・車両運用記号
・使用番線
・着時刻(hh:mm:ss)
・発時刻(hh:mm:ss)
・運用(停車、通過、折返、同方向種別変更、出庫、入庫)
・前列車番号(始発駅で運用が「折り返し、同方向種別変更」の場合)
・後列車番号(終着駅で運用が「折り返し、同方向種別変更」の場合)
【0061】
図12は、車両情報のファイルを説明する図である。車両情報のファイルは、例えばテキスト形式のCSVファイルであるが、これに限定されない。ファイルは、1又は複数のレコードからなる表形式を有する。レコード中の要素(情報項目)としては、以下を含む。
・所属会社数(例えば整数で表現)及び運用グループ数(例えば整数で表現)
・運用グループ毎の所属会社情報(例えば整数の配列で表現)及び最大使用可能編成数(例えば整数の配列で表現)
【0062】
図13は、検査情報のファイルを説明する図である。検査情報のファイルは、例えばテキスト形式のCSVファイルであるが、これに限定されない。ファイルは、1又は複数のレコードからなる表形式を有する。レコードは、交番検査周期日数と仕業検査周期日数とを要素として含むレコードと、検査可能場所のレコードとを含む。交番検査周期日数、仕業検査周期日数は、日数(整数)を指定することで行われる。なお、交番検査周期日数が運用グループ毎に1つでよい場合、交番検査周期日数は不要である。検査可能場所は、検査場所の基地名(文字列)、番線(文字列)、検査の開始時刻(hh:mm:ss)、及び終了時
刻(hh:mm:ss)によって表現される。検査可能場所のレコードは、検査可能場所毎に用意
される。
【0063】
図14は、キロ程情報のファイルを説明する図である。キロ程情報は,駅間の鉄道会社
別のキロ定情報を示す。キロ程情報のファイルは、例えばテキスト形式のCSVファイルであるが、これに限定されない。ファイルは、1又は複数のレコードからなる表形式を有する。レコードは、始発駅名、終着駅名、会社毎のキロ程を要素として含む。レコードは、始発駅名と終着駅名との組み合わせ毎に用意される。
【0064】
図15は、基地内帯泊本数のファイルを説明する図である。基地内帯泊本数のファイルは、例えばテキスト形式のCSVファイルであるが、これに限定されない。基地内帯泊本数とは、当日の運行終了時に駅(車両基地)内に滞在する車両(列車、編成)の本数である。ファイルは、1又は複数のレコードからなるテーブルを含む。レコードは、基地名、番線、運用グループ番号、本数の要素情報を持つ。
【0065】
図16は、ディスプレイ15に表示されるメニュー画面(データ入力画面)の一例を示す。
図12において、メニュー画面には、ダイヤ案、車両情報、検査情報、キロ程情報、帯泊車両情報、及び変更可能情報の各ファイル名を表示する表示欄と、選択ボタンとを有する。各ファイルは記憶装置12に記憶されている。
【0066】
各表示欄を選択すると、対応する情報を記録したファイルのリストがプルダウンメニューで表示される。入力装置14を用いてリスト中のいずれかのファイル名を選択すると、選択したファイル名が表示欄に表示され、その状態で選択ボタンを押すと、表示欄に表示されたファイルが入力データとして確定選択された状態となる。
【0067】
また、メニュー画面は、列車ダイヤ(車両運用計画)のファイルの出力先フォルダを選択するための表示欄及び選択ボタンを有しており、列車ダイヤの情報のファイルの記憶先を選択することができる。
【0068】
さらに、メニュー画面には、変更可能箇所編集ボタンを有する。変更可能箇所編集ボタンが押されると、ディスプレイ15には、変更可能箇所の編集画面(
図17)が表示される。編集画面には、初期ダイヤ案(又は修正後のダイヤ)に基づくダイヤが表示される。ユーザは、UI16を用いて、ダイヤの編集(列車の追加、接続の変更、列車の削除等)を行うことができる。そして、編集画面の完了ボタン(「完了する」のボタン)を押すと、変更可能箇所(破線で図示)を示す変更可能情報のファイルが生成・記憶される。このとき、編集後のダイヤを示すファイルが生成され、記憶装置12に記憶されてもよい。メニュー画面の変更可能情報の表示欄及び選択ボタンを用いて、変更可能箇所のファイルを呼び出して選択することができる。また、ダイヤ案の表示欄及び選択ボタンで、修正後のダイヤ案のファイルを呼び出して選択することもできる。メニュー画面は、変更可能箇所のデータの入力を促す画面の一つに相当する。
【0069】
メニュー画面は、実行ボタン(「実行する」のボタン)を有する。ダイヤ案、車両情報、検査情報、キロ程情報、帯泊車両情報(オプション)、変更可能情報(オプション)が選択されている状態で、実行ボタンを押すと、CPU11が、車両運用計画の解を求める処理(計算)を開始する。すなわち、
図11のフローチャートにおける、S11(ノード作成)、S12(アーク作成)、S13(ノード・アーク整理)、S14(最適化実施)、S15(最適解の有無判定)、S16(データ出力)、S17(変更可能箇所の入力)の、それぞれの処理が行われる。
【0070】
CPU11は、S11~S13の処理によって、車両運用モデルのネットワークを自動で生成し、S14において、混合整数計画問題として解を求める。解が求まったと判定される場合には(S15のYes)、
図18に示すような最適解の発見を示すダイヤログボックスを表示し、「帳表出力」のボタンを押すと、運用グループ毎の仕業及び交番、所属会社別の各種走行キロデータを示す帳表を生成・出力する。帳表は所定のファイル形式で
記憶装置12に記憶される。
【0071】
仕業及び交番の出力(帳表)では、運用グループ毎に、使用するノード(後述)とその順序が出力される。これらの情報を元に、仕業及び交番に対して、新しい運用番号を付与し、運用表と棒ダイヤ形式で仕業及び交番を示す情報が出力される。このとき、仕業毎の走行キロ及び回送キロ、運用グループ毎の走行キロ等が計算・出力され、出力に含まれてもよい。
【0072】
図19は、キロ程の出力データ(帳表)の例を示す。例えば、鉄道会社毎に、自社線内列車キロ、車両走行キロ、走行キロ差、他社線内走行キロを表示する。
【0073】
また、ダイヤ修正がある場合はその箇所を示す情報を出力乃至記憶することもできる。ダイヤ修正箇所の情報は、例えば、追加アーク(後述)の使用箇所を羅列することで表現される。追加アークは、アークの前ノードと後ノードとの情報を紐付けて出力することで表現できる。例えば、「〇〇列車 〇〇駅着 → 〇〇列車 〇〇駅発」、「〇〇列車 〇〇駅着 → 〇〇駅入庫」、「〇〇駅出庫 → 〇〇列車 〇〇駅発」のような表記を適用できる。アークは図示によって表現されてもよい。
【0074】
S15において解が求まらないと判定される場合には(S15のNo)、
図20に示すような最適解がない旨を示すダイヤログボックス(変更可能箇所のデータの入力を促す画面の一つに相当)がディスプレイ15に表示される。このとき、ダイヤログボックスの「変更可能箇所編集」のボタンを押すと、変更可能箇所の編集画面(
図17)が呼び出され、ダイヤを修正し、変更可能情報(追加アーク、ダミーノード)を生成・記憶することができる。
【0075】
このように、仕業や交番等の各種制約(成立条件)を満たすことができる解が無い場合には、解がない旨を表示することで、解がないことを早期にユーザに報知乃至明示することができる。解がない場合には、初期ダイヤ案より変更可能な任意の箇所を手動(または自動)で追加することで、実行可能な解を速やかに求めることができる。
【0076】
<<処理の詳細>>
以下、S11~S16の処理の詳細について説明する。
(車両運用モデルと求解法)
実施形態の車両運用計画生成装置では、ダイヤ案(初期ダイヤ又は修正ダイヤ案)を用いて車両運用モデルを自動生成する。車両運用計画のモデル(車両運用モデル)は、ダイヤ案、すなわち、車両運用計画の生成に必要な情報を、ノードと重みのついたアークを用いたネットワーク(車両運用ネットワークと呼ぶ)で表現される。CPU11は、メニュー画面を用いて入力された各種の入力データから車両運用ネットワークを生成する(S11、S12)。続いて、CPU11は、不要なノードを省略する等の処理によってノードとアークを整理し(S13)、車両運用ネットワークの複雑さを一定程度軽減したのち、混合整数計画法を用いて各種制約(数理計画法における制約条件)を満たすアークを選択し(S14)、結果を基にデータを整理し車両運用計画として出力を行う(S16)。
【0077】
(ノードとアーク)
入力データのうち、車両運用計画に係る事象、すなわち、出庫、列車、入庫、検査のそれぞれの事象をノードとして表現する。ノードは事象の開始駅、開始時刻、終了駅、終了時刻の情報を保持する。事象間の接続関係はアークにより表現される。アークは、始点側のノードの所属会社別の列車キロ、回送キロの情報を重みとして保持する。また、アークは、始点側のノードから終点側のノードに渡る際に必要な日数(同一日であれば“0”、翌日以降に跨がる場合は“1”以上)を日数の情報として保持する。
【0078】
図21Aは、ある車両の1日の仕業の例を示す。
図21A中のA,B,Cは駅を示し、○は出庫、△は入庫、0001~0004 は列車の番号を示す。
図21Aに示す仕業の例では、0001列車がA駅より出庫し、C駅で折り返し列車(0002列車)に充当後、B駅で入庫する
。0003列車として出庫するまでの間にB駅の構内にて検査が行われ、C駅で0003列車から0004列車に折り返し充当された後、A駅で入庫されて、その日の仕業は終了する。
【0079】
図21Bは、
図21Aの仕業を車両運用ネットワークとして示した図である。車両運用ネットワークでは、仕業は、1~9の9個のノードに分割され、ノード間の遷移は有向アーク(矢印)で示される。ノード“1”から“9”までは、アークによって当日中に遷移する。このため、経過日数を表す重みは“0”、ノード“9”からノード“1”を結ぶアークは翌日になる。従って、日数を表す重みに“1”が設定される。この他、列車ノードの後につながるアーク“2”→“3”、アーク“3” →“4”、アーク“7”→“8”
、アーク“8”→“9” については、列車キロ、回送の場合は回送キロ等の情報が重み
として設定される。
【0080】
(変更可能箇所の設定)
実施形態の車両運用計画生成装置では、初期のダイヤ案から変更可能と判断される箇所を手動または自動で設定することができる。変更可能箇所は、ダミーノードと追加アークにより表現される。変更可能箇所は、初期ダイヤ案と同時期に生成しても、初期ダイヤ案について解がないとの結果を受けて生成してもよい。生成は手動でも自動でもよい。
【0081】
通常のノードについては、入ってくるアークと出ていくアークを必ず1本ずつ設定し、列車ダイヤの構成要素として抜け落ちることがないように求解される。しかし、ダミーノードについては、この制約を緩め、求解に使用しても使用しなくてもよい(使用または不使用を選択可能な)ノードとして設定される。なお、ダミーノード、および追加アークの設定にあたり、可能であれば使用したくない変更については、接続する追加アークの重みとして、追加コストに大きい値を設定する。変更が容易あるいは、まったく問題がないような場合では、追加コストを0 または小さな値とすることで、自動で計画を生成する際に選択されやすく、あるいはされにくく設定することが可能である。このように、追加アークには、求解における、その選択(使用)についての優先度を示す重みを設定してもよい。
【0082】
図22A~C、
図23A~Cは、ダミーノードと追加アークの設定例を示す。
図4Aの出庫場所・入庫場所変更を表現するには、
図22A及びBに図示する表現を用いる。a列車とb列車とが1対1の関係で変更できる場合には、
図22Aのように、B駅出庫(ノー
ド“1”) からb列車(ノード“4”)、および、A駅出庫(ノード“3”) からa列車(ノード“2”) に直接アークを設定する。
【0083】
a列車はA駅からも出庫できる、b列車はB駅からも出庫できる場合には、
図22Bのように、A駅の出庫ノード(ノード“7”) とB駅の出庫ノード(ノード“8”) をダミーノードとして追加し、ノード“7” からノード“1”、およびノード“8” からノード“3”に追加アークを設定することで、表現が可能である。
【0084】
図4B(折り返し駅での充当列車変更)、
図5C(列車の始発又は終着駅を変更)を表現するには、
図22Cに示すように、a列車からc列車、b列車からd列車へ追加アークを設定する。同様に、
図4C(回送列車の時刻変更と折り返し駅での充当列車変更)に対応する追加アークの設定例は、
図23Aのとおりである。
【0085】
また、
図5Aに対応する設定例は、
図23Bに示すとおり、A駅出庫、入庫を示すダミ
ーノード“3”,“4”を追加し、a列車(ノード“1”) からA駅入庫ノード(ノード“4”)、A駅出庫ノード(ノード“3”) からd列車(ノード“2”) に追加アークを設定
する。
図5B(出入庫の塚による車両の差し替え)については、
図23Cのように設定することで表現が可能である。
【0086】
なお、設定した追加アークを使用した場合に、列車キロ、あるいは回送キロが変化する場合には、アークのそれぞれの項に差分の値を設定することで、各種キロ計算に反映させることが可能である。
【0087】
(初期ネットワークの生成)
CPU11は、入力された初期ダイヤ案、及び変更可能情報(入力されている場合)の設定を終えた後、求解に向けた車両運用ネットワークを構築する。初期の車両運用ネットワークでは、CPU11は、すべての出庫、列車、入庫、検査のそれぞれの事象をノードとして生成する(S11)。続いて、初期ダイヤ案、変更可能情報に含まれるダミーノードに関して、入力データについて指定されている情報に従って、出庫から列車、列車から列車、列車から入庫の各ノード間を結ぶアークを生成する(S12)。その後、構内毎の入庫と出庫を時間順に並べ、車両の収容状況を把握し、入庫時刻から24時間以内に出庫可能な出庫の事象に向かい、アークを生成する。また、入庫時刻以降に開始する検査、および検査終了時刻以降に設定されている出庫に対し、同様にアークを生成する。その他に、追加アークをノード間で生成し、初期の車両運用ネットワークを完成させる。
【0088】
(ネットワークの整理)
図24Aに生理前のネットワーク例を示し、
図24Bに整理後のネットワークを示す。仕業及び交番を混合整数計画問題として求解する際、変数となる要素を減少させ、求解時間を短縮することを目的に、CPU11はノードとアークの整理を行う(S13)。初期ネットワークで生成したもののうち、ノード(ノードAとする)から出ていくアークが1本のみのもの(このアークをアークabとする)については、必ず当該のノードから次のノード(ノードBとする)に遷移することとなる。そこで、ノードAおよびアークabを削除し、ノードBに統合する。具体的にはノードAに入っていたアーク群の終点をノードBに変更するとともに、アークabの各種重みを該当のアーク群のそれぞれに加算する。また、ノードAの内容をノードBに追加記録する。
【0089】
(定式化)
以下の表1は、集合の定義を示す。
【表1】
【0090】
表1に関して、Nはすべてのノードの集合とする。Nには出庫ノードNs、列車ノードNt、入庫ノードNe、検査ノードNm、交番検査ノードNml、ダミーノードNd が
あり、それら全てを含んでいる。また、Noutiは、ノードiに続くノードの集合、Nini
はノードiに先立つノードの集合と定義する。そのほか、複数の鉄道会社(運用会社)に跨がる直通運転に対応するため、運用会社の集合をR、運用車両グループの集合をG、各運用グループの開始ノードをSgに定義する。また、交番を生成する際に特定のノード通過日を設定する必要のあるノードの集合をNrに、仕業検査、交番検査の実施日を指定する必要のあるノードの集合をそれぞれ、Nrm、Nrmlと定義する。
【0091】
【0092】
表2に関して、αからεまでで目的関数の重要度を調整するパラメータを定義する。Wij、Wuij、Wdij、Wtr
ijの夫々は、ノードiからノードjに渡るアークを用いる場合の経過日数、追加コスト、回送キロ、回送を含むr社の列車キロを定義する。Cgでは、運用グループ毎の最大充当可能編成数を、Rr
gでは、運用グループがどの会社に所属
しているかを0又は1の変数で示す。また、Adrは、列車の運転以外で調整キロがある場合に定義し、直通列車キロ調整の際に用いる。Dmでは、仕業検査周期日数、Dmlでは、交番検査周期日数を、交番内において通過指定日がある場合にはPi、仕業検査の実施
日を指定する場合には、Pmi、交番検査の場合はPmliにそれぞれの検査日からの経過日数
を定義する。Mは十分に大きな値を定義する。
【0093】
【0094】
uag
ijは運用グループgの車両をノードiからjに続くことを示す変数、si、diはそれぞれノードi の交番内の通過番号、通過日数を示す。dbi、dai はノードi の前回検査からの
経過日数を示す。dlbi、dlai はノードi の前回交番検査からの経過日数を示す。ノードi
が検査ノードである場合、dbi は1にリセットする。またノードi が交番検査ノードで
ある場合、dlbi を1 にリセットする。ung
i、umg
i はそれぞれノードi、検査ノードi が運用グループgに充当されていることを示す変数である。tcr、tor はr 社所属車両につ
いて、全区間での列車走行キロ合計と、他社線内での走行キロ合計を、ttr ではr 社線内を走行している列車の列車キロ合計を変数として定義する。
【0095】
(目的関数)
目的関数を示す式(1)を以下に示す。
【数1】
【0096】
式(1)により、使用編成数と追加アーク使用コスト、ならびに回送キロの合計にそれぞれの重み係数α、β、γを乗じた総和のほか、各社車両の走行キロのアンバランスを最小限とすべく、各社所属車両走行キロtcrから各社線内を走行している列車の列車キロ合
計ttrを減算、調整キロAdr を加えたものに重み係数δを乗じた値と、自線内の走行を優
先させるためにtor に重み係数εを乗じた値の総和の最小化を目的関数とする。
【0097】
(制約式)
以下に、式(2)~(18)を示す。
【数2】
【0098】
式(2)ではそれぞれの会社別、列車キロの合計を算出し、式(3)において、各社車両の他社線内を含む全ての走行キロを算出する。式(4)では各社所属別、他社線内での
走行列車キロ計算を行う。式(5) により、各運用グループの最大可能割り当て編成数を
指定する。式(6)、式(7)によりグループ毎の検査個数の和が一定個数以上、 一定
数以下であることを制約する。
【0099】
式(8)、式(9)によりダミーノード以外の出庫ノード、列車ノード、入庫ノードは入りアークと出アークが必ず1本ずつとなる制約を示す。ダミーノードについては、式(10)、式(11)にてアークは必ず1本以下であることを制約する。式(12)にて、ダミーノードを使用する場合は出入りアークとも1本が、使用しない場合は0本となることを保証する。
【0100】
検査ノードについては、式(13)、式(14)にて、使用する場合はアークが1本ずつ、アークを使用しない場合は0本ずつとなるよう保証する。各ノードは1つの運用グループにのみ所属できることを式(15)にて示す。同時に、各ノードを出入りするアークのグループは同一であることを式(16)、式(17)により記述する。各検査ノードを使用できるのは1つのグループ以下であることを式(18)に示すとともに、対応する通
常のノードと同一のグループであることを式(19)にて示す。
【0101】
【0102】
式(20)、式(21)ではそれぞれのグループで各ノードをつないで交番を巡回路を構成する
ための制約で、ノードiからノードjに渡って運用する場合、jが交番の途中である場合は
式(20)を、交番の開始ノードである場合は式(21)を用いることで通過番号を設定する。同様に、交番内の経過日数を式(22)、式(23) で算出する。
【0103】
式(24)では、前の検査ノードからの経過日数を計算するもので、前のノードの検査経過日(dbi) より、アークに定義されている重みWijを加算した数値をdajに代入し算出する。当該ノードが検査ノードの場合は、前述の式により前のノードからの検査経過日数を算出する。その後、後に続くノードへの基準日となるdbへは、式(27)により、リセットして1を代入する。検査ノード以外である場合は、式(26) によりdaと同一の値を代入する。交
番検査周期についても同様に、式(25)、式(29)、式(29) によって算出する。
【0104】
式(30)、式(31) により、検査周期日数が指定した日数を超過しないよう、また式(32)
、式(33) により、交番検査周期日数が指定した日数を超過しないよう制約を与える。平
日ダイヤと土休日ダイヤで滞泊場所を同一に設定する場合など、初期の条件から特定のノードを特定日に通過させる必要がある場合には、式(34) により設定する。
【0105】
同様に、仕業検査からの経過日を指定する場合には、式(35)、交番検査は式(36)により設定する。式(37)では、各運用グループの開始ノードを設定し、式(38)にて開始ノードの通過番号を0に、式(39)にて経過日数を1(初日)に設定する。各変数の取りうる値の範囲を式(40)にて設定する。
【0106】
<適用例>
<<適用例1>>
適用例1として、最も基本的な例として、2グループ(8編成と18編成の計26編成)の交番の生成を行う例を示す。なお、今回は他社線直通列車を含まず、車両走行キロ、回送キロについても考慮対象外とした。列車は598本あり、出庫、入庫はそれぞれ57箇
所、夜間の留置箇所は9箇所、仕業内で検査が可能な箇所は3箇所の初期列車ダイヤ案に加え、3本の回送列車をダミーノード、その他変更箇所として56本の追加アークを設定し、車両運用計画生成装置(情報処理装置10)で求解を行った。初期の車両運用ネットワーク生成の段階では、750個のノードと1921本のアークとして表現されたのち、ネットワークを整理し、130個のノードと1301本のアークにより数理計画法にて求解が行われた。この例では約13秒で、解を得ることができた。追加アークを4箇所用いることにより制約を満たした交番を得ることができた。
【0107】
得られた車両運用計画のうち、A43仕業の出力例を
図25に示す。仕業表内には、前の列車と初期の割り当て仕業が異なる場合には斜体及び強調文字で、所定の仕業と異なる箇所については通常文字で、初期ダイヤ案での割り当て仕業を表示している。得られたA43仕業については、初期のダイヤ案でA14仕業に割り当てられていた9100列車で相模大野駅を出庫し、一旦相模大野駅に9 時31分に入庫、再出庫後、海老名駅に15:50分に入
庫している。その後、A14仕業ではなく、A37仕業に割り当てられていた9297列車にて22時21分に出庫し、小田原駅到着後、追加アークによる折返し列車の運用変更が選択され、A32仕業に割り当てられていた9204列車として足柄駅に入庫する行路が選択されている。この変更可能箇所として設定した追加アークが選択されている箇所については、小田原駅折り返し時に時刻の矛盾が発生しており、ダイヤの修正が必要となることがわかる。
【0108】
<<応用実行例>>
応用事例として、土休日ダイヤ等を想定した設定方法、ならびに回送列車キロ計算機能の活用方法について、実施例を挙げる。想定したダイヤは、6編成(E61~E66) と27編
成(E11~E37)の2グループからなる33編成で構成される。
【0109】
はじめに、初期ダイヤ案のみで、出庫、列車、入庫、検査の各ノードを生成し、本装置より得られた結果のうち、E61グループの棒ダイヤを
図26に示す。E61で検査を行った後、E62以降の夜間留置は、大野、開成、成城、唐木田、成城になっている。
【0110】
続いて、土休日ダイヤを想定し、平日ダイヤと同じ箇所に夜間留置を行う必要があるとすると、交番内の仕業毎に留置場所を指定する必要がある。この場合には、留置場所、留置本数分だけ、4時05分出庫―同駅4時10分入庫(すなわち始発列車の前の列車)となるよう、出庫、列車、入庫ノードを生成するとともに、それぞれのノードに交番内通過日を指定する。
【0111】
このように実際には運転をしないものの、列車としてノードを設定し、車両運用ネットワーク上に表現することにより、必ずこのノードを通る運用計画を得ることが可能であり、目的とする車両運用計画を得ることが出来る。得られた結果を
図27に示す。
図27では、E62以降の夜間留置が、足柄、小田原、小田原、唐木田、成城と、指定された留置場
所が反映された交番を得ることが出来た。
【0112】
図27の車両運用計画を基に、回送列車キロ計算機能を活用した実行例を
図28に示す。
図28における、E64とE65の仕業表の一部を
図29に示す。E64の3516列車が新宿に到
着後、E65の3017列車に折り返しが可能であるとする。また、ここで示す9801列車と9802
列車は回送列車である。この場合、3516 列車から、3017列車に追加アークを設定し、9801列車、9801列車の成城入庫、9802列車の成城出庫、9802列車をそれぞれダミーノードに
指定するとともに、回送列車キロを設定し、情報処理装置10で解を求める。
【0113】
仮に、当該回送列車を運転しなくても、交番を生成することが可能である場合には、目的関数内の項(式1)により回送列車キロが少ない解が選択されることで、回送列車キロの削減が可能である。得られた結果は
図28に示されたとおり、E64、E65の小田原での出庫列車を変更することで、回送列車を運転せずに交番が生成され、同機能が有効であることが確認された。
【0114】
<<直通列車を含む実行例>>
実施形態に係る車両運用計画生成装置は、相互直通運転を行っている場合に、各社所属の車両の走行キロを計算し、調整する機能を持っている。ここでは、小規模な例として、3社がそれぞれ、6編成、6編成、5編成の17編成で構成され、列車本数206本、出庫
及び入庫それぞれ29箇所、夜間留置箇所は7箇所を想定する。
【0115】
本実行例では、追加アーク・ダミーノードの設定はせず、初期のダイヤ案を用いて、車庫内での車両の差し替えのみで生成可能な交番を求めることとした。各会社間での車両走行キロの差を最小に設定するには、式1のδを任意の値に、自社線の走行を優先させるためには、εを任意の値に設定することで目的とする交番を得ることができる。
【0116】
本実行例では、初期ダイヤ案の他、δおよびεを1または0に設定することで、車両走行キロの差を最小に設定した場合、バランス型(車両走行キロの差を小さく、かつ他社線内走行キロを小さく)に設定した場合の各社、各運用グループの走行キロについて、
図30(表4~7)に示す。
【0117】
表4及び表5から、初期ダイヤ案での交番では、走行キロ過不足の絶対値の合計が1668.4km であったものが、交番の生成し直しによる結果、284.4kmに抑えることができた。また、表6に示すバランス型では、車両走行キロを最優先した結果より、絶対値は31.2km増加するものの、各社の他社線内での走行キロは43.8km減少させることが出来、各社所属車
両はより自車線内を走行する交番となった。自社線での走行を最優先に設定した場合、表7に示すとおり、他社線内車両走行キロは3481.2kmと、他の交番よりも最も小さな値となり、目的に応じた交番を得ることが出来た。
【0118】
実施形態に係る車両運用計画生成装置は、以下を行うことが出来る。
・ダイヤ案から車両運用における仕業と交番を自動作成できる。
・変更可能情報を生成し、変更可能情報を用いてダイヤ案を修正できる。
・変更可能箇所の優先度を考慮したダイヤを自動作成することができる。
・ダイヤ案の変更したくない箇所は変更せずに計画を自動作成できる。
・各種検査周期を考慮した計画を自動作成できる。
・複数の運用グループの計画を同時に自動作成できる。
・複数の会社にまたがる運用グループの計画を同時に自動作成できる。
・複数の会社にまたがる車両の会社別走行キロの差を最小化することができる。
・複数の会社にまたがって運行する場合,自社の車両の自車線内の走行キロを最大化することができる。
・実行可能解が無いことを短時間でユーザに知らせる(報知する)ことができる。
・混合整数計画法により最適解を導出できる。
【0119】
実施形態に係る車両運用計画生成装置によれば、ダイヤ案を変更可能情報(追加アーク及びダミーノード)により修正することで、実行可能な(制約を満たす)ダイヤ及び車両運用計画(仕業及び交番)を得ることができる。また、複数運用グループの検査周期を考慮し、相互直通運転を行う場合にはそれら車両キロの調整をも考慮した計画を、混合整数計画法により自動的に生成することができる。
【0120】
すなわち、列車ダイヤ生成と車両運用計画が切り離されたモデルではなく、初期ダイヤ案を修正しながら、車両運用計画を完成させていく実際のダイヤ改正業務プロセスに近いモデルとすることで、実用に資する解を、実用的な速度で自動的に得ることが出来るようになった。また、本装置は数理計画法を用いていることから、ヒューリスティックな求解法と比較し、解がない場合の応答性が比較的高いとともに、解が存在する場合には、最適解が保証されるという特徴がある。
【0121】
また、実行例で示したように、車両運用計画生成装置によれはば、平日ダイヤ、土休日ダイヤ、相互直通運転ダイヤの全てに対応することができ、改正業務における生産性の向上、ならびにダイヤと車両運用計画の品質向上に資することができる。以上説明した実施形態の構成は、適宜組み合わせることができる。
【符号の説明】
【0122】
10・・・情報処理装置
11・・・CPU
12・・・記憶装置
13・・・通信インタフェース
14・・・入力装置
15・・・ディスプレイ