本実施例におけるグローバルODデータとは、施設への入出場情報であって、実際に移動を行った経路の最初の入場の記録と最後の出場の記録とが含まれる情報である。実際に移動を行う際は複数の経路を経由してその出発地から到着地まで移動する。移動経路上で経由する利用施設の情報を含むグローバルODデータについては経路付きグローバルODデータと呼ぶ。
また、グローバルODデータに対して、グローバルODデータが示す経路の経由地点となる施設において、施設の内部における経路の発着地と移動経路とを特定する情報を、経路付きローカルODデータと呼ぶ。また、ローカル移動需要とは、グローバルODデータ及び経路付きグローバルODデータに含まれる経路上の施設内部、及び、施設の特定の領域における移動需要を示し、施設の内部及び特定の領域における移動者の進行方向及び人数などの情報を含む。
以下、添付図面に基づいて、本実施例を説明する。なお、以下で説明する実施例において、ローカル移動需要を予測する施設として、鉄道駅を説明し、また、施設の利用者として鉄道駅の利用者を説明する。しかし、本実施例のシステムを適用する環境は、複数の利用者が複数の施設間を移動し、かつ、施設の中を利用者が移動する環境であればいかなる環境であってもよい。
図1は、本実施例の移動需要予測システムのシステム構成を示すブロック図である。
鉄道の利用者101は、鉄道の利用を開始又は終了する際に、切符、磁気定期券、又は、IC乗車券などの乗車券102を用いて、改札機等の読み取り装置103を通過する。この際に読み取り装置103は、乗車券102との通信によって取得したデータを、ネットワーク104を介してサーバ105へ送信する。サーバ105は、少なくとも一つの事業者が管理する記憶装置である。
また、サーバ105は、駅に設置されたカメラ106が撮像する画像又は映像、及び、鉄道車両107に設置された応荷重装置から車両内の人数の推定値データなどを、必要に応じて、ネットワーク104を介して受け付け、格納する。
移動需要予測システム108は、データサーバ111、計算サーバ112、及び、情報配信サーバ113を含み、乗車券102の利用データ及び利用者101の流動データを集計、加工したデータを蓄積し、ローカル移動需要を予測する。なお、本実施例の処理に直接関係しない乗車券102、読み取り装置103、カメラ106、及び、応荷重装置の機能、構成及び情報処理技術については説明を省略する。
乗車券102を所持した利用者101が読み取り装置103を通過した場合、読み取り装置103は、乗車券102を特定するユーザID、読み取り装置103を通過した通過日時、入出場の区別、通過した読み取り装置103を示す識別子などを含む入出場ログ等の情報を取得する。
読み取り装置103は、取得した情報をサーバ105へ蓄積する。そして、読み取り装置103は、サーバ105への蓄積と同時に、サーバ105に蓄積したデータを、ネットワーク104を介してデータサーバ111へ送信してもよい。また、サーバ105は、一定時間ごと、又は、一定量のデータが蓄積された場合、蓄積したデータをデータサーバ111へ送信してもよい。
データサーバ111、計算サーバ112、及び、情報配信サーバ113は、各々プロセッサ、メモリ及びネットワークインタフェースを有する計算機である。また、移動需要予測システム108は、操作者114が操作する計算機と、ネットワーク118とを有してもよい。計算サーバ112及び情報配信サーバ113は、ネットワーク118を介して、操作者114が操作する計算機と接続する。
また、移動需要予測システム108は、ネットワーク117と接続し、ネットワーク117を介して、鉄道事業者115が有する情報端末116と接続する。
なお、本実施例では、移動需要予測システム108は、データサーバ111、計算サーバ112、及び、情報配信サーバ113のサーバ群を含むとして説明するが、1又は複数の物理的な計算機がこれらサーバ群の機能を実行するシステムであってもよい。
データサーバ111は、読み取り装置103が読み取った利用者101の構内への入出場データをネットワーク104を介して受信し、データサーバ111が有するデータ格納部121に格納する。
データ格納部121は、入出場ログ122、マスタデータ123、計画ダイヤ124、グローバルODデータ125、ローカル移動需要データ126、及び利用者流動データ127を格納する。
入出場ログ122は、読み取り装置103から収集した情報である。マスタデータ123は、鉄道路線及び駅を示す。計画ダイヤ124は、鉄道の運行を示す。マスタデータ123及び計画ダイヤ124は、移動需要予測システム108の外部のシステムから受け付けた情報であり、必要に応じて、変更及び更新される。
グローバルODデータ125は、駅間を移動する利用者101が入場した駅及び入場時刻並びに出場した駅及び出場時刻を示す情報であり、入出場ログ122などを加工して生成される。
ローカル移動需要データ126は、移動需要予測システム108により生成され、グローバルODデータ125に基づいて求められた利用者101の数を示す。利用者流動データ127は、ローカル移動需要を予測するために用いられる情報であり、駅内の利用者101の人数を示す。
計算サーバ112は、入出場ログ122に基づいてグローバルODデータ125を生成する処理と、グローバルODデータごとに利用経路を推定し、経路付きローカルOD及びローカル移動需要を推定する処理と、推定されたローカル移動需要及び利用者流動データ127を用いてローカル移動需要を予測する処理などを行う。
計算サーバ112は、主にネットワークインタフェースI/F(A)130、CPU131、メモリ132、及び、記憶部133を有する。また、情報配信サーバ113は、ネットワークインタフェースI/F(B)150とCPU151とメモリ152と記録装置153とを有する。
ネットワークインタフェースI/F(A)130及びネットワークインタフェースI/F(B)150は、ネットワークに接続するためのインタフェースである。
記憶部133及び記録装置153は、複数の記録装置を含み、各種プログラム、各種データを記録する。記憶部133及び記録装置153は、例えば、ハードディスクドライブ、CD−ROMドライブ、及び、フラッシュメモリなどである。なお、記憶部133及び記録装置153は、各種プログラム及び各種データを複数の記録装置に分割して格納してもよい。
記憶部133は、グローバルOD生成プログラム134、利用経路推定プログラム135、経路付きローカルOD推定プログラム136、ローカル移動需要推定プログラム137、ローカル移動需要予測プログラム138、及び、予測モデル最適化プログラム139のプログラム群と、データ格納部140と、を含む。
また、データ格納部140は、計算サーバ112における計算処理の結果得られた推定値及び予測値を格納する。データ格納部140は、経路付きグローバルODデータ141及び経路付きローカルODデータ142を含む。
CPU131は、プログラムを実行する際、分析対象のデータをデータサーバ111から読み出し、メモリ132へ一時的に格納し、メモリ132に格納された各プログラムをメモリに読み出して実行することにより各種機能を実現する。
これらのプログラムの実行のタイミングは、例えば操作者114及び鉄道事業者115のリクエストのタイミング及びデータサーバ111に新規データが追加されるタイミングであってもよいし、1時間及び1日ごとの一定時間ごとであってもよいし、一定量のデータが蓄積されたときのバッチ処理のタイミングであってもよい。
情報配信サーバ113は、ローカル移動需要の予測値を必要に応じてネットワーク118又はネットワーク117に出力する。鉄道事業者115は、情報端末116及びネットワーク117を介して、駅内における任意の期間(将来を含む)のローカル移動需要の予測値を情報配信サーバ113から取得する。
記録装置153は、表示画面生成プログラム154、及び、情報配信プログラム155を含む。CPU151は、記録装置153に記録される各種プログラムをメモリに読み出して実行することにより各種機能を実行する。これらの情報は、操作者114及び鉄道事業者115が能動的にアクセスしたタイミングで取得される。
図2は、本実施例の入出場ログ122を示す説明図である。
入出場ログ122は、データサーバ111内に格納される代表的なデータであり、図2は、入出場ログ122のデータ構造を示す。入出場ログ122は、ログID201、ユーザID202、駅ID203、改札ID204、利用時刻205及び利用種別206を含む。
ログID201は、入出場ログ122に含まれるエントリを識別するための識別子を示す。ユーザID202は、利用者101の識別子を示す。駅ID203は、利用者101が入出場時に利用した駅を示し、改札ID204は、利用者101が入出場時に利用した改札を示す。
利用時刻205は、読み取り装置103を通過した日及び時刻を示す。利用種別206は、入場か出場かを示す。
入出場ログ122のデータは、新規にデータが生成される度に送信されてもよいし、または、一定時間ごとに、毎日決まった時刻で、又は、一定量のデータがサーバ105に蓄積されたタイミングで、蓄積されたデータが一括して送られてもよい。データサーバ211は、その送受信のタイミングに合わせて、受信したデータを入出場ログ122に格納する。
図3は、本実施例のマスタデータ123を示す説明図である。
図3は、データサーバ111が格納するマスタデータ123の種類とそれぞれのデータ構造を示す。マスタデータ123は、駅マスタ300、路線マスタ310、駅−路線関係マスタ320、駅内箇所マスタ330及び駅内通路マスタ340を含む。
駅マスタ300は、駅に関する基本データを含み、駅ID301及び駅名302などの情報を含む。駅ID301は、駅の識別子を示す。駅名302は、駅ID301が示す駅の名称を示す。
路線マスタ310は、路線に関する基本データを含み、路線ID311、路線名312及び路線タイプ313などの情報を含む。路線ID311は、路線の識別子を示す。路線名312は、路線ID311が示す路線の名称を含む。路線タイプ313は、路線のタイプを示し、例えば、各駅列車及び特急列車等を示す。
駅−路線関係マスタ320は、駅及び路線を対応づけるための基本データを含み、路線ID321、駅ID322、順序323、種別324及び始点からの所要時間325などの情報を含む。路線ID321は、路線の識別子を示し、路線ID311に対応する。駅ID322は、駅の識別子を示し、駅ID301に対応する。順序323は、路線ID321が示す路線における駅ID322の駅の順序を示す。列車は、順序323の昇順に進行する。
種別324は、列車が駅ID322の駅を停車するか通過するかを示す。始点からの所要時間325は、列車が路線ID321における始発駅から駅ID322が示す駅まで移動するために必要な時間を示す。
駅内箇所マスタ330は、駅内箇所に関する基本データを含み、駅ID331、駅内箇所ID332、駅内箇所名称333などの情報を含む。駅ID331は、駅の識別子を示し、駅ID301に対応する。
駅内箇所ID332は、駅ID301が示す駅に含まれる駅内箇所の識別子を示す。駅内箇所名称333は、駅内箇所の名称を示す。駅内箇所の名称は、例えば、北口改札、及び、1番線ホーム中央階段などである。
駅内通路マスタ340は、二つの駅内箇所と、当該二つの駅内箇所間を結ぶ通路とを対応付けるための基本データを含み、駅ID341、通路ID342、接続元駅内箇所ID343、接続先駅内箇所ID344、及び、標準所要時間345などの情報を含む。駅ID341は、駅の識別子を示し、駅ID301に対応する。
通路ID342は、通路の識別子を示す。接続元駅内箇所ID343は、通路の始点である駅内箇所の識別子を示し、駅内箇所ID332に対応する。接続先駅内箇所ID344は、通路の終点である駅内箇所の識別子を示し、駅内箇所ID332に対応する。
標準所要時間345は、通路ID342が示す通路において、接続元駅内箇所ID343の駅内箇所から接続先駅内箇所ID344の駅内箇所まで利用者101が移動するために必要な時間を示す。
マスタデータ123は、例えば、駅及び路線に変更があった場合等、内容に変更があった場合に移動需要予測システム108の外部から追加及び更新が行われる。
図4は、本実施例の計画ダイヤ124を示す説明図である。
図4は、データサーバ111内に格納される計画ダイヤ124を格納するためのデータ構造を示す。計画ダイヤ124は、ダイヤID401、路線ID402、到着時刻404及び出発時刻405を含む。ダイヤID401は、ダイヤの識別子を示す。本実施例において、一つの列車の1回の運用に一つのダイヤの識別子が割り当てられる。
路線ID402は、路線の識別子を示し、路線ID311に対応する。停車駅403は、列車が停車する駅を示す。図4に示す停車駅403は駅の名称を示し、駅名302に対応するが、本実施例の停車駅403は駅の識別子を示してもよく、駅ID301に対応してもよい。
到着時刻404は、停車駅403の駅に到着する予定時刻を示し、出発時刻405は、停車駅403の駅を出発する予定時刻を示す。駅内箇所ID406は、列車が到着する駅内箇所を示し、例えば、1番線ホームを示す識別子を含む。
計画ダイヤ124は、例えば、到着時刻404及び出発時刻405に変更があった場合等、内容に変更があった場合に移動需要予測システム108の外部から追加及び更新が行われる。
図5は、本実施例のグローバルODデータ125を示す説明図である。
図5は、データサーバ111内に格納されるグローバルODデータ125を格納するためのデータ構造を示す。グローバルODデータ125は、ログID501、ユーザID502、乗車駅ID503、入場日時504、降車駅ID505、及び、出場日時506を含む。
ログID501は、グローバルODデータ125のエントリの識別子を示す。ユーザID502は、利用者101の識別子を示す。乗車駅ID503は、利用者101が列車に乗車した駅を示し、駅ID301に対応する。入場日時504は、利用者101が入場した日及び時刻を示す。
降車駅ID505は、利用者101が列車から降車した駅を示し、駅ID301に対応する。出場日時506は、利用者101が出場した日及び時刻を示す。グローバルODデータ125のエントリ(グローバルODデータ)は、入出場ログ122等を用いて生成される。
図6は、本実施例の経路付きグローバルODデータ141を示す説明図である。
図6は、計算サーバ112内のデータ格納部140に格納される経路付きグローバルODデータ141を格納するためのデータ構造を示す。経路付きグローバルODデータ141は、乗車駅と降車駅との間を利用者101が移動した経路を示す。
経路付きグローバルODデータ141は、ログID601、ユーザID602、利用路線ID1(603)、乗車駅ID1(604)、乗車日時1(605)、降車駅ID1(606)、降車日時1(607)、利用路線ID2(608)、乗車駅ID2(609)、乗車日時2(610)、降車駅ID2(611)、及び、降車日時2(612)などの情報を含む。
ログID601は、経路付きグローバルODデータ141のエントリの識別子を示し、ログID501に対応する。ユーザID602は、利用者101の識別子を示す。利用路線ID1(603)は、利用者101が最初に乗車した列車の路線を示し、路線ID321に対応する。乗車駅ID1(604)は、利用者101が最初に列車に乗車した駅を示し、駅ID301に対応する。
乗車日時1(605)は、利用者101が最初に列車に乗車した時刻を示す。降車駅ID1(606)は、利用者101が列車を最初に降車した駅を示す。降車日時1(607)は、利用者101が列車を最初に降車した日及び時刻を示す。
利用路線ID2(608)は、利用者101が2番目に乗車した列車の路線を示し、路線ID321に対応する。乗車駅ID2(609)は、利用者101が2番目に列車に乗車した駅を示し、駅ID301に対応する。
乗車日時2(610)は、利用者101が2番目に列車に乗車した時刻を示す。降車駅ID2(611)は、利用者101が2番目に最初に降車した駅を示す。降車日時2(612)は、利用者101が列車を2番目に降車した日及び時刻を示す。
なお、利用者が列車を乗り継がない場合、利用路線ID2(608)以降の領域は、null値等を格納する。また、利用者が三つ以上の列車に乗る場合、経路付きグローバルODデータ141は、3番目以降の乗車及び降車を示す情報を含んでもよい。
経路付きグローバルODデータ141は、グローバルODデータ125等を用いて生成されるデータである。前述では計算サーバ112内のデータ格納部140が、経路付きグローバルODデータ141を格納するとしたが、データサーバ111が格納してもよい。
図7は、本実施例の経路付きローカルODデータ142を示す説明図である。
図7は、計算サーバ112内のデータ格納部140に格納される経路付きローカルODデータ142を格納するためのデータ構造を示す。経路付きローカルODデータ142は、利用者101が駅内の複数の箇所を移動した経路を示す。
経路付きローカルODデータ142は、ログID701、ユーザID702、経由駅内箇所ID1(703)、利用時刻1(704)、経由駅内箇所ID2(705)、利用時刻2(706)、経由駅内箇所ID3(707)及び利用時刻3(708)を含む。
ログID701は、経路付きローカルODデータ142のエントリの識別子を示す。ユーザID702は、利用者101の識別子を示す。経由駅内箇所ID1(703)は、利用者101が駅内で最初に通過した駅内箇所を示す。利用時刻1(704)は、経由駅内箇所ID1(703)の駅内箇所を利用者101が通過した日及び時刻を示す。
経由駅内箇所ID2(705)は、利用者101が駅内で2番目に通過した駅内箇所を示す。利用時刻2(706)は、利用者101が経由駅内箇所ID2(705)の駅内箇所を通過した日及び時刻を示す。
経由駅内箇所ID3(707)は、利用者101が駅内で3番目に通過した駅内箇所を示す。利用時刻3(708)は、利用者101が経由駅内箇所ID3(707)の駅内箇所を通過した日及び時刻を示す。
なお、経路付きローカルODデータ142は、利用者101が通過する駅内箇所の数に従って、通過する駅内箇所に関する情報を有し、4番目以降に通過した駅内箇所に関する情報を含んでもよい。
経路付きローカルODデータ142は、経路付きグローバルODデータ141等を用いて生成されるデータである。前述では計算サーバ112内のデータ格納部140が、経路付きローカルODデータ142を格納するとしたが、データサーバ111が格納してもよい。
図8は、本実施例のローカル移動需要データ126を示す説明図である。
図8は、データサーバ111に格納されるローカル移動需要データ126を格納するためのデータ構造を示す。ローカル移動需要データ126は、駅内の通路ごとに、移動する利用者101の数を示す。ローカル移動需要データ126は、駅ID801と、日時802と、通路ID803と、人数804とを含む。
駅ID801は、駅の識別子を示し、駅ID301に対応する。日時802は、移動需要を予測する対象の期間を示す。図8に示す日時802は、日及び時間帯を示すが、例えば、曜日及び時間帯を示してもよく、いかなる方法によって期間を示してもよい。
通路ID803は、通路の識別子を示し、通路ID342に対応する。人数804は、日時802の期間において、通路ID803を通過する利用者101の数の予測値を示す。
ローカル移動需要データ126は、経路付きローカルODデータ142等を用いて生成される。
図9は、本実施例のローカル移動需要を予測する処理を示すフローチャートである。
まず、グローバルOD生成プログラム134が、入出場ログ122に基づいてグローバルODデータ125を生成する(ステップ900)。そして、利用経路推定プログラム135は、グローバルODデータ125に基づいて、経路付きグローバルODデータ141を生成し、データ格納部140に格納する(ステップ1000)。
そして、経路付きローカルOD推定プログラム136は、経路付きグローバルODデータ141に基づいて、複数の駅内箇所を利用者101が移動した経路を推定し、さらに、ローカル移動需要推定プログラム137は、駅内を移動した利用者101の人数を示すローカル移動需要を、複数の駅内箇所間(通路)ごとに推定する(ステップ1050)。
具体的には、経路付きローカルOD推定プログラム136は、ステップ1050において、推定した経路を示す経路付きローカルODデータ142を生成し、データ格納部140に格納する(ステップ1100)。そして、ローカル移動需要推定プログラム137は、経路付きローカルODデータ142に基づいて、駅内の通路ごとのローカル移動需要を推定し、推定結果を示すローカル移動需要データ126をデータ格納部121に格納する(ステップ1200)。
そして、ローカル移動需要予測プログラム138は、利用者流動データ127を用いて予測モデルを生成し、さらに、予測モデル最適化プログラム139は、生成された予測モデルを、ローカル移動需要データ126を用いて最適化する。そして、ローカル移動需要予測プログラム138は、最適化された予測モデルによって、任意の期間(将来を含む)におけるローカル移動需要を予測する(ステップ1400)。ここで、ローカル移動需要予測プログラム138は、予測結果を表示画面生成プログラム154に出力してもよい。
図10は、本実施例のグローバルOD生成プログラム134の処理を示すフローチャートである。
グローバルOD生成プログラム134は、図10に示す通り、入出場ログ122からグローバルODデータ125を生成し、さらに、生成したグローバルODデータ125をデータサーバ111に格納する。ここでは、グローバルOD生成プログラム134は、毎日決められた時刻に1回、バッチ処理によってグローバルODデータ125をデータサーバ111へ格納する。図10の処理は、図9に示すステップ900である。
まず、グローバルOD生成プログラム134は、新しく格納された入出場ログ122に含まれるユーザID202と利用時刻205とを参照し、入出場ログ122をユーザID202順および利用時刻205順に並びかえる(ステップ901)。
ステップ901において並びかえたデータに、ユーザIDの数だけ、以下の同じ処理を繰り返す(ステップ902)。
まず、乗車駅ID503、入場日時504、降車駅ID505、及び、出場日時506に対応するリスト型変数を初期化する(ステップ903)。そして、並び替えられた入出場ログ122から一つのユーザID(以下の説明においてユーザIDa)のエントリを取得する。
次に、利用時刻205順に並んだ入出場ログ122に、以下の同じ処理を繰り返す(ステップ904)。
まず、取得したユーザIDaのエントリを利用時刻205の早い順に取得し、取得したエントリの入出場ログ122の利用種別206が入場か出場かを判定する(ステップ905)。利用種別206が入場である場合、ステップ906を実行し、利用種別206が出場である場合、ステップ907を実行する。
利用種別206の値が入場である場合、グローバルODデータ125の乗車駅ID503及び入場日時504に対応する変数に、入出場ログ122の駅ID203及び利用時刻205を格納する(ステップ906)。これによって、グローバルODデータ125に、乗車に関する情報(乗車情報)を格納できる。
ステップ906の後、ユーザIDaのエントリの中で、ステップ905を実行していないエントリであり、かつ、時刻の最も早いエントリを取得し、ステップ905を実行する。
取得したエントリの利用種別206が出場である場合、かつ、乗車駅ID503に対応する変数に既に駅IDが格納されている場合、降車駅ID505及び出場日時506に対応する変数に、駅ID203及び利用時刻205の値を格納する(ステップ907)。これによって、グローバルODデータ125に、降車に関する情報(降車情報)を格納できる。
ステップ907が終了しても、ユーザIDaのエントリの中でステップ905を実行していないエントリ(以下、残エントリと記載)が残っている場合、以下の処理を行ってもよい。
具体的には、残エントリの利用種別206が「入場」であり、かつ、前回のステップ907において変数に格納した利用時刻205と、残エントリの利用時刻205との間が所定の時間t以内である場合(すなわち、ユーザIDaが出場した後、所定の時間t以内に再び入場した場合)、移動が継続されているとみなす。
そして、残エントリよりも利用時刻205が後の利用種別206が出場であるユーザIDaのエントリの駅ID203及び利用時刻205を、降車駅ID505及び出場日時506の変数に格納してもよい。また、利用経路推定プログラム135は、このときに得られた経由駅の情報(残エントリの駅ID203及び利用時刻205)を、後述する処理において用いてもよい。
ユーザIDaのエントリに対する繰り返し処理が終了した後、乗車駅ID503、入場日時504、降車駅ID505、及び、出場日時506に対応する変数に値がセットされていた場合、変数の値を、グローバルODデータ125の追加されたエントリに格納する(ステップ908)。ここで、グローバルOD生成プログラム134は、変数の値と対応づけて、ユーザIDaをユーザID502に格納し、ログID501に一意な識別子を格納する。
なお、グローバルOD生成プログラム134は、取得した入出場ログ122の一部が欠けており、グローバルODデータ125を生成した際に乗車情報及び降車情報のいずれか一方に値が格納されていないエントリが発生した場合、あらかじめ保持する代表的なグローバルODデータ及びその利用人数などの情報、並びに、平均的な移動時間の情報等を用いて、欠けており、取得されていない情報を補完してもよい。
例えば、グローバルOD生成プログラム134は、過去に生成されたグローバルODデータ125を用いて、入場駅及び出場駅の組み合わせと、その組み合わせの過去の利用人数とを求めることにより、任意の二つの駅の組み合わせが入場駅及び出場駅として利用された頻度を示す駅情報を生成する。また、この駅情報は、あらかじめ移動需要予測システム108の外部から、ネットワーク117等を介して入力されてもよい。
そして、グローバルOD生成プログラム134は、グローバルODデータ125のエントリに含まれる(すなわち、取得された駅の情報である)乗車駅ID503又は降車駅ID505を含む組み合わせであり、かつ、過去の利用人数(利用頻度)が最も多い組み合わせを、前述の駅情報から特定する。
そして、特定した組み合わせに従って、取得されていない駅の情報(乗車駅ID503又は降車駅ID505)を割り当て、特定した組み合わせの平均的な移動時間に基づいて、取得されていない日時の情報(入場日時504又は出場日時506)に日時を割り当てる。これによって、欠損した情報を補完する。
これによって、例えば、鉄道事業者が異なる駅が存在する場合など、すべての駅から入出場ログ122を取得できない場合にも、取得できた入出場ログ122を最大限に有効に利用してグローバルODデータ125を生成できる。
ステップ901において取得したエントリに、ステップ904以降の処理を実行していないエントリがある場合、グローバルOD生成プログラム134は、ステップ903に戻る。
図11は、本実施例の利用経路推定プログラム135の処理を示すフローチャートである。
利用経路推定プログラム135は、図11に示す処理のとおり、グローバルODデータ125が含む各エントリについて、利用者が移動の際に経由した駅とその経由を含めた移動のために利用した路線とを推定し、経路付きグローバルODデータ141を生成する。利用経路推定プログラム135は、グローバルODデータ125のエントリの数だけ、ステップ1002〜1004を繰り返す(ステップ1001)。
まず、利用経路推定プログラム135は、グローバルODデータ125から、ステップ1002〜1004を実行していないエントリ(以下、エントリb)を取得する。そして、経路を探索するための探索方法を選択する(ステップ1002)。
そして、選択した探索方法を用いて、エントリbの乗車駅ID503が示す駅から降車駅ID505が示す駅へ至る経路(乗車する路線)を推定する(ステップ1003)。ここで、利用経路推定プログラム135は、必要に応じて、マスタデータ123及び計画ダイヤ124の情報を用いる。
探索方法は、例えば、駅をノード、駅間を結ぶ線路をエッジと定め、駅間の重みを所要時間、乗換回数、又は、料金と定め、ダイクストラ法のようなアルゴリズムを用いて最短経路問題を解く方法であってもよい。なお、利用経路推定プログラム135は、駅間の接続関係を示すトポロジ情報をあらかじめ保持する。
最短経路問題の解法については公知の技術を利用可能であるため、詳細の説明を省略する。なお、駅間の重みに料金を用いる場合、駅−路線関係マスタ320は、料金に関する項目を有してもよい。
また、グローバルOD生成プログラム134が、前述の図10に示す処理において経由駅の情報を得た場合、利用経路推定プログラム135は、この経由駅の情報を経路の経由地点の情報として用いる探索方法を、ステップ1002において選択してもよい。
経路の探索方法は、前述の最短経路問題を解く方法に限定されるものではなく、例えば、代表的な利用経路が格納された経路マスタファイルを用いて、乗車情報と降車情報との組み合わせに経路を割り当てるなど他の方法であってもよい。
そして、利用経路推定プログラム135は、経路を推定した後、入場日時504と推定した経路と駅−路線関係マスタ320と駅内箇所マスタ330と駅内通路マスタ340と計画ダイヤ124とを用いて、読み取り装置103を通過し入場した後、最初に列車に乗車した乗車日時(乗車日時1(605))を推定する。
具体的には、出発時刻405が入場日時504以後であり、路線ID402が、推定した経路が示す最初に乗車する路線である計画ダイヤ124のエントリを一つ特定し、特定したエントリの駅内箇所ID406を特定する。一方で、特定した駅内箇所ID406と、改札ID507との間の所要時間を標準所要時間345に基づいて特定し、特定した所要時間を入場日時504に加算する。そして、特定したエントリの出発時刻405が加算結果の直後を示す場合、特定したエントリの出発時刻405を乗車日時1(605)の値に推定する。
また、最初に列車に乗車した乗車日時と計画ダイヤ124と推定した経路とに基づいて、最初に乗車した列車を降車する降車日時(降車日時1(607))を推定する。そして、推定した経路が二番目に列車に乗車することを示す場合、最初の降車日時及び推定した経路と計画ダイヤ124と駅内通路マスタ340等とを用いて、二番目の乗車日時(乗車日時2(609))を推定する。このように、推定した経路に従った乗車日時と降車日時とを推定する。
利用経路推定プログラム135は、推定された経路に従って、経路付きグローバルODデータ141の利用路線ID1(603)、乗車駅ID1(604)、乗車日時1(605)、降車駅ID1(606)、及び、降車日時1(607)等に値を格納する。なお、ログID601、及び、ユーザID602は、グローバルODデータ125のエントリbのログID501、及び、ユーザID502の値を格納する。
これによって、グローバルODデータ125のエントリbに対して推定した経路情報を含む経路付きグローバルODデータ141を生成し、データ格納部140に格納する(ステップ1004)。
ステップ1004の後、ステップ1002〜1004を実行していないエントリがグローバルODデータ125に含まれる場合、ステップ1002に戻る。
図12は、本実施例の経路付きローカルOD推定プログラム136の処理を示すフローチャートである。
経路付きローカルOD推定プログラム136は、図12に示す処理に従って、経路付きグローバルODデータ141から、特定の施設内における経路付きローカルODデータ142を生成する。
まずローカル移動需要を推定する対象の駅を選択する(ステップ1101)。以下において、選択された駅を対象駅と記載し、対象駅の駅IDを対象駅IDと記載する。
そして、対象駅を利用するログを経路付きグローバルODデータ141から抽出する。具体的には、対象駅IDをいずれかの項目(例えば、乗車駅ID1(604)、降車駅ID2(611)等)に含むエントリを、経路付きグローバルODデータ141から抽出する。そして、抽出されたエントリのユーザID602が示す利用者の数だけ、ステップ1103〜1105の処理を繰り返す(ステップ1102)。
ステップ1102を実行する際に、ステップ1102において抽出したエントリから、ステップ1102以降の処理を実行していないユーザID(以下、ユーザIDc)のエントリを取得する。
そして、取得した経路付きグローバルODデータ141のエントリに基づいて、ユーザIDcの利用者101の対象駅における出発地及び到着地を決定する(ステップ1103)。例えば、取得したエントリの乗車駅ID1(604)に対象駅IDが含まれる場合(すなわち、最初の乗車駅が対象駅である場合)、ユーザIDcの改札ID507(グローバルODデータ125においてログID501が同じエントリから取得)を出発地に決定し、乗車する利用路線ID1(603)のホーム(路線ID402が同じエントリの駅内箇所ID406から取得)を到着地に決定する。
また、例えば、対象駅が一つ目の乗換駅である場合(すなわち、エントリに乗車駅IDが二つ以上含まれており、対象駅が二つ目の乗車駅である場合)、路線ID402が利用路線ID1(603)を示し、停車駅403が降車駅ID1(606)を示し、到着時刻404が降車日時1(607)を示す計画ダイヤ124のエントリを特定する。そして、特定したエントリの駅内箇所ID406を、対象駅における出発地に決定する。
そして、路線ID402が利用路線ID2(608)を示し、停車駅403が乗車駅ID2(609)を示し、出発時刻405が乗車日時2(610)を示す計画ダイヤ124のエントリを特定する。そして、特定したエントリの駅内箇所ID406を、対象駅における出発地に決定する。
なお、降車駅ID1(606)及び乗車駅ID2(608)が異なり、対象駅がいずれか一方である場合においても、前述と同じ処理を行ってもよい。この場合、駅内箇所マスタ330は、降車駅ID1(606)から乗車駅ID2(608)へ乗り換えるために通過する改札機、コンコース及び通路等の箇所を示すエントリを有する。そして、経路付きローカルOD推定プログラム136は、降車駅ID1(606)から乗車駅ID2(608)へ乗り換えるための箇所を、対象駅において通過する駅内箇所に決定してもよい。
経路付きローカルOD推定プログラム136は、経路付きグローバルODデータ141のユーザIDcのエントリの中で、対象駅IDが最後の降車駅IDとして含まれている場合、前述と同様に利用路線IDと降車駅IDと降車日時とに基づいて計画ダイヤ124のエントリを特定する。
そして、特定したエントリの駅内箇所ID406を出発地に決定する。そして、ログID601と同じログID501のグローバルODデータ125の改札ID508を、対象駅の到着地に決定する。
そして、経路付きローカルOD推定プログラム136は、対象駅内の出発地から到着地に至る経路を推定する(ステップ1104)。
経路付きローカルOD推定プログラム136は、例えば、対象駅の駅内箇所をノードとし、駅内箇所同士をつなぐ通路をエッジとして定め、さらに、駅内箇所間の重みを移動所要時間、又は、混雑度に定め、ダイクストラ法のようなアルゴリズムを用いた最短経路問題を解くことによって経路を推定する。なお、経路付きローカルOD推定プログラム136は、対象駅の駅内箇所が接続されるトポロジを示す情報をあらかじめ保持する。
最短経路問題の解法については公知の技術を利用可能であるため、詳細の説明は省略する。ただし、本実施例では経路の推定方法として、最短経路問題を解く方法以外のいずれの方法を用いてもよく、例えば、利用経路のマスタファイルを利用するなど他の方法を用いてもよい。
移動需要予測システム108は、前述の処理において対象駅内の経路を推定することによって、利用者101が移動した通路が明確になり、さらに後述する処理によって、駅内の通路ごとに移動する利用者の数を推定することができる。
さらに、経路付きローカルOD推定プログラム136は、経路を推定した後、グローバルODデータ125の入場日時504及び出場日時506、経路付きグローバルODデータ141の乗車日時及び降車日時、並びに、駅内通路マスタ340の標準所要時間345等を用いて、駅内箇所を通過した時刻を利用時刻として求める。
例えば、対象駅内の経路として、出発地が1番線ホーム中央階段であり、経由駅内箇所が中央コンコースであり、到着地が4番線ホーム中央階段である経路を推定された場合、経路付きローカルOD推定プログラム136は、出発地の降車日時に、1番線ホーム中央階段と中央コンコースとの間の標準所要時間345を加算し、中央コンコースの利用時刻を求める。
前述の方法により推定した駅内の経路及び利用時刻を、経路付きローカルODデータ142に格納する(ステップ1105)。例えば、推定した経路に含まれる駅内箇所のIDを経由駅内箇所ID1(703)に格納し、対応する利用時刻を利用時刻1(704)に格納する。そして、ユーザID702にユーザIDcを格納し、ログID701に、経路付きローカルODデータ142において一意な識別子を格納する。
ステップ1105の後、経路付きローカルOD推定プログラム136は、ステップ1102において抽出したエントリから、ステップ1102以降の処理を実行していないユーザIDのエントリを取得し、ステップ1103を繰り返す。すべてのユーザにステップ1103〜1105を実行した後、図12に示す処理を終了する。
図13は、本実施例のローカル移動需要推定プログラム137の処理を示すフローチャートである。
ローカル移動需要推定プログラム137は、図13に示す処理に従って、経路付きローカルODデータ142に基づくローカル移動需要を推定する。
まず、ローカル移動需要を推定する駅(以下、対象駅)を選択する(ステップ1201)。対象駅内の通行可能な通路の数だけ、ステップ1203及び1204の処理を繰り返す(ステップ1202)。ステップ1202において、駅内通路マスタ340の対象駅のエントリから、ステップ1204の処理を実行していない通路ID(以下、通路IDd)を選択する。
また、所定の時間帯(1時間ごとなど)の数だけステップ1204を繰り返す(ステップ1203)。ステップ1203において、あらかじめ定められていた複数の時間帯から、ステップ1204以降の処理を実行していない時間帯(時間帯e)を選択する。
経路付きローカルODデータ142の経由駅内箇所ID(703、705、707)及び利用時刻(704、706、708)と、駅内通路マスタ340の通路ID342、接続元駅内箇所ID343及び接続先駅内箇所ID344とを参照することにより、時間帯eにおいて通路IDdを利用した通路利用者の合計数を求める(1204)。
ステップ1204の後、ステップ1202及び1203を繰り返すことにより、あらかじめ指定されたすべての時間帯の、対象駅におけるすべての通路について、通路利用者の合計数を求める。
そして、ローカル移動需要データ126の新たなエントリにおいて、駅ID801に対象駅IDを格納し、日時802に時間帯(時間帯e)を格納し、通路ID803に通路ID(通路IDd)を格納し、人数804に求めた合計数を格納する(ステップ1205)。これによって、ローカル移動需要推定プログラム137は、ローカル移動需要データ126を生成し、データサーバ111のデータ格納部121に格納する。
図14は、本実施例のグローバルODデータ125、経路付きグローバルODデータ141、経路付きローカルODデータ142、及び、ローカル移動需要データ126の例を示す説明図である。
まず、グローバルODデータ1330は、グローバルODデータ(1301、1302、1303)を含む。グローバルODデータ(1301、1302、1303)は、鉄道の乗車駅と降車駅と各々の時刻情報とを示し、乗車駅と降車駅との間の経路を示さない。例えば、グローバルODデータ1301は、駅6(1304)が乗車駅であり、駅1(1305)が降車駅であり、各々を利用した時刻についての情報を含むが、駅6(1304)と駅1(1305)との間で用いられた経路を特定する情報を含まない。
なお、グローバルODデータ1302は、駅5(1316)が乗車駅であり、駅9(1317)が降車駅であることを示す。グローバルODデータ1303は、駅3(1314)が乗車駅であり、駅6(1304)が降車駅であることを示す。
しかし、特定の駅内における移動需要を推定するためには、入出場時のみだけでなく乗換で駅が利用される場合を考える必要がある。そこで、利用経路推定プログラム135は、乗車駅及び降車駅間の利用経路を推定し、経路付きグローバルODデータ141を推定する。
経路付きグローバルODデータ1331は、経路付きグローバルODデータ(1313、1315、1318)を含む。経路付きグローバルODデータ(1313、1315、1318)は、乗車駅から降車駅に向かう際に利用した経路の情報として、乗換駅及び利用路線の情報を示す。例えば、経路付きグローバルODデータ1313は、グローバルODデータ1301に対応し、駅6(1311)から駅1(1312)へ向かう乗り換えがない経路を示す。
なお、経路付きグローバルODデータ1315は、駅3(1314)から出発し駅6(1311)へ向かう経路を示す。また、経路付きグローバルODデータ1318は、駅5(1316)から駅3(1314)へ到着し、駅3(1314)で乗り換え、駅9(1317)へ向かう経路を示す。
経路付きグローバルODデータ141は、経路推定の結果得られた、前述のような経路付きグローバルODデータ(1313、1315、1318)の乗車駅、乗換駅、降車駅、利用路線、及び、利用時刻等の情報を含む。
次に、駅3(1314)を対象駅とした場合の、駅内箇所及び駅内の経路を示す経路付きローカルODデータ142を示す。
駅3(1314)は、駅内箇所マスタ330及び駅内通路マスタ340によって定義されるネットワーク構造を含む。経路付きローカルOD推定プログラム136は、経路付きグローバルODデータ1331を用いることによって、駅3(1314)を利用した利用者101を特定することができる。
そして、経路付きローカルOD推定プログラム136は、これらの利用者101について、利用路線の情報、並びに、乗車情報及び降車情報を用いて、駅3(1314)内の出発地及び到着地を求めることができる。
駅3(1314)の利用者101は、経路付きグローバルODデータ1331が示す経路を移動する場合、二通りの経路(1315、1318)を用いて駅内を移動する。
利用者101が経路付きグローバルODデータ1315が示す経路を移動する場合、利用者101の駅3(1314)における出発地は、改札1321である。このことを、経路付きローカルOD推定プログラム136は、経路付きグローバルODデータ141から取得できる。さらに、経路付きローカルOD推定プログラム136は、利用者101が路線3に乗車することを、経路付きグローバルODデータより取得できる。このため、前述の利用者101の駅3(1314)における到着地は、路線3ホーム1322である。
この出発地及び到着地に対して経路を推定した場合、経路付きローカルOD推定プログラム136は、駅3(1314)内の経路1323を推定する。
そして、利用者101が経路付きグローバルODデータ1318が示す経路を移動する場合、利用者101は、駅3(1314)において路線1から路線2へ乗り換える。そして、利用者101は、路線1ホーム1324から路線2ホーム1325へ移動しなくてはいけないため、出発地は路線1ホーム1324であり、到着地は路線2ホーム1325である。
この出発地及び到着地に対して経路を推定した場合、経路付きローカルOD推定プログラム136は、駅3(1314)内の経路1326を推定する。経路付きローカルODデータ142は、このように推定された経路1323及び1326が含む駅内箇所の情報と、その利用時間とを格納した情報を含む。
ローカル移動需要推定プログラム137は、この経路付きローカルODデータ142を用い、対象駅の通路を利用した人数を通路ごと及び時間帯ごとに集計することによって、ローカル移動需要を推定する。
例えば、路線1ホーム1324から階段1332へ向かう通路1333を移動する人数には、前述した経路1326以外の利用者101の数も実際には含まれる。このため、ローカル移動需要推定プログラム137は、路線1ホーム1324から、路線2ホーム1325、路線3ホーム1322、及び、改札1321それぞれに向かう通路を移動する人数を合計して、通路1333を移動する人数を計算する必要がある。
また階段1332から路線1ホーム1324へ向かう人数は、到着地が路線1ホーム1324であるすべての利用者101の人数を合計することによって算出される。このような計算により、通路を移動する人数を求めることができる。
これを時間帯ごとに、駅内のすべての通路に対して行った結果得られる情報がローカル移動需要データ126である。ローカル移動需要推定プログラム137は、これらの実測値に基づく推定の結果得られたローカル移動需要データ126をデータサーバ111に格納し、予測に用いる。
上記推定方法を用いることによって、本実施例の移動需要予測システム108は、ローカル移動需要を測定するための特別な装置を多量に駅内に設置することなく、利用者101のグローバルODデータ125を用いて、駅内のローカル移動需要を精度よく推定することが可能である。
図15は、本実施例の利用者流動データ127を用いてローカル移動需要を予測するローカル移動需要予測プログラム138の処理を示すフローチャートである。
ローカル移動需要予測プログラム138は、予測する必要がある駅(以下、対象駅)を選択する(ステップ1401)。そして、利用者流動データを取得する(ステップ1402)。
利用者流動データとは、駅内で取得された移動方向ごとの利用者101の人数の測定値である。利用者流動データは、データサーバ111にあらかじめ蓄積された過去の利用者流動データであってもよいし、ネットワーク104を介して取得される、直近の利用者流動データであってもよい。
利用者流動データは、例えば、読み取り装置103で取得される入場及び出場の人数、カメラ106によって取得される特定領域内の移動方向ごとの人数、並びに、鉄道車両107に設置された応荷重装置より取得される乗車中の人数の推定値を用いることができる。
利用者流動データは、施設内のすべての通路における利用者101の移動人数である必要はない。
ローカル移動需要予測プログラム138は、駅内のすべての通路について同じ処理を繰り返す(ステップ1403)。具体的には、ステップ1403において、ローカル移動需要予測プログラム138は、駅ID341が対象駅を示す駅内通路マスタ340のエントリの中から、ステップ1404以降の処理を実行していないエントリを取得する。取得したエントリの通路ID342が示す通路を、通路fと記載する。
まず、対象駅の通路fに関する予測モデルを取得する(ステップ1404)。予測モデルとしては線形若しくは非線形の回帰モデル、回帰木、ニューラルネットワーク、又は、サポートベクターマシンなど、いかなる予測モデルを用いてもよい。
例えば、回帰モデルを用いる場合、複数の領域(駅内箇所であっても、駅内箇所以外であってもよい)において時刻tにおいて測定された利用者流動データ(人数)を複数の説明変数に用いることによって、時間t1後の通路fにおける利用者101の人数を示す予測モデルを取得する。
そして、取得した予測モデルに現時刻までの利用者流動データを入力することにより、出力として将来の対象駅の通路fにおけるローカル移動需要の予測値を得る(ステップ1405)。
これらの予測モデルについては公知の方法を用いるため、説明を省略する。また、予測モデルは、前述の方法にかぎらず任意のモデルによって表現されてもよい。
前述における予測モデルは、通路ごとに生成されるものとして説明したが、用いる予測モデルを変更すれば予測モデルが複数の値を出力し、利用者流動データを入力した場合、駅内のすべての経路の移動需要の予測値が出力されるようにすることも可能である。
また、予測する対象駅と、利用者101と、その出発地及び到着地と、経路との方法が指定された場合、ローカル移動需要予測プログラム138は、指定された情報に基づいて、駅内のミクロな人流シミュレーションを行い、より詳細な混雑箇所の特定、及び、移動速度の変化などをシミュレーションしてもよい。
また、予測においては将来のある一つの時間帯の予測値だけを出力するようにしてもよいし、複数の時間帯の予測値を出力する複数の予測モデルを生成してもよい。また、予測を行う際には平日及び休日、又は、平常時及び障害発生時などによって分類し、それぞれの場合について異なる予測モデルを生成し、予測してもよい。
なお、本実施例における障害とは、列車故障、又は、人身事故等により列車の運行(移動手段)が一時停止し、列車の計画ダイヤ124が頻繁に更新される状況などである。
図16は、本実施例の予測モデルの取得処理を示すフローチャートである。
例えば、ローカル移動需要予測プログラム138は、ステップ1404において、取得した利用者流動データが平日に測定されたか、休日に測定されたかを判定する(14041)。そして、平日に測定された利用者流動データである場合、平日用の予測モデルを利用者流動データに基づいて生成し(14042)、休日に測定された利用者流動データである場合、休日用の予測モデルを利用者流動データに基づいて生成する(14043)。
このように、平日又は休日等の条件によって異なる予測モデルを生成することによって、本実施例の移動需要予測システム108は、ローカル移動需要の予測値を得たいユーザのニーズにあわせて精度よくローカル移動需要を予測することができる。また、平日又は休日のように、利用者101の量及び移動方向が明らかに異なる利用者流動データを分割して予測モデルを生成することによって、予測モデルの精度を上げることができる。
なお、予測モデルを用いて高精度な予測を行うためには、予測を行う目的変数と、予測に用いる目的変数とを蓄積し、予測モデルのパラメータを最適化する必要がある。本実施例の移動需要予測システム108は、蓄積した利用者流動データ127と、グローバルODデータ125に基づいて生成したローカル移動需要データ126とを用いることにより、特別な機器を設置することなく、予測モデルのパラメータの最適化を行うことができる。
図17は、本実施例の予測モデル最適化プログラム139の処理を示すフローチャートである。
予測モデル最適化プログラム139は、図17に示す処理に従って、グローバルODデータに基づいて生成された過去のローカル移動需要と、過去の利用者流動データとを用いて、図15の処理によって取得された予測モデルの最適化を行う。
まず、予測モデルを最適化する駅(以下、対象駅)を選択する(ステップ1501)。そして対象駅内の全ての通路に対して同じ処理を繰り返す(ステップ1502)。具体的には、ステップ1502において、予測モデル最適化プログラム139は、駅ID341が対象駅を示す駅内通路マスタ340のエントリの中から、ステップ1503以降の処理を実行していないエントリを取得する。取得したエントリの通路ID342が示す通路を、通路gと記載する。
まず、予測モデル最適化プログラム139は、データサーバ111に蓄積された過去の日時tにおける利用者流動データを取得し(ステップ1503)、さらに、ローカル移動需要予測プログラム138による図15のステップ1404において取得された通路gの予測モデルを用いて、過去の日時tから一定時間後の時刻(t+t1)における通路gのローカル移動需要を予測する(ステップ1504)。
そして、予測モデル最適化プログラム139は、ローカル移動需要推定プログラム137により予め推定し、データサーバ111に格納しておいたローカル移動需要データ126から推定値を取得する(ステップ1505)。より具体的には、時刻(t+t1)の時間帯(日時802)における通路g(通路ID803)の推定値(人数804)を取得する。
そして、取得したローカル移動需要データを、予測モデルを最適化するための教師データ、つまり予測モデルが出力すべき値として用いる。具体的には、ステップ1504において予測モデルにより予測された予測値と、ステップ1505において取得されたローカル移動需要データ126の推定値とを比較する(ステップ1506)。そして、比較の結果の差(誤差)を最小化するように、予測モデルのパラメータを最適化する(ステップ1507)。
グローバルODデータ125に基づくローカル移動需要データ126に基づいて予測モデルを最適化することによって、精度の高い予測モデルを取得することができる。
ステップ1507の後、ステップ1502に戻り、ステップ1503以降の処理を実行していないエントリを取得する。駅ID341が対象駅を示す駅内通路マスタ340のすべてのエントリにステップ1503以降の処理を実行した後、図17に示す処理を終了する。
ローカル移動需要予測プログラム138は、前述のステップ1405において、図17に示す処理によって最適化された予測モデルを用いて、ローカル移動需要を予測する。これにより、精度の高い予測が可能である。
前述のローカル移動需要予測プログラム138は、一つの通路、一つの時間帯の予測値だけを出力するとして説明したが、これに限定するものではない。予測モデル最適化プログラム139は、複数の通路の予測値及び複数の時間帯の予測値が出力される場合についても同様に、予測値と推定値とを比較し、予測値と推定値との誤差が少なくなるようにパラメータを最適化してもよい。
また、平日及び休日、通常時及びイベント時、並びに、正常時及び障害発生時等、所定の条件に該当する期間におけるローカル移動需要を予測する場合、予測モデル最適化プログラム139は、所定の条件の過去の期間において発生したグローバルODデータ125だけを用いて予測モデルを学習してもよい。
例えば、障害発生時の予測モデルのパラメータを最適化するためには、過去の障害発生時のデータだけを用いて、最適化を行ってもよい。この場合、予測モデル最適化プログラム139は、ステップ1505において、図17に示す処理の開始時に所定の障害が発生した期間を取得し、ローカル移動需要データ126の日時802が取得した期間を示すエントリから、ローカル移動需要データ(推定値)を取得する。そして、取得したローカル移動需要データを用いて、予測モデルのパラメータを最適化する。
このように、所定の条件の期間におけるローカル移動需要データ126のみを最適化に用いることによって、移動需要予測システム108は、予測値を得たいユーザのニーズにあわせた予測が可能である。
なお、ここで最適化される予測モデルは、所定の条件の期間(例えば障害時)において測定された利用者流動データ127によって生成された予測モデルであっても、所定の条件の期間以外の期間において測定された利用者流動データ127によって生成された予測モデルであってもよい。
さらに、ローカル移動需要を予測するための予測モデルに用いる変数(例えば、回帰モデルにおける説明変数)が多い場合、予測モデルが複雑化し、最適化に用いるデータにオーバーフィットして予測精度が低下することがある。
そこで、予測モデル最適化プログラム139は、パラメータを最適化する際に学習誤差だけでなく、汎化誤差が最小になるようにパラメータを学習し、さらに、予測に適した変数を選択してもよい。変数の選択方法としてはステップワイズ法、及び、正則化による方法など様々な方法があるが、これらは公知の技術を利用可能であるため、説明を省略する。
このように、本実施例に係る移動需要予測システム108は、利用者101のグローバルODデータ125を用いて、乗車駅から到着駅までの移動経路上の施設におけるローカル移動需要を予測するシステムである。さらに、グローバルODデータ125の出発駅から到着駅に至る移動経路を推定し、経路付きグローバルODデータ141を推定する経路推定部(利用経路推定プログラム135)と、推定された全ユーザの経路付きグローバルODデータ141を利用して特定の駅におけるローカル移動需要を推定する移動需要推定部(経路付きローカルOD推定プログラム136、ローカル移動需要推定プログラム137)と、移動需要推定部が推定したローカル移動需要と取得された利用者流動データとを用いて、所定の時期のローカル移動需要を予測する移動需要予測部(ローカル移動需要予測プログラム138)を有することを特徴とする。
例えば、従来技術では、駅構内の一部のみにカメラを設置して得られる情報のみをも]とに駅構内の各領域における人数を推定する場合、撮影された映像から取得される複数の時刻における人数情報のみを用いて、駅構内の人の分布状況を推定する。この方法を用いた場合、高精度に人の分布状況を推定するためには多数のカメラが必要であり、カメラの台数を減らすと推定精度が低下する。そして、この推定値を蓄積して任意の期間(将来を含む)のローカル移動需要を予測すると、予測の精度も低下する。
しかし、本実施例のように、グローバルODデータ125から推定したローカル移動需要を用いることにより、従来技術のように過去のローカル移動需要を測定するための装置を多数設置する必要がなく、精度のよいローカル移動需要を蓄積することが可能である。
そして、蓄積したローカル移動需要データと利用者流動データとを用いることにより、任意の期間(将来を含む)のローカル移動需要を精度よく予測することが可能となる。
また、特許文献1のように過去の類似するODデータを取得して配分することにより経路の利用人数を求めてローカル移動需要を推定するのではなく、利用者101の入出場情報から経路推定を用いてローカル移動需要情報の推定を行うため、多数の駅に対しても精度よくローカル移動需要を推定することができる。また、予測においては予測モデルを利用者流動データ127を用いて生成することにより、直接ローカル移動需要予測を行うため、特許文献1のように過去の類似するODデータを取得し、それを配分する必要はなく、高精度に予測できる。
また、本実施例を鉄道駅を含む鉄道交通網に適用し、精度のよいローカル移動需要を生成することによって、利用者101の混雑等の対策をたてるための情報を操作者114等に提供することができる。
図18は、本実施例のローカル移動需要の予測結果を表示する画面の例を示す説明図である。
表示画面生成プログラム154は、ローカル移動需要予測プログラム138の予測結果を図18に示す画面1601のように表示する。画面1601は、プルダウンメニュー1602及び棒グラフ1603を含む。
操作者114は、画面1601内のプルダウンメニュー1602により駅を選択することができる。表示画面生成プログラム154は、選択された駅を対象駅として、ローカル移動需要予測プログラム138が実行した図15に示す処理の結果を取得する。そして、取得した結果を、通路(移動方向ごと)ごと、及び、時間帯ごとに棒グラフ1603として表示する。棒グラフ1603は、横軸が日時であり、縦軸が予測された人数である。
また、表示画面生成プログラム154は、すでに現在時刻よりも過去の部分の棒グラフとして、ローカル移動需要推定プログラム137の図13に示す処理によって推定された推定値(ローカル移動需要データ126)を表示してもよい。また、過去の部分の棒グラフとして、図15に示す処理による予測値と、図13に示す処理による推定値とを並行に表示してもよい。
表示画面生成プログラム154が通路ごとにローカル移動需要の予測値を表示することによって、ユーザは通路ごとの利用者101の移動人数の予測値を把握できる。また、さらに時系列に表示することによって、駅内の通路ごとに利用者101の増減を表示することができる。
図19は、本実施例のローカル移動需要の予測結果を表示する画面の別の例を示す説明図である。
表示画面生成プログラム154は、ローカル移動需要予測プログラム138の予測結果を、図19に示す画面1701のように表示してもよい。画面1701は、プルダウンメニュー(1702、1703)、及び、駅構内地図1704を含む。
操作者114は、画面1701内のプルダウンメニュー(1702、1703)により駅及び時間帯を選択できる。選択された駅のローカル移動需要予測結果が、各通路、各時間帯ごと、進行方向ごとに、移動する人数の予測値が画面1701の駅構内地図1704上に矢印1705等を用いて表示される。
表示画面生成プログラム154は、表示する矢印1705の太さを、人数の大きさによって定める。また、複数の通路における人数を、複数の矢印1705を一つの画面に表示するためのデータを生成し、出力する。これによって、利用者101の人数が多い通路を直感的に把握できる画面を表示することができる。
表示画面生成プログラム154は、生成した画面情報を、情報配信プログラム155を用いネットワーク(117、118)を介して、操作者114又は鉄道事業者115に配信する。また、駅構内のミクロな人流シミュレーションを行った場合、矢印ではなく、利用者101一人ひとりを表示し、利用者101全体の人流をアニメーションとして表示することも可能である。
上記実施例では、本発明における移動需要予測を行う対象を鉄道の駅とその利用者101に限定して説明を行った。しかし、本発明は上記実施例に限定されることなく、本発明の趣旨に基づき種々の変形が可能であり、これらを本発明の範囲から排除するものではない。
また、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウエアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク、若しくは、SSD(Solid State Drive)等の記録装置、又は、ICカード、SDカード、若しくは、DVD等の記録媒体に置くことができる。
また、制御線及び情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線及び情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。