(57)【要約】【課題】  時間的制約を満たし、かつ、ユーザの移動距離を最短とする最適経路を探索する。【解決手段】  ユーザにより入力された複数の目的地点の任意の２地点間の最短経路をＡ*アルゴリズムを用いて探索する２地点経路探索部２１２と、目的地点を訪問順に並べたものを１つの個体として初期個体群を生成する初期個体群生成部２１３ａと、個体に含まれる各目的地点を訪問順に並べ１つの経路を作成し、各個体に含まれる各目的地点の到着予定時刻及び出発予定時刻を算出する予定時刻算出部２１３ｃと、時間的制約が満たされた目的地点を含む個体に対し所定のポイントを付与する評価部２１３ｄと、初期個体群に対し遺伝的アルゴリズムを繰り返し適用し最適経路を探索する個体群生成部２１３ｂとを備える。【選択図】      図３
2005164384.tif 000002
【特許請求の範囲】
【請求項１】
ユーザによって携帯される携帯端末と、当該携帯装置と通信可能に接続されたサーバとを備え、現実の道路上の所定の位置に対応するノードと、現実の道路に応じてノード間を接続するリンクとにより道路網が表された地図データを用いて出発地点からユーザが訪問を希望する目的地点までの経路を探索する経路探索システムであって、
前記携帯端末は、
現在位置を取得する現在位置取得手段と、
複数の目的地点の入力を受け付けるとともに、入力された複数の目的地点のうち、少なくとも１つの目的地点に対する希望到着時刻及び希望滞在時間を含む時間的制約の入力を受け付ける入力受付手段と、
前記現在位置、入力された複数の目的地点及び前記時間的制約を前記サーバに送信する通信手段とを備え、
前記サーバは、
前記地図データを記憶する地図データ記憶手段と、
入力された複数の目的地点の任意の２地点間の経路を所定のアルゴリズムを用いて探索する２地点経路探索手段と、
目的地点を訪問順で並べたものを１つの個体とし、当該個体を複数パターン生成し、初期個体群とする初期個体群生成手段と、
前記２地点経路探索手段によって探索された経路を基に、個体に含まれる各目的地点を訪問順につなぎ１つの経路を作成し、各個体に含まれる各目的地点の到着予定時刻及び出発予定時刻を算出する予定時刻算出手段と、
ある個体において、時間的制約が課された目的地点の到着予定時刻及び出発予定時刻が、当該時間的制約に対して所定の許容範囲内にある場合、当該個体に所定のポイントを加えることで各個体を評価する評価手段と、
前記初期個体群に対し所定のアルゴリズムを適用し、評価の高い個体群を生成する個体群生成手段と、
前記個体群生成手段によって得られた個体群から、評価の高い順に抽出した所定個数の個体を最適経路として出力するとともに、抽出した最適経路に含まれる各目的地点に対する到着予定時刻及び出発予定時刻を前記携帯端末に送信する通信手段とを備え、
前記携帯端末は、前記サーバから出力された最適経路及び各目的地点の到着予定時刻及び出発予定時刻を提示する提示手段を備えることを特徴とする経路探索システム。
【請求項２】
複数の観光地点を予め記憶する観光地点記憶手段と、
前記観光地点の任意の２地点間の経路を予め記憶する経路記憶手段とをさらに備え、
前記２地点経路経路探索手段は、目的地点の任意の２地点が前記観光地点記憶手段に記憶されている場合、当該任意の２地点間の最短経路を前記経路記憶手段を参照することで探索することを特徴とする請求項１記載の経路探索システム。
【請求項３】
前記初期個体群生成手段は、前記観光地点記憶手段に記憶された観光地点と、前記入力受け付け手段によって受け付けられた複数の目的地点とから前記初期個体群を生成することを特徴とする請求項２記載の経路探索システム。
【請求項４】
前記個体群生成手段は、ある個体において、時間的制約が課された目的地点での到着予定時刻が、当該目的地点に対して設定された希望到着時刻よりも規定値以上早い時刻である場合、前記観光地点記憶手段から１又は複数の観光地点を読み出し当該個体に追加することを特徴とする請求項２又は３記載の経路探索システム。
【請求項５】
前記入力受付手段は、入力された複数の目的地点のうち、少なくとも１つの目的地点に対し、ユーザの訪問希望の程度を示す希望度の入力を受け付け、
前記評価手段は、時間的制約が課された目的地点の到着予定時刻及び出発予定時刻が、当該時間的制約に対して所定の許容範囲内にある場合、前記希望度に応じたポイントを当該個体に加えることを特徴とする請求項１〜４のいずれかに記載の経路探索システム。
【請求項６】
前記評価手段は、ある個体において、当該個体に含まれる隣接する目的地点間の最短経路距離が小さいほど、当該個体に大きなポイントをさらに付与することを特徴とする請求項１〜５のいずれかに記載の経路探索システム。
【請求項７】
前記評価手段は、ある個体において、当該個体に含まれる隣接する目的地点間の移動時間が短いほど、当該個体に大きなポイントをさらに付与することを特徴とする請求項１〜６のいずれかに記載の経路探索システム。
【請求項８】
探索した最適経路に沿ってユーザが移動しているか否かを判定する判定手段と、
前記判定手段により、ユーザが最適経路に沿って移動していないと判定された場合、判定時におけるユーザの現在位置を前記現在位置特定手段によって特定し、前記最適経路を再び探索する再探索手段とをさらに備えることを特徴とする請求項１〜７のいずれかに記載の経路探索システム。
【請求項９】
前記２地点経路探索手段は、Ａ*アルゴリズムを用いて経路を探索することを特徴とする請求項１〜８のいずれかに記載の経路探索システム。
【請求項１０】
前記個体生成手段は、遺伝的アルゴリズムを繰り返し適用し、評価の高い個体群を得ることを特徴とする請求項１〜８のいずれかに記載の経路探索システム。
【請求項１１】
前記個体生成手段は、一対の個体を交差させることにより、同一の目的地点を複数含む個体を生成した場合、当該目的地点のうち、１つの目的地点のみを残すことを特徴とする請求項１０載の経路探索システム。
【請求項１２】
現在位置を取得する現在位置取得手段と、複数の目的地点の入力を受け付けるとともに、入力された複数の目的地点のうち、少なくとも１つの目的地点に対する希望到着時刻及び希望滞在時間を含む時間的制約の入力を受け付ける入力受付手段と、前記自己の現在位置、入力された複数の目的地点及び前記時間的制約を前記サーバに送信する通信手段とを備える携帯端末から出力された情報を基に、現実の道路上の所定の位置に対応するノードと、現実の道路に応じてノード間を接続するリンクとにより道路網が表された地図データを用いて出発地点からユーザが訪問を希望する目的地点までの経路を探索するサーバであって、
前記地図データを記憶する地図データ記憶手段と、
入力された複数の目的地点の任意の２地点間の経路を所定のアルゴリズムを用いて探索する２地点経路探索手段と、
目的地点を訪問順で並べたものを１つの個体とし、当該個体を複数パターン生成し、初期個体群とする初期個体群生成手段と、
前記２地点経路探索手段によって探索された経路を基に、個体に含まれる各目的地点を訪問順につなぎ１つの経路を作成し、各個体に含まれる各目的地点の到着予定時刻及び出発予定時刻を算出する予定時刻算出手段と、
ある個体において、時間的制約が課された目的地点の到着予定時刻及び出発予定時刻が、当該時間的制約に対して所定の許容範囲内にある場合、当該個体に所定のポイントを加算することで各個体を評価する評価手段と、
前記初期個体群に対し所定のアルゴリズムを適用し、評価の高い個体群を生成する個体群生成手段と、
前記個体群生成手段によって得られた個体群から、評価の高い順に抽出した所定個数の個体を最適経路として出力するとともに、抽出した最適経路に含まれる各目的地点に対する到着予定時刻及び出発予定時刻を前記携帯端末に出力する通信手段とを備えることを特徴とするサーバ。
【請求項１３】
前記地図データを記憶する地図データ記憶手段と、入力された複数の目的地点の任意の２地点間の経路を所定のアルゴリズムを用いて探索する２地点経路探索手段と、目的地点を訪問順で並べたものを１つの個体とし、当該個体を複数パターン生成し、初期個体群とする初期個体群生成手段と、前記２地点経路探索手段によって探索された経路を基に、個体に含まれる各目的地点を訪問順につなぎ１つの経路を作成し、各個体に含まれる各目的地点の到着予定時刻及び出発予定時刻を算出する予定時刻算出手段と、ある個体において、時間的制約が課された目的地点の到着予定時刻及び出発予定時刻が、当該時間的制約に対して所定の許容範囲内にある場合、当該個体に所定のポイントを加算することで各個体を評価する評価手段と、前記初期個体群に対し所定のアルゴリズムを適用し、評価の高い個体群を生成する個体群生成手段と、前記個体群生成手段によって得られた個体群から、評価の高い順に抽出した所定個数の個体を最適経路として出力するとともに、抽出した最適経路に含まれる各目的地点に対する到着予定時刻及び出発予定時刻を前記携帯端末に送信する通信手段とを備えるサーバと通信可能に接続された携帯端末であって、
携帯端末の現在位置を取得する現在位置取得手段と、
複数の目的地点の入力を受け付けるとともに、入力された複数の目的地点のうち、少なくとも１つの目的地点に対する希望到着時刻及び希望滞在時間を含む時間的制約の入力を受け付ける入力受付手段と、
前記自己の現在位置、入力された複数の目的地点及び前記時間的制約を前記サーバに送信する通信手段と、
前記サーバから送信された最適経路及び各目的地点の到着予定時刻及び出発予定時刻をユーザに提示する提示手段とを備えることを特徴とする携帯端末。
【請求項１４】
現実の道路上の所定の位置に対応するノードと、現実の道路に応じてノード間を接続するリンクとにより道路網が表された地図データを記憶する地図データ記憶手段を備え、当該地図データを基に、出発地点からユーザが訪問を希望する目的地点までの経路を探索する経路探索装置であって、
出発地点、出発時刻、複数の目的地点の入力を受け付けるとともに、入力された複数の目的地点のうち、少なくとも１つの目的地点に対する希望到着時刻及び希望滞在時間を含む時間的制約の入力を受け付ける入力受付手段と、
入力された複数の目的地点の任意の２地点間の経路を所定のアルゴリズムを用いて探索する２地点経路探索手段と、
目的地点を訪問順で並べたものを１つの個体とし、当該個体を複数パターン生成し、初期個体群とする初期個体群生成手段と、
前記２地点経路探索手段によって探索された経路を基に、個体に含まれる各目的地点を訪問順につなぎ１つの経路を作成し、各個体に含まれる各目的地点の到着予定時刻及び出発予定時刻を算出する予定時刻算出手段と、
ある個体において、時間的制約が課された目的地点の到着予定時刻及び出発予定時刻が、当該時間的制約に対して所定の許容範囲内にある場合、当該個体に所定のポイントを加算することで各個体を評価する評価手段と、
前記初期個体群に対し所定のアルゴリズムを適用し、評価の高い個体群を生成する個体生成手段と、
前記個体生成手段によって得られた個体群から、評価の高い順に抽出した所定個数の個体に対応する経路を最適経路として出力するとともに、抽出した最適経路に含まれる各目的地点に対する到着予定時刻及び出発予定時刻を提示する提示手段とを備えることを特徴とする経路探索装置。
【請求項１５】
現実の道路上の所定の位置に対応するノードと、現実の道路に応じてノード間を接続するリンクとにより道路網が表された地図データを記憶するコンピュータにより、出発地点からユーザが訪問を希望する目的地点までの経路を探索する経路探索方法であって、
前記コンピュータが、出発地点、出発時刻、複数の目的地点の入力を受け付けるとともに、入力された複数の目的地点のうち、少なくとも１つの目的地点に対する希望到着時刻及び希望滞在時間を含む時間的制約の入力を受け付ける入力受付ステップと、
前記コンピュータが、入力された複数の目的地点の任意の２地点間の経路を所定のアルゴリズムを用いて探索する２地点経路探索ステップと、
前記コンピュータが、目的地点を訪問順で並べたものを１つの個体とし、当該個体を複数パターン生成し、初期個体群とする初期個体群生成ステップと、
前記コンピュータが、前記２地点経路探索ステップによって探索された経路を基に、個体に含まれる各目的地点を訪問順につなぎ１つの経路を作成し、各個体に含まれる各目的地点の到着予定時刻及び出発予定時刻を算出する予定時刻算出ステップと、
前記コンピュータが、ある個体において、時間的制約が課された目的地点の到着予定時刻及び出発予定時刻が、当該時間的制約に対して所定の許容範囲内にある場合、当該個体に所定のポイントを加算することで各個体を評価する評価ステップと、
前記コンピュータが、前記初期個体群に対し所定のアルゴリズムを適用し、評価の高い個体群を生成する個体生成ステップと、
前記コンピュータが、前記個体生成手段によって得られた個体群から、評価の高い順に抽出した所定個数の個体に対応する経路を最適経路として出力するとともに、抽出した最適経路に含まれる各目的地点に対する到着予定時刻及び出発予定時刻を出力する出力ステップとを備えることを特徴とする経路探索方法。
【請求項１６】
現実の道路上の所定の位置に対応するノードと、現実の道路に応じてノード間を接続するリンクとにより道路網が表された地図データを基に、出発地点からユーザが訪問を希望する目的地点までの経路を探索する経路探索プログラムであって、
前記地図データを記憶する地図データ記憶手段と、
出発地点、出発時刻、複数の目的地点の入力を受け付けるするとともに、入力された複数の目的地点のうち、少なくとも１つの目的地点に対する希望到着時刻及び希望滞在時間を含む時間的制約の入力を受け付ける入力受付手段と、
入力された複数の目的地点の任意の２地点間の経路を所定のアルゴリズムを用いて探索する２地点経路探索手段と、
目的地点を訪問順で並べたものを１つの個体とし、当該個体を複数パターン生成し、初期個体群とする初期個体群生成手段と、
前記２地点経路探索手段によって探索された経路を基に、個体に含まれる各目的地点を訪問順につなぎ１つの経路を作成し、各個体に含まれる各目的地点の到着予定時刻及び出発予定時刻を算出する予定時刻算出手段と、
ある個体において、時間的制約が課された目的地点の到着予定時刻及び出発予定時刻が、当該時間的制約に対して所定の許容範囲内にある場合、当該個体に所定のポイントを付与することで各個体を評価する評価手段と、
前記初期個体群に対し所定のアルゴリズムを適用し、評価の高い個体群を生成する個体生成手段と、
前記個体生成手段によって得られた個体群から、評価の高い順に抽出した所定個数の個体に対応する経路を最適経路として出力するとともに、抽出した最適経路に含まれる各目的地点に対する到着予定時刻及び出発予定時刻を出力する出力手段としてコンピュータを機能させることを特徴とする経路探索プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の目的地点を効率よく訪問する経路を探索する技術に関する。
【背景技術】
【０００２】
近年、ＰＤＡなどの携帯端末の高性能化、ＧＰＳユニットの小型化等に伴って、ＧＰＳ機能付の携帯端末を利用したパーソナルナビゲーションシステムが提案されている。カーナビゲーションシステムは、自動車に搭載される車載端末であり、自動車の道路上での移動に特化したものであるが、パーソナルナビゲーションシステムは、移動手段に制約されないシステムである。そして、このようなパーソナルナビゲーションシステムを用いて、観光案内を行なう試みがなされている。この観光案内は、具体的には、「お昼は奈良公園で昼食を食べ、帰りは最終バスの時刻に間に合うように駅に付きたい」という時間的制約の中で、希望する観光名所をできるだけ多く訪問できるというような最適な経路を探索するものである。
【０００３】
一方、複数の目的地点を効率よく訪問できる経路を探索する技術として、遺伝的アルゴリズムを用いるものが知られている（非特許文献１及び２）。
【非特許文献１】狩野：遺伝的アルゴリズムを用いたカーナビのための経路案内方式．情報処理学会研究報告vol.2002，No.21，pp51-58(2002)
【非特許文献２】稲垣，長谷川，北嶋：遺伝的アルゴリズムを用いた複数経由点を伴う経路探索法，電子情報通信学会論文誌D1，vol.J83-D-1，No５，pp504-507(2000)
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、非特許文献１及び２では、訪問を希望する複数の目的地点に対して希望到着時刻及び希望滞在時間等の時間的制約を加味した経路探索が行なわれていないため、上記のような観光案内に適用することができないという問題があった。
【０００５】
本発明は、上記課題を解決するためになされたものであり、時間的制約を満たすような最適経路を探索することができる経路探索システム、サーバ、携帯端末、経路探索装置、経路探索プログラム、経路探索方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明にかかる経路探索システムは、ユーザによって携帯される携帯端末と、当該携帯端末と通信可能に接続されたサーバとを備え、現実の道路上の所定の位置に対応するノードと、現実の道路に応じてノード間を接続するリンクとにより道路網が表された地図データを用いて出発地点からユーザが訪問を希望する目的地点までの経路を探索する経路探索システムであって、前記携帯端末は、現在位置を取得する現在位置取得手段と、複数の目的地点の入力を受け付けるとともに、入力された複数の目的地点のうち、少なくとも１つの目的地点に対する希望到着時刻及び希望滞在時間を含む時間的制約の入力を受け付ける入力受付手段と、前記現在位置、入力された複数の目的地点及び前記時間的制約を前記サーバに送信する通信手段とを備え、前記サーバは、前記地図データを記憶する地図データ記憶手段と、入力された複数の目的地点の任意の２地点間の経路を所定のアルゴリズムを用いて探索する２地点経路探索手段と、目的地点を訪問順で並べたものを１つの個体とし、当該個体を複数パターン生成し、初期個体群とする初期個体群生成手段と、前記２地点経路探索手段によって探索された経路を基に、個体に含まれる各目的地点を訪問順につなぎ１つの経路を作成し、各個体に含まれる各目的地点の到着予定時刻及び出発予定時刻を算出する予定時刻算出手段と、ある個体において、時間的制約が課された目的地点の到着予定時刻及び出発予定時刻が、当該時間的制約に対して所定の許容範囲内にある場合、当該個体に所定のポイントを加えることで各個体を評価する評価手段と、前記初期個体群に対し所定のアルゴリズムを適用し、評価の高い個体群を生成する個体群生成手段と、前記個体群生成手段によって得られた個体群から、評価の高い順に抽出した所定個数の個体を最適経路として出力するとともに、抽出した最適経路に含まれる各目的地点に対する到着予定時刻及び出発予定時刻を前記携帯端末に送信する通信手段とを備え、前記携帯端末は、前記サーバから出力された最適経路及び各目的地点の到着予定時刻及び出発予定時刻を提示する提示手段を備えることを特徴とする（請求項１）。
【０００７】
また、複数の観光地点を予め記憶する観光地点記憶手段と、前記観光地点の任意の２地点間の経路を予め記憶する経路記憶手段とをさらに備え、前記２地点経路経路探索手段は、目的地点の任意の２地点が前記観光地点記憶手段に記憶されている場合、当該任意の２地点間の最短経路を前記経路記憶手段を参照することで探索することが好ましい（請求項２）。
【０００８】
また、前記初期個体群生成手段は、前記観光地点記憶手段に記憶された観光地点と、前記入力受け付け手段によって受け付けられた複数の目的地点とから前記初期個体群を生成することが好ましい（請求項３）。
【０００９】
また、前記個体群生成手段は、ある個体において、時間的制約が課された目的地点での到着予定時刻が、当該目的地点に対して設定された希望到着時刻よりも規定値以上早い時刻である場合、前記観光地点記憶手段から１又は複数の観光地点を読み出し当該個体に追加することが好ましい（請求項４）。
【００１０】
また、前記入力受付手段は、入力された複数の目的地点のうち、少なくとも１つの目的地点に対し、ユーザの訪問希望の程度を示す希望度の入力を受け付け、前記評価手段は、時間的制約が課された目的地点の到着予定時刻及び出発予定時刻が、当該時間的制約に対して所定の許容範囲内にある場合、前記希望度に応じたポイントを当該個体に加えることが好ましい（請求項５）。
【００１１】
また、前記評価手段は、ある個体において、当該個体に含まれる隣接する目的地点間の最短経路距離が小さいほど、当該個体に大きなポイントをさらに付与することが好ましい（請求項６）。
【００１２】
また、前記評価手段は、ある個体において、当該個体に含まれる隣接する目的地点間の移動時間が短いほど、当該個体に大きなポイントをさらに付与することが好ましい（請求項７）。
【００１３】
また、探索した最適経路に沿ってユーザが移動しているか否かを判定する判定手段と、前記判定手段により、ユーザが最適経路に沿って移動していないと判定された場合、判定時におけるユーザの現在位置を前記現在位置特定手段によって特定し、前記最適経路を再び探索する再探索手段とをさらに備えることが好ましい（請求項８）。
【００１４】
また、前記２地点経路探索手段は、Ａ*アルゴリズムを用いて経路を探索することが好ましい（請求項９）。
【００１５】
また、前記個体生成手段は、遺伝的アルゴリズムを繰り返し適用し、評価の高い個体群を得ることが好ましい（請求項１０）。
【００１６】
また、前記個体生成手段は、一対の個体を交差させることにより、同一の目的地点を複数含む個体を生成した場合、当該目的地点のうち、１つの目的地点のみを残すことが好ましい（請求項１１）。
【００１７】
本発明にかかるサーバは、現在位置を取得する現在位置取得手段と、複数の目的地点の入力を受け付けるとともに、入力された複数の目的地点のうち、少なくとも１つの目的地点に対する希望到着時刻及び希望滞在時間を含む時間的制約の入力を受け付ける入力受付手段と、前記自己の現在位置、入力された複数の目的地点及び前記時間的制約を前記サーバに送信する通信手段とを備える携帯端末から出力された情報を基に、現実の道路上の所定の位置に対応するノードと、現実の道路に応じてノード間を接続するリンクとにより道路網が表された地図データを用いて出発地点からユーザが訪問を希望する目的地点までの経路を探索するサーバであって、前記地図データを記憶する地図データ記憶手段と、入力された複数の目的地点の任意の２地点間の経路を所定のアルゴリズムを用いて探索する２地点経路探索手段と、目的地点を訪問順で並べたものを１つの個体とし、当該個体を複数パターン生成し、初期個体群とする初期個体群生成手段と、前記２地点経路探索手段によって探索された経路を基に、個体に含まれる各目的地点を訪問順につなぎ１つの経路を作成し、各個体に含まれる各目的地点の到着予定時刻及び出発予定時刻を算出する予定時刻算出手段と、ある個体において、時間的制約が課された目的地点の到着予定時刻及び出発予定時刻が、当該時間的制約に対して所定の許容範囲内にある場合、当該個体に所定のポイントを加算することで各個体を評価する評価手段と、前記初期個体群に対し所定のアルゴリズムを適用し、評価の高い個体群を生成する個体群生成手段と、前記個体群生成手段によって得られた個体群から、評価の高い順に抽出した所定個数の個体を最適経路として出力するとともに、抽出した最適経路に含まれる各目的地点に対する到着予定時刻及び出発予定時刻を前記携帯端末に出力する通信手段とを備えることを特徴とする（請求項１２）。
【００１８】
本発明にかかる携帯端末は、前記地図データを記憶する地図データ記憶手段と、入力された複数の目的地点の任意の２地点間の経路を所定のアルゴリズムを用いて探索する２地点経路探索手段と、目的地点を訪問順で並べたものを１つの個体とし、当該個体を複数パターン生成し、初期個体群とする初期個体群生成手段と、前記２地点経路探索手段によって探索された経路を基に、個体に含まれる各目的地点を訪問順につなぎ１つの経路を作成し、各個体に含まれる各目的地点の到着予定時刻及び出発予定時刻を算出する予定時刻算出手段と、ある個体において、時間的制約が課された目的地点の到着予定時刻及び出発予定時刻が、当該時間的制約に対して所定の許容範囲内にある場合、当該個体に所定のポイントを加算することで各個体を評価する評価手段と、前記初期個体群に対し所定のアルゴリズムを適用し、評価の高い個体群を生成する個体群生成手段と、前記個体群生成手段によって得られた個体群から、評価の高い順に抽出した所定個数の個体を最適経路として出力するとともに、抽出した最適経路に含まれる各目的地点に対する到着予定時刻及び出発予定時刻を前記携帯端末に送信する通信手段とを備えるサーバと通信可能に接続された携帯端末であって、携帯端末の現在位置を取得する現在位置取得手段と、複数の目的地点の入力を受け付けるとともに、入力された複数の目的地点のうち、少なくとも１つの目的地点に対する希望到着時刻及び希望滞在時間を含む時間的制約の入力を受け付ける入力受付手段と、前記自己の現在位置、入力された複数の目的地点及び前記時間的制約を前記サーバに送信する通信手段と、前記サーバから送信された最適経路及び各目的地点の到着予定時刻及び出発予定時刻をユーザに提示する提示手段とを備えることを特徴とする（請求項１３）。
【００１９】
本発明にかかる経路探索装置は、現実の道路上の所定の位置に対応するノードと、現実の道路に応じてノード間を接続するリンクとにより道路網が表された地図データを記憶する地図データ記憶手段を備え、当該地図データを基に、出発地点からユーザが訪問を希望する目的地点までの経路を探索する経路探索装置であって、出発地点、出発時刻、複数の目的地点の入力を受け付けるとともに、入力された複数の目的地点のうち、少なくとも１つの目的地点に対する希望到着時刻及び希望滞在時間を含む時間的制約の入力を受け付ける入力受付手段と、入力された複数の目的地点の任意の２地点間の経路を所定のアルゴリズムを用いて探索する２地点経路探索手段と、目的地点を訪問順で並べたものを１つの個体とし、当該個体を複数パターン生成し、初期個体群とする初期個体群生成手段と、前記２地点経路探索手段によって探索された経路を基に、個体に含まれる各目的地点を訪問順につなぎ１つの経路を作成し、各個体に含まれる各目的地点の到着予定時刻及び出発予定時刻を算出する予定時刻算出手段と、ある個体において、時間的制約が課された目的地点の到着予定時刻及び出発予定時刻が、当該時間的制約に対して所定の許容範囲内にある場合、当該個体に所定のポイントを加算することで各個体を評価する評価手段と、前記初期個体群に対し所定のアルゴリズムを適用し、評価の高い個体群を生成する個体生成手段と、前記個体生成手段によって得られた個体群から、評価の高い順に抽出した所定個数の個体に対応する経路を最適経路として出力するとともに、抽出した最適経路に含まれる各目的地点に対する到着予定時刻及び出発予定時刻を提示する提示手段とを備えることを特徴とする（請求項１４）。
【００２０】
本発明にかかる経路探索方法は、現実の道路上の所定の位置に対応するノードと、現実の道路に応じてノード間を接続するリンクとにより道路網が表された地図データを記憶するコンピュータにより、出発地点からユーザが訪問を希望する目的地点までの経路を探索する経路探索方法であって、前記コンピュータが、出発地点、出発時刻、複数の目的地点の入力を受け付けるとともに、入力された複数の目的地点のうち、少なくとも１つの目的地点に対する希望到着時刻及び希望滞在時間を含む時間的制約の入力を受け付ける入力受付ステップと、前記コンピュータが、入力された複数の目的地点の任意の２地点間の経路を所定のアルゴリズムを用いて探索する２地点経路探索ステップと、前記コンピュータが、目的地点を訪問順で並べたものを１つの個体とし、当該個体を複数パターン生成し、初期個体群とする初期個体群生成ステップと、前記コンピュータが、前記２地点経路探索ステップによって探索された経路を基に、個体に含まれる各目的地点を訪問順につなぎ１つの経路を作成し、各個体に含まれる各目的地点の到着予定時刻及び出発予定時刻を算出する予定時刻算出ステップと、前記コンピュータが、ある個体において、時間的制約が課された目的地点の到着予定時刻及び出発予定時刻が、当該時間的制約に対して所定の許容範囲内にある場合、当該個体に所定のポイントを加算することで各個体を評価する評価ステップと、前記コンピュータが、前記初期個体群に対し所定のアルゴリズムを適用し、評価の高い個体群を生成する個体生成ステップと、前記コンピュータが、前記個体生成手段によって得られた個体群から、評価の高い順に抽出した所定個数の個体に対応する経路を最適経路として出力するとともに、抽出した最適経路に含まれる各目的地点に対する到着予定時刻及び出発予定時刻を出力する出力ステップとを備えることを特徴とする。（請求項１５）
【００２１】
本発明にかかる経路探索プログラムは、現実の道路上の所定の位置に対応するノードと、現実の道路に応じてノード間を接続するリンクとにより道路網が表された地図データを基に、出発地点からユーザが訪問を希望する目的地点までの経路を探索する経路探索プログラムであって、前記地図データを記憶する地図データ記憶手段と、出発地点、出発時刻、複数の目的地点の入力を受け付けるするとともに、入力された複数の目的地点のうち、少なくとも１つの目的地点に対する希望到着時刻及び希望滞在時間を含む時間的制約の入力を受け付ける入力受付手段と、入力された複数の目的地点の任意の２地点間の経路を所定のアルゴリズムを用いて探索する２地点経路探索手段と、目的地点を訪問順で並べたものを１つの個体とし、当該個体を複数パターン生成し、初期個体群とする初期個体群生成手段と、前記２地点経路探索手段によって探索された経路を基に、個体に含まれる各目的地点を訪問順につなぎ１つの経路を作成し、各個体に含まれる各目的地点の到着予定時刻及び出発予定時刻を算出する予定時刻算出手段と、ある個体において、時間的制約が課された目的地点の到着予定時刻及び出発予定時刻が、当該時間的制約に対して所定の許容範囲内にある場合、当該個体に所定のポイントを付与することで各個体を評価する評価手段と、前記初期個体群に対し所定のアルゴリズムを適用し、評価の高い個体群を生成する個体生成手段と、前記個体生成手段によって得られた個体群から、評価の高い順に抽出した所定個数の個体に対応する経路を最適経路として出力するとともに、抽出した最適経路に含まれる各目的地点に対する到着予定時刻及び出発予定時刻を出力する出力手段としてコンピュータを機能させることを特徴とする（請求項１６）。
【発明の効果】
【００２２】
請求項１、１２〜１６記載の発明によれば、出発地点及び出発時刻が取得され、訪問を希望する複数の目的地点及びいずれかの目的地点に対する到着希望時刻及び希望滞在時間を含む時間的制約の入力が受け付けられ、複数の目的地点の任意の２地点の経路が探索される。ここで、任意の２地点とは、原則として、複数の目的地点のうち、組み合わせる２地点間の全パターンのことをいう。ただし、本発明では、組み合わせうる２地点の全パターンのうち一部のパターンに対して経路を探索するものも含まれる。これにより、各目的地点間の経路が特定される。
【００２３】
そして、複数の目的地点の巡回順序が例えばランダムに決定されて、目的地点を遺伝子として有する個体が複数生成され、初期個体群が生成される。生成された各個体は、各目的地点に対する到着予定時刻及び出発予定時刻が算出され、時間的制約が課された目的地点に対する到着予定時刻及び出発予定時刻が、当該時間的制約に対し所定の許容範囲内にある場合、この個体に対し所定のポイントが付与されて評価される。これにより、当該時間的制約を満たす目的地点が多い経路ほど高い評価を得ることとなる。
【００２４】
初期個体群は、所定のアルゴリズムが適用され、より評価の高い個体群とされる。そして、評価の高い個体群から、評価の高い順に抽出された所定個数の個体が最適経路として出力されるとともに、最適経路に含まれる各目的地点の出発予定時刻及び到着予定時刻も併せて出力される。以上の処理により、ユーザが希望する時間的制約を満たすような最適な経路を探索することができる。ここで、所定個数としては、１個又は複数個が含まれる。
【００２５】
請求項２記載の発明によれば、入力された複数の目的地点の任意の２地点間の経路が経路記憶手段に記憶されている場合、当該経路記憶手段から経路を読み出すことにより、任意の２地点間の経路が探索されるため、より高速に経路を探索することができる。特に、目的地点の数が多い場合、かかる構成は効果がある。
【００２６】
請求項３記載の発明によれば、ユーザが訪問を希望する目的地点以外の本システムが推奨する観光地点を最適経路に含ませることができる。観光地点としては、寺、神社、公園、博物館、美術館、映画館、学校等のユーザが訪問を希望する可能性が高い場所を想定している。
【００２７】
請求項４記載の発明によれば、ある個体において、時間的制約が課された目的地点での到着予定時刻が、希望到着時刻に対して規定値以上早い時刻である場合、すなわち時間的余裕がある場合、１又は複数の目的地点が当該個体に追加されるため、観光地点を効率よく訪問することができる観光経路をユーザに提示することができる。
【００２８】
請求項５記載の発明によれば、ユーザが訪問を強く希望する目的地点を含む個体ほど高く評価されるため、希望度の高い目的地点を含むような最適経路を探索することができる。
【００２９】
請求項６記載の発明によれば、隣接する目的地点間の経路の距離が小さい経路を最適経路として抽出することができる。そのため、時間的制約を満たすあまり、ユーザの移動距離が長くなるような経路が探索されることを防止することができる。
【００３０】
請求項７記載の発明によれば、隣接する目的地点間の移動時間の小さい経路を最適経路として抽出することができる。そのため、時間的制約を満たすあまり、ユーザの移動時間が長くなるような経路が探索されることを防止することができる。
【００３１】
請求項８記載の発明によれば、ユーザが最適経路に沿って移動していないと判定された場合、判定された場所を出発地点として再度最適経路が探索されるため、動的に最適経路を探索することができる。
【００３２】
請求項９記載の発明によれば、Ａ*アルゴリズムを用いたため、高速に２地点間の経路を探索することができる。
【００３３】
請求項１０記載の発明によれば、遺伝的アルゴリズムを用いたため、高速に最適経路を算出することができる。
【００３４】
請求項１１記載の発明によれば、同一の目的地点を複数訪問するような経路が探索されることを防止することができる。
【発明を実施するための最良の形態】
【００３５】
（第１実施形態）
以下、本発明にかかる経路探索システムの第１実施形態について図面を参照して説明する。図１は、本発明の第１実施形態にかかる経路探索システムのネットワーク構成を示した図である。本経路探索システムは、ユーザによって携帯される携帯端末１と、携帯端末１と通信ネットワーク３を介して接続されたサーバ２とから構成されている。
【００３６】
携帯端末１は、ＧＰＳユニットが搭載されたＰＤＡ(PersonalDigitalAssistant)又は携帯電話から構成される。本実施形態では、携帯端末１は、自転車に乗って観光を行なうユーザによって携帯されることを想定している。
【００３７】
サーバ２は、通信機能を備えるコンピュータから構成される。通信ネットワーク３としては、例えばインターネットが採用される。なお、インターネットに代えて、例えば、本経路探索システムを提供するサービス会社が構築した専用の通信回線を用いても良い。
【００３８】
図２は、携帯端末１の構成を示したブロック図である。携帯端末１は、種々の情報を表示する表示部１１と、ユーザからの入力を受け付ける操作部１２と、無線信号を出力するアンテナ１３と、制御部１６で処理された種々のデータを無線信号としてアンテナ１３から出力させる通信部１４、携帯端末１の現在位置を取得するＧＰＳユニット１５と、携帯端末１全体を制御する制御部１６とを備えている。
【００３９】
操作部１２は、ユーザが訪問を希望する複数の目的地点と、複数の目的地点のうち、少なくとも１つの目的地点に対する時間的制約及び希望度（プリファレンス値）との入力指令を受け付ける。この場合、時間的制約としては、目的地点に対する希望到着時刻及び希望滞在時間が含まれる。また、目的地点としては、最終目的地点及び出発地点から最終目的地点に至るまでに経由する１又は複数の目的地点及び最終目的地点を含む。プリファレンス値は、ユーザが訪問を希望する程度を示す値であり、希望の度合いに応じて例えば１〜５の５段階の数値（最も強く希望する目的地点に対しては５）で表される。
【００４０】
表示部１１は、液晶表示パネルからなり、制御部１６の制御の下、目的地点及び時間的制約の入力をユーザに促す入力画面及び出発地点周辺のエリアの地図を表示する地図画面を表示する。地図画面に表示される地図は、サーバ２から送信された地図データを基に表示される。
【００４１】
ＧＰＳ（GlobalPositioningSystem）ユニット１５は、専用のハードウェア回路からなり、地球軌道衛星上に打ち上げられた衛星からのデータを受信し、所定の演算を行い携帯端末１の現在位置（緯度及び経度）を測定する。
【００４２】
制御部１６は、例えば、ＣＰＵ（中央処理装置）、ＲＡＭ（ランダムアクセスメモリ）、ＲＯＭ（リードオンリーメモリ）及び専用のハードウェア回路等から構成されている。ＲＯＭには、携帯端末１を制御するための制御プログラムが記憶されており、ＣＰＵは、この制御プログラムを実行することで、携帯端末１を制御する。
【００４３】
また、制御部１６は、サーバ２から送信された地図データを基に、地図画面上に地図を表示させる。さらに、制御部１６は、操作部１２を用いたユーザからの操作に応じて地図画面上を移動するポインタを表示部１１に表示させる。そして、このポインタが地図画面上の所定の位置に置かれ、操作部１２により選択指令が行なわれると、当該位置を目的地点として受け付ける。このとき、制御部１６は、受け付けた目的地点の地名を、入力画面上の所定の欄に表示させてもよい。さらに、制御部１６は、操作部１２を用いて地名が入力されると、当該地名を目的地点として受け付ける。さらに、制御部１６は、サーバ２によって探索された最適経路を通信部１４を介して受信し、当該最適経路を地図画面に重ねて表示させる。さらに、制御部１６は、測定した現在位置、受け付けた目的地点及び時間的制約を通信部１４を介してサーバ２に送信する。
【００４４】
図３は、サーバ２の構成を示したブロック図である。サーバ２は、ＣＰＵ（中央処理装置）、ＲＡＭ（ランダムアクセスメモリ）、ＲＯＭ（リードオンリーメモリ）、ハードディスク、記録媒体駆動装置、通信ボード等から構成されている。ハードディスクには、コンピュータを経路探索システムのサーバとして機能させるプログラムが記憶されており、ＣＰＵは、当該プログラムを実行することで、コンピュータを上記サーバとして機能させる。サーバ２は、機能的には、経路探索部２１、地図データ記憶部２２、通信部２３及び観光地点記憶部２４を備えている。
【００４５】
地図データ記憶部２２は、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体記憶素子、ハードディスクドライブ等を用いた記憶装置によって構成され、道路交通網の地図データを記憶する。地図データとしては、交差点等の道路上の所定の地点に対応するノードと、各ノードをつなぎ道路に対応するリンクとからなる有向グラフと、地形及び地名を示すデータ等が含まれる。この場合、各ノードとリンクには、それぞれ固有の識別符号が割り当てられている。有向グラフＧは、Ｇ＝（Ｖ，Ｅ）で表される。ただし、Ｖは、ノードの集合を示し、Ｅはリンクの集合を示している。また、各リンクＥの距離Ｒは、距離関数Ｃを用いて求められる（Ｃ：Ｅ→Ｒ）。
【００４６】
また、目的地点の集合をＤ＝｛ｄ１，ｄ２，・・・，ｄｎ｝と表す。ｎは目的地点の数を示す。各目的地点ｄｉは、ｄｉ＝｛ｖｉ，ｓｔｉ，ｅｔｉ，ｄｕｒｉ，ｐｒｅｆｉ｝のデータからなる。ここで、ｖｉ∈Ｖであり、ｓｔｉ，ｅｔｉはそれぞれ希望到着時刻に対する許容範囲の開始時刻及び終了時刻を示している。ｄｕｒｉは希望滞在時間、ｐｒｅｆｉは後述するプレファレンス値を示している。
【００４７】
通信部２３は、通信ネットワーク３に対し種々のデータを送受信する。
【００４８】
観光地点記憶部２４は、寺院や、公園、観光名所等、ユーザが目的地点として入力する傾向が高いと想定される複数の観光地点の名称及び位置データを対応付けて記憶している。
【００４９】
２地点経路記憶部２７は、観光地点記憶部２４によって記憶されている複数の観光地点の任意の２地点の最短経路を予め記憶している。
【００５０】
経路探索部２１は、ＣＰＵから構成され、入力受付部２１１、２地点経路探索部２１２、遺伝的アルゴリズム実行部２１３及び出力部２１４を備えている。
【００５１】
入力受付部２１１は、携帯端末１から出力された、現在位置、目的地点、時間的制約及びプレファレンス値を通信部２３を介して受け付け、時間的制約として入力された希望到着時刻に対し、予め定められた規定値を差し引いた値をｓｔｉとして設定し、希望到着時刻に対し、予め定められた規定値を加えた値をｅｔｉとして設定する。また、入力受付部２１１は、時間制約が課された目的地点に対しては、当該目的地点のｐｒｅｆｉに、ユーザによって入力されたプレファレンス値を設定する。
【００５２】
なお、ｅｔｉは、上記の設定に代えて、ユーザに到着予定時刻の許容範囲を入力させ、許容範囲の開始時刻をｓｔｉとして設定し、許容範囲の終了時刻をｅｔｉとして設定してもよい。さらに、入力受付部２１１は、携帯端末１から送信された現在位置等のデータを受信したときの時刻をコンピュータが備える時計機能により特定し、出発時刻として設定する。なお、携帯端末１が現在位置に付随して現在位置の測定時刻を送信したときは、入力受付部２１１は、当該測定時刻を出発時刻として設定してもよい。
【００５３】
２地点経路探索部２１２は、ユーザによって入力された複数の目的地点の任意の２地点間の最短経路を地図データを用いて探索する。詳細には、まず、入力された複数の目的地点が、観光地点記憶部２４に記憶されている場所であるか否かを判定する。そして、観光地点記憶部２４に記憶されていない目的地点から、任意に２つの目的地点を選び、選んだ目的地点間の最短経路をＡ*アルゴリズムにより探索する。また、観光地点記憶部２４に記憶していない目的地点と、観光地点記憶部２４に記憶された目的地点とからなる各ペアの最短経路をＡ*アルゴリズムにより探索する。さらに、ユーザによって入力された目的地点であって、観光地点記憶部２４に記憶された目的地点の各ペアに対しては、２地点経路記憶部２７を参照することで、当該２地点間の最短経路を探索する。
【００５４】
Ａ*アルゴリズムは、人工知能の分野で広く用いられ、ダイクストラ法に終点の情報をヒューリスティック値として用いることによって、探索効率を高めた手法である。この場合、任意の２地点間の直線距離をヒューリスティック値として用いる。
【００５５】
ここで、任意の２地点とは、目的地点が例えばＡ，Ｂ，Ｃからなるとすると、{Ａ，Ｂ}，{Ｂ，Ｃ}，{Ｃ，Ａ}というように、ユーザによって入力された複数の目的地点から組み合わせることができる２地点の全パターンを指す。
【００５６】
さらに、２地点経路探索部２１２は、探索した任意の２地点間の最短経路を構成する各リンクＥに対して距離関数Ｃを適用し、２地点間の最短経路の距離を算出する。さらに２地点経路探索部２１２は、算出した２地点間の最短経路の距離を、想定されるユーザの移動速度で割ることにより、２地点間の移動時間を算出する。
【００５７】
遺伝的アルゴリズム実行部２１３は、初期個体群生成部２１３ａ、個体群生成部２１３ｂ、予定時刻算出部２１３ｃ及び評価部２１３ｄを備えている。
【００５８】
初期個体群生成部２１３ａは、ユーザによって入力された複数の目的地点及び観光地点記憶部２４に記憶された観光地点の中から、所定個数の場所を抽出し、これらの場所を例えばランダムに並べたものを１つの個体とし、得られた個体を複数パターン生成して初期個体群を生成する。本実施形態では、各個体を可変長リスト構造で表すものとする。これにより、個体に含まれる目的地点及び観光地点の追加及び削除を容易に行なうことができる。
【００５９】
予定時刻算出部２１３ｃは、初期個体群生成部２１３ａ及び個体群生成部２１３ｂによって生成される各個体に含まれる各目的地点に対する到着予定時刻、出発予定時刻を算出する。詳細には、個体に含まれる隣接する目的地点同士を、２地点経路探索部２１２によって探索された最短経路でつなぎ１つの経路を作成し、出発時刻と、当該経路から特定される各目的地点間の移動時間と、希望滞在時間とから各目的地点の到着予定時刻及び出発予定時刻を算出する。
【００６０】
評価部２１３ｄは、例えば式（１）を用いて各個体の評価値を算出する。
【００６１】
評価値＝α（プレファレンス値の合計）−β（総移動距離／訪問する目的地点数）−γ（総移動時間／訪問する目的地点数）・・・式（１）
α、β及びγは、定数である。プレファレンス値は、ユーザによって入力され、個体中に含まれる時間的制約が課された目的地点が当該時間的制約を満たす場合に、当該個体に付与される値である。ここで、時間的制約を満たす場合とは、到着予定時刻が、上記ｓｔｉ及びｅｔｉの範囲内にある場合をいう。総移動距離は、個体に対応する経路において、出発地点からゴール地点にいたるまでにユーザが移動する距離を示す。訪問する目的地点数は、個体に含まれる目的地点の数を示す。総移動時間は、個体に対応する経路において、出発地点からゴール地点にいたるまでにユーザが移動するのに要する時間を示す。したがって、第１項により時間的制約を満たす目的地点が多い個体ほど評価値は高くなり、第２項により各目的地点間の移動距離が短い個体ほど評価値は高くなり、第３項により各目的地点間移動時間が短い個体ほど評価値は高くなる。
【００６２】
式（１）により、プレファレンス値のみを用いて個体を評価した場合、時間的制約を満たすことだけが最優先されて訪問順序が決定されるおそれがある。つまり、時間的制約を満たすために近い所にある目的地点を続けて回らずに、遠回りした順序を採った方がよい評価値を得られるという状況になる。こうなると、時間的制約は満たしていても、移動する距離が多い経路が探索されてしまい、効率のよい観光を行なうことができない。
【００６３】
そこで、式（１）では、第１項に加えて、第２項及び第３項を追加している。これにより、時間的に余裕がでた場合、この時間を利用して、ユーザによって入力された目的地点以外の推奨観光地が追加するような経路を探索することが可能となり、効率よい観光を行なうことができる。なお、評価部２１３ｄは、式（１）において、第２項及び第３項のいずれか一方又は両方が省略された式を用いて個体の評価を行なってもよい。ここで、時間的に余裕がでた場合とは、ある目的地点において算出された到着予定時刻が、ｓｔｉに対し規定値以上早い時刻である場合が該当する。
【００６４】
個体群生成部２１３ｂは、選択部２１３ｂ１、交差部２１３ｂ２及び突然変異部２１３ｂ３を備え、個体群に対して、遺伝的アルゴリズムによる世代交代処理を繰り返し実行し、より評価値の高い個体からなる個体群を生成する。本実施形態では、個体群生成部２１３ｂは、処理を開始してから、予め定められた制限時間に達するまで、世代交代処理を繰り返す。
【００６５】
選択部２１３ｂ１は、現世代の個体群の中で最大の評価値をもつ個体をエリート個体として特定するとともに、エリート個体以外の残りの個体に対しトーナメント選択処理を施し、得られた個体及びエリート個体からなる個体群を次世代の個体群として残す。
【００６６】
交差部２１３ｂ２は、選択部２１３ｂ１により次世代の個体として選択された個体群以外の個体から所定個数のペアの個体を親個体として選択し、選択した各ペアの各個体に対して、例えばランダムに一つの交差点を選択し、一点交差により、ペアの親個体同士の遺伝子（目的地点）の入れ替えを行い新たな個体（子個体）を生成する。この場合、交差部２１３ｂ２は、子個体に、同じ目的地点が複数含まれている場合は、後の遺伝子座に位置する目的地点を削除することにより当該目的地点を１つにする。なお、交差部２１３ｂ２は、一点交差に代えて、多点交差や一様交差により新たな個体を生成してもよいが、これらの交差の場合、同じ目的地点が複数含まれる個体が生成される可能性が高くなるため、一点交差を用いることが好ましい。また、親個体の選択は、例えばランダムに行なえばよい。
【００６７】
突然変異部２１３ｂ３は、選択部２１３ｂ１によって選択された個体群以外の個体及び交差部２１３ｂ２により新たに生成された個体から所定個数の個体を選択し、得られた各個体において、２−ｏｐｔ法を用いて目的地点を入れ替える突然変異処理を行なう。２−ｏｐｔ法は、同一個体上でランダムに選んだ２地点を交換する処理である。突然変異処理が施される個体の選択は、例えば、ランダムに選択すればよい。
【００６８】
また、突然変異部２１３ｂ３は、交差部２１３ｂ２により、個体長が短くなった個体又は時間的に余裕がある個体に対し、目的地点を追加する処理を行なう。詳細には、個体長が短くなった個体からランダムに選択された所定個数の目的地点、又は、時間的に余裕がある目的地点に対し、観光地点記憶部２４に記憶されている観光地点からランダムに選んだ観光地点を追加する。ランダムに選ぶ上記所定個数としては、例えば、個体長を元の個体と同一にするために、交差によって目的地点が減少した個体の目的地点減少数分の個数を設定すればよい。また、ランダムに選択された目的地点、又は、時間的に余裕がある目的地点に対し、近所の観光地点を観光地点記憶部２４から読み出して追加してもよい。
【００６９】
出力部２１４は、個体群生成部２１３ｂによって生成された評価値の高い個体群から、評価値の高い順の所定個数の個体を抽出し、抽出した個体に対応する経路と、各経路に含まれる目的地点の到着予定時刻及び出発予定時刻と、経路を含むエリアの地図データとを通信部２３を介して携帯端末１に出力する。
【００７０】
次に、本経路探索システムの動作について、図４に示すフローチャートを用いて説明する。ステップＳ１１において、携帯端末１により、ユーザからの目的地点及び時間的制約の入力が受け付けられると（ステップＳ１１でＹＥＳ）、ＧＰＳユニット１５により携帯端末の現在位置が測定される（ステップＳ１２）。ステップＳ１３において、制御部１６及び通信部１４により、目的地点、時間的制約、現在位置がサーバ２に出力される。
【００７１】
ステップＳ２１において、サーバ２により、目的地点、時間的制約及び現在位置が受信されると、入力受付部２１１により、各目的地点ｄｉを構成するデータ（ｖｉ，ｓｔｉ，ｅｔｉ，ｄｕｒｉ，ｐｒｅｆｉ）が設定される（ステップＳ２２）。
【００７２】
ステップＳ２３において、２地点経路探索部２１２により、複数の目的地点のうち組み合わせることができる２地点の全パターンのそれぞれに対し、２地点経路記憶部２７を参照することにより、又は、Ａ*アルゴリズムを用いて最短経路が探索される。
【００７３】
ステップＳ２４において、２地点経路探索部２１２により、ステップＳ２３で探索された各最短経路についての距離が算出され、当該距離がユーザの移動速度で除算され、任意の２地点間の移動時間が算出される。
【００７４】
ステップＳ２５において、遺伝的アルゴリズム実行部２１３により最適経路が探索される。この処理の詳細については後述する。次いで、出力部２１４により、探索された最適経路、最適経路を含むエリアの地図データ及び最適経路の各目的地点の到着時刻及び出発時刻が、通信部２３を介して携帯端末１に送信される（ステップＳ２６）。
【００７５】
ステップＳ１４において、携帯端末１により、サーバ２から送信されたデータが受信されると、制御部１６により、受信した最適経路がそのエリアを含む地図に重ね合わされて表示部１１に表示される（ステップＳ１５）。
【００７６】
この場合、図５に示すような、最適経路が地図に重ね合わせられた画像が地図表示画面に表示される。図５の例では、各目的地点の名称及び訪問順序が地図上の対応する位置の近傍に表示されている。また、最適経路に沿ってユーザの移動方向を示す矢印が表示されている。これにより、ユーザは、どのような順序で目的地点を訪問すればよいのかを一目で知ることができる。
【００７７】
さらに、表示部１１の画面上の所定の欄には、図６に示すような、各目的地点に対する到着予定時刻、出発予定時刻及び滞在予定時間が示されたテーブルが表示される。これによりユーザは、探索された最適経路にしたがって、各目的地点を訪問した場合の各目的地点に対する到着予定時刻等を一目で知ることができる。
【００７８】
図７は、ステップＳ２５の最適経路を探索する処理のサブルーチンを示している。まず、ステップＳ３１において、遺伝的アルゴリズムの実行時間を計測するためのタイマＴに０がセットされ、タイマＴが初期化される。ステップＳ３２において、タイマＴにより、実行時間の計測が開始される。
【００７９】
ステップＳ３３において、初期個体群生成部２１３ａにより、ランダムにより複数パターンの個体が生成され、初期個体群が生成される。図８は、生成された初期個体群の一例を示した図である。この場合、東大寺、法隆寺、薬師寺及びＮＡＩＳＴ（奈良先端科学技術大学院大学）が目的地点として入力されており、一段目に示した個体は、これら全ての目的地点と観光地点記憶部２４に記憶された春日大社、唐招提寺及び興福寺の観光地点から生成された個体であり、２段目に示した個体は、法隆寺、東大寺及び薬師寺の目的地点と、観光地点記憶部２４に記憶された春日大社、唐招提寺及び興福寺から生成された個体であり、３段目に示した個体は、薬師寺、東大寺及び法隆寺の目的地点と、観光地点記憶部２４に記憶された唐招提寺及び興福寺の観光地点から生成された個体である。このように、本実施形態では、各個体が可変長リスト構造で表されているため、各個体の長さは一定ではない。
【００８０】
ステップＳ３４において、評価部２１３ｄにより、式（１）を用いて各個体の評価値が算出される。ステップＳ３５において、選択部２１３ｂ１により、現世代の個体群から評価値が最も高い個体がエリート個体として選択され、次世代の個体として保存される。ステップＳ３６において、選択部２１３ｂ１により、エリート個体以外の現世代の個体に対し、トーナメント選択処理が施され、選択された１又は複数の個体が次世代の個体として保存される。
【００８１】
ステップＳ３７において、交差部２１３ｂ２により、ステップＳ３５及びＳ３６において次世代の個体として保存された個体以外の個体から１又は複数ペアの個体が親個体として選択され、当該親個体に対して、一点交差により新たな個体が生成される。
【００８２】
図９は、一点交差の一例を示した図である。親個体１は、東大寺、法隆寺、春日大社、二月堂、西大寺、薬師寺及び新薬師寺からなる。親個体２は、唐招提寺、ＮＡＩＳＴ、正倉院、興福寺、東大寺、薬師寺及び法隆寺からなる。親個体１は、３番目の目的地点である春日大社と４番目の目的地点である二月堂との間が交差点として選択されている。親個体２は、４番目の目的地点である興福寺と、５番目の目的地点である東大寺との間が交差点として選択されている。そして、親個体１の１〜３番目の目的地点に対し、親個体２の５〜７番目の目的地点が追加され、親個体１に対する子個体１が生成される。この場合、子個体１は、東大寺及び法隆寺がそれぞれ２個存在するため、後に遺伝子座に位置する東大寺及び法隆寺が子個体１から削除される。その結果、子個体１は、東大寺、法隆寺、春日大社及び薬師寺の計４個の目的地点から構成され、親個体よりも個体長が短くなっている。
【００８３】
また、親個体２の１〜４番目の目的地点に対し、親個体１の４〜７番目の目的地点が追加され、親個体２に対する子個体２が生成される。子個体２は、合計８個の目的地点から構成されており、親個体２に対し、個体長が長くなっている。
【００８４】
ステップＳ３８において、突然変異部２１３ｂ３により、現世代の個体において、ステップＳ３５及びＳ３６で選択された個体以外の個体から所定個数の個体が選択され、当該個体に対し２−ｏｐｔ法による突然変異処理が施される。図１０は、２−ｏｐｔ法による突然変異処理の一例を示した図である。東大寺、法隆寺、春日大社、唐招提寺、興福寺、薬師寺及びＮＡＩＳＴからなる個体に対し、１番目の目的地点である東大寺と、５番目の目的地点である興福寺とが交換され、新たな個体が生成されている。これにより、解に多様性を持たせることができる。
【００８５】
ステップＳ３９において、突然変異部２１３ｂ３により、交差により個体長が短くなった個体のランダムに選ばれた遺伝子座に観光地点記憶部２４に記憶された観光地点が追加される。図１１は、観光地点の追加の一例を示した図である。図１１では、東大寺、法隆寺、春日大社、興福寺、薬師寺及びＮＡＩＳＴからなる交差によって個体長が短くなった個体が示されている。この場合、春日大社（法隆寺）がランダムに選ばれた目的地点であり、春日大社の前（法隆寺の後）の遺伝子座に唐招提寺が新たに追加されている。このように、個体長が短くなり、時間的余裕が生じた個体に対し、観光地点が追加されると、当該個体は、各目的地点間の移動距離の平均が低くなる。そして、移動距離の平均が低い個体は、式（１）により高い評価が得られるため、かかる個体が次世代の個体へと残され、結果、時間的制限のみに拘束されず、効率よく観光名所を訪問することができる経路が最適経路として探索されることとなる。
【００８６】
ステップＳ４０において、タイマＴの値が予め定められた探索制限時間と比較され、タイマＴの値が探索制限時間未満の場合（ステップＳ４０でＹＥＳ）ステップＳ３３に戻り、再度、遺伝的アルゴリズムが実行され、次世代の個体が生成される。一方、ステップＳ４１において、タイマＴの値が探索制限時間以上の場合（ステップＳ４１でＮＯ）、処理が終了される。なお、図７のフローチャートでは、タイマＴが制限時間となるまで遺伝的アルゴリズムを実行するという態様を示したが、これに限定されず、例えば、個体群の評価値の平均値が、世代交代により一定の値以上上昇しないケースが所定回数連続した場合に、処理を終了させてもよい。
【００８７】
図１２は、本経路探索システムによって得られた最適経路の一例を示した図であり、（ａ）はユーザが希望する観光内容を示し、（ｂ）はそれによって得られた最適経路を示し、（ｃ）は得られた最適経路に対して付与されるプレファレンス値を示している。（ａ）に示すように、ユーザは、９時に現在位置を出発し、法隆寺、東大寺及び薬師寺を訪問し、２０時にゴールである現在位置に戻る観光を希望している。そして、法隆寺に対しては、１２時に到着することを希望している。また、各目的地点に対して、プレファレンス値として５が設定されている。これによって、（ｂ）に示すように、現在位置を９時に出発し、１０時に東大寺に到着し、１３時に唐招提寺に到着し、１６時に春日大社に到着し、１７時に幸福寺に到着し、１８時に薬師寺に到着し、１９時にＮＡＩＳＴに到着し、２０時に現在位置に戻る経路が最適経路として探索されている。この場合、時間制約が課された目的地点である法隆寺は、当該時間的制約が満たされているため、プレファレンス値分のポイント（＝５）が付与されている。また、ゴールに対しても時間的制約が満たされているためプレファレンス値分のポイント（＝５）が付与されている。したがって、当該経路に付与されるプレファレンス値の合計は１０ポイントとなる。
【００８８】
以上説明したように、第１実施形態の経路探索システムによれば、ユーザが希望する時間的制約を満たし、かつ、ユーザの移動距離が最短となるような最適経路を探索することができる。また、入力された目的地点の最短経路を２地点経路記憶部２７を参照することで探索しているため、多数（例えば２０個以上）の目的地点が設定されている場合であっても、最適経路を高速に算出することができる。さらに、式（１）に第２項及び第３項を設けたため、時間的制限に余裕がある個体に対しては、観光地点記憶部２４に記憶された観光地点を追加した場合の個体に高い評価が得られ、より多くの観光地点を訪問できるような最適経路をユーザに提示することができる。
【００８９】
（第２実施形態）
第１実施形態では、携帯端末１とサーバ２とで構成された経路探索システムを示したが、第２実施形態では、一台の装置からなる経路探索装置を示す。図１３は、第２実施形態にかかる経路探索装置のブロック図を示している。
【００９０】
経路探索装置は、通常のコンピュータから構成され、ＣＰＵがハードディスクに記憶された経路探索プログラムを実行することで、ブロック図に示す各種機能が実現される。以下の説明では、第１実施形態と同一のものは同一の符号を付し説明を省略する。操作部２５は、ユーザによる出発地点、出発時刻、目的地点及び時間的制約の入力を受け付ける。第１実施形態では、ＧＰＳにより得られた現在位置を出発地点として設定していたが、第２実施形態では、ユーザによって入力された出発地点及び出発時刻を基に、最適経路を探索する。
【００９１】
表示部２６は、ＣＲＴ（陰極線管）、液晶パネル、プラズマパネル等から構成され、第１実施形態の携帯端末１の表示部１１に相当するものであり、ＣＰＵの制御の下、経路探索部２１によって探索された最適経路や入力画面を表示する。
【００９２】
次に、第２実施形態にかかる経路探索装置の動作について図１４のフローチャートを用いて説明する。ステップＳ５１において、ユーザによる出発地点、出発時刻、目的地点及び時間的制約が入力されると（ステップＳ５１でＹＥＳ）、入力受付部２１１´により、各目的地点に対するデータが設定されるとともに、出発地点、出発時刻及びプレファレンス値が設定される。
【００９３】
次いで、ステップＳ５３〜Ｓ５５の処理が実行され、最適経路が探索される。ステップＳ５３〜Ｓ５５の処理は、それぞれ図４に示すステップＳ２３〜Ｓ２５と同一の処理であるため説明を省略する。
【００９４】
ステップＳ５６において、探索された最適経路が表示部２６に表示され、処理が終了される。
【００９５】
以上説明したように第１及び第２実施形態にかかる経路探索システム及び経路探索装置によれば、ユーザによって入力された複数の目的地点間及び時間的制約を満たすような最適経路を探索することができる。
【００９６】
本発明は、以下の態様を採用してもよい。
【００９７】
（１）上記実施形態では、遺伝的アルゴリズムを用いて最適経路を探索したが、これに加えて、Ｍｕｌｔｉ−ｌｅｖｅｌ  Ａｐｐｒｏａｃｈを用いて最適経路を探索してもよい。この手法は、問題を荒く分割した部分問題として解き、除々にもとのサイズに戻していく手法である。
【００９８】
（２）上記実施形態では、２地点経路探索部２１２は、Ａ*アルゴリズムを用いたが、これに限定されず、ダイクストラ法を用いても良い。ダイクストラ法は、２つの目的地点間を結ぶ経路を求める代表的な手法であり、市販されているカーナビゲーションシステムでは、この手法が広く使用されているが、Ａ*アルゴリズムに比べ短時間で最短経路を探索することができない。そのため、探索時間の高速化という観点からは、Ａ*アルゴリズムを用いることが好ましい。
【００９９】
（３）上記実施形態では、遺伝的アルゴリズムを用いたが、これに限定されず、ＴＳＰ（巡回セールスマン問題）を解決することができる他のアルゴリズムを用いても良い。
【０１００】
（４）第２の実施形態では、出発地点及び出発時刻として、ユーザによって入力されたものを採用したが、これに限定されず、ＧＰＳユニットを備え、ＧＰＳにより測定された現在位置と現在位置取得時の時刻等を出発地点及び出発時刻として設定してもよい。これにより本発明を、カーナビゲーションシステムに用いることができる。
【０１０１】
（５）第１の実施形態では、ユーザが自転車に乗って移動する態様を示したがこれに限定されず、自転車以外の乗り物あるいは徒歩により移動する態様も含まれる。この場合、ユーザの乗り物に応じて想定される移動速度（徒歩の場合は、人間の歩く速度）を基に、移動時間を計算すればよい。
【０１０２】
（６）上記実施形態では、２地点経路探索部２１２は、任意の２地点間の最短経路を探索したが、これに限定されず、有料道路の料金等のコストが最小となる経路を探索してもよいし、道路の大きさや制限速度等を加味して移動時間が最小となる経路を探索してもよい。これにより、ユーザが望む最適経路を探索することが可能となる。
【０１０３】
（７）上記実施形態では、示さなかったが、システムが探索した経路に沿ってユーザが移動していない場合、再度、最適経路を再探索してユーザに提示してもよい。経路に沿って移動しているか否かの判定は、システムが探索したある目的地点における到着予定時刻を所定の閾値以上経過してもユーザが到達していない場合に、最適経路に沿って移動していないと判定し、判定した時点におけるユーザの現在位置をＧＰＳにより取得し、出発地点として探索すればよい。この場合、サーバは、一定の期間毎にＧＰＳによりユーザの現在位置を取得すればよい。また、最初にシステムが提示した最適経路に含まれる目的地点のうち、ユーザが訪問した目的地点をメモリに記憶しておき、ユーザが通った目的地点を除外して、再探索を行なっても良い。これにより、ユーザが一度訪問した目的地点を再度訪問するような経路をユーザに提示することを防止することができる。
【実施例】
【０１０４】
次に本発明にかかる経路探索システムを評価するために行なった実験を実施例として示す。本実験では、地図データとして、市販のナビ研Ｓ規格に準拠したカーナビゲーション用デジタル地図を利用した。実験環境は、ＣＰＵ：ＡＭＤ  Ｄｕｒｏｎ  １．３ＧＨｚ、メモリ：７６８Ｍｂｙｔｅ、ＯＳ：ＶｉｎｅＬｉｎｕｘ２．６の計算機を使用した。対象とした地図データは、奈良県北部で総ノード数は約３８００、目的置換の移動速度を時速３０ｋｍ／ｈとして移動時間を計算した。
【０１０５】
実験を行なうために、表２及び表３で示す入力を与えた。プリファレンス値は、指定した目的地を全て５とした。
【０１０６】
【表１】
2005164384.tif 000003
【０１０７】
【表２】
2005164384.tif 000004
【０１０８】
【表３】
2005164384.tif 000005
【０１０９】
【表４】
2005164384.tif 000006
【０１１０】
【表５】
2005164384.tif 000007
【０１１１】
図５は、表１及び表２の入力に対して本アルゴリズムを適用した結果の一例である。図中の数字は巡回する順序を示し、矢印は経路の進行方向を示している。また、表３は、得られた結果の詳細である。表５は遺伝的アルゴリズムによる巡回順序決定の実行時間ごとの評価値の変化を示したものである。表３に示すように、時間制約を付けた４つの目的地点は経路に含まれており、いずれも指定した時間制約を満たしている。また、生成された経路に含まれている目的地点は８箇所であり、そのうち訪れることを希望した目的地は６箇所、システムが推奨する追加目的地は２箇所となった。
【０１１２】
実行時間は、表４に示すように、１８１秒かかった。この探索時間の大部分は、Ａ*アルゴリズムによるすべての目的地点間の経路を求める時間であり、巡回順序決定に要した時間は３０秒である。したがって、主要な目的地点間の距離を登録したデータベースを作成し、探索時にはそのデータを利用するようにすれば、実行時間は３０秒で済むことになり、十分実用に耐えると考えられる。
【０１１３】
また、表５に示すように、評価値の値は探索時間が増えるごとに高くなっているが、３０秒程度で一定の値になった。実行時間５秒では、評価値は１０秒以降に比べてかなり低い値であるが、１０秒以降での評価値の向上率はわずかである。したがって、実行時間が１０〜１５秒でもそれなりによい評価値が得られると考えられる。
【図面の簡単な説明】
【０１１４】
【図１】本発明の第１実施形態にかかる経路探索システムのネットワーク構成を示した図である。
【図２】携帯端末の構成を示したブロック図である。
【図３】サーバの構成を示したブロック図である。
【図４】本経路探索システムの動作を示すフローチャートである。
【図５】地図に重ね合わせて表された最適経路の画像の一例を示した図である。
【図６】各目的地点に対する到着予定時刻及び出発予定時刻が示されたテーブルを示した図である。
【図７】最適経路を探索する処理のサブルーチンを示したフローチャートである。
【図８】初期個体群の一例を示した図である。
【図９】一点交差の一例を示した図である。
【図１０】２−ｏｐｔ法による突然変異処理の一例を示した図である。
【図１１】観光地点の追加の一例を示した図である。
【図１２】本経路探索システムによって得られた最適経路の一例を示した図であり、（ａ）はユーザが希望する観光内容を示し、（ｂ）はそれによって得られた最適経路を示し、（ｃ）は得られた最適経路に対して付与されるプレファレンス値を示している。
【図１３】第２実施形態にかかる経路探索装置を示すブロック図である。
【図１４】第２実施形態にかかる経路探索装置の動作を示したフローチャートである。
【符号の説明】
【０１１５】
１  携帯端末
２  サーバ
３  通信ネットワーク
１１  表示部
１２  操作部
１３  アンテナ
１４  通信部
１５  ＧＰＳユニット
１６  制御部
２１  経路探索部
２２  地図データ記憶部
２３  通信部
２４  観光地点記憶部
２５  操作部
２６  表示部
２１１  入力受付部
２１２  地点経路探索部
２１３  遺伝的アルゴリズム実行部
２１３ａ  初期個体群生成部
２１３ｂ  個体群生成部
２１３ｂ１  選択部
２１３ｂ２  交差部
２１３ｂ３  突然変異部
２１３ｃ  予定時刻算出部
２１３ｄ  評価部
２１４  出力部
【図１】
2005164384.tif 000008
【図２】
2005164384.tif 000009
【図３】
2005164384.tif 000010
【図４】
2005164384.tif 000011
【図５】
2005164384.tif 000012
【図６】
2005164384.tif 000013
【図７】
2005164384.tif 000014
【図８】
2005164384.tif 000015
【図９】
2005164384.tif 000016
【図１０】
2005164384.tif 000017
【図１１】
2005164384.tif 000018
【図１２】
2005164384.tif 000019
【図１３】
2005164384.tif 000020
【図１４】
2005164384.tif 000021