以下、図を参照しながら、この発明の装置、方法、プログラムの一実施の形態について説明する。この発明の経路案内装置は、タブレット型PC(パーソナルコンピュータ)などにより、いわゆるスタンドアロンの装置として実現できる。また、PND(Portable Navigation Device)などと呼ばれる小型のナビゲーション装置として実現することもできる。
しかし、近年においては、スマートフォンなどと呼ばれる高機能携帯電話端末を用いて、インターネット上の地図情報提供サーバー装置を利用することにより、経路(ルート)検索や経路案内サービスの提供を受けることもできるようになってきている。このため、以下に説明する実施の形態においては、高機能携帯電話端末を用いて、経路案内装置を実現する場合を例にして説明する。
[経路案内装置の構成例]
図1は、この実施の形態の経路案内装置の構成例を説明するための図である。この実施の形態の経路案内装置であるユーザー端末装置3は、ネットワーク2を通じて検索サーバー装置1と接続され、検索サーバー装置1と協働することによって、ユーザーに対して経路探索サービスや経路案内サービスを提供する構成になっている。
すなわち、検索サーバー装置1は、ユーザー端末装置3からのルート検索要求に応じて出発地から目的地までの経路を検索し、検索結果をユーザー端末装置3に提供する機能を実現する。このため、検索サーバー装置1は、詳細な地図情報を含む地図データベース、電車を利用した経路の案内(電車ナビ)を実現するための電車ネットワークデータベース、歩行経路の案内(歩行者ナビ)を実現するための歩行者ネットワークDBを備える。
ネットワーク2は、主にインターネットであるが、後述するユーザー端末装置3からインターネットまでを接続する、例えば、携帯電話網や種々のLAN(Local Area Network)等をも含む。また、ユーザー端末装置3は、上述もしたように、スマートフォンと呼ばれる高機能携帯電話端末であり、主に情報の入出力装置としての機能を実現する。
そして、この実施の形態のユーザー端末装置3は、検索サーバー装置1と協働することにより、いわゆる電車ナビや歩行者ナビを実現できるものである。従来の経路案内装置の場合、経路案内装置を持つユーザーが電車に乗っている場合には、周囲の乗客の迷惑にならないようにするため、音声案内を停止する。そして、下車駅においては、歩行者ネットワークデータが示す歩行経路のスタート地点の近傍に経路案内装置を持つユーザーが位置しなければ、音声案内を伴う歩行者ナビを開始しない。経路案内装置が電車の中にある状態で歩行者ナビを開始させないためである。
しかし、このようにした場合には、経路案内装置を持つユーザーが目的とする下車駅に到達後、歩行者ネットワークデータが示す歩行経路のスタート地点の近傍に到達しなければ歩行者ナビが開始されないため、経路案内処理が停止した状態となる場合がある。この場合、経路案内装置のユーザーに対して、適切な案内が提供できない。
そこで、この実施の形態の経路案内装置を実現するユーザー端末装置3では、経路案内の開始時、検索された経路上において、下車駅となる駅のポリゴンの位置および面積範囲を特定し、下車駅のポリゴンの位置および面積範囲を自機に設定しておく。ここで、位置および面積範囲としたのは、下車駅の大きさ(広さ)だけが問題になるのではなく、地図上の何処にどの様な形でどの位の広さの下車駅が存在するのかを正解に特定し、設定(把握)する必要があるためである。
そして、ユーザー端末装置3では、自機の現在位置が下車駅のポリゴン内に到達した(突入した)場合に、自機の現在位置を歩行者ネットワークデータが示す歩行経路のスタート地点に位置付ける。この後、ユーザー端末装置3は、歩行者ナビに切り替えるか否かの確認メッセージを表示すると共に、歩行者ナビに切り替えるか否かの操作入力を自機のユーザーに対して求める。
そして、歩行者ナビに切り替えることを指示する操作入力を受け付けた場合に、歩行者ネットワークデータを用いた歩行者ナビを開始する。このようにすることで、何の案内もなく、経路案内が停止してしまう状態になることを防止することができる。また、ユーザーが動作モード(経路案内モード)の切り替えタイミングを常に意識していなくても、適切なタイミングで、しかも、いわゆるワンタップ操作という極めて簡単な操作だけで、電車ナビから歩行者ナビに切り替えられるようにしている。
なお、下車駅のポリゴンは、下車駅の所在位置に対応すると共に、下車駅の所在領域(地図上における下車駅の占める面積範囲)を示す情報(形状データ)である。したがって、下車駅のポリゴンと下車駅の所在領域とは等価であり、地図上において下車駅が占める閉じた領域範囲(面積範囲)を意味する。そして、この実施の形態において、下車駅のポリゴンデータは、地図上のどの位置のどの範囲に下車駅が存在するかを表示するための情報である。
すなわち、下車駅のポリゴンデータは、下車駅の所在領域(下車駅ポリゴン)の位置と形状とが特定可能なように、この実施の形態では所在領域の輪郭上の複数の点に対応する複数の緯度・経度情報からなる。複数の点を順番に接続することにより、ポリゴンの位置と輪郭(面積範囲の境界)を示すことができる。
なお、緯度・経度情報ではなく、緯度・経度情報に変換可能な地図上の座標データを用いることも可能である。また、ポリゴンの輪郭上の複数の点を接続した線情報(地図上の位置と長さ)を地図データとして持つことも可能である。また、ここでは下車駅に絞って説明したが、ポリゴンは、他の駅や種々の施設など、種々のいわゆる拠点についても設けられている情報である。また、各拠点のポリゴン内には、代表点(中心点)が設けられており、代表点とポリゴンとが対応関係を有している。
そして、ユーザー端末装置3において、表示する地図の縮尺によっては、駅のポリゴンデータを持たない図種の地図データが用いられる場合がある。この場合、下車駅のポリゴンの位置および面積範囲の特定および設定ができない。そこで、ユーザー端末装置3は、必ず、駅のポリゴンデータを持つ図種の地図データ(市街図に相当する地図データ)から、下車駅のポリゴンの位置および面積範囲を特定し、自機に設定する構成になっている。
なお、図1においては、ユーザー端末装置3は1つしか示していないが、実際には、多数のユーザー端末装置3が、ネットワーク2を通じて検索サーバー装置1にアクセスし、検索サーバー装置1が提供する経路案内サービスを利用できるようになっている。以下、この実施の形態において経路案内装置としての機能を実現する検索サーバー装置1とユーザー端末装置3のそれぞれについて詳細に説明する。
[検索サーバー装置1の構成例]
まず、検索サーバー装置1の構成例について説明する。図1の上端側のブロック図に、検索サーバー装置1の基本構成を示す。図1に示す検索サーバー装置1において、通信I/F101は、ネットワーク2を通じて受信した信号を自機が処理可能なデータに変換して取り込んだり、送信用の種々のデータをプロトコルに準拠した信号に変換してネットワーク2に送出したりする。なお、I/Fはインターフェースの略称である。
制御部102は、検索サーバー装置1の各部を制御するものであり、図示しないが、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)がCPUバスを通じて接続されて構成されたコンピュータ装置である。また、制御部102は、種々のアプリケーションを実行するアプリケーション実行部としても機能する。記憶装置103は、記録媒体としてハードディスクを備え、種々のアプリケーションプログラムや種々の処理により得られたデータ等のハードディスクへの書込み/記録保持/読み出し/削除を行う。
地図DB104、電車ネットワークDB105、歩行者ネットワークDB106のそれぞれは、ハードディスクなどの大容量記録媒体に形成され、所定のデータを記憶保持する。ここで、文字「DB」は、データベースの略称である。
地図DB104は、地図を描画するための例えばベクトルデータやラスタデータ、注記(注釈)データ等の種々の地図情報(地図データ)を緯度・経度情報に対応付けて記憶保持する。具体的に、地図DB104に蓄積されている地図情報は、例えば、道路、鉄道、河川、山岳、商業施設、金融機関、住宅、標識などの所定の種別毎(レイヤ毎)に形成されている。この地図情報には、上述した種々の施設についてのポリゴンデータも含まれる。
また、地図DB104は、各レイヤに含まれる種々の店舗や種々の施設、あるいは、地形上の特徴点などである種々の拠点について、いわゆるPOI(point of interest)情報と呼ばれる拠点情報をも保持している。例えば、地図上に飲食物を提供する拠点(飲食店)が存在する場合、その飲食店は、どのような飲食物を提供する店なのか、規模はどれ位なのか、どのような顧客が多いのか等の詳細情報が整えられている。
電車ネットワークDB105は、各鉄道会社の路線別の駅ノードデータと駅間リンクデータ、路線間の乗り換えリンクデータ、アクセス・イグレスリンクデータなどから構成される。駅ノードデータは、運営主体、路線名、駅名などの情報を持ち、駅間リンクデータは、運営主体、路線名、距離、速度、運賃などの情報を持つ。また、乗り換えリンクデータは、距離、速度、運賃などの情報を持つ。また、出発地から最寄り駅までのリンクがアクセスリンクであり、下車駅から目的地までのリンクがイグレスリンクである。このため、アクセス・イグレスリンクは、簡単には、駅間リンク以外の駅ノードへの種々のリンクを意味する。この電車ネットワークDB105の電車ネットワークデータにより、出発地から目的地まで経路において、ユーザーが電車で移動すべき経路の検索と案内とを実現できる。
歩行者ネットワークDB106は、ノードデータ及びリンクデータからなる歩行者用道路ネットワークデータを記憶保持する。ノードデータは、ランドマーク、建物、施設、交差点、分岐点、屈曲点などの地点を表す。また、リンクデータは、ノードデータを結ぶ線分によって、歩行者が通行可能な一般道、種々の道路に付随する歩道、横断歩道、歩道橋、建物内や公園内の通り抜け可能な歩行者用通路など、歩行者が通行可能な道路を示す。また、歩行者ネットワークDB106は、駅構内の通行可能な経路についても、ノードとリンクとよって管理している。そして、各リンクデータには、そのリンクを構成するノードの番号と、リンクコストと、リンク種別等の情報が対応付けられている。
リンクコストは、そのリンクが表す道路を通行する際にユーザーにかかる負荷を表している。この実施の形態においてリンクコストは、そのリンクが表す道路の長さに応じたコストと、そのリンクが表す道路を通行するのに要する時間に応じたコストの両方を備えている。そして、リンクコストは、いわゆるダイクストラ法により、リンクコストが最小となる経路を探索する場合に参照される。リンク種別は、当該リンク部分が、高速道路、国道、県道、市町村道、私道の内のどれかを示す情報である。この他にも、リンクデータは、そのリンクの道幅などの詳細情報を備えている。この歩行者ネットワークDB106の歩行者ネットワークデータにより、出発地から目的地までの経路において、ユーザーが徒歩で移動すべき経路の検索と案内とを実現する。
なお、図1には図示しなかったが、検索サーバー装置1は、自動車ネットワークデータベースをも備える。自動車ネットワークデータベースの基本的なデータ構成は、上述した歩行者ネットワークDBの歩行者ネットワークデータと同様である。しかし、自動車ネットワークデータベースで管理されるリンクデータは、高速道路、国道、県道、市町村道、私道などの自動車が通行可能な経路についてのものとなる。
要求抽出部107は、通信I/F101を通じて受信したユーザー端末装置3からの種々の要求から必要情報を抽出し、関係する各部に供給する。通信I/F101を通じてユーザー端末装置3から経路検索要求を受信した場合には、要求抽出部107は、当該受信した要求から検索条件を抽出し、これを経路検索部108に供給する。経路検索部108は、要求抽出部107によって抽出された検索条件に基づいて、電車ネットワークDB105や歩行者ネットワークDB106のネットワークデータを参照して出発地から目的地までの経路(ルート)の検索を行う。
要求情報提供部109は、後述するユーザー端末装置3からの要求に応じて提供すべき情報を整えて、これを通信I/F101を通じてネットワーク2に送出し、要求元のユーザー端末装置3に提供する。例えば、ユーザー端末装置3から経路検索要求を受信している場合には、経路検索部108の検索結果から地図上に経路を示した検索結果を形成し、これを要求元のユーザー端末装置3に提供したり、当該経路の案内に用いるネットワークデータを提供したりする。また、要求情報提供部109は、地図DB104に記憶されている市街図を形成する図種の地図データから、経路検索して得られた経路上における下車駅(降車駅)のポリゴンを含む地図データなどを要求元のユーザー端末装置3に提供する処理なども行う。
このような構成を有する検索サーバー装置1は、ユーザー端末装置3からの経路検索要求に応じて経路検索を行って、その検索結果を要求元のユーザー端末装置3に提供するなど、要求に応じた情報を要求元に提供する機能を実現している。
[ユーザー端末装置3の構成例]
次に、ユーザー端末装置3の構成例について説明する。図1の下端側のブロック図に、ユーザー端末装置3の基本構成を示す。図1に示すユーザー端末装置3おいて、無線通信部301は、ネットワーク2を通じて受信した信号を自機が処理可能なデータに変換して取り込んだり、送信用の種々のデータをプロトコルに準拠した信号に変換してネットワーク2に送出したりする。当該無線通信部301には、送受信アンテナ301Aが接続されている。
制御部302は、ユーザー端末装置3の各部を制御するものであり、図示しないが、CPU、ROM、RAMがCPUバスを通じて接続されて構成されたコンピュータ装置である。また、制御部302は、種々のアプリケーションを実行するアプリ実行部としても機能する。記憶装置303は、記録媒体として不揮発性メモリを備え、種々のアプリケーションプログラムや種々の処理により得られたデータ等の不揮発性メモリへの書込み/記録保持/読み出し/削除を行う。
操作部304は、ユーザー端末装置3に設けられたハードウェアキーからなり、ユーザーからの操作入力を受け付けて、受け付けた情報を制御部302に供給する。なお、操作部304に設けられたハードウェアキーは例えば電源のオン/オフキーや基本機能を実行するための幾つかのファンクションキー等である。時間制御部305は、現在年月日、現在曜日、現在時刻を管理する。また、GPS部306およびGPSアンテナ306Aは、自機の現在位置を測位するものである。
表示部307は、種々の画像データや映像データの供給を受けて、これを映像信号に変換し、当該映像信号に応じた画像や映像を自己の表示画面に表示する。また、表示部307の表示画面に貼付されたタッチパネル308は、表示画面に表示される情報と共に、いわゆるソフトウェアキーを構成する。したがって、制御部302は、タッチパネル308からのユーザーの指示位置を示す情報と当該指示位置に対応する表示部307の表示画面上に表示された情報とに基づいて、ユーザーからの指示入力が認識できるようになっている。
音声出力部309は、これに供給される種々の音声データをアナログ音声信号に変換し、これをスピーカ310に供給する。これにより、音声出力部309に供給された音声データに応じた音声がスピーカ310から放音される。これら音声出力部309およびスピーカ310は、例えば、着信音を放音したり、TTS(Text To Speech)機能を実現したりする場合などに用いられる。TTS機能は、経路案内時における音声案内などを実現できるものである。
要求形成部311は、制御部302の制御の下、経路検索要求や種々の情報提供要求を形成し、これを無線通信部301及び送受信アンテナ301Aを通じてネットワークに送出することによって、検索サーバー装置1に送信する。ここで、経路検索要求は、移動手段、出発地、目的地などの経路検索のために必要となる検索条件を含むと共に、送信元の識別情報、送信先の識別情報、当該要求が経路検索要求であることを示す情報などからなる。このように、ユーザー端末装置3から検索サーバー装置1に送信される要求は、送信元と送信先の識別情報、当該要求の識別情報、その他の条件情報などからなるものである。
情報出力処理部312は、制御部302の制御の下、検索サーバー装置1から提供された経路検索結果を表示部307に表示したり、経路案内時において、音声出力部309を通じてスピーカ310から音声案内メッセージを放音させたりする処理を行う。
領域設定部313は、経路案内に用いられる経路上に、自機のユーザーが下車すべき下車駅が設定されている場合に、当該下車駅のポリゴンを含む地図データの提供を検索サーバー装置1に要求し、提供された地図データから下車駅の位置と面積領域とを設定する。図2は、移動経路上に設定された下車駅のポリゴンPGの例を説明するための図である。図2に示すように、検索された経路上においてA駅が下車駅として設定され、A駅から実線Wkで示す経路が徒歩で移動する経路として提供されたとする。なお、下車駅であるA駅には、基準点(中心点)Pが設定されている。
この場合、領域設定部313は、制御部302を通じて要求形成部311を制御し、A駅のポリゴンを含む地図データの提供を要求するメッセージを形成し、これを検索サーバー装置1に送信する。当該要求は、無線通信部301および送受信アンテナ301Aを通じてネットワーク2に送出されて、検索サーバー装置1に送信される。このように、下車駅のポリゴンを含む地図データの提供を要求するのは、次の理由による。すなわち、ユーザー端末装置3において表示に用いる地図データが下車駅部分の地図データでなかったり、下車駅部分の地図データであっても、縮尺によっては下車駅のポリゴンを含まなかったりする場合があるためである。
ユーザー端末装置3からの地図データの提供要求に応じて、検索サーバー装置1からA駅のポリゴンを含む地図データが提供される。この例において、ポリゴンデータは、上述もしたように、下車駅の所在領域(下車駅ポリゴン)の位置と形状とを特定可能なように、この実施の形態では所在領域の輪郭上の複数の点に対応する複数の緯度・経度情報からなる。具体的には、下車駅であるA駅のポリゴンPGを形成するポリゴンデータは、図2に示すように、A駅のポリゴンPGの4隅X1、X2、X3、X4の緯度、経度情報からなるものであるとする。
この場合、領域設定部313は、検索サーバー装置1からのA駅のポリゴンPGの4隅X1、X2、X3、X4の緯度、経度情報を取得し、これを自機のユーザーが下車する下車駅であるA駅のポリゴンの位置と面積領域を示す情報として記憶装置303に設定する。これにより、下車駅であるA駅は、何処にどの位の面積範囲(形状と大きさ)を持つ駅であるかがユーザー端末装置3において把握され、管理される。なお、既に、ユーザー端末装置3が下車駅部分のポリゴンを含む地図データの提供を受けている場合には、地図データの要求は行わず、既に提供を受けている地図データを用いることができる。
領域進入判別部314は、領域設定部313により記憶装置303に設定された下車駅のポリゴンの位置と面積範囲とに基づいて、GPS部306を通じて取得される自機の現在位置が、下車駅のポリゴン内に進入したか否かを判別する。すなわち、図2に示した例に従えば、領域進入判別部314は、下車駅であるA駅のポリゴンPG内に、自機の現在位置Mが存在するか否かを判別する。そして、領域進入判別部314は、自機の現在位置が下車駅のポリゴン内に進入したと判別したときには、これをネットワーク切替制御部315に通知する。
ネットワーク切替制御部315は、領域進入判別部314からの自機の現在位置が下車駅のポリゴン内に進入したことの通知を受けた場合に、電車ネットワークから歩行者ネットワークに切り替える準備処理を行う。具体的に、図2に示した例に従えば、自己の現在位置が下車駅のポリゴン内に進入したことの通知を受けたネットワーク切替制御部315は、まず、下車駅であるA駅における歩行者ネットワークのスタート位置S1に自機の現在位置を位置付ける。
次に、ネットワーク切替制御部315は、下車駅に到着したので徒歩ルート案内を開始するかどうかの確認メッセージを表示部307に表示し、徒歩ルート案内を開始するかどうかの操作入力を、タッチパネル308を通じて受け付ける。そして、徒歩ルート案内を開始することの操作入力を、タッチパネル308を通じて受け付けたとする。この場合、ネットワーク切替制御部315は、制御部302を通じて情報出力処理部312を制御し、歩行者ネットワークデータを用いた徒歩ルート案内(徒歩ナビ)を開始させる。
なお、上述したように、この実施の形態のユーザー端末装置3は、高機能携帯電話端末である。しかし、図1のユーザー端末装置3においては、経路検索や経路案内に直接的に関係のない、通話機能を実現するための通話処理部や送話器、受話器等の構成部分、自機の姿勢や向き等を検出するセンサ部などについては記載を省略している。また、この実施の形態のユーザー端末装置3は、図1においては省略したが、例えば、Wi−Fi規格の無線LAN機能をも備え、無線LAN経由でインターネットに接続することができる。また、無線通信可能なアクセスポイントの設置位置をも考慮して、自機の現在位置を特定したり、GPS部306を通じて取得した現在位置を補正したりする機能をも備えている。
このような構成を有するユーザー端末装置3においては、検索サーバー装置1から提供される経路検索結果に基づいて、当該経路中に自機のユーザーが下車すべき下車駅が設定されている場合に、当該下車駅のポリゴンの位置および面積範囲を自機に設定する。そして、自機の現在位置が当該下車駅のポリゴン内に進入した場合に、徒歩ルート案内への切替準備を開始し、ユーザーによる切り替えることを指示する操作入力を受け付けた場合に、電車ルート案内から徒歩ルート案内にシームレスに切り替えることができる。すなわち、従来の経路案内装置のように、ユーザー端末装置3を持つユーザーが、歩行者ネットワークのスタート位置の近傍に近づくまで、経路案内が停止してしまう状況を生じさることがない。
[下車駅のポリゴンの位置および面積範囲の詳細設定]
ところで、検索サーバー装置1からユーザー端末装置3に提供される地図データは実際には複数のブロックに分割されて記憶保持され、必要な部分(ブロック)の地図データが読み出されて利用される。このため、下車駅のポリゴンが、複数のブロックにわたる場合がある。図3は、下車駅のポリゴンが隣接する複数のブロックにわたって存在する場合の例を説明するための図である。
地図データは、図3において、アルファベットA、B、C、…を付して示したように、複数のブロックに分割されて管理される。この様な地図ブロックは、ユーザー端末装置3への提供の処理単位として用いたり、また、ユーザー端末装置3における表示の処理単位として用いたりされる。そして、図3に示すように、緯度、経度データであるX1、X2、X3、X4で特定される下車駅のポリゴンが、ブロックEとブロックFにわたって存在していたとする。
ここで、簡単に下車駅のポリゴンに進入したか否かを判別するものとすれば、下車駅であるブロックEに存在する代表点(中心点)Pを含むポリゴン部分については、ブロックEの地図データのみを用いることにより特定可能である。下車駅のブロックEに存在するポリゴン部分だけを用いて、ユーザー端末装置3のユーザーの現在位置が、下車駅のポリゴン内に進入したか否かを判別する場合を考える。この場合、ユーザー端末装置3の現在位置が位置M1に示すように、下車駅のブロックEに存在するポリゴン部分(図3において斜線を付して示した部分)に進入しなければ、下車駅のポリゴンに進入したことの判別ができない。すなわち、下車駅判定に使用するポリゴンの面積が狭くなってしまう。
この様な状況は、ユーザー端末装置3の現在位置が下車駅のポリゴン内に進入したか否かの判別ができるタイミングが、駅毎に異なってしまうことを意味し、経路案内を行う上で好ましくない。このような状況は、ユーザーの乗車位置によっては、ある駅では当該駅に進入したことが判別(検知)されたのに、別の駅では当該駅に進入したことが検知されないといったことが発生し得る。このため、経路案内の利用者であるユーザー端末装置3のユーザーを戸惑わせる場合もある。このため、図3において、位置M2が示すように、下車駅にユーザー端末装置3の現在位置が進入した直後にユーザー端末装置3の現在位置が下車駅のポリゴン内に進入したことが判別できるようにすることが望ましい。
そこで、この実施の形態のユーザー端末装置3の領域設定部313は、代表点(中心点)を含む下車駅のポリゴン部分が存在するブロックの地図データと、当該ブロックに隣接するブロックの地図データの提供を受ける。そして、領域設定部313は、提供された複数のブロックの中から検索した経路が引かれているブロックを特定する。図3に示した例において、点線RTが検索した経路を示している。したがって、この例の場合には、経路が引かれたブロックとして、ブロックEとブロックFとが特定される。
そして、領域設定部313は、特定した各ブロックに、下車駅のポリゴンのつなぎ目があるか否かを判断し、下車駅のポリゴンが複数のブロックにわたる場合でも下車駅のポリゴン全体の範囲(位置および面積範囲)を特定する。すなわち、まず、代表点(中心点)Pを含む下車駅のポリゴン部分が存在するブロックの地図データにおいて、下車駅のポリゴン部分の頂点の位置(緯度、経度)を確認する。
次に、領域設定部313は、隣接するブロックFにおいて、駅のポリゴンの頂点の位置(緯度、経度)を確認する。そして、両ブロックの駅のポリゴンの頂点について、少なくとも2ヶ所で共通していれば、当該2ヶ所は下車駅のポリゴンのつなぎ目であると判別できる。図3に示した例の場合、簡単には下車駅ポリゴンの輪郭上の位置J1、J2が、ブロックEとブロックFにおいて共通している。このため、図3において、位置J1、J2が下車駅のポリゴンのつなぎ目部分の端部(下車駅ポリゴンの輪郭上のつなぎ目)として特定できる。
そして、図3に示した例の場合、ブロックEに存在する下車駅のポリゴンの、位置J1、J2以外の2つの頂点X1、X2がブロックE側の下車駅のポリゴンの頂点であると特定できる。同様に、ブロックFに存在する下車駅のポリゴンの、位置J1、J2以外の2つの頂点X3、X4がブロックF側の下車駅のポリゴンの頂点であると特定できる。これにより、図3に示した例の場合、ブロックEに存在する位置X1、X2およびブロックFに存在する頂点X3、X4により、下車駅のポリゴン全体の位置と面積範囲とを特定できる。換言すれば、ブロックEに存在する下車駅のポリゴンとブロックFに存在する下車駅のポリゴンとを合体し、下車駅のポリゴンを、連続する位置に連続する面積領域を持つものとして特定することができる。
このように、ユーザー端末装置3の領域設定部313は、代表点(中心点)を含む下車駅のポリゴン部分が存在するブロックの地図データと、これに隣接するブロックの地図データとを考慮して、下車駅のポリゴンの全体の位置と面積範囲を正確に特定できる。なお、図3に示した例は、下車駅のポリゴンの形状が長方形と単純な形であったが、下車駅のポリゴンの形状が複雑であっても、ポリゴンの頂点部分の位置と、つなぎ目の位置とが正確に把握できれば、形状が複雑な下車駅の位置と面積範囲についても正確に特定できる。
[経路検索および経路案内処理]
次に、この実施の形態のユーザー端末装置3において実行される経路検索および経路案内処理について説明する。図4、図5は、ユーザー端末装置3で実行される経路検索および経路案内処理を説明するためのフローチャートであり、図6は、ユーザー端末装置3で当該経路検索および経路案内処理を行う場合に用いられる入力画面等の一例を説明するための図である。
図4、図5に示す処理は、ユーザー端末装置3において、表示部307に表示される所定のメニューから例えば「経路検索」などという経路探索および経路案内処理を実行するための所定の項目が選択された場合に制御部302により実行される。図3、図4に示す処理が実行されると、まず、制御部302は、所定のURL(Uniform Resource Locator)を用いて検索サーバー装置1にアクセスし(ステップS101)、入力画面の提供を受けて、これを表示部307に表示する(ステップS102)。
ステップS102で表示される入力画面は、例えば、図6(A)に示すように、移動手段の選択入力欄N1、出発地の入力欄N2、目的地の入力欄N3、希望する出発時刻や到着時刻の入力欄N4が表示されると共に、「経路を表示」ボタンBTが表示されたものである。「経路を表示」ボタンBTは、検索条件にしたがって経路検索を実行し、その結果の表示を指示するための操作ボタンである。
そして、制御部302は、ステップS102で表示部307に表示した入力画面(図6(A))に対する検索条件の入力と、「経路を表示」ボタンBTに対する操作入力を、タッチパネル308を通じて受け付ける(ステップS103)。検索条件が入力され、「経路を表示」ボタンBTが操作されると、制御部302は、要求形成部311を制御し、経路検索要求を生成し、これを検索サーバー装置1に対して送信する(ステップS104)。経路検索要求は、無線通信部301および送受信アンテナ301Aを通じてネットワーク2に送出され、検索サーバー装置1に送信される。
この後、制御部302は、送受信アンテナ301Aおよび無線通信部301を通じて、自機からの経路検索要求に応じた経路検索結果を検索サーバー装置1から受信する(ステップS105)。そして、制御部302は、検索サーバー装置1からの経路検索結果を受信したか否かを判別する(ステップS106)。ステップS106の判別処理において、検索サーバー装置1からの経路検索結果を受信していないと判別したときには、制御部302は、ステップS105からの処理を繰り返し、経路検索結果の受信待ちとなる。
また、ステップS106の判別処理において、検索サーバー装置1からの経路検索結果を受信したと判別したとする。この場合、制御部302は、情報出力処理部312を制御して、表示部307に表示する経路検索結果を形成し、これを表示部307に表示する(ステップS107)。経路検索結果は、例えば、図6(B)に一例を示すように、出発地(S)から目的地(G)までを含む地図上に対して識別可能なように経路(ルート)が示されたものとなる。図6(B)に示した例の場合には、出発地(S)からA駅に行き、A駅から電車に乗ってB駅で下車し、B駅から徒歩で目的地(G)に至る経路が示されている。
そして、制御部302は、タッチパネル308を通じて経路検索結果の表示画面に対する操作入力を受け付ける(ステップS108)。この後、制御部302は、経路検索結果の表示画面の左上端部に表示された「戻る」ボタンが操作されたか否かを判別する(ステップS109)。ステップS109の判別処理において、「戻る」ボタンが操作されたと判別したときには、制御部302は、ステップS102からの処理を繰り返し、検索条件の再設定を行って、再度の経路検索を行うことができるようにされる。
ステップS109の判別処理において、「戻る」ボタンは操作されていないと判別したときには、例えば、ユーザー端末装置3に設けてられているホームボタンなどの処理の終了を指示する操作ボタンが操作されたか否かを判別する(ステップS110)。ステップS110の判別処理において、終了操作が行われたと判別したときには、制御部302は、表示部307の表示画面を図4、図5に示す処理が開始される前の状態に戻すなどの所定の終了処理を行って(ステップS111)、この図4、図5に示す処理を終了させる。
また、ステップS110の判別処理において、終了操作は受け付けていないと判別したときには、制御部302は、図5に示す処理に進み、経路検索結果の表示画面の右上端部に表示された「案内」ボタンが操作されたか否かを判別する(ステップS112)。ステップS112の判別処理において、「案内」ボタンは操作されていないと判別したときには、有効な操作入力は行われていないので、制御部302は、図4に示したステップS108からの処理を繰り返し、ユーザーからの操作入力の受け付けを継続させる。
また、ステップS112の判別処理において、「案内」ボタンが操作されたと判別したときには、制御部302は、領域設定部313を制御して、ネットワークを切り替える領域を設定する処理を行う(ステップS113)。この実施の形態において、ステップS113では、上述もしたように、電車ネットワークから歩行者ネットワークへの切り替えが発生する下車駅のポリゴンの位置および面積範囲をユーザー端末装置3の記憶装置103に設定する。
具体的に、ステップS113において、制御部302は、要求形成部311を制御して、下車駅の代表点(中心点)を含むポリゴン部分を含むブロックの地図データと、そのブロックに隣接するブロックの地図データの提供を検索サーバー装置1に対して要求する。そして、制御部302は、領域設定部313を制御し、検索サーバー装置1から提供を受けた各ブロックの地図データについて、図3を用いて説明したように、検索された経路を含み、下車駅のポリゴンのつなぎ目のあるブロックを特定する。
さらに、制御部302は、領域設定部313を制御し、特定したブロックに存在する下車駅のポリゴンの頂点を特定し、下車駅のポリゴンの全体の位置と面積範囲を特定する。この後、領域設定部313は、地図上のどの位置に、どのような形状のどの位の大きさの下車駅のポリゴンが存在するのかを示す情報として、下車駅のポリゴンの各頂点の緯度、経度情報を記憶装置303に格納する。これにより、下車駅のポリゴンの位置と面積範囲とがユーザー端末装置3に設定される。
この後、制御部302は、情報出力処理部312などを制御し、経路案内を開始させる(ステップS114)。この場合、制御部302は、順次にGPS部306を通じて自己の現在位置を取得し、情報出力処理手段を制御して、表示部307に表示された地図上に自己位置を表示させる。また、制御部302は、必要に応じて、音声出力部309およびスピーカ310を通じて案内音声を放音させる。これらの出力情報により、検索された経路上をユーザー端末装置3のユーザーが辿れるようにされる。なお、必要に応じて、制御部302は、要求形成部311を制御し、ユーザーの現在位置に応じた地図を表示したり、経路案内を行ったりするために、地図データやネットワークデータの提供を要求し、必要な情報の提供を受ける。
そして、制御部302は、GPS部306を通じて取得する自機の位置が、ステップS113で設定した切り替え領域内に進入したか否かを判別する(ステップS115)。この実施の形態において、ステップS115では、ユーザー端末装置3の現在位置が、下車駅のポリゴン内に進入したか否かを判別することになる。そして、ステップS115の判別処理において、ユーザー端末装置3の現在位置が下車駅のポリゴン内に進入していないと判別したときには、ステップS115の処理を繰り返す。すなわち、自己の現在位置が下車駅のポリゴン内に進入するまで、ステップS115の判別処理が繰り替えされる。
そして、ステップS115の判別処理において、ユーザー端末装置3の現在位置が下車駅のポリゴン内に進入したと判別したとする。この場合、制御部302は、ネットワーク切替制御部315を制御し、まず、自己位置を下車駅の歩行者ネットワークのスタート位置に位置付けると共に、ネットワークデータを切り替えてよいか否かの確認メッセージを表示する(ステップS116)。
当該確認メッセージは、例えば、図6(C)に示すように、電車ナビから歩行ナビに切り替えてよいか否かを確認するメッセージであり、「開始する」ボタンと「キャンセル」ボタンとが表示されたものである。この後、制御部302は、図6(C)に設けられている「開始する」ボタンあるいは「キャンセル」ボタンに対する操作入力を受け付ける(ステップS117)。
そして、制御部302は、「開始する」ボタンが操作されたか否か、すなわち、この実施の形態では、電車ネットワークから歩行者ネットワークに切り替えて、徒歩ナビを開始させることが指示されたか否かを判別する(ステップS118)。ステップS118の判別処理において、「開始する」ボタンは操作されていないと判別したときには、制御部302は、「キャンセル」ボタンが操作されたか否かを判別する(ステップS119)。ステップS119の判別処理において、「キャンセル」ボタンは操作されていないと判別したときには、有効な操作入力は受け付けていないので、ステップS117からの処理を繰り返し、確認メッセージに対する操作入力を受け付ける処理を継続させる。
ステップS119の判別処理において、「キャンセル」ボタンが操作されたと判別したときには、制御部302は、自己位置をGPS部306からの現在位置とすると共に、表示部307に表示している確認メッセージ消去する(ステップS120)。そして、制御部302は、時間制御部305が提供する時間情報に基づいて、所定時間経過するのを待つ(ステップS121)。一定時間は、例えば、数十秒程度など適宜の時間とされる。
ここで一定時間の経過を待つのは、ユーザー端末装置3を持つユーザーの状況の変化を待つためであり、具体的にこの実施の形態では、ユーザーが電車から降りられない状況が変わるのを待つためである。そして、ステップS121の処理において、一定時間経過したと判別した時には、制御部302は、ステップS115からの処理を繰り返す。これにより、ユーザー端末装置3を持つユーザーの状況が変わった可能性があるので、徒歩ナビへの切り替え準備処理(切替手順)が再度行われる。
また、ステップS118の判別処理において、「開始する」ボタンが操作されたと判別したときには、制御部302は、新たなネットワークデータに切り替えて、案内処理を実行する(ステップS122)。この実施の形態において、ステップS122では、電車ネットワークデータを用いた電車ナビから、徒歩ネットワークを用いた徒歩ナビに切り替えられる。これにより、制御部302は、情報出力処理部312を制御し、表示部307に表示された地図上に自己位置を示すと共に、音声出力部309とスピーカ310とを通じて、音声メッセージにより経路案内が行われる。
この後、制御部302は、目的地に到達したり、経路案内を終了させる操作が行われたりするなどの経路案内を終了させる所定の事象が生じたか否かを判別する(ステップS123)。ステップS123で経路案内を終了させる所定の事象は生じていないと判別したときには、ステップS123の処理を繰り返し、経路案内が続行される。ステップS123の判別処理において、経路案内を終了させる所定の事象が生じたと判別したとする。この場合、制御部302は、経路案内を終了させるメッセージを表示し、確認入力を求め、確認入力がなされた後に、経路検索および経路案内処理を終了させるといった所定の案内終了処理を実行し(ステップS124)、この図4、図5に示す処理を終了させる。
このように、この実施の形態のユーザー端末装置3は、検索サーバー装置1と協働することにより、経路検索および経路案内処理を行う。この場合、ユーザー端末装置3は、経路案内のためのネットワークデータの切り替えが必要な場所において、経路案内が停止した状態を生じさせることなく、ネットワークデータの切り替えをスムーズに行って、経路案内をシームレスに継続させることができる。
なお、この実施の形態では、図5のステップS119からステップS121に示したように、図6(C)に示した画面で、「キャンセル」ボタンが選択されたときには、所定時間経過後にステップS115からの処理を繰り返すようにした。しかし、これに限るものではない。「キャンセル」ボタンが選択されたときには、下車駅を変更した可能性などがあるので、図4のステップS102からの経路検索からの処理を行うようにしたり、また、図4、図5に示した経路検索および経路案内処理を終了させたりすることもできる。すなわち、図4、図5に示した処理は一例であり、種々の処理内容や処理順序の経路検索および経路案内処理を行うことが可能である。
[実施の形態の効果]
この実施の形態においては、ユーザー端末装置3は、検索サーバー装置1と協働することにより、経路案内装置として機能する。そして、下車駅において、電車を利用した経路の案内(電車ナビ)から歩行経路の案内(歩行ナビ)に切り替える場合に、ユーザーの自主的な切り替え操作に依存することなく、適切なタイミングで、案内の切り替えが可能であることをユーザーに通知できる。
この適切なタイミングで、案内の切り替えが可能であることの通知を行うために、ユーザー端末装置3では、下車駅のポリゴンの位置と面積範囲とを正確に把握し、ユーザー端末装置3の現在位置が下車駅のポリゴン内に進入したことが確認できたタイミングで、案内の切り替えが可能であることが通知できる。したがって、下車駅がどの駅になったとしても、基本的に同様のタイミングで、案内の切り替えが可能であることが通知でき、安心して利用可能な経路案内装置が実現できる。
[変形例など]
上述した実施の形態では、電車を利用した経路の案内(電車ナビ)から歩行経路の案内(歩行ナビ)に切り替える場合を例にして説明したが、これに限るものではない。例えば、ショッピングセンター、デパート、空港などといった大規模施設までは、徒歩経路の案内(徒歩ナビ)や自動車経路の案内(自動車ナビ)を利用して向い、当該大規模施設のポリゴン内に自己位置が進入した場合に、屋内(施設内)の案内(屋内(施設内)ナビ)に切り替えるための処理を開始するといったことが可能となる。すなわち、この発明は、経路案内のために用いるネットワークデータの切り替えが必要となるエリアにおいて、ネットワークデータを適切に切り替えるようにする場合に適用できる。
また、上述した実施の形態においては、ユーザー端末装置3が検索サーバー装置1と協働することにより経路案内装置として機能するようにしたが、これに限るものではない。地図DB104、電車ネットワークDB105、歩行者ネットワークDB106、経路検索部108を、ユーザー端末装置3に設けることにより、ユーザー端末装置3単体で、いわゆるスタンドアロンの経路案内装置を実現できる。
また、ユーザー端末装置3から適宜のタイミングでユーザー端末装置3の現在位置などの必要情報を検索サーバー装置1に送信するようにし、検索サーバー装置1に領域設定部313、領域進入判別部314、ネットワーク切替制御部315を設けるようにしてもよい。この場合には、検索サーバー装置1側で、ネットワークデータを切り替えるべき領域の設定、当該領域にユーザー端末装置3が進入したことの判別、ネットワークデータの切り替えなどの処理を行うことになる。また、ユーザー端末装置3では、主に案内に利用する地図データの表示処理や経路案内のための音声メッセージの出力処理を行うことになる。このように、検索サーバー装置1で行う処理とユーザー端末装置3で行う処理とは、分担が可能である。
また、上述した実施の形態では、ユーザー端末装置3は高機能携帯電話端末であるものとして説明したが、これに限るものではない。高機能携帯電話端末に替えて、例えば、タブレット型PCやノート型PCなどの情報処理装置を用いた場合にも、この発明を実現できる。
[その他]
上述した実施の形態の説明からも分かるように、経路案内装置の設定手段、現在位置取得手段、判別手段の機能は、ユーザー端末装置3の領域設定部313、GPS部306、領域進入判別部314が実現している。また、経路案内装置の通知手段は、主に表示部307が実現し、受付手段の機能は主にタッチパネル308が実現し、切替制御手段の機能はネットワーク切替制御部315が実現している。
また、図4、図5に示した処理を行なう方法が、この発明の経路案内方法に対応している。また、図4、図5に示した処理を実行するプログラムを形成し、携帯電話端末、高機能携帯電話端末、通信機能を備えたタブレット型PCなどに実行可能なように搭載することによって、この発明の経路案内装置を実現できる。また、図1に示したユーザー端末装置3の要求形成部311、情報出力処理部312、領域設定部313、領域進入判別部314、ネットワーク切替制御部315の各機能は、制御部302で実行されるソフトウェアにより、制御部302の機能として実現することもできる。また、図1に示した検索サーバー装置1において、要求抽出部107、経路検索部108、要求情報提供部109の各機能は、制御部102で実行されるソフトウェアにより、制御部102の機能として実現することもできる。