(58)【調査した分野】(Int.Cl.,DB名)
シミュレーション時刻を時々刻々と計時し、出現駅と目的駅とが定められた仮想旅客の当該出現駅への出現制御、前記出現駅から前記目的駅までの乗車列車を特定した所与の列車乗継経路に沿って前記仮想旅客を乗降させる乗降制御、前記仮想旅客の乗降人数に応じた遅延制御を含む所与の列車ダイヤに沿った列車の運行制御、を含む旅客流動シミュレーションをコンピュータに実行させるためのプログラムであって、
前記仮想旅客それぞれについて、乗車中の列車の識別情報、及び、当該乗車の着席/立席の区別を少なくとも含む状況情報を管理する個別旅客状況管理手段、
予め定められた座席数と前記状況情報とを用いて各列車の着席可能性を算出する着席可能性算出手段、
着席乗車と立席乗車それぞれに対応づけられた重み付けと、前記着席可能性とを用いて、前記列車乗継経路の再探索を実行する再探索実行手段、
着席乗客(着席乗車の仮想旅客のこと。以下同じ)が前記乗降制御によって降車した場合に、降車した当該着席乗客の数に応じた数の当該列車の立席乗客(立席乗車の仮想旅客のこと。以下同じ)を着席に変更する継続乗車着席制御手段、
滞留旅客(駅に滞留していた仮想旅客のこと。以下同じ)が前記乗降制御によって乗車した場合に、乗車した当該滞留旅客を、前記継続乗車着席制御手段による変更制御後の当該列車の空席数を用いて、着席及び立席の何れかとする乗車時制御手段、
として前記コンピュータを機能させるためのプログラム。
前記着席可能性判定手段は、前記座席数と、前記乗降制御によって降車した着席乗客の数と、当該列車の立席乗客の数と、前記乗降制御によって乗車した滞留旅客の数とを用いて、着席できる可能性の程度を示す指標値として前記着席可能性を算出する、
請求項1又は2に記載のプログラム。
シミュレーション時刻を時々刻々と計時し、出現駅と目的駅とが定められた仮想旅客の当該出現駅への出現制御、前記出現駅から前記目的駅までの乗車列車を特定した所与の列車乗継経路に沿って前記仮想旅客を乗降させる乗降制御、前記仮想旅客の乗降人数に応じた遅延制御を含む所与の列車ダイヤに沿った列車の運行制御、を含む旅客流動シミュレーションを実行するシミュレーション装置であって、
前記仮想旅客それぞれについて、乗車中の列車の識別情報、及び、当該乗車の着席/立席の区別を少なくとも含む状況情報を管理する個別旅客状況管理手段と、
予め定められた座席数と前記状況情報とを用いて各列車の着席可能性を算出する着席可能性算出手段と、
着席乗車と立席乗車それぞれに対応づけられた重み付けと、前記着席可能性とを用いて、前記列車乗継経路の再探索を実行する再探索実行手段と、
着席乗客が前記乗降制御によって降車した場合に、降車した当該着席乗客の数に応じた数の当該列車の立席乗客を着席に変更する継続乗車着席制御手段と、
滞留旅客が前記乗降制御によって乗車した場合に、乗車した当該滞留旅客を、前記継続乗車着席制御手段による変更制御後の当該列車の空席数を用いて、着席及び立席の何れかとする乗車時制御手段と、
を備えたシミュレーション装置。
【発明を実施するための形態】
【0019】
[概要]
旅客流動シミュレーションでは、シミュレーション時刻を時々刻々と進めながら、出現駅及び目的駅が定められた仮想旅客(以下、単に「旅客」という)の出現制御や、目的駅までの乗車列車を特定した列車乗継経路に沿った旅客の乗降制御、各駅の旅客の乗降人数に応じた遅延制御を含む所与の列車ダイヤに沿った列車の運行制御等を行う。
【0020】
本実施形態では、このような旅客流動シミュレーションにおいて、旅客の乗車状況として着席/立席を区別し、列車の着席可能性を考慮した旅客の列車乗継経路の探索や、乗降時の旅客の着席制御を行う。旅客の列車乗継経路は、列車の着発のタイミングで再探索される。これにより、例えば遅延によって列車ダイヤが動的に変化する状況において、列車の着席可能性が変化することによって旅客の列車乗継経路も動的に変化する様子を模擬している。
【0021】
先ず、所与の列車ダイヤに対する列車乗継経路の探索について説明する。
図1は、列車ダイヤの一例である。
図1に示すように、列車ダイヤは、横軸を時刻t、縦軸を駅として、各列車を列車スジで表している。
図1では、A駅からD駅に向かう2本の列車(1,2列車)についての列車ダイヤを示している。C駅では進行方向が同じ2本の列車が同時に停車可能となっており、このC駅で1列車を後続の2列車が追い越している。
【0022】
図2は、旅客の列車乗継経路の探索に用いる経路探索ネットワークの概要である。
図2は、
図1に示した列車ダイヤを表現した経路探索ネットワークを示している。経路探索ネットワークは、列車や旅客に関する事象を表すノードと、遷移可能なノード間を結ぶアークとから構成される。
【0023】
ノードには、列車が駅に到着する事象を表す着ノード10と、列車が駅から発車する事象を表す発ノード12と、発ノード12に対応して設定され、旅客が駅にいて列車を待っている事象を表す滞留ノード14と、がある。
【0024】
また、ノードには、該当する事象の発生時刻を表す基準時刻が定められる。すなわち、着ノード10の基準時刻は、該当列車の該当駅での着時刻であり、発ノード12の基準時刻は、該当列車の該当駅での発時刻であり、滞留ノード14の基準時刻は、対応する発ノードの基準時刻と同じである。
【0025】
アークは、基準時刻が早いほうのノードから遅いほうのノードに向かう有向アークであり、列車が駅間を走行していることを表す駅間アーク20と、列車が駅に停車中であることを表す停車アーク22と、旅客が列車から降車することを表す降車アーク24と、旅客が列車に乗車することを表す乗車アーク26と、旅客が駅にいることを表す滞留アーク28と、がある。
【0026】
駅間アーク20は、同一列車の発ノード12から次の停車駅の着ノード10に向かって設定される。停車アーク22は、同一列車の同一駅の着ノード10から発ノード12に向かって設定される。降車アーク24は、同一駅の着ノード10から直後の滞留ノード14に向かって設定される。乗車アーク26は、滞留ノード14から対応する発ノード12に向かって設定される。滞留アーク28は、同一駅の滞留ノード14から直後の滞留ノード14に向かって設定される。ここで、あるノードの“直後”や“直前”のノードとは、各ノードに定められた基準時刻に従った時間的な順序を表す。
【0027】
また、アークには当該アークを選択する際の基準となる重みづけであるコストが設定される。基本的には、ノード間の遷移に要する時間、すなわち、アークの始端ノードの基準時刻と、終端ノードの基準時刻との時間差が、当該アークのコストとして設定される。また、降車アーク24及び乗車アーク26については、時間差に加え、更に、乗り換えにかかるコストとして所定値を加算する。
【0028】
本実施形態では、旅客の乗車状況である着席/立席を区別した列車乗継経路の探索を行うため、
図3に示すように、各ノードを更に区分した経路探索ネットワークを用いる。
【0029】
図3は、本実施形態の経路探索ネットワークの一例を示す図である。
図3では、
図1の列車ダイヤの一部分(具体的には、B駅を発車後、C駅に停車して発車するまでの1列車に係るダイヤ)に係るネットワークを示している。分かり易くするため、滞留ノード14を発ノード12の上方に配置して図示している。
【0030】
着ノード10及び発ノード12は、該当する列車の乗客の乗車状況を表す着席/立席に区分される。すなわち、着ノード10は、乗客が着席していることを表す着席着ノード10aと、乗客が立席であることを表す立席着ノード10bとに区分される。発ノード12は、乗客が着席していることを表す着席発ノード12aと、乗客が立席であることを表す立席発ノード12bとに区分される。
【0031】
また、滞留ノード14は、旅客の乗車の優先度を表す優先/一般に区分される。この旅客の乗車の優先度は、当該旅客の駅での待ち時間(滞留時間)に応じて定められる。すなわち、滞留ノード14は、滞留時間が長く優先度が高い優先滞留ノード14aと、滞留時間が短く優先度が低い一般滞留ノード14bとに区分される。
【0032】
更に、着ノード10に対応して、着席乗車予約ノード16aと、立席乗車予約ノード16bとが設定される。着席乗車予約ノード16aは、滞留旅客が、対応する列車に乗車した場合に着席となる事象を表し、立席乗車予約ノード16bは、滞留旅客が、対応する列車に乗車した場合に立席となる事象を表す。
【0033】
また、ノードの区分に合わせて、アークも区分して設定される。すなわち、駅間アーク20として、着席発ノード12aから着席着ノード10aに向かう、乗客が着席していることを表す着席駅間アーク20aと、立席発ノード12bから立席着ノード10bに向かう、乗客が立席であることを表す立席駅間アーク20bと、が設定される。
【0034】
停車アーク22として、着席着ノード10aから着席発ノード12aへ向かう、乗客の着席での継続乗車を表す着席停車アーク22aと、立席着ノード10bから立席発ノード12bへ向かう、乗客の立席での継続乗車を表す立席停車アーク22bと、立席着ノード10bから着席発ノード12aに向かう、立席の乗客が着席したことを表す着席移行停車アーク22cと、が設定される。
【0035】
降車アーク24として、着席着ノード10a及び立席着ノード10bそれぞれから一般滞留ノード14bへ向かうアーク24a,24bが設定される。滞留ノード14は旅客の滞留時間によって優先滞留ノード14aと一般滞留ノード14bとに区分されるため、降車アーク24は、一般滞留ノード14bに向かうアークのみが設定される。
【0036】
乗車アーク26として、優先滞留ノード14aから着席発ノード12aへ向かう、旅客が乗車して着席したことを表す優先着席乗車アーク26aと、優先滞留ノード14aから立席発ノード12bへ向かう、旅客が乗車して立席となることを表す優先立席乗車アーク26bと、一般滞留ノード14bから着席発ノード12aへ向かう、旅客が乗車して着席したことを表す一般着席乗車アーク26cと、一般滞留ノード14bから立席発ノード12bへ向かう、旅客が乗車して立席となったことを表す一般立席乗車アーク26dと、が設定される。
【0037】
滞留アーク28として、優先滞留ノード14aから優先滞留ノード14aへ向かう優先継続滞留アーク28aと、一般滞留ノード14bから一般滞留ノード14bへ向かう一般継続滞留アーク28bと、一般滞留ノード14bから優先滞留ノード14aへ向かう、旅客の滞留時間が所定時間に達したことを表す優先移行滞留アーク28cと、が設定される。
【0038】
更に、着席乗車予約ノード16aから着席発ノード12aに向かう、滞留旅客が乗車して着席したことを表すアーク30aと、着席乗車予約ノード16aから一般滞留ノード14bへ向かう、滞留旅客の乗車予定の列車の変更を表すアーク30bと、立席乗車予約ノード16bから立席発ノード12bに向かう、滞留旅客が乗車して立ち席となったことを表すアーク30cと、立席乗車予約ノード16bから一般滞留ノード14bへ向かう、滞留旅客の乗車予定の列車の変更を表すアーク30dと、が設定される。
【0039】
これらのアークのうち、旅客が着席状態に移行したことを表すアークである着席移行停車アーク22c、一般着席乗車アーク26c、及び、優先着席乗車アーク26aの3つのアークを、本実施形態では、特に「着席アーク」という。
【0040】
また、アークには、上述のように、当該アークの始端ノードの基準時刻と終端ノードの基準時刻との時間差が、基本のコストとして設定される。
【0041】
更に、着席アークについては、着席できる可能性の程度を示す指標値である着席確率に応じてコストが変更される。具体的には、着席確率が小さいほど、該当する着席アークのコストが大きくなるように変更される。本実施形態では、着席アークに該当する着席確率を、想定する旅客に応じて決まる所定の閾値と比較することで、当該着席アークのコストを変更する。所定の閾値は、当該旅客が着席可能とみなす着席確率の下限値として、当該旅客に応じて設定される(
図17の着席可能認知確率に相当)。着席確率が所定の閾値に達している場合、当該旅客は着席可能とみなすとして、当該着席アークのコストを変更しない。一方、着席確率が所定の閾値に達していない場合には、当該旅客は着席不可能とみなすとして、当該着席アークのコストを「∞(無限大:非常に大きな所定値)」に変更し、当該旅客の列車乗継経路の探索において当該着席アークが選ばれないようにする。
【0042】
着席アークに対応する着席確率は、次のように算出される。すなわち、着席移行停車アーク22cの着席確率は、該当駅において該当列車の立席の継続乗車旅客(継続乗客)が着席した確率(継続乗車時の着席確率)であり、該当列車の到着時の立席の継続乗客の人数に対する停車中に立席から着席に移行した乗客の人数の割合として算出される。
【0043】
また、一般着席乗車アーク26c、及び、優先着席乗車アーク26aの着席確率は、該当駅において該当列車に乗車予定の滞留旅客が乗車して着席した確率(乗車時の着席確率)である。すなわち、優先着席乗車アーク26aの着席確率は、該当駅における該当列車に乗車予定の優先滞留旅客の人数に対する、該当列車に乗車して着席した優先滞留旅客の人数の割合として算出される。また、一般着席乗車アーク26cの着席確率は、該当駅における該当列車に乗車予定の一般滞留旅客の人数に対する、該当列車に乗車して着席した一般滞留旅客の人数として算出される。
【0044】
また、駅間アーク20については、更に、該当する駅間の混雑率(乗車率ともいう)に応じてコストが変更・設定される。混雑率は、該当列車の定員人数に対する該当列車の該当駅間の乗客の人数の割合として算出される。そして、混雑率を変数とする所定の混雑不効用関数Fから得られる混雑不効用値Ucに応じて、着席駅間アーク20a及び立席駅間アーク20bそれぞれを変更する。
【0045】
このとき、同一列車の同一駅間について、着席駅間アーク20aのコストよりも立席駅間アーク20bのコストのほうが大きくなるように変更する。具体的には、例えば、先ずは混雑不効用値Ucに応じて着席駅間アーク20aのコストを変更し、この変更した着席駅間アーク20aのコストの所定倍(例えば、2倍)となるように、立席駅間アーク20bのコストを変更する。これにより、一般的に立席の乗客のほうが着席の乗客よりも混雑の影響(不効用)を受け易く、旅客が立席乗車となる列車乗継経路を選びにくくなるといった様子を模擬することが可能となる。
【0046】
そして、このような経路探索ネットワークに基づき、経由する各アークのコストの総和が最小となる経路を、旅客の列車乗継経路として探索する。
【0047】
本実施形態において、旅客の列車乗継経路の探索は、旅客の出現時、及び、各駅における列車の着発時、に行われる。旅客の出現時には、出現駅における出現時刻の直後の一般滞留ノード14bから目的駅に至る経路を、当該旅客の列車乗継経路として探索する。
【0048】
また、各駅における列車の着発時(到着時および出発時)には、当該着発が発生した駅に係る全ての旅客それぞれについて、列車乗継経路の再探索を行い、当該駅以降の列車乗継経路を更新する。このとき、対象の旅客の現在状況に応じたノードから目的駅に至る経路を探索する。すなわち、停車中の列車の乗客のうち、着席している乗客については、当該列車の当該駅への着席着ノード10aから目的駅に至る経路を探索し、立席の乗客については、当該列車の当該駅への立席着ノード10bから目的駅に至る経路を探索する。また、駅の滞留旅客のうち、一般滞留旅客については、当該駅における現在時刻の直後の一般滞留ノード14bから目的駅に至る経路を探索し、優先滞留旅客については、当該駅における現在時刻の直後の優先滞留ノード14aから目的駅に至る経路を探索する。更に、停車中の列車に関する着席乗車予約旅客及び立席乗車予約旅客については、当該列車の着席乗車予約ノード16a又は立席乗車予約ノード16bから、目的駅に至る経路を探索する。目的駅の着ノード10は、着席着ノード10aでも立席着ノード10bでもどちらでも構わない。
【0049】
次に、乗客の着席/立席の制御について説明する。但し、旅客は、当該旅客に設定された列車乗継経路に従って列車の乗降が制御される。また、着席した乗客は、その列車を降車するまで着席を継続することとする。つまり、同一列車の乗車中に着席から立席に移行することは無い。また、乗客は、立席よりも着席を優先することとする。つまり、空席が有るにも関わらず立席の乗客がいる状況は無いとする。
【0050】
図4に示すように、列車40が駅に到着すると、当該列車40の乗客のうち、当該駅で降車予定の乗客を降車させる。着席の乗客50が降車することで、新たな空席が発生する。次いで、この新たに発生した空席に、当該列車の立席の継続乗車の乗客51を着席させる。このとき、新たに発生した空席数が、立席継続乗客の人数以上の場合には、全ての立席継続乗客を着席させる。一方、空席数が、立席継続乗客の人数より少ない場合には、立席の継続乗客のうち、例えばランダムに選択した空席数の乗客を着席させる。
【0051】
続いて、
図5に示すように、当該列車40に乗車予定の当該駅の滞留旅客52を、当該列車に乗車した場合に着席となる着席乗車予約旅客56と、立席となる立席乗車予約旅客57とに振り分ける。すなわち、先ず、当該列車40に乗車予定の滞留旅客52のうち、滞留時間(待ち時間)が所定時間に達している旅客を、優先的に着席できる優先滞留旅客53とし、達していない旅客を一般滞留旅客54とする。
【0052】
そして、優先滞留旅客53を優先して着席させるように、上述の継続乗客を着席させた後の空席数Nに応じて、滞留旅客を着席乗車予約旅客56及び立席乗車予約旅客57に振り分ける。具体的には、優先滞留旅客53の人数Xが空席数N以下ならば(X≦N)、優先滞留旅客53の全てを着席乗車予約旅客56とする。また、一般滞留旅客54のうちから、例えばランダムに選択した、空席数Nと優先滞留旅客の人数Xとの差人数(=N−X)の旅客を着席乗車予約旅客56としそれ以外の旅客を立席乗車予約旅客57とする。一方、優先滞留旅客人数Xが空席数Nを越えるならば(X>N)、優先滞留旅客53のうち、例えばランダムに選択した空席数Nの旅客を着席乗車予約旅客56とし、それ以外の優先滞留旅客、及び、全ての一般滞留旅客54を立席乗車予約旅客57とする。
【0053】
列車の停車中は、当該駅への他の列車の発着等のタイミングで、当該列車40の乗客や当該駅の滞留旅客の列車乗継経路が再探索される。つまり、旅客の列車乗継経路の更新によって、当該列車40に継続乗車予定の乗客が降車することで、当該列車40の空席数が変動(増加)したり、当該列車40に乗車予定の滞留旅客が乗車予定の列車を変更することで、滞留旅客52の人数が変動(増減)するといったことが発生する。このため、列車乗継経路の再探索に合わせて、再度、上述の乗車予約旅客の振り分けが行われる。つまり、当該列車40の空席数を算出し、算出した空席数に応じて、当該列車40に乗車予定の滞留旅客52を、優先滞留旅客53を優先して着席乗車予約旅客56と立席乗車予約旅客57とに振り分ける。
【0054】
そして、当該列車40の発車時に、当該駅の当該駅に乗車予定の滞留旅客55を乗車させる。このとき、着席乗車予約旅客56を着席乗客とし、立席予約旅客57を立席乗客とする。
【0055】
本実施形態のシミュレーションはシミュレーション時刻(仮想時刻)を時々刻々と計時してシミュレートし、このシミュレーション時刻が、ある駅のある列車の着事象或いは発事象に該当するタイミングで、そのある駅およびある列車に係る旅客の列車乗継経路を再探索する。
【0056】
このため、例えば、第1列車が第1駅の停車中(到着から発車までの間)のあるタイミングで、第2列車が第2駅に到着或いは発車したことで、第2列車および第2駅に係る旅客の列車乗継経路が再探索される場合がある。第1列車と第2列車とが第3駅で乗り換え可能である場合、第2列車の空席数や乗客数が変化することで、第1列車が第1駅から出発する際の再探索において、第1列車の乗客の列車乗継経路を可変に設定することが可能となる。こういった連動的・有機的な作用が表れる結果、着席可能性を考慮した特異な旅客流動シミュレーションを実現することができる。
【0057】
[機能構成]
図6は、本実施形態のシミュレーション装置1の機能構成図である。
図6によれば、シミュレーション装置1は、操作入力部110と、表示部120と、通信部130と、処理部200と、記憶部300とを備えて構成されるコンピュータシステムである。
【0058】
操作入力部110は、例えばキーボードやマウス、タッチパネル、各種スイッチ等で実現される入力装置であり、操作入力に応じた操作信号を処理部200に出力する。表示部120は、例えばLCD(液晶ディスプレイ)やELD(有機ELディスプレイ)等で実現される表示装置であり、処理部200からの表示信号に基づく各種表示を行う。通信部130は、例えば無線通信モジュール、ルータ、モデム、有線用の通信ケーブルのジャックや制御回路等で実現される通信装置であり、外部機器との間でデータ通信を行う。
【0059】
処理部200は、例えばCPU等の演算装置で実現され、記憶部300に記憶されたプログラムやデータ、操作入力部110からの入力データ等に基づいて、シミュレーション装置1を構成する各部への指示やデータ転送を行い、シミュレーション装置1の全体制御を行う。また、本実施形態では、処理部200は、旅客管理部210と、着席確率算出部220と、混雑率算出部230と、列車運行制御部240と、列車乗継経路探索部250と、不効用値算出部260とを有し、シミュレーションプログラム310に従った旅客流動シミュレーション処理(
図18〜
図23参照)を実行する。
【0060】
旅客管理部210は、出現制御部211と、降車制御部212と、継続乗車着席制御部213と、乗車制御部214と、滞留管理部215とを有し、旅客を管理する。
【0061】
旅客は、旅客管理データ370によって管理される。
図7は、旅客管理データ370のデータ構成の一例を示す図である。
図7によれば、旅客管理データ370は、旅客毎に生成され、旅客ID371と、行動属性372と、出現駅373と、出現時刻374と、目的駅375と、現在状況376と、列車乗継経路377とを格納している。
【0062】
行動属性372は、列車乗継経路の探索の条件となる旅客の行動の特性であり、本実施形態では、着席可能性についての条件とする。具体的には、ある程度の時間を要しても着席できることを重要視する「着席重視型」と、着席できるかには拘らずに最も早く目的駅に到着できることを重視する「最早列車選択型」と、の何れかとする。
【0063】
現在状況376は、旅客の現在の行動状況であり、具体的には、列車に乗車中ならば、乗車中の列車の列車番号といった識別情報や、当該列車が停車中の駅或いは走行中の駅間の他、着席か立席かの区別を格納し、乗車中でないならば、当該旅客が現在いる(滞留している)駅の駅名を格納する。
【0064】
列車乗継経路377は、出現駅373から目的駅375に至る列車の乗継経路であり、乗車すべき列車の列車番号や乗り換え駅が時系列に沿って格納される。この列車乗継経路377は、先ずは出現時に作成され、列車の運行状況に応じて適宜更新され、最終的には当該旅客の列車乗継経路の実績(行動実績)となる。
【0065】
出現制御部211は、対象線区内の各駅での旅客の出現を制御する。具体的には、行動属性毎に、該当する旅客出現確率テーブル350において定められた出現駅と目的駅との組み合わせ毎の出現確率に従って、当該出現駅に旅客を出現させる。例えば、出現確率に基づいてポワソン分布に従った乱数を発生させ、発生させた乱数に従って旅客の仮想的な出現時刻の分布を生成し、生成した出現時刻の分布に従って旅客を出現させる。出現させた旅客は、出現駅における一般滞留旅客とする。
【0066】
図8は、旅客出現確率テーブル350のデータ構成の一例を示す図である。
図8によれば、旅客出現確率テーブル350は、行動属性351毎に用意され、時間帯352毎に、出現駅353と目的駅354との組み合わせそれぞれについて旅客の出現確率(単位時間当たりの旅客の出現人数に相当)を格納している。すなわち、出現駅353毎に、他の各駅を目的駅354とする旅客の出現確率を定義している。この出現確率は、例えば、各駅に設置されている自動改札機等で収集された旅客の駅構内への入退場時刻のデータ、乗車駅及び降車駅のデータ等から決定されたり、各旅客の利用列車や時間帯毎の乗車人数といった調査データをもとに決定される値である。時間帯352は、対象線区内の運行の始発から終着までを含むシミュレーションの対象となり得る全時間帯を、例えば30分といった所定の単位時間で区切った時間帯である。出現駅353及び目的駅354は、対象線区内の全ての駅である。
【0067】
降車制御部212は、駅に到着した列車の乗客のうち、当該駅で降車予定の乗客を降車させる。すなわち、当該駅を目的駅とする乗客、及び、当該駅が列車乗継経路で定められる乗り換え駅である乗客が、当該駅での降車予定の乗客となる。降車させた乗客は、当該駅が目的駅ならば目的駅に到着したとして消滅させ、当該駅が乗換駅ならば当該駅の(一般)滞留旅客とする。
【0068】
継続乗車着席制御部213は、駅に停車した列車について、降車制御部212による着席乗客の降車によって生じた空席に、立席の継続乗客を着席させる。具体的には、着席乗客の降車によって生じた空席数が立席の継続乗客の人数以上ならば、立席の継続乗客の全てを着席させる。一方、空席数が立席の継続乗客の人数未満ならば、立席の継続乗客のうち、空席数の乗客を例えばランダムに選択して着席させる。
【0069】
乗車制御部214は、駅に停車中の列車に、当該列車に乗車予定の滞留旅客を乗車させる。このとき、当該列車に乗車予定の滞留旅客のうち、着席予約旅客については着席乗客として乗車させ、立席予約旅客については立席乗客として乗車させる、
【0070】
滞留管理部215は、各駅の滞留旅客を管理する。具体的には、滞留時間が所定時間に達した滞留旅客を優先滞留旅客とし、それ以外の滞留旅客を一般滞留旅客とする。
【0071】
滞留旅客は、滞留旅客データ410として管理される。
図9は、滞留旅客データ410のデータ構成の一例を示す図である。
図9によれば、滞留旅客データ410は、対象線区内の全ての駅411毎に生成され、当該駅における滞留旅客のうち、優先滞留旅客の一覧である優先滞留旅客リスト412と、一般滞留旅客の一覧である一般滞留旅客リスト413とを格納している。
【0072】
優先滞留旅客リスト412は、優先滞留旅客それぞれについて、旅客ID412aと、滞留開始時刻412bと、乗車予定列車412cとを対応付けて格納している。一般滞留旅客リスト413は、一般滞留旅客それぞれについて、旅客ID413aと、滞留開始時刻413bと、乗車予定列車413cとを対応付けて格納している。
【0073】
また、滞留管理部215は、駅に停車中の列車に乗車予定の滞留旅客を、当該列車に乗車した場合に着席となる着席予約旅客と、立席となる立席予約旅客とに振り分ける。すなわち、停車中の列車について、継続乗車着席制御部213によって立席の継続乗客の着席がなされた後の空席数を算出し、当該列車に乗車予定の滞留旅客のうち、優先滞留旅客を優先的に、空席数の滞留旅客を着席乗車予約旅客とし、それ以外の滞留旅客を立席乗車予約旅客とする。より具体的には、空席数がゼロの場合には、全ての滞留旅客を立席乗車予約旅客とし、着席乗車予約旅客はゼロとする。空席数が1以上、且つ、優先滞留旅客の人数以下の場合には、優先滞留旅客のうちから、例えばランダムに選択した空席数の旅客を着席乗車予約旅客とし、それ以外の優先滞留旅客及び全ての一般滞留旅客を立席乗車予約旅客とする。空席数が優先滞留旅客の人数を超える場合には、優先滞留旅客の全てと、一般滞留旅客のうちから例えばランダムに選択した旅客との合計が空席数となる旅客を着席乗車予約旅客とし、それ以外の一般滞留旅客を立席乗車予約旅客とする。
【0074】
乗車予約旅客は、乗車予約旅客データ420によって管理される。
図10は、乗車予約旅客データ420のデータ構成の一例を示す図である。
図10によれば、乗車予約旅客データ420は、対象線区内の全ての駅421及び当該駅421に停車する列車422毎に生成され、当該駅から当該列車に乗車予定の滞留旅客である着席乗車予約旅客の旅客IDの一覧である着席乗車予約旅客リスト423と、立席乗車予約旅客の旅客IDの一覧である立席乗車予約旅客リスト424と、を格納している、
【0075】
着席確率算出部220は、駅に停車中の列車について、継続乗車時の着席確率と、乗車時の着席確率とを算出する。具体的には、継続乗車時の着席確率については、継続乗車着席制御部213による立席の継続乗客の着席への変更がなされた後の空席数がゼロの場合、当該列車の当該駅における継続乗車時の着席確率を「0(ゼロ)」とし、空席数が1以上の場合には、継続乗車時の着席確率を「1」とする。
【0076】
また、乗車時の着席確率については、滞留管理部215によって計数された立席予約旅客の人数が1以上の場合には、当該列車の当該駅における優先乗車時着席確率、及び、一般乗車時着席確率をともに「0(ゼロ)」とし、立席予約旅客の人数がゼロの場合は、優先乗車時着席確率、及び、一般乗車時着席確率をともに「1」とする。
【0077】
着席確率算出部220によって算出された着席確率は、予測着席確率データ440として記憶される。
図11は、予測着席確率データ440のデータ構成の一例を示す図である。
図11によれば、予測着席確率データ440は、各列車441の各駅442における予測着席確率443として、継続乗車着席確率443aと、優先乗車着席確率443bと、一般乗車着席確率443cとを対応付けて格納している。
【0078】
混雑率算出部230は、列車の駅間の混雑率を算出する。具体的には、各駅に停車中の列車それぞれについて、当該列車に乗車予定の滞留旅客が全て乗車したと仮定した場合の、当該駅から次の停車駅までの駅間の予測される混雑率を算出する。予測混雑率は、当該列車の定員人数に対する、当該列車の継続乗車の乗客の人数と、当該列車に乗車予定の滞留旅客の人数との合計の比率として算出する。
【0079】
混雑率算出部230によって算出された混雑率は、予測混雑率データ430として記憶される。
図12は、予測混雑率データ430のデータ構成の一例を示す図である。
図12によれば、予測混雑率データ430は、列車431それぞれの駅間432それぞれに、予測混雑率433を対応付けて格納している。
【0080】
列車運行制御部240は、予め定められた計画ダイヤに従って、列車の仮想的な運行を制御する。
【0081】
ここで、計画ダイヤは、計画ダイヤデータ320として記憶されている。
図13は、計画ダイヤデータ320のデータ構成の一例を示す図である。
図13によれば、計画ダイヤデータ320は、列車毎に生成され、列車番号321と、列車種別322とを格納しているとともに、運行区間内での停車駅323それぞれに、着時刻324と、発時刻325とを対応付けて格納している。列車種別322は、各駅停車や快速といった停車駅による分類や、上り/下りといった進行方向の別である。
【0082】
列車運行制御部240は、計画ダイヤを運用ダイヤとし、この運用ダイヤに従って列車の仮想的な運行(シミュレーション)を制御する。
【0083】
運用ダイヤは、運用ダイヤデータ330として記憶される。
図14は、運用ダイヤデータ330のデータ構成の一例を示す図である。
図14によれば、運用ダイヤデータ330は、列車毎に生成され、列車番号331と、列車種別332とを格納しているとともに、運行区間内での停車駅333それぞれに、着時刻334と、発時刻335と、発時更新336の有無とを対応付けて格納している。発時更新336は、対応する駅からの列車の発車時に、列車運行制御部240による当該列車の遅延制御や、着発時再探索部252による各旅客の列車乗継経路の再探索といった所定の処理が行われたか否かを示すフラグである。
【0084】
列車運行制御部240は、運用ダイヤに基づく列車の着時刻となると、当該列車が該当する駅に到着可能かを判断する。具体的には、運用ダイヤのうちのシミュレーション時刻が既に経過したダイヤ部分である実績ダイヤをもとに、当該駅における先行列車が発車済みであり、且つ、発車から所定時分が経過しているならば、到着可能と判断する。到着可能ならば、当該列車を到着させると判断して、現在時刻を実績の着時刻として実績ダイヤを更新する。一方、到着可能でないならば、当該列車の着時刻を所定時分(例えば、1分)遅らせた時刻として、運用ダイヤを修正する。
【0085】
実績ダイヤは、運用ダイヤのうちのシミュレーション時刻が既に経過して運用が完了したダイヤであり、実績ダイヤデータ340として記憶される。
図15は、実績ダイヤデータ340のデータ構成の一例を示す図である。
図15によれば、実績ダイヤデータ340は、計画ダイヤデータ320と同様に、列車毎に生成され、列車番号341と、列車種別342とを格納しているとともに、運行区間内での停車駅343それぞれに、着時刻344と、発時刻345とを対応付けて格納している。
【0086】
また、列車運行制御部240は、運用ダイヤに基づく列車の発時刻となると、当該列車を該当する駅から発車させるか否かを判断する。具体的には、当該列車に対する旅客の乗降に要する時間(乗降時間)を乗降客数等に基づいて算出し、この乗降時間を運用ダイヤ上の停車時分と比較する。乗降時間が停車時分以内ならば、停車時分内に旅客の乗降が終了して列車を発車させると判断し、現在時刻を当該列車の実績の発時刻として実績ダイヤを更新する。
【0087】
一方、乗降時間が停車時分を超えるならば、停車時分内に旅客の乗降が終了せずに遅延が発生したと判断し、発生した遅延に合わせて運用ダイヤを修正する。すなわち、算出した乗降時間と、運用ダイヤ上の停車時分との差を、発生した遅延時分とする。そして、当該列車の当該駅の発時刻と、次の停車駅における着時刻とを、遅延時分だけ遅らせた時刻として運用ダイヤを修正する。その結果、次の停車駅における修正後の着時刻が発時刻より遅くなる場合には、当該列車の次の停車駅以降の運用ダイヤ全体を、遅延時分だけ遅らせるように修正する。
【0088】
乗降時間tnは、例えば、当該列車の到着時の車内人数y、降車人数x1、及び、乗車人数x2から、次式(1)に従って算出する。
Tn=A・(x1+x2)・2+B・(x1+x2)+C・y ・・(1)
式(1)において、A,B,Cは定数であり、例えば、A=−0.0031、B=0.7908、C=0.003、である。
【0089】
列車は、列車データ380によって管理される。
図16は、列車データ380のデータ構成の一例を示す図である。
図16によれば、列車データ380は、列車毎に生成され、列車番号381と、運行区間382と、定員383と、座席数384と、運行状況385と、乗客データ386と、乗降実績データ390とを格納している。運行状況385、乗客データ386、および乗降実績データ390は、シミュレーションの進行に応じて随時更新されるデータである。
【0090】
運行状況385は、当該列車の現在(シミュレーション時刻)の運行状況であり、具体的には、走行中ならばその駅間を格納し、停車中ならばその停車駅を格納している。乗客データ386は、当該列車に現在乗車中の旅客(乗客)についてのデータであり、立席の乗客の旅客IDの一覧である立席乗客リスト387と、立席の乗客の旅客IDの一覧である着席乗客リスト388とを含んでいる。
【0091】
乗降実績データ390は、駅における旅客の乗車及び降車についてのデータであり、当該列車の停車駅391毎に生成され、当該駅に到着時の立席乗客の人数392と、着席乗客の人数393と、着時立席乗客人数392および着時着席乗客人数393の合計である着時合計乗客人数394と、立席乗客のうちの降車人数395と、着席乗客のうちの降車人数396と、立席降車人数395および着席降車人数396の合計である合計降車人数397と、立席乗車の人数398と、着席乗車の人数399と、立席乗車人数398および着席乗車人数399の合計である合計乗車人数400と、発車時の立席乗車の人数401と、発車時の着席乗車の乗客人数402と、発時立席乗客人数401および発時着席乗客人数402の合計である発時合計乗客人数403と、発車時の乗車率404とを格納している。発時乗車率404は、定員383に対する発時合計乗客人数403の比率である。
【0092】
図6に戻り、列車乗継経路探索部250は、出現時探索部251と、着発時再探索部252とを有し、計画ダイヤや運用ダイヤといった各種のダイヤをもとに、旅客の行動属性に応じた列車乗継経路を探索する。
【0093】
出現時探索部251は、出現制御部211によって出現された旅客を対象として、当該旅客の出現駅から目的駅に至る列車乗継経路の探索を行う。具体的には、対象旅客の出現時刻以降の所定の時間範囲(例えば、2時間)の運用ダイヤに基づいて、出現駅から目的駅までの駅範囲となる経路探索ネットワークを初期生成する。
【0094】
次いで、参照シミュレーションの結果を用いて、初期生成した経路探索ネットワークの着席アーク、及び、駅間アークのコストを変更する。参照シミュレーションとは、同一の計画ダイヤに対して過去に行われた旅客流動シミュレーションである。すなわち、着席アークそれぞれに対応する着席確率を、参照シミュレーションの結果を用いて算出する。着席アークのうち、着席移行停車アーク22cの着席確率(継続乗車着席確率)は、該当列車の該当駅への到着時の立席の継続乗客の人数に対する停車中に立席から着席に移行した乗客の人数の割合として算出する。優先着席乗車アーク26aの着席確率は、該当駅における該当列車に乗車予定の優先滞留旅客の人数に対する、該当列車に乗車して着席した優先滞留旅客の人数の割合として算出する。一般着席乗車アーク26cの着席確率は、該当駅における該当列車に乗車予定の一般滞留旅客の人数に対する、該当列車に乗車して着席した一般滞留旅客の人数として算出する。
【0095】
さらに、予測着席確率データ440を参照し、着席アークのうち、着席確率算出部220によって着席確率が算出されている着席アークについては、この着席確率に変更する。
【0096】
なお、参照シミュレーションを用いない場合には、各着席アークに対応する着席確率を全て「0(ゼロ)」とする。
【0097】
そして、各着席アークについて、対応する着席確率が、当該旅客の行動属性に応じた着席可能認知確率未満である場合、当該着席アークのコストを「∞(無限大:非常に大きな値)」に変更する。
【0098】
着席可能認知確率は、行動属性設定テーブル360にて定められている。
図17は、行動属性設定テーブル360のデータ構成の一例を示す図である。
図17によれば、行動属性設定テーブル360は、行動属性361と、旅客が着席可能とみなす着席確率である着席可能認知確率362とを対応付けて格納している。この着席可能認知確率362によって、旅客が着席可能とみなす着席確率の閾値(下限値)が設定される。
【0099】
また、駅間アークについては、参照シミュレーションの結果を参照して算出する。例えば、混雑率は、該当列車の定員に対する該当列車の該当駅間の乗客の人数の割合として算出する。更に、予測混雑率データ430を参照し、駅間アークのうち、混雑率算出部230によって予測混雑率が算出されている駅間アークについては、この予測混雑率に変更する。
【0100】
そして、各駅間アークについて、混雑率を変数とする所定の混雑不効用関数Fに基づいて混雑不効用値Ucを算出し、算出した混雑不効用値Ucに応じて着席駅間アーク20a及び立席駅間アーク20bのそれぞれのコスト(重みづけ)を変更する。このとき、立席駅間アーク20bのほうが着席駅間アーク20aよりもコストが大きくなるようにする。
【0101】
なお、参照シミュレーションを用いない場合には、混雑率に応じた駅間アークのコスト変更を実施しない。
【0102】
そして、コストを変更した後の経路探索ネットワークに基づいて、出現駅から目的駅に至る経路であって、経由する各アークのコストが最小となる経路を、対象旅客の列車乗継経路として設定する。
【0103】
着発時再探索部252は、各駅への列車の着発時に、当該駅に係る全ての旅客を対象とした列車乗継経路の再探索を行う。このとき、再探索の対象となる旅客は、当該駅に停車中の列車の乗客、及び、当該駅の滞留旅客である。
【0104】
具体的には、対象の旅客それぞれについて、出現時探索部251による列車乗継経路の探索と同様に、目的駅までの列車乗継経路を探索する。すなわち、対象旅客の現在駅から目的駅までの駅範囲となる経路探索ネットワークを初期生成する。このとき、対象の旅客が停車中の列車の着席乗客ならば、当該列車の当該駅への着席着ノード10aを出発ノードとし、立席乗客ならば、当該列車の当該駅への立席着ノード10bを出発ノードとする経路探索ネットワークを生成する。或いは、対象の旅客が一般滞留旅客ならば、当該駅における現在時刻(現在のシミュレーション時刻の意)の直後の一般滞留ノード14bを出発ノードとし、優先滞留旅客ならば、当該駅における現在時刻の直後の優先滞留ノード14aを出発ノードとする経路探索ネットワークを生成する。更に、対象の旅客が、停車中の列車に関する着席乗車予約旅客又は立席乗車予約ならば、該当する列車の着席乗車予約ノード16a又は立席乗車予約ノード16bを出発ノードとする経路探索ネットワークを生成する。
【0105】
そして、生成した経路探索ネットワークにおいて、参照シミュレーションの結果や、予測着席確率データ440、予測混雑率データ430を用いて、着席アークや駅間アークのコストを変更し、経路探索ネットワークに基づいて、現在駅から目的駅までの経路を探索し、現在駅以降の列車乗継経路を更新する。
【0106】
不効用値算出部260は、計画ダイヤや運用ダイヤといった各種ダイヤに対する旅客の不効用値を算出する。ダイヤに対する旅客の不効用値Uは、次式(2)により与えられる。
【数1】
式(2)において、α,β,γ,δは定数であり、例えば、α=0.019,β=4.52,γ=5.63,δ=1.202、である。また、jは、旅客の出現駅から目的駅に至る実際の列車乗継経路中の列車で通過した駅間の集合である。t
jは、該当する駅間jの走行時間(乗車時間)であり、c
jは、該当する駅間jの乗車率である。Nは、旅客の列車乗継経路中の乗り換え回数である。T
Wは、旅客の待ち時間であり、列車乗継経路中の各乗り換えの際の待ち時間の総和である。T
Rは、乗車時間であり、列車乗継経路中に乗車した各列車の乗車時間の総和である。不効用値算出部260が算出した不効用値は、不効用値データ450として記憶される。
【0107】
記憶部300は、処理部200がシミュレーション装置1を統合的に制御するための諸機能を実現するためのシステムプログラムや、本実施形態を実現するための各種のプログラムやデータ等を記憶するとともに、処理部200の作業領域として用いられ、処理部200が各種プログラムに従って実行した演算結果や、操作入力部110からの入力データ等が一時的に格納される。本実施形態では、記憶部300には、シミュレーションプログラム310と、計画ダイヤデータ320と、運用ダイヤデータ330と、実績ダイヤデータ340と、旅客出現確率テーブル350と、行動属性設定テーブル360と、旅客管理データ370と、列車データ380と、滞留旅客データ410と、乗車予約旅客データ420と、予測混雑率データ430と、予測着席確率データ440と、不効用値データ450とが記憶される、
【0108】
[処理の流れ]
(A)シミュレーション処理
図18は、本実施形態の旅客流動シミュレーション処理の流れを説明するためのフローチャートである。この処理は、処理部200が、シミュレーションプログラム310を実行することで実現される。
【0109】
図18によれば、先ず、初期設定として、シミュレーション時刻である現在時刻tを、所定の開始時刻t0に設定する(ステップA1)。また、各列車の計画ダイヤを運用ダイヤに設定する(ステップA3)。
【0110】
次いで、出現制御部211が旅客出現処理を行って、各駅に旅客を出現させる。すなわち、対象線区内の全ての駅を対象としたループAの処理を行う。ループAでは、旅客出現確率テーブル350に従って、行動属性毎に、当該駅を出現駅とし他の各駅を目的駅とする旅客の出現人数を決定する(ステップA5)。次いで、出現させると決定した各旅客を対象としたループBの処理を行う。ループBでは、出現時探索部251が、当該旅客を対象とした経路探索処理(
図23参照)を行って、当該旅客の出現駅から目的駅に至る列車乗継経路を設定する(ステップA7)。そして、当該旅客を当該駅に出現させる(ステップA9)。ループB,ループAはこのように行われる。
【0111】
続いて、対象線区内の全ての駅を対象とするループCの処理を行う。ループCでは、着時処理(
図19参照)を行う(ステップA11)。次いで、発時処理(
図20〜
図22参照)を行う(ステップA13)。ループCはこのように行われる。
【0112】
対象線区内の全ての駅を対象としたループCの処理を終了とすると、続いて、列車運行制御部240が、現在時刻tが所定の終了時刻teに達したかを判断する。終了時刻teに達していないならば(ステップA15:NO)、現在時刻tを所定時分Δt(例えば、1分)だけ進め(ステップA17)、ステップA5に戻る。一方、現在時刻tが終了時刻teに達しているならば(ステップA15:YES)、不効用値算出部260が、計画ダイヤ及び実績ダイヤそれぞれに対する各旅客の不効用値を算出する(ステップA19)。以上の処理を行うと、本処理は終了となる。
【0113】
(B)着時処理
図19は、着時処理の流れを説明するフローチャートである。先ず、列車運行制御部240が、現在時刻tが、運用ダイヤに基づく何れかの列車(着列車)が何れかの駅への着時刻となったかを判断する。着時刻ならば(ステップB1:YES)、続いて、実績ダイヤ等を参照して、当該列車が到着可能か否かを判断する。到着可能でないならば(ステップB3:NO)、当該列車の当該駅への着時刻を所定時分(例えば、1分)遅らせて、運用ダイヤを更新する(ステップB35)。
【0114】
一方、到着可能ならば(ステップB3:YES)、現在時刻tを当該列車の実績の着時刻として実績ダイヤを更新する(ステップB5)。続いて、着発時再探索部252が、当該駅にかかる全ての旅客を対象とした経路探索処理(
図23参照)を行って、各旅客の当該駅以降の列車乗継経路を更新する(ステップB7)。次いで、降車制御部212が、当該列車の乗客のうち、当該駅で降車する乗客を判断し、判断した乗客を当該列車から降車させる(ステップB9)。
【0115】
続いて、継続乗車着席制御部213が、当該列車の空席数を算出する(ステップB11)。また、当該列車の乗客のうち、立席の継続乗客人数を算出する(ステップB13)。そして、空席数と立席の継続乗車人数とを比較し、空席数が立席の継続乗客人数以上ならば(ステップB15:YES)、全ての立席の継続乗客を着席させる(ステップB17)。一方、空席数が立席の継続乗客人数未満ならば(ステップB15:NO)、立席の継続乗客のうち、空席数だけの乗客を着席させる(ステップB19)。そして、着席確率算出部220が、当該列車の当該駅における継続乗車着席確率を「0」とする(ステップB21)。
【0116】
その後、滞留管理部215が、再度、当該列車の空席数を算出する(ステップB23)。そして、当該駅の当該列車に乗車予定の滞留旅客のうち、優先滞留旅客から優先的に、空席数だけの滞留旅客を着席乗車予約旅客とし(ステップB25)、それ以外の滞留旅客を立席乗車予約旅客とする(ステップB27)。その結果、立席乗車予約旅客人数が「1」以上ならば(ステップB29:YES)、着席確率算出部220が、当該駅の当該列車への一般乗車着席確率、及び、優先乗車着席確率をともに「0」とする(ステップB31)。一方、立席乗車予約旅客数が「0」ならば(ステップB29:NO)、着席確率算出部220は、当該駅の当該列車への一般乗車着席確率、及び、優先乗車着席確率をともに「1」とする(ステップB33)。以上の処理を行うと、着時処理を終了する。
【0117】
(C)発時処理
図20〜
図22は、発時処理の流れを説明するフローチャートである。先ず、列車運行制御部240が、現在時刻tが運用ダイヤで定められる何れかの列車(発列車)の何れかの駅からの発時刻であるかを判断する。発時刻ならば(ステップC1:YES)、当該列車について当該駅での発時更新済みであるか否かを判断する。発時更新済みならば(ステップC3:YES)、
図21のステップD17に移行する。
【0118】
発時更新済みでないならば(ステップC3:NO)、滞留管理部215が、当該駅の一般滞留旅客のうち、滞留時間が所定時間以上の旅客を、優先滞留旅客とする(ステップC5)。続いて、着発時再探索部252が、当該駅にかかる全ての旅客を対象とした経路探索処理(
図23参照)を行って、各旅客の当該駅以降の列車乗継経路を更新する(ステップC7)。そして、降車制御部212が、この列車乗継経路の更新の結果、当該列車の乗客のうち、新たに当該駅において降車予定となった乗客を降車させる(ステップC9)。
【0119】
続いて、滞留管理部215が、当該列車の空席数を算出する(ステップC11)。そして、当該発列車に乗車予定の滞留旅客のうち、優先滞留旅客を優先的に、空席数だけの旅客を着席乗車予約旅客とし(ステップC13)、それ以外の旅客を立席乗車予約旅客とする(ステップC15)。その結果、立席乗車予約旅客人数が「1」以上ならば(ステップC17:YES)、着席確率算出部220が、当該駅の当該列車への一般乗車着席確率、及び、優先乗車着席確率を「0」とする(ステップC19)。一方、立席乗車予約人数が「0」ならば(ステップ17:NO)、当該駅の当該列車への一般乗車着席確率、及び、優先乗車着席確率を「1」とする(ステップC21)。
【0120】
その後、混雑率算出部230が、当該列車の乗車予約旅客の全てが当該列車に乗車したと仮定した場合の、当該駅から次の停車駅までの駅間の予測混雑率を算出する(ステップC23)。
【0121】
続いて、
図21に示すように、着発時再探索部252が、当該駅にかかる全ての旅客を対象とした経路探索処理(
図23参照)を行って、各旅客の当該駅以降の列車乗継経路を更新する(ステップD1)。そして、降車制御部212が、この列車乗継経路の更新の結果、当該列車の乗客のうち、新たに当該駅において降車予定となった乗客を降車させる(ステップD3)。
【0122】
次いで、列車運行制御部240が、当該駅における当該列車降車人数と、乗車予定人数とから、当該発列車の当該駅での旅客の乗降に要する乗降時間を算出する(ステップD5)。そして、算出した乗降時間を運用ダイヤにおける停車時分と比較することで、発遅延が生じるかを判断する(ステップD7)。
【0123】
発遅延が生じるならば(ステップD9:YES)、算出した乗降時間と運用ダイヤにおける停車時分との差を遅延時分として算出し(ステップD11)、当該発列車の発時刻をこの遅延時分だけ遅延させて運用ダイヤを修正する(ステップD13)。このとき、この運用ダイヤの修正に伴い、必要に応じて他の列車の運用ダイヤを修正する。そして、当該発列車の当該駅の発時更新を“済み”とする(ステップD15)。
【0124】
一方、発遅延が生じないならば(ステップD9:NO)、継続乗車着席制御部213が、当該発列車の空席数を算出する(ステップD17)。その結果、空席が有る場合、当該発列車の立席の継続乗客のうち、空席数の乗客を着席させる(ステップD19)。
【0125】
続いて、滞留管理部215が、再度、当該列車の空席数を算出する(ステップD21)。そして、当該列車に乗車予定の滞留旅客のうち、空席数の旅客を着席乗車予約旅客とし、空整数以上の滞留旅客を、立席乗車予約旅客とする(ステップD23)。
【0126】
その後、乗車制御部214が、立席乗車予約旅客を立席乗客とし、着席乗車予約旅客を着席乗客として、乗車予約旅客を当該列車に乗車させる(ステップD27)。そして、列車運行制御部240が、現在時刻tを当該列車の実績の発時刻として実績ダイヤを更新する(ステップD29)。
【0127】
続いて、
図22に示すように、当該駅に停車中の他の列車が存在するかを判断する。停車中の列車が存在するならば(ステップE1:YES)、滞留管理部215が、当該駅の一般滞留旅客のうち、滞留時間が所定時間以上の旅客を優先滞留旅客とする(ステップE3)。次いで、着発時再探索部252が、当該駅にかかる全ての旅客を対象とした経路探索処理(
図23参照)を行って、各旅客の当該駅以降の列車乗継経路を更新する(ステップE5)。
【0128】
続いて、当該駅に停車中の他の各列車を対象としたループDの処理を行う。ループDでは、降車制御部212が、この列車乗継経路の更新の結果、当該列車の乗客のうち、新たに当該駅において降車予定となった乗客を降車させる(ステップE7)。次いで、滞留管理部215が、当該列車の空席数を算出する(ステップE9)。そして、当該発列車に乗車予定の滞留旅客のうち、優先滞留旅客を優先的に、空席数だけの旅客を着席乗車予約旅客とし(ステップE11)、それ以外の旅客を立席乗車予約旅客とする(ステップE13)。
【0129】
その結果、立席乗車予約旅客人数が「1」以上ならば(ステップE15:YES)、着席確率算出部220が、当該駅の当該列車への一般乗車着席確率、及び、優先乗車着席確率を「0」とする(ステップE17)。一方、立席乗車予約人数が「0」ならば(ステップE15:NO)、当該駅の当該列車への一般乗車着席確率、及び、優先乗車着席確率を「1」とする(ステップE19)。ループDはこのように行われる。停車中の列車の全てを対象としたループDの処理を終了すると、発時処理を終了する。
【0130】
(D)経路探索処理
図23は、経路探索処理の流れを説明するフローチャートである。
図23によれば、対象旅客それぞれについてのループEの処理を行う。ループEでは、運用ダイヤに基づいて、対象旅客の現在駅を出発駅とし、目的駅までの駅範囲となる、経路探索ネットワークを初期生成する(ステップF1)。このとき、各アークのコストは、始端ノードと終端ノードとの基準時刻の差とする。次いで、参照シミュレーションの有無を判断する。参照シミュレーションが無いならば(ステップF3:NO)、経路探索ネットワークに含まれる全ての着席アークのコストを「∞(非常に大きな値)」に変更する(ステップF23)。
【0131】
一方、参照シミュレーションが有るならば(ステップF3:YES)、経路探索ネットワークに含まれる着席アークそれぞれを対象としたループFの処理を行う。ループFでは、参照シミュレーションの結果をもとに、対象着席アークに対応する着席確率を算出する(ステップF5)。次いで、対応する予測着席確率が算出されているかを判断し、算出されているならば(ステップF7:YES)、着席確率を、この予測着席確率に変更する(ステップF9)。算出されていないならば(ステップF7:NO)、着席確率をそのままとする。
【0132】
続いて、着席確率を、仮想旅客の行動属性に応じた着席可能認知確率と比較し、着席確率が着席可能認知確率未満ならば(ステップF11:NO)、対象着席アークのコストを「∞を示す所定値」に変更する(ステップF13)。ループFの処理はこのように行われる。
【0133】
経路探索ネットワークに含まれる全ての着席アークを対象としたループFの処理を行うと、続いて、経路探索ネットワークに含まれる駅間アークそれぞれを対象としたループGの処理を行う。ループGでは、参照シミュレーションの結果をもとに、対象駅間アークに対応する駅間の混雑率を算出する(ステップF15)。次いで、対応する予測混雑率が算出されているかを判断し、算出されているならば(ステップF17:YES)、混雑率を、この予測混雑率に変更する(ステップF19)。そして、混雑率に基づいて、対象駅間アークのコストを変更する(ステップF21)。このとき、対象駅間アークである着席駅間アーク20a及び立席駅間アーク20bのうち、着席駅間アーク20aのほうが、立席駅間アークよりもコストが大きくなるように変更する。ループGの処理はこのように行われる。
【0134】
経路探索ネットワークに含まれる全ての駅間アークを対象としたループGの処理を行うと、経路探索ネットワークに基づいて出発駅から目的駅に至る経路を探索し、対象旅客の列車乗継経路として設定する(ステップF25)。ループEはこのように行われる。全ての対象旅客についてのループEの処理を行うと、経路探索処理を終了する。
【0135】
[作用効果]
このように、本実施形態によれば、列車の着席可能性を考慮した旅客流動シミュレーションが可能となる。すなわち、着席乗客が降車した場合に、降車した着席乗客数に応じた数の立席乗客を着席に変更したり、滞留旅客が乗車した場合に、乗車した滞留旅客を空席数に応じて着席/立席の何れかとすることで、列車の乗客を着席/立席に区別して管理する。また、着席乗車と立席乗車それぞれに対応付けた重み付けと、列車の着席可能性とを用いて、旅客の列車乗継経路を再探索する。これにより、着席/立席の何れになるかによって列車乗継経路が変化し得る様子を模擬することが可能となる。
【0136】
また、列車の着発の度に、列車乗継経路の再探索が実行される。これにより、列車運行に遅延が生じた場合や、旅客が乗車予定の列車に着席できないと判断した場合など、状況に応じて旅客の列車乗継経路が動的に変化する様子を模擬することが可能となる。
【0137】
また、乗車人数に応じた混雑指標値を用いて、立席乗車に対する重み付けが可変される。一般的に、着席乗車は、立席乗車に比較して混雑の影響をさほど受けない。また、乗車人数が多いほど、混雑の影響が大きくなる。これにより、着席乗車と立席乗車とを区別したより精度の高い旅客行動シミュレーションが可能となる。
【0138】
また、乗車した滞留旅客のうち、優先的に着席とする旅客が、当該滞留旅客の滞留時間を用いて判断される。これにより、駅における列車の待ち時間が長いほど、乗車待ちをしていて乗車すれば着席できる可能性が高まるといった状況を模擬することが可能となる。
【0139】
なお、本発明の適用可能な実施形態は上述の実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲で適宜変更可能なのは勿論である。