(57)【特許請求の範囲】
【請求項１】
通行を回避する回避エリアを含むエリアであるバッファエリアを設定するエリア設定部と、
前記回避エリアに含まれるリンクに対応付けられた通行コストを第１の係数に応じて設定し、前記バッファエリアに含まれるリンクに対応付けられた通行コストを前記第１の係数よりも小さい第２の係数に応じて設定するコスト設定部と、
各リンクに対応付けられた通行コストに応じて、出発地から目的地までの経路を探索する探索部と、
を備え、
前記エリア設定部は、
前記回避エリアを含む第１のエリアのリンクの密度が第１の閾値以下でない場合、前記第１のエリアを前記バッファエリアとして設定し、
前記第１のエリアのリンクの密度が第１の閾値以下である場合、前記第１のエリアよりも大きい第２エリアを前記バッファエリアとして設定する、
ことを特徴とするルート探索装置。
【請求項２】
通行を回避する回避エリアを含むエリアであるバッファエリアを設定するエリア設定部と、
前記回避エリアに含まれるリンクに対応付けられた通行コストを第１の係数に応じて設定し、前記バッファエリアに含まれるリンクに対応付けられた通行コストを前記第１の係数よりも小さい第２の係数に応じて設定するコスト設定部と、
各リンクに対応付けられた通行コストに応じて、出発地から目的地までの経路を探索する探索部と、
を備え、
前記エリア設定部は、
前記回避エリアの位置する地域の種別に応じて、前記バッファエリアの大きさを設定する、
ことを特徴とするルート探索装置。
【請求項３】
前記エリア設定部は、前記バッファエリアを、第１のエリア及び前記第１のエリアよりも前記回避エリアからの距離が遠い第２のエリアに分割し、
前記コスト設定部は、前記第１のエリアに含まれるリンクに対応付けられた通行コストを前記第２の係数に応じて設定し、前記第２のエリアに含まれるリンクに対応付けられた通行コストを前記第２の係数よりも小さい第３の係数に応じて設定する、
ことを特徴とする請求項１または２記載のルート探索装置。
【請求項４】
コンピュータが、請求項１または２記載のルート探索装置の各処理を実行するルート探索方法。
【請求項５】
コンピュータに、請求項１または２記載のルート探索装置の各処理を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ルート探索装置、ルート探索方法、及びプログラムに関する。
【背景技術】
【０００２】
従来、目的地までの経路を探索してユーザに提示するナビゲーション装置が知られている。このナビゲーション装置では、例えば、ダイクストラ法を用いて、出発地から目的地まで所要時間が最短となる経路を探索する。この際、あらゆる経路についての所要時間を算出すると、所望の時間以内に探索を完了できないため、例えば、経路として選択される可能性が高い順に、所定数の道路の区間（リンク）を順次選択することにより、経路を選択する。
【０００３】
特許文献１には、このナビゲーション装置において、事故の情報に応じて回避エリアを設定し、当該回避エリアを回避するような経路を探索する技術が記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−２６８１４９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来技術では、回避エリアの直前で迂回する経路が探索される傾向が高くなり、当該直前の迂回路によっては、例えば通常は選択されないような車幅が狭いリンクを通る経路が探索される場合があるという問題がある。
【０００６】
そこで、適切な迂回経路を探索することを目的とする。
【課題を解決するための手段】
【０００７】
ルート探索装置において、通行を回避する回避エリアを含むエリアであるバッファエリアを設定するエリア設定部と、前記回避エリアに含まれるリンクに対応付けられた通行コストを第１の係数に応じて設定し、前記バッファエリアに含まれるリンクに対応付けられた通行コストを前記第１の係数よりも小さい第２の係数に応じて設定するコスト設定部と、各リンクに対応付けられた通行コストに応じて、出発地から目的地までの経路を探索する探索部と、を備え、前記エリア設定部は、前記回避エリアを含む第１のエリアのリンクの密度が第１の閾値以下でない場合、前記第１のエリアを前記バッファエリアとして設定し、前記第１のエリアのリンクの密度が第１の閾値以下である場合、前記第１のエリアよりも大きい第２エリアを前記バッファエリアとして設定する。
【発明の効果】
【０００８】
開示の技術によれば、適切な迂回経路を探索することが可能となる。
【図面の簡単な説明】
【０００９】
【図１】実施の形態におけるルート探索装置のハードウェア構成例を示す図である。
【図２】ルート探索装置の機能ブロック図である。
【図３】回避エリアデータの一例を示す図である。
【図４】ノードデータの一例を示す図である。
【図５】リンクデータの一例を示す図である。
【図６】エリア設定処理の一例を示すフローチャートである。
【図７】バッファエリアの設定処理の一例を説明する図である。
【図８】修正後コスト設定処理の一例を示すフローチャートである。
【図９】各リンクに対する修正後のコストについて説明する図である。
【図１０】エリア設定処理の他の例を示すフローチャートである。
【図１１】リンクの密度に応じたバッファエリアを設定する処理を説明する図である。
【図１２】複数のバッファエリアに分割する処理の一例を説明する図である。
【図１３】ルート探索処理の一例を示すフローチャートである。
【図１４】ルート探索処理の一例を説明する図である。
【発明を実施するための形態】
【００１０】
以下、図面に基づいて本発明の実施形態を説明する。図１は、実施の形態におけるルート探索装置１０のハードウェア構成例を示す図である。ルート探索装置１０は、サーバコンピュータ、スマートフォン、車載ナビゲーション装置、パーソナルコンピュータ、タブレット端末、携帯電話機などの情報処理装置である。
【００１１】
図１のルート探索装置１０は、それぞれバスＢで相互に接続されているドライブ装置１００、補助記憶装置１０２、メモリ装置１０３、ＣＰＵ１０４、インタフェース装置１０５、表示装置１０６、及び入力装置１０７等を有する。 
ルート探索装置１０での処理を実現するナビゲーションプログラムは、記録媒体１０１によって提供される。ナビゲーションプログラムを記録した記録媒体１０１がドライブ装置１００にセットされると、ナビゲーションプログラムが記録媒体１０１からドライブ装置１００を介して補助記憶装置１０２にインストールされる。但し、ナビゲーションプログラムのインストールは必ずしも記録媒体１０１より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置１０２は、インストールされたナビゲーションプログラムを格納すると共に、必要なファイルやデータ等を格納する。 
メモリ装置１０３は、プログラムの起動指示があった場合に、補助記憶装置１０２からプログラムを読み出して格納する。ＣＰＵ１０４は、メモリ装置１０３に格納されたプログラムに従ってルート探索装置１０に係る機能を実現する。インタフェース装置１０５は、ネットワークに接続するためのインタフェースとして用いられる。表示装置１０６はプログラムによるＧＵＩ（Graphical User Interface）等を表示する。入力装置１０７はキーボード及びマウス等、またはタッチパネル及びボタン等で構成され、様々な操作指示を入力させるために用いられる。
【００１２】
なお、記録媒体１０１の一例としては、ＣＤ−ＲＯＭ、ＤＶＤディスク、又はＵＳＢメモリ等の可搬型の記録媒体が挙げられる。また、補助記憶装置１０２の一例としては、ＨＤＤ（Hard Disk Drive）又はフラッシュメモリ等が挙げられる。記録媒体１０１及び補助記憶装置１０２のいずれについても、コンピュータ読み取り可能な記録媒体に相当する。
【００１３】
次に、図２を参照し、ルート探索装置１０の機能構成について説明する。図２は、ルート探索装置１０の機能ブロック図である。ルート探索装置１０は、エリア設定部１２、コスト設定部１３、及びルート探索部１４を有する。これら各部は、ルート探索装置１０にインストールされた１以上のプログラムが、ルート探索装置１０のＣＰＵ１０４に実行させる処理により実現される。
【００１４】
また、ルート探索装置１０は、記憶部１１を有する。記憶部１１は、例えば、補助記憶装置１０２等を用いて実現される。
【００１５】
記憶部１１は、回避エリアデータ１１１、ノードデータ１１２、リンクデータ１１３を記憶する。
【００１６】
次に、図３を参照し、回避エリアデータ１１１について説明する。図３は、回避エリアデータ１１１の一例を示す図である。回避エリアデータ１１１には、事故やイベント等に応じて、回避するべきエリア（回避エリア）を示すデータが格納される。
【００１７】
図３の例では、回避エリアの各頂点の地点（第１地点から第４地点）のそれぞれの位置情報である緯度、経度が格納される。なお、回避エリアは、正方形または矩形に限らず、四角形、六角形、ひし形等の多角形や、円等の曲線で囲まれた形状としてもよい。
【００１８】
また、回避エリアの各頂点にて指定する代わりに、例えば回避エリアの中心と半径にて指定できるようにしてもよい。
【００１９】
次に、図４を参照し、ノードデータ１１２について説明する。図４は、ノードデータ１１２の一例を示す図である。ノードデータ１１２には、ノードＩＤ、及び位置情報が含まれる。ノードＩＤは、ノードを識別するＩＤである。位置情報は、ノードの位置を示す、緯度、経度等の情報である。
【００２０】
次に、図５を参照し、リンクデータ１１３について説明する。図５は、リンクデータ１１３の一例を示す図である。リンクデータ１１３には、リンクＩＤ、開始ノードＩＤ、終了ノードＩＤ、コスト（本来コスト）、及び修正後コスト（通行コスト）が含まれる。
【００２１】
リンクＩＤは、交差点等のノード間の道路であるリンクを識別するＩＤである。始点ノードＩＤは、リンクの始点のノードを識別するＩＤである。
【００２２】
終点ノードＩＤは、リンクの終点のノードを識別するＩＤである。コストは、リンクを通過するための所要時間や距離を示すデータである。
【００２３】
修正後コストは、コスト設定部１３により回避エリアに応じて設定された、修正後のコストである。修正後コストには、初期状態ではコストと同じ値が設定され、後述する回避エリアやバッファエリアにリンクのノードが含まれる場合、コストの値に回避エリアやバッファエリアに応じた係数が乗算または加算された値が設定される。
【００２４】
図２の説明に戻る。エリア設定部１２は、回避エリアデータ１１１を設定する。エリア設定部１２は、例えばユーザからの入力操作に基づいて、回避エリアデータ１１１を設定してもよい。または、エリア設定部１２は、ＶＩＣＳ（登録商標）で取得した事故情報や、予め設定されているスクールゾーンやお祭り等のイベントに基づいて、回避エリアデータ１１１を設定してもよい。
【００２５】
また、エリア設定部１２は、回避エリアデータ１１１に基づいて、回避エリアを含む所定のエリア（領域、範囲）であるバッファエリアを設定する。
【００２６】
コスト設定部１３は、リンクデータ１１３において、エリア設定部１２により設定された回避エリアに含まれるリンクに対応付けられた修正後コストを、第１の係数に応じて設定する。
【００２７】
また、コスト設定部１３は、リンクデータ１１３において、エリア設定部１２により設定されたバッファエリアに含まれるリンクに対応付けられた修正後コストを、第１の係数よりも小さい第２の係数に応じて設定する。
【００２８】
ルート探索部１４は、ユーザから出発地及び目的地の設定を受け付け、出発地から目的地までの経路（ルート）を探索する。ルート探索部１４は、例えば、ダイクストラ法等を用いて、出発地から目的地までの複数の経路について、各経路にそれぞれ含まれる各リンクの所要時間や距離に応じた修正後コストの総計を算出し、修正後コストの総計値が最少となる経路を探索する。
【００２９】
＜エリアに応じたコスト設定処理＞
次に、図６乃至８を参照し、エリア設定部１２及びコスト設定部１３による、エリアに応じたコスト設定処理の一例について説明する。
【００３０】
図６は、エリア設定処理の一例を示すフローチャートである。
【００３１】
まず、エリア設定部１２は、ユーザからの入力操作、取得した事故情報、または予め設定されたお祭り等のイベント等のデータに基づき、回避エリアデータ１１１に、回避エリアの位置情報を設定する（ステップＳ１０１）。
【００３２】
続いて、エリア設定部１２は、回避エリアを含む所定のエリア（領域、範囲）であるバッファエリアを設定する（ステップＳ１０２）。
【００３３】
ここで、図７を参照し、図６のステップＳ１０２の、バッファエリアを設定する処理の詳細について説明する。図７は、エリア設定部１２によるバッファエリアの設定処理の一例を説明する図である。
【００３４】
エリア設定部１２は、例えば、図７に示すように、バッファエリア５０２の中心５０２ｏの位置を、回避エリア５０１の中心５０１ｏの位置と同一とする。そして、エリア設定部１２は、回避エリア５０１の中心５０１ｏから、回避エリアの各頂点の地点（５０１ａ〜５０１ｄ）までの各線分を、当該各線分の長さに所定値を乗算した長さまで延ばした各地点を算出する。そして、エリア設定部１２は、算出した各地点を、バッファエリア５０２の各頂点の地点（５０２ａ〜５０２ｄ）とする。
【００３５】
続いて、コスト設定部１３は、バッファエリアを対象エリアとし（ステップＳ１０３）、対象エリア内のリンクに対する修正後コストを設定する修正後コスト設定処理を行う（ステップＳ１０４）。なお、修正後コスト設定処理の詳細は後述する。
【００３６】
続いて、コスト設定部１３は、回避エリアを対象エリアとし（ステップＳ１０５）、修正後コスト設定処理を行う（ステップＳ１０６）。
【００３７】
＜＜修正後コスト設定処理＞＞
図８は、修正後コスト設定処理の一例を示すフローチャートである。
【００３８】
コスト設定部１３は、ノードデータ１１２を参照し、対象エリア内に含まれる各ノードを抽出する（ステップＳ２０１）。コスト設定部１３は、例えば、図４に示すノードデータ１１２から、対象エリア内に位置する各ノードＩＤを抽出する。
【００３９】
続いて、コスト設定部１３は、リンクデータ１１３を参照し、抽出した各ノードを含む各リンクを抽出する（ステップＳ２０２）。コスト設定部１３は、例えば、図５に示すリンクデータ１１３から、始点ノードＩＤまたは終点ノードＩＤが、ステップＳ２０１で抽出した各ノードＩＤのいずれかに一致するリンクＩＤを抽出する。
【００４０】
続いて、コスト設定部１３は、抽出した各リンクのコストに、対象エリアに応じた係数を乗算または加算した値を算出し（ステップＳ２０３）、当該各リンクに対する修正後コストに、算出した値を設定する（ステップＳ２０４）。
【００４１】
図９は、各リンクに対する修正後のコストについて説明する図である。図９の例では、回避エリア５０１内に含まれる各ノード（５１１ａ、５１１ｂ、・・・）を始点または終点とする各リンク（５２１ａ、５２１ｂ、・・・）は、本来コストに対し、回避エリア５０１に応じた係数（第１の係数）を乗算または加算した値が修正後コストとして設定される。なお、回避エリア５０１に応じた係数は、例えば「１００」とする。
【００４２】
また、バッファエリア５０２内に含まれる各ノード（５１２ａ、５１２ｂ、・・・）を始点または終点とする各リンク（５２２ａ、５２２ｂ、・・・）は、本来コストに対し、バッファエリア５０２に応じた係数（第２の係数）を乗算または加算した値が修正後コストとして設定される。なお、バッファエリア５０２に応じた係数は、例えば「５」とする。
【００４３】
＜エリアに応じたコスト設定処理の変形例＞
次に、図１０、１１を参照し、エリア設定部１２及びコスト設定部１３による、エリアに応じたコスト設定処理の他の例について説明する。
【００４４】
図１０は、エリア設定処理の他の例を示すフローチャートである。
【００４５】
まず、エリア設定部１２は、ユーザからの入力操作、取得した事故情報、または予め設定されたイベント等のデータに基づき、回避エリアデータ１１１に、回避エリアの位置情報を設定する（ステップＳ３０１）。
【００４６】
続いて、エリア設定部１２は、回避エリアを含む第１のエリアにおける、リンクの密度を算出する（ステップＳ３０２）。なお、リンクの密度は、例えば、所定のエリアにおけるリンクの数を、当該エリアの面積で除算することにより算出される。
【００４７】
続いて、エリア設定部１２は、第１のエリアにおけるリンクの密度が第１の閾値以下であるか判定する（ステップＳ３０３）。なお、第１の閾値は、第１のエリアをバッファエリアとするか否かを決定するための指標となる値である。
【００４８】
第１のエリアにおけるリンクの密度が第１の閾値以下でない場合（ステップＳ３０３でＮＯ）、エリア設定部１２は、第１のエリアを、バッファエリアとして設定し（ステップＳ３０４）、後述するステップＳ３０６の処理に進む。
【００４９】
第１のエリアにおけるリンクの密度が第１の閾値以下である場合（ステップＳ３０３でＹＥＳ）、エリア設定部１２は、回避エリアを含む第１のエリアよりも大きい（広い）エリアである第２のエリアを、バッファエリアとして設定する（ステップＳ３０５）。
【００５０】
ここで、図７、図１１を参照し、図１０のステップＳ３０４とステップＳ３０５とのバッファエリアを設定する処理の詳細について説明する。図１１は、リンクの密度に応じたバッファエリアを設定する処理を説明する図である。
【００５１】
エリア設定部１２は、回避エリアを含む第１のエリアを設定する場合、例えば、図７と同様に、第１のエリア５０２の中心５０２ｏの位置を、回避エリア５０１の中心５０１ｏの位置と同一とする。
【００５２】
そして、エリア設定部１２は、回避エリア５０１の中心５０１ｏから、回避エリア５０１の各頂点の地点（５０１ａ〜５０１ｄ）までの各線分を、当該各線分の長さに第１の所定値を乗算した長さまで延ばした各地点を算出する。そして、エリア設定部１２は、算出した各地点を、第１のエリア５０２の各頂点の地点（５０２ａ〜５０２ｄ）とする。エリア設定部１２は、第１のエリア５０２におけるリンクの密度が第１の閾値以下でない場合、第１のエリア５０２を、バッファエリアとして設定する。
【００５３】
図１１（Ａ）は、リンクの密度が第１の閾値以下でない場合のバッファエリアの例を示す図である。図１１（Ａ）のように、例えば都市部などのリンクの密度が比較的高い地域の場合は、比較的小さいバッファエリア５０２Ａが設定される。これは、小さいバッファエリア５０２Ａの中でも、一定程度の迂回経路の選択肢が存在すると推定できるためである。
【００５４】
一方、第１のエリア５０２におけるリンクの密度が第１の閾値以下である場合、エリア設定部１２は、例えば、図７と同様に、第２のエリア５０２Ｂの中心５０２ｏの位置を、回避エリア５０１の中心５０１ｏの位置と同一とする。
【００５５】
そして、エリア設定部１２は、回避エリア５０１の中心５０１ｏから、回避エリアの各頂点の地点（５０１ａ〜５０１ｄ）までの各線分を、当該各線分の長さに上述の第１の所定値よりも大きい第２の所定値を乗算した長さまで延ばした各地点を算出する。そして、エリア設定部１２は、算出した各地点を、第２のエリア５０２Ｂの各頂点の地点（５０２ａ〜５０２ｄ）とする。
【００５６】
図１１（Ｂ）は、リンクの密度が第１の閾値以下である場合のバッファエリアの例を示す図である。図１１（Ｂ）のように、例えば地方部などのリンクの密度が比較的低い地域の場合は、比較的大きいバッファエリア５０２Ｂが設定される。これにより、リンクの密度が少ない地域の場合に、回避エリア５０１を迂回する経路の選択肢をより増やすことができる。
【００５７】
なお、エリア設定部１２は、バッファエリアの大きさを、第１のエリアにおけるリンクの密度に応じて決定してもよい。例えば、第１のエリアにおけるリンクの密度が低い程、バッファエリアの大きさを大きくしてもよい。
【００５８】
なお、エリア設定部１２は、ステップＳ３０３にてリンクの密度に応じてバッファエリアの大きさを設定する代わりに、地域の種別に応じてバッファエリアの大きさを設定してもよい。例えば、位置情報と地域の種別（例えば都心部、地方部等）を予め設定しておき、回避エリアの位置に対する地域の種別が地方部であれば、ステップＳ３０５のように比較的大きいエリアをバッファエリアとして設定してもよい。
【００５９】
続いて、エリア設定部１２は、バッファエリアにおけるリンクの密度が第２の閾値以下であるか判定する（ステップＳ３０６）。なお、第２の閾値は、バッファエリアを複数のバッファエリアに分割するか否かを決定するための指標となる値である。
【００６０】
バッファエリアにおけるリンクの密度が第２の閾値以下である場合（ステップＳ３０６でＹＥＳ）、ステップＳ３０８の処理に進む。
【００６１】
バッファエリアにおけるリンクの密度が第２の閾値以下でない場合（ステップＳ３０６でＮＯ）、バッファエリアを、中心からの距離に応じて、複数のバッファエリアに分割する（ステップＳ３０７）。
【００６２】
ここで、図１２を参照し、図１０のステップＳ３０７の複数のバッファエリアに分割する処理の詳細について説明する。図１２は、エリア設定部１２による複数のバッファエリアに分割する処理の一例を説明する図である。エリア設定部１２は、例えば、図１２に示すように、エリア設定部１２は、回避エリア５０１の各頂点の地点（５０１ａ〜５０１ｄ）から、回避エリア５０１の各頂点に対応するバッファエリア５０２の各頂点の地点（５０２ａ〜５０２ｄ）までの各線分を、所定の比で分割する各地点を算出する。そして、エリア設定部１２は、算出した各地点を、第１のバッファエリア５０３の各頂点の地点（５０３ａ〜５０３ｄ）とする。それにより、バッファエリアが、第１のバッファエリア５０３、及び第２のバッファエリア５０２に分割される。
【００６３】
コスト設定部１３は、回避エリア５０１に比較的近い方の第１のバッファエリア５０３の係数を、回避エリア５０１の係数（例えば「１００」）よりも小さい値（例えば「５」）とする。また、コスト設定部１３は、回避エリア５０１から比較的遠い方の第２のバッファエリア５０２の係数を、第１のバッファエリア５０３の係数よりも小さい値（第３の係数。例えば「２」）とする。
【００６４】
上述したように、バッファエリアを複数に分割することにより、例えば、リンクの密度が低い地域でバッファエリアを大きくしたため各リンクの距離が比較的長くなる場合に、道幅が狭くとも回避エリアに比較的近いリンクを通る経路を探索できる。
【００６５】
なお、エリア設定部１２は、バッファエリアの大きさ（面積）、回避エリアを含む所定のエリアのリンク密度、または地域の種別に応じてバッファエリアを分割してもよい。例えば、バッファエリアの大きさが所定の閾値以上の場合、回避エリアを含む所定のエリアのリンク密度が所定の閾値以下の場合、または回避エリアの位置に対する地域の種別が地方部の場合に、ステップＳ３０７のようにバッファエリアを複数に分割してもよい。
【００６６】
続いて、コスト設定部１３は、複数のバッファエリアのうち、回避エリアから最も遠い位置のバッファエリアを対象エリアとし（ステップＳ３０８）、修正後コスト設定処理を行う（ステップＳ３０９）。
【００６７】
続いて、コスト設定部１３は、複数のバッファエリアのうち、選択したバッファエリアよりも回避エリアに近い位置のバッファエリアがあるか判定する（ステップＳ３１０）。
【００６８】
選択したバッファエリアよりも回避エリアに近い位置のバッファエリアがある場合（ステップＳ３１０でＹＥＳ）、当該バッファエリアを対象エリアとし（ステップＳ３１１）、ステップＳ３０９の処理に戻る。
【００６９】
選択したバッファエリアよりも回避エリアに近い位置のバッファエリアがない場合（ステップＳ３１０でＮＯ）、コスト設定部１３は、回避エリアを対象エリアとし（ステップＳ３１２）、修正後コスト設定処理を行う（ステップＳ３１３）。
【００７０】
＜ルート探索処理＞
次に、図１３、１４を参照して、ルート探索部１４によるルート探索処理の詳細について説明する。図１３は、ルート探索処理の一例を示すフローチャートである。
【００７１】
まず、ルート探索部１４は、ユーザから出発地及び目的地の設定を受け付ける（ステップＳ４０１）。
【００７２】
続いて、ルート探索部１４は、リンクデータ１１３、ノードデータ１１２を参照し、出発地から目的地方面に向かう所定のエリア内で、複数の経路を抽出する（ステップＳ４０２）。
【００７３】
続いて、ルート探索部１４は、抽出した複数の経路について、各経路にそれぞれ含まれる各リンクの修正後コストの総計を算出する（ステップＳ４０３）。
【００７４】
続いて、ルート探索部１４は、修正後コストの総計値が最少となる経路を選択し（ステップＳ４０４）、処理を終了する。
【００７５】
図１４は、ルート探索処理の一例を説明する図である。バッファエリア５０２を設定しない場合、回避エリア５０１に入る手前の道幅が狭い経路５１１を選択してしまう場合がある。上述した実施形態のように、バッファエリア５０２を設定することにより、回避エリア５０１に遠い位置から、回避エリア５０１を緩やかに迂回する経路５１２を選択できる。
【００７６】
＜まとめ＞
上述した実施形態によれば、通行を回避する回避エリアを含むエリアであるバッファエリアを設定する。そして、回避エリアに含まれるリンクに対応付けられたコストを第１の係数に応じて設定し、バッファエリアに含まれるリンクに対応付けられたコストを第１の係数よりも小さい第２の係数に応じて設定する。それにより、回避エリアの直前ではなく、ある程度の余裕をもたせた範囲で、より適切な迂回経路を探索できる。
【００７７】
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【００７８】
ルート探索装置１０の各機能部は、例えば１以上のコンピュータにより構成されるクラウドコンピューティングにより実現されていてもよい。ルート探索装置１０は、スマートフォン等の端末からの要求に応じて、経路を探索し、探索した経路を端末に通知するサーバ装置であってもよい。ルート探索装置１０は、車載ナビゲーション装置やスマートフォン等の端末に、ルート探索プログラムをインストールすることにより実現してもよい。
【符号の説明】
【００７９】
１０  ルート探索装置
１１  記憶部
１１１  回避エリアデータ
１１２  ノードデータ
１１３  リンクデータ
１２  エリア設定部
１３  コスト設定部
１４  ルート探索部
【図１】
0006574732.tif 000002
【図２】
0006574732.tif 000003
【図３】
0006574732.tif 000004
【図４】
0006574732.tif 000005
【図５】
0006574732.tif 000006
【図６】
0006574732.tif 000007
【図７】
0006574732.tif 000008
【図８】
0006574732.tif 000009
【図９】
0006574732.tif 000010
【図１０】
0006574732.tif 000011
【図１１】
0006574732.tif 000012
【図１２】
0006574732.tif 000013
【図１３】
0006574732.tif 000014
【図１４】
0006574732.tif 000015