JP2021056240A - 探索装置、探索方法及び探索用プログラム - Google Patents
探索装置、探索方法及び探索用プログラム Download PDFInfo
- Publication number
- JP2021056240A JP2021056240A JP2020213347A JP2020213347A JP2021056240A JP 2021056240 A JP2021056240 A JP 2021056240A JP 2020213347 A JP2020213347 A JP 2020213347A JP 2020213347 A JP2020213347 A JP 2020213347A JP 2021056240 A JP2021056240 A JP 2021056240A
- Authority
- JP
- Japan
- Prior art keywords
- range
- search
- traffic
- division
- area
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Instructional Devices (AREA)
- Navigation (AREA)
- Traffic Control Systems (AREA)
Abstract
【課題】地理的な領域として複雑な形状を有する通行回避領域を回避しつつ効率的に経路を探索することが可能な探索装置を提供する。【解決手段】車両の経路を探索するナビゲーション装置NVにおいて、車両の移動が制限されるべき通行禁止区域を示す通行禁止区域データを取得するインターフェース1と、その通行禁止区域データに基づいて、通行禁止区域を内含し且つその外縁の少なくとも一部が内側から接するように矩形範囲を設定する設定部2と、矩形範囲を複数の分割範囲に分割する分割部3と、各分割範囲に基づいて、いずれかの分割範囲に相当する領域と通行禁止区域との間に重なりがあるか否かを、分割範囲ごとに判定する判定部3と、重なりがあると判定された分割範囲に相当する領域内に存在する道路等を候補から除外するか、又は当該道路等が他の道路等に対して相対的に経路の一部となり難いようにして探索を行う探索部5と、を備える。【選択図】図2
Description
本願は、探索装置、探索方法及び探索用プログラムの技術分野に属する。より詳細には、移動体の移動に関する探索を行う探索装置及び探索方法並びに当該探索装置用のプログラムの技術分野に属する。
近年、自動車等の車両、自転車、鉄道車両又は人等である移動体の目的地までの移動を案内するナビゲーション装置が広く一般化しているが、この案内のためには、通常、当該目的地までの経路が適切に設定される必要がある。この点について、車両用の経路を設定するための従来技術の一例として、下記特許文献1に記載された技術がある。
この特許文献1に記載されている技術では、その車両の運転者又は同乗者であるユーザが、自らの操作により通行回避領域を設定し、その設定された通行回避領域内に存在する道路を探索対象から除外して経路の探索を行う構成とされている。このとき、当該通行回避領域の例としては、通行止めとなることが予め判っている地理的な領域や、渋滞が常態的に発生している交差点や道路を含む領域が挙げられる。
しかしながら、上記特許文献1に記載されている技術では、上記ユーザが予め設定された単純な形状(例えば矩形)の通行回避領域を自ら設定することとされており、任意の形状の領域内に存在する道路等を探索の対象から除外することができないという問題点があった。
そこで本願は、上記の問題点に鑑みて為されたもので、その課題の一例は、地理的な領域として複雑な形状を有する通行回避領域がある場合でも、それを回避しつつ効率的に経路を探索することが可能な探索装置及び探索方法並びに当該探索装置用のプログラムを提供することにある。
上記の課題を解決するために、請求項1に記載の発明は、移動体の移動が制限される移動規制領域に関する情報を取得する取得手段と、前記移動規制領域を内含する範囲を設定する設定手段と、前記範囲を複数の分割範囲に分ける分割手段と、前記分割範囲と前記移動規制領域の少なくとも一部に重なりがあるかを判定する判定手段と、前記重なりがあると判定された前記分割範囲内に存在するリンク又はノードの少なくとも一方について、探索候補から除外するか、又はコストを増加させて前記移動体の経路を探索する探索手段と、を備える。
上記の課題を解決するために、請求項2に記載の発明は、取得手段と、設定手段と、分割手段と、判定手段と、探索手段と、を備える探索装置において実行される探索方法であって、移動体の移動が制限される移動規制領域に関する情報を前記取得手段により取得する取得工程と、前記移動規制領域を内含する範囲を前記設定手段により設定する設定工程と、前記分割手段により、前記範囲を複数の分割範囲に分ける分割工程と、前記分割範囲と前記移動規制領域の少なくとも一部に重なりがあるかを前記判定手段により判定する判定工程と、前記重なりがあると判定された前記分割範囲内に存在するリンク又はノードの少なくとも一方について、探索候補から除外するか、又はコストを増加させて前記移動体の経路を前記探索手段により探索する探索工程と、を含む。
上記の課題を解決するために、請求項3に記載の発明は、コンピュータを、請求項1に記載の探索装置として機能させる。
次に、本願を実施するための形態について、図1を用いて説明する。なお図1は、実施形態に係る経路探索装置の概要構成を示すブロック図である。
図1に示すように、実施形態に係る経路探索装置Sは、車両、自転車、電車又は人等である移動体の移動経路を探索する経路探索装置であって、取得手段1と、設定手段2と、分割手段3と、判定手段4と、探索手段5と、を備えて構成されている。
この構成において取得手段1は、上記移動体の移動が制限されるべき地理的な領域である移動規制領域の範囲を示す移動規制範囲情報を取得する。この場合の移動規制領域とは、例えば天災やイベント開催等に起因する通行規制エリアが該当する。
そして設定手段2は、取得手段1により取得された移動規制範囲情報に基づいて、移動規制領域を内含し且つ当該移動規制領域の外縁の少なくとも一部が内側から接するように矩形範囲を設定する。
次に分割手段3は、設定手段2により設定された矩形範囲を複数の分割範囲に分割する。
更に判定手段4は、分割手段3により分割された分割範囲をそれぞれ示す分割範囲情報に基づいて、いずれかの分割範囲に相当する領域と移動規制領域の少なくとも一部との間に重なりがあるか否かを、分割範囲ごとに判定する。
これにより探索手段5は、判定手段4により重なりがあると判定された分割範囲に相当する領域内に存在する移動体の移動路又は移動地点の少なくともいずれか一方を探索候補から除外するか、又は当該少なくともいずれか一方が移動体の他の移動路又は他の移動地点に対して相対的に移動経路の一部となり難いようにして、当該移動体の移動経路の探索を行う。
以上説明したように、実施形態に係る経路探索装置Sの動作によれば、移動体についての移動規制領域を内含し且つその外縁の少なくとも一部が内側から接するような矩形範囲を複数に分割した分割範囲をそれぞれ示す分割範囲情報に基づいて、移動規制領域の少なくとも一部との重なりがある分割範囲に相当する領域内に存在する移動路等を探索候補から除外するか、又は当該移動路等が他の移動路等に対して相対的に移動経路の一部となり難いようにして、移動経路の探索を行う。よって、地理的な領域として複雑な形状を有する移動規制領域がある場合でも、それを回避しつつ効率的に移動経路を探索することができる。
次に、上述した実施形態に対応する複数の具体的な実施例について、図2乃至図14を用いて説明する。なお以下に説明する各実施例は、本願に係る「移動体」の一例としての車両に搭載されているナビゲーション装置に含まれており、且つ当該車両が移動する経路を探索する経路探索装置に本願を適用した場合の実施例である。
(I)第1実施例
初めに、実施形態に対応する第1実施例について、図2乃至図7を用いて説明する。なお、図2は第1実施例に係るナビゲーション装置の概要構成を示すブロック図であり、図3は第1実施例に係る経路探索処理の全体を示すフローチャートであり、図4は当該経路探索処理における通行禁止区域初期化処理を示すフローチャートである。また、図5は実施形例1に係る作業データの生成過程をそれぞれ例示する図であり、図6は第1実施例に係る経路探索処理における通行禁止区域通過判定処理を示すフローチャートであり、図7は当該通行禁止区域通過判定処理をそれぞれ例示する図である。このとき図2では、図1に示した実施形態に係る経路探索装置Sにおける各構成部材に対応する実施例の構成部材それぞれについて、当該経路探索装置Sにおける各構成部材と同一の部材番号を用いている。
初めに、実施形態に対応する第1実施例について、図2乃至図7を用いて説明する。なお、図2は第1実施例に係るナビゲーション装置の概要構成を示すブロック図であり、図3は第1実施例に係る経路探索処理の全体を示すフローチャートであり、図4は当該経路探索処理における通行禁止区域初期化処理を示すフローチャートである。また、図5は実施形例1に係る作業データの生成過程をそれぞれ例示する図であり、図6は第1実施例に係る経路探索処理における通行禁止区域通過判定処理を示すフローチャートであり、図7は当該通行禁止区域通過判定処理をそれぞれ例示する図である。このとき図2では、図1に示した実施形態に係る経路探索装置Sにおける各構成部材に対応する実施例の構成部材それぞれについて、当該経路探索装置Sにおける各構成部材と同一の部材番号を用いている。
図2に示すように、経路探索装置Sの一例を含む第1実施例に係るナビゲーション装置NVは、インターフェース1と、CPU、RAM(Random Access Memory)及びROM(Read Only Memory)等からなる処理部10と、不揮発性のHDD(Hard Disc Drive)及び揮発性のメモリ等を含む記録部11と、ナビゲーション装置NVが搭載されている車両を案内するための各種センサ(例えば、加速度センサ等の自立的位置センサ及びGPS(Global Positioning System)センサ等)を含むセンサ部12と、操作ボタン及びリモコン等を含む操作部13と、液晶ディスプレイ等からなるディスプレイ14と、により構成されている。なお記録部11には、後述する第1実施例に係る経路探索処理を含む上記案内に必要な地図データや音声データ等が不揮発性に記録されている。このとき当該地図データには、例えば交差点や駐車場等に対応したいわゆるノードの地理的な位置を示す緯度/経度データであるノードデータと、例えば交差点間の道路の地理的な位置や形状を示すリンクデータと、が、後述する第1実施例に係る経路探索処理に用いられる道路データとして含まれている。またインターフェース1が、実施形態に係る取得手段1の一例に相当する。
一方処理部10は、設定部2と、分割部3と、判定部4と、探索部5と、により構成されている。このとき設定部2、分割部3、判定部4及び探索部5は、処理部10を構成するいわゆるハードウェアロジック回路により実現されるものであってもよいし、後述する本願に係る経路探索用プログラムを処理部10の上記CPUが読み込んで実行することにより、ソフトウェア的に実現されるものであってもよい。また、上記設定部2が実施形態に係る設定手段2の一例に相当し、分割部3が実施形態に係る分割手段3の一例に相当する。更に、判定部4が実施形態に係る設定手段4の一例に相当し、探索部5が実施形態に係る探索手段5の一例に相当する。更にまた、上記インターフェース1、設定部2、分割部3、判定部4及び探索部5が実施形態に係る経路探索装置Sの一例を構成している。また処理部10が、本発明に係る「付与手段」の一例、「生成手段」の一例及び「選択手段」の一例にそれぞれに相当し、記録部11が本発明に係る「記録手段」の一例に相当する。更にまた探索部5が、本発明に係る「探索開始手段」の一例及び「探索制御手段」の一例にそれぞれに相当し、センサ部12が本発明に係る「位置情報取得手段」の一例及び「時間情報取得手段」の一例にそれぞれ相当する。
この構成においてインターフェース1は、例えばインターネット等のネットワークからのデータ又はいわゆるVICS(Vehicle Information and Communication System)(登録商標)を介したデータとして、例えば探索された経路上に発生している渋滞を示す渋滞データの他、下記の第1実施例に係る「通行禁止区域」を示す通行禁止区域データを取得して、処理部10に出力する。
ここで第1実施例に係る通行禁止区域とは、例えば台風やいわゆるゲリラ豪雨等に起因する風雨や、例えば花火大会等のイベントの開催等により、車両の進入又は通行が禁止又は規制されるべきとして設定された地理的な領域をいう。この第1実施例に係る通行禁止区域は、例えば一つの地点の位置によりその位置のみが単純に示されるものではなく、その外縁を画定する複数の地点間を直線で結んで得られる(即ちその各地点を頂点とする多角形状の)閉じた地理的な領域である。そして、第1実施例に係る通行禁止区域を示すのが、上記外縁を画定する上記複数の地点の地理的な位置のそれぞれを緯度/経度で示す、第1実施例に係る通行禁止区域データである。即ち、一つの通行禁止区域は、その外縁を画定する各地点それぞれの地理的な位置を示す緯度/経度データの集合である通行禁止区域データにより表現される。またこの通行禁止区域データには、上記緯度/経度データに加えて、当該通行禁止区域データにより示される通行禁止区域を他の通行禁止区域から識別するための識別データが含まれている。この識別データの例としては、例えば、それにより識別される通行禁止区域の名称を示す名称データや、当該通行禁止区域が有効とされている期間又は時刻を示す時間データ等が該当する。
一方センサ部12は、自立的に又はGPSを用いて、ナビゲーション装置NVが搭載されている車両の現在位置を検出し、当該検出された現在位置を示す現在位置データを処理部10に出力する。
これにより処理部10の設定部2は、インターフェース1から出力された上記通行禁止区域データにより示される通行禁止区域を内含し、且つ当該通行禁止区域の外縁の少なくとも一部が内側から接する矩形範囲であって、例えば正方形の矩形範囲を仮想的に設定する。そして設定部2は、当該設定した矩形範囲を示す矩形範囲データを生成して記録部11に記録する。なおこの矩形範囲は、一般の画像処理におけるいわゆるバウンディングボックスに対応する概念ではあるが、第1実施例に係る場合は「矩形範囲」と称する。
次に処理部10の分割部3は、設定部2により設定された上記矩形範囲を、複数の分割範囲に分割する。例えば分割部3は、上記矩形範囲を縦に2のべき乗個に分割すると共に横にも同数に分割し、これらにより当該矩形範囲を(2のべき乗)2個の分割範囲に分割する。そして当該分割部3は、分割した各分割範囲それぞれを示す作業データを生成して記録部11に記録する。
そして処理部10の判定部4は、分割部3により分割された分割範囲をそれぞれ示す上記作業データに基づいて、いずれかの分割範囲に相当する領域と上記通行禁止区域の少なくとも一部との間に重なりがあるか否かを分割範囲ごとに判定し、その結果を記録部11に記録すると共に探索部5に出力する。これにより探索部5は、車両の目的地までの経路探索を行う際、通行禁止区域の少なくとも一部との間に重なりがあると判定された分割範囲内にあるリンク又はノードを、経路の探索候補から除外する。
次に分割部3は、上記各分割範囲について上記重なりがあるか否かの判定(換言すれば、それに含まれるリンク又はノードについて探索候補から除外するか否かの判定)が行われた後、矩形に相隣接する複数(例えば四つ)の当該分割範囲により新たな矩形の分割範囲を生成することを、上記矩形範囲の全てについて行う。即ち、上記新たな矩形の分割範囲は元の分割範囲を複数含むことになる。これにより当該矩形範囲は、最初の分割範囲より少ない分割数の新たな分割範囲により再度分割される。分割部3は、当該新たな分割範囲のそれぞれを示す作業データを生成して記録部11に記録する。そして判定部4は、当該新たな分割範囲をそれぞれ示す作業データに基づいて、いずれかの新たな分割範囲に相当する領域と上記通行禁止区域の少なくとも一部との間に重なりがあるか否かを新たな分割範囲ごとに再度判定し、その結果を記録部11に記録すると共に探索部5に出力する。これにより探索部5は、上記経路探索を行う際、通行禁止区域の少なくとも一部との間に重なりがあると判定された新たな分割範囲内にあるリンク又はノードを、経路の探索候補から除外する。
以上の一連の分割処理と判定処理は、矩形範囲全体としての分割数が所定数(例えば一つ)となるまで繰り返される。この繰り返し処理により、異なる広さの分割範囲で一つの矩形範囲をそれぞれ分割して得られる階層的な作業データについて、当該階層ごとに当該階層内の分割範囲を経路の探索候補から除外するか否かの判定が行われる。
そして探索部5は、上記経路の探索の際には、矩形範囲全体に対する分割数が少ない階層の分割範囲から順に、上記探索候補から除外されていない分割範囲に相当する領域内にあるリンク又はノードを探索候補として当該探索を進める。
そして処理部10は、上記の探索処理の結果としての経路等を、例えばディスプレイ14に表示して、使用者(即ち運転者又は同乗者)による案内方法の設定等に供させる。
次に、第1実施例に係る経路探索処理について、具体的に図3乃至図7を用いて説明する。以下に説明する経路探索処理は、図2に示す処理部10内の設定部2及び分割部3等を中心として実行される。また当該経路探索処理は、記録部11に記録されている道路データ中の上記ノードデータ及びリンクデータを用いた従来のいわゆるダイクストラ法による経路探索処理に対して、第1実施例に係る上記矩形範囲及び分割範囲を用いる処理を追加したものである。より具体的に第1実施例に係る経路探索処理は、従来のダイクストラ法による経路探索処理に対して、以下に説明する図3におけるステップS2の処理、ステップS6の処理及びステップS7の処理を、第1実施例に係る上記矩形範囲及び分割範囲を用いる処理として追加したものである。換言すれば、ステップS2の処理、ステップS6の処理及びステップS7の処理以外の図3における各処理は、従来のダイクストラ法による経路探索処理に相当する。
第1実施例に係る経路探索処理は、例えばナビゲーション装置NVにおいて、それが搭載されている車両の移動の目的地が使用者により設定され、その目的地への経路を探索する旨の操作が操作部13において実行されたタイミングにおいて開始される。そして第1実施例に係る経路探索処理として探索部5は、図3に示すように、初めに、探索始点に最も近いリンクを探索候補に追加する処理を行う(ステップS1)。このステップS1の処理として具体的に、探索部5は、上記リンクデータ及びノードデータに基づき、探索始点に最も近いリンクに接続するノードを示すノードデータを上記探索候補として記録部11に記録することにより、当該ノードを上記探索候補に追加する。ここで上記探索始点とは、多くの場合、出発地又は車両の現在位置に相当する位置等である。
次に設定部2等は、第1実施例に係る通行禁止区域初期化処理を行う(ステップS2)。このステップS2の処理には、上記矩形範囲及び上記分割範囲を設定する処理等が含まれるが、その詳細は後ほど図4及び図5を用いて説明する。
次に探索部5は、探索候補としてのノードが残っているか、又は確定した最短の経路が目的地まで到達したか(即ち、出発地から順次探索することによって最短の経路が確定した領域が逐次広がって、それが目的地まで到達したか)、のいずれか否かを判定する(ステップS3)。このステップS3の判定のうち、探索候補としてのノードが残っているか否かの判定は、当該探索候補としてのノードを示すノードデータが記録部11に記録されているか否かを確認することにより行われる。ステップS3の判定において、探索候補としてのノードが残っていないか、或いは上記最短の経路が目的地に到達している場合(ステップS3;NO)、探索部5を含む処理部10は第1実施例に係る経路探索処理を終了する。
一方ステップS3の判定において、探索候補としてのノードが残っており、且つ上記最短の経路が未だ目的地に到達していない場合(ステップS3;YES)、探索部5は次に、設定されている探索条件に沿って積算したコスト(いわゆる積算コスト)が最小であるリンクを選択する(ステップS4)。なお図3及び以下の説明では、当該積算コストが最小のリンクを「リンクL_min」と示す。また、当該リンクL_minの始点側のノードをノードM_minと称し、その終点側のノードをノードN_minと称することとする。次に探索部5は、ステップS4の処理により選択されたリンクL_minが、既定の除外条件に当て嵌まるか否かを判定し、当該除外条件に当て嵌まる場合は、探索候補からリンクL_minを除外する除外判定を行う(ステップS5)。このステップS5における除外条件としては、例えば、リンクL_minに相当する道路が時間規制による通行止めである場合や、一方通行規制により当該道路がそもそも通行できないといった条件が挙げられる。
次に探索部5は、リンクL_minに接続する全てのリンクL_j(jはリンク番号。以下、同様)について以下の処理を繰り返す。
はじめに、上記ステップS2の処理により設定された矩形範囲及び分割範囲を用いて、第1実施例に係る通行禁止区域通過判定処理を行う(ステップS6)。このステップS6の処理については、後ほど図6及び図7を用いて詳説する。次に探索部5は、現在のリンクL_jの少なくとも一部が、ステップS6の処理により判定された通行禁止区域の少なくとも一部に掛かっているか否かを確認する(ステップS7)。ステップS7の確認においてリンクL_jの少なくとも一部が通行禁止区域の少なくとも一部に掛かっている場合(ステップS7;YES)、探索部5は上記ステップS6の処理に移行する。一方ステップS7の確認においてリンクL_jが通行禁止区域に掛かっていない場合(ステップS7;NO)、探索部5は、次のリンクL_jが探索候補に既に追加されているか否かを判定する(ステップS8)。ステップS8の判定において、当該リンクL_jが探索候補に追加されていない場合(ステップS8;NO)、探索部5は、そのリンクL_jの終点側のノードを示すノードデータを探索候補として記録部11に記録することにより、リンクL_jを探索候補に追加する(ステップS16)。その後探索部5は、後述するステップS15の処理に移行する。
一方ステップS8の判定において、リンクL_jが既に探索候補である場合(ステップS8;YES)、探索部5は、例えば従来の方法によりリンクL_jの通過コストc(L_j)を算出する(ステップS9)。更に探索部5は、ナビゲーション装置NVが搭載されている車両の出発地点から現在のリンクL_minまでの積算コストC(L_min)を算出/取得する(ステップS10)。次に探索部5は、現在のリンクL_jに接続する終点側のノードN_jまでの積算コストC’を、
C’=c(L_j)+C(L_min)
により算出する(ステップS11)。そして探索部5は、現在のノードN_jに接続する他の経路があるか否かを判定する(ステップS12)。なお図3及び以下の説明において、上記他の経路を経路P’と称する。ステップS12の判定において、他の経路P’が存在しない場合(ステップS12;NO)、探索部5は、現在のノードN_jについての積算コストC(N_j)を上記積算コストC’に設定する(ステップS14)。
C’=c(L_j)+C(L_min)
により算出する(ステップS11)。そして探索部5は、現在のノードN_jに接続する他の経路があるか否かを判定する(ステップS12)。なお図3及び以下の説明において、上記他の経路を経路P’と称する。ステップS12の判定において、他の経路P’が存在しない場合(ステップS12;NO)、探索部5は、現在のノードN_jについての積算コストC(N_j)を上記積算コストC’に設定する(ステップS14)。
他方ステップS12の判定において、他の経路P’が存在する場合(ステップS12;YES)、探索部5は次に、当該他の経路P’のノードN_jまでの積算コストがCp’である場合において、その積算コストCp’が現在のリンクL_jを経由する場合の積算コストC’よりも大きいか否かを判定する(ステップS13)。そして、ステップS13の判定において積算コストCp’が積算コストC’よりも大きいとき(ステップS13;YES)、探索部5は上記ステップS14の処理に移行する。一方ステップS13の判定において、積算コストCp’が積算コストC’よりも大きくないとき(ステップS13;NO)、探索部5は次に、リンクL_minに接続する全てのリンクL_jについて、上記ステップS6の処理乃至ステップS14の処理が終了したか否かを判定する(ステップS15)。ステップS15の判定において、リンクL_minに接続する全てのリンクL_jのうち上記ステップS6の処理乃至ステップS14の処理が終了していないリンクL_jがある場合(ステップS15;NO)、当該残りのリンクL_jについて上記ステップS6の処理乃至ステップS14の処理を繰り返すべく、上記ステップS6の処理に移行する。一方、ステップS15の判定において、リンクL_minに接続する全てのリンクL_jについて上記ステップS6の処理乃至ステップS14の処理が終了している場合(ステップS15;YES)、探索部5は、現在のリンクL_minを候補とする経路探索処理を終了し、当該リンクL_minを探索候補から除外すべくそのリンクデータを記録部11から消去する(ステップS17)。その後探索部は、次の探索候補について上記ステップS3の処理乃至上記ステップS16の処理を繰り返すべく、当該ステップS3の処理に移行する。
次に、上記ステップS2の通行禁止区域初期化処理について、より具体的に図4及び図5を用いて詳説する。なお以下に説明する通行禁止区域初期化処理は、インターフェース1を介して例えばVICSを介したデータとして取得した上記通行禁止区域データを用いて、当該通行禁止区域データに相当する通行禁止区域についての上記矩形範囲及び上記分割範囲をそれぞれ設定する処理である。この通行禁止区域初期化処理は、処理部10の設定部2及び分割部3並びに記録部11を中心として実行される。
即ち第1実施例に係る通行禁止区域初期化処理(ステップS2)において、先ず設定部2は図4に示すように、例えば記録部11に記録されている全ての地図データに相当する領域内について、その時点で設定されている通行禁止区域を示す通行禁止区域データをその識別データと共に全て取得し、記録部11に一時的に記録する(ステップS20)。次に設定部2は、取得した通行禁止区域データのそれぞれについて、各通行禁止区域データにより示される通行禁止区域を内含し、且つ当該通行禁止区域の外縁の少なくとも一部が内側から接する矩形(例えば正方形)範囲を仮想的に設定し、当該設定した矩形範囲を示す矩形範囲データを生成して記録部11に一時的に記録する(ステップS21)。即ち設定部2は、図5(a)に例示するように、一つの通行禁止区域WAについて、それを囲む最小の正方形を当該通行禁止区域WAに対応する上記矩形範囲Fとして設定し、当該矩形範囲Fに対応する矩形範囲データを記録部11に一時的に記録する処理を、各通行禁止区域WAについてそれぞれ実行する。
次に分割部3は、最初の上記階層として、上記記録されている各矩形範囲データに基づき、当該各矩形範囲を、それぞれ複数の分割範囲に分割する(ステップS21)。例えば分割部3は、図5(b)に例示するように、上記矩形範囲Fを縦に2のべき乗個に分割すると共に横にも同数に分割し、これらにより当該矩形範囲Fを(2のべき乗)2個の分割範囲に分割する。そして当該分割部3は、分割した各分割範囲それぞれを示す作業データを生成して記録部11に一時的に記録する。このときの各矩形範囲Fの分割数(即ち上記べき数n)は、例えば各通行禁止区域WAの広さや処理部10としての機能を担うCPUの処理能力等により任意に設定し得る。なお図5に例示する場合においては、当該べき数nは3であり、矩形範囲F全体としては(23)2=64個の分割範囲SCに分割される。また、上記べき数が3である場合の分割範囲を図5(b)に例示するように分割範囲SC3とし、分割範囲SC3が属する階層を第3階層とする。
次に分割部3は、通行禁止区域データに基づき、通行禁止区域WAの外縁を画定する複数の地点の位置を、通行禁止区域WAを確定する各頂点の位置として、記録部11の図示しない作業領域上に設定されるメッシュ状の座標系へ変換する座標変換処理を、各通行禁止区域WAについて行う(ステップS22)。
ここで、上記座標変換処理について具体的に説明する。今、図5に例示する正方形の矩形範囲Fの左下端が、その矩形範囲Fが対応する通行禁止区域WAの緯度/経度座標系においてLL=(LLx,LLy)の位置にあり、当該矩形範囲Fの右上端が当該緯度/経度座標系においてUR=(URx,URy)の位置にあるとする。この矩形範囲Fを、その分割数が例えば「N」である上記メッシュ状の座標系に変換(プロット)する場合について説明する。
上記の座標を有する矩形範囲Fの一辺の長さ(距離)をdとすると、上記緯度/経度座標系におけるその値は、概念的に以下の式により算出される。
d=(矩形範囲Fの左下端と右上端との距離)/√2
=|LL−UR|/√2
一方、その緯度/経度座標系における矩形範囲Fの中心Cの座標(cx,cy)は、概念的に以下の式により算出される。
=|LL−UR|/√2
一方、その緯度/経度座標系における矩形範囲Fの中心Cの座標(cx,cy)は、概念的に以下の式により算出される。
C(cx,cy)=LL+UR/2
そして、上記緯度/経度座標軸から上記メッシュ状の座標系への座標変換Tは、下記式(1)に示す並進行列をT1とし、下記式(2)に示す拡大行列をMとし、下記式(3)に示す並進行列をT2とすると、概念的に以下の式により表現される。
そして、上記緯度/経度座標軸から上記メッシュ状の座標系への座標変換Tは、下記式(1)に示す並進行列をT1とし、下記式(2)に示す拡大行列をMとし、下記式(3)に示す並進行列をT2とすると、概念的に以下の式により表現される。
T=T2×M×T1
従って、上記緯度/経度座標系における頂点pがあるとすると、その座標を上記メッシュ状の座標p’に変換する場合は、以下の式により座標変換を行えばよいことになる。
p’=T×p
従って、上記の座標変換Tを上記矩形範囲Fに対応する通行禁止区域WAの各頂点の位置を示す座標pに施すことで、上記ステップS22としての座標変換処理が可能となる。
従って、上記の座標変換Tを上記矩形範囲Fに対応する通行禁止区域WAの各頂点の位置を示す座標pに施すことで、上記ステップS22としての座標変換処理が可能となる。
次に分割部3は、座標変換された通行禁止区域WAの頂点のいずれかが含まれている一又は複数の分割範囲SC3を特定することを、分割範囲SC3に対応する作業データに基づいて各通行禁止区域WAについて行う。この特定処理を、図4及び以下の説明において「塗り潰し」処理と称する。この塗り潰し処理の具体的な方法としては例えば従来と同様の方法を採ることができるが、通行禁止区域WAの二つの頂点間の距離が複数の分割範囲SC3の分だけ離れている場合、分割部3は、各頂点を結ぶ直線を上記座標系上に設定し、その直線が通る分割範囲SC3について塗り潰し処理を行う。次に分割部3は、通行禁止区域WAの輪郭に対応して塗り潰し処理が行われた周状の分割範囲SC3の内側にある分割範囲SC3の全てに対して、同様の塗り潰し処理を行う(ステップS22)。
次に判定部4は、図5(c)に例示するように、ステップS22の処理により塗り潰し処理が行われた分割範囲SC3の全てを「通行不可範囲NG」と判定し、その旨を示すフラグ等を記録部11に記録する(ステップS23)。また同時に判定部4は、当該塗り潰し処理が行われなかった分割範囲SCの全てを「通行可能範囲PS」と判定し、その旨を示すフラグ等を記録部11に記録する(ステップS23)。これにより、図5(c)に例示するように、通行禁止区域WAの輪郭及びその内側に位置している分割範囲SC3については通行不可範囲NGと判定されると共に、通行禁止区域WAの輪郭より外側に位置している分割範囲SC3については通行可能範囲PSと判定される。即ち判定部4は、いずれかの分割範囲SC3に相当する領域と通行禁止区域WAの少なくとも一部との間に重なりがあるか否かを分割範囲SC3ごとに判定する。以上のステップS21の処理乃至ステップS23の処理により、通行禁止区域WAを最も細かく分割した分割範囲SC3のそれぞれについて、通行不可/通行可能の判定が行われ、第3階層としての作業データが完成する(図5(c)参照)。
次に分割部3は、第3階層としての作業データに基づき、次の階層(第2階層)の作業データとして、第3階層において矩形に相隣接する複数(例えば四つ)の分割範囲SC3により、図5(d)に例示する新たな矩形の分割範囲SC2を生成することを、矩形範囲Fの全てについて行い、更にこの処理を各通行禁止区域WAについてそれぞれ行う。これにより一つの矩形範囲Fは、最初の分割範囲SC3より少ない分割数(図5(d)の場合は16個)の新たな分割範囲SC2により分割される。その後分割部3は、新たな分割範囲SC2それぞれを示す作業データを生成して記録部11に一時的に記録する。なお以下の説明において、矩形範囲Fをそれぞれ分割する分割範囲SC3や分割範囲SC2等について一般的に説明する場合、単に「分割範囲SC」と称する。
次に判定部4は、新たな分割範囲SC2のそれぞれにつき、それを生成する際に用いられた分割範囲SC3が上記通行不可範囲NGと判定されているか上記通行可能範囲PSと判定されているかに基づき、各分割範囲SC2自体についての通行不可/通行可能の判定を行う。より具体的に判定部4は、図5(g)左上に例示されるように、元の分割範囲SC3の全てが通行不可範囲NGと判定されている分割範囲SC2については、同様に「通行不可範囲NG」と判定して、その旨のフラグ等を記録部11に記録する。また図5(g)左下に例示されるように、元の分割範囲SC3の全てが通行可能範囲PSと判定されている分割範囲SC2については、同様に「通行可能範囲PS」と判定して、その旨のフラグ等を記録部11に記録する。一方図5(g)右に例示されるように、元の分割範囲SC3の全てではないがそのうちの少なくとも一つが通行可能範囲PSと判定されている分割範囲SC2については、第2階層として新たに「通行不確定範囲NF」と判定して、その旨のフラグ等を記録部11に記録する。分割部3は以上の処理を、矩形範囲Fの全てについて行う。これにより図5(d)に例示するような、通行不可範囲NG、通行可能範囲PS及び通行不確定範囲NFを含む第2階層としての作業データが生成され、記録部11に記録される(ステップS24)。なお、通行不確定範囲NFと判定された分割範囲SCのみにより、階層が異なる新たな分割範囲SCが一つ構成されている場合、判定部4は、当該新たな分割範囲SCについては同様に「通行不確定範囲NF」と判定する(図5(e)及び図5(f)参照)。
次に分割部3は、矩形範囲F全体としての分割数が1となったか否か、即ち、矩形範囲Fの広さと分割後の分割範囲SCの広さとが同じとなったか否か(換言すれば、新たな分割範囲を生成することができなくなったか否か)を判定する(ステップS25)。ステップS25の判定において、矩形範囲F全体としての分割数が1となっている場合(ステップS25;YES)、設定部2、分割部3及び探索部4は、その時点で記録部11に一時的に記録されている上記通行禁止区域データ、矩形範囲Fを示す矩形範囲データ及び各分割範囲SCを示す作業データのそれぞれを、各通行禁止区域に対応する通行禁止区域テーブルとして、改めて記録部11内に不揮発性に記録する(ステップS26)。
一方ステップS25の判定において、矩形範囲F全体としての分割数が1となっていない場合、即ち、新たな分割範囲を生成することが引き続き可能な場合(ステップS25;NO)、分割部3は階層の番号を1だけデクリメントし(ステップS27)、その後デクリメントされた番号の階層についての上記ステップS24の処理を実行する。即ち分割部3及び判定部4は、ステップS27の処理とステップS24の処理(一つ下位の階層において矩形に相隣接する四つの分割範囲SCにより、新たな矩形の分割範囲SCを生成する処理)とを、ステップS25における判定結果が「YES」となるまで繰り返す。
次に、上記ステップS26の処理後において探索部5等は、上記ステップS20において取得した通行禁止区域データの全てについて上記ステップS21の処理乃至ステップS27の処理が完了したか否かを確認し(ステップS28)、完了している場合は(ステップS28;YES)、図3に示すステップS3の処理に移行する。一方ステップS28の判定において、上記ステップS21の処理乃至ステップS27の処理が完了していない通行禁止区域データがある場合(ステップS28;NO)、探索部5等は、当該完了していない通行禁止区域データについて上記ステップS21の処理乃至ステップS27の処理を実行すべく、上記ステップS21の処理に戻る。
以上の図4に示す第1実施例に係る通行禁止区域初期化処理が実行された結果、図5に例示するように、64個の分割範囲SC3からなる第3階層としての作業データ(図5(c)参照)、16個の分割範囲SC2からなる第2階層としての作業データ(図5(d)参照)、4個の分割範囲SC1からなる第1階層としての作業データ(図5(e)参照)、及び分割範囲SCと矩形範囲1とが一致する第0階層の作業データ(図5(f)参照)がそれぞれ生成され、記録部11に通行禁止区域テーブルとして不揮発性に記録される。
次に、上記ステップS6及びステップS7としての第1実施例に係る通行禁止区域通過判定処理について、より具体的に図6及び図7を用いて詳説する。
以下に説明する通行禁止区域通過判定処理は、その時点で最短経路が確定しているリンクL_minの隣(次)に接続するリンクL_jが通行禁止区域WAを通過しているか否か(即ち、リンクL_jが通行禁止区域WAに掛かっているか否か)を判定し、通過している(掛かっている)場合は、そのリンクL_jを探索候補から除外する処理である。より具体的には、その時点で探索候補に挙げられたノードに至るリンクL_jの少なくとも一部が、各階層における通行不可範囲NG、通行可能範囲PS又は通行不確定範囲NFに掛かっているか否かを、階層番号が少ない階層(即ち第0階層)から順に判定する処理を含む。そして当該判定結果に基づき、上記リンクL_jの少なくとも一部がいずれかの階層の通行不可範囲NGに掛かっている場合に、そのリンクL_jを探索候補から除外することを、階層番号を1ずつインクリメントしながら繰り返す。この通行禁止区域通過判定処理は、処理部10の探索部5及び記録部11を中心として実行される。また以下の説明では、図7に例示するように、その時点で確定されているリンクL_min(その始点側ノードはノードM_minであり、その終点側ノードはノードN_minである)に隣接するリンクL_j(その始点側ノードはノードN_minであり、その終点側ノードをノードN_jとする)について、そのリンクL_jを次の探索候補とするか否かを判定する場合について説明する。なお図7では、ノードN_min及びノードM_minに接続する他のノードとして、ノードNa乃至ノードNcがあることが示されている。
即ち、例えば図7に例示する場合において探索部5は、第1実施例に係る通行禁止区域通過判定処理(ステップS6)として初めに、隣接するリンクL_jが矩形範囲F内に存在するか否かを、リンクL_jの緯度/経度を示すリンクデータに基づいて判定する(ステップS60)。ステップS60の判定においてリンクL_jが矩形範囲F内に存在しない場合(ステップS60;NO)、そのリンクL_jを探索候補とするに当たって通行禁止区域WAを考慮する必要はないことになるので、探索部5はその後図3に示すステップS7の判定に移行する。なお、このリンクL_jは、その後のステップS8の判定により探索候補でないと判定された(図3ステップS8;NO参照)場合には、そのまま探索候補に追加されることになる(図3ステップS16参照)。
一方ステップS60の判定においてリンクL_jが矩形範囲F内に存在している場合(ステップS60;YES)、探索部5は次に、第0階層の作業データを記録部11から読み出すと共に、当該第0階層の作業データ上において、確定しているノードN_minの緯度/経度と隣接するノードN_jの緯度/経度とを、上記メッシュ状の座標系へ変換し、それぞれ座標X’及び座標Y’とする(ステップS61)。このステップS61における座標変換処理は、例えば上記ステップS22に係る座標変換処理と同様に実行される。また、上記座標X’と座標Y’とを結んだ線分を、以下「線分X’Y’」と称する。
次に探索部5は、第0階層の作業データ上において、線分X’Y’が通過する分割範囲SCの少なくとも一つが通行不可範囲NGであるか否かを、座標Y’→座標X’方向に走査しつつ判定する(ステップS62)。ステップS62の判定において、線分X’Y’が通過する分割範囲SCの少なくとも一つが通行不可範囲NGである場合(ステップS62;YES)、探索部5は現在のリンクL_jの少なくとも一部が通行禁止区域の少なくとも
一部に掛かっていると判定し(ステップS67)、その後図3に示すステップS7の判定に移行する。
一部に掛かっていると判定し(ステップS67)、その後図3に示すステップS7の判定に移行する。
次にステップS62の判定において、線分X’Y’が通過する分割範囲SCのいずれも通行不可範囲NGでない場合(ステップS62;NO)、探索部5は、第0階層の作業データ上において、線分X’Y’が通過する分割範囲SCの全てが通行可能範囲PSであるか否かを、座標Y’→座標X’方向に走査しつつ判定する(ステップS63)。ステップS63の判定において、線分X’Y’が通過する分割範囲SCの全てが通行可能範囲PSである場合(ステップS63;YES)、探索部5は現在のリンクL_jの少なくとも一部が通行禁止区域の少なくとも一部に掛かっていないと判定し(ステップS66)、その後図3に示すステップS7の判定に移行する。一方ステップS63の判定において、線分X’Y’が通過する分割範囲SCの全てが通行可能範囲PSでない場合(ステップS63;NO)、線分X’Y’が通過する分割範囲SCの少なくとも一つが上記通行不確定範囲NFであることになる。そこで探索部5は次に、現在の階層番号が最後の(最も大きい)階層番号か否かを判定し(ステップS64)、当該最後の階層番号(図5に例示する場合は「3」)である場合は(ステップS64;YES)、現在のリンクL_jの少なくとも一部
が通行禁止区域の少なくとも一部に掛かっていないと判定し(ステップS66)、その後図3に示すステップS7の処理に移行する。他方ステップS64の判定において、現在の階層番号が最後の階層番号でない場合は(ステップS64;NO)、探索部5は、階層番号を「1」だけインクリメントし(ステップS65)、その後当該インクリメント後の階層番号の作業データについて上記ステップS61の処理乃至ステップS64の処理を繰り返すべく、上記ステップS61の処理に移行する。
が通行禁止区域の少なくとも一部に掛かっていないと判定し(ステップS66)、その後図3に示すステップS7の処理に移行する。他方ステップS64の判定において、現在の階層番号が最後の階層番号でない場合は(ステップS64;NO)、探索部5は、階層番号を「1」だけインクリメントし(ステップS65)、その後当該インクリメント後の階層番号の作業データについて上記ステップS61の処理乃至ステップS64の処理を繰り返すべく、上記ステップS61の処理に移行する。
以上説明したステップS6の処理が、階層番号が小さい順(図5に例示する場合は0→3の順)に全ての階層の作業データについて実行されると、図7に例示するように、分割範囲SCの範囲が広い階層から順に(即ち、図7(a)→図7(c)の順で)、リンクL_jについての通行禁止区域通過判定が実行される。これにより、階層番号が小さい段階でリンクL_jについて探索候補から除外する処理が実行された場合、それより大きい番号の階層については、リンクL_jについての通行禁止区域通過判定は実行されない。よってこの場合、そのリンクL_jについては、通行不可範囲NGの分割範囲SCに属すると判定された階層以降の階層(分割範囲SCの数がより多い階層)については通行禁止区域通過判定が省略できるため、結果として、経路探索処理に係る処理部10の処理負担の軽減ができる。
以上それぞれ説明したように、第1実施例に係る経路探索処理によれば、車両についての通行禁止区域WAを内含し且つその外縁の少なくとも一部が内側から接する矩形範囲Fを複数に分割した分割範囲SCについて、通行禁止区域WAの少なくとも一部との重なりがある分割範囲SCに相当する領域内に存在するリンク等を探索候補から除外して経路の探索を行う。よって、地理的な領域として複雑な形状を有する通行禁止区域WAがある場合でも、それを回避しつつ効率的に経路を探索することができる。
また、通行禁止区域WAの少なくとも一部との重なりがあると判定された分割範囲SCを通行不可範囲NGとし、重なりがないと判定された分割範囲SCを通行可能範囲PSとし、通行不可範囲NGとされた分割範囲SCに相当する領域内に存在するリンク等を探索候補から除外し、通行可能範囲PSとされた分割範囲SCに相当する領域内に存在するリンク等を探索候補として用いた探索を行う。よって、通行不可範囲NG又は通行可能範囲PSに基づいて通行禁止区域WAを確実に回避しつつ経路を探索することができる。
更に、その総数よりも少ない数の分割範囲SC3を用いて分割範囲SC2を生成すると共に、その後一般に、第n(nは負でない正数)階層の分割範囲SCの生成総数が所定数以下(第1実施例の場合は「1」)になるまで、総数よりも少ない数の第n+1階層の分割範囲SCを用いて第n階層の分割範囲SCを通行禁止区域WAについて生成することを、nを1ずつ減じながら繰り返す(図4参照)。そして、通行不可範囲NGとされた第n+1階層の分割範囲SCのみにより構成される第n階層の分割範囲SCを通行不可範囲NGとし、通行不可範囲NGとされた第n+1階層の分割範囲SCと通行可能範囲PSとされた第n+1分割範囲SCとにより構成される第n階層の分割範囲SCを通行不確定範囲NFとし、通行可能範囲PSが付与された第n+1階層の分割範囲SCのみにより構成される第n階層の分割範囲SCに対して通行可能範囲PSを付与することを、nを1ずつ減じながら繰り返す(図4参照)。これらにより、通行不可範囲NGが付与された第n階層の分割範囲SCに相当する領域内に存在するリンク等を探索候補から除外し、通行可能範囲PSが付与された第n階層の分割範囲SCに相当する領域内に存在するリンク等を探索候補として用いた経路の探索を行う。よって、それぞれの総数が異なる分割範囲SCごとに探索候補を選別することにより、通行禁止区域WAを確実に回避しつつ、より効率的に経路を探索することができる。
更にまた、最後に生成された第0階層の分割範囲SC(即ち矩形範囲F)に基づく探索から経路の探索を開始する(図6及び図7参照)。そして、通行不確定範囲NFとされた階層(例えば第0階層)の分割範囲SCがある場合、その階層(例えば第0階層)の分割範囲SCに相当する領域内に存在するリンク等について、その階層(例えば第0階層)の分割範囲SCの生成に用いられた一階層前の階層(例えば第1階層)の分割範囲SCに基づいた探索に移行することを、通行不確定範囲NFとされた分割範囲SCに相当する領域内に存在する移動路等が探索候補となるか否かが判定されるまで繰り返す。よって、その総数が最も少ない第0階層の分割範囲SCに基づく探索から開始し、階層を段階的に移行させながら探索候補を決定していくことで、探索のための処理部10の負荷を低減しつつ、通行禁止区域WAを確実に回避して効率的に経路を探索することができる。
(II)第2実施例
次に、実施形態に対応する他の実施例である第2実施例について説明する。なお、第2実施例に係る経路探索処理を実行するナビゲーション装置のハードウェア的な構成は、基本的に第1実施例に係るナビゲーション装置NVのハードウェア構成と同様であるので、以下の説明では、第1実施例に係るナビゲーション装置NVの説明に用いた部材番号を流用して説明する。
次に、実施形態に対応する他の実施例である第2実施例について説明する。なお、第2実施例に係る経路探索処理を実行するナビゲーション装置のハードウェア的な構成は、基本的に第1実施例に係るナビゲーション装置NVのハードウェア構成と同様であるので、以下の説明では、第1実施例に係るナビゲーション装置NVの説明に用いた部材番号を流用して説明する。
地図データにおけるリンクには、一般に、一つのリンク自体が全体として直線ではなく、複数の直線が接続されることで全体として曲がった一つのリンクが構成されている場合がある。このような曲がったリンクにおける各直線の接続点それぞれを当該リンクの結節点と称するとすると、このようなリンクについて実施形態に係る経路探索処理を実行する場合は、各結節点のそれぞれを対象として、第1実施例と同様の通行禁止区域通過判定処理を行う必要がある。
即ち例えばリンクL_jが、始点側のノードN_minと終点側のノードN_jとの間に終点側から始点側に複数の結節点S1、結節点S2、…、結節点Si、…、結節点Sn(i及びnは自然数且つi<n)を有しているとする。この場合に第2実施例に係る通行禁止区域通過判定処理としては、初めに結節点S1、結節点S2、…、結節点Siの位置を、緯度/経度座標軸から上記メッシュ状の座標系の座標S1’、座標S2’、…、座標Si’…、座標Sn’にそれぞれ変換する。そして、座標S2’と座標S1’を結ぶ線分が通過する分割範囲SCの少なくとも一つが通行不可範囲NGであるか否かを座標Sn’から順に、座標Si+1’→座標Si’方向に走査しつつ判定する処理(図6ステップS62参照)、及び、当該分割範囲SCの全てが通行可能範囲PSであるか否かを座標Si+1’→座標Si’方向に走査しつつ判定する処理(図6ステップS63参照)を、パラメータiを「1」ずつデクリメントしながら行うことを、例えば第0階層の作業データから第3階層の作業データ(第1実施例と同様の階層数の場合)まで、各階層の作業データ上において繰り返す(図6ステップS64及びステップS65参照)。そして、当該判定結果に応じてそのリンクL_jが探索候補となるか否かを判定する(図3ステップ8参照)。なお、第2実施例に係る経路探索処理としては、上述した各結節点Siについての通行禁止区域通過判定処理を除いて、図2乃至図7を用いて説明した第1実施例に係る経路探索処理と同様の処理が行われる。
以上説明した第2実施例に係る経路探索処理によれば、一つのリンクが複数の結節点を有している場合でも、第1実施形態に係る経路探索処理と同様の作用効果を奏することができる。これに加えて、始点側のノードN_minから見て、遠い結節点から近い結節点に向かって通行禁止区域WAに入っているか否かを判定するため、より効率的に通行禁止区域WAに入っているか否かを判定できる。なおこの場合、その前提としては、通行禁止区域WAを跨ぐようなリンクL_jが存在しない(又は少ない)ことが、その前提となる。
(III)第3実施例
次に、実施形態に対応する更に他の実施例である第3実施例について、図8乃至図12を用いて説明する。なお、図8は第3実施例に係る経路探索処理の全体を示すフローチャートであり、図9は当該経路探索処理における通行禁止区域初期化処理を示すフローチャートである。また、図10は第3実施例に係る区画の生成過程等をそれぞれ例示する図であり、図11は第3実施例に係る経路探索処理における通行禁止区域検索処理を示すフローチャートであり、図12は当該経路探索処理における近傍判定処理を示すフローチャートである。
次に、実施形態に対応する更に他の実施例である第3実施例について、図8乃至図12を用いて説明する。なお、図8は第3実施例に係る経路探索処理の全体を示すフローチャートであり、図9は当該経路探索処理における通行禁止区域初期化処理を示すフローチャートである。また、図10は第3実施例に係る区画の生成過程等をそれぞれ例示する図であり、図11は第3実施例に係る経路探索処理における通行禁止区域検索処理を示すフローチャートであり、図12は当該経路探索処理における近傍判定処理を示すフローチャートである。
また、第3実施例に係る経路探索処理を実行するナビゲーション装置のハードウェア的な構成は、基本的に第1実施例に係るナビゲーション装置NVのハードウェア構成と同様であるので、以下の説明では、第1実施例に係るナビゲーション装置NVの説明に用いた部材番号を流用して説明する。更に、図8乃至図10それぞれに示すフローチャートにおいて、第1実施例に係る経路探索処理と同様の経路探索処理については、同様のステップ番号を付して細部の説明は省略する。
上述してきた第1実施例に係る経路探索処理及び第2実施例に係る経路探索処理それぞれの通行禁止区域初期化処理(図4参照)においては、記録部11に記録されている全ての地図データに相当する領域内について、その時点で設定されている通行禁止区域WAを示す通行禁止区域データを全て取得し、それ以降の経路探索処理に用いた。これに対して第3実施例に係る経路探索処理では、経路の探索が進んでいる方向(方角)に存在する通行禁止区域WAについてのみ、それに対応する通行禁止区域データを取得してそれ以降の経路探索処理に用いる。これにより、第1実施例に係る経路探索処理又は第2実施例に係る経路探索処理よりも、処理部10における処理負荷をより軽減する。
第3実施例に係る経路探索処理は、第1実施例に係る経路探索処理と同様にナビゲーション装置NVにおいて、それが搭載されている車両の移動の目的地が使用者により設定され、その目的地への経路を探索する旨の操作が操作部13において実行されたタイミングにおいて開始される。そして第3実施例に係る経路探索処理として、初めに、図8に示すように第1実施例と同様のステップS1の処理が実行される。
次に設定部2等は、第3実施例に係る通行禁止区域初期化処理を行う(ステップS50)。このステップS50の処理には、第1実施例に係る通行禁止区域初期化処理と同様に矩形範囲F及び分割範囲SCを設定する処理等が含まれるが、その詳細は後ほど図9並びに図10(a)及び図10(b)を用いて説明する。
次に探索部5は、図8に示すように第1実施例と同様のステップS3の処理乃至ステップ5の処理を実行する。
次に探索部5は、上記ステップS50の処理により設定された矩形範囲Fに基づき、第3実施例に係る通行禁止区域検索処理(ステップS51)及び近傍判定処理(ステップS52)を行う。これらステップS51の処理及びステップS52の処理については、後ほど図11及び図12を用いてそれぞれ詳説する。
その後探索部5は、ステップS52の近傍判定処理の結果に基づいて、経路探索処理の対象となる通行禁止区域WAが車両の近傍に存在するか否かを判定し(ステップS53)、当該通行禁止区域WAが近傍に存在する場合は(ステップS53;YES)、それ以降、第1実施形態に係る通行禁止区域通過判定処理以降と同様の処理を実行する(ステップS6乃至ステップS17)。一方ステップS53の判定において、当該通行禁止区域WAが近傍に存在しない場合(ステップS53;NO)、それ以降は、第1実施形態に係るステップS8の処理乃至ステップS17の処理と同様の処理を実行する。
次に、第3実施例に係る通行禁止区域初期化処理(ステップS50)について、図9並びに図10(a)及び図10(b)を用いて具体的に説明する。この通行禁止区域初期化処理は、第1実施例に係る通行禁止区域初期化処理と同様に、処理部10の設定部2及び分割部3並びに記録部11を中心として実行される。
第3実施例に係る通行禁止区域初期化処理において設定部2は、図9及び図10(a)に例示するように、ナビゲーション装置NVが搭載されている車両の現在位置PSを中心とした現在の探索範囲SA0の周囲に、絶対位置(例えば緯度/経度データにより表される位置)を表す座標が与えられた区画A0乃至区画A7を仮に設定し、当該設定された区画A0乃至区画A7の範囲を示す区画データを記録部11に一時的に記録する(ステップS500)。次に設定部2は、記録部11に記録されている全ての地図データに相当する領域内についてその時点で設定されている通行禁止区域WAのうち、上記区画A0乃至区画A7に相当する領域にその一部又は全部が含まれている通行禁止区域WA(図10(a)に例示する場合は通行禁止区域WA0及び通行禁止区域WA1)を示す通行禁止区域データのみを、その識別データと共に取得する(ステップS501)。なお以下の説明において、区画A0乃至区画A7等について共通の事項を説明する場合には単に「区画A」と称し、通行禁止区域WA0及び通行禁止区域WA1等について共通の事項を説明する場合には単位「通行禁止区域WA」と称する。図10(a)に例示する場合は、通行禁止区域WA0はその一部が区画A4に含まれており、通行禁止区域WA1はその全部が区画A3に含まれている。なおステップS501の処理において、現在位置PSの周囲の区画A0乃至区画A7のいずれかに少なくともその一部が含まれている通行禁止区域WAがない場合、これ以降は、従来と同様の例えばダイクストラ法に基づく経路探索が実行される。
次に設定部2は、ステップS501の処理により取得した各通行禁止区域データに基づき、各通行禁止区域WAについて、その全てがいずれかの区画Aに含まれているか、その一部がいずれかの区画Aに含まれているか、について判定する(ステップS502)。ステップS502の判定において、その全てがいずれかの区画Aに含まれている通行禁止区域WAの場合(例えば図10(a)に例示する通行禁止区域WA1の場合。ステップS502;YES)、設定部2は、第1実施例に係る通行禁止区域初期化処理におけるステップS21の処理乃至ステップS28の処理を実行する。
一方ステップS502の判定において、その一部のみがいずれかの区画Aに含まれている通行禁止区域WAの場合(例えば図10(a)に例示する通行禁止区域WA0の場合。ステップS502;NO)、設定部2は、その一部のみがいずれかの区画に含まれている通行禁止区域WAについて、その通行禁止区域WAとその一部が含まれている区画(例えば図10(a)に例示する区画A4)との重複部分についてのみ、矩形範囲F0を示す矩形範囲データ及びそれに対応した分割範囲SCを示す作業データを生成する(ステップS503)。なお図10(a)に例示する通行禁止区域WA0の場合、その全体に相当する矩形範囲(第1実施例に係る矩形範囲Fに相当する矩形範囲)は図10(a)に例示する矩形範囲F0xとなるが、第3実施形態に係る経路探索処理の場合、この矩形範囲F0xは使用されない。
その後設定部2及び分割部3は、生成した各矩形範囲Fについて第1実施例に係るステップS23の処理乃至ステップS25の処理及びステップS27の処理を実行し、更に、当該矩形範囲Fを示す矩形範囲データと、それが含まれている区画を示す区画データと、を関連付けて、例えば図10(b)に例示するような通行禁止区域テーブルTとして、上記通行禁止区域データ及び区画データ等と共に、記録部11に不揮発性に記録する(ステップS26)。なおこの場合、上記ステップS501において取得した各通行禁止区域WAに相当する元の通行禁止区域データについては、例えば上記通行禁止区域データTとは別個に記録部11に不揮発性に記録しておくのが好適である。この場合、図10(a)に例示する矩形範囲F0については、元の通行禁止区域WA0を示す通行禁止区域データとは異なる形状を示す矩形範囲データが記録されることとなる。
次に、上記ステップS503の処理において、通行禁止区域WA0とその一部が含まれている区画A4との重複部分について、上記矩形範囲F0を示す矩形範囲データ及びそれに対応した分割範囲SCを示す作業データを生成する方法について説明する。
例えば図10(a)に例示する場合において設定部2は、先ず通行禁止区域WA0全体を、例えばN個×N個の区域に分割する。次に当該重複部分全体を囲むいわゆるチェインコードのうち通行禁止区域WA0の内部に相当するものを、反時計回りに作成する。次に設定部2は、通行禁止区域WA0の頂点のうち、いずれか一つの頂点を決め、その頂点から上記区域ごとに反時計回りにチェインコードを設定して行く。次に設定部2は、各頂点の位置について、上記緯度/経度座標軸から上記メッシュ状の座標系への座標変換を行いつつ、上記重複部分の外側から内側に遷移するチェインコードが形成されるメッシュ状の座標系の座標と、当該重複部分の内側から外側に遷移するチェインコードが形成されるメッシュ状の座標系の座標と、を特定する。ここで、上記重複部分の外側から内側に遷移するチェインコードが形成されるメッシュ状の座標系の座標を、以下「流入座標」と称し、当該重複部分の内側から外側に遷移するチェインコードが形成されるメッシュ状の座標系の座標を、以下「流出座標」と称する。設定部2は以上の処理を、通行禁止区域WA0を構成する各頂点について実行する。
そして設定部2は、上記流入座標及び流出座標が共に存在するか否かを判定し、共に存在しない場合は、上記重複部分に含まれる通行禁止区域WA0の輪郭に沿ったチェインコードを取得し、当該取得したチェインコードに沿った塗り潰し処理及び当該輪郭内の塗り潰し処理を行い、当該塗り潰された部分に相当する分割範囲SCのそれぞれを通行不可範囲NGとする。これに対し、上記流入座標又は流出座標が存在する場合設定部2は、一つの流入座標から上記重複部分に含まれる通行禁止区域WA0の輪郭に沿ったチェインコードと、一つの流出座標から上記通行禁止区域WA0の輪郭に沿ったチェインコードと、を取得し、それらを接続する処理を、存在する流入座標及び流出座標それぞれについて繰り返すことで、連続したチェインコードを取得する。その後設定部2は、当該取得したチェインコードに沿った塗り潰し処理及び当該輪郭内の塗り潰し処理を行い、当該塗り潰された部分に相当する分割範囲SCのそれぞれを通行不可範囲NGとする。以上のチェインコードを使用した処理により、通行禁止区域WA0とその一部が含まれている区画A4との重複部分についての上記矩形範囲F0を示す矩形範囲データそれに対応した分割範囲SCを示す作業データが生成される。
次に、上記ステップS26の処理後において探索部5等は、第1実施例に係るステップS28の処理(図4参照)と同様の処理を実行し、その後図8に示すステップS3の処理に移行する。
次に、第3実施例に係る上記通行禁止区域検索処理(ステップS51)について、図11及び図10(c)を用いて具体的に説明する。この通行禁止区域検索処理は、処理部10の探索部5及び記録部11を中心として実行される。
第3実施例に係る通行禁止区域検索処理において探索部5は、現在確定しているリンクL_minの次のリンクL_j(図10(c)参照)について、それが含まれる(通過する)区画(図10(c)に例示する場合は区画A4)を特定する(ステップS510)。この場合の新たな探索範囲SA1は、図10(c)に例示される元の探索範囲SA0よりも区画A4の方向に拡がっていることになる。次に探索部5は、ステップS510の処理により特定された区画Aに隣接し、且つ通行禁止区域WAの検索が終了していない区画Aであって、図10(a)に例示する区画A0乃至区画A7と同様の絶対位置を表す座標が与えられた区画A8乃至区画A12を追加的且つ仮に設定し、当該新たに設定された区画A8乃至区画A12の範囲を示す区画データを記録部11に一時的に記録する(ステップS511)。
その後探索部5は、記録部11に記録されている全ての地図データに相当する領域内についてその時点で設定されている通行禁止区域WAのうち、新たに設定された区画A8乃至区画A12に相当する領域にその一部又は全部が含まれている通行禁止区域WA(図10(c)に例示する場合は通行禁止区域WA0の全体)を示す通行禁止区域データを、その識別データと共に取得し、当該取得された通行禁止区域WAについての矩形範囲Fを示す矩形範囲データを算出する(ステップS512)。このステップS512の処理として図10(c)に例示する場合、矩形範囲F0を示す矩形範囲データが新たに算出されることになる。
次に探索部5は、新たに取得された通行禁止区域データに相当する通行禁止区域WAが通行禁止区域テーブルT内に登録されているか否かを判定する(ステップS513)。ステップS513の判定において、当該通行禁止区域WAが通行禁止区域テーブルT内に登録されていない場合(ステップS513;NO)、探索部5は、図12に示すステップS21の処理乃至ステップS27の処理、ステップS502の処理及びステップS503の処理を実行し、その後新たな矩形範囲Fを示す矩形範囲データと、それが含まれている区画を示す区画データと、を関連付けて、通行禁止区域テーブルTとして上記通行禁止区域データ及び区画データ等と共に記録部11に新たに且つ不揮発性に記録する(ステップS517)。その後探索部5は後述するステップS516の処理に移行する。
一方ステップS513の判定において、新たな通行禁止区域WAが通行禁止区域テーブルT内に既に登録されている場合(ステップS513;YES)、探索部5は次に、ステップS512の処理により算出された矩形範囲Fが通行禁止区域テーブルTに登録されている矩形範囲Fよりも広いか否かを判定する(ステップS514)。ステップS514の判定において、新たに算出された矩形範囲Fが登録済みの矩形範囲Fよりも広くない場合(ステップS514;NO)、通行禁止区域テーブルTの更新又は新規登録の必要はないことになるので、探索部5は次に、通行禁止区域WAの検索が終了していない新たな区画Aについて上記ステップS512の処理以降の処理が終了したか否かを判定する(ステップS516)。ステップS516の判定において、上記ステップS512の処理以降の処理が終了していない新たな区画Aがある場合(ステップS516;NO)、当該新たな区画Aについて上記ステップS512の処理以降の処理を実行すべく、探索部5は上記ステップS512の処理に移行する。一方ステップS516の判定において、新たな区画Aの全てについて上記ステップS512の処理以降の処理が終了している場合(ステップS516;YES)、探索部5は図8に示すステップS52の処理に移行する。
他方ステップS514の判定において、新たに算出された矩形範囲Fが登録済みの矩形範囲Fよりも広い場合(ステップS514;YES)、探索部5は、新たな矩形範囲Fを示す矩形範囲データや対応する通行禁止区画データ等を用いて通行禁止区域テーブルTを更新し(ステップS515)、その後上記ステップS516の処理に移行する。
次に、第3実施例に係る上記近傍判定処理(ステップS52)について、図12を用いて具体的に説明する。この近傍判定処理は、処理部10の探索部5及び記録部11を中心として実行される。
第3実施例に係る近傍判定処理において探索部5は、現在確定しているリンクL_minの次のリンクL_j(図10(c)参照)について、それが含まれる(通過する)区画A(図10(c)に例示する場合は区画A4)を特定する(ステップS520)。なおこの場合、リンクL_jが通過する区画Aが複数個の場合もあり得る。次に探索部5は、ステップS520の処理により特定された区画A内に全て含まれるか、又はその一部を共有する矩形範囲Fを示す矩形範囲データを、通行禁止区域対応テーブルTにおいて検索して取得する(ステップS521)。次に探索部5は、上記リンクL_jが含まれる区画Aに矩形範囲Fが存在するか否か、即ちステップS521の処理において取得した矩形範囲データの数が1以上か否かを判定する(ステップS522)。ステップS522の判定において取得した矩形範囲データがない場合、即ち、ステップS520の処理により特定された区画A内に全て含まれるか、又はその一部を共有する矩形範囲Fが通行禁止区域対応テーブルTに登録されていない場合(ステップS522;NO)、探索部5は図8に示すステップS7の処理に移行する。
一方、ステップS522の判定において取得した矩形範囲データがある場合(ステップS522;YES)、探索部5は次に、隣接するリンクL_jの位置がステップS521の処理により取得された矩形範囲F内であるか否かを判定する(ステップS523)。ステップS523の判定において、隣接するリンクL_jの位置がステップS521の処理により取得された矩形範囲F内でない場合(ステップS523;NO)、探索部5は図8に示すステップS7の処理に移行する。一方ステップS523の判定において、隣接するリンクL_jの位置がステップS521の処理により取得された矩形範囲F内である場合(ステップS523;YES)、探索部5は次に、通行禁止区域WAの検索が終了していない新たな区画Aについて上記ステップS523の判定が終了したか否かを判定する(ステップS524)。ステップS524の判定において、上記ステップS523の判定が終了していない当該新たな区画Aがある場合(ステップS524;NO)、探索部5は当該区画Aについて上記ステップS523の判定を行うべく、当該ステップS523の判定に移行する。一方ステップS524の判定において、全ての当該新たな区画Aについて上記ステップS523の判定が終了している場合(ステップS524;YES)、探索部5は図8に示すステップS53の処理に移行する。
以上説明したように、第3実施例に係る経路探索処理によれば、複数の通行禁止区域WAを示す通行禁止区域データの中から、車両の現在位置から見て、現在探索候補とされているリンク等の位置の方向にある通行禁止区域WA0を示す通行禁止区域データを選択する。そして、その選択された通行禁止区域データにより示されている通行禁止区域WA0を用いて矩形範囲F0が設定される(図10(c)参照)。よって、複数の通行禁止区域WAが車両の周囲にある場合でも、不要な通行禁止区域WAの方向への探索をすることなく、必要な経路を効率的に探索することができる。
(IV)第4実施例
最後に、実施形態に対応する更に他の実施例である第4実施例について、図13及び図14を用いて説明する。なお、図13は第4実施例に係る経路探索処理における通行禁止区域通過判定処理をそれぞれ例示する図であり、図14は当該経路探索処理の概念を示す図である。また、第4実施例に係る経路探索処理を実行するナビゲーション装置のハードウェア的な構成は、基本的に第1実施例に係るナビゲーション装置NVのハードウェア構成と同様であるので、以下の説明では、第1実施例に係るナビゲーション装置NVの説明に用いた部材番号を流用して説明する。更に、以下に説明する第4実施例では、上述してきた第1実施例に係る経路探索処理乃至第3実施例に係る経路探索処理との相違点についてのみ主として説明し、第1実施例に係る経路探索処理乃至第3実施例に係る経路探索処理と共通の処理等については、第1実施例に係る経路探索処理乃至第3実施例に係る経路探索処理と同一のステップ番号及び図面番号等を付して、細部の説明を省略する。
最後に、実施形態に対応する更に他の実施例である第4実施例について、図13及び図14を用いて説明する。なお、図13は第4実施例に係る経路探索処理における通行禁止区域通過判定処理をそれぞれ例示する図であり、図14は当該経路探索処理の概念を示す図である。また、第4実施例に係る経路探索処理を実行するナビゲーション装置のハードウェア的な構成は、基本的に第1実施例に係るナビゲーション装置NVのハードウェア構成と同様であるので、以下の説明では、第1実施例に係るナビゲーション装置NVの説明に用いた部材番号を流用して説明する。更に、以下に説明する第4実施例では、上述してきた第1実施例に係る経路探索処理乃至第3実施例に係る経路探索処理との相違点についてのみ主として説明し、第1実施例に係る経路探索処理乃至第3実施例に係る経路探索処理と共通の処理等については、第1実施例に係る経路探索処理乃至第3実施例に係る経路探索処理と同一のステップ番号及び図面番号等を付して、細部の説明を省略する。
上述してきた第1実施例乃至第3実施例に経路探索処理においては、現在時刻に対応した通行禁止区域データを用いた経路探索処理を実行した。これに対して以下に説明する第4実施例に係る経路探索処理では、探索候補となっているリンク又はノードの位置又は領域について異なる時刻に対応する通行禁止区域WAを示す通行禁止区域データを取得し、その位置又は領域まで車両が移動するために必要な時間を考慮して、いずれの通行禁止区域データを用いるかを選択して経路探索処理を実行する。
即ち、第1実施例に係る経路探索処理に対応した第4実施例に係る経路探索処理では、図3に示すフローチャートにおいて、ステップS14の直後であってステップS16の処理から移行してくる前の段階において、その時点でのノードN_jについての積算所要時間T’を
T’=T(L_min)+t(L_j)
として算出して記録部11に一時的に記録し、その後ステップS15の処理以降の処理に移行する。ここで、上記T(L_min)は、確定されたリンクL_minまでの出発地点からの積算所要時間であり、上記t(L_j)は現在のリンクL_jを通過するために必要とされる予測時間である。
T’=T(L_min)+t(L_j)
として算出して記録部11に一時的に記録し、その後ステップS15の処理以降の処理に移行する。ここで、上記T(L_min)は、確定されたリンクL_minまでの出発地点からの積算所要時間であり、上記t(L_j)は現在のリンクL_jを通過するために必要とされる予測時間である。
そして第1実施例に係る経路探索処理に対応した第4実施例に係る経路探索処理として設定部2は、図13に例示するように、例えば次のノードN_jに至るリンクL_jについて時刻U0に対応する通行禁止区域WAと時刻U1に対応する通行禁止区域WA(図13に例
示するように、これらは相互に異なる形状の区域である場合がある)を取得する。次に、上記積算所要時間T’の値に応じて、次のノードN_jまで車両が移動するまでに必要な時間を加算した時刻に近い方の時刻に対応する通行禁止区域WAを例えば探索部5により選択し、その選択された通行禁止区域WAを対象として第1実施例に係る経路探索処理に相当する処理を第4実施例に係る経路探索処理として実行する。より具体的には、図13に例示する場合において、例えば時刻U0が午前8時30分であり、時刻U1が午前9時であり、それぞれの時刻に対応した通行禁止区域WAの形状が異なっているとする。そして、現在のリンクL_jの始点側のノードN_minへの到達予定時刻が午前8時10分であり、終点側のノードN_jへの到達予定時刻が午前8時50分であったとする。この場合、時刻U0と時刻U1との中間の時刻(午前8時45分)までは時刻U0に対応する通行禁止区域WAを示す通行禁止区域データを用いて、第1実施例に係る経路探索処理と同様の経路探索処理を第4実施例に係る経路探索処理として実行する。一方、当該中間の時刻以降は時刻U1に対応する通行禁止区域WAを示す通行禁止区域データを用いて、第1実施例に係る経路探索処理と同様の経路探索処理を第4実施例に係る経路探索処理として実行する。
示するように、これらは相互に異なる形状の区域である場合がある)を取得する。次に、上記積算所要時間T’の値に応じて、次のノードN_jまで車両が移動するまでに必要な時間を加算した時刻に近い方の時刻に対応する通行禁止区域WAを例えば探索部5により選択し、その選択された通行禁止区域WAを対象として第1実施例に係る経路探索処理に相当する処理を第4実施例に係る経路探索処理として実行する。より具体的には、図13に例示する場合において、例えば時刻U0が午前8時30分であり、時刻U1が午前9時であり、それぞれの時刻に対応した通行禁止区域WAの形状が異なっているとする。そして、現在のリンクL_jの始点側のノードN_minへの到達予定時刻が午前8時10分であり、終点側のノードN_jへの到達予定時刻が午前8時50分であったとする。この場合、時刻U0と時刻U1との中間の時刻(午前8時45分)までは時刻U0に対応する通行禁止区域WAを示す通行禁止区域データを用いて、第1実施例に係る経路探索処理と同様の経路探索処理を第4実施例に係る経路探索処理として実行する。一方、当該中間の時刻以降は時刻U1に対応する通行禁止区域WAを示す通行禁止区域データを用いて、第1実施例に係る経路探索処理と同様の経路探索処理を第4実施例に係る経路探索処理として実行する。
より具体的に例えば、リンクL_jが通過する分割範囲SCを判定する場合に、いわゆるBresenhamのアルゴリズムを用いるとすると、これを第4実施例用に当て嵌めて改良する。即ち、これまでの経路探索処理より確定されたノードをノードXとし、出発地点からノードXまでの積算所要時間をTiとし、ノードXに対応する分割範囲SCを分割範囲X’とし、そのノードXに隣接する(次の)ノードをノードYとし、出発地点からノードYまでの積算所要時間をTjとする。更にノードYに対応する分割範囲SCを分割範囲Y’とし、分割範囲X’から分割範囲Y’までの線分に沿って現在走査している分割範囲SCを分割範囲P’(その緯度/経度を(p,q)とする)とし、分割範囲P’に対応するノードX−ノードY間の線分上の地点をPとし、出発地点から地点Pまでの積算所要時間をTpとすると、時間Tpは、距離に比例すると仮定して以下の式により算出される。
Tp=Ti+(Tj−Ti)×(線分XPの長さ/線分XYの長さ)
そして、複数の通行禁止区域WAそれぞれに対応する時刻を、時刻U0、時刻U1、…とすると、時間Tpに最も近い時刻Ukを求め、その時刻Ukにおける分割範囲P’の位置の緯度/経度(p,q)を取得して、通行の可否を判定部4において判定するのである。つまり、現在の探索の対象となっている分割範囲P’に対応する時刻が直前の通行禁止区域WAに対応する時刻に近いときは、当該直前の通行禁止区域WAを示す通行禁止区域データに基づいた経路探索処理を実行する。一方、当該分割範囲P’に対応する時刻が直後の通行禁止区域WAに対応する時刻に近いときは、当該直後の通行禁止区域WAを示す通行禁止区域データに基づいた経路探索処理を実行する。
そして、複数の通行禁止区域WAそれぞれに対応する時刻を、時刻U0、時刻U1、…とすると、時間Tpに最も近い時刻Ukを求め、その時刻Ukにおける分割範囲P’の位置の緯度/経度(p,q)を取得して、通行の可否を判定部4において判定するのである。つまり、現在の探索の対象となっている分割範囲P’に対応する時刻が直前の通行禁止区域WAに対応する時刻に近いときは、当該直前の通行禁止区域WAを示す通行禁止区域データに基づいた経路探索処理を実行する。一方、当該分割範囲P’に対応する時刻が直後の通行禁止区域WAに対応する時刻に近いときは、当該直後の通行禁止区域WAを示す通行禁止区域データに基づいた経路探索処理を実行する。
次に、第3実施例に係る経路探索処理(図10(c)参照)に対応した第4実施例に係る経路探索処理としては、先ず、隣接するリンクL_jを通過する時刻よりも所定時間(既定の時間的マージンに相当する所定時間)先の予測に係る通行禁止区域データを予め記録部11の通行禁止区域テーブルT内に設定部2により取得しておくことで(取得のタイミングは、例えば第3実施例に係る通行禁止区域検索処理(図11)参照)、そのリンクL_jを参照したタイミングで、その範囲の通行禁止区域データは通行禁止区域テーブルTに取得済みとなる。そして、現在位置PSからそれまでの経路探索処理により確定したノードに到達する時刻Ti(例えば午前8時10分)から、隣接するノードに到達する時刻Tj(例えば午前8時50分)に最も近い時刻Uk(例えば午前9時30分)までの通行禁止区域WA及びそれに対応する矩形範囲Fを取得して第4実施例に係る経路探索処理に供させる。より具体的に図14に示す場合には、時刻Uk-2(例えば午前8時30分)、時刻Uk-1(例えば午前時刻9時)、上記時刻Uk及び時刻Uk+1にそれぞれ対応する矩形範囲Fを全て取得して第4実施例に係る経路探索処理に供させる。この場合、通行禁止区域テーブルTとしては、第3実施例に係る通行禁止区域テーブルTに対して、それぞれの区画Aごとに、各通行禁止区域データと共に、それらに対応する時刻(上記時刻Uk-2、時刻Uk-1又は時刻Uk等)を示す時刻データが当該各通行禁止区域WAに関連付けて登録されることになる。
また、第3実施例に係る経路探索処理(図10(c)参照)に対応した第4実施例に係る経路探索処理における通行禁止区域検索処理(図11参照)としては、先ず、確定されたノードN_minまでの積算所要時間と車両の出発時刻から、確定されたリンクL_minを通過する時刻が属する時間帯Us−Us+1を特定し、次に、出発地点から隣接するリンクL_jを
通過するまでの積算所要時間T’を、
T’=T(L_min)+t(L_j)
として算出する。この場合のT(L_min)及びt(L_j)は、それぞれ、上記第1実施例に係る経路探索処理に対応した第4実施例に係る経路探索処理の場合と同様である。そして、積算所要時間T’と車両の出発時刻からリンクL_jを通過する時刻が属する時間帯の次の時間帯Uk−Uk+1を特定し、それに基づいて第3実施例に係る経路探索処理と同様の通行禁止区域検索処理(図11)を実行し、その結果としての通行禁止区域データ等(重複するものは除く)を、対応する時間帯と共に通行禁止区域テーブルTに登録する処理を、時間帯Us−Uk+1に属する全ての時刻について繰り返す。
通過するまでの積算所要時間T’を、
T’=T(L_min)+t(L_j)
として算出する。この場合のT(L_min)及びt(L_j)は、それぞれ、上記第1実施例に係る経路探索処理に対応した第4実施例に係る経路探索処理の場合と同様である。そして、積算所要時間T’と車両の出発時刻からリンクL_jを通過する時刻が属する時間帯の次の時間帯Uk−Uk+1を特定し、それに基づいて第3実施例に係る経路探索処理と同様の通行禁止区域検索処理(図11)を実行し、その結果としての通行禁止区域データ等(重複するものは除く)を、対応する時間帯と共に通行禁止区域テーブルTに登録する処理を、時間帯Us−Uk+1に属する全ての時刻について繰り返す。
更に、第3実施例に係る経路探索処理(図10(c)参照)に対応した第4実施例に係る経路探索処理における近傍判定処理(図12参照)としては、そのステップS520の処理の直前に、各通行禁止区域データを設定部2により取得し、その後、当該取得した通行禁止区域データを用いて図12ステップS520以降の処理を実行する。そして、第4実施例に係る経路探索処理としてのステップS524の判定では、取得された各通行禁止区域データに対応する時刻間の各時刻について、それぞれに対応する通行禁止区域WAの検索が終了していない新たな区画Aについて上記ステップS523の判定が終了したか否かが判定される。
以上説明したように、第4実施例に係る経路探索処理によれば、第1実施例に係る経路探索処理乃至第3実施例に係る経路探索処理それぞれの作用効果に加えて、異なる時刻についての複数の通行禁止区域WAを示す通行禁止区域データの中から、現在探索候補とされているリンク等に至るまでに要する時間に対応した通行禁止区域データを選択し、その選択された通行禁止区域データに相当する通行禁止区域WAを用いて矩形範囲Fが設定される。よって、複数の通行禁止区域WAの中から車両の移動時間に対応した通行禁止区域WAが選択されることで、必要な経路をより的確に探索することができる。
なお上述してきた各実施例では、通行禁止区域WAの少なくとも一部との重なりがある分割範囲SCに相当する領域内に存在するリンク等を探索候補から除外して、経路を探索する場合について説明した。しかしながらこれ以外に、通行禁止区域WAの少なくとも一部との重なりがある分割範囲SCに相当する領域内に存在するリンク等が、車両が移動可能な他のリンク又は他のノードに対して相対的に経路の一部となり難いようにして経路の探索をする場合に、本願を適用することも可能である。この場合より具体的には、例えば経路として探索され難さを示す指標としてのいわゆるコスト(移動コスト)を用い、通行禁止区域WAの少なくとも一部との重なりがある分割範囲SCに相当する領域内に存在するリンク等についての当該コストを、他のリンク等についての当該コストよりも増加させて、経路を探索するように構成することができる。このようなコストを用いた経路探索処理に対して本願を適用しても、各実施例に係る経路探索処理と同様の効果を奏することができる。
また上述してきた各実施例では、当該各実施例に係る経路探索処理を各ナビゲーション装置において実施する構成としたが、これ以外に、各実施例に係る経路探索処理を、いわゆるスマートフォン等や各ナビゲーション装置である端末装置とインターネット等のネットワークを介して接続されたサーバ装置において実行し、その探索結果としての経路を当該端末装置において告知(表示)するように構成することもできる。
この場合についてのより具体的な構成としては、先ず、車両が現在移動している領域において例えばFM放送を介して受信した上記VICS情報(交通情報等)から、その車両内の端末装置において上記通行禁止区域データを取得してサーバ装置に送信する。これによりサーバ装置は、端末装置から受信した、上記通行禁止区域データ、及び、車両の現在位置、現在時刻、目的地等の経路の探索に必要なデータを用いた経路探索処理を行い、最短の経路を得る。これによりサーバ装置は、得られた最短の経路を示す経路データを上記端末装置に送信し、その端末装置では、受信した経路を例えばディスプレイに表示する構成とする。
また、他の構成としては、日本全国の上記VICS情報をサーバ装置において取得可能である場合に、先ず、車両の現在位置及び現在時刻の他、経路の探索に必要なデータを、当該車両内の端末装置からサーバ装置に送信する。サーバ装置では、端末装置から受信した、現在位置、現在時刻、目的地等の探索に必要なデータに基づき、上記VICS情報を、上記ネットワークを介して又は既設の所定データベースから取得する。その後、サーバ装置は、経路探索処理を行って最短の経路を取得する。その後サーバ装置は、得られた経路を示すデータを端末装置に送信し、その端末装置では、受信した経路を例えばディスプレイに表示する構成とする。
更に上述してきた各実施例では、車両に搭載されたナビゲーション装置NVにおける経路探索処理に対して実施形態に係る経路探索処理を適用した場合について説明したが、これ以外に、例えば人が所持する携帯型情報端末装置による案内処理の一環としての経路探索処理を実行する場合に、実施形態に係る経路探索処理を適用することも可能である。
更にまた、図3、図4、図6、図8、図9、図11又は図12にそれぞれ示したフローチャートに相当する経路探索用プログラムを、光ディスク又はハードディスク等の記録媒体に記録しておき、或いはインターネット等のネットワークを介して取得しておき、これを汎用のマイクロコンピュータ等により読み出して実行することにより、当該マイクロコンピュータ等を各実施例に係る処理部10として機能させることも可能である。
1 取得手段(インターフェース)
2 設定手段(設定部)
3 分割手段(分割部)
4 判定手段(判定部)
5 探索手段(探索部)
10 処理部
11 記録部
12 センサ部
F、F0、F1 矩形範囲
WA、WA0、WA1 通行禁止区域
NG 通行不可範囲
PS 通行可能範囲
NF 通行不確定範囲
SC1、SC2、SC3 分割範囲
T 通行禁止区域テーブル
L_min、L_j リンク
N_min、N_min、N_j ノード
A0、A1、A2、A3、A4、A5、A6、A7、A8、A9、A10、A11、A12 区画
S 経路探索装置
NV ナビゲーション装置
2 設定手段(設定部)
3 分割手段(分割部)
4 判定手段(判定部)
5 探索手段(探索部)
10 処理部
11 記録部
12 センサ部
F、F0、F1 矩形範囲
WA、WA0、WA1 通行禁止区域
NG 通行不可範囲
PS 通行可能範囲
NF 通行不確定範囲
SC1、SC2、SC3 分割範囲
T 通行禁止区域テーブル
L_min、L_j リンク
N_min、N_min、N_j ノード
A0、A1、A2、A3、A4、A5、A6、A7、A8、A9、A10、A11、A12 区画
S 経路探索装置
NV ナビゲーション装置
Claims (1)
- 移動体の移動が制限される移動規制領域に関する情報を取得する取得手段と、
前記移動規制領域を内含する範囲を設定する設定手段と、
前記範囲を複数の分割範囲に分ける分割手段と、
前記分割範囲と前記移動規制領域の少なくとも一部に重なりがあるかを判定する判定手段と、
前記重なりがあると判定された前記分割範囲内に存在するリンク又はノードの少なくとも一方について、探索候補から除外するか、又はコストを増加させて前記移動体の経路を探索する探索手段と、
を備える探索装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020213347A JP2021056240A (ja) | 2020-12-23 | 2020-12-23 | 探索装置、探索方法及び探索用プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020213347A JP2021056240A (ja) | 2020-12-23 | 2020-12-23 | 探索装置、探索方法及び探索用プログラム |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019104457A Division JP2019164164A (ja) | 2019-06-04 | 2019-06-04 | 探索装置、探索方法及び探索用プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2021056240A true JP2021056240A (ja) | 2021-04-08 |
Family
ID=75270552
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020213347A Pending JP2021056240A (ja) | 2020-12-23 | 2020-12-23 | 探索装置、探索方法及び探索用プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2021056240A (ja) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014016264A (ja) * | 2012-07-10 | 2014-01-30 | Fuji Heavy Ind Ltd | 回避経路導出装置、回避経路導出プログラム、および、回避経路導出方法 |
-
2020
- 2020-12-23 JP JP2020213347A patent/JP2021056240A/ja active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014016264A (ja) * | 2012-07-10 | 2014-01-30 | Fuji Heavy Ind Ltd | 回避経路導出装置、回避経路導出プログラム、および、回避経路導出方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5075331B2 (ja) | 地図データベース生成システム | |
JP2834952B2 (ja) | 経路探索方法 | |
US8634984B2 (en) | Navigation system | |
JP5661782B2 (ja) | Gps軌跡を用いた付加的マップ生成、改良および拡張 | |
JP6094543B2 (ja) | 出発地・目的地抽出装置、出発地・目的地抽出方法 | |
JP4255950B2 (ja) | ナビゲーション装置 | |
JP4461041B2 (ja) | 案内経路生成装置、車両ナビゲーションシステムおよび案内経路生成方法 | |
JP2012127770A (ja) | 経路探索方法および装置 | |
JP2008096209A (ja) | 到達可能範囲表示装置および到達可能範囲表示方法ならびにそのプログラム | |
JP4948205B2 (ja) | ナビゲーション装置、ナビゲーションシステムおよび経路表示方法。 | |
JP2018010019A (ja) | 探索装置、探索方法及び探索用プログラム | |
JP4845096B2 (ja) | ナビゲーション装置、地図サーバ、地図更新方法および地図更新プログラム | |
JP2023171390A (ja) | 地物検索装置、地物検索方法及び地物検索用プログラム | |
JP6912859B2 (ja) | 地図更新装置、地図更新方法、コンピュータプログラム及びコンピュータプログラムを記録した記録媒体 | |
WO2014103080A1 (ja) | 表示制御装置、表示制御方法、表示制御プログラム、表示制御システム、表示制御サーバおよび端末 | |
JP2015145793A (ja) | 経路探索装置、経路探索方法及び経路探索用プログラム | |
JP2021056240A (ja) | 探索装置、探索方法及び探索用プログラム | |
JP2019164164A (ja) | 探索装置、探索方法及び探索用プログラム | |
JP2007148094A (ja) | 地図表示装置 | |
JP2902209B2 (ja) | 経路探索方法 | |
JP6110536B1 (ja) | ナビゲーションシステム、経路案内方法、ナビゲーションシステム用プログラム | |
JP3012096B2 (ja) | 経路探索方法 | |
JP2798828B2 (ja) | 車載ナビゲータ | |
JPH07103773A (ja) | 経路計算方法及び装置 | |
JP2019066631A (ja) | 地図データ構造 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20201223 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210914 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20220315 |