(57)【要約】【課題】散歩コース、ジョギングコース、マラソンコース、ドライブ、観光コースなど目的地点の設定を必要としない経路探索を簡単な操作でおこなうこと。【解決手段】出発地点Ｓと距離Ｄとを取得した場合、出発地点Ｓを中心とする円Ｃを経路探索範囲Ａに設定する。円Ｃの半径ｒは、取得した距離Ｄ以下の長さ、たとえば取得した距離Ｄの半分の値（Ｄ／２）に設定することができる。そして、折り返し地点となる経由地点Ｐを設定する。経由地点Ｐは、経路探索範囲Ａ内において、円Ｃの境界近傍の交差点を示すノードや施設の代表点に設定することができる。往路と復路を同一経路にする場合、出発地点（＝目的地点）Ｓと経由地点Ｐとが設定されると、ダイクストラ法などを用いて出発地点Ｓから経由地点Ｐまでの経路を探索する。【選択図】        図５
2006145408.tif 000002
【特許請求の範囲】
【請求項１】
移動体の移動経路の探索を指示する指示手段と、
前記移動経路の探索が指示されたときに、前記移動体の現在地点を示す地点情報及び走行距離を示す距離情報を取得する取得手段と、
取得された前記地点情報が示す移動体の現在地点を出発地点及び目的地点とし、取得された前記距離情報が示す走行距離を道なり距離とした往復経路を探索する探索手段と、
を備えることを特徴とする経路探索装置。
【請求項２】
距離又は時間の入力を受け付ける入力手段をさらに備え、
前記取得手段は、入力された距離又は時間に基づいて前記距離情報を取得することを特徴とする請求項１に記載の経路探索装置。
【請求項３】
取得された前記地点情報及び前記距離情報に基づいて、当該地点情報が示す移動体の現在地点から往復可能な範囲を算出する算出手段と、
算出された前記範囲から経由地点を抽出する地点抽出手段と、
をさらに備え、
前記探索手段は、取得された前記地点情報が示す移動体の現在地点を出発地点及び目的地点とし、抽出された前記経由地点を経由し、取得された前記距離情報が示す走行距離を道なり距離とした往復経路を探索することを特徴とする請求項１または２に記載の経路探索装置。
【請求項４】
前記算出手段は、取得された前記地点情報が示す移動体の現在地点を中心とし、取得された前記距離情報が示す走行距離の２分の１を半径とした円の範囲を前記往復可能な範囲として算出することを特徴とする請求項３に記載の経路探索装置。
【請求項５】
施設に関するジャンルの入力を受け付けるジャンル入力手段をさらに備え、
前記地点抽出手段は、算出された前記範囲から入力された前記ジャンルに属する施設を前記経由地点として抽出することを特徴とする請求項３または４に記載の経路探索装置。
【請求項６】
前記探索手段によって複数の往復経路が探索された場合に、当該複数の往復経路の中から１の経路を抽出する経路抽出手段をさらに備えることを特徴とする請求項１〜５のいずれか一つに記載の経路探索装置。
【請求項７】
前記移動体が移動する方向の入力を受け付ける方向入力手段をさらに備え、
前記探索手段は、入力された方向に基づいて前記往復経路を探索することを特徴とする請求項１〜６のいずれか一つに記載の経路探索装置。
【請求項８】
前記探索手段は、往路と復路が異なる前記往復経路を探索することを特徴とする請求項１〜７のいずれか一つに記載の経路探索装置。
【請求項９】
移動体の移動経路の探索が指示されたときに、前記移動体の現在地点を示す地点情報及び走行距離を示す距離情報を取得する取得工程と、
取得された前記地点情報が示す移動体の現在地点を出発地点及び目的地点とし、取得された前記距離情報が示す走行距離を道なり距離とした往復経路を探索する探索工程と、
を含むことを特徴とする経路探索方法。
【請求項１０】
情報を取得する取得手段を備え、移動体の移動経路を探索する経路探索装置における経路探索用プログラムであって、
前記移動経路を探索するか否かを判断する判断ステップと、
前記移動経路を探索すると判断したときに、前記移動体の現在地点を示す地点情報及び走行距離を示す距離情報を前記取得手段に取得させる取得ステップと、
取得された前記地点情報が示す移動体の現在地点を出発地点及び目的地点とし、取得された前記距離情報が示す走行距離を道なり距離とした往復経路を探索する経路探索ステップと、
を含むことを特徴とする経路探索用プログラム。
【請求項１１】
請求項１０に記載の経路探索用プログラムを記録したコンピュータに読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、経路を探索する経路探索装置、経路探索方法および経路探索用プログラムに関する。ただし、本発明の利用は、上述した経路探索装置、経路探索方法および経路探索用プログラムに限られない。
【背景技術】
【０００２】
従来、自動車などに搭載されるナビゲーション装置では、目的地点を入力すると、各地点の情報（たとえば、道路の距離・幅員、渋滞情報など）を用いて、現在地点もしくは指定された地点から目的地点に至る種々の経路を探索することができる（たとえば、下記特許文献１参照。）。
【０００３】
【特許文献１】特開２００３−３１５０７５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、前記従来技術による経路探索は、入力された目的地点に到達するための経路を探索するので、目的地点を定めなければ経路の探索をおこなうことができない。このため、たとえば、自宅周辺の散歩やジョギング、宿泊施設周辺の散策などのように、移動する距離や時間を基準として探索したい場合においても、目的地点を入力しなければならず不便であるという問題が一例として挙げられる。
【０００５】
また、前述のように距離や時間を基準として経路を探索したい場合に、目的地点を入力して経路を探索しても、所望の条件に適合する経路が探索されるとは限らず、このような場合、ユーザは目的地点を変更して再度経路の探索をおこなわなくてはならないという問題が一例として挙げられる。
【課題を解決するための手段】
【０００６】
請求項１の発明にかかる経路探索装置は、移動体の移動経路の探索を指示する指示手段と、前記移動経路の探索が指示されたときに、前記移動体の現在地点を示す地点情報及び走行距離を示す距離情報を取得する取得手段と、取得された前記地点情報が示す移動体の現在地点を出発地点及び目的地点とし、取得された前記距離情報が示す走行距離を道なり距離とした往復経路を探索する探索手段と、を備えることを特徴とする。
【０００７】
また、請求項９の発明にかかる経路探索方法は、移動体の移動経路の探索が指示されたときに、前記移動体の現在地点を示す地点情報及び走行距離を示す距離情報を取得する取得工程と、取得された前記地点情報が示す移動体の現在地点を出発地点及び目的地点とし、取得された前記距離情報が示す走行距離を道なり距離とした往復経路を探索する探索工程と、を含むことを特徴とする。
【０００８】
また、請求項１０の発明にかかる経路探索用プログラムは、情報を取得する取得手段を備え、移動体の移動経路を探索する経路探索装置における経路探索用プログラムであって、前記移動経路を探索するか否かを判断する判断ステップと、前記移動経路を探索すると判断したときに、前記移動体の現在地点を示す地点情報及び走行距離を示す距離情報を前記取得手段に取得させる取得ステップと、取得された前記地点情報が示す移動体の現在地点を出発地点及び目的地点とし、取得された前記距離情報が示す走行距離を道なり距離とした往復経路を探索する経路探索ステップと、を含むことを特徴とする。
【０００９】
また、請求項１１の発明にかかる記録媒体は、請求項１０に記載の経路探索用プログラムを記録したコンピュータに読み取り可能であることを特徴とする。
【発明を実施するための最良の形態】
【００１０】
以下に添付図面を参照して、本発明にかかる経路探索装置、経路探索方法および経路探索用プログラムの好適な実施の形態を詳細に説明する。
【００１１】
（経路探索装置のハードウェア構成）
まず、経路探索装置のハードウェア構成について説明する。図１は、この発明の実施の形態にかかる経路探索装置のハードウェア構成を示すブロック図である。図１において、経路探索装置１００は、ＣＰＵ１０１と、ＲＯＭ１０２と、ＲＡＭ１０３と、ＨＤＤ（ハードディスクドライブ）１０４と、ＨＤ（ハードディスク）１０５と、ＣＤ／ＤＶＤドライブ１０６と、着脱可能な記録媒体の一例としてのＣＤ／ＤＶＤ１０７と、入力Ｉ／Ｆ（インターフェース）１０８と、入力キー１０９と、リモコン１１０と、映像Ｉ／Ｆ（インターフェース）１１１と、ディスプレイ（またはタッチパネル）１１２と、音声Ｉ／Ｆ（インターフェース）１１３と、スピーカ１１４と、マイク１１５と、通信Ｉ／Ｆ（インターフェース）１１６と、ＧＰＳレシーバ１１７と、移動速度センサ１１８と、角速度センサ１１９と、走行距離センサ１２０と、傾斜センサ１２１と、から構成されている。また、各構成部１０１〜１２１は、バス１３０によってそれぞれ接続されている。
【００１２】
ここで、ＣＰＵ１０１は、経路探索装置１００の全体の制御を司る。ＲＯＭ１０２は、ブートプログラムなどのプログラムを記憶している。ＲＡＭ１０３は、ＣＰＵ１０１のワークエリアとして使用される。ＨＤＤ１０４は、ＣＰＵ１０１の制御にしたがってＨＤ１０５に対するデータのリード／ライトを制御する。ＨＤ１０５は、ＨＤＤ１０４の制御で書き込まれたデータを記憶する。
【００１３】
ＣＤ／ＤＶＤドライブ１０６は、ＣＰＵ１０１の制御にしたがってＣＤ／ＤＶＤ１０７に対するデータのリード／ライトを制御する。ＣＤ／ＤＶＤ１０７は、ＣＤ／ＤＶＤドライブ１０６の制御にしたがって記録されたデータの読み出される着脱可能な記録媒体である。また、ＣＤ／ＤＶＤ１０７として、書込可能な記録媒体を利用することもできる。この着脱可能な記録媒体として、ＣＤ／ＤＶＤ１０７のほか、ＣＤ−ＲＯＭ（ＣＤ−Ｒ、ＣＤ−ＲＷ）、ＭＯ、メモリカードなどであってもよい。
【００１４】
また、入力Ｉ／Ｆ１０８は、文字、数値、各種指示などの入力をする入力キー１０９や、入力キー１０９の一部または全部を備えたリモコン１１０から送信されてくるデータを入力する。また、不図示であるが必要に応じて出力Ｉ／Ｆを設け、この出力Ｉ／Ｆを介して文字や画像を光学的に読み取るスキャナや、文字や画像を印刷するプリンタを接続することができる。さらに、後述する各センサ１１８〜１２１からのデータを入力する。
【００１５】
また、映像Ｉ／Ｆ１１１は、映像表示用のディスプレイ（またはタッチパネル）１１２と接続される。映像Ｉ／Ｆ１１１は、具体的には、たとえば、ディスプレイ（またはタッチパネル）１１２全体の制御をおこなうグラフィックコントローラと、即時表示可能な画像情報を一時的に記憶するＶＲＡＭ（Ｖｉｄｅｏ  ＲＡＭ）などのバッファメモリと、グラフィックコントローラから出力される画像データに基づいて、ディスプレイ（またはタッチパネル）１１２を表示制御する制御ＩＣなどによって構成される。
【００１６】
ディスプレイ（またはタッチパネル）１１２には、アイコン、カーソル、メニュー、ウィンドウ、あるいは文字や画像などの各種データが表示される。このディスプレイ１１２は、たとえば、ＣＲＴ、ＴＦＴ液晶ディスプレイ、プラズマディスプレイなどを採用することができる。また、タッチパネル１１２の押下／非押下を検出して入力Ｉ／Ｆ１０８にデータを入力する。
【００１７】
また、音声Ｉ／Ｆ１１３は、音声出力用のスピーカ１１４に接続される。音声Ｉ／Ｆ１１３は、具体的には、たとえば、音声デジタルデータのＤ／Ａ変換をおこなうＤ／Ａコンバータと、Ｄ／Ａコンバータから出力される音声アナログ信号を増幅する増幅器と、音声アナログデータのＡ／Ｄ変換をおこなうＡ／Ｄコンバータと、から構成されている。また、スピーカ１１４は音声を出力する。マイク１１５は外部からの音声を入力する。
【００１８】
また、通信Ｉ／Ｆ１１６は、基地局（図示せず）を介して通信サーバ（図示せず）と無線通信をおこなう通信モジュールである。通信Ｉ／Ｆ１１６は、たとえば、汎用の携帯電話機と同様の構成であり、ＰＤＣ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ｃｅｌｌｕｌａｒ  Ｔｅｌｅｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｓｙｓｔｅｍ）方式、ＰＨＳ（Ｐｅｒｓｏｎａｌ  Ｈａｎｄｙｐｈｏｎｅ  Ｓｙｓｔｅｍ）方式のＴＤＭＡ、ＴＤＤあるいはＣＤＭＡ構成などを採用することができる。
【００１９】
また、通信Ｉ／Ｆ１１６は、汎用の携帯電話機および入力Ｉ／Ｆ１０８にワイヤード接続（インターフェース接続）した構成や、汎用の携帯電話機および入力Ｉ／Ｆ１０８に微弱無線送受信部を設けた無線接続方式の構成を採用することとしてもよい。また、ＧＰＳレシーバ１１７は、ＧＰＳ衛星（図示せず）からの電波を受信して経路探索装置１００本体の現在位置を求めるものである。
【００２０】
移動速度センサ１１８は、経路探索装置１００の移動速度を検出する。経路探索装置１００が車両に設置されている場合、トランスミッションの出力側シャフトから検出する。また、角速度センサ１１９は、自車の回転時の各速度を検出し、各速度データと相対方位データとを出力する。走行距離センサ１２０は、車輪の回転に伴って出力される所定周期のパルス信号のパルス数をカウントすることによって車輪一回転あたりのパルス数を算出し、その一回転あたりのパルス数に基づく走行距離データを出力する。傾斜センサ１２１は、路面の傾斜角度を検出し、傾斜角データを出力する。
【００２１】
（経路探索装置の機能的構成）
つぎに、図１に示した経路探索装置１００の機能的構成について説明する。図２は、経路探索装置の機能的構成を示すブロック図である。図２において、経路探索装置１００は、地図情報記憶部２０１と、表示部２０２と、指示部２１１と、取得部２１２と、入力部２１３と、算出部２１４と、地点抽出部２１５と、ジャンル入力部２１６と、方向入力部２１７と、探索部２１８と、経路抽出部２１９と、を備えている。
【００２２】
地図情報記憶部２０１には、地図情報が記憶されている。地図情報は、建物、河川、地表面などの地物（フィーチャ）をあらわす背景データと、道路の形状をあらわす道路形状データとを有しており、後述する表示部２０２などによって２次元または３次元的に描画される。
【００２３】
背景データは、背景の形状をあらわす背景形状データと、背景の種類をあらわす背景種別データとを有する。背景形状データは、たとえば、地物の代表点、ポリライン、ポリゴン、地物の座標などを含んでいる。また、背景種別データは、たとえば、地物の名称や住所、電話番号をあらわすテキストデータ、建物、河川などの地物の種別データを含んでいる。
【００２４】
また、地物のうち、「駅」や「劇場」など、一定の目的のために設けられている施設は、その種類によってジャンル分けされている。そして、地物の代表点および座標のデータと、ジャンルデータとが紐つけられている。特に、観光スポットとしてジャンル分けされている施設に関しては、各施設についての平均的な観光所要時間データ（以下、平均滞在時間データという）を含んでいる。
【００２５】
また、道路形状データは、複数のノードと、ノード間を連結するリンクと、を有する道路ネットワークである。ノードは、Ｔ字路などの三叉路、十字路、五叉路などの複数の道路が交差する交差点を示している。リンクは、道路を示している。リンクには形状補間点を有するものもあり、この形状補間点によって曲線道路を表現することができる。
【００２６】
道路形状データは、さらに交通条件データを有する。交通条件データには、たとえば、各ノードについて、信号や横断歩道などの有無、高速道路の出入り口やジャンクションの有無、各リンクについての長さ（距離）、車幅、進行方向、通行禁止、道路種別（高速道路、有料道路か否か）などの情報が含まれている。また、地図情報は、緯度および経度の情報を用いて方向を特定することができる。
【００２７】
なお、地図情報記憶部２０１は、経路探索装置１００の外部に設けられていてもよい。その場合、経路探索装置１００は、たとえば、図１に示した通信Ｉ／Ｆ１１６を通じて、ネットワークを介して地図情報を取得する。地図情報記憶部２０１は、具体的には、たとえば、図１に示したＲＡＭ１０３またはＨＤ１０５によってその機能を実現する。
【００２８】
表示部２０２は、地図情報記憶部２０１に記憶されている地図情報や、後述する探索部２１８によって探索された経路、経路抽出部２１９によって抽出された経路などを表示する。具体的には、表示部２０２は、図１に示した映像Ｉ／Ｆ１１１の制御によって、地図情報や探索された経路を図１に示したディスプレイ１１２に表示する。ここで、表示部２０２に表示される地図情報の一例について説明する。図３は、表示部に表示される地図情報の一例を示す説明図である。
【００２９】
図３において、ディスプレイ１１２の表示画面には、地図情報ＭＰが表示されている。後述する取得部２１２によって取得された現在地点Ｓが、三角マークであらわされている。また、カーソル３０１は、表示画面上に任意の地点を入力する際に用いられる。ユーザは、たとえば、表示されている地図情報ＭＰの任意の地点にカーソル３０１を合わせ、図１に示した入力キー１０９を押下することによって地点３０２の入力をおこなうことができる。このように現在地点Ｓや入力された地点３０２は、出発地点や経由地点として用いることができる。また、方位情報３０３は、地図情報ＭＰ上の方向を示している。
【００３０】
指示部２１１は、移動体の移動経路の探索を指示する。ここで、移動体とは経路を移動する主体であり、車両のみならずユーザ自身を含むものとする。また、指示部２１１による探索の指示は、たとえば、ユーザによる経路探索ボタンなどの操作、および後述する入力部２１３への距離や時間の入力などによっておこなう。指示部２１１は、具体的には、たとえば、図１に示した入力Ｉ／Ｆ１０８によって、その機能を実現する。
【００３１】
取得部２１２は、移動経路の探索が指示されたときに、移動体の現在地点を示す地点情報及び走行距離を示す距離情報を取得する。移動体の現在地点を示す地点情報（以下、現在位置情報という）の取得は、具体的には、たとえば、図１に示したＧＰＳレシーバ１１７によって得られるＧＰＳ測位データおよび自車の進行方向の絶対方位データを、図１に示した移動速度センサ１１８、角速度センサ１１９、走行距離センサ１２０および傾斜センサ１２１から得られる各データで補正することによって、現在地点情報を取得する。
【００３２】
また、走行距離を示す距離情報の取得は、具体的には、たとえば、後述する入力部２１３に入力された距離を取得することによっておこなう。取得部２１２は、具体的には、たとえば、図１に示したＧＰＳレシーバ１１７および入力Ｉ／Ｆ１０８によって、その機能を実現する。
【００３３】
入力部２１３は、距離または時間の入力を受け付ける。ここで、距離または時間は、ユーザが移動したい距離または時間を示す数値情報である。距離または時間の入力は、たとえば、図１に示した入力キー１０９、リモコン１１０、タッチパネル１１２を操作することでおこなわれる。入力部２１３は、具体的には、たとえば、図１に示した入力Ｉ／Ｆ１０８によってその機能を実現する。この入力部２１３により、ユーザは、目的地点を定めなくても、移動したい距離または時間の数値情報さえ入力すれば、その数値情報が移動距離そのもの、または移動距離の目安となる経路を探索することができる。
【００３４】
算出部２１４は、取得された地点情報および距離情報に基づいて、当該地点情報が示す移動体の現在地点から往復可能な範囲を算出する。算出部２１４は、たとえば、取得された地点情報が示す移動体の現在地点を中心とし、取得された距離情報が示す走行距離の２分の１を半径とした円の範囲を往復可能な範囲として算出する。算出部２１４は、具体的には、たとえば、図１に示したＲＯＭ１０２、ＲＡＭ１０３、ＨＤ１０５、ＣＤ／ＤＶＤ１０７などに記録されたプログラムを、ＣＰＵ１０１が実行することによってその機能を実現する。
【００３５】
地点抽出部２１５は、算出部２１４によって算出された範囲から経由地点を抽出する。経由地点とは、出発地点から目的地点に至る経路中において、通過や立ち寄りなどをおこなう地点である。また、後述するジャンル入力部２１６によってジャンルが入力された場合には、算出された範囲から入力されたジャンルに属する施設を経由地点として抽出する。経由地点の抽出は、たとえば、地図情報記憶部２０１に記憶されている地図情報からおこなう。地点抽出部２１５は、具体的には、たとえば、図１に示したＲＯＭ１０２、ＲＡＭ１０３、ＨＤ１０５、ＣＤ／ＤＶＤ１０７などに記録されたプログラムを、ＣＰＵ１０１が実行することによってその機能を実現する。
【００３６】
ジャンル入力部２１６は、施設に関するジャンルの入力を受け付ける。施設に関するジャンルとは、各施設をその種類によって分類したものであり、たとえば「観光地」や「宿泊施設」、「グルメスポット」などが挙げられる。ジャンル内の各施設は、当該施設の代表点のデータと関連付けられている。このため、ジャンル入力部２１６によってジャンルを指定し、各ジャンルに属する施設を検索することができる。このジャンル入力部２１６によって指定されたジャンルに属する施設は、探索部２１８が探索する経路の経由地点にすることができる。ジャンル入力部２１６は、具体的には、たとえば、図１に示した入力Ｉ／Ｆ１０８によって、その機能を実現する。
【００３７】
方向入力部２１７は、移動体が移動する方向の入力を受け付ける。ここで、入力される方向とは、たとえば、ユーザが移動したい方位を示す情報である。ここで、移動する方向を指定する場合について説明する。図４は、移動する方向が指定された地図情報の一例を示す説明図である。図４において、たとえば、ユーザが出発地点から南方向へ移動する経路を探索したい場合、方向情報として「南」を入力すると、表示画面中、出発地点Ｓを基準として南方向の領域４００（図４中、ハッチングで表示）を経路探索範囲に限定することができる。この方向入力部２１７は、具体的には、たとえば、図１に示した入力Ｉ／Ｆ１０８によって、その機能を実現する。
【００３８】
探索部２１８は、取得された地点情報が示す移動体の現在地点を出発地点及び目的地点とし、取得された距離情報が示す走行距離を道なり距離とした往復経路を探索する。この探索部２１８によって、ユーザが目的地点を設定しなくても経路を探索することができる。なお、探索部２１８が探索する往復経路の走行距離は、道のり距離であっても良い。経路の探索は、たとえば、地図情報記憶部２０１に記憶されている地図情報を用いておこなう。ここで、具体的な経路探索処理について説明する。図５は、経路探索によって探索された推奨経路（例１）を示す説明図である。なお、図５において、取得された距離をＤとする。
【００３９】
図５において、出発地点Ｓは、取得部２１２によって取得された移動体の現在地点である。目的地点Ｇは、探索部２１８により、出発地点Ｓと同一地点に設定される。これにより、往復の経路を探索することができる。算出部２１４では、出発地点Ｓと距離Ｄとを取得した場合、出発地点Ｓを中心とする円Ｃを経路探索範囲Ａに設定する。円Ｃの半径ｒは、取得した距離Ｄ以下の長さ、たとえば取得した距離Ｄの半分の値（Ｄ／２）に設定することができる。
【００４０】
そして、地点抽出部２１５は、折り返し地点となる経由地点Ｐを設定する。経由地点Ｐは、経路探索範囲Ａ内において、円Ｃの境界近傍の交差点を示すノードや施設の代表点に設定することができる。往路と復路を同一経路にする場合、出発地点（＝目的地点）Ｓと折り返し地点となる経由地点Ｐとが設定されると、探索部２１８は、ダイクストラ法などを用いて出発地点Ｓから経由地点Ｐまでの経路を探索する。
【００４１】
ダイクストラ法では、探索経路候補の中から最短経路を推奨経路として探索するが、この探索部２１８では、出発地点Ｓから経由地点Ｐまでの経路候補の中から距離Ｄ／２に合致する経路を推奨経路Ｒとする。これにより、出発地点Ｓから経由地点Ｐを経由して再度出発地点Ｓ（目的地点Ｇ）に至るリンク長が、距離Ｄまたは距離Ｄに近い値となる経路（推奨経路Ｒ）を探索することができる。なお、推奨経路Ｒのリンク長が距離Ｄ／２に合致しない場合、距離Ｄ／２から所定範囲内のリンク長の経路を推奨経路Ｒとすることとしてもよい。距離Ｄ／２に合致せず、かつ、距離Ｄ／２から所定範囲内の推奨経路Ｒがない場合、経由地点Ｐを異なる地点に再設定して再度探索することとしてもよい。
【００４２】
つぎに、往路と復路が異なる経路探索にする場合について説明する。図６は、経路探索によって探索された推奨経路（例２）を示す説明図である。往路と復路とを異なるルートにして推奨経路Ｒを探索する場合、出発地点Ｓと経由地点Ｐとを通る直径ｌspを境界として、経路探索範囲ＡをＡ１、Ａ２に分割する。そして、地点抽出部２１５は、この分割範囲Ａ１、Ａ２にそれぞれあらたな経由地点Ｐ１、Ｐ２を設定する。
【００４３】
あらたな経由地点Ｐ１、Ｐ２は、折り返し地点となる経由地点Ｐと同様、交差点を示すノードや施設の代表点に設定することができる。そして、探索部２１８は、出発地点Ｓから経由地点Ｐ１までの経路Ｒ１、経由地点Ｐ１から経由地点Ｐまでの経路Ｒ２、経由地点Ｐから経由地点Ｐ２までの経路Ｒ３、経由地点Ｐ２から出発地点Ｓまでの経路Ｒ４の総リンク長が、距離Ｄと合致した場合、経路Ｒ１〜Ｒ４を推奨経路Ｒに決定することができる。
【００４４】
また、経路Ｒ１〜Ｒ４の総リンク長が距離Ｄに合致しない場合であっても、所定範囲内であれば推奨経路Ｒに決定することができる。なお、探索部２１８は、経路Ｒ１〜Ｒ４の総リンク長が距離Ｄに合致せず、かつ、距離Ｄから所定範囲内でもない場合、経由地点Ｐ、Ｐ１、Ｐ２を再設定することで推奨経路Ｒを再度探索することとしてもよい。
【００４５】
また、探索部２１８は、ジャンル入力部２１６によって指定されたジャンルに属する施設を経由する経路を探索することもできる。図７は、経路探索によって探索された推奨経路（例３）を示す説明図である。ジャンル入力部２１６によってジャンルが指定されると、地点抽出部２１５は、指定されたジャンルに属する施設を抽出する。ここでは、地点抽出部２１５によって抽出された施設をＱ１〜Ｑ３とする。
【００４６】
探索部２１８は、施設Ｑ１〜Ｑ３をそれぞれ往復するように経路を探索する。探索部２１８は、出発地点Ｓから施設Ｑ１〜Ｑ３それぞれ往復する経路を探索する。具体的には、探索部２１８は、出発地点Ｓから施設Ｑ１までを往復する経路Ｒ５、出発地点Ｓから施設Ｑ２までを往復する経路Ｒ６、出発地点Ｓから施設Ｑ３までを往復する経路Ｒ７を探索する。
【００４７】
また、旅行などによって観光地を訪れた場合、ユーザがその地に滞在する時間が限られているため、ジャンル：観光スポットに属する施設を検索することにより、当該観光地に滞在できる時間を入力するだけで、立ち寄りたい施設を往復する推奨経路Ｒを得ることができる。なお、推奨経路Ｒのリンク長が距離Ｄに合致しない場合、距離Ｄから所定範囲内のリンク長の経路を推奨経路Ｒとすることとしてもよい。
【００４８】
なお、探索部２１８は、具体的には、たとえば、図１に示したＲＯＭ１０２、ＲＡＭ１０３、ＨＤ１０５、ＣＤ／ＤＶＤ１０７などに記録されたプログラムを、ＣＰＵ１０１が実行することによってその機能を実現する。
【００４９】
経路抽出部２１９は、探索部２１８によって複数の往復経路が探索された場合に、当該複数の往復経路の中から１の経路を抽出する。経路抽出部２１９は、具体的には、探索部２１８によって、総リンク長が距離Ｄに合致する、もしくは、距離Ｄから所定範囲内にある推奨経路Ｒが複数探索された場合に、複数探索された推奨経路Ｒの中から任意の経路を抽出する。
【００５０】
より具体的には、経路抽出部２１９は、複数の推奨経路Ｒの中から、ランダムに経路を抽出する。また、探索経路について条件指定があった場合、その条件（以下、経路抽出条件という）にしたがって経路を抽出する。たとえば、「有料道路を使わない」という経路抽出条件である場合、有料道路を通過しない経路を抽出することができる。また、「車線数１の道路のみ」という経路抽出条件の場合、全経路にわたって車線数が１となる経路のみを抽出することができる。
【００５１】
なお、経路抽出部２１９は、具体的には、たとえば、図１に示したＲＯＭ１０２、ＲＡＭ１０３、ＨＤ１０５、ＣＤ／ＤＶＤ１０７などに記録されたプログラムを、ＣＰＵ１０１が実行することによってその機能を実現する。
【実施例】
【００５２】
（経路探索処理手順）
つぎに、上述した実施の形態の一実施例について説明する。図８および図９は、上述した実施の形態の一実施例にかかる経路探索処理手順を示すフローチャートである。図８において、まず、指示部２１１によって移動経路の探索が指示されたかを判断する（ステップＳ８０１）。指示された場合（ステップＳ８０１：Ｙｅｓ）、取得部２１２によって現在地点を示す現在地点情報を取得する（ステップＳ８０２）。一方、指示されない場合は（ステップＳ８０１：Ｎｏ）、ステップＳ８０１に戻り、待機を継続する。
【００５３】
つぎに、入力部２１３によって距離が入力されたかを判断する（ステップＳ８０３）。距離が入力された場合（ステップＳ８０３：Ｙｅｓ）、ステップＳ８０７に移行する。距離が入力されなかった場合（ステップＳ８０３：Ｎｏ）、入力部２１３によって時間が入力されたかを判断する（ステップＳ８０４）。
【００５４】
時間が入力された場合（ステップＳ８０４：Ｙｅｓ）、取得部２１２は、移動体の移動速度情報を取得する（ステップＳ８０５）。具体的には、ユーザからの入力、移動速度センサ１１８などによる検出、ＨＤ１０５、ＣＤ／ＤＶＤ１０７などの記録媒体に記録された移動速度の読み出しなどによって移動速度情報を取得する。そして、ステップＳ８０４において入力された時間と、ステップＳ８０５において取得された移動速度情報とに基づいて、距離を算出する（ステップＳ８０６）。
【００５５】
つぎに、ステップＳ８０２において取得された現在位置情報、およびステップＳ８０３で入力された距離またはステップＳ８０６において算出された距離に基づいて、算出部２１４によって往復可能な範囲を算出する（ステップＳ８０７）。
【００５６】
つぎに、ジャンル入力部２１６によって施設に関するジャンルが入力されたかを判断する（ステップＳ８０８）。ジャンルが入力された場合（ステップＳ８０８：Ｙｅｓ）、地点抽出部２１５は、施設の検索をおこない（ステップＳ８０９）、検索された施設を経由地点として設定する（ステップＳ８１０）。また、ジャンルが入力されない場合（ステップＳ８０８：Ｎｏ）、地点抽出部２１５は、経由地点の抽出をおこなう（ステップＳ８１１）。
【００５７】
そして、探索部２１８は、ステップＳ８１０において設定された経由地点、またはステップＳ８１１において抽出された経由地点を経由する往復経路を探索し（ステップＳ８１２）、図９のステップＳ９０１に移行する。図９の説明に移り、往復経路の探索（ステップＳ８１２）において、複数の経路が探索された場合（ステップＳ９０１：Ｙｅｓ）、経路の抽出指示があったときに（ステップＳ９０２：Ｙｅｓ）、経路抽出部２１９により、複数の経路の中から任意の経路を抽出する（ステップＳ９０３）。そして、抽出した経路を表示部２０２に表示する（ステップＳ９０４）。
【００５８】
また、複数の経路が探索されなかった場合（ステップＳ９０１：Ｎｏ）、または、経路の抽出指示がない場合（ステップＳ９０２：Ｎｏ）、探索された経路をすべて表示部２０２に表示する（ステップＳ９０５）。これにより、一連の処理を終了する。
【００５９】
このように、本実施例によれば、ユーザによって目的地点を設定せずに、移動したい距離を入力するだけで、経路の探索をおこなうことができる。特に、出発地点と目的地点が同じ地点となる往復経路や周回経路の探索を簡単におこなうことができる。
【００６０】
また、移動したい距離のかわりに移動したい時間を入力するだけで、経路探索をおこなうこともできる。これにより、ユーザが直感的に距離感覚を認識できない場合であっても、移動時間を入力することにより、経路を探索することができる。
【００６１】
また、経由地点を設定することにより、ユーザが知っている地点や立ち寄りたい地点を経由するように経路を探索することができる。また、ジャンル指定によって、経由したい施設を経由するように経路を探索することもできる。これにより、出発地点周辺の土地勘がなくても経路を探索することができる。特に移動先で観光施設がわからない場合には、観光スポットでジャンル指定をおこなうことにより、観光スポットに関する施設を経由するように経路を探索することができる。
【００６２】
また、任意の経路抽出条件によって探索された経路を抽出できるので、検出された経路から、ユーザの希望する条件に合った経路を抽出することができる。特に、経路抽出条件として、既に抽出された経路以外の経路を抽出すれば、毎回異なった経路を探索することができる。また、散歩やジョギングなど、定期的におこなう移動であっても、ユーザはあらたな経路を探索することができる。
【００６３】
つぎに、他の実施例にかかる経路探索処理手順について説明する。図１０は、他の実施例にかかる経路探索処理手順を示すフローチャートである。この実施例では、経由する施設に滞在する滞在時間を考慮した経路探索をおこなうことができる。図１０において、まず、入力部２１３により、移動したい時間を入力する（ステップＳ１００１）。つぎに、ジャンル入力部２１６により、ジャンルを指定する（ステップＳ１００２）。
【００６４】
つぎに、地点抽出部２１５は、指定されたジャンルに属する施設を検索する（ステップＳ１００３）。具体的には、図５〜図７に示した円Ｃ内から、ステップＳ１００２で指定されたジャンルに属する施設を検索する。つづいて、検索された施設における滞在時間を取得する（ステップＳ１００４）。つぎに、ステップＳ１００１で入力された時間から滞在時間を減算する（ステップＳ１００５）。つづいて、移動体の移動速度を取得する（ステップＳ１００６）。
【００６５】
そして、減算結果と移動速度に基づいて距離を算出する（ステップＳ１００７）。具体的には、ステップＳ１００５の減算結果と、ステップＳ１００６で取得した移動速度とを掛け合わせることによって、距離を算出する。最後に、ステップＳ１００７で算出された距離に基づいて、検索された施設を経由するように経路を探索する（ステップＳ１００８）。そして、図９に示すステップＳ９０１に移行する。
【００６６】
このように、この実施例によれば、経由地点に滞在する時間を考慮して経路を探索することができる。たとえば、観光地において、限られた時間内で出発地点周辺の観光スポット（観光施設）に立ち寄りたい場合、観光施設の滞在時間を除いた移動時間から、観光施設を経由するように経路を簡単な操作によって探索することができる。
【００６７】
また、滞在時間を地図情報に含まれる平均滞在時間とすれば、ジャンルの指定によって検索された観光施設の滞在時間を取得することができる。このため、ユーザは経由する観光施設の滞在時間がわからなくても、その観光施設を見て回るのに十分な滞在時間を確保することができ、好適な観光プランを作成することができる。
【００６８】
以上説明したように、経路探索装置、経路探索方法および経路探索用プログラムによれば、散歩コース、ジョギングコース、マラソンコース、ドライブ、観光コースなど目的地点の設定を必要としない経路探索を簡単な操作でおこなうことができる。
【００６９】
なお、本実施の形態で説明した経路探索方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネット等のネットワークを介して配布することが可能な伝送媒体であってもよい。
【図面の簡単な説明】
【００７０】
【図１】この発明の実施の形態にかかる経路探索装置のハードウェア構成を示すブロック図である。
【図２】この発明の実施の形態にかかる経路探索装置の機能的構成を示すブロック図である。
【図３】表示部に表示される地図情報の一例を示す説明図である。
【図４】移動する方向が指定された地図情報の一例を示す説明図である。
【図５】経路探索によって探索された推奨経路（例１）を示す説明図である。
【図６】経路探索によって探索された推奨経路（例２）を示す説明図である。
【図７】経路探索によって探索された推奨経路（例３）を示す説明図である。
【図８】実施の形態の一実施例にかかる経路探索処理手順を示すフローチャート（その１）である。
【図９】実施の形態の一実施例にかかる経路探索処理手順を示すフローチャート（その２）である。
【図１０】他の実施例にかかる経路探索処理手順を示すフローチャートである。
【符号の説明】
【００７１】
１００  経路探索装置
２０１  地図情報記憶部
２０２  表示部
２１１  指示部
２１２  取得部
２１３  入力部
２１４  算出部
２１５  地点抽出部
２１６  ジャンル入力部
２１７  方向入力部
２１８  探索部
２１９  経路抽出部
【図１】
2006145408.tif 000003
【図２】
2006145408.tif 000004
【図３】
2006145408.tif 000005
【図４】
2006145408.tif 000006
【図５】
2006145408.tif 000007
【図６】
2006145408.tif 000008
【図７】
2006145408.tif 000009
【図８】
2006145408.tif 000010
【図９】
2006145408.tif 000011
【図１０】
2006145408.tif 000012