(57)【特許請求の範囲】
【請求項１】
歩行者用の経路探索に用いるために歩行者が通行する通路をリンクおよびノードのネットワークで表した経路探索データを生成するデータ生成方法であって、
コンピュータが実行する工程として、
前記各領域について、車両の経路探索に用いるために車両用の通路をリンク、ノードのネットワークで表した所定の道路ネットワークデータを利用して整備されるべき低密度整備領域と、前記道路ネットワークデータとは別個に整備されるべき高密度整備領域のいずれに当たるかを指定する指定データを入力する指定データ入力工程と、
前記低密度整備領域について前記経路探索データを生成する低密度整備工程と、
前記高密度整備領域について前記経路探索データを生成する高密度整備工程とを備え、
前記低密度整備工程は、
前記道路ネットワークデータを読み込む工程と、
前記道路ネットワークデータに基づいて、歩行者が通行する通路の形状および属性を表すリンクデータ、および前記リンクデータの端点または接続点の位置および属性を表すノードデータとを生成する工程と、
前記低密度整備領域と高密度整備領域の境界を含む所定範囲において、両領域のリンクデータを接続するためのマージ処理を行うマージ処理工程とを有し、
前記高密度整備工程は、
前記道路ネットワークデータとは別に指示された形状および属性に基づいて、前記リンクデータおよびノードデータを生成する工程を有し、
前記マージ処理工程は、
前記道路ネットワークに基づいて設定されたリンクデータ上に、前記接続用のノードとなる接続ノードを設定し、前記リンクデータを分断する工程と、
前記分断されたリンクデータのうち、前記接続ノードと逆の端が他のリンクデータと接続されなくなる側のリンクデータを削除する工程と、
前記高密度整備領域で設定されたリンクデータの端点に存在するノードと、前記接続ノードとを連結する接続リンクを設定する工程とを有するデータ生成方法。
【請求項２】
請求項１記載のデータ生成方法であって、
前記マージ処理工程は、前記接続リンクとその両端に接続される各リンクとのなす角が鈍角となるよう前記接続ノードを設定するデータ生成方法。
【請求項３】
請求項１または２いずれか記載のデータ生成方法であって、
前記高密度整備領域および低密度整備領域の少なくとも一方においては、前記リンクデータおよびノードデータに対して、絶対的または相対的な高さ値を表す階層データが付されており、
前記マージ処理工程は、前記高さ値が異なるリンクデータ間の接続時には、
前記マージ処理の前処理として、前記リンクデータの端点のノードまたは前記接続ノードのいずれかと同一の位置で、前記マージ処理を行うために予め設定された高さ値を階層データとして有する階層移動ノードを設定し、該階層移動ノードと前記いずれかのノードとを結ぶ階層移動リンクを設定する工程を行い、
前記マージ処理は、前記階層移動ノードを用いて行うデータ生成方法。
【請求項４】
請求項１〜３いずれか記載のデータ生成方法であって、
前記マージ処理工程は、前記接続ノードに対し、他のノードと識別するための識別データを付して管理するデータ生成方法。
【請求項５】
請求項１〜４いずれか記載のデータ生成方法であって、
前記低密度整備工程および高密度整備工程の少なくとも一方は、前記各リンクデータおよびノードデータが前記高密度整備領域および低密度整備領域のいずれに属するかを判別するための判別データを設ける工程を有するデータ生成方法。

