以下では本発明の実施例1について、図面1から21、数1〜11を用いて説明する。本発明の実施例1は、全ての編成に対する構内入換計画を、白紙の状態から一括して作成するものである。編成とは、まとまって移動する(互いに連結された)複数の車両をいう。但し、編成は、1つの車両であってもよい。
図1は車両基地構内入換計画作成装置の構成を示す図である。車両基地構内入換計画作成装置は計算機システムであり、処理装置0110と、処理装置0110に接続される記憶装置0120、入力装置0130、表示装置0140及び出力装置0150から構成される。また処理装置0110はネットワーク0160と接続される。記憶装置0120は、構内入換計画の作成対象となる編成情報を格納する編成データ0121、車両基地構内の番線情報を格納する番線定義データ0122、同じく車両基地構内の進路情報を格納する進路定義データ0123、進路同士の競合関係を定義する進路競合定義データ0124、編成に対して実施する作業情報を定義する作業定義データ0125、構内入換計画の各種作成条件を格納する作成条件データ0126、構内入換計画の一部ないし全体を格納する入換計画データ0127を記憶する。
入力装置0130は、計画作成者による車両基地構内入換計画作成装置の操作に用いる装置である。表示装置0140は計画作成結果の提示に用いるための装置である。出力装置0150は計画作成結果を帳票形式で印刷するための装置である。処理装置0110のメモリには、車両基地のレイアウト情報をネットワーク形式のデータとして構成するための車両基地レイアウトネットワーク作成手段0110、各編成に対する有望な入換パターン候補の集まりを集約した入換シーケンスを初期化する入換シーケンス初期化手段0112、入換シーケンスに基づいてパターンの選択と入換時刻の決定を行い、実行可能な構内入換計画を作成する入換パターン選択及び時刻決定手段0113、得られた計画に対してその不具合を修正するように入換シーケンスを変更する入換シーケンス変更手段0114、がプログラムとして格納され、処理装置0110によって実行される。ワークエリア0115はプログラム実行の作業領域として使用されるメモリ上の領域である。上記プログラムは、記憶装置0120に格納し、この記憶装置の起動装置を介して処理装置0110に読込むか、または他の計算機の記憶装置ないしは独立した記憶装置に格納し、ネットワーク0160を介して処理装置0110に伝送した上で実行することが可能である。
図2は、本実施例における車両基地構内入換計画作成装置の処理概要を示す全体処理フロー図である。以下ではこのフローの各ステップについて詳細に説明していく。なお、説明を具体的なものとするために、以下では図3に示す車両基地を作成対象と仮定して説明をおこなうが、本発明は特定の車両基地を前提としたものではなく、異なるレイアウトを持つ複数の車両基地に対して適用可能なものである。また、図3に示す車両基地は仮想のものであるが、番線間の移動の組合せが多岐にわたり、その組合せによっては転線や入出区を並行しておこなうことも可能であることから、現実の車両基地が備えるレイアウトの複雑さを要素として含んだものとなっている。
図2に戻り説明を続ける。まずステップ0210において、図1の車両基地レイアウトネットワーク作成手段0111を用いて車両基地構内のレイアウトをネットワーク形式のデータとして構成し、処理装置内部のワークエリアに格納する。この処理における入力データは、図1の番線定義データ0122と進路定義データ0123の2つである。
図4は番線定義データ0112の例を示す図である。番線定義データは、車両基地構内に存在する番線の1つに対する定義内容を1行としたテーブル形式のデータである。各行は、番線名、その用途、経由可能かどうかを示すフラグから構成される。図4の番線定義データは、図3の車両基地における全ての番線の定義を含んでいる。「経由可能」の意味についてはステップ0220(入換シーケンス初期化)の部分で説明する。
図5は進路定義データ0123の例を示す図である。進路定義データは、車両基地構内の番線と進路を縦軸、横軸としたマトリックス形式のデータである。マトリックスの1行が進路1個に対する定義内容であり、同じ行の各列には0,1,2の3種類の値のうちのどれかを格納する。なお、図面のわかり易さの都合上、図5では0は表記せずにブランクとしている。これらの値は、行と列で指定した進路と番線の組合せに対する構内レイアウト上の接続関係を意味する。例えばx行y列の値が0ならば、進路xと番線yは接続関係なし、1ならば番線yは進路xの発点(すなわち開始位置)、2ならば番線yは進路xの着点(終了位置)であることを表す。図5の進路定義データの例は、図3の車両基地における全ての進路の定義を含んでいる。なお、車両基地の配線構造の上では進路が存在する場合であっても、信号設備の関係で実際には進路設定不可能なものはこの定義には含まない。また、相互に移動可能な番線の組合せに対してはそれぞれの移動方向について1本ずつ、計2本の進路が定義されるが、片方向のみ移動可能な場合は定義される進路は1本だけである。
図2に戻り説明を続ける。車両基地構内レイアウトネットワークは、番線定義と進路定義の各データを入力として構成したネットワークG(N,E)である。ここで、Nはネットワークのノードの集合であり、各ノードは番線定義データに含まれる番線に対応する。Eはノードを結ぶ有向エッジの集合であり、各エッジは進路定義データに含まれる進路に対応し、発点に対応する番線と着点に対応する番線とを発点から着点の方向に接続したものである。図6は車両基地レイアウトネットワークの例であり、図4の番線定義データ、図5の進路定義データに基づいて作成したものである。これは図3の車両基地のレイアウト構造に対応している。このレイアウトネットワークを用いることにより、特定の番線と接続可能な番線、進路をもれなくリストアップすることが可能であり、以降で説明する入換シーケンスの初期化と変更の各処理において利用される。
図2に戻り説明を続ける。車両基地構内レイアウトネットワークの作成後はステップ0220に進み入換シーケンスの初期化をおこなう。この処理において使用するデータは、先のステップ0210で作成した車両基地構内レイアウトネットワークと、図1の編成データ0120、及び作業定義データ0125である。以下では入換シーケンス初期化ステップ0220の処理内容を説明する前に、入力データである編成データと作業定義データの説明をおこなう。図7は編成データの例を示す図である。編成データは、構内入換の対象となる編成についての情報を格納するテーブル形式のデータである。各行が編成1個に対応しており、編成を識別するための「編成番号」、車両基地への「入区時刻」、車両基地からの「出区時刻」、そして入区から出区迄の間に実施する「作業内容」から構成される。「作業内容」に設定する情報は図1の作業定義データ0125で規定される。図8は、作業定義データの例を示す図である。作業定義データは、各行が作業1個の情報に対応するテーブル形式のデータであり、作業を識別する「作業名」、その実施に必要な最短時間を意味する「所要時間」、そして該当作業を実施可能な番線を格納する「実施可能番線」から構成される。図8は、図3の車両基地における作業の定義を示しており、2種類の作業が定義される。作業の1つである作業Aは所要時間が60分で、実施可能な番線は「作業A1番線」と「作業A2番線」、もう一方の作業Bは所要時間が90分、実施可能な番線は「作業B1番線」と「作業B2番線」である。
図2に戻り説明を続ける。ステップ0220において初期化する入換シーケンスとは、編成が取り得る入換パターンの集合を表すメタデータである。編成の構内における入換、即ち番線間の移動は、予定作業が実施可能な番線に編成を留置させるために必要となることから、作業を「いつ」、「どこで」実施するかを中心として各編成の入換計画を策定することが自然であるが、ある作業を実施可能な番線は、一般的に車両基地の特定の個所にまとまって設置されていることから(例えば図3の車両基地における作業Aと作業Bのそれぞれの可能番線)、入換パターンを考える上では同じ種類の作業番線をひとつにまとめて扱うことが可能である。
また、作業番線(グループ)から他の作業番線(グループ)への移動方法は車両基地のレイアウトにより制約を受けるが、図9に例を示すように、作業番線(グループ)間の移動の途中で他の番線を何回経由するかによって、作業番線間の移動パターンを分類することが可能である。図9では、図3の車両基地において、作業Aを実施可能な番線グループから作業Bを実施可能な番線グループへ移動する際の複数の移動パターンを示している。移動パターンの中で番線経由回数がもっとも少ない移動パターンは経由回数0回、即ち作業Aの番線から作業Bの番線へ直接移動することである。移動の手間を考慮すると作業番線間の番線経由はできるだけ少ないことが望ましい。従って図9の場合には経由回数0の移動が理想的である。しかしながら、車両基地構内では複数の車両が同時に存在するため、全ての車両が理想的な移動を行うわけにはいかなくなる。これは、使用可能な番線と進路に限りがあるために、作業番線への移動のために迂回経路をとったり、作業番線の空きができるまで留置番線で待機する等のために余分な移動が必要となるためである。
以上より、入換シーケンスは、複数の入換パターンを編成の作業内容と作業番線間の移動内容に基づいてグループ化したメタパターン(メタデータ)の一種である。入換シーケンスは、計画作成対象の全ての編成に対してそれぞれ与えられる。図10は入換シーケンスの例である。入換シーケンスはリスト形式のデータであり、リストの各要素は、編成の「入区」、「出区」、「作業」、「(番線)経由」のいずれかの動作と、各動作を実施するために必要な使用可能番線の集合から構成される。これらの各動作を以降では「処理」と呼ぶ。なお、入区処理と出区処理は、作業と同様に使用可能な番線をまとめて扱うことがでるため、作業処理の一種として扱うことができる。したがって、以降の説明では特に断らない限り「作業処理」は入区処理と出区処理を含むものとする。また、入換シーケンスの中で、作業処理に挟まれた一連の経由処理から構成される部分を、以下では特に経由シーケンスと呼ぶこととする。
入換シーケンスは、編成が車両基地に入区してから必要な作業を受けて出区するまでの一連の移動内容を表す複数の入換パターンを同時に表しており、そこに含まれる各処理からレイアウトに矛盾しないように番線を1つ選択することにより特定の入換パターンを得ることができる。例えば図10の入換シーケンスの例では、シーケンスの先頭から順に、「下回送」→「作業A1」→「引上1」→「留置1」→「作業B1」→「留置1」→「上回送」と番線を選べば、図3の車両基地において物理的に実行可能な1つの入換パターンが得られる。なお、「レイアウトに矛盾しない」とは、選択した番線は前後の番線との間に進路が存在しなければならない、という意味である。進路が存在するかどうかの判定は図2のステップ0210において作成した車両基地レイアウトネットワークを用いて容易に行うことができる。
図2に戻り説明を続ける。入換シーケンス初期化ステップ0220では、各編成が最も効率良く入換作業をおこなう理想的な状況を仮定して、番線経由回数ができるだけ少ない、即ち最短手順の入換シーケンスを図1の入換シーケンス初期化手段0112を用いて自動的に作成する。図11は、入換シーケンス初期化処理の概要を示す処理フロー図である。まず、ステップ1110において、予定作業(入区と出区を含む)を全て実施するような入換シーケンスを作業間の経由を考慮せずに作成する。ここで「作業間の経由を考慮しない」とは、車両基地のレイアウトの制約上、作業間の移動に番線経由が必要な場合であっても、それを無視して作業処理が連続するシーケンスを作成する、ということを意味する。ここで作成したシーケンスをXとする。次にステップ1320において、Xに含まれる隣り合う(作業)処理のペアについて、レイアウトの制約を満たしながら両者を接続する最短の経由シーケンスを作成する処理を全てのペアについて繰り返す。ここで、最短の経由シーケンスは可能ならば経由回数0(作業番線間を直接移動するパターン)のものとする。これにより編成1個に対する初期シーケンスの作成が終了する。図1の入換シーケンス初期化手段0112は、この処理を編成データに含まれる全ての編成に対して実行する。
図12は、入換シーケンス初期化処理の実行例を示す図である。編成の作業内容は、「作業A、作業B」であり、これらに入区及び出区を加えて4個の処理からなるシーケンスを最初に作成する(図11、入換シーケンス初期化処理のステップ1110)。なお、各処理の番線集合には使用可能な全ての番線をもれなく設定する。次にシーケンス上で隣り合う処理である、「入区」と「作業A」に対して、その間を接続する最短の経由シーケンスを作成する。この場合は図3の車両基地レイアウトから明らかに経由回数0、即ち直接移動するシーケンスが最短である。したがってシーケンスには何も追加しない。次に2つの隣り合う処理「作業A」と「作業B」についても同様に経由回数0のシーケンスが最短となる。最後に「作業B」と「出区」については、レイアウトからこの2つの間を直接移動することはできず、図1の番線定義データ0122において「経由可能」と定義された3つある留置番線のどれかを途中で1回経由する必要がある。したがって最短の経由シーケンスは経由回数1のシーケンスであり、これを「作業B」と「出区」の間に挿入する。以上の処理により得られたシーケンス(図12の最下段)が初期シーケンスとなる。
作業処理をつなぐ最短の経由シーケンスの作成は、作業処理の間を指定したステップ数の経由処理でつなぐシーケンスを作成する処理を用いておこなう。即ち、経由ステップ数Nを0から始めて、経由シーケンス作成が成功するまでNを順次増やしながら経由シーケンスの作成を繰返し実行する。図13はNステップの経由シーケンス作成処理の概要を示す処理フロー図である。まずステップ1310において、ステップ数Nが0かどうかを判定する。判定の結果Nが0ならばステップ1320へ進み、先行作業(Aとする)から後続作業(Bとする)へ直接移動可能、即ちAの使用可能番線からBの使用可能番線に対して少なくとも1つは進路が存在するかどうかを判定する。この判定には車両基地レイアウトネットワークを用いる。判定の結果、接続可能な場合は経由シーケンスの作成が成功として全体処理を終了する。一方、接続が不可能な場合には経由シーケンスの作成が失敗として全体処理を終了する。ステップ1310においてNが0でないと判定した場合にはステップ1330に進み、先行作業Aと接続可能、かつ「経由可能」な番線を車両基地レイアウトネットワークを用いてもれなくリストアップし、経由シーケンスの先頭に位置する「経由処理1」の使用可能番線に格納する。ただし、この処理の結果、接続可能な番線が1つも存在しない場合には、シーケンス作成失敗として即座に全体処理を終了する。番線のリストアップが成功した場合はステップ1340に進む。ここでは変数kを1からN−1まで1ずつ変化させながら、経由処理kと接続可能、かつ「経由可能」な番線をもれなくリストアップして経由処理k+1へ格納していく。ただし、この処理の途中で、接続可能な番線を1つもリストアップすることができない場合には、シーケンス作成失敗として即座に全体処理を終了する。このステップが成功した場合はステップ1350に進み、経由処理Nの候補番線から後続作業Bと接続できない、即ち、後続作業Bの使用可能番線のどれに対しても進路が存在しない番線を全てカットする。ただし、この処理の結果、経由処理Nの使用可能番線が1つも存在しなければ、シーケンス作成失敗として即座に全体処理を終了する。上記ステップが成功した場合はステップ1360に進む。ここでは変数kをNから2まで-1ずつ変化させながら、経由処理k−1の使用可能番線から経由処理kと接続できないものを全てカットする。ただし、この処理の途中で、経由処理の使用可能番線が1つも存在しなければ、シーケンス作成失敗として即座に全体処理を終了する。このステップが成功した場合にはシーケンス作成終了として全体処理を終了する。最終的に得られたシーケンスがNステップで作業をつなぐ経由シーケンスである。
図2に戻り説明を続ける。入換シーケンスの初期化の次にはステップ0230において入換パターン選択及び時刻決定処理をおこなう。これは各編成の入換シーケンスから実際に実施する入換パターンを1つ選択すると共に、入換の実施時刻、即ち移動の開始/終了時刻と番線の在線時間を具体的に決定することにより構内入換計画を得るものであり、図1の入換パターン選択及び時刻決定手段0113を用いて実行する。
図14は、入換パターン選択及び時刻決定手段の概要を示す処理フロー図である。まず、ステップ1410において、入換パターン選択・時刻決定問題の数理計画モデルを構築する。以下ではこの数理計画モデルの概要を説明する。一般的に数理計画モデルは、(1)計画対象(決定変数)、(2)遵守すべき条件(制約条件)、(3)計画の評価尺度(目的関数)の数表現から構成される。ここではまず決定変数を定義する。入換パターンは入換シーケンスの各処理の使用可能番線から番線を1つ選択することにより1つに定まる。従って、入換シーケンスにおける各処理の使用番線は決定変数の1つである。さらに、移動の開始/終了時刻と番線の在線時間は、入換シーケンスの各処理の開始、終了時刻を定めることにより唯一に決まるので、これらも決定変数の1つである。さらに、入換シーケンスには表れないが、番線間の移動に用いる進路も決定変数の1つである。
これらの決定変数を統一的に扱うために、ステップ1410では、数理計画モデルを構築する前処理として、番線間の移動の要素を考慮して入換シーケンスを拡張した「拡張入換シーケンス」を作成しワークエリアに格納する。図15は、図10の入換シーケンスに対する拡張入換シーケンスを示したものである。拡張入換シーケンスは、入換シーケンスの全ての処理の間に「移動」を意味する処理を加えたものである。各移動処理には前後の番線を接続する進路がもれなく格納される。このような拡張入換シーケンスは入換シーケンスに対して唯一に定まる。またその作成は入換シーケンスの先頭から順に移動処理を追加し、車両基地レイアウトネットワークを用いて番線同士を接続する進路をもれなく設定していくことで簡単に実現できる。拡張入換シーケンスは、編成の入区から出区迄の構内の移動を途中の進路も含めて詳細に定義するものであり、いわば編成に対対しての仕事内容を全て含んだデータであることから、以降ではこれを「ジョブ(仕事)」とも呼ぶ。また、以降では拡張入換シーケンスに含まれる「移動」を意味する処理を「移動処理」、それ以外の処理は「在線処理」と呼ぶ。
拡張入換シーケンス(ジョブ)を用いれば、入換パターン選択・時刻決定問題の決定変数は、(移動処理を含む)全ての処理の使用番線・進路、及びそれらの処理の開始/終了時刻と定義することができる。なお、移動処理の開始/終了時刻は、その前後の在線処理の開始/終了時刻と明らかに一致するため、これを必ずしも決定変数とする必要はないが、在線処理と移動処理を区別せずに扱うことで数理計画モデルが簡潔になることから本実施例ではこれを決定変数と見なす。また、以降では「番線」と「進路」をまとめて「資源」と呼ぶことにする。
次に、入換パターン選択・時刻決定問題の制約条件を定義する。まず、構内入換計画が満たすべき条件を文章により記述すると下記の通りとなる。
(1)各処理が使用する番線・進路に時間的競合がない。
(2)番線と進路のレイアウト上の繋がりを遵守する。
(3)進路支障時分や番線続行時隔等、各種の作成条件を満足する。
(4)予定された作業をもれなく実施する。
(5)入区時刻と出区時刻を守る。
(1)〜(3)は、構内入換が物理的に実施可能であるための必須条件であり、(4)及び(5)は車両基地業務の運用面から必ず満足すべき条件である。これらの条件を数理的に記述するために、以下ではその準備として各種記号の定義をおこなう。なお、記号の後に付加された「^」は後に続く記号が上添え字、「_」は同じく下添え字であることを意味する。
(1)集合
・J:ジョブの集合 {1,...,n}
・O:処理の集合 {1,...,m}
・M:資源(=進路、番線)の集合 {1,...,l}
・O_j:ジョブjに属する処理の集合 (j=1,...,n)
その要素数|O_j|=m_jとする。
O_jはOの部分集合であり、Oの中の(N_j-1)+1からN_jまでの連続した要素からなる。
ここで、N_0=0, N_j = Σm_k (k:1〜j)である。
なお、O_j内の各要素は番号が小さい順に実行されることを仮定する。
・M_i:処理iに割当可能な資源の集合(i=1,...,m)
・O^R,O^T:移動処理(R)、在線処理(T)の集合
・M^R,M^T:進路(R)、番線(T)の集合
・M^src_k,M^dst_k:M^Tの要素k(番線)を発番線(着番線)とする進路の集合
(2)定数
・M_0 (または単に0):競合を考えない特別な資源(バッファ資源)
・r_j,d_j:ジョブjの開始時刻(r_j)と終了時刻(d_j) (j=1,...,n)
・p_i:処理iの最小処理時間 (i=1,...,m)
・δ_ij:進路競合フラグ
- 1:進路iと進路jは支障する (i,jは共にM^Rの要素)
- 0:上記以外
※バッファ資源の定義より、δ_0j、δ_i0は0
・u:進路支障時分
・q:番線の続行時隔
(3)決定変数
・s_i:処理iの開始時刻
・e_i:処理iの終了時刻
・z_i:処理iの割当資源
(4)コスト関数
・C_ik:処理iに資源kを割当てるコスト
- 1:k=0(ダミー資源)のとき
- 0:上記以外
(5)論理式
・A⇒B : AならばB
・A||B : AまたはB
・Or{A_k} (k=1,...,n) : A_1 || A_2 || ... || A_n
ここで、バッファ資源M_0は、本問題の数理モデル化のために特別に導入した資源である。本問題は、特定の入換シーケンスの下で入換パターンの選択と時刻の決定を行うものであるため、入換シーケンスの選び方次第では、パターン選択と時刻決定をどのようにおこなっても、番線や進路の競合が避けられず、通常のモデル化では「解なし」という状況が起こり得る。ところが、番線/進路の競合が避けられない場合には、以降で説明するように前提となる入換シーケンスを変更することが求められるため、実行可能な解が得られない場合であっても、競合が「どこで」「どのように」発生するかを把握して、これを入換シーケンスを変更するための手がかりとする必要がある。そこで、競合やレイアウトの制約等を考慮せずに制限なく使用することが可能なバッファ資源を導入し、資源競合が不可避の場合にはバッファ資源を処理に割当てることにより制約条件を満たした解を暫定的に作成し、この結果を入換シーケンスの変更に利用することとする。
進路支障時分(u)や番線の続行時隔(q)等の計画作成のパラメータは、図1の作成条件データ0126において定義された値を用いる。図16は計画作成条件データの例を示す図である。作成条件は「進路支障時分」、「番線続行時隔」、「最小在線時間」、「進路移動時分」の4項目を少なくとも含む表形式のデータである。
進路競合フラグ(δ_ij)は、図1の進路競合定義データ0124に基づいて値を設定する。図17は進路競合定義データの例を示す図である。進路競合定義データは、車両基地構内の全ての進路を縦軸と横軸としたマトリックス形式のデータである。ここで、進路の競合とは、2つの進路が線路の一部を共有する、または保安上の理由等から、同時に進路を設定することができないことを意味する。図17のデータ例においては、行と列で指定した進路の組合せが競合するならば値1を、競合しなければ値0を格納する。この例は、図3の車両基地における進路競合の一部を示したものである。
上記の記号の定義の下で、入換パターン選択・時刻決定問題の制約条件は下記の通りとなる。
数1は、2つの在線処理i,i'にバッファ以外の同じ番線が割当てられている場合は、実行時間帯が重ならないことを意味し、かつ、2つの処理の間に続行時隔(q)以上の間隔をあけることを意味する。
数2は、2つの移動処理i,i'に競合する資源が割当てられている場合は、実行時間帯が重ならないことを意味し、かつ、2つの処理の間に支障時分(u)以上の間隔をあけることを意味する。
数3は、同一ジョブ内において、在線処理iの次の移動処理i+1に対しては、iに割当てられた番線を発番線とする進路のどれかを割当てることを意味する。即ち連続する在線と移動は番線と進路が物理的につながっていなければならないことを意味する。
数4は、同一ジョブ内において、在線処理iの1つ前の移動処理i-1に対しては、iに割当てられた番線を着番線とする進路のどれかを割当てることを意味する(数3の逆の意味)。
数5は、各ジョブの先頭の処理は、開始時刻がジョブの開始時刻に一致することを意味する。
数6は、各ジョブの先頭以外の処理は、開始時刻が一つ前の処理の終了時刻に一致することを意味する。即ち各処理は時間的に切れ目なく実施しなければならないことを意味する。
数7は、各ジョブの最後の処理は、終了時刻がジョブの終了時刻に一致することを意味する。
数8は、在線処理の終了時刻は、(開始時刻+最小処理時間)以上でなければならないことを意味する。
数9は、移動処理の終了時刻は、(開始時刻+最小処理時間)に一致しなければならないことを意味する。
数10は、決定変数の取り得る値に関する条件である。
これらの数式制約は、先に文章で記述した制約条件をもれなく含み、より厳密な定義となっている。なお、処理iの最小処理時間は、作業処理の場合は該当作業の所要時間、それ以外の在線処理は作成条件で定義された最小在線時間、移動処理は同じく作成条件で指定された進路移動時分、をそれぞれ設定する。
次に、数理モデルの目的関数は以下の通りである。
この目的関数を最小化することにより、バッファ資源をできるだけ使用しない解を求めることができる。即ち、これにより所与の入換シーケンスの下で資源競合をできるだけ発生しないように入換パターンの選択と時刻の決定をおこなうことができる。バッファ資源を全く使用しない解を得ることができれば、それが構内入換計画の実行可能解となる。
以上が数理モデルの概要である。図14のステップ1410では、各編成の入換シーケンスについて拡張入換シーケンス(ジョブ)を作成した上で、上記の決定変数、制約条件、目的関数から構成される数理モデルを構築する。なお、ここで構築したモデルは、複数の処理から構成されるジョブに対して、各処理の実行順序(時刻)と使用する資源を他のジョブと関連させながら決定する問題であり、これは生産スケジューリング分野におけるフレキシブルジョブショップ問題、もしくは並列機械スケジューリング問題の一種と捉えることができる。
次にステップ1420においてモデルの解を最適化演算により作成する。最適化演算の方法については様々な手法が考えられるが、数理モデルが論理的な制約条件(⇒、||等)を含んでいる特殊な形式であることから、線形モデルを前提としたLP緩和と分枝限定法を組み合わせた探索手法や、その発展形である分枝カット法等、数理計画分野における一般的手法を適用することは困難である。そこで本発明では、この数理モデルの解探索に制約論理プログラミングを適用する。制約論理プログラミングは制約充足問題に対する解探索手法の一種であり、(1)決定変数の取り得る値(ドメイン)の変化を、関連する制約を介して他の変数に伝えることにより探索領域を絞り込む「制約伝播」手法に基づく効率的な解探索メカニズムを持ち、(2)論理制約、記号制約や非線形制約等、幅広い制約条件を含むモデルの解探索に対応可能、であることを特長とする。制約論理プログラミングは線形計画法(LP)等と同様に汎用ライブラリが広く流通しており、本問題の数理モデルはそれらのライブラリが扱うことができる一般的な形式である。したがって、ステップ1420の最適化演算処理においては、制約論理の実行メカニズムを独自に実装しても良いし、汎用ライブラリをコールすることにより解探索を実行することとしても良い。
以上で図14の入換パターン選択及び時刻決定手段の説明を終え、図2に戻り説明を続ける。ステップ0240では、入換パターン選択及び時刻決定問題を解いて得られた解が実行可能な構内入換計画であるかどうかを判定する。具体的には得られた解がバッファ資源を用いたものであるかどうかをチェックし、バッファ資源を1つでも使用している場合には資源競合が発生しているので実行不可能と判定する。
判定の結果、実行不可能の場合にはステップ0260に進み、ループの打切り条件を満たすかどうかを判定する。本実施例では、打ち切り条件はループ回数が設定値を上回った場合とするが、例えば入換シーケンスの変更内容に基づいた打切り条件を設定する等、これ以外の方法を用いても良い。この判定の結果、打ち切り条件を満たす場合には計画作成不能として全体処理を終了する。
打切り条件を満たさない場合はステップ0270に進み、図1の入換シーケンス変更手段0114を用いて現在の入換シーケンスに変更を加える。図18は入換シーケンス変更手段の処理の概要を示す処理フロー図である。まずステップ1810において、得られた解の分析をおこない、資源競合が「どこで」「どのように」発生しているかを調査する。次にステップ1820において、分析結果に基づき、1つないし複数の編成を選択し、資源競合が発生しないようにそれらの入換シーケンスに変更を加える。具体的には、作業処理を接続するための番線経由の部分、即ち経由シーケンスに対して迂回経路の設定や、経路の短縮といった各種の調整を施す。
図19は、入換シーケンス変更とそれに伴う入換計画の作成例を示す図である。この例は編成02に対する入換シーケンスの変更をおこなうものであり、図の上がシーケンスの変更前、図の下がシーケンスの変更後にそれぞれ対応する。変更前の編成02の入換シーケンスは、「入区」→「作業A」→「出区」であるが、作業A用の番線として「作業A1」「作業A2」のどちらを選択しても他の編成(01、03)と競合を発生する。そこで、入区後すぐに作業Aを行うのではなく、作業番線の空きを待つために他の番線で待機することとし、それを意味する経由シーケンス(留置→引上)を作業処理の前に挿入することにより資源競合を解消できる。
上記の例のように資源競合を解消することができれば、図19のフローにおける解の分析とシーケンスの変更はどのようなやり方を用いても良い。図20はその一例を示す処理フロー図である。まずステップ2010において、入換パターン選択と時刻決定の結果として得られた入換計画の中から、バッファ資源が割当てられた処理をリストアップする(この集合をXとする)。ステップ2020では、Xの中から開始時刻が最も早い処理を1つ選択する(この処理をAとする)。ステップ2030では、Aと資源競合の可能性がある、即ちAに割当可能な資源をAと重なる時間帯で使用している処理をリストアップする(この集合をYとする)。次にステップ2040において、AとYの中から処理を1つ選択し(Bとする)、この処理を含む入換シーケンスを以降のステップにおいて変更する。ステップ2050ではBの種類を判定する。Bが作業処理ならばステップ2060に進み、Bを含む入換シーケンスの中で、BとBの1つ前の作業の間にある経由シーケンスを取り出す(これをαとする)。Bがそれ以外ならばステップ2070に進み、Bが含まれる経由シーケンスを取り出す(これをαとする)。なお、Bが移動処理の場合は拡張入換シーケンス上のどこにB含まれているかを判定して、その部分に対応した経由シーケンスを取り出す。判定結果がいずれの場合でも次はステップ2080に進み、変数kを1としてαよりkステップだけ経由回数が多い経由シーケンスを作成し(これをβとする)、この作成に成功するまでkを順次増やしながら処理を繰り返す。なおkステップの経由シーケンスの作成には、入換シーケンス初期化において用いた処理(図13)を使用すれば良い。最後にステップ2090において、αの代わりにβを入換シーケンスの該当位置に挿入して全体処理を終了する。
上記の処理は、バッファ資源を割当てられた、即ち他の処理と資源競合を生じる処理に着目し、その処理及びその処理と競合する処理の中から1つ選択した上でその処理が含まれる入換シーケンスを変更するものである。選択した処理が作業ならばその前に位置する経由シーケンスを最小単位だけ延長する。これは作業の前に他の番線で待機する、または迂回経路を取ることを意味する。一方、選択した処理がそれ以外のものであれば、その処理が含まれる経由シーケンスを最小単位だけ延長する。これも同様に迂回経路を取ることで資源の競合を回避することを意図している。経由シーケンスの延長を最小単位とするのは、入換作業の効率の観点から番線間の移動を極力少なくするということと、経由シーケンスを長く取りすぎると資源競合が逆に多発する、または出区時刻を守れない可能性が生じるためである。
以上で入換シーケンス変更手段の説明を終え、図2に戻り説明を続ける。ステップ0240における実行可能性判定の結果、実行可能の場合にはステップ0250に進み、得られた結果を図1の表示装置0140に出力し、計画作成完了として全体処理を終了する。
以上で実施例1の説明を終える。これにより、作業内容と作業間の番線経由手順から入換パターンをグループ化したメタデータである入換シーケンスを、車両基地のレイアウト構造と計画作成対象の編成に応じて適切に作成し、当該入換シーケンスから入換パターンを選択して実行時刻を決定することにより構内入換計画を作成するので、必要な入換パターンの全てを車両基地毎に事前に登録しておくことが不要であるという効果がある。
また、入換シーケンスから入換パターンを選択して実行時刻を決定する処理において、当該処理を計画対象の全ての編成に対して一括しておこなう数理モデルを構築し、最適化演算により当該数理モデルの解を算出するので、入換パターンと実施時刻の膨大な組合せの中から計画全体の整合性を考慮して最適な選択をおこなうことができ、計画作成不能に陥る可能性とそれに伴う人手による負担を最小限に抑えて全編成の計画を得ることができる。
次に、ユーザインターフェース部分について、図26〜図36を用いて説明する。
図26は車両基地構内入換計画作成装置の構成を示す図である。図1の車両基地構内入換計画装置に対応する。但し、図26は、ユーザインターフェース部分を中心に記述されている。
車両基地構内入換計画作成装置は計算機システムであり、処理装置2610と、処理装置2610に接続される記憶装置2620、入力装置2630、表示装置2640及び出力装置2650から構成される。また処理装置2610はネットワーク2660と接続される。記憶装置2620は、本発明による車両基地構内入換計画作成装置を用いた計画修正の対象となる構内入換計画を格納する入換計画データ2621、計画作成者の計画修正の意図に関する情報を格納するユーザ意図データ2622、構内入換計画の前提となる各種の入力情報を格納する基礎データ2623から構成される。基礎データとしては、計画対象となる編成の入出区時刻や作業内容に関する情報、車両基地構内の番線や進路等のレイアウトに関する情報、清掃や点検等の各種作業の実施可能番線や所要時間に関する情報、番線間の移動時分や交差支障時分等といった各種パラメータなどが少なくとも挙げられるが、これらに限定されるものではない。
入力装置2630は、計画作成者による車両基地構内入換計画作成装置の操作に用いる装置であり、少なくともキーボード及びマウス等のポインティングデバイスを備える。表示装置2640は計画作成結果の提示に用いるための装置である。出力装置2650は計画作成結果を帳票形式で印刷するための装置である。処理装置2610のメモリには、構内入換計画をダイヤ図形式で表示する構内ダイヤ図表示手段2611、修正作業中の構内入換計画に対する各種の条件違反を検出する条件違反検出手段2612、計画担当者によるリクエストを受け付けて構内ダイヤ図の特定のダイヤスジを変更するダイヤスジ変更手段2613、計画担当者の入力操作に基き計画修正の意図情報を生成/格納するユーザ意図設定手段2614、計画作成者からの指示を受けて計画を再作成する計画再作成手段2615、がプログラムとして格納され、処理装置2610によって実行される。ワークエリア2615はプログラム実行の作業領域として使用されるメモリ上の領域である。上記プログラムは、記憶装置2620に格納し、この記憶装置の起動装置を介して処理装置2610に読込むか、または他の計算機の記憶装置ないしは独立した記憶装置に格納し、ネットワーク2660を介して処理装置2610に伝送した上で実行することが可能である。
図27は、本実施例における車両基地構内入換計画作成装置の処理概要を示す全体処理フロー図である。以下ではこのフローの各ステップについて詳細に説明していく。なお、説明を具体的なものとするために、以下では図35に示す車両基地を作成対象と仮定して説明をおこなう。
図27に戻り説明を続ける。まずステップ2710において、図26の入換計画データ2620を処理装置2610のワークエリア2616に読込み、構内ダイヤ図表示手段2611を用いて構内ダイヤ図を作成し表示装置2640に出力する。図36は構内ダイヤ図の表示例である。構内ダイヤ図は、車両基地内の番線を縦軸、時刻を横軸とした平面上に車両基地構内の移動と在線の繰り返しを意味する線(ダイヤスジと呼ぶ)を編成毎に記したものである。1本のダイヤスジの中で、斜線3610は番線間の移動を、水平線3620は特定の番線における在線を意味する。在線の場合は水平線の長さが在線時間を表す。図36の例は3編成の構内ダイヤ図である。ダイヤスジの始端は編成の入区時刻、終端は同じく出区時刻である。ただし、編成が計画実施日以前に入区済の場合は、ダイヤスジの左端は計画作成の開始時刻に一致する。同様に計画実施日以降に編成が出区する場合は、ダイヤスジの右端は計画作成の終了時刻に一致する。
図27に戻り説明を続ける。ステップ2720では、表示装置に出力された構内ダイヤ図に対する図26の入力装置2630を介した計画担当者による修正操作を受け入れ、ダイヤスジ変更手段2612を用いてワークエリアに格納された入換計画データの修正処理をおこなう。ダイヤスジ変更手段が受け入れる修正操作は、「番線変更」、「開始時刻変更」、「終了時刻変更」、「時間帯変更」の4種類を少なくとも含む。これらの修正操作はいずれもダイヤスジの在線表示部分(水平線)に対する操作であり、「番線変更」は在線に使用する番線の変更、「開始時刻変更」は在線の開始時刻の変更、「終了時刻変更」は在線の終了時刻の変更、「時間帯変更」は在線の実施時間帯の変更、をそれぞれ意味する。図28は、これら4種類の修正操作のマウスによる実行方法の例である。番線変更の場合は、変更したい在線表示部分の中央にマウスポインタ2810を置き、マウス2820の左ボタン2821を押下しながらマウスを上下に動かす。これにより構内ダイヤ図表示手段2611がマウスポインタの移動距離を検出し、その距離に応じた位置の番線に在線表示部分の表示を移動する。目的の番線に移動した時点でマウスの左ボタンを離すことにより、その時点で在線表示部分が位置する番線を最新の情報としてダイヤスジ変更手段2613がワークエリアの入換計画データを更新する。他の修正操作についても同様である。開始時刻変更は、マウスポインタを在線表示部分の左端に置き、マウスの左ボタンを押下しながらマウスを左右に動かす。これにより在線表示部分の開始部分が移動距離に応じて時間軸に沿って左右に移動するので、目的の時刻に位置した時点でマウスの左ボタンを離すことにより操作が完了する。終了時刻変更は、マウスポインタを在線表示部分の右端に置き、マウスの左ボタンを押下しながらマウスを左右に動かす。これにより在線表示部分の終了部分が移動距離に応じて時間軸に沿って左右に移動するので、目的の時刻に位置した時点でマウスの左ボタンを離すことにより操作が完了する。時間帯変更は、マウスポインタを在線表示部分の中央に置き、番線変更と区別するためにマウスの左と右の両方のボタンを同時に押下しながらマウスを左右に動かす。これにより在線表示部分全体が移動距離に応じて左右に移動するので、目的の位置でマウスの左右のボタンを離すことにより操作が完了する。
図27に戻り説明を続ける。ステップ2720では、表示画面上のボタンを押下するといった計画担当者からの指示を受ける。ステップ2730では、図26の条件違反検出手段2613を用いてワークエリアに格納された修正後の入換計画データに対して条件違反の検出をおこなう。検査対象の条件としては少なくとも下記に示す5つを含むものとする。
(1)各編成が使用する番線・進路に時間的競合がない。
(2)番線と進路の車両基地レイアウト上の繋がりを遵守する。
(3)進路支障時分や番線続行時隔等の物理的パラメータを満足する。
(4)予定された作業をもれなく実施する。
(5)入区時刻と出区時刻を守る。
これらは、編成が車両基地へ入区してから出区するまでの時間枠の中で、物理的な制約条件を遵守しつつ事前に決められた作業を実施する上で最低限満たすべき、いわば基本条件である。上記以外にも、作業の実施時間帯を制限したり特定の順序を守って作業を実施するといった、構内作業の運用方法に関わる緒条件も考えられる。したがって、検査すべき条件は上記の基本条件に加え、個々の車両基地毎の運用特性を加味して必要なものを設定する。条件違反検出手段2612は、設定された条件毎に違反の有無を検査し、違反がある場合には表示装置を介して計画担当者にその旨を通知する。表示装置の出力形態は特に規定しないが、違反部分の表示色を赤等の強調色に変化させる、違反部分と違反内容を記号や文字等で表したメッセージをポップアップウィンドウにより出力する等、条件違反であることが視覚的に担当者に明確に伝わるものとする。
図27に戻り説明を続ける。ステップ2740は、計画担当者が表示装置に描かれた構内ダイヤ図を確認し、その内容を承認するかどうかを判断する。判断の結果、承認の場合にはステップ2750へ進み、表示装置に描かれた構内ダイヤ図に対応するワークエリア内の入換計画データを正式な計画として記憶装置に登録して処理を終了する。なお、入換計画データを記憶装置に登録すると同時に図26の出力装置2650にもデータを転送して入換計画の帳票を印刷することとしても良い。
一方、計画担当者が手作業による計画変更を継続する必要があると判断した場合は、ステップ2720へ戻りこれまでの処理を再び繰り返す。また、条件違反が数多く発生したこと等から手作業での修正には無理があると判断し、計画の自動再作成をおこなうこととした場合には、ステップ2760へ進む。
ステップ2760では、計画担当者の「意図」を図26のユーザ意図設定手段2614を用いて設定する。ここでの「意図」とは、計画の再作成にあたって計画担当者が実現を希望する計画の特定部分に関する内容を指す。
図29はユーザ意図データのデータ構造を示す図である。設定可能なユーザ意図は、「固定」、「候補指定」、「関係指定」の少なくとも3種類であり、本実施例ではそれぞれに応じて専用のデータ構造を定義する。
ユーザ意図「固定」は、ダイヤスジの在線表示部分における属性に対して値を固定し、それ以外の値を設定することを禁止するものである。在線表示部分の属性は、「使用番線」、「開始時刻」、「終了時刻」、「在線時間」の4種類を少なくとも含むものとする。これに対応するデータ構造は図29の表2910である。「固定」データは、1個の固定指示を1行とした表形式のデータであり、各行は、指定対象の在線表示部分が含まれるダイヤスジが該当する編成の編成番号、指定対象の在線表示部分に与えられた同一ダイヤスジの他の在線表示部分と重複しない在線番号、固定する属性の種類、固定する値、の4項目から構成される。例えば表2910の1行目は、編成番号「編成01」、在線番号「1」、種類「使用番線」、値「留置4番線」であり、これは「編成01の1番目の在線の使用番線を留置4番線に固定したい」という計画作成者の意図を意味する。
ユーザ意図「候補指定」は、ダイヤスジの在線表示部分における特定の属性の値を指定した一群の候補の中に制限し、それ以外の値を設定することを禁止するものである。在線表示部分の属性はユーザ意図「固定」と同じである。これに対応するデータ構造は図29の表2920である。「候補指定」データは、1個の候補指定を1行とした表形式のデータであり、各行は、指定対象の在線表示部分が含まれるダイヤスジが該当する編成の編成番号、指定対象の在線表示部分に与えられた在線番号、候補を指定する属性の種類、値の候補、の4項目から構成される。例えば表2920の1行目は、編成番号「編成02」、在線番号「3」、種類「使用番線」、候補「留置4、留置5、留置6」であり、これは「編成02の3番目の在線の使用番線を留置4、留置5、留置6のいずれかに設定したい」という計画作成者の意図を意味する。なお、候補を指定する属性が開始時刻等の連続的な性質をもつものの場合には、連続的な値の範囲を候補として指定しても良い(表2920の2行目を参照)。
ユーザ意図「関係指定」は、異なる編成の在線表示部分同士の間に特定の関連付けを設定するものである。関連付けの種類は、「実行順序」と「使用番線」に大きく分けられる。「実行順序」の例としては、ある編成の在線は別の編成の在線が終了するまで開始しない、ある編成は別の編成の在線開始を待って在線を開始する等が挙げられる。実行順序は開始時刻と終了時刻、そして実行の間合い時間の組合せにより様々なバリエーションが考えられるので、設定可能なパターンを適用対象の車両基地に応じて事前に定義しておくこととする。一方、「使用番線」の例としては、ある編成と他の編成は同一番線を使用する、逆にある編成と他の編成は異なる番線を使用する、が挙げられる。これについても例に挙げたものよりも複雑なパターンも考えられるので、設定可能なものを適用対象の車両基地に応じて事前に定義しておくこととする。「関係指定」に対応するデータ構造は図29の表2930である。「関係指定」データは、1個の関係指定を1行とした表形式のデータであり、各行は、指定対象の在線表示部分が含まれるダイヤスジが該当する編成の編成番号、指定対象の在線表示部分に与えられた在線番号、関係を設定する相手の在線表示部分の編成番号、同じく在線番号、関係指定の種類、の5項目から構成される。たとえば表2930の1行目は、編成番号「編成01」、在線番号「2」、相手編成番号「編成03」、相手在線番号「2」、種類「同一番線使用」であり、これは「編成01の2番目の在線は編成03の2番目の在線と同じ番線を使用させたい」という計画作成者の意図を意味する。
なお、ユーザ意図データは、図29で示したダイヤスジの在線表示部分を対象とした3種類を基本として、例えば移動部分を対象とした同様の意図データを適用対象の車両基地に応じて定義して用いても良い。
図27に戻り説明を続ける。ステップ2760のユーザ意図設定処理では、計画担当者が表示装置に出力された構内ダイヤ図の上で入力装置を用いた設定操作をおこない、その結果に基づいて図26のユーザ意図設定手段2614がユーザ意図データを新規に生成して記憶装置2620に格納するか、もしくは記憶装置に記録されたユーザ意図データ2622の修正をおこなう。
計画担当者によるユーザ意図の設定操作は様々なバリエーションが考えられる。本発明は操作方法を特定の方式に制限するものではないが、本実施例では以下に説明する4種類の設定操作を備える。
図30は、固定指示の操作例を示す図である。計画担当者がマウスポインタ3010を固定指示対象の在線表示部分(図では編成01の1番目)へ移動して選択操作をおこない、画面上の特定のボタンを押下する等の指示により設定ダイアログ3020が画面上に表示される。設定ダイアログには固定可能な属性の一覧が項目として表示されるので、ここでマウスポインタを該当する項目に移動して選択操作をすることにより設定処理が実行される。具体的には図26のユーザ意図設定手段2614が選択された項目を読み取り、対応するユーザ意図データを生成して記憶装置2620に格納する。設定ダイアログ上のチェックマークが付された項目は固定指示が設定済であることを示す。チェックマークが付された項目に対して選択操作をおこなった場合は、固定指示が取り消される。具体的にはユーザ意図設定手段が選択された項目を読み取り、対応する意図データを記憶装置から検索して該当データを削除する。
図31は、候補指定の操作例を示す図である。計画担当者がマウスポインタ3110を候補指定対象の在線表示部分へ移動して選択操作をおこない、画面上の特定のボタンを押下する等の指示により設定ダイアログ3120が表示される。設定ダイアログは候補指定が可能な4種類の属性それぞれに対応した設定領域に分けられる。チェックボックス3131は、属性「開始時刻」に対する候補指定の有効、無効の切り替えをおこなうものである。ラジオボタン3132は、開始時刻の範囲の種類(以前、以降、固定)を指定するために用いられる。スクロールバー3133は開始時刻の範囲の始点を設定するために用いられる。図31の設定例の場合は、「編成02の番号2の在線表示部分を12:15以前に開始したい」というユーザ意図を表している。
以下、図31の「終了時刻」と「在線時間」の設定操作に関しては開始時刻と同様である。一方、開始時刻等の時刻属性とは異なり離散的な性質を持つ「使用番線」に対しては設定操作が若干異なる。リストボックス3141とリストボックス3142は、それぞれ候補指定から外す番線と候補指定に含む番線を表示する。設定可能な番線は上記の2つのリストボックスのいずれかに必ず含まれる。左側のリストボックス内のいずれかの項目をマウスで選択し、除外ボタン3143を押下すると該当項目が右側のリストボックスへ移動する。逆に右側のリストボックス内のいずれかの項目をマウスで選択し、追加ボタン3144を押下すると該当項目が左側のリストボックスへ移動する。
以上の設定操作をおこなった後に「OK」ボタン3150を押下すると、図26のユーザ意図設定手段2614が設定ダイアログ上での操作結果を取得し、対応するユーザ意図データが存在するものについては修正処理を、存在しないものについては新規データの生成処理を実行し記憶装置2620内のユーザ意図データ2622の内容を更新する。一方「キャンセル」ボタン3160を押下した場合は設定ダイアログ上での操作結果を記憶装置に反映せず、何もせずに処理を終了する。
図32は、関係指定の操作例を示す図である。計画担当者がマウスを用いて関係指定対象の2つの在線表示部分を選択し、画面上の特定のボタンを押下する等の指示により設定ダイアログ3220が表示される。設定ダイアログには設定可能な関係の一覧が項目として表示されるので、ここでマウスポインタ3210を該当する項目に移動して選択操作をすることにより設定処理が実行される。具体的には図26のユーザ意図設定手段2614が選択された項目を読み取り、対応するユーザ意図データを生成して記憶装置2620に格納する。設定ダイアログ上のチェックマークが付された項目は固定指示が設定済であることを示す。チェックマークが付された項目に対して選択操作をおこなった場合は、固定指示が取り消される。具体的にはユーザ意図設定手段が選択された項目を読み取り、対応する意図データを記憶装置から検索して該当データを削除する。
図33は、時刻範囲を指定して複数の在線表示部分を一括して固定する操作例を示す図である。本設定操作は、計画の実施日当日に列車運行の乱れや構内作業の遅れ等の要因から計画の修正が必要な場合に、その時点迄に既に実績となっている計画部分を固定して残りの部分のみを再計画するために用いるものである。計画担当者が画面上の特定のボタンを押下する等の指示により本設定操作の実行モードに切り替わり、時刻範囲設定用のポインタ3310が表示される。このポインタはマウスを用いて左右に移動することが可能であり、構内ダイヤ図上のポインタ位置に対応した時刻がラベル3320に表示されると共に計画表示領域の左端からポインタまでの計画部分がマスクされる。マスク領域に含まれる在線表示部分はその属性を固定することを意味する。なお、図33の在線表示部分3330等のようにマスク領域に部分的に含まれる在線操作は、使用番線と開始部分のみを固定するものとする。
計画担当者が上記の操作により固定領域を設定した後に画面上の特定のボタンを押下する等の指示により設定処理が実行される。具体的には、図26のユーザ意図設定手段2614がマスク領域に含まれる在線表示部分を読み取り、それらの「使用番線」「開始時刻」「終了時刻」「在線時間」の4種類の属性を固定するユーザ意図データを生成し記憶装置2620に格納する(ただし、マスク領域に部分的に含まれる在線表示部分に対しては、「終了時刻」と「在線時間」の固定指示はおこなわない)。
図27に戻り説明を続ける。ステップ2760においてユーザ意図設定をおこなった後に、計画担当者が任意のタイミングで画面上の特定のボタンを押下する等によりステップ2770の計画再作成処理を実行する。計画再作成処理では事前に設定された計画作成条件に加えて計画担当者が設定した意図を満足する構内入換計画を自動的に作成する。自動作成のベースとなる方式は既出願特許「車両基地内入換計画作成装置及び方法」(特願2003−396502)に示されたものである。以下では既出願特許の方式を活用した再作成処理について図34の処理フロー図を用いて説明する。
まずステップ3410において、ワークエリアに格納された修正後の入換計画データに対して条件違反の検出をおこなう。具体的には、図26の条件違反検出手段2613を用いて番線・進路の競合等、事前に設定された条件に対する違反の有無を検査し、その結果をワークエリアに一時保存する。
次にステップ3420において、計画対象の編成群を条件違反を含むものと条件違反を含まないものとに分類し、その結果をワークエリアに一時保存する。なお、この処理結果はステップ3440において既出願特許の計画作成方式への入力データとして用いる。
ステップ3430では、図26の記憶装置2620に格納されたユーザ意図データ2622に基づき、既出願特許の計画作成方式が解釈可能な制約式データを生成する。制約式データは、等号(=)、不等号(<、>、≦、≧)を用いた数式、もしくは論理記号(=、≠、‖、&、!)を用いた論理式である。例えば図29の固定指定データ2910における1行目からは、制約式(z11=4)を生成する。ここで、z11は編成01の在線表示部分1の使用番線に関する決定変数、4は留置4番線に付与された他と重複しないID番号である。また、図29の候補指定データ2920における1行目からは、制約式(z23=4‖z23=5‖z23=6)を生成する。ここで、z23は編成02の在線表示部分3の使用番線に関する決定変数、4,5,6はそれぞれ留置4、5、6番線に付与された他と重複しないID番号である。さらに、同じく図29の候補指定データ2920における2行目からは、制約式(12:30≦e12≦14:00)を生成する。ここで、e12は編成01の在線表示部分2の終了時刻に関する決定変数である。最後に、関係指定データ2930の2行目からは、制約式(e22≦s12)を生成する。ここで、e22は編成02の在線表示部分2の終了時刻変数、s12は編成01の在線表示部分2の開始時刻変数である。記憶装置に格納された全てのユーザ意図データに対して制約式データを生成し、処理結果をワークエリアに一時保存してステップ3430を終了する。
次にステップ3440において既出願特許の構内入換計画作成方式を実行する。本方式は、数式もしくは論理式で記述された制約条件を満足する構内入換計画を、既に計画が得られている編成の解を固定したままで、残りの編成の計画をそれらに足し込む形で段階的に作成することに特徴がある(実施例2)。計画作成が途中で失敗した場合には、(1)固定した計画の一部を解除する、(2)他の編成を選択しなおす、のいずれかを行った後に計画作成を続行するので、従来手法のように全てを一旦解除して一から計画作成をやり直す場合と比較すると探索効率が高い。その上可能な組合せを探索する範囲も広いので、途中で探索が失敗する可能性を最小限に抑えることができる。また、これにより既に得られた部分計画をできるだけ崩さずに計画を作成することができるので、一部の編成の入区時刻が変わる等して一旦作成した計画を部分的に修正したり、計画作成者と対話しながら編成を段階的に追加して計画作成をするといった用途に用いることができる。
本方式を実行するにあたっては、計画対象の編成群を(1)計画を固定するもの、(2)新たに計画を作成するもの、の2種類に分類する必要がある。再計画結果としては既に得られている計画をできるだけ変更しない方が計画担当者への配慮や作業手配等の観点から望ましいと言える。そこで、ステップ3420の編成分類処理の結果を利用し、条件違反を含まない編成を(1)計画を固定するもの、条件違反を含む編成を(2)新たに計画を作成するもの、に設定する。こうすることで、条件違反を含む、即ち計画変更が必要な編成だけを対象とした再計画が可能となるので、再計画による変更量を最小限に留めることができる。なお、上記の設定では条件違反を解消できない場合であっても、既出願方式は前述の通り違反解消に関係する部分を特定し、固定計画から段階的に解除することができるため、条件違反のない実行可能な計画を効率良く得ることが可能である。
その後はステップ3450へ進み、図26の構内ダイヤ図表示手段2611を介して再計画処理の結果を表示装置2640へ構内ダイヤ図形式で出力する。なお、再計画処理の結果、条件違反やユーザ意図を満足できない場合には、該当部分の表示色を赤等の強調色に変化させたり、記号や文字等で表したメッセージを表示する等して担当者が見落としをしないようにその旨を伝達する。
図27に戻り説明を続ける。再作成処理の後は再びステップ2740に戻り、計画担当者が表示装置に描かれた構内ダイヤ図を確認し、その内容を承認するかどうかを判断する。判断の結果、承認の場合にはステップ2750へ進み、表示装置に描かれた構内ダイヤ図に対応するワークエリア内の入換計画データを正式な計画として記憶装置に登録して処理を終了する。通常、条件違反やユーザ意図を満足できない場合には、ステップ2720からの手動によるダイヤスジ変更、もしくはテップ2760からのユーザ意図設定と自動再作成を再び実行することになる。ただし、条件違反等を含んでいても何らかの理由で担当者が妥当と判断した場合にはステップ2750以降の終了処理へ進む。
以上で実施例の説明を終える。これにより、手動による計画案変更作業の際に、グラフィック表示された構内ダイヤ図の上で計画担当者が修正したい内容(意図)をマウス等の入力装置を用いて修正したい部分に対して直接的に設定し、その意図を満たしながら条件違反を解消するように再計画を自動的におこなうことができる。自身が着目する部分とその内容をユーザ意図データを介して計算機に伝達すれば、いわば「あとは計算機に任せてしまう」ということができるので、計画案の変更作業で多発する予期しない条件違反を計画担当者が考慮する必要がなくなる。したがって計画担当者に余計な負担をかけることなく計画案の変更作業を効率良く実施することが可能となる。また、計画の自動再作成処理において、初期状態では条件違反を生じた編成のみを再計画対象とし、条件違反を解消することができない場合に限りその他の編成の計画を段階的に解除していくことにより、再計画前と比較して変更量が少ない計画を効率良く得ることができる。