(57)【特許請求の範囲】
【請求項１】
車、バス、鉄道、及び徒歩を含む複数の交通手段に対して、複数のノード間を結ぶ複数のリンクで表される、バスネットワーク、鉄道ネットワーク、徒歩ネットワーク、及び道路ネットワークを含む複数のネットワークを表わし、前記複数のネットワークの各々の複数のリンクは乗換ノードを含み、前記複数のネットワークにおける対応する前記乗換ノード間がリンクで結ばれた階層ネットワークデータを記憶したネットワーク記憶手段と、
出発時間又は到着時間、出発地、目的地、及び公共交通の時刻表データを入力として、前記階層ネットワークデータに基づいて、目的地までの経路の各リンクにおける、前記交通手段毎に算出されるリンクコストの合計値を最小にする、目的地までの経路のリンクを表わす経路情報を探索する経路探索手段と、
を含む経路探索装置であって、
前記経路探索手段は、車の利用可否を含む個人属性を更に入力とし、前記個人属性に基づいて車に対するリンクコストを算出して、前記経路情報を探索する経路探索装置。
【請求項２】
前記経路探索手段は、年齢を含む個人属性を更に入力とし、前記個人属性に基づいて徒歩に対するリンクコストを算出して、前記経路情報を探索する請求項１記載の経路探索装置。
【請求項３】
前記経路探索手段は、複数の個人に対する、出発時間又は到着時間、出発地、及び目的地を表わす個人データに基づいて、前記複数の個人に対して前記経路情報を探索し、
前記複数の個人に対する個人データ、及び前記経路探索手段によって探索された前記複数の個人に対する前記経路情報を入力として、前記複数のネットワークにおける、前記複数の個人の各々の挙動を含む交通流を計算する交通流計算手段を更に含む請求項１又は２記載の経路探索装置。
【請求項４】
前記交通流計算手段により計算された前記交通流の各個人の挙動に基づいて、各個人について、目的地までの各リンクのリンク旅行時間、公共交通の混雑度又は待ち時間を含む経験情報を生成する経験情報生成手段と、
各個人について、前記経験情報に基づいて算出される前記リンクコストの合計値に対する、前記経路探索手段によって探索された前記経路情報について算出された前記リンクコストの合計値の差分又は比が、所定値以上である場合、前記経路情報を変更する変更手段とを更に含み、
前記交通流計算手段は、前記変更手段により変更された前記経路情報を更に用いて前記複数のネットワークにおける前記交通流を計算する請求項３記載の経路探索装置。
【請求項５】
前記交通流計算手段により計算された前記交通流の各個人の挙動に基づいて、各個人について、目的地への到着時間を含む経験情報を生成する経験情報生成手段と、
各個人について、前記経験情報の到着時間に対する、前記個人データの到着時間の差分が、所定値以上である場合、前記経路情報又は出発時間を変更する変更手段とを更に含み、
前記交通流計算手段は、前記変更手段により変更された前記経路情報又は前記出発時間を更に用いて前記複数のネットワークにおける前記交通流を計算する請求項３又は４記載の経路探索装置。
【請求項６】
前記変更手段は、前記個人の前記経路情報を、前記経路探索手段によって前記個人に対する前記経験情報を用いて再度探索された前記経路情報に変更する請求項４又は５記載の経路探索装置。
【請求項７】
車、バス、鉄道、及び徒歩を含む複数の交通手段に対して、複数のノード間を結ぶ複数のリンクで表される、バスネットワーク、鉄道ネットワーク、徒歩ネットワーク、及び道路ネットワークを含む複数のネットワークを表わし、前記複数のネットワークの各々の複数のリンクは乗換ノードを含み、前記複数のネットワークの各々の前記乗換ノードがリンクで接続された階層ネットワークデータを記憶したネットワーク記憶手段を含むコンピュータを、
出発時間又は到着時間、出発地、目的地、及び公共交通の時刻表データを入力として、前記階層ネットワークデータに基づいて、目的地までの経路の各リンクにおける、前記交通手段毎に算出されるリンクコストの合計値を最小にする、目的地までの経路のリンクを表わす経路情報を探索する経路探索手段
として機能させるためのプログラムであって、
前記経路探索手段は、車の利用可否を含む個人属性を更に入力とし、前記個人属性に基づいて車に対するリンクコストを算出して、前記経路情報を探索するプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、経路探索装置及びプログラムに係り、特に、交通手段と経路を探索する経路探索装置及びプログラムに関する。
【背景技術】
【０００２】
従来より、歩行と他の機関との組み合わせによる経路探索ナビゲーションシステムが知られている（特許文献１）。このシステムでは、出発地点及び目的地点から交通機関の駅までの直線距離を用いてコストを算出し、そのコストが指定範囲内である全ての利用交通機関駅を求め、歩行経路を含めた総合交通ネットワークを表現し、最小コスト経路を探索している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０００−２５８１８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記の特許文献１に記載の技術では、交通手段が、歩行と公共交通機関の組み合わせに限定されている、という問題がある。
【０００５】
本発明は、上記の問題点を解決するためになされたもので、様々な交通手段の組み合わせを用いたときの経路を探索することができる交通流計算装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記の目的を達成するために第１の発明に係る経路探索装置は、車、バス、鉄道、及び徒歩を含む複数の交通手段に対して、複数のノード間を結ぶ複数のリンクで表される、バスネットワーク、鉄道ネットワーク、徒歩ネットワーク、及び道路ネットワークを含む複数のネットワークを表わし、前記複数のネットワークの各々の複数のリンクは乗換ノードを含み、前記複数のネットワークにおける対応する前記乗換ノード間がリンクで結ばれた階層ネットワークデータを記憶したネットワーク記憶手段と、出発時間又は到着時間、出発地、目的地、及び公共交通の時刻表データを入力として、前記階層ネットワークデータに基づいて、目的地までの経路の各リンクにおける、前記交通手段毎に算出されるリンクコストの合計値を最小にする、目的地までの経路のリンクを表わす経路情報を探索する経路探索手段と、を含んで構成されている。
【０００７】
第２の発明に係るプログラムは、車、バス、鉄道、及び徒歩を含む複数の交通手段に対して、複数のノード間を結ぶ複数のリンクで表される、バスネットワーク、鉄道ネットワーク、徒歩ネットワーク、及び道路ネットワークを含む複数のネットワークを表わし、前記複数のネットワークの各々の複数のリンクは乗換ノードを含み、前記複数のネットワークにおける対応する前記乗換ノード間がリンクで結ばれた階層ネットワークデータを記憶したネットワーク記憶手段を含むコンピュータを、出発時間又は到着時間、出発地、目的地、及び公共交通の時刻表データを入力として、前記階層ネットワークデータに基づいて、目的地までの経路の各リンクにおける、前記交通手段毎に算出されるリンクコストの合計値を最小にする、目的地までの経路のリンクを表わす経路情報を探索する経路探索手段として機能させるためのプログラムである。
【０００８】
第１の発明及び第２の発明によれば、車、バス、鉄道、及び徒歩を含む複数の交通手段に対して、複数のノード間を結ぶ複数のリンクで表される、バスネットワーク、鉄道ネットワーク、徒歩ネットワーク、及び道路ネットワークを含む複数のネットワークを表わし、前記複数のネットワークの各々の複数のリンクは乗換ノードを含み、前記複数のネットワークにおける対応する前記乗換ノード間がリンクで結ばれた階層ネットワークデータを、ネットワーク記憶手段に記憶している。
【０００９】
そして、経路探索手段によって、出発時間又は到着時間、出発地、目的地、及び公共交通の時刻表データを入力として、階層ネットワークデータに基づいて、目的地までの経路の各リンクにおける、交通手段毎に算出されるリンクコストの合計値を最小にする、目的地までの経路のリンクを表わす経路情報を探索する。
【００１０】
このように、対応する乗換ノード間がリンクで結ばれた、複数の交通手段に対する複数のネットワークを表わす階層ネットワークデータを用いて、様々な交通手段の組み合わせを用いたときの経路を探索することができる。
【００１６】
上記の複数の交通手段は、車、バス、鉄道、及び徒歩を含む。このように、交通手段として、車、バス、鉄道、及び徒歩の組み合わせを用いたときの経路を探索することができる。
【００１７】
上記の経路探索手段は、車の利用可否を含む個人属性を更に入力とし、個人属性に基づいて車に対するリンクコストを算出して、経路情報を探索する。これによって、個人属性として車の利用可否を考慮して、様々な交通手段の組み合わせを用いたときの経路を探索することができる。
【００１８】
上記の複数の交通手段は、徒歩を含み、経路探索手段は、年齢を含む個人属性を更に入力とし、個人属性に基づいて徒歩に対するリンクコストを算出して、経路情報を探索するようにすることができる。これによって、年齢に応じた徒歩のコストを考慮して、様々な交通手段の組み合わせを用いたときの経路を探索することができる。
【００１９】
上記の経路探索手段は、複数の個人に対する、出発時間又は到着時間、出発地、及び目的地を表わす個人データに基づいて、複数の個人に対して経路情報を探索し、上記の経路探索装置は、複数の個人に対する個人データ、及び経路探索手段によって探索された複数の個人に対する経路情報を入力として、複数のネットワークにおける、複数の個人の各々の挙動を含む交通流を計算する交通流計算手段を更に含むようにすることができる。
【００２０】
上記の交通流計算手段を含む経路探索装置は、交通流計算手段により計算された交通流の各個人の挙動に基づいて、各個人について、目的地までの各リンクのリンク旅行時間、公共交通の混雑度又は待ち時間を含む経験情報を生成する経験情報生成手段と、各個人について、経験情報に基づいて算出されるリンクコストの合計値に対する、経路探索手段によって探索された経路情報について算出されたリンクコストの合計値の差分又は比が、所定値以上である場合、経路情報を変更する変更手段とを更に含み、交通流計算手段は、変更手段により変更された経路情報を更に用いて複数のネットワークにおける交通流を計算するようにすることができる。
【００２１】
上記の交通流計算手段を含む経路探索装置は、交通流計算手段により計算された交通流の各個人の挙動に基づいて、各個人について、目的地への到着時間を含む経験情報を生成する経験情報生成手段と、各個人について、経験情報の到着時間に対する、個人データの到着時間の差分が、所定値以上である場合、経路情報又は出発時間を変更する変更手段とを更に含み、交通流計算手段は、変更手段により変更された経路情報又は出発時間を更に用いて複数のネットワークにおける交通流を計算するようにすることができる。
【００２２】
上記の変更手段は、個人の経路情報を、経路探索手段によって個人に対する経験情報を用いて再度探索された経路情報に変更するようにすることができる。
【発明の効果】
【００２３】
以上説明したように、本発明の経路探索装置及びプログラムによれば、対応する乗換ノード間がリンクで結ばれた、複数の交通手段に対する複数のネットワークを表わす階層ネットワークデータを用いて、様々な交通手段の組み合わせを用いたときの経路を探索することができる、という効果が得られる。
【図面の簡単な説明】
【００２４】
【図１】本発明の第１の実施の形態に係る交通流計算装置を示すブロック図である。
【図２】個人データの例を示す図である。
【図３】多階層ネットワークデータの例を示す図である。
【図４】時間帯別のリンク旅行時間の例を示す図である。
【図５】時間帯別の混雑率の例を示す図である。
【図６】時間帯別の待ち時間の例を示す図である。
【図７】ネットワークの例を示す図である。
【図８】時間帯別の実際のリンクコストの例を示す図である。
【図９】ネットワークの例における初期経路を示す図である。
【図１０】ネットワークの例における変更後の経路を示す図である。
【図１１】本発明の第１の実施の形態に係る交通流計算装置におけるシミュレーション処理ルーチンの内容を示すフローチャートである。
【図１２】本発明の第１の実施の形態に係る交通流計算装置における手段・経路同時探索処理ルーチンの内容を示すフローチャートである。
【図１３】本発明の第１の実施の形態に係る交通流計算装置における手段・経路変更判断処理ルーチンの内容を示すフローチャートである。
【図１４】本発明の第２の実施の形態に係る交通流計算装置を示すブロック図である。
【図１５】個人データの例を示す図である。
【図１６】本発明の第１の実施の形態に係る交通流計算装置における手段・経路同時探索処理ルーチンの内容を示すフローチャートである。
【図１７】本発明の第１の実施の形態に係る交通流計算装置における手段・経路変更判断処理ルーチンの内容を示すフローチャートである。
【発明を実施するための形態】
【００２５】
以下、図面を参照して、本発明の好適な実施の形態について説明する。なお、本発明に係る実施の形態では、交通流をシミュレーションする交通流計算装置に、本発明を適用した場合について説明する。
【００２６】
図１に示すように、第１の実施の形態に係る交通流計算装置１０は、ＣＰＵ、ＲＯＭ、ＲＡＭ、ＨＤＤを備えたコンピュータで構成され、各個人について作成された個人データを記憶する個人データ記憶部１２と、後述する階層ネットワークデータを記憶するネットワークデータ記憶部１４と、鉄道やバスなどの公共交通の時刻表データを記憶する時刻表データ記憶部１６と、各個人について、交通手段と経路とを同時に探索する手段経路探索部１８と、探索された交通手段と経路との組み合わせを表わす経路データを記憶する経路データ記憶部２０と、交通流をシミュレートする交通流シミュレーション部２２と、を備えている。
【００２７】
個人データ記憶部１２は、各個人について、図２に示すように、個人ＩＤ、出発時間、発生ノード（出発地）、集中ノード（目的地）、個人属性（年齢、免許保有、車保有）、発生ノードから集中ノードまでの経路を識別する経路ＩＤより構成される個人データを記憶している。ここで、免許保有及び車保有の各々については、保有していれば、１とし、保有していなければ、０としている。
【００２８】
ネットワークデータ記憶部１４は、図３に示すように、たとえば、車、鉄道、徒歩、及びバスを含む複数の交通手段に対して、複数のノード間を結ぶ複数のリンクで表される、道路ネットワーク、バスネットワーク、鉄道ネットワーク、及び徒歩ネットワークを階層化した多階層ネットワークデータを記憶している。
【００２９】
各階層のネットワークのリンクには、手段変更の基点となる乗換ノードが含まれ、複数の階層で対応する乗換ノード間が乗換リンクで結ばれて、各階層のネットワークが接続されている。
【００３０】
交通手段ごとに階層化されているため、同じ地点を表すノードでも階層が異なる場合、異なるノードとして定義される。例えば、図３のＳＴ１とＮ１は地図上では同じ地点であるが、ＳＴ１は鉄道駅を、Ｎ１は鉄道駅前の道路の端末ノードを表している。発生ノード及び集中ノードについては、同じ地点を表わす全ての階層のノードを表わしている。
【００３１】
全てのネットワークをノードとリンクで表現するため、探索時にどの階層のネットワークにいるのかは関係なく経路探索ができる。また、ノードＩＤによって、ネットワークの階層が識別可能であるため、経路探索の結果として得られた、目的地までの経路のリンクを表わすノードＩＤの列から、どの交通手段を用いたか、どこで乗換をしたかを判別することができる。
【００３２】
道路ネットワークは、交差点又は道路の端末をノード、交差点間又は道路の端末と交差点との間の接続をリンクとするように構成されたネットワークである。鉄道ネットワークは、鉄道駅をノード、鉄道駅間の接続をリンクとするように構成されたネットワークである。徒歩ネットワークは、徒歩ノード間の接続をリンクとするように構成されたネットワークである。
【００３３】
バスネットワークについては、経路探索用のネットワークと交通流計算用のネットワークとを別々に用意する。これは、バスが道路ネットワーク上を走り他の自動車交通と干渉する車という側面と、規定されたルートのみを通り、バス停で停止するという軌道交通に似た側面を持つ特殊な車両であるためである。従って、経路探索用のバスネットワークとして、バス停をノード、バス停間の接続をリンクとするように構成されたネットワークを用意する。
【００３４】
交通流計算用のバスネットワークは、道路ネットワーク上に示され、かつ、バス停をノード、バス停間の接続をリンクとするように構成されたネットワークである。また、交通流計算によって得られた各リンクコストは、経路探索用のバスネットワークのリンクに反映されることになる。なお、上記図３の例では、交通流計算用のバスネットワークを示している。
【００３５】
なお、バスネットワークは、公共交通ネットワークの一例であり、鉄道ネットワークは、公共交通ネットワーク、軌道交通ネットワークの一例である。
【００３６】
また、ネットワークデータ記憶部１４は、信号の有無・現示などを表わす信号データ、交通環境データ（各リンクのリンク長、道路種別、ガソリン代、通行料金）、及び公共交通データ（例えば、鉄道やバスの利用料金）を更に記憶している。
【００３７】
時刻表データ記憶部１６には、バス及び鉄道の時刻表データを記憶しており、鉄道の時刻表データは、鉄道ネットワークの各ノードの到着時間を表わし、バスの時刻表データは、バスネットワークの各ノードの到着時間を表わす。
【００３８】
手段経路探索部１８は、多階層ネットワークデータを用いて、各個人について経路探索を行う。具体的には、ダイクストラ法を用いて目的地（集中ノード）までの経路における各リンクのリンクコストの合計値が最小となる経路を探索する。リンクコストは以下の（１）式により求められる。
【００３９】
【数１】
0005668380.tif 000002
【００４０】
ただし、Ｃはリンクコスト、Ｔはリンク旅行時間、Ｌはリンク長、Ｒｋは道路種別、Ｆは料金（通行料金、利用料金、ガソリン代）を表わす。また、Ｊは混雑率、Ｓは待ち時間、Ｅは疲労、ｅは年齢、Ｎｗはネットワークの階層を表わす。また、Ｈは、免許か車が無い場合、十分大きな数を返す関数であり、ｗ０〜ｗ６は、予め定められた重み係数である。
【００４１】
経路探索時には、各リンクに対して、ネットワークの階層に依らず、リンク旅行時間、リンク長、道路種別、料金、混雑率、及び待ち時間の情報が与えられる。ただし、道路ネットワークでは、リンク旅行時間、リンク長、道路種別、及び料金の情報以外については、各リンクに０が与えられる。また、バスネットワーク及び鉄道ネットワークでは、リンク旅行時間、リンク長、料金、及び混雑率以外の情報については、各リンクに０が与えられる。また、徒歩ネットワークでは、リンク旅行時間及びリンク長以外の情報については、各リンクに０が与えられる。また、乗換リンクでは、待ち時間以外の情報について、０が与えられる。
【００４２】
各個人は、経験した経路に含まれるリンク以外のリンクに関してはリンク旅行時間を知りえないはずであるため、初期経路探索時や、後述する時間帯別のコストデータが得られない場合には、各リンクのリンク旅行時間として、リンク長をある指定した速度（道路ネットワークであれば、たとえば３０ｋｍ／ｈ）で割ったものが与えられる。徒歩ネットワークの場合は、リンク長とその個人の属性に応じた速度より算出されるリンク旅行時間が、リンクに与えられる。
【００４３】
また、初期経路探索時や、後述する時間帯別のコストデータが得られない場合には、鉄道やバスの混雑状況、待ち時間は分からないので、各リンクの混雑率及び待ち時間として、予め定められた仮の値が与えられる。
【００４４】
また、各リンクのリンク長、道路種別、料金として、ネットワークデータ記憶部１４に記憶された交通環境データや公共交通データから得られる値が与えられる。
【００４５】
個人データからは、個人の属性として、発生ノード（出発地）、集中ノード（目的地）、年齢、免許の有無、及び車の有無の情報が、経路探索時の入力データとなる。
【００４６】
また、手段経路探索部１８は、上述した種々の情報と自身が持つ重み係数を使って、上記（１）式に従ってリンクコストを計算する。このとき、疲労を表す関数Ｅ（・）は、年齢とリンク旅行時間とネットワーク階層との関数となっている。従って、リンク旅行時間が同じであっても、徒歩ネットワークを移動するときの方が、他の階層のネットワークを移動するときよりも疲労が大きくなる。さらに、座位より立位の方が、疲労度が大きいことを考慮すると、疲労の計算に混雑率を考慮しても良い。このとき、乗車人員が座席定員より少なければ座位、座席定員より多ければ立位となるように決めることができる。関数Ｈは、車利用不可かつネットワークの階層が道路ネットワークであるときにのみ、十分大きな数を返す関数である。すなわち、以下の（２）式で表される。
【００４７】
【数２】
0005668380.tif 000003
【００４８】
ただし、ＬＮは、予め定められた十分大きな数である。δｌ，ｃは、車利用可否関数であり、免許保有ありかつ車保有ありのときのみ１、それ以外は０を返す関数である。Ｎｗは、ネットワーク階層を表わし、道路ネットワークであれば、ｒｏａｄである。
【００４９】
各々のリンクコストに対してダイクストラ法を用いることで、目的地までの経路のリンクを表わす経路データ（ノードＩＤの列）が、例えば、（１）Ｇ１→Ｎ２→Ｎ６→Ｎ８→Ｎ９→Ｎ１２→Ｇ２、（２）Ｇ１→Ｗ２→Ｗ１→ＳＴ１→ＳＴ２→ＳＴ３→Ｗ６→Ｗ７→Ｇ２、（３）Ｇ１→Ｗ２→Ｗ３→ＢＳ１→ＢＳ２→Ｗ５→Ｗ７→Ｇ２のように求められる。これらの経路データについて、（１）であれば、交通手段を車のみとした複数のノードＩＤの列を表わし、（２）であれば、交通手段を徒歩→鉄道→徒歩と乗り換えた、複数のノードＩＤの列を表わし、（３）であれば、交通手段を、徒歩→バス→徒歩と乗り換えた、複数のノードＩＤの列を表わす。この方法を用いることで、パークアンドライドなどの交通手段も容易に表現できる。例えば、（４）Ｇ１→Ｎ２→Ｎ４→Ｎ３→Ｎ１→ＳＴ１→ＳＴ２→ＳＴ３→Ｗ６→Ｗ７→Ｇ２という経路が探索された場合、交通手段は車→鉄道→徒歩となる。
【００５０】
手段経路探索部１８は、各個人について、探索した経路データを経路データ記憶部２０に記憶すると共に、記憶した経路データの経路ＩＤを、当該個人の個人データに登録する。また、手段経路探索部１８は、各個人について、探索された経路データについて算出されたリンクコストの合計値（合計値の最小値）を基準コストＣ０としてメモリに記憶しておく。
【００５１】
交通流シミュレーション部２２は、個人データ記憶部１２に記憶された各個人の個人データと、経路データ記憶部２０に記憶された各個人の経路データと、ネットワークデータ記憶部１４に記憶された多階層ネットワークデータ及び信号データと、時刻表データ記憶部１６に記憶された時刻表データとに基づいて、起点（発生ノード）から終点（集中ノード）まで、時間の経過に伴う各階層のネットワーク上の、各個人の挙動を含む交通流を、１秒毎に計算し、所定時間分（例えば、１日の所定時間帯の時間分）になるまで繰り返し計算する。また、交通流シミュレーション部２２は、所定時間分について、計算された各個人の挙動に基づいて、各個人のリンク旅行時間、公共交通の混雑率、及び公共交通の待ち時間を算出する。
【００５２】
シミュレーションモデルは、出発時間によってソートされた個人を順番に発生させ、スキャニングインターバル（＝１秒）ごとに、車両、人（徒歩）、鉄道、バスを移動させる交通流モデルで構成される。交通流モデルは、時刻表データに基づいて、バスや鉄道を、対応する階層のネットワーク上で移動させると共に、各個人の経路データに従って、各車両を道路ネットワークデータ上で移動させ、人を、鉄道ネットワーク、バスネットワーク、徒歩ネットワーク上で移動させ、各個人が経験した、各リンクの旅行時間を計算し出力する。
【００５３】
また、交通流計算装置１０は、更に、交通流シミュレーション部２２によって計算された交通流に基づいて、各個人の経験情報を生成すると共に、時間帯別のコストデータを算出する経験情報生成部２４と、時間帯別のコストデータを記憶するコストデータ記憶部２６と、経験情報に基づいて、経路データを変更するか否かを判断する変更判断部２８と、を備えている。
【００５４】
経験情報生成部２４は、交通流シミュレーション部２２によって出力された、各個人のリンク旅行時間、公共交通の混雑率、及び公共交通の待ち時間を収集し、各個人について、経路上の各リンク旅行時間、各リンクのバス又は鉄道の混雑率、及び各乗換リンクのバス又は鉄道の待ち時間を含む経験情報を生成する。
【００５５】
また、経験情報生成部２４は、全ての個人の経験情報に基づいて、時間帯別の各リンクの平均旅行時間（図４参照）、平均混雑率（図５参照）、及び平均待ち時間（図６参照）を表わす時間帯別コストデータを生成して、コストデータ記憶部２６に格納する。
【００５６】
上記図４〜図６の例ではネットワーク種別を明示しているが、リンクＩＤが一意に決まっていれば、ネットワーク種別を明示する必要はない。また、時間帯幅は任意に決められるようにする。平均混雑率は、公共交通のネットワークデータのみに関係するコストであるため、上記図５に示すように、公共交通のネットワークデータ以外を０としてもよいし、そもそも公共交通ネットワークデータのみを、コストデータとして出力するようにしてもよい。
【００５７】
また、平均待ち時間は、乗換リンクのみに関係するコストであるため、上記図６に示すように、乗換リンク以外を０としてもよいし、そもそも乗換リンクのみの平均待ち時間を、コストデータとして出力するようにしてもよい。
【００５８】
また、経験情報生成部２４は、各個人について、図７に示すように、生成した経験情報を用いて、上記（１）式に従って、実際のリンクコストを算出し、図８に示すように、時間帯別の各リンクのリンクコストとして、コストデータ記憶部２６に格納する。
【００５９】
変更判断部２８は、各個人について、メモリに記憶された基準コストと、実際のリンクコストの合計値とを比較して、当該個人の経路データを変更するか否かを判断する。
【００６０】
ここで、繰り返し計算によって得られるｎ回目の交通流計算（対象個人の一番新しい探索からの繰り返し回数）によって得られる実際のリンクコストの合計値をＣｎとすると、経路データが変更される条件は、以下のように定義される。
【００６１】
１．実コストＣｎと基準コストＣ０の比率が閾値Ｔｈｌを超えた場合
【００６２】
【数３】
0005668380.tif 000004
【００６３】
２．同一経路をｄ日連続使用していて、かつそのコスト比率の平均値が閾値Ｔｈ２を超えた場合
【００６４】
【数４】
0005668380.tif 000005
【００６５】
ただし、Ｔｈ２＜Ｔｈ１である。上記の１又は２の条件を満たした場合、当該個人の経験情報を考慮して再探索された経路データに、経路データを変更するように判断する。
【００６６】
上記のように経路データを変更すると判断された場合、対象の個人について、手段経路探索部１８によって、以下のように、経路データを再探索する。
【００６７】
まず、コストデータ記憶部２６に記憶された、時間帯別の各リンクの平均旅行時間、平均混雑率、平均待ち時間を表わす時間帯別のコストデータと、当該個人の経験情報とを用いて、新しい経路データを探索する。すなわち、時間帯別のコストデータの内容に優先して、経験情報に含まれるリンクのリンク旅行時間、混雑率、待ち時間を用いて、リンクコストを算出し、経路探索を行なう。
【００６８】
ここで、図９に示すネットワークにおける経路データが変更される例について説明する。上記図９におけるＮ１〜Ｎ５はノードを示す。また、図には示していないが２つのノード間を結ぶリンクを、ノードの起点と終点の番号からＬ１２（Ｎ１→Ｎ２のリンク）のように表記することにする。上記図９において各リンクの横に記されている数字はリンクコストを表している。ここでは、簡単のために所要時間や混雑率などのリンクコストを構成する要素は考えないことにする。
【００６９】
上記図９は、交通流計算をする前の初期のリンクコスト（経路探索時に算出されたリンクコスト）を示している。このネットワークにおいてリンクコストの合計値を最小にする経路を探索すると、Ｌ１２→Ｌ２３→Ｌ３４を通る経路が探索され、またそのときの基準コストＣ０は１０である。
【００７０】
次に、交通流計算をすると、リンクを通過した経験情報から、各リンクの実際のリンクコストが求められる。
【００７１】
ある個人Ａの実コストＣ１に対する基準コストＣ０の比が閾値を超えており、経路データを変更すると判断されたとする。このとき、個人Ａの経験情報から、Ｌ１２、Ｌ２３、Ｌ３４のリンク旅行時間、混雑率、待ち時間が、交通流計算によって出力された時間帯別コストデータの値に置き換わる。経験情報を反映した新しいリンクコストを図１０に示した。このリンクコストを用いて、リンクコストを最小とする経路を探索すると、Ｌ１５→Ｌ５４の新しい経路が探索され、探索された経路に変更される。
【００７２】
次に、第１の実施の形態に係る交通流計算装置１０の動作について説明する。
【００７３】
オペレータによって、シミュレーションの開始指示が入力されると、交通流計算装置１０において、図１１に示すシミュレーション処理ルーチンが実行される。
【００７４】
まず、ステップ１００において、個人データ記憶部１２に記憶された各個人の個人データと、ネットワークデータ記憶部１４に記憶された多階層ネットワークデータと、時刻表データ記憶部１６に記憶された時刻表データとを読み込む。
【００７５】
そして、ステップ１０２において、各個人について、目的地までの交通手段及び経路を表わす経路データを探索し、探索された経路データを経路データ記憶部２０に格納する。次のステップ１０４では、個人データ記憶部１２に記憶された各個人の個人データと、経路データ記憶部２０に記憶された各個人の経路データと、ネットワークデータ記憶部１４に記憶された多階層ネットワークデータ及び信号データと、時刻表データ記憶部１６に記憶された時刻表データとに基づいて、１日の所定時間帯の交通流を計算する。
【００７６】
そして、ステップ１０６において、上記ステップ１０４で計算された交通流における各個人の挙動に基づいて、各個人について、目的地までの各リンクのリンク旅行時間、混雑率、待ち時間を含む経験情報を生成する。
【００７７】
次のステップ１０８では、各個人について、上記ステップ１０６で生成された当該個人の経験情報に基づいて、目的地までの各リンクの実際のリンクコストを算出して、コストデータ記憶部２６に記憶する。
【００７８】
そして、ステップ１１０において、上記ステップ１０６で生成された全ての個人の経験情報に基づいて、時間帯別の各リンクの平均リンク旅行時間、混雑率、及び待ち時間の平均値を算出して、コストデータ記憶部２６に記憶されている時間帯別のコストデータを更新する。
【００７９】
そして、ステップ１１２において、上記ステップ１０８で算出された実際のリンクコストに基づいて、各個人について、経路データを変更するか否かを判断する。次のステップ１１４では、繰り返しの終了条件を満たしたか否かを判定し、終了条件を満たしていない場合には、上記ステップ１０２へ戻って、次の日の交通流を計算するが、一方、終了条件を満たした場合には、シミュレーション処理ルーチンを終了する。ここで、終了条件は、繰り返し回数として設定してもよいし、経路変更者の割合が閾値以下になった場合等の条件として設定しても良い。以下では、繰り返し回数ｒが閾値以上となったことを終了条件とし、全体として均衡状態となったときに終了する場合を例に説明する。
【００８０】
上記のシミュレーション処理ルーチンにより、交通流の計算と、手段・経路の変更判断及び手段・経路の同時探索とを繰り返し行うことによって、各個人の経路データがある値に収束し、全体として均衡が起こる交通状況が再現される。
【００８１】
上記ステップ１０２は、図１２に示す手段・経路同時探索処理ルーチンによって実現される。
【００８２】
ステップ１２０では、処理対象の個人を決定し、ステップ１２２において、初期経路の探索であるか否かを判定する。初期経路の探索である場合には、ステップ１２６へ移行するが、一方、２回目以降の経路探索である場合には、ステップ１２４において、処理対象の個人について、上記ステップ１１２において経路データを変更すると判断されたか否かを判定する。経路データを変更すると判断されていた場合には、ステップ１２６へ移行するが、一方、経路データを変更すると判断されていなかった場合には、後述するステップ１３４へ移行する。
【００８３】
ステップ１２６では、経路変更せずに処理を繰り返した回数を示す変数ｒを０に設定する。そして、ステップ１２８において、処理対象の個人について、個人データと、時間帯別のコストデータと、多階層ネットワークデータとに基づいて、目的地までの交通手段及び経路を同時に探索する。なお、対象の個人について、経路データを変更するように判断されていた場合には、記憶された経験情報を、時間帯別のコストデータより優先して用いて、目的地までの交通手段及び経路を同時に探索する。
【００８４】
次のステップ１３０では、上記ステップ１２８で探索された経路について算出されたリンクコストの合計値を、基準コストとしてメモリに記憶させる。そして、ステップ１３２において、上記ステップ１２８で探索された経路データを、処理対象の個人の経路データとして、経路データ記憶部２０に記憶させる。
【００８５】
ステップ１３４では、変数ｒをインクリメントし、ステップ１３６において、全ての個人について、上記ステップ１２０〜ステップ１３４の処理を終了したか否かを判定し、全ての個人について終了したと判定された場合には、手段・経路同時探索処理ルーチンを終了する。一方、上記ステップ１２０〜ステップ１３４の処理が終了していない個人が存在する場合には、ステップ１２０へ戻り、当該個人を、処理対象の個人として設定する。
【００８６】
また、上記ステップ１１２は、図１３に示す手段・経路変更判断処理ルーチンによって実現される。
【００８７】
ステップ１４０において、処理対象の個人を決定し、ステップ１４２で、処理対象の個人について、実際のリンクコストの合計値から実コストを算出し、上記（３）式に従って、実コストに対する基準コストの比率が閾値以上であるか否かを判定する。コストの比率が閾値以上である場合には、後述するステップ１４６へ移行するが、一方、コストの比率が閾値未満である場合には、ステップ１４４において、上記（４）式に従って、ｄ日分の実コストに対する基準コストの比率の平均値が閾値以上であるか否かを判定する。コストの比率の平均値が閾値以上である場合には、ステップ１４６へ移行するが、一方、コストの比率の平均値が閾値未満である場合には、後述するステップ１５０へ移行する。
【００８８】
ステップ１４６では、処理対象の個人について、判断結果として、経路データを変更することを設定し、ステップ１４８において、処理対象の個人について上記ステップ１０６で生成された経験情報を、経路探索のためにコストデータ記憶部２６に記憶させる。
【００８９】
ステップ１５０では、全ての個人について、上記ステップ１４０〜ステップ１４８の処理を終了したか否かを判定し、全ての個人について終了したと判定された場合には、手段・経路変更判断処理ルーチンを終了する。一方、上記ステップ１４０〜ステップ１４８の処理が終了していない個人が存在する場合には、ステップ１４０へ戻り、当該個人を、処理対象の個人として設定する。
【００９０】
以上説明したように、第１の実施の形態に係る交通流計算装置によれば、対応する乗換ノード間が乗換リンクで結ばれた、複数の交通手段に対する複数のネットワークを表わす多階層ネットワークデータを用いて、リンクコストによる経路探索を行なうことにより、車、バス、鉄道、及び徒歩という交通手段の組み合わせを用いたときの経路を探索することができる。
【００９１】
また、交通流計算の結果を個人にフィードバックするために交通流計算の出力結果（旅行時間や交通機関の混雑率など）を経験情報として蓄積できる。そのため、目的地までの経路コストが大きくなったために交通手段や経路を変更する、といった行動の変化を扱うことができる。
【００９２】
また、交通流計算と交通手段・経路の変更判断とを繰り返し行うことで、各個人の交通手段・経路がある値に収束し、また全体として均衡状態となった交通状況を再現することができる。
【００９３】
また、最小コスト経路を探索した結果として、交通手段が含まれているので、交通手段の組み合わせを限定しておらず、交通手段の様々な組み合わせが、経路と共に同時に探索される。
【００９４】
また、車両一台一台を発生させ、時間毎の挙動を計算する機能を有しているため、時間毎のリンク旅行時間の表現が可能であり、また、時間毎の公共交通の待ち時間、混雑率、移動主体の疲労度などを算出することができる。また、コストを用いた手段・経路の同時探索機能を有しているので、選択行動も模擬できる。
【００９５】
次に、第２の実施の形態について説明する。なお、第１の実施の形態と同様の構成となる部分については、同一符号を付して説明を省略する。
【００９６】
第２の実施の形態では、個人データの到着時間に基づいて、経路探索を行なっている点が、第１の実施の形態と異なっている。
【００９７】
図１４に示すように、第２の実施の形態に係る交通流計算装置２１０は、個人データ記憶部１２と、ネットワークデータ記憶部１４と、時刻表データ記憶部１６と、手段経路探索部１８と、経路データ記憶部２０と、探索された経路データに基づいて、出発時間を決定する出発時間決定部２１２と、交通流シミュレーション部２２と、経験情報生成部２４と、コストデータ記憶部２６と、到着時間データを記憶する到着時間データ記憶部２１４と、変更判断部２８と、を備えている。
【００９８】
個人データ記憶部１２は、各個人について、図１５に示すように、個人ＩＤ、到着時間、出発時間、発生ノード（出発地）、集中ノード（目的地）、個人属性（年齢、免許保有、車保有）、及び経路ＩＤより構成される個人データを記憶している。出発時間については、予め与えられないが、到着時間については、予め与えられている。
【００９９】
手段経路探索部１８は、各個人について、目的地のノードから逆に出発地のノードまで辿るようにして、上記第１の実施の形態と同様の手法により、交通手段及び経路を同時に探索する。また、経路探索では、到着時間から時間を逆算しながら、時間帯別のコストデータを参照して、リンクコストを算出する。
【０１００】
出発時間決定部２１２は、各個人について、探索された経路データに基づいて、到着時間から、出発時間を逆算して、出発時間を決定し、当該個人の個人データに、決定された出発時間を登録する。
【０１０１】
経験情報生成部２４は、各個人について、計算された交通流の各個人の挙動に基づいて、目的地（集中ノード）の到着時間を取得し、各個人について到着時間を記録した到着時間データを、到着時間データ記憶部２１４に記憶させる。
【０１０２】
変更判断部２８は、上記（３）式、（４）式の条件に基づいて、各個人について、経路データの変更を行うか否かを判断する。また、変更判断部２８は、個人データの到着時間と到着時間データの到着時間とから算出される遅れ時間が、閾値以上である場合に、出発時間を、遅れ時間分だけ早くするように変更する。
【０１０３】
次に、第２の実施の形態に係る手段・経路探索処理ルーチンについて、図１６を用いて説明する。なお、第１の実施の形態と同様の処理については、同一符号を付して詳細な説明を省略する。
【０１０４】
ステップ１２０では、処理対象の個人を決定し、ステップ１２２において、初期経路の探索であるか否かを判定し、初期経路の探索である場合には、ステップ１２６へ移行するが、一方、２回目以降の経路探索である場合には、ステップ１２４において、処理対象の個人について、上記ステップ１２２において経路データを変更すると判断されたか否かを判定する。経路データを変更すると判断されていた場合には、ステップ１２６へ移行するが、一方、経路データを変更すると判断されていなかった場合には、ステップ１３４へ移行する。
【０１０５】
ステップ１２６では、変数ｒを０に設定し、ステップ１２８において、処理対象の個人について、個人データと、時間帯別のコストデータと、多階層ネットワークデータとに基づいて、目的地までの交通手段及び経路を同時に探索して、経路データを求める
次のステップ１３０では、上記ステップ１２８で探索された経路について算出されたリンクコストの合計値を、基準コストとしてメモリに記憶させる。そして、ステップ２５０において、上記ステップ１２８で探索された経路データと、処理対象の個人の個人データの到着時間とに基づいて、出発時間を逆算し、個人データ記憶部１２の個人データに、出発時間を記憶させる。
【０１０６】
そして、ステップ１３２において、上記ステップ１２８で探索された経路データを、経路データ記憶部２０に記憶させる。
【０１０７】
ステップ１３４では、変数ｒをインクリメントし、ステップ１３６において、全ての個人について、上記ステップ１２０〜ステップ１３４の処理を終了したか否かを判定し、全ての個人について終了したと判定された場合には、手段・経路同時探索処理ルーチンを終了する。
【０１０８】
また、第２の実施の形態に係る手段・経路変更判断処理ルーチンについて図１７を用いて説明する。
【０１０９】
ステップ１４０において、処理対象の個人を決定し、ステップ１４２で、実コストに対する基準コストの比率が閾値以上であるか否かを判定する。コストの比率が閾値以上である場合には、ステップ１４６へ移行するが、一方、コストの比率が閾値未満である場合には、ステップ１４４において、ｄ日分の実コストに対する基準コストの比率の平均値が閾値以上であるか否かを判定する。コストの比率の平均値が閾値以上である場合には、ステップ１４６へ移行するが、一方、コストの比率の平均値が閾値未満である場合には、ステップ２６０へ移行する。
【０１１０】
ステップ２６０では、交通流の計算に基づいて生成された到着時間データに基づいて、処理対象の個人について、個人データの到着時間に対する、交通流の計算結果における到着時間の遅れ時間が、閾値以上であるか否かを判定する。遅れ時間が閾値未満である場合には、ステップ１５０へ移行するが、一方、遅れ時間が閾値以上である場合には、ステップ２６２において、処理対象の個人の個人データの出発時間を、遅れ時間分だけ早めるように変更して、ステップ１５０へ移行する。
【０１１１】
ステップ１４６では、処理対象の個人について、判断結果として、経路データを変更することを設定し、ステップ１４８において、処理対象の個人について上記ステップ１０６で生成された経験情報を、経路探索のためにコストデータ記憶部２６に記憶させる。
【０１１２】
ステップ１５０では、全ての個人について、上記ステップ１４０〜１４８、２６０、２６２の処理を終了したか否かを判定し、全ての個人について終了したと判定された場合には、手段・経路変更判断処理ルーチンを終了する。一方、上記ステップステップ１４０〜１４８、２６０、２６２の処理が終了していない個人が存在する場合には、ステップ１４０へ戻り、当該個人を、処理対象の個人として設定する。
【０１１３】
なお、第２の実施の形態に係る交通流計算装置の他の構成及び作用は、第１の実施の形態と同様であるため、説明を省略する。
【０１１４】
以上説明したように、第２の実施の形態に係る交通流計算装置によれば、交通流計算で求められた旅行時間や公共交通機関の混雑率などの経験情報を用いて、出発時間を再計算することによって、出発時間の変更を表現することができる。
【０１１５】
また、交通流計算の結果を個人にフィードバックするために交通流計算の出力結果を経験情報として蓄積できる。そのため、個人が予定する到着時間に大幅に遅れたために、出発時間を変更する、といった行動の変化を扱うことができる。
【０１１６】
なお、上記の実施の形態では、到着時間の遅れ時間が閾値以上であった場合に、出発時間を変更する場合を例に説明したが、これに限定されるものではなく、到着時間の遅れ時間が閾値以上であった場合に、経験情報を用いて、経路を再探索するようにしてもよい。また、出発時間を変更すると共に、経路を再探索するようにしてもよい。
【０１１７】
また、上記の第１の実施の形態及び第２の実施の形態では、各個人について、経路データを探索し、経路データに基づいて、交通流を計算する場合を例に説明したが、これに限定されるものではなく、各個人について、経路探索時に経路データの候補を複数作成しておいて、交通流の計算において、出発時に動的に各個人の経路データを選択するようにしてもよい。経路データの候補を複数作成する手法としては、ダイクストラ法により経路コストが最小の経路からｋ番目までの経路を選定する方法を用いればよい。さらに、交通流の計算において、交通状況によって、移動中に経路探索を行い経路変更するようにしてもよい。
【０１１８】
また、実コストと基準コストとの比が、閾値以上であるときに、経路を変更するように判断する場合を例に説明したが、これに限定されるものではなく、実コストと基準コストとの差分が、閾値以上であるときに、経路を変更するように判断してもよい。また、経路を変更すると判断された場合、経験情報を用いずに、時間帯別のコストデータに基づいて、経路データを再探索するようにしてもよい。
【０１１９】
また、複数の交通手段を、車、バス、鉄道、及び徒歩とした場合を例に説明したが、これに限定されるものではなく、車、バス、鉄道、及び徒歩の任意の組み合わせを、複数の交通手段としてもよく、また、他の交通手段を組み合わせてもよい。
【符号の説明】
【０１２０】
１０、２１０  交通流計算装置
１２   個人データ記憶部
１４   ネットワークデータ記憶部
１６   時刻表データ記憶部
１８   手段経路探索部
２０   経路データ記憶部
２２   交通流シミュレーション部
２４   経験情報生成部
２６   コストデータ記憶部
２８   変更判断部
２１２ 出発時間決定部
２１４ 到着時間データ記憶部
【図１】
0005668380.tif 000006
【図２】
0005668380.tif 000007
【図３】
0005668380.tif 000008
【図４】
0005668380.tif 000009
【図５】
0005668380.tif 000010
【図６】
0005668380.tif 000011
【図７】
0005668380.tif 000012
【図８】
0005668380.tif 000013
【図９】
0005668380.tif 000014
【図１０】
0005668380.tif 000015
【図１１】
0005668380.tif 000016
【図１２】
0005668380.tif 000017
【図１３】
0005668380.tif 000018
【図１４】
0005668380.tif 000019
【図１５】
0005668380.tif 000020
【図１６】
0005668380.tif 000021
【図１７】
0005668380.tif 000022