【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、歩行者用経路案内装置で用いる経路探索データのデータ構造に関する。
【背景技術】
【０００２】
歩行者を対象として、指定された出発地から目的地に至る経路を案内する歩行者用の経路案内装置が提案されている。これらの装置では、経路探索および案内に際し、歩行者が通行する通路を、リンクおよびノードで表したネットワークデータが用いられる。車両用の経路案内装置等と異なり、このネットワークデータには、歩道橋や階段など、車両で通行不能な通路も含まれている（特許文献１、２参照）。
【０００３】
歩行者用の経路案内装置では、歩行者の移動能力や安全性などを考慮した経路探索が望まれている。例えば、車いすの利用者に対しては、階段や坂道を避けた経路を探索し、案内することが好ましい。また、子供に対しては、車の通行の少ない通路、歩道が整備された通路を案内することが好ましい。特許文献１、２では、こうした要望に応えるため、経路探索データに対して、階段やスロープなどの状態、歩道などの整備状況を属性データとして設定し、経路探索に活用する技術も提案されている。
【０００４】
【特許文献１】特開２００１−２７５４４号公報
【特許文献２】特開２００３−１２１１９１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来技術で提案されている種々の経路探索も、歩行者用に十分な属性情報を有する経路探索データが整備されていることが前提とされている。しかし、歩行者用の経路探索データの整備に要する負荷は、車両用の経路探索データ（以下、道路ネットワークと呼ぶ）の整備に要する負荷よりも非常に大きいのが実情である。例えば、道路ネットワークにおいては、車が通行できる道路のみを対象とすればよいのに対し、歩行者用の経路探索データでは、車両が通行できない程の細い道、横断歩道や階段、更には建物や地下街の経路、公園敷地内の遊歩道など、整備対象となる通路が膨大に存在するからである。また、一本のリンクで表される程度の車道であっても、歩行者用の経路探索データでは、車道の両側に設けられた歩道に対応させて２条のリンクを用意する必要が生じる場合もある。
【０００６】
従来、歩行者用の経路探索データは、都心部などを中心に整備されていた。従って、現実には、歩行者用の経路探索データが整備されている領域は、離れた箇所に散在しているに過ぎないのが実状であった。歩行者がある都心部から別の都心部に移動する場合など、広範囲にわたる経路探索を実現するためには、経路探索データが整備されている領域を広げる必要が生じるが、上述のような詳細なデータを広範囲にわたって整備するためには膨大な労力を要することとなり、現実には非常に困難であった。この結果、従来は、経路探索データが整備されている限られた領域内での経路探索をすることができるに過ぎず、広範囲にわたる経路探索は実用化までには至っていなかった。
【０００７】
こうした背景から、歩行者用の経路案内においては、経路探索データの整備負荷を軽減しつつ、歩行者の移動能力などの経路案内に対する要望に応えるための技術が要望されていた。本発明は、かかる課題を解決するための経路探索データのデータ構造を提示するとともに、該経路探索データを用いた経路探索、案内技術を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明における歩行者用の経路探索用のコンピュータプログラムが用いる経路探索データのデータ構造について説明する。本発明では、経路探索データの整備対象となる領域（以下、「整備領域」と呼ぶこともある）を、低密度整備領域、高密度整備領域を含む２種以上の領域に分けておく。低密度整備領域とは、車両の経路探索に用いるために車両用の通路をリンク、ノードのネットワークで表した所定の道路ネットワークデータを利用して整備されるべき領域である。高密度整備領域とは、道路ネットワークデータとは別個に整備されるべき領域である。本明細書において、領域とは、複数のリンクおよびノードで表される程度の広さを有する範囲を意味する。低密度整備領域、高密度整備領域は、任意の大きさ、サイズで設定可能である。経路探索データは、整備対象となる領域を、予め規定サイズのメッシュに分けて整備することが通常であるため、例えば、低密度整備領域、高密度整備領域をこのメッシュ単位で定義するようにしてもよい。
【０００９】
本発明の経路探索データは、低密度整備領域および高密度整備領域のそれぞれについて、歩行者が通行する通路の形状および属性を表すリンクデータと、リンクデータの端点または接続点の位置および属性を表すノードデータとを有している。リンクデータおよびノードデータのデータ構造は、両領域で共通でもよいし、異なっていてもよい。ただし、データ構造を共通化した方が、データ生成、経路探索、経路案内の各処理の一部または全部を共通化することができる利点がある。
【００１０】
低密度整備領域では、リンクデータおよびノードデータは、道路ネットワークデータを利用して整備される。従って、リンクデータおよびノードデータの少なくとも一部は、道路ネットワークデータに含まれるリンクデータおよびノードデータと形状または位置において一致、平行移動などの所定の関係にある。このように、低密度整備領域では、道路ネットワークデータを利用することによって、経路探索データは軽い負荷で整備することが可能となる。
【００１１】
一方、高密度整備領域では、リンクデータおよびノードデータは、道路ネットワークデータに依存せずに整備される。従って、リンクデータおよびノードデータには、歩行者用の通路を表すデータとして、道路ネットワークデータには含まれないリンクデータおよびノードデータが含まれる。かかるリンクデータ、ノードデータとしては、例えば、階段や横断歩道、建物内や地下街、公園敷地内の通路などが挙げられる。高密度整備領域では、このように歩行者の経路案内に固有のデータも整備されるため、歩行者の要望に応じた経路案内を実現することが可能となる。
【００１２】
本発明の経路探索データは、上述のように、低密度整備領域と高密度整備領域の２種類のデータを併用している。この結果、本発明によれば、経路探索データの整備負荷を軽減しつつ、高密度整備領域では、歩行者の要望に応じた経路案内を実現することができる。例えば、都会の中心部など、階段やペディストリアンデッキその他の立体的な構造物が存在する領域を高密度整備領域として指定し、これらの立体的な構造物が比較的少ない郊外の領域を低密度整備領域として指定することにより、本発明のデータ構造の有用性を発揮させることが可能である。
【００１３】
高密度整備領域と低密度整備領域は、種々の配置で設定することができる。例えば、整備領域を２分し、一方を高密度整備領域、他方を低密度整備領域とする単純な配置としてもよい。また、高密度整備領域は、整備領域内に、低密度整備領域をはさんで複数箇所配置するようにしてもよい。一例として、都市中心部を高密度整備領域とし、都市間の郊外の領域を低密度整備領域とする配置を採ることができる。かかる配置では、高密度整備領域を散在させることができるため、広範囲のデータを低い負荷で整備することができるとともに、経路探索も軽い処理負荷で行うことが可能となる利点がある。この配置において、高密度整備領域と低密度整備領域は必ずしも直接接している必要はない。高密度整備領域、低密度整備領域のいずれとも異なる第３の領域が介在していても構わない。本明細書で、「はさむ」とは、高密度整備領域の図心同士を結ぶ線上に、低密度整備領域の少なくとも一部が存在する状態をいう。この定義には、複数存在する高密度整備領域のいずれかの周囲を低密度整備領域が取り囲む状態も含まれることとなる。
【００１４】
本発明において、低密度整備領域は、道路ネットワークデータを利用して経路探索データが整備される領域である。こうして設定されたデータに加えて、歩道橋など、道路ネットワークデータに存在しないリンクデータやノードデータを追加しても差し支えない。低密度整備領域を更に細分化し、上述の追加を許容する領域と、上述の追加を行わない領域（以下、この領域を「流用領域」と呼ぶ）に分けても良い。流用領域では、道路ネットワークデータを利用するだけで機械的に経路探索データを整備することが可能となる。従って、流用領域を設けることにより、経路探索データの整備負荷を更に軽減させることができる利点がある。
【００１５】
本発明のように、領域に分けて経路探索データを整備する場合には、両領域の境界部分で各領域のデータの整合性を確保することが望まれる。この整合性を確保するため、例えば、低密度整備領域と高密度整備領域の境界を含む所定範囲（以下、この範囲を「接続領域」と称する）において、道路ネットワークデータに含まれるリンクデータの一部を切断した形状のリンクデータ（以下、「修正リンクデータ」と称する）を設けてもよい。この修正リンクデータの端点には、更に、ノードデータが設けられることになる。このように道路ネットワークデータに含まれるリンクデータを接続領域に置いて適宜、切断することによって、低密度整備領域、高密度整備領域のそれぞれのリンクデータを違和感なく接続することができる。
【００１６】
上述の修正リンクデータの端点は、高密度整備領域のリンクデータと必ずしも１対１に接続される必要はない。例えば、修正リンクデータに高密度整備領域の複数のリンクデータを接続するようにしてもよい。こうすることにより、接続領域でのノード数を低減させることができ、データ構造を簡素化することができる。また、道路の両端を歩道が通っている道路を考えると、この道路は、低密度整備領域では車道に対応した１本のリンクで表され、高密度整備領域では両側の２本の歩道に対応する２本のリンクで表されることがあり、両者の接続領域では、歩道に対応する２本のリンクを車道に対応する１本のリンク（これが修正リンクデータとなる）に接続させるのが、最も自然な接続形状となる。このように、複数のリンクデータを修正リンクデータに接続させるデータ構造を採れば、現実の道路の状態を適切に経路探索データに反映させることができるという利点もある。
【００１７】
本発明の経路探索データにおいては、各リンクデータおよびノードデータが高密度整備領域および低密度整備領域のいずれに属するかを判別するための判別データを設けてもよい。判別データは、各リンクデータおよびノードデータに付してもよいし、領域単位で付しても良い。こうすることで、後述する通り、各領域の特性を活かした経路探索や経路案内を実現することができる。
【００１８】
本発明の経路探索データは、一例として、次に示すデータ生成方法によりコンピュータを用いて生成することができる。まず、各領域が低密度整備領域、高密度整備領域のいずれに当たるかを指定する指定データを入力する。この指定データは、予めテーブルなどの形式で用意しておくようにしてもよいし、対話方式等によってオペレータが逐一入力するようにしてもよい。コンピュータは、この指定データに従って、低密度整備領域、高密度整備領域のそれぞれに応じた方法で経路探索データを生成する。
【００１９】
具体的には、低密度整備領域については、まず、経路探索データの基礎となるべき道路ネットワークデータを読み込む。そして、この道路ネットワークデータに基づいて、歩行者用の経路探索データに含まれるべきリンクデータおよびノードデータを生成する。リンクデータの形状およびノードデータの位置は、道路ネットワークデータの形状および位置をそのまま用いたり、予め設定された距離だけ平行移動したりするなどの方法で設定することができる。属性については、道路ネットワークデータに含まれている属性を用いることができる。道路ネットワークデータに含まれていない情報については、予め設定されたデフォルト値を入れても良いし、オペレータ等からの指示や別途用意された属性データを読み込んで設定してもよい。これらのデータを、予め設定されたデータフォーマットで格納することによって、低密度整備領域の経路探索データを生成することができる。
【００２０】
高密度整備領域については、道路ネットワークデータとは別に指示された形状および属性に基づいて、リンクデータおよびノードデータを生成する。この形状等は、対話形式などの方法でオペレータが指定するようにしてもよいし、予め別個に用意されたデータベースから読み込むようにしてもよい。オペレータが指定する場合には、例えば、該当する高密度整備領域の地図をディスプレイ上に表示し、マウス等のポインティングデバイスで、リンクデータおよびノードデータの位置を指定する形式のインタフェースを用いることが好都合である。リンクデータ等の指定時の参照用の情報として、地図をディスプレイ上に表示する際に、道路ネットワークデータに含まれるリンクデータおよびノードデータを併せて表示するようにしてもよい。
【００２１】
先に説明した通り、低密度整備領域についても、高密度整備領域と同様の方法で、歩道橋や階段など、道路ネットワークデータに含まれていない種々のリンクデータを追加可能としてもよい。
【００２２】
経路探索データを生成する際には、先に説明した接続領域においてマージ処理、即ち低密度整備領域と高密度整備領域のリンクデータ同士を接続するための処理を行うことが望ましい。具体的には、高密度整備領域で設定されたリンクデータのうち、いずれのリンクとも接続されていない端点を有するもの（以下、「終端リンク」と呼ぶ）を処理対象とし、その端点から、低密度整備領域内のリンクデータのいずれかの部位に接続される接続リンクを設定するための処理となる。
【００２３】
マージ処理においては、低密度整備領域において、道路ネットワークに基づいて設定されたリンクデータ（以下、「道路リンク」と称する）上に、接続用のノードとなる接続ノードを設定する。道路リンクは、この接続ノードで分断されることになる。この処理の対象となる道路リンクは、低密度整備領域と高密度整備領域とにまたがって定義されていることが多い。このような場合には、分断された道路リンクの一方は低密度整備領域に全体が含まれるリンクとなり、他方は少なくとも一部が高密度整備領域に含まれるリンクとなる。また、処理対象となる道路リンクが２つの領域にまたがって定義されているか否かに関わらず、分断されたリンクデータのうち、一方は、接続ノードと逆の端が他のリンクデータと接続されない状態のリンク、即ち、そのリンクを経路として案内すれば、行き止まりとなってしまう状態のリンク（以下、このようなリンクを「孤立リンク」と称する）となっている。マージ処理では、このように少なくとも一部が高密度整備領域に含まれるリンク、または孤立リンクを不要なデータとして削除する。そして、残された一方のリンクの端点となる接続ノードと、高密度整備領域で設定されたリンクデータ、即ち終端リンクの端点に存在するノードとを接続リンクと称する新たなリンクデータで接続する。不要なリンクの削除処理、および接続リンクによる接続処理は、いずれを先に行っても良い。
【００２４】
マージ処理において、接続ノードを設定する道路リンクは種々の方法で選択することができる。例えば、地図上に道路を描画する際に用いられる道路ポリゴンが定義されている時には、終端リンクと同一の道路ポリゴン内に含まれる道路リンクを選択してもよい。また、終端リンクの端点から、最短距離にある道路リンクを選択してもよい。ただし、終端リンクの端点と道路リンクとの間に、建物などの地物が存在する場合には、その道路リンクは選択の対象から外すことが好ましい。
【００２５】
道路リンク上の接続ノードの位置決定も種々の方法を採ることができる。例えば、終端リンクの端点から、道路リンクにおろした垂線の足に接続ノードを設けるようにしてもよい。また、接続リンクとその両端に接続される各リンクとのなす角が鈍角となるよう接続ノードを設定するようにしてもよい。例えば、予めなす角を規定しておいてもよいし、終端リンクの端点から道路リンクにおろした垂線の足と道路リンクのノードとの間を所定比で内分する位置に設けるようにしてもよい。なす角が鈍角となるように接続ノードを設定する場合には、接続領域における案内経路が、不自然に屈曲することを回避できるという利点がある。
【００２６】
本発明では、高密度整備領域および低密度整備領域の少なくとも一方においては、リンクデータおよびノードデータに対して、絶対的または相対的な高さ値を表す階層データを付しても良い。絶対的な高さ値としては、例えば、通路の標高などを直接用いることができる。相対的な高さ値としては、例えば、地上の道路をレベル「０」、高架道路をレベル「１」、更に高い位置にある高架道路をレベル「２」、地下または半地下道路をレベル「−１」というように、それぞれの道路の上下関係を知ることができる程度に量子化された値を用いることができる。階層データは、階段の上り下りなどの上下動を伴うか否かの判断に関与するため、歩行者用の経路案内装置にとっては有用なデータである。この階層データを備えることにより、歩行者の要望により適した経路を案内することが可能となる利点がある。
【００２７】
このように階層データをもたせた場合には、マージ処理において、高さ値が異なるリンクデータ間の接続が要求される場合がある。かかる場合には、マージ処理の前処理として、接続対象となるリンクデータの高さ値を統一する処理を行うことが好ましい。かかる処理として、終端リンクの端点のノードまたは接続ノードのいずれか選択されたノードから、階層を移動するための鉛直方向のリンク、即ち階層移動リンクを設定する方法を採ることができる。まず、上述の選択されたノードと同一の位置に、高さ値だけ異なる階層移動ノードを設定する。階層移動ノードの高さ値は、マージ処理を行うために予め設定された高さ値を用いる。この高さ値は、低密度整備領域における道路リンクまたは高密度整備領域における端点リンクのいずれかの値を用いるものとしてもよい。そして、この階層移動ノードと上述の選択されたノードとを結ぶリンクを階層移動リンクとして設定する。この処理によって、接続すべきリンクデータの端点はそれぞれ同一の高さ値を有することになるから、マージ処理を容易に行うことができる。
【００２８】
以上で説明した方法で、マージ処理を行う際には、接続ノードに対し、他のノードと識別するための識別データを付して管理することが好ましい。こうすることにより、マージ処理の過程で、１本の道路リンクに接続可能な終端リンクが複数存在する場合には、共通の接続ノードを利用することができ、経路探索データのネットワーク構造を簡素化することができる。
【００２９】
また、先に説明した通り、経路探索または経路案内時に有効に活用し得るデータとして、各リンクデータおよびノードデータが高密度整備領域および低密度整備領域のいずれに属するかを判別するための判別データを経路探索データ中に含めても良い。
【００３０】
本発明の経路探索装置は、経路探索の出発地点および目的地点を含む探索条件を入力すると、以上で説明した経路探索データを参照することにより、この探索条件に適合する経路を探索し、その結果を出力する装置として構成することができる。探索条件には、更に、通行の負荷および安全性の少なくとも一部に関する要望を含めても良い。通行の負荷に関する要望としては、例えば、階段や坂道を避けるか否かについての要望、安全性に関する要望としては、ガードレール付きの歩道を優先するという要望などが挙げられる。経路探索は、ダイクストラ法など既知の方法を適用可能である。この経路探索装置によれば、低密度整備領域、高密度整備領域に分けて用意された経路探索データを用いるため、高密度整備領域付近では、階段や歩道橋なども含めた詳細な経路を探索することができ、低密度整備領域では、道路リンクに対応する概略の経路を迅速に探索することができる。
【００３１】
本発明において、経路探索データが判別データを有している場合には、判別データに基づき経路探索過程の経路がいずれの領域にいるかを判断し、その結果に応じて、経路探索の方法を切り換えても良い。例えば、低密度整備領域にいると判断される場合は、高密度整備領域よりも要望反映度、即ち要望を反映させる程度を低下させて経路探索を行う態様を採ることができる。要望反映度を低下させる方法としては、例えば、ユーザから要望された事項の少なくとも一部を無視したり軽視したりする方法が挙げられる。ユーザから階段を避けたい旨の要望がある場合でも階段か否かを判断することなく経路探索するという態様がこれに該当する。このように要望反映度を低下させることにより、低密度整備領域における経路探索の所要時間をより短縮することができる。低密度整備領域は、高密度整備領域に比較して経路探索データに含まれている情報量が少ないため、高密度整備領域ほど十分にユーザの要望を反映した経路探索を行うことはできないため、予めユーザからの要望を無視または軽視したとしても、これらを考慮する場合と同様の結果が得られる可能性が高い。従って、上記態様によれば、経路探索の結果に与える影響を抑制しつつ、処理時間の短縮することができる利点がある。
【００３２】
本発明の経路案内装置は、探索された経路データを入力し、経路探索データを参照して、歩行者の現在位置に応じた経路案内を行う装置である。経路案内装置は、現在位置に応じて、地図および経路を表示するための表示制御部を有している。経路の案内は、経路案内装置自体に設けられたディスプレイに表示するものとしてもよいし、経路案内装置とネットワーク等で接続された端末のディスプレイに表示するものとしてもよい。後者の態様では、表示制御部の機能は、表示用の制御データの生成および出力となる。
【００３３】
経路探索データが、先に説明した判別データを有している場合には、この判別データに基づき、現在位置が低密度整備領域および高密度整備領域のいずれに属するかを判断し、その判断に応じて表示の態様を変化させてもよい。例えば、表示される画面の背景色を変化させたり、地図の詳細度や経路の表示色・パターンを変化させたりする方法が挙げられる。画面の一部に、低密度整備領域、高い密度整備領域のいずれに属するかを示す案内表示を行っても良い。このように領域に応じて表示を変化させることにより、現在位置がいずれの領域に属しているのかをユーザに知らせることができる。この結果、要望反映度が低い経路が案内されたとしても、ユーザはその理由を理解することができ、経路の再探索を試みるなどの無用の操作を回避することができる。
【００３４】
本発明は、上述の特徴を全て備えている必要はなく、上述の特徴は、適宜、一部を省略したり、組み合わせたりすることが可能である。上述した経路探索データの生成方法の発明については、経路探索データの生成装置や、経路探索データを生成するためのコンピュータプログラムなどの態様を採ることができる。また、経路探索装置、経路案内装置は、コンピュータによってこれらの機能を実行する経路探索方法、経路案内方法や、コンピュータプログラムなどの態様を採ることもできる。
【００３５】
また、本発明は、経路探索データや上述の各コンピュータプログラムを記録した記録媒体として構成してもよい。記録媒体としては、フレキシブルディスクやＣＤ−ＲＯＭ、光磁気ディスク、ＩＣカード、ＲＯＭカートリッジ、パンチカード、バーコードなどの符号が印刷された印刷物、コンピュータの内部記憶装置（ＲＡＭやＲＯＭなどのメモリ）および外部記憶装置等、コンピュータが読取り可能な種々の媒体を利用できる。
【発明を実施するための最良の形態】
【００３６】
本発明の実施例について以下の順序で説明する。
Ａ．システム構成：
Ｂ．経路探索データのデータ構造：
Ｃ．地図ＤＢ生成処理：
Ｄ．経路探索処理：
Ｅ．経路案内処理：
Ｆ．第２実施例：
【００３７】
Ａ．システム構成：
図１は実施例としての経路案内システムの構成を示す説明図である。経路案内システムは、ユーザから指定された出発地から目的地に至る歩行者用の経路を探索し、現在位置に応じて、地図上に経路を表示するシステムである。経路案内システムは、携帯電話を利用した端末１００、経路探索および案内の主要な機能を奏するサーバ２００、および経路探索に要求される地図ＤＢ２５０を整備するためのデータ生成装置３００から構成される。端末１００とサーバ２００とは、無線のインターネットなどのネットワークＩＮＴで接続されており、サーバ２００とデータ生成装置３００とはＬＡＮなどのネットワークＮＥＴで接続されている。端末１００としては、携帯電話に限らず、いわゆる車両用のナビゲーション装置や、ＰＤＡ、ネットワーク通信機能を有する汎用のパーソナルコンピュータなども用いることができる。また、データ生成装置３００が汎用のパーソナルコンピュータで構成される例を示すが、この他、サーバ２００にデータ生成装置３００としての機能を組み込むなど、種々の態様で構成することができる。
【００３８】
図中に、端末１００、サーバ２００およびデータ生成装置３００のそれぞれの機能ブロックを示した。本実施例では、これらの各機能ブロックは、それぞれの装置に所定のコンピュータプログラムをインストールすることによって、ソフトウェア的に構成されている。各機能ブロックの少なくとも一部は、ＡＳＩＣ等によってハードウェア的に構成することもできる。
【００３９】
端末１００では、主制御部１１０の制御下で図示する機能ブロックが稼働する。コマンド入力部１３０は、ユーザの操作に応じてコマンドを入力する。ＧＰＳ１４０は、グローバルポジショニングシステム（Global Positioning System）であり、端末１００の現在位置を計測する。コマンドとしては、例えば、ＧＰＳ１４０で検出された現在位置、経路探索の目的地の指定、探索条件の指定などが挙げられる。通信部１２０は、ネットワークＩＮＴを介した通信を行う。端末１００からサーバ２００に送信される情報としては、上述のコマンドが含まれ、サーバ２００から端末１００への情報としては、経路探索の結果が含まれる。表示制御部１５０は、端末１００の画面表示を制御する。画面表示には、コマンドを入力するための画面、経路案内用の画面などが含まれる。
【００４０】
サーバ２００は、端末１００からのコマンドに応じて経路探索を行う。また、端末１００の現在位置に応じて、地図上に経路を表した経路案内用の画面を表示するための表示制御データを端末１００に出力する。サーバ２００は、地図ＤＢ２５０を参照して、これらの機能を実現する。地図ＤＢ２５０には、経路探索用に歩行者の通路をノード・リンクのネットワークで表したデータ（以下、「経路探索データ」と称することもある）、および地図を表示するためのポリゴンデータ（以下、「描画データ」と称することもある）を格納している。先に説明した通り、地図ＤＢ２５０は、データ生成装置３００によって整備される。サーバ２００と、端末１００およびデータ生成装置３００とは、それぞれネットワークＩＮＴ、ＮＥＴを介して接続されており、これらのネットワークＩＮＴ、ＮＥＴを介した通信は、通信部２１０によって制御される。
【００４１】
経路探索部２３０は、ユーザからのコマンドに応じて経路探索を実行する。地図ＤＢ参照部２６０は、この経路探索に必要な経路探索データを地図ＤＢ２５０から読み出し、経路探索部２３０に受け渡す。経路探索部２３０には、経路探索を行うエンジンとして、詳細サーチ部２３２、簡易サーチ部２３４の２種類が用意されている。詳細サーチ部２３２は、探索される経路に対するユーザの要望、例えば、階段や坂道を回避したいといった移動負荷に関する要望や、ガードレールや街灯が整備された通路を優先したいといった安全性に関する要望などを考慮した経路探索を実行する。
【００４２】
この要望は、経路探索時にユーザが端末１００から逐一指定することも可能ではあるが、本実施例では、予めユーザＤＢ２４０に登録しておくものとした。詳細サーチ部２３２は、経路探索時には、ユーザＩＤや氏名などの識別情報に基づいて、ユーザＤＢ２４０を参照し、経路探索に対する要望事項の設定データを読み取り、経路探索を実行する。経路探索に対する要望事項は、ユーザＤＢ２４０に登録された設定データを一旦、端末１００に送信し、ユーザがこれを修正して、詳細サーチ部２３２が使用すべき最終的な探索条件を設定するという方法を採っても良い。
【００４３】
簡易サーチ部２３４は、移動負荷や安全性に対するユーザの要望を考慮せずに経路探索を行う。距離優先モード、時間優先モードなど既知の探索モードの選択は可能である。本実施例では、このように簡易サーチ部２３４がユーザの要望を無視する場合を例示するが、無視するまでは至らずに、要望を考慮する程度、要望反映度を詳細サーチ部２３２よりも低下させる程度にとどめるものとしてもよい。例えば、移動負荷に関する要望のみを考慮し、安全性に関する要望は無視するという態様や、階段の有無については考慮するが坂道か否かは考慮しないという態様など、要望事項の一部についてのみ経路探索時に考慮するという態様を採ることができる。詳細サーチ部２３２と、簡易サーチ部２３４の使い分けは、地図ＤＢ２５０に格納される領域ＩＤに基づいて行われる。領域ＩＤの意味、および詳細サーチ部２３２と、簡易サーチ部２３４の使い分けの制御処理については、後述する。
【００４４】
経路案内部２２０は、経路探索部２３０で得られた経路を案内するための表示データを生成し、端末１００に送信する。地図ＤＢ参照部２６０は、経路案内に要求される経路探索データ、描画データを地図ＤＢ２５０から読み出し、経路案内部２２０に提供する。本実施例では、経路案内部２２０も、上述した領域ＩＤに応じて表示内容を切り換える制御を実行する。この制御内容については後述する。
【００４５】
データ生成装置３００は、地図ＤＢ２５０に格納される経路探索データを生成するための装置である。併せて、描画データを生成する機能を持たせることもできる。本実施例では、経路探索データの整備を、高密度整備領域、低密度整備領域に分けて行う。高密度整備領域は、オペレータからの対話方式でのコマンド入力に従って、経路探索データを整備すべき領域である。低密度整備領域は、車両の経路探索用に整備された道路ネットワークデータを利用して、経路探索データを整備する領域である。道路ネットワークＤＢ３１０は、この道路ネットワークデータ、即ち車両が通行する道路をノード・リンクのネットワークで表したデータを格納している。
【００４６】
後述する通り、低密度整備領域は、流用領域と称する領域とその他の領域に細分化されている。流用領域以外の領域では、道路ネットワークデータを利用して経路探索データを整備した上で、更に、オペレータからのコマンド入力による修正や追加が許容される領域である。流用領域は、道路ネットワークデータを利用した経路探索データの整備のみが行われる領域である。領域指定テーブル３２０は、整備対象となる地域を所定サイズの方眼状のメッシュに分割し、各メッシュごとに、高密度整備領域、流用領域、およびその他の低密度整備領域のいずれに該当するかを記憶している。
【００４７】
転用ネットワーク設定部３６０は、道路ネットワークデータを利用して経路探索データを設定する。つまり、転用ネットワーク設定部３６０は、低密度整備領域の経路探索データの整備時に利用される機能ブロックである。ワークデータ管理部３８０は、整備された経路探索データを、一旦、格納し、管理する。
【００４８】
コマンド入力部３３０は、キーボードやマウスなどの操作を通じて、オペレータからのコマンドを入力する機能を奏する。歩行者ネットワーク設定部３４０は、このコマンドに応じて経路探索データを設定する。設定されたデータは、ワークデータ管理部３８０で管理される。歩行者ネットワーク設定部３４０は、流用領域を除く低密度整備領域、および高密度整備領域における経路探索データの設定に利用される。経路探索データを設定する際のコマンドの入力方法としては、ディスプレイ上に地図を表示し、オペレータがマウス等の操作によってノード、リンクを設置する位置を指定していく方法を採ることができる。表示制御部３７０はこのコマンド入力に要求される地図表示等を行う。この地図表示に必要となるデータは、地図ＤＢ２５０または道路ネットワークＤＢ３１０に含まれる描画データを利用することができる。オペレータが設定したリンクおよびノードは、ワークデータ管理部３８０に管理されたデータを参照することで表示可能である。
【００４９】
マージ処理部３５０は、低密度整備領域および高密度整備領域の領域間において経路探索データを整合されるための処理（以下、「マージ処理」と称する）を行う。即ち、ワークデータ管理部３８０に格納された各領域の経路探索データを読み出し、境界部分において、相互に接続していないリンク間を接続させる処理を行う。また、各経路探索データを、地図ＤＢ２５０に格納するためのフォーマットに整える処理も実行する。地図ＤＢ更新部３９０は、マージ処理が完了した経路探索データを、サーバ２００の地図ＤＢ２５０に格納する。
【００５０】
Ｂ．経路探索データのデータ構造：
図２は領域ごとの経路探索データの設定状態を示す説明図である。図の中央に、低密度整備領域および高密度整備領域の設定例を示した。この図は、都市の中心部および郊外を含む所定範囲の地図を表している。ここでは、図の煩雑化を回避するため、地物として鉄道および高速道路のみを簡易に示した。本実施例では、地図データは、図示するように方眼状のメッシュに区分されて整備されている。各メッシュは、図の横方向の番号Ｎｘと、縦方向の番号Ｎｙとの組み合わせからなるメッシュ番号を用いてメッシュＮｘＮｙの形式で特定可能である。
【００５１】
中央付近のクロスハッチを付した領域（例えば、メッシュ６３など）は高密度整備領域を意味している。外周の空白領域（例えば、メッシュ１１など）は、流用領域を表している。両者の間のハッチング領域（例えば、メッシュ３２など）は、流用領域を除く低密度整備領域を表している。各メッシュをいずれの領域に割り当てるかは任意に設定可能であるが、図示するように、高密度整備領域の周囲を取り囲むように順次、流用領域を除く低密度整備領域、流用領域を設定することが好ましい。高密度整備領域は、都会の中心部のように、階段や歩道橋、建物、地下街、ペディストリアンデッキなど、種々の立体的な構造物が設けられている箇所に設定することが好ましい。
【００５２】
図の上方の地図Ａ１には、高密度整備領域における経路探索データの整備例を示した。図中の細い実線はリンクを示し、黒丸はノードを示している。この領域では、歩行者が通行する通路に対してリンクが設定される。例えば、リンクＬ１１に示すように、歩行者用のリンクは、車道の両側に設けられた歩道に沿って設定することができる。このため、一本の道路に対して、歩行者用のリンクは、両側の２条で設けられることもある。また、リンクＬ１２のように横断歩道上に設定されるものや、リンクＬ１４のように歩道橋などの構造物上に設けられるものもある。また、建物の入り口に続くリンクＬ１３も設けられる。
【００５３】
歩行者用のリンクは、必ずしも歩道にのみ設けられるとは限らない。リンクＬ１５に示すように、歩道が設けられていない道路であっても、その両側に歩行者用のリンクを設けることができる。このような道路の交差点Ｃ１では、横断歩道がない場合でも、それぞれのリンクに沿った通行や道路の横断が可能なようにノード・リンク（以下、「横断リンク」と称する）を設けることができる。このような横断リンクを設けるべき交差点Ｃ１は、例えば、ｉ）道路幅が所定値以下であること、ｉｉ）通行量が所定値以下であること、ｉｉｉ）所定の距離内に横断歩道が設けられていないことを条件として選択することができる。条件ｉ）、ｉｉ）は横断歩道がない場所ではあるが、横断に大きな危険は伴わない箇所を選択するための条件である。条件ｉｉｉ）は無用に横断箇所を増やし、経路探索データが複雑化することを回避するための条件である。もっとも、これらの条件は任意に設定可能であり、例えば、横断歩道が存在しない全ての交差点を対象として、交差点Ｃ１に示すような横断リンクを設けるようにしてもよい。
【００５４】
下左の地図Ａ２には、流用領域を除く低密度整備領域における経路探索データの整備例を示した。この領域では、道路ネットワークデータ内の道路リンクの転用によって経路探索データが設定されている。従って、リンクＬ２１、Ｌ２２に示すように、歩行者用のリンクであっても、車道の中心付近に設定されることがある。もっとも、この領域では、道路リンクをそのまま適用する必要はなく、例えば、道路リンクを道路幅に応じて平行移動し、車道の端に歩行者用のリンクを設定するようにしてもよい。
【００５５】
また、この領域では、道路リンクの全てを歩行者用の経路探索データとして利用する訳ではない。例えば、高速道路のように歩行者が通行できない道路については、歩行者用の経路探索データには転用しない。図中の破線で示したリンクＬ２３は、高速道路上の道路リンクを表しており、破線で描かれているのは、経路探索データに不採用であることを示している。
【００５６】
地図Ａ２の領域では、道路リンクから転用されたリンクの他、高密度整備領域と同様、オペレータのコマンドによってリンクの修正、追加をすることもできる。例えば、図中では、陸橋上に設けられたリンクＬ２５や、公園敷地内の通路に設けられたリンクＬ２４が、これに該当する。このように修正、追加を許容することにより、道路リンクを転用しつつ、歩行者に固有の通路も経路探索データとして整備することができ、軽い負荷で利便性の高い経路探索を実現することが可能となる。
【００５７】
下右の地図Ａ３には、流用領域における経路探索データの整備例を示した。この領域では、道路リンクの転用によってのみ経路探索データが設定される。従って、リンクＬ３１、Ｌ３２に示すように、歩行者用のリンクは車道上に設定されることになる。地図Ａ２で説明したのと同様、道路リンクを平行移動することによって、道路の端に歩行者用のリンクを設定するようにしてもよい。
【００５８】
図３は経路探索データのデータ構造を示す説明図である。図の下方から、道路ネットワークＤＢ３１０のデータ構造、ワークデータ管理部３８０に格納されているワークデータ３８１のデータ構造、および地図ＤＢ２５０のデータ構造を示した。道路ネットワークＤＢ３１０には、リンクデータおよびノードデータが含まれる。図中では、リンクデータのみを例示した。リンクデータは、リンクの識別情報となる「リンクＩＤ」、リンク形状、および属性が格納されている。リンク形状は、リンクが通過する点列Ｎｒ１，Ｎｒ２…を（緯度、経度）の座標で定義したデータである。属性には、道路種別、車線数などの情報が格納されている。ノードデータの構造は図示を省略したが、リンクデータと同様の形式で、ノードＩＤ、位置、および属性が格納されている。
【００５９】
ワークデータ３８１には、道路ネットワークデータを転用したリンクデータ、ノードデータが格納されている。また、高密度整備領域などでオペレータのコマンドに応じて設定されたリンクデータ、ノードデータも格納される。ワークデータ３８１に格納されるリンクデータ、ノードデータのデータ構造は、道路ネットワークＤＢ３１０と完全に一致している訳ではない。リンクデータについては、リンクＩＤ、形状および属性に加えて、領域ＩＤ、接続リンクなるデータが付加される。また、ノードデータについては、ノードＩＤ、位置および属性に加えて、接続ノードなるデータが付加される。領域ＩＤとは、リンクデータが、図２で示した高密度整備領域および低密度整備領域のいずれに含まれるかを示すフラグである。低密度整備領域は、更に流用領域とその他の領域に細分化されているが、本実施例では、領域ＩＤは両者を含めて扱うものとした。接続リンク、接続ノードとは、後述するマージ処理の過程で、設定されたリンクおよびノードであることを示すフラグである。リンクデータの形状、およびノードデータの位置のデータ構造も道路ネットワークデータとは異なっているが、この点については、地図ＤＢ２５０のデータ構造と併せて示す。
【００６０】
地図ＤＢ２５０の経路探索データは、ワークデータ３８１に基づいて生成される。リンクデータは、リンクＩＤ、領域ＩＤ、形状および属性データを格納している。ワークデータ３８１で設定された「接続リンク」のフラグは、地図ＤＢ２５０では不要なため、削除される。形状データは、リンクが通過する点列Ｎ１、Ｎ２…Ｎｎの座標が格納される。ただし、本実施例では、地図ＤＢ２５０においては、各点の位置は、（緯度、経度、高さ値）という３次元のデータで設定されている。高さ値とは、構造物間の相対的な上下関係を示すためのデータである。本実施例では、地上の道路をレベル「０」、高架道路をレベル「１」、更に高い位置にある高架道路をレベル「２」、地下または半地下道路をレベル「−１」と定義した。各構造物の絶対的な高さを用いるようにしてもよいが、上述の態様によれば、少ないデータ量で、構造物間の上下関係を特定することができる利点がある。レベルは、各リンクの点列で統一されている必要はない。例えば、図３中のリンクＬ１についてノードＮ１、Ｎｎの高さ値を異なるレベルとすれば、異なる階層にまたがる斜めのリンクとなり、坂道、エスカレータ、エレベータ、階段などを表現することができる。本実施例では、道路ネットワークデータでは、この高さ値は設定されていないものとする。従って、道路ネットワークデータを転用したリンク、ノードについては、地図ＤＢ２５０では、高さ値はレベル「０」がデフォルト値として設定されている。
【００６１】
リンクデータの属性には、種別、距離、屋根の有無などの通路に関する種々の情報が格納される。種別としては、平坦な通路、坂道、歩道橋、横断歩道、階段、エスカレータ、エレベータなどの情報が格納される。併せて、各種別ごとの固有のデータを格納してもよく、例えば、坂道の場合には、上り下りの別、傾斜角度などの情報を格納することができる。ノードの属性には、信号の有無、ノードの周辺に位置する目印の有無などの情報が格納される。属性には、図３中に例示したものに限らず、種々の情報を格納可能である。道路ネットワークデータからの転用では設定し得ない属性については、予めデフォルト値が設定される。例えば、リンクの種別としては平坦な道と設定し、屋根の有無、信号の有無、目印などについては、それぞれ「無し」と設定することができる。
【００６２】
地図ＤＢ２５０の描画データについては、図示を省略した。描画データには、道路や建築物などの形状を表すポリゴンデータが格納されている。このポリゴンデータを描画することによって、地図を表示することができる。
【００６３】
Ｃ．地図ＤＢ生成処理：
図４は地図ＤＢ生成処理のフローチャートである。地図ＤＢ２５０のうち、経路探索データを整備する処理である。データ生成装置３００の各機能ブロック（図１参照）が連携して実行する処理であり、ハードウェア的には、データ生成装置３００のＣＰＵが実行する処理である。
【００６４】
この処理では、ＣＰＵは、処理対象メッシュを入力する（ステップＳ１０）。オペレータから、処理対象となるべきメッシュ番号の指定を受け付けるようにしてもよいし、ワークデータ管理部３８０に格納された結果を見て、未処理のメッシュ番号からいずれかを選択するようにしてもよい。
【００６５】
ＣＰＵは、処理対象となるメッシュが決まると、領域指定テーブル３２０を参照して、そのメッシュが高密度整備領域、低密度整備領域のいずれに当たるかを判断する（ステップＳ１２）。低密度整備領域に当たる場合には、ＣＰＵは道路ネットワークＤＢ３１０を読込み、その転用を行う（ステップＳ１４）。この処理によって、先に図３で示したように、道路ネットワークＤＢ３１０の各データがワークデータ３８１に格納される。ただし、高速道度など、歩行者が通行できないリンクは除外される。歩行者の通行可否は、例えば、道路リンクの属性によって判断することができる。
【００６６】
転用処理が完了すると、ＣＰＵは歩行者ネットワーク設定処理を実行する（ステップＳ１６）。処理対象となる領域が高密度整備領域である場合には（ステップＳ１２）、転用処理（ステップＳ１４）をスキップして、歩行者ネットワーク設定処理を開始する（ステップＳ１６）。
【００６７】
歩行者ネットワーク設定処理とは、オペレータからのコマンドに応じて、歩行者用のリンクデータ、ノードデータを設定する処理である。先に図２の地図Ａ１に示した各ノード、リンクの設定や、地図Ａ２に示したリンクＬ２４、Ｌ２５の設定などがこの処理に対応する。流用領域については、ステップＳ１６をスキップさせてもよい。
【００６８】
ＣＰＵは以上の処理を全メッシュについて完了するまで繰り返す（ステップＳ１８）。この処理が完了すると、整備対象となる全領域についてワークデータ３８１が用意されることとなる。ＣＰＵは、このワークデータ３８１を対象として、マージ処理を実行し（ステップＳ１００）、地図ＤＢ２５０を更新して（ステップＳ２００）、地図ＤＢ生成処理を終了する。次に、このマージ処理の内容について説明する。
【００６９】
図５はマージ処理の概要を示す説明図である。マージ処理とは、高密度整備領域と低密度整備領域との境界において、未接続のリンクを相互に接続するための処理である。図中では、高さ値がＬＥＶＥＬ０、ＬＥＶＥＬ１の２つの階層に位置するリンクを示した。図の左側の領域が高密度整備領域であり、右側の領域が低密度整備領域である。
【００７０】
図中の白丸はノードを表している。また、二重線は道路リンクを転用して設定されたリンクを表し、細線はオペレータによって設定されたリンクを表している。二重線のうち破線で表したものは、高密度整備領域に含まれている道路リンクであり、各リンクの位置関係を把握するための便宜上、示したものである。図中の黒丸は接続ノード、一点鎖線は接続リンクを表している。これら接続ノードおよび接続リンクの設定が、マージ処理における主要な処理となる。
【００７１】
まず、高密度整備領域におけるリンクＬ０４、Ｌ０６のマージ処理について説明する。これらのリンクは、接続ノード、接続リンクを設ける前の時点では、その端のノードＮ０５、Ｎ０６は他のいずれのリンクにも接続されていない端点となっている。マージ処理では、このような端点を有するリンクが処理対象となる。
【００７２】
リンクＬ０４、Ｌ０５の処理時には、これらのリンクの接続先となる道路リンクＬ０５を選択し、その上に接続ノードＣ０１を設定し、ノードＮ０５、Ｎ０６との間で接続リンクＬＣ１，ＬＣ２を設定する。この道路リンクの選択方法、および接続ノードの設定方法については後述する。リンクＬ０４、Ｌ０５については、道路リンクＬ０５が共通の接続先として選択されている。本実施例では、このように共通の道路リンクへの接続を行う場合には、接続ノードＣ０１も共用するものとした。こうすることで、道路リンクＬ０５上に接続ノードを無用に増大させることなくマージ処理を行うことができ、経路探索データの複雑化を回避することができる。
【００７３】
道路リンクＬ０５は、本来、高密度整備領域内のノードＮ０１までのびるリンクであるが、上述の接続によって、接続ノードＣ０１とノードＮ０１との間の部分（図中のハッチングを付した部分）は不要となる。この部分のリンクがなくなっても、高密度整備領域のリンクＬ０５，Ｌ０６が存在することによって支障なく経路探索が可能だからである。従って、ＣＰＵは接続ノードＣ０１、接続リンクＬＣ１、ＬＣ２を設定した後は、上述のハッチングを付した部分を削除する。この結果、低密度整備領域におけるリンクＬ０５は、ノードＮ０２と接続ノードＣ０１間の短いリンクに修正されることになる。
【００７４】
先に説明した通り、本実施例では、高密度整備領域および低密度整備領域をそれぞれメッシュ単位で定義している。この場合、図５においても、高密度整備領域の境界線は、メッシュの境界線と一致する。メッシュに分けてネットワークデータを整備する場合、リンクＬ０５のように、２つのメッシュにまたがるリンクについては、メッシュの境界部分にノードを設置し、このノードで分断されていることが多い。リンクＬ０５のうちハッチングを付した部分を削除する処理は、このようにリンクＬ０５が高密度整備領域の境界で分断されていたとしても、そのまま適用することができる。このように分断されている場合、リンクＬ０５は、この処理を開始した時点で、高密度領域の境界よりも左側（ノードＮ０１側）は既に経路探索データに含まれていない状態となり（図５中では破線で表現されるべきリンクとなる）、削除されるべきハッチングを付した部分が、最初から短くなっているに過ぎないからである。
【００７５】
次に、リンクＬ０７のマージ処理について説明する。リンクＬ０７の端点に位置するノードＮ０７の接続先として、近傍に位置する道路リンクＬ０８が選択される。従って、この上に接続ノードＣ０２が設定され、ノードＣ０２とＮ０７の間に接続リンクＬＣ３が設定される。このケースでは、道路リンクＬ０８は接続ノードＣ０２によって分断されることになるが、道路リンクＬ０５の場合と異なり、分断後のいずれのリンクも高密度整備領域には含まれず、いずれも低密度整備領域における歩行者用のリンクデータとして必要である。従って、道路リンクＬ０８は分断後も削除されず、リンクデータとして残存することになる。
【００７６】
最後に、リンクＬ１１，Ｌ１２のマージ処理について説明する。リンクＬ１１，Ｌ１２は、ＬＥＶＥＬ１に設定されたリンクデータである。これらのリンクは、道路リンクＬ０１の側方に設けられている歩道に相当し、これらのリンクが接続されるべき道路リンクはＬ０２である。本実施例では、道路ネットワークデータには高さ値が格納されていないものとしている。従って、道路リンクＬ０１、Ｌ０２は、高さ値ＬＥＶＥＬ０に設定されてしまう。この結果、リンクＬ１１、Ｌ１２は、異なる階層の道路リンクＬ０２を接続対象としてマージ処理される必要が生じる。
【００７７】
本実施例では、このような場合には、まず、リンクＬ１１、Ｌ１２の端点ノードＮ１１，Ｎ１２からＬＥＶＥＬ０への垂線の足に接続ノードＣ０３、Ｃ０４を設定する。接続ノードＣ０３、Ｃ０４は、端点ノードＮ１１，Ｎ１２と同じ位置にあり、高さ値のみが異なるノードである。そして、端点ノードＮ１１、Ｎ１２から接続ノードＣ０３、Ｃ０４にそれぞれ接続リンクＬＣ６、ＬＣ７を設定する。これらの接続ノードＣ０３、Ｃ０４および接続リンクＬＣ６、ＬＣ７は、それぞれ階層間の移動のみを行うための経路となることから、それぞれ階層移動ノード、階層移動リンクと呼ぶこともある。
【００７８】
このようにして階層移動ノード、階層移動リンクが設定されると、リンクＬ１１、Ｌ１２の端点は、道路リンクＬ０２と同じ階層に存在する階層移動ノードＣ０３、Ｃ０４とみなすことが可能となる。従って、先にリンクＬ０４，Ｌ０５で説明したのと同じく、道路リンクＬ０２上に接続ノードＣ０５を設定し、階層移動ノードＣ０３、Ｃ０４と接続ノードＣ０５とをそれぞれ連結する接続リンクＬＣ４、ＬＣ５を設定する。道路リンクＬ０２のうち、接続ノードＣ０５とノードＮ０４の間は削除される。図５の例では、上の階層ＬＥＶＥＬ１から下の階層ＬＥＶＥＬ０に下がる階層移動リンクを例示したが、同様の処理によって、「ＬＥＶＥＬ−１」などの下の階層からＬＥＶＥＬ０などの上の階層に移動する階層移動リンクを設けるようにしてもよい。また、図５の例では、ＬＥＶＥＬ１のノードＮ１１、Ｎ１２をＬＥＶＥＬ０に接続するための階層移動リンクを例示したが、逆に、ＬＥＶＥＬ０のリンクＬ０２上に設けられた接続ノードＣ０５をＬＥＶＥＬ１に持ち上げるための階層移動リンクを設けるようにしてもよい。また、接続対象となるリンクＬ１１、Ｌ１２、Ｌ０２のいずれとも異なる第３の階層に移行させる階層移動リンクを、各リンクＬ１１、Ｌ１２、Ｌ０２に接続するようにしてもよい。
【００７９】
図６は接続先となる道路リンクの選択方法および接続ノードの設定方法を示す説明図である。以下、図６を参照しつつ、図５で示したマージ処理において、高密度整備領域側のリンクの接続先となる道路リンクを選択するための規則、および接続ノードの位置を決定するための規則について説明する。
【００８０】
まず、図の上方に示すように、車道の両側に歩道が設けられている道路を対象とする場合の処理を説明する。道路リンクＬＬ１は、車道の中央付近に設定されている。高密度整備領域におけるリンクＬＨ１、ＬＨ２は、歩道の中央付近に設定されている。これらのリンクＬＨ１、ＬＨ２、および道路リンクＬＬ１は、地図で道路を描画する際に、同一のポリゴンＰＯＬ１に含まれている。このように、処理対象となるリンクＬＨ１、ＬＨ２の端点ノードＮＨ１、ＮＨ２と、同一の描画ポリゴンに含まれる道路リンクＬＬ１が存在する場合には、その道路リンクＬＬ１を接続先として選択することができる。
【００８１】
次に道路リンクＬＬ１上に接続ノードＮＣ１を設定する方法について説明する。本実施例では、端点ノードＮＨ１、ＮＨ２から道路リンクＬＬ１に垂線をおろし、その足と、道路リンクＬＬ１のノードＮＬ２との中点に接続ノードＮＣ１を設定するものとした（図中で距離ｌ１はｌ２と等しくなる）。このように接続ノードＮＣ１を設定し、接続リンクＬＣ１、ＬＣ２を設定することにより、各リンク間のなす角θを鈍角にすることができる。この角度が鈍角となっていることにより、リンクＬＨ１から道路リンクＬＬ１に至る経路を案内する際に不自然な屈曲を回避でき、経路案内時の違和感を軽減することができる。
【００８２】
接続ノードの設定方法は、図示した方法に限られない。図中の距離ｌ１、ｌ２の比は任意に設定可能である。また、別の設定方法として、端点ノードＮＨ１から、予め規定されたなす角θ方向に接続リンクＬＣ１をのばし、道路リンクＬＬ１との交点を接続ノードＮＣ１と設定してもよい。更に別の設定方法として、垂線の足からノードＮＬ２方向に所定距離だけ移動した位置に接続ノードＮＣ１を設定するようにしてもよい。もちろん、なす角θが鈍角であることは必須の条件ではないため、垂線の足を接続ノードＮＣ１とすることも可能である。
【００８３】
マージ処理では、上述の通り、高密度整備領域のリンクデータの近傍に、接続先となる道路リンクが存在していることが処理の前提となる。仮に、図６の状態において、境界ＢＬ内が高密度整備領域であるとする。高密度整備領域では、道路リンクＬＬ１は転用されないため、この状態では、リンクＬＨ１、ＬＨ２の近傍の道路リンクＬＬ１は存在しないこととなり、上述のマージ処理を実行することができなくなる可能性がある。従って、マージ処理を円滑に実行するという観点からは、高密度整備領域のリンクを設定する際には、少なくともその端点ノードは低密度整備領域内に設けることが好ましい。本実施例のデータ生成装置３００には、高密度整備領域のリンクデータおよびノードデータを設定する際に、この条件を満たしているか否かを自動的に判定する機能を設けても良い。
【００８４】
次に、リンクＬＨ３のように、同一の描画ポリゴンに含まれる道路リンクが不明の場合の処理について説明する。この場合には、端点ノードＮＨ３から、近傍の道路リンクＬＬ３、ＬＬ２、ＬＬ４に垂線ＬＣ３，ＬＣ４、ＬＣ５をおろし、その距離が最短となる道路リンクを選択する。ただし、この垂線が、建築物その他の構造物を横切る場合には、選択対象から除外する。
【００８５】
図の例では、垂線の長さは「ＬＣ４＜ＬＣ３＜ＬＣ５」という関係にある。しかし、垂線ＬＣ４は、建築物ＢＬＤを横切っている。従って、垂線ＬＣ４の先にある道路リンクＬＬ２は選択の対象から除外され、道路リンクＬＬ３が選択されることとなる。この結果、リンクＬＨ３のマージ処理では、リンクＬＬ３上に接続ノードＮＣ２が設定され、端点ＮＨ３から接続ノードＮＣ２に接続リンクＬＣ３が設定されることとなる。
【００８６】
本実施例では、接続リンクは接続先から除外するものとした。一例として、リンクＬＨ４のマージ処理を考える。リンクＬＨ３のマージ処理が完了しているとすると、リンクＬＨ４の端点ノードＮＨ４の近傍には、道路リンクＬＬ３の他、接続リンクＬＣ３が存在することになる。端点ノードＮＨ４から両リンクへの距離は同等である。しかし、接続リンクＬＣ３は接続先の選択対象から除外される。従って、リンクＬＨ４のマージ処理では、接続先として道路リンクＬＬ３が選択され、道路リンクＬＬ３上に接続ノードＮＣ３が設定されるとともに、端点ノードＮＨ４と接続ノードＮＣ３とを結ぶ接続リンクＬＣ６が設定されることになる。このように接続リンクを選択先から除外することによって、経路探索データのノード・リンクデータの構造が複雑化することを回避できる利点がある。
【００８７】
接続先の選択、および接続ノードの設定は、上述した方法の他、種々の方法を採ることができる。上述の方法のいずれを優先させるかという点についても任意に設定可能である。また、上述の条件の少なくとも一部を省略してもよい。上述の例では、いずれも低密度整備領域内に接続ノードを設ける例を示したが、接続ノードは高密度整備領域と低密度整備領域との境界上に設けるようにしてもよい。また、図５のリンクＬ０５に示したように、道路リンクが高密度整備領域に入り込んでいるような場合には、高密度整備領域内で接続ノードを設定してもよい。
【００８８】
図７はマージ処理のフローチャートである。図５、図６で説明した処理を実現するための処理、即ち主としてデータ生成装置３００のマージ処理部３５０（図１参照）の機能に相当する処理であり、ハードウェア的にはデータ生成装置３００のＣＰＵが実行する処理である。このマージ処理は、全メッシュについての処理が完了するまで繰り返し実行される。
【００８９】
この処理では、ＣＰＵは隣接する２つのメッシュのワークデータ３８１を入力する（ステップＳ１０２）。そして、両メッシュが同種の領域であるか否かを判断する（ステップＳ１０４）。両メッシュが高密度整備領域同士または低密度整備領域（流用領域とその他の領域とが隣接している場合も含む）である場合には、同種の領域であると判断される。この場合には、リンク同士の整合性は保たれているので、図５，６で示した複雑なマージ処理は不要である。従って、ＣＰＵは図３に示した通り、接続リンク、接続ノードのフラグを削除するなどのデータフォーマット変換を行って（ステップＳ１１８）、マージ処理を終了する。
【００９０】
隣接する２のメッシュが異種の領域である場合には（ステップＳ１０４）、図５、６に示した手順でのマージ処理を実行する。ＣＰＵは、まず高密度領域のリンクデータから端点ノードを抽出する（ステップＳ１０６）。端点ノードとは、リンクの端のノードのうち、他のいずれのリンクにも接続されていないノードである。
【００９１】
次に、ＣＰＵはこの端点ノードから、ＬＥＶＥＬ０の階層への接続ノード、接続リンク、即ち階層移動ノード、階層移動リンクを設定する（ステップＳ１０８）。具体的な処理内容は、図５のリンクＬ１１、Ｌ１２の処理内容として説明した通りである。この処理によって、図５中のノードＣ０３，Ｃ０４およびリンクＬＣ６、ＬＣ７が設定されることになる。端点ノードが既にＬＥＶＥＬ０の階層に位置している場合には、この処理は省略可能である。
【００９２】
次に、ＣＰＵは、接続先となる転用リンク、即ち低密度整備領域において道路リンクからの転用によって設定されたリンクを選択する（ステップＳ１１０）。選択方法は、図６において説明した通りである。ＣＰＵはこうして選択された転用リンク上に、図６で説明した方法に従って接続ノードを設定し、端点ノードと接続ノードとを連結する接続リンクを設定する（ステップＳ１１２）。そして、図５のリンクＬ０５で説明したように、転用リンクの切断処理、即ち転用リンクのうち高密度整理領域内にあるノードと接続ノードとの間を削除する処理を実行する（ステップＳ１１４）。以上の処理を、ＣＰＵは選択されたメッシュ内の全端点ノードについて完了するまで繰り返し実行する（ステップＳ１１６）。この処理が完了すると、ＣＰＵは図３に示した通り、接続リンク、接続ノードのフラグを削除するなどのデータフォーマット変換を行って（ステップＳ１１８）、マージ処理を終了する。
【００９３】
以上の処理を、全メッシュについて完了するまで繰り返し実行することにより、マージ処理が完了する。図４で示した通り、マージ処理が完了したデータは、地図ＤＢ２５０に格納され、以下で示す経路探索処理、経路案内処理に供される。
【００９４】
Ｄ．経路探索処理：
図８は経路探索処理のフローチャートである。端末１００からの指示に従って、サーバ２００の経路探索部２３０（図１参照）が実行する処理であり、ハードウェア的にはサーバ２００のＣＰＵが実行する処理である。
【００９５】
この処理では、サーバ２００は端末１００から、現在位置、目的地、および探索条件を入力する（ステップＳ３００）。探索条件としては、距離優先／時間優先などの探索モードの指定、階段や坂道を回避したいなど移動負荷に関する要望事項、ガードレールや街灯が整備されている道を優先したいなど安全性に関する要望事項が含まれる。先に説明した通り、本実施例では、これらの要望事項は、ユーザＩＤと対応づけてユーザＤＢ２４０に予め登録されている。経路探索時には、端末１００でユーザＩＤを入力すると、ユーザＤＢ２４０に登録されたデータが探索条件として指定されることになる。
【００９６】
ＣＰＵは、上述の条件に基づいて経路探索を開始し、現在位置に接続されたリンクデータを検索して順次、候補経路を延伸する（ステップＳ３０２）。本実施例では、経路探索は、ダイクストラ法によって行う。ダイクストラ法とは、各リンクに対して、距離、移動の所要時間などに応じて設定されたコストを予め付しておき、出発地から目的地に至る多数の経路の中から、このコストの総和が最小となる経路を見いだす演算方法である。ダイクストラ法では、各リンクのコストに対して、ユーザからの要望を反映させることによって、要望に添った経路探索を行うことができる。例えば、階段を回避したいという要望が設定されている場合には、階段に対して付されているコストを、増大させればよい。要望をコストに反映させる方法は、任意に設定可能である。
【００９７】
階段のコストを平坦な通路よりも増大させた上で経路探索を行うことは、階段の上り下りに伴う体力的な負荷を考慮していることに相当する。このほか、経路に対する歩行者の心理的な影響を考慮するようにしてもよい。例えば、地上の通路から一旦、地下の通路に降り、再度地上に上る通路がある場合を考える。このように階層の移動を伴う通路に対しては、仮にエスカレータなど体力的な負荷を伴わない方法で上り下りを行ったとしても、地上のみを通る通路に比べると心理的に敬遠される傾向にある。経路探索では、こうした傾向を反映するため、例えば、階層を移動する経路に対しては、上り下りの手段にかかわらず予め設定された階層移動コストを加えることもできる。こうすることにより、若干、遠回りとなっても、階層移動が少ない経路が探索されるようになり、実用面での違和感や負担感のない経路をユーザに提示することができる。
【００９８】
ＣＰＵは、出発地から目的地に経路を探索していく過程で、経路の先端が高密度整備領域、低密度整備領域のいずれに存在するかを判定する（ステップＳ３０４）。この判定は、経路探索に用いるメッシュがいずれの領域に対応しているかを判定すればよく、本実施例では、リンクデータに付された領域ＩＤを参照することによって判断可能である。
【００９９】
ＣＰＵは、経路の先端が高密度整備領域に存在する場合には（ステップＳ３０４）、詳細サーチで経路探索を実行し（ステップＳ３０６）、低密度整備領域に存在する場合には（ステップＳ３０４）、簡易サーチで経路探索を実行する（ステップＳ３０８）。詳細サーチでは、ユーザの要望を反映した経路探索を行う。従って、上述の通り、要望事項を各リンクデータのコストに反映させた上で、経路探索を行うことになる。簡易サーチでは、ユーザの要望を無視して経路探索を行う。従って、予め各リンクに設定されたコストを用いて経路探索を行うことになる。簡易サーチでは、ユーザの要望の一部のみをコストに反映させるようにしてもよい。簡易サーチでは、このようにユーザの要望をコストに反映させる処理の簡素化を図ることができるため、経路探索の所要時間を短縮化することができる。
【０１００】
ＣＰＵは、上述の通り、候補経路を延伸するたびに、詳細サーチと簡易サーチとを使い分けながら、目的地に至るまで経路探索を繰り返し実行する（ステップＳ３１０）。例えば、出発地が低密度整備領域に存在し、目的地が高密度整備領域に存在する場合には、経路探索の当初は簡易サーチが行われ、候補経路の先端が高密度整備領域に入った時点で詳細サーチに切り替わることになる。この切り替えは、経路探索の過程で一度に限られるものではなく、候補経路を延伸するにつれて、その先端が低密度領域、高密度領域をいくつも通過する場合には、その都度、探索方法が切り換えられることになる。ＣＰＵは、こうして得られた経路を出力し（ステップＳ３１２）、経路探索処理を完了する。本実施例では、詳細サーチと簡易サーチを使い分ける例を示したが、領域に関わらず詳細サーチまたは簡易サーチのみを統一的に用いるようにしてもよい。
【０１０１】
本実施例では、高密度整備領域、低密度整備領域に分けて整備された経路探索データを利用して経路探索を実行する。高密度整備領域では、階段や歩道橋などの立体的な構造も含めて歩行者に固有の通路のデータが形状、属性ともに詳細に整備されている。従って、歩行者の要望を反映させた利便性の高い経路探索を実現することができる。
【０１０２】
一方、低密度整備領域では、道路リンクの転用によって経路探索データが整備されている。このため、情報量は高密度整備領域ほど充実してはいないものの、高密度整備領域に比較してノード・リンクのネットワークが簡素化されているという特徴があり、経路探索を短時間で行うことができる。本実施例では、低密度整備領域では、ユーザの要望を無視する簡易サーチを適用するため、更に、処理時間を短縮化することが可能である。以上で説明した特徴により、本実施例では、利便性の高い経路探索と、短時間での経路探索の双方の要求をバランス良く満たすことが可能となる。
【０１０３】
Ｅ．経路案内処理：
図９は経路案内処理のフローチャートである。探索された経路を、ユーザの現在位置に応じて地図上に表示するための処理である。この処理は、サーバ２００の経路案内部２２０が実行する処理であり、ハードウェア的にはサーバ２００のＣＰＵが実行する処理である。
【０１０４】
この処理では、ＣＰＵはまず案内すべき案内経路のデータを経路探索部２３０から入力する（ステップＳ４００）。案内経路のデータの授受は、経路探索部２３０から直接行う他、ユーザＤＢ２４０をバッファとして活用してもよい。
【０１０５】
次にＣＰＵは端末１００からユーザの現在位置を入力する（ステップＳ４０２）。そして、この現在位置が高密度整備領域、低密度整備領域のいずれに属するかを判断し（ステップＳ４０４）、高密度整備領域に属する場合には詳細サーチ結果案内モードで経路案内を行う（ステップＳ４０６）。低密度整備領域に属する場合には簡易サーチ結果案内モードで経路案内を行う（ステップＳ４０８）。ＣＰＵはこれらの案内モードを使い分けながら、ユーザが目的地に到達するまで（ステップＳ４１０）、経路案内を繰り返し実行する。
【０１０６】
図中に詳細サーチ結果案内モードの表示画面ＤＩＳＰ１、簡易サーチ結果案内モードの表示画面ＤＩＳＰ２を例示した。いずれのモードにおいても、現在位置を含む地図が表示され、将来の経路が表示される点では共通である。ただし、両モードでは、現在位置を表示するシンボルの形状が異なる。また、画面上に、「詳細」、「簡易」の文字で、いずれの案内モードで表示が行われているかが示される。更に、詳細モードでは経路探索時に反映された要望事項が、経路探索の「条件」として表示される。簡易モードでは、ユーザからの要望が経路探索に反映されていない旨のお詫びを表示してもよい。詳細モードから簡易モードへの切り換え時を音声などのアラームでユーザに知らせるようにしてもよい。簡易モードでは、道路ネットワークを利用した経路探索データで案内が行われるため、案内位置が歩道からずれるなど違和感の原因となる案内が行われる可能性があるが、アラームを出力することで、ユーザの注意を喚起し、案内モード切り換えに伴う違和感を低減することができる。同様に、簡易モードから詳細モードへの切り換えをアラームで知らせても良い。ただし、違和感を招く案内は詳細モードよりも簡易モードの方が生じやすいことを考慮すると、詳細モードから簡易モードへの切り換え時のアラームの方が、有用性が高いと言える。
【０１０７】
このように現在位置が属する領域の種類に応じて、案内モードを切り換えることによって、ユーザは経路探索結果に自己の要望事項がどの程度反映されているかを容易に判断することができる。従って、自己の要望が十分に反映されていないと考えられる経路が案内された場合、例えば、階段を避けたいという要望を指定しているにも関わらず、階段を通行する経路が案内された場合などにおいて、経路探索を再試行するなどの無駄を回避することができる。経路が簡易サーチ結果案内モードで表示されている場合には、経路探索を再試行したとしても同様の結果しか得られないことが容易に判断可能だからである。
【０１０８】
表示態様の使い分けは、図９に示した例に限らず、地図の背景色の使い分けなど種々の方法を採ることができる。また、かかる使い分けは必須のものではなく、領域に関わらずいずれかの表示態様を統一的に使用するようにしてもよい。
【０１０９】
以上で説明した第１実施例の経路案内システムによれば、以下に示す種々の効果を得ることができる。第１に、高密度整備領域、低密度整備領域に分けて経路探索データを整備することができるため、経路探索データの整備負荷を軽減することができる。立体的な構造物が多い場所を、高密度整備領域に指定し、その他の領域を低密度整備領域に指定することによって、ユーザの要望を反映させた利便性の高い経路探索を実現可能なデータを、比較的軽い負荷で整備することが可能となる。
【０１１０】
第２に、上述の特徴を有する経路探索データを利用して経路探索を実行することによって、利便性の高い経路の提供という要求と、経路探索の所要時間の短縮化という要求とをバランス良く実現することが可能となる。第３に、経路探索データの領域の種別に応じて、経路案内の表示態様を切り換えることによって、ユーザの要望が経路にどの程度反映されているかを示唆することができ、利便性の高い経路案内を実現することができる。
【０１１１】
Ｆ．第２実施例：
第１実施例では、データ生成装置３００で地図ＤＢ２５０を整備し、サーバ２００で経路探索および経路案内を実行する例を示した。地図ＤＢ２５０の整備、経路探索および経路案内は、少なくとも一部を端末１００で実行するようにしてもよい。第２実施例では、端末でこれらの処理を実行する例を示す。第２実施例においても、データの整備領域は、第１実施例と同様、高密度整備領域および低密度整備領域に分けられている（図２参照）。
【０１１２】
図１０は第２実施例としての経路案内システムの構成を示す説明図である。経路案内システムは、端末１００Ａ、サーバ２００Ａ、およびデータ生成装置３００Ａから構成されている。端末１００Ａは、地図ＤＢのデータ生成や経路探索処理などを行い得るだけの処理能力を有する装置が好ましく、例えば、通信機能を有するパーソナルコンピュータ、ＰＤＡなどを用いることができる。本実施例では、十分な処理能力を有するＣＰＵおよびハードディスクを搭載した車両用のナビゲーション装置を端末１００Ａとして用いるものとした。この端末１００Ａは、必要に応じて車両から取り外して携帯可能であるものとする。
【０１１３】
図中に各装置の機能ブロックを示した。これらの機能ブロックは、第１実施例と同様、所定のコンピュータプログラムをインストールすることによって、ソフトウェア的に構成される。機能ブロックの少なくとも一部は、ハードウェア的に構成してもよい。
【０１１４】
サーバ２００Ａの通信部２１０Ａは、ネットワークＩＮＴ、ＮＥＴを介して、端末１００Ａおよびデータ生成装置３００Ａとの通信を行う。サーバ２００Ａは、ネットワークＩＮＴを介して、歩行者ネットワークＤＢ２１１Ａに格納されたデータを端末１００Ａに供給する。
【０１１５】
歩行者ネットワークＤＢ２１１Ａに格納されているデータは、オペレータからのコマンドによって設定された経路探索データである。高密度整備領域内のリンクデータ、ノードデータ（図２の地図Ａ１参照）、および流用領域を除く低密度整備領域においてオペレータからのコマンドによって追加されたリンクデータ、ノードデータ（図２中の地図Ａ２におけるリンクＬ２４、Ｌ２５参照）が含まれる。以下、説明の便宜上、歩行者ネットワークＤＢ２１１Ａに格納されているデータを「歩行者ネットワークデータ」と称するものとする。
【０１１６】
歩行者ネットワークデータは、データ生成装置３００Ａによって整備される。コマンド入力部３３０Ａは、キーボードやマウスなどの操作を介して、オペレータのコマンドを入力する。歩行者ネットワーク設定部３４０Ａは、このコマンドに応じて歩行者ネットワークデータを設定する。設定途中のデータは、ワークデータ管理部３８０Ａによって管理される。
【０１１７】
表示制御部３７０Ａは、オペレータが歩行者ネットワークデータを設定する際に利用する画面を表示する。この画面表示には、例えば、道路ネットワークＤＢ３１０Ａに含まれる描画データを利用することができる。また、領域指定テーブル３２０Ａを参照して、各領域が高密度整備領域、低密度整備領域のいずれに該当するかも表示することが好ましい。高密度整備領域では、道路リンクは転用されないが、歩行者ネットワークデータを設定する際の参照データとして道路リンクを表示させてもよい。
【０１１８】
歩行者ネットワークＤＢ更新部３９０Ａは、設定された歩行者ネットワークデータをサーバ２００Ａの歩行者ネットワークＤＢ２１１Ａに格納する。データ生成装置３００Ａの機能は、サーバ２００Ａに組み込むことも可能である。
【０１１９】
端末１００Ａは、低密度整備領域のリンクデータ、ノードデータを整備するとともに、サーバ２００Ａから歩行者ネットワークデータの供給を受け、両者をマージして経路探索用の地図ＤＢ１６５Ａを生成する。この機能を実現するための機能ブロックを図中に示した。
【０１２０】
道路ネットワークＤＢ１６０Ａは、低密度整備領域のデータを整備する際に利用される車両用のノード、リンクデータである。領域指定テーブル１６１Ａは、各領域が高密度整備領域、低密度整備領域のいずれに当たるかを示す設定テーブルである。
【０１２１】
転用ネットワーク設定部１６２Ａは、領域指定テーブル１６１Ａで低密度整備領域と指定された領域について、道路ネットワークＤＢ１６０Ａを参照して転用処理、即ち歩行者用のネットワークデータを生成する処理を実行する。生成したデータは、ワークデータ管理部１６３Ａに格納される。ここで生成されるデータの内容およびデータ構造は、第１実施例（図３）と同様である。転用ネットワーク設定部１６２Ａは、領域の指定に関わらず全領域について上述の転用処理を行うものとしてもよい。この構成では、領域指定テーブル１６１Ａを省略することも可能である。
【０１２２】
通信部１２０Ａは、サーバ２００ＡとのネットワークＩＮＴを介した通信を実現する。通信部１２０Ａは、サーバ２００Ａから歩行者ネットワークＤＢ２１１Ａのデータをダウンロードし、ワークデータ管理部１６３Ａに格納する。上述の転用処理が低密度整備領域についてのみ実行されている場合、高密度整備領域に対応するワークデータは未存在となっているから、ダウンロードされたデータをそのまま格納すればよい。転用処理が全領域について実行されている場合には、ダウンロードされたデータを対応する領域に上書きすればよい。いずれの構成においても、低密度整備領域については道路ネットワークＤＢからの転用データが格納され、高密度整備領域については歩行者ネットワークデータが格納されることになる。
【０１２３】
サーバ２００Ａからダウンロードされるデータには、低密度整備領域に追加されるデータも含まれる（図２中の地図Ａ２におけるリンクＬ２４、Ｌ２５参照）。これらのデータについては、転用処理がいずれの領域を対象として行われているかに関わらず、それぞれ対応する領域に追加すべきデータとして格納すればよい。
【０１２４】
マージ処理部１６４Ａは、先に図５，６で示した手順で、ワークデータ管理部１６３Ａのデータに対してマージ処理を実行する。処理結果は、地図ＤＢ１６５Ａに格納される。経路探索部１６６Ａは、ＧＰＳ１４０Ａから入力される現在位置、およびコマンド入力部１３０Ａから入力される探索条件に基づき地図ＤＢ１６５Ａを参照して経路探索を行う。経路探索部１６６Ａの機能は、第１実施例（図１の経路探索部２３０）と同様である。ただし、第２実施例では、端末１００Ａを利用するのは単一のユーザである場合を想定しているため、第１実施例におけるユーザＤＢ２４０は経路探索部１６６Ａまたは地図ＤＢ１６５Ａに組み込むものとした。
【０１２５】
経路案内部１６７Ａは、ＧＰＳ１４０Ａから入力される現在位置に応じて、経路案内を実行する。経路案内部１６７Ａの機能は、第１実施例（図１の経路案内部２２０）と同様である。表示制御部１５０Ａは、これらの経路探索、経路案内時における画面の表示を制御する。
【０１２６】
図１１は第２実施例における地図ＤＢ更新処理のフローチャートである。サーバ２００Ａから歩行者ネットワークＤＢ２１１Ａの更新データが供給された時に、これをダウンロードして、端末１００Ａの地図ＤＢ１６５Ａを更新する処理である。図１０のマージ処理部１６４Ａが主として実行する処理であり、ハードウェア的には端末１００ＡのＣＰＵが実行する処理である。
【０１２７】
この処理では、まずサーバ２００Ａから歩行者ネットワークデータの更新データをダウンロードする（ステップＳ９０）。このダウンロードはプッシュ型、プル型のいずれで行っても良い。ダウンロードされたデータは、ワークデータ管理部１６３Ａに格納される。
【０１２８】
ＣＰＵは次に、更新データに隣接する道路ネットワークデータを読込み（ステップＳ９２）、マージ処理を施す（ステップＳ１００Ａ）。例えば、図中にクロスハッチを付して示すメッシュＭ１（以下、各メッシュについては、メッシュ番号ＮｘＮｙの順に表記し、メッシュ番号３２のように表す場合もある）〜Ｍ４（メッシュ番号５４）が更新データとしてダウンロードされたとする。まず、メッシュＭ１のマージ処理を行う際には、メッシュＭ１の周囲にハッチングを付して示したメッシュ番号２１，３１，４１，２２，４２，２３，３３、４３の各メッシュとの間でマージ処理を実行することになる。
【０１２９】
マージ処理（ステップＳ１００Ａ）の内容は、第１実施例（図５〜７）と同じである。マージ処理が完了すると、ＣＰＵはマージ処理後のデータで地図ＤＢ１６５Ａを更新する（ステップＳ２００Ａ）。同様に、メッシュＭ２〜Ｍ４の処理も実行する。メッシュＭ２〜Ｍ４が全て高密度整備領域である場合には、メッシュＭ２とＭ４の間、Ｍ３とＭ４の間ではマージ処理を省略することが可能である。
【０１３０】
以上で説明した第２実施例の経路案内システムによっても、第１実施例と同じく領域で分けて整備された経路探索データを利用することができるため、第１実施例と同様の効果を得ることができる。また、第２実施例では、歩行者ネットワークデータをサーバ２００Ａから供給することによって、ユーザが保有している道路ネットワークＤＢ１６０Ａを歩行者用の経路探索にも有効活用することができる利点もある。
【０１３１】
以上、本発明の種々の実施例について説明したが、本発明はこれらの実施例に限定されず、その趣旨を逸脱しない範囲で種々の構成を採ることができることはいうまでもない。例えば、経路案内システムでは、第１、第２実施例で各装置の構成を複数のサーバ等の分散処理で提供するシステム構成を採ることもできる。本実施例では、方眼状のメッシュ単位で領域の種別を指定する場合を例示したが、本発明はメッシュの形状に関わらず適用することが可能である。
【図面の簡単な説明】
【０１３２】
【図１】実施例としての経路案内システムの構成を示す説明図である。
【図２】領域ごとの経路探索データの設定状態を示す説明図である。
【図３】経路探索データのデータ構造を示す説明図である。
【図４】地図ＤＢ生成処理のフローチャートである。
【図５】マージ処理の概要を示す説明図である。
【図６】接続先となる道路リンクの選択方法および接続ノードの設定方法を示す説明図である。
【図７】マージ処理のフローチャートである。
【図８】経路探索処理のフローチャートである。
【図９】経路案内処理のフローチャートである。
【図１０】第２実施例としての経路案内システムの構成を示す説明図である。
【図１１】第２実施例における地図ＤＢ更新処理のフローチャートである。
【符号の説明】
【０１３３】
１００、１００Ａ…端末
１１０…主制御部
１２０、１２０Ａ…通信部
１３０、１３０Ａ…コマンド入力部
１４０、１４０Ａ…ＧＰＳ
１５０、１５０Ａ…表示制御部
１６０Ａ…道路ネットワークＤＢ
１６１Ａ…領域指定テーブル
１６２Ａ…転用ネットワーク設定部
１６３Ａ…ワークデータ管理部
１６４Ａ…マージ処理部
１６５Ａ…地図ＤＢ
１６６Ａ…経路探索部
１６７Ａ…経路案内部
２００、２００Ａ…サーバ
２１０、２１０Ａ…通信部
２１１Ａ…歩行者ネットワークＤＢ
２２０…経路案内部
２３０…経路探索部
２３２…詳細サーチ部
２３４…簡易サーチ部
２４０…ユーザＤＢ
２６０…地図ＤＢ参照部
３００、３００Ａ…データ生成装置
３１０…道路ネットワークＤＢ
３２０、３２０Ａ…領域指定テーブル
３３０、３３０Ａ…コマンド入力部
３４０、３４０Ａ…歩行者ネットワーク設定部
３５０…マージ処理部
３６０…転用ネットワーク設定部
３７０、３７０Ａ…表示制御部
３８０、３８０Ａ…ワークデータ管理部
３８１…ワークデータ
３９０…地図ＤＢ更新部
３９０Ａ…歩行者ネットワークＤＢ更新部
【図１】
0004739876.tif 000002
【図２】
0004739876.tif 000003
【図３】
0004739876.tif 000004
【図４】
0004739876.tif 000005
【図５】
0004739876.tif 000006
【図６】
0004739876.tif 000007
【図７】
0004739876.tif 000008
【図８】
0004739876.tif 000009
【図９】
0004739876.tif 000010
【図１０】
0004739876.tif 000011
【図１１】
0004739876.tif 000012