以下、本発明の一実施形態に係るナビゲーション装置について説明する。
<第1実施形態>
図1は、本実施形態に係る車載装置100を含む通知情報生成システム1の概略構成と、車載装置100の機能構成を示す機能ブロックの一例を示した図である。車載装置100は、出発地から目的地までを結ぶ推奨経路を探索してユーザを誘導案内したり、渋滞や交通規制などの交通情報を表示するナビゲーション機能を備えたナビゲーション装置により実現される。なお、ナビゲーション装置は、車両に搭載されているナビゲーション装置であっても良く、例えば、経路探索や推奨経路の誘導案内などの所定のナビゲーション機能を実現可能なアプリケーションがインストールされたスマートフォンなどの携帯端末装置であっても良い。交通情報配信サーバ200は、例えば、渋滞や交通規制に関する交通情報を車載装置100などに配信するサーバ装置であり、VICS(Vehicle Information and Communication System)センタや、カーメーカーおよび車載装置メーカーが独自に設置しているテレマティクスセンタなどに設置されている。また、車載装置100と交通情報配信サーバ200とは、例えば、インターネットなどの所定のネットワーク網300により、通信可能に接続されている。
このような通知情報生成システム1に係る車載装置100は、交通情報配信サーバ200から取得した交通情報1200に基づき、所定のイベント(例えば、渋滞や交通規制など)が発生している地点を特定する。また、車載装置100は、特定したイベント発生地点の中から、ユーザの関心度が高いリンクを特定し、かかるリンクやリンク付近の施設に対するユーザの記憶度に応じて、道路名称や施設名称を用いた通知情報を生成する。これにより、車載装置100は、ユーザの認識度が低いランドマークではなく、ユーザが良く知っている道路(リンク)や施設の名称を用いて、渋滞などのイベント発生地点をユーザに通知することができる。
なお、目的地が設定されていなくても、ユーザの走行履歴などから目的地や走行ルートを推定して案内を行うカーナビゲーション装置があるが、このような装置では、明示的にルートを引いていないため、例えば、「この先(渋滞があります)」といったイベント発生地点の特定および案内ができない。一方で、本実施形態に係る車載装置100では、ユーザに対して通知を行うイベント発生地点のリンクを、リンクに対するユーザの関心度の大きさに基づいて特定する。ユーザの関心度は、後述するように、リンクの予測通過率を用いて計算されるため、イベント発生地点のリンクは、必然的に、予測通過率が高いリンクが選択される。したがって、車載装置100は、走行ルートが引かれていない場合でも、リンクに対するユーザの関心度に基づいて、車両が進むルートを予測して案内を行うことができ、予測したルート上にあるイベント発生地点についてユーザに案内を行うことができる。
図2は、本実施形態に係る車載装置100の説明で用いる道路状況の一例を示した図である。具体的には、図2には、道路ネットワークを構成する各リンク、施設、ユーザが過去に走行した道路の履歴およびイベント(渋滞)発生箇所が示されている。車載装置100は、このような道路状況を表す各種情報を用いて、通知情報を生成する。なお、各種情報の詳細は後述する。
再び、図1に戻って説明する。車載装置100は、所定情報を格納する記憶部として、地図DB110(Data Base)と、交通情報DB120と、記憶地点DB130と、予測ルートDB140と、関心範囲DB150とを有している。
図3(a)および(b)は各々、地図DB110に格納された地図情報に含まれる道路情報1100および施設情報1120の一例を示した図である。地図情報は、道路ネットワークおよび施設に関する情報を含んでいる。図3(a)に示す道路情報1100は、ノードID1101と、座標1102とが対応付けられたレコードを有するテーブルと、リンクID1111と、始点ノード1112と、終点ノード1113と、種別1114と、名称1115とが対応付けられたレコードを有するテーブルとを含む。ここで、ノードID1101は、交差点などのノードを識別する情報である。また、座標1102は、地図上におけるノードの位置を特定する情報である。また、リンクID1111は、リンク(道路)を識別する情報である。また、始点ノード1112および終点ノード1113は、リンクの始点ノードおよび終点ノードを特定する情報である。種別1114は、リンクの種別を示した情報であり、例えば、国道、県道、市道、有料道路などがある。名称1115は、リンクの名称を示した情報であり、例えば、国道16号線や県道50号線などがある。
また、図3(b)に示す施設情報1120は、施設ID1121と、座標1122と、種別1123と、有名度1124と、名称1125とが対応付けられたレコードを有している。ここで、施設ID1121は、施設を識別する情報である。座標1122は、地図上における施設の位置を特定する情報である。種別1123は、施設の種別を示した情報であり、例えば、レストランや観光名所などがある。有名度1124は、施設の有名度を所定の基準に従って数値化した情報である。名称1125は、施設の名称を示す情報である。
図4は、交通情報DB120に格納された交通情報1200の一例を示した図である。交通情報1200は、交通情報配信サーバ200から配信される情報であって、例えば、渋滞や交通規制などのイベントおよびその発生地点に関する情報を含んでいる。具体的には、交通情報1200は、事象1201と、リンクID1202と、リンク始点からの距離1203と、長さ1204とが対応付けられたレコードを有している。ここで、事象1201は、発生しているイベントの事象を示した情報であり、例えば、渋滞や工事などがある。リンクID1202は、前述と同様、リンクを識別する情報である。リンク始点からの距離1203は、事象がリンクの始点位置からどの程度離れた距離で発生しているかを特定する情報である。長さ1204は、事象(渋滞や工事)の長さを示した情報である。
図5(a)および(b)は各々、記憶地点DB130に格納された記憶地点情報に含まれるリンク通過履歴情報1300および施設到着履歴情報1310の一例を示した図である。記憶地点情報は、ユーザが過去に走行した道路や訪問した施設の履歴とその記憶度に関する情報を含んでいる。図5(a)に示すリンク通過履歴情報1300は、リンクID1301と、通過回数(T)1302と、ルート設定回数(N)1303と、係数(D)1304と、記憶度(M)1305とが対応付けられたレコードを有する。ここで、リンクID1301は、リンクを識別する情報である。通過回数(T)1302は、過去にそのリンクを通過(走行)した回数を示す情報である。ルート設定回数(N)1303は、過去に設定された走行ルートにそのリンクが含まれていた回数を示した情報である。係数(D)1304は、リンクの種別に応じて異なる値が設定される。例えば、道路情報1100によって特定されるリンクの種別が国道である場合は1.0がされ、県道である場合は0.8が設定される。記憶度(M)1305は、ユーザがそのリンク(道路)を覚えているであろう記憶の度合いを示す情報であり、例えば、M=D×(T−N)/Tの演算式によって算出される。例えば、リンクID2001の場合、D=1.0、N=1、T=25となるため、M=1.0×(25−1)/25=0.96が求まる。なお、この演算式は、走行ルートを設定せずに走行している道路は、ユーザがその道路をよく知っており、さらに大きな道路ほどよく知っているという仮定で、そのリンクの記憶度を算出することを意図したものである。
また、図5(b)に示す施設到着履歴情報1310は、施設ID1311と、リンクID1312と、到着回数(T)1313と、目的地設定回数(N)1314と、係数(D)1315と、記憶度(M)1316とが対応付けられたレコードを有する。ここで、施設ID1311は、施設を識別する情報である。リンクID1312は、リンクを識別する情報である。到着回数(T)1313は、過去にその施設に到着した回数を示す情報である。なお、到着したか否かは、例えば、車両のイグニッションキーがON状態からOFF状態に変化した場合で判定され、到着回数は、かかる到着地点のリンクIDが対応付けられている施設の回数に加算される。目的地設定回数(N)1314は、過去にその施設が目的地として設定された回数を示す情報である。係数(D)1315は、施設の有名度に応じて異なる値が設定され、かかる有名度は、施設情報1120の有名度の値が用いられる。記憶度(M)1316は、ユーザがその施設を覚えているであろう記憶の度合いを示す情報であり、例えば、M=D×(T−N)/Tの演算式により算出される。例えば、施設ID3001の場合、D=1.0、N=2、T=3となるため、M=1.0×(3−2)/3=0.33が求まる。なお、この演算式は、目的地を設定せずに到着した施設は、ユーザがその施設を良く知っており、さらに、一般的に有名な施設ほど良く知っているという仮定で、その施設の記憶度を算出することを意図したものである。
図6は、予測ルートDB140に格納された予測ルート情報1400の構成の一例を示した図である。予測ルート情報1400は、ユーザの走行ルートや目的地を予測した情報を含んでいる。具体的には、予測ルート情報1400は、ユーザが今後進むと予測される予測走行ルートのリンクIDがツリー状に関連付けられた予測ルート木1401と、予測走行ルートを辿った先にある予測目的地を識別する予測目的地ID1402とから構成されている。なお、図6は、予測走行ルートとして、リンクID2000、2001、2002、2003の順序で進むルートと、リンクID2000、2004、2005の順序で進むルートがあることを示しているものである。また、前者の予測走行ルートの目的地は、施設ID3004で特定される施設であり、後者の目的地は、施設ID3005で特定される施設であることを示している。
図7は、関心範囲DB150に格納された関心範囲情報1500の一例を示した図である。関心範囲情報1500は、ユーザの関心があると思われる地域に関する情報を含んでいる。具体的には、関心範囲情報1500は、リンクID1501と、予測目的地ID1502と、予測通過率(P)1503と、係数(D)1504と、関心度(I)1505とが対応付けられたレコードを有している。ここで、リンクID1501は、リンクを識別する情報である。予測目的地ID1502は、リンクIDで特定されるリンクに対応する予測目的地を識別する情報である。予測通過率(P)1503は、リンクIDで特定されるリンクを通過する予測確率(可能性)を示す情報である。係数(D)1504は、リンクIDで特定されるリンクに対するユーザの関心に応じて異なる値が設定される。具体的には、係数(D)には、初期値を1とし、ユーザがスクロール操作によって画面表示部50の所定領域(例えば、画面の中心に表示された地図上の座標地点から半径100mの領域)にリンクを表示した回数を加算した値が設定される。関心度(I)1505は、リンクに対するユーザの関心度を示す情報であり、例えば、I=D×Pの演算式により算出される。例えば、リンクID2001の場合、D=1、P=0.500となるため、I=1×0.500=0.500が求まる。なお、この演算式は、そのリンクをユーザが通過する確率と、ユーザがそのリンク付近を表示画面のほぼ中央に表示して確認した回数を基に、そのリンクに対するユーザの関心度を算出することを意図したものである。
図1に戻って説明する。車載装置100は、所定の演算処理を実行する演算部として、アプリケーション実行部10と、位置情報取得部20と、操作部30と、音声発話部40と、記憶地点更新部70と、関心範囲更新部80と、通知情報生成部90とを有している。また、車載装置100は、外部装置(例えば、交通情報配信サーバ200)との間で通信を行う通信部として、交通情報受信部60を有している。また、車載装置100は、所定情報を表示する表示部として、画面表示部50を有している。
アプリケーション実行部10は、車載装置100が有する様々な機能を実行する機能部である。例えば、アプリケーション実行部10は、操作部30を介してユーザから受け付けた出発地および目的地を結んだ推奨経路を探索する。また、アプリケーション実行部10は、位置情報取得部20から取得した現在の車両位置に関する情報を用いて、車両が現在のリンクから次のリンクに移動したか否かを判定する。また、アプリケーション実行部10は、ユーザが地図情報のスクロール操作を行った場合、画面表示部の所定領域に表示されたリンクのリンクIDを特定する。また、アプリケーション実行部10は、通知情報生成部により生成された通知情報に含まれているリンクIDおよび施設IDをリンクおよび施設の名称に変換した発話文を生成する。
位置情報取得部20は、地図上の車両位置を特定するために用いる位置情報を取得する機能部である。具体的には、位置情報取得部20は、車載装置100に搭載されているGPS(Global Positioning System)や車速センサおよびジャイロセンサ(図示せず)といった各種センサから現在の車両位置を特定するために用いる位置情報を取得する。また、位置情報取得部20は、位置情報を用いて、地図上における現在の車両位置を算出する。
操作部30は、車載装置100が備える入力装置(例えば、キーボードやマウスおよびタッチパネルなど)を介して、ユーザから指示入力を受け付ける機能部である。
音声発話部40は、例えば、アプリケーション実行部10により生成された通知情報の発話文を音声情報に変換し、これを車載装置100が備えるスピーカ(図示せず)に出力する機能部である。
記憶地点更新部70は、記憶地点情報を更新する機能部である。具体的には、記憶地点更新部70は、所定のタイミング(例えば、15分に1回程度のイベントタイマー時)で取得した車両の走行履歴情報を用いて、記憶地点情報に含まれるリンク通過履歴情報1300および施設到着履歴情報1310を更新する処理を実行する。
関心範囲更新部80は、関心範囲情報1500を更新する機能部である。具体的には、関心範囲更新部80は、車両が現在のリンク(起点リンク)から次のリンク(新リンク)に移動した場合や、画面表示部50に表示された地図情報をユーザがスクロール操作した場合に、関心範囲情報1500を更新する処理を実行する。
通知情報生成部90は、通知情報を生成する機能部である。具体的には、通知情報生成部90は、交通情報配信サーバ200から取得した交通情報1200と、リンク通過履歴情報1300と、施設到着履歴情報1310と、関心範囲情報1500とを用いて、所定のタイミング(例えば、15分に1回程度のイベントタイマー時)で、渋滞などのイベント発生地点をユーザに通知するための通知情報を生成する。
交通情報受信部60は、交通情報配信サーバ200から渋滞などのイベント発生地点に関する情報を含む交通情報1200を受信する機能部である。
画面表示部50は、所定の画面情報を生成し、これを表示する機能部である。
以上、本実施形態に係る通知情報生成システム1の概略構成と車載装置100の機能ブロックの一例について説明した。
図8は、車載装置100のハードウェア構成の一例を示した図である。車載装置100は、CPU(Central Processing Unit)401と、RAM(Random Access Memory)402と、ROM(Read Only Memory)403とを有する演算処理装置404と、外部記憶装置405と、通信装置406と、入力装置407と、表示装置408と、各々の装置を相互に接続するバス409とを有している。
CPU401は、RAM402、ROM403および外部記憶装置405に格納されたプログラムに基づいて車両装置の動作を制御する。また、ROM403は、車載装置100の起動時にCPU401が実現するブートプログラムや、車載装置100のハードウェアに依存するプログラムなどを格納する。また、RAM402は、CPU401が実行するプログラムおよびCPU401が使用するデータなどを格納している。
外部記憶装置405は、例えば、ハードディスク装置やフラッシュメモリなどの不揮発性記憶装置である。
通信装置406は、インターネットなどの所定のネットワーク網300を介して、外部装置(例えば、交通情報配信サーバ200など)との間で通信を行う通信モジュールである。
入力装置407は、例えば、タッチパネル、キーボードおよびマウスなどユーザからの指示入力を受け付ける装置である。
表示装置408は、液晶ディスプレイなどの画像情報を表示する装置である。
なお、前述の演算部に含まれる各機能部は、CPU401が読み込んだ所定のプログラムを実行することにより構築される。また、前述の記憶部に含まれる各DBは、RAM402、ROM403および外部記憶装置405により実現される。また、前述の通信部は、通信装置406により実現される。また、前述の表示部は、表示装置408により実現される。
なお、各機能ブロックは、本実施形態において実現される車載装置100の機能を理解容易にするために、主な処理内容に応じて分類したものである。したがって、各機能の分類の仕方やその名称によって、本発明が制限されることはない。また、車載装置100の各構成は、処理内容に応じて、さらに多くの構成要素に分類することもできる。また、1つの構成要素がさらに多くの処理を実行するように分類することもできる。
また、各機能部の全部または一部は、コンピュータに実装されるハードウェア(ASICといった集積回路など)により構築されてもよい。また、各機能部の処理が1つのハードウェアで実行されてもよいし、複数のハードウェアで実行されてもよい。
[動作の説明]
次に、車載装置100で実行される所定の処理について説明する。図9は、本実施形態に係る車載装置100からユーザに対して通知される音声情報の一例を示した図である。図9に示す音声情報は、図2に示した道路状況における2つの渋滞発生地点に関する通知例を示したものである。通知例501は、2つの渋滞発生地点のうち、店舗B付近の渋滞が選択され、店舗Bの名称を用いて渋滞発生地点がユーザに通知された例である。また、通知例502は、2つの渋滞発生地点のうち、名所A付近の渋滞が選択され、名所Aではなく、ユーザが知っていると思われる店舗Cの名称を用いて渋滞発生地点が通知された例である。
なお、通知例501と通知例502のどちらが案内されるかは、車両の予測通過率が反映された関心度に応じて変化する。また、同じ名所A付近の渋滞が通知される場合でも、どの店舗の名称を用いて案内されるかは、ユーザの施設に対する記憶度に応じて変化する。このような動作を実現するための各種処理について、以下で説明する。
図10は、ユーザの過去の走行履歴を用いて記憶地点情報を更新する一連の処理を示したシーケンス図である。アプリケーション実行部10は、周期的(例えば、15分に1回)に発生するイベントタイマー時など所定のタイミングで、前回のイベントタイマー時から蓄積した車両の走行履歴を示す走行履歴情報1600を記憶部から取得し、これを記憶地点更新部70に出力する。また、記憶地点更新部70は、アプリケーション実行部10から走行履歴情報1600を取得すると、リンク通過履歴情報1300および施設到着履歴情報1310を更新する処理を実行する(S10、S20)。
図11(a)および(b)は、走行履歴情報1600に含まれている走行情報1610および到着施設情報1620の一例を示した図である。走行履歴情報1600は、リンクID1611とルート設定フラグ1612とが対応付けられたレコードを有する走行情報1610と、到着施設ID1621と目的地設定フラグ1622が対応付けられたレコードを有する到着施設情報1620とを含む。
ここで、図11(a)に示す走行情報1610のリンクID1611は、リンクを識別する情報である。ルート設定フラグ1612は、対応付けられたリンクID1611のリンクを走行する際に、かかるリンクが走行ルート(推奨経路)に設定されていたか否かを示す情報である。なお、走行ルートに設定されていた場合には「有り」が格納され、設定されていなかった場合には「無し」が格納される。また、図11(b)に示す到着施設情報1620の到着施設ID1621は、車両が到着した施設を識別する情報である。目的地設定フラグ1622は、対応付けられた施設が目的地として設定されていたか否かを示す情報である。なお、目的地に設定されていた場合には「有り」が格納され、設定されていなかった場合には「無し」が格納される。
なお、走行履歴情報1600に含まれる走行情報1610および到着施設情報1620は、アプリケーション実行部10により生成されたものである。具体的には、アプリケーション実行部10は、位置情報取得部20が算出した車両の現在位置が属するリンクのリンクIDを道路情報1100から特定し、これを走行情報1610のリンクID1611に格納する。また、アプリケーション実行部10は、かかるリンクが走行ルートに設定されているか否かを判定し、設定の有無に応じて、ルート設定フラグ1612に「有り」または「無し」を格納して走行情報1610を生成する。
また、アプリケーション実行部10は、車両のイグニッションキーがON状態からOFF状態に変化すると、目的地に到着したと判定し、かかるリンクのリンクIDが対応付けられた施設IDを施設情報1120から特定する。また、アプリケーション実行部10は、特定した施設IDを到着施設情報1620の到着施設ID1621に格納する。また、アプリケーション実行部10は、到着した施設が目的地として設定されていたか否かを判定し、設定の有無に応じて、目的地設定フラグ1622に「有り」または「無し」を格納する。
このような走行履歴情報1600を用いて、記憶地点更新部70は、記憶地点情報に含まれるリンク通過履歴情報1300および施設到着履歴情報1310の更新処理を実行する(S10、S20)。図12は、リンク通過履歴情報1300の更新処理の詳細な流れを示したフロー図である。図13は、施設到着履歴情報1310の更新処理の流れを示したフロー図である。リンク通過履歴情報1300の更新処理は、記憶地点更新部70がアプリケーション実行部10から走行履歴情報1600を取得すると開始する。また、記憶地点更新部70は、リンク通過履歴情報1300の更新処理が終了すると、施設到着履歴情報1310の更新処理を開始する。
図12に示すように、リンク通過履歴情報1300の更新処理が開始されると、記憶地点更新部70は、変数Iに1を設定し、変数Nに走行情報1610に含まれるリンクIDのリンク数を設定する(ステップS011)。
次に、記憶地点更新部70は、I≦Nであるか否かを判定する(ステップS012)。そして、I≦Nでない場合(ステップS012でNo)、記憶地点更新部70は、リンク通過履歴情報1300の更新処理を終了し、施設到着履歴情報1310の更新処理に移行する。一方で、I≦Nの場合(ステップS012でYes)、記憶地点更新部70は、走行情報1610に含まれているI番目のリンクIDに対応するレコードをリンク通過履歴情報1300から検索し(ステップS013)、検出したレコードの通過回数(T)1302に1を加算する(ステップS014)。
次に、記憶地点更新部70は、走行情報1610のI番目のリンクID1611に対応付けられているルート設定フラグ1612を参照し、ルート設定がなされていたか否かを判定する(ステップS015)。そして、ルート設定がなされていた場合(ステップS015でYes)、記憶地点更新部70は、リンク通過履歴情報1300のルート設定回数(N)1303に1を加算し(ステップS016)、処理をステップS017に移行する。一方で、ルート設定がなされていない場合(ステップS015でNo)、記憶地点更新部70は、処理をステップS017に移行する。
ステップS017では、記憶地点更新部70は、リンク通過履歴情報1300の記憶度(M)1305を更新する。具体的には、記憶地点更新部70は、前述の通り、M=D×(T−N)/Tの演算式を用いて、リンク通過履歴情報1300の記憶度(M)1305を更新する。
次に、記憶地点更新部70は、変数Iに1を加算して(ステップS018)、処理をステップS012に戻す。すなわち、記憶地点更新部70は、走行情報1610に含まれたリンクIDの全てについてリンク通過履歴情報1300の更新処理が終了するまで、本フローを繰り返し実行する。
リンク通過履歴情報1300の更新処理が終了すると、記憶地点更新部70は、施設到着履歴情報1310の更新処理を実行する。図13に示すように、施設到着履歴情報1310の更新処理が開始されると、記憶地点更新部70は、走行履歴情報1600に到着施設情報1620が含まれているか否かを判定する(ステップS021)。そして、かかる情報が含まれていない場合(ステップS021でNo)、記憶地点更新部70は、本フローを終了する。一方で、到着施設情報1620が含まれている場合(ステップS021でYes)、記憶地点更新部70は、到着施設情報1620に含まれている到着施設ID1621を施設到着履歴情報1310のレコードから検索する(ステップS022)。
次に、記憶地点更新部70は、検出した施設到着履歴情報1310のレコードの到着回数(T)1313に1を加算する(ステップS023)。
次に、記憶地点更新部70は、到着施設情報1620の目的地設定フラグ1622を参照し、到着施設ID1621により特定される施設が目的地として設定されていたか否かを判定する(ステップS024)。そして、目的地として設定されていなかった場合(ステップS024でNo)、記憶地点更新部70は、処理をステップS026に移行する。一方で、目的地として設定されていた場合(ステップS024でYes)、記憶地点更新部70は、ステップS022で検出した施設到着履歴情報1310のレコードの目的地設定回数(N)1314に1を加算し(ステップS025)、処理をステップS026に移行する。
ステップS026では、記憶地点更新部70は、施設到着履歴情報1310の記憶度(M)1316を更新する。具体的には、記憶地点更新部70は、前述の通り、M=D×(T−N)/Tの演算式を用いて算出した記憶度により、施設到着履歴情報1310の記憶度(M)1316を更新し、本フローの処理を終了する。
以上の処理により、リンク通過履歴情報1300および施設到着履歴情報1310は、所定のタイミングで常に更新され、ユーザのリンクおよび施設に対する最新の記憶度が反映された状態となる。
次に、関心範囲情報1500の更新処理について説明する。図14は、予測ルート情報1400を用いて関心範囲情報1500を更新する一連の処理を示したシーケンス図である。アプリケーション実行部10は、位置情報取得部20が算出した現在の車両位置を示す情報を所定のタイミング(例えば、1秒ごと)で取得すると、リンク通過判定処理を行う(S25)。具体的には、アプリケーション実行部10は、現在の車両位置が属するリンクを道路情報1100から特定し、特定したリンクと、前回取得した車両位置を示す情報から特定したリンクとが同一であるか否かを判定する。そして、両リンクが異なる場合、車両位置が現在のリンク(起点リンク)から次のリンク(新リンク)に移動したと判定する。この場合、アプリケーション実行部10は、関心範囲更新部80に対して関心範囲情報1500更新処理の実行を指示する。関心範囲更新部80は、アプリケーション実行部10から取得した新リンクのリンクIDと、予測ルート情報1400とを用いて、関心範囲情報1500更新処理を開始する(S30)。
図15は、リンクの移動に基づく関心範囲情報1500更新処理の詳細な流れを示したフロー図である。なお、かかる処理は、後述するステップS037の処理において、再度同じ処理が呼び出される再帰関数である。また、関心範囲更新部80は、新リンクのリンクIDと、P=1.0を入力パラメータとしてアプリケーション実行部10から取得する。
関心範囲情報1500更新処理が開始されると、関心範囲更新部80は、新リンクのリンクIDを有するレコードを関心範囲情報1500から検索し、検出されたレコードの予測通過率(P)1503を入力パラメータPの値すなわち1.0に更新する(ステップS031)。これにより、図2の例では、リンクID2000のリンクの予測通過率(P)が1.0に更新される。
次に、関心範囲更新部80は、関心範囲情報1500の関心度(I)1505を更新する(ステップS032)。具体的には、関心範囲更新部80は、I=D×Pの演算式により、検出したレコードの関心度(I)1505を更新する。これにより、図7に示すリンクID2000のリンクの関心度(I)1505は、I=1.0×1.0=1.0に更新される。
次に、関心範囲更新部80は、予測ルート情報1400を参照し、予測ルート木1401において新リンクすなわちリンク2000(起点リンク)の次のリンクとして接続されているリンクを配列変数M[i]に格納し、格納したリンク数(リンク2000の次のリンク数)をNに設定する(ステップS033)。図6に示した予測ルート木1401では、M[i]={2001、2004}となり、N=2となる。
次に、M[i]に格納した各リンク(リンク2001およびリンク2004)の予測通過率Q[i]を計算する(ステップS034)。なお、Q[i]は、Pを入力パラメータとして計算する確率である。例えば、自車が起点リンクに存在する確率P=1.0に、M[i]が示す各リンク(新リンク)への移動確率を乗じたものとする。このとき、各リンクへの移動確率は、起点リンクとM[i]が示す各リンクとを接続する交差点の分岐数に基づき算出される。ただし、各リンクへの移動確率は、かかる分岐数や、リンクの種別(国道や県道)などを含めて計算しても良い。
ここで、図16を用いて、図6の予測ルート木1401に含まれる各リンクの予測通過率(P)の計算について説明する。図16は、予測ルート木1401に含まれる各リンクの予測通過率(P)の計算方法を示した図である。図示するように、起点リンクをリンク2000とした場合、リンク2000から次のリンク(新リンク)への分岐数は2であるため、リンク2000からリンク2001およびリンク2004への移動確率は各々0.5となる。これに、入力パラメータP=1.0を乗じた値すなわち0.5×1.0=0.5がリンク2001およびリンク2004の予測通過率(P)となる。また、リンク2002やリンク2005の予測通過率(P)についても同様に計算する。
図15に戻って説明する。関心範囲更新部80は、変数iに0を設定し(ステップS035)、変数iがN未満であるか否かを判定する(ステップS036)。変数iがN未満ではない場合(ステップS036でNo)、関心範囲更新部80は、本フローを終了する。一方で、変数iがN未満である場合(ステップS036でYes)、関心範囲更新部80は、M[i]およびQ[i]を入力パラメータとして本フローが示す関数を再帰呼び出しする(ステップS037)。また、関心範囲更新部80は、変数iに1を加算し(ステップS038)、処理をステップS036に戻す。
このような本フローの処理を再帰的に実行することにより、予測ルート木1401に含まれる各リンクに対して関心範囲情報1500の予測通過率(P)が更新される。例えば、図16に示すように、リンク2002の予測通過率(P)は、リンク2001の予測通過率=0.5に、リンク2001からリンク2002への移動確率=1.0を乗じた値=0.5となる。また、リンク2005の予測通過率(P)は、リンク2004の予測通過率=0.5に、リンク2004からリンク2005への移動確率=1.0を乗じた値=0.5となる。
次に、地図のスクロール操作が行われた場合に関心範囲情報1500を更新する処理について説明する。図17は、画面表示部50に表示した地図情報に対してユーザがスクロール操作を行った場合に関心範囲情報1500を更新する一連の処理を示したシーケンス図である。ユーザのスクロール操作によって地図情報の表示位置が変更されると、操作部30は、かかる変更をアプリケーション実行部10に通知する。図18は、地図情報に対する一連のスクロール操作を例示した図である。図18(a)は、操作前の表示画面1650を示し、図18(b)は、スクロール操作により、店舗Aの近傍が画面の中心に移動した表示画面1660を示し、図18(c)は、車両の現在位置の表示に戻った表示画面1670を示したものである。このような地図情報のスクロール操作は、ユーザが店舗Aの近傍に関心があることを意味している。
操作部30からの通知を取得したアプリケーション実行部10は、表示画面の所定領域(例えば、画面の中心に表示された地図上の座標地点から半径100mの領域)に表示された近傍リンクのリンクIDを特定し、これらを関心範囲更新部80に受け渡す。関心範囲更新部80は、かかるリンクIDを取得すると、関心範囲情報1500更新処理を開始する(S40)。
図19は、地図のスクロール操作に基づく関心範囲情報更新処理の詳細な流れを示したフロー図である。かかる処理が開始されると、関心範囲更新部80は、アプリケーション実行部10から取得した近傍リンクのリンクIDを有する関心範囲情報1500のレコードを検索し(ステップS041)、かかるレコードの有無を判定する(ステップS042)。そして、近傍リンクのリンクIDを有するレコードがない場合(ステップS042でNo)、関心範囲更新部80は、本フローの処理を終了する。一方で、かかるレコードがある場合(ステップS042でYes)、関心範囲更新部80は、当該レコードの係数(D)1504に1を加算する(ステップS043)。
次に、関心範囲更新部80は、関心範囲情報1500の関心度(I)1505を更新する(ステップS044)。具体的には、関心範囲更新部80は、I=D×Pの演算式を用いて、検出したレコードの関心度(I)1505を更新する。また、関心範囲更新部80は、関心度を更新すると、本フローを終了する。
このように、関心範囲情報1500は、車両位置が次のリンクに移動した場合や、スクロール操作によって地図情報の表示位置が変更されたタイミングで常に更新され、ユーザのリンクに対する最新の関心度が反映された状態となる。
次に、これらの記憶地点情報に含まれるリンク通過履歴情報1300および施設到着履歴情報1310と、関心範囲情報1500とを用いた通知情報の生成処理について説明する。図20は、通知情報を生成する一連の処理を示したシーケンス図である。通知情報生成部90は、周期的(例えば、15分に1回)に発生するイベントタイマー時など所定のタイミングで通知情報を生成する(S50)。
図21は、通知情報生成処理の詳細な流れを示したフロー図である。かかる処理が開始されると、通知情報生成部90は、交通情報配信サーバ200から取得した交通情報1200を用いて、渋滞が発生しているリンクのリンクID一覧を取得する(ステップS051)。例えば、図2に示した交通情報の例では、通知情報生成部90は、リンクID2003およびリンクID2005を取得する。
次に、通知情報生成部90は、取得したリンクIDの一覧から、関心範囲情報1500の関心度(I)1505が所定の閾値C以上であって、かつ、その中で最も関心度が高いリンクIDを選択する(ステップS052)。例えば、所定の閾値Cが3.0に設定されている場合、図7に示した関心範囲情報1500の例では、リンクID2005が選択される。なお、閾値Cは、予め固定の値が設定されていても良く、図22(a)に示すユーザインターフェースによって所望の値が設定されても良い。図22(a)は、関心度の閾値Cを設定するユーザインターフェース1700の一例を示した図である。
なお、閾値Cを設定せず、通知情報生成部90が取得したリンクIDの一覧から関心範囲情報1500の関心度(I)1505が最も高いリンクIDを選択するようにしても良い。
次に、通知情報生成部90は、リンク通過履歴情報1300を参照し、選択したリンクの記憶度(M)1305を取得する(ステップS053)。例えば、図5に示すリンク通過履歴情報1300では、リンクID2005の記憶度(M)=0が取得される。
次に、通知情報生成部90は、施設到着履歴情報1310を参照し、ステップS052で選択されたリンクIDが対応付けられた施設ID1311のうち、記憶度(M)1316が最も高い施設ID1311を選択する(ステップS054)。例えば、図5に示す施設到着履歴情報1310では、リンクID2005が対応付けられた施設の施設IDは3002のみであるため、かかる施設IDが選択され、その記憶度(M)1316は、記憶度=0.72である。
次に、通知情報生成部90は、ステップS053で取得したリンクの記憶度(M)1305およびステップS054で選択した施設の記憶度(M)1316に応じて、通知情報を選択する(ステップS055)。図22(b)は、通知情報の生成ルール1800の一例を示した図である。また、図22(c)は、かかるルールに含まれる閾値Aおよび閾値Bをユーザが設定するためのユーザインターフェース1900の一例を示した図である。図22(c)の例では、所定の閾値Aに0.70が設定され、所定の閾値Bに0.50が設定されていることを示している。なお、閾値Aおよび閾値Bは、予め固定値が設定されていても良い。
図22(b)に示す通知情報生成ルール1800は、リンクの記憶度および施設の記憶度に関する条件1801と、通知情報1802とが対応付けられたレコードを有している。通知情報生成ルール1800のレコード1803は、リンクの記憶度が所定の閾値Aよりも大きく、かつ、施設の記憶度が所定の閾値Bよりも大きい場合、通知情報としてリンクIDおよび施設IDが用いられることを示している。また、レコード1804は、リンクの記憶度が所定の閾値Aよりも大きく、施設の記憶度が所定の閾値B以下である場合、通知情報としてリンクIDを用いることを示している。また、レコード1805は、リンクの記憶度が所定の閾値A以下であり、かつ、施設の記憶度が所定の閾値Bよりも大きい場合、通知情報として施設IDを用いることを示している。また、レコード1806は、リンクの記憶度が所定の閾値A以下であり、かつ、施設の記憶度が所定の閾値B以下である場合、通知情報を生成しないことを示している。
図21に戻って説明する。ステップS055で通知情報が選択されると、通知情報生成部90は、発話文テンプレートを選択する(ステップS056)。図23は、発話文テンプレート情報2000の一例を示した図である。発話文テンプレート情報2000は、通知情報内のIDを名称に変換して発話文を生成する際に用いられる。発話文テンプレート情報2000は、通知情報2001と、発話文テンプレート2002とが対応付けられたレコードを有している。ここで、レコード2003は、通知情報にリンクIDと施設IDとが含まれている場合、「(リンク名称)上の(施設名称)の付近で渋滞しています」という発話文を生成することを示している。また、レコード2004は、通知情報にリンクIDのみが含まれている場合、「(リンク名称)上で渋滞しています」という発話文を生成することを示している。また、レコード2005は、通知情報に施設IDのみが含まれている場合、「(施設名称)の付近で渋滞しています」という発話文を生成することを示している。通知情報生成部90は、ステップS055で選択した通知情報に対応する発話文テンプレートを選択し、本フローの処理を終了する。
図20に戻って説明する。リンクID、施設IDおよび発話文テンプレートを含む通知情報を通知情報生成部90から取得すると、アプリケーション実行部10は、通知情報に含まれているリンクIDおよび施設IDに対応する道路および施設の名称を道路情報1100および施設情報1120から取得し、ユーザに案内する発話文を生成する(S55)。本例では、ステップS055で施設IDのみを含む通知情報が選択されているため、発話文テンプレート情報2000のレコード2005による発話文「店舗Bの付近で渋滞しています」が生成される。アプリケーション実行部10は、生成した発話文を音声発話部40に出力する。
音声発話部40は、取得した発話文を音声情報に変換し、車載装置100に搭載されているスピーカ(図示せず)に出力することで、ユーザに対する音声案内を実行する(S56)。なお、発話文などの文章を音声情報に変換して出力する処理は、例えば、TTS(Text−to−Speech)と総称される技術により実現されればよい。
以上のような車載装置によれば、ユーザがより確実に認識できるイベント発生地点を含む通知情報を生成することができる。特に、車載装置は、ユーザに対して通知を行うイベント発生地点のリンクを、リンクに対するユーザの関心度の大きさに基づいて特定する。ユーザの関心度は、リンクの予測通過率を用いて計算されるため、イベント発生地点のリンクは、必然的に、予測通過率が高いリンクが選択される。したがって、車載装置は、走行ルートが引かれていない場合でも、リンクに対するユーザの関心度に基づいて、車両が進むルートを予測して案内を行うことができる。さらに、車載装置は、予測したルート上にあるイベント発生地点についてユーザがよく知っている名称を用いてユーザに案内を行うことができる。
<第2実施形態>
次に、本発明の第2実施形態について説明する。前述の第1実施形態では、交通情報1200を受信した車載装置100が通知情報を生成したが、本実施形態では、通知情報生成装置が通知情報を生成し、これを車載装置100に送信する。車載装置100は、通知情報生成装置から取得した通知情報を用いて、所定のイベント発生地点に関する音声案内を行う。なお、車載装置100は、前述と同様に、車両に搭載されているナビゲーション装置であっても良く、例えば、経路探索や誘導案内などの所定のナビゲーション機能を実現可能なアプリケーションがインストールされたスマートフォンなどの携帯端末装置であっても良い。
図24は、本実施形態に係る通知情報生成システム2の概略構成と、通知情報生成装置700および車載装置600の機能構成を示す機能ブロックの一例を示した図である。本システム2では、交通情報配信サーバ200と、通知情報生成装置700と、車載装置600とがインターネットなどの所定のネットワーク網300により通信可能に接続されている。なお、以下の説明では、前述の第1実施形態と異なる構成および処理について説明し、同様の構成については同一の符号を附して説明を省略する。
通知情報生成装置700は、図1に示す車載装置100が有していたアプリケーション実行部10と、地図DB110と、位置情報取得部20と、操作部30と、音声発話部40と、画面表示部50とを除いた構成を有し、これらの構成は、車載装置600が備えているものとする。なお、通知情報生成装置700および車載装置600は、各々が相互に通信するための通信部710および通信部610を備えている。
図25は、ユーザの過去の走行履歴を用いて記憶地点情報を更新する一連の処理を示したシーケンス図である。車載装置600のアプリケーション実行部10は、周期的(例えば、15分に1回)に発生するイベントタイマー時など所定のタイミングで、前回のイベントタイマー時から蓄積した車両の走行履歴を示す走行履歴情報1600を記憶部から取得し、通信部610を介して、通知情報生成装置700に送信する。通知情報生成装置700は、通信部710を介して取得した走行履歴情報1600を用いて、図12に示すリンク通過履歴情報更新処理および図13に示す施設到着履歴更新処理を実行する(S10、S20)。
図26は、予測ルート情報1400を用いて関心範囲情報1500を更新する一連の処理を示したシーケンス図である。車載装置600のアプリケーション実行部10は、位置情報取得部20が算出した現在の車両位置を用いてリンク通過判定を行い(S25)、新リンクに移動したと判定した場合、通信部610を介して、新リンクのリンクIDを通知情報生成装置700に送信する。また、通信部710を介して新リンクのリンクIDを取得した通知情報生成装置700は、図15に示す関心範囲情報更新処理を実行する(S30)。
図27は、画面表示部50に表示した地図情報に対してユーザがスクロール操作を行った場合に関心範囲情報1500を更新する一連の処理を示したシーケンス図である。車載装置600の操作部30は、ユーザのスクロール操作によって地図情報の表示位置が変更されると、かかる変更をアプリケーション実行部10に通知する。アプリケーション実行部10は、表示画面の所定領域(例えば、画面の中心に表示された地図上の座標地点から半径100mの領域)に表示された近傍リンクのリンクIDを取得し(S35)、通信部610を介して、通知情報生成装置700に送信する。通知情報生成装置700は、通信部710を介して取得した近傍リンクIDを用いて、関心範囲情報1500を更新する(S40)。
図28は、通知情報生成装置700が、通知情報を生成する一連の処理を示したシーケンス図である。通知情報生成装置700の通知情報生成部90は、周期的(例えば、15分に1回)に発生するイベントタイマー時など所定のタイミングで通知情報生成処理を実行する(S50)。また、通知情報生成部90は、通信部710を介して、リンクID、施設IDおよび発話文テンプレートを含む通知情報を車載装置600に送信する。車載装置600のアプリケーション実行部10は、通信部610を介して取得した通知情報に含まれているリンクIDおよび施設IDを道路名称および施設名称に変換した発話文を生成し(S55)、音声発話部40に出力する。音声発話部40は、取得した発話文を音声情報に変換し、車載装置600に搭載されているスピーカ(図示せず)に出力することにより、ユーザに対する音声案内を実行する(S56)。
このように、本実施形態に係る通知情報生成システムによれば、ユーザがより確実に認識できるイベント発生地点を含む通知情報を生成することができる。特に、通知情報は通知情報生成装置によって生成されるため、例えば、VICSなどの交通情報を直接受信する機能を持たないスマートフォンなどの携帯端末装置であっても、ユーザは、イベント発生地点に関する情報の通知を受けることができる。
<第3実施形態>
次に、本発明の第3実施形態について説明する。前述の第1実施形態および第2実施形態では、イベント発生地点を示す情報として道路名称や施設名称を用いたが、本実施形態に係る車載装置800では、ユーザが登録した任意のテキスト名称やカメラ撮影画像を用いた案内を可能にする。図29は、本実施形態に係る車載装置800を含む通知情報生成システム3の概略構成と、車載装置800の機能構成を示す機能ブロックの一例を示した図である。図示するように、車載装置800の基本的構成は前述の第1実施形態と同様であるが、記憶部として、案内情報DB810を有し、演算部として案内情報選択部820を有する点で第1実施形態と異なる。なお、車載装置800は、前述と同様に、車両に搭載されているナビゲーション装置であっても良く、例えば、経路探索や誘導案内などの所定のナビゲーション機能を実現可能なアプリケーションがインストールされたスマートフォンなどの携帯端末装置であっても良い。また、以下の説明では、前述の第1実施形態と異なる構成および処理について説明し、同様の構成については同一の符号を附して説明を省略する。
案内情報DB810は、案内情報2100を格納する機能部である。図30は、案内情報2100の一例を示した図である。案内情報2100は、リンクID2101と、リンク始点からの距離(単位=m)2102と、情報種別2103と、案内内容2104とが対応付けられたレコードを有している。リンクID2101は、リンクを識別する情報である。リンク始点からの距離2102は、イベントがリンクの始点位置からどの程度離れた距離で発生しているかを特定する情報である。情報種別2103は、ユーザに案内する情報の種別を示した情報であり、例えば、テキストや画像などがある。案内内容2104は、ユーザに案内する情報の内容を示した情報であり、例えば、“いつもの場所”といったテキスト内容や撮影画像などがある。なお、案内情報2100のレコード2105は、リンクID2003の始点からの距離が5mの地点で渋滞が発生している場合に、ユーザへ案内する発話文のテキスト(またはテンプレート)が「いつもの場所」であることを示している。なお、このテキストは、その地点を示す特別な名称を予め設定しておいても良く、ユーザが適宜設定するようにしても良い。
また、レコード2106は、リンクID2005の始点から3mの地点で渋滞が発生している場合に、ユーザへその地点を撮影した画像を用いて案内することを示している。なお、かかる画像は、例えば、その地点を撮影した画像を設定しても良く、一般的に交通情報1200の案内に用いられる路線図を設定しても良い。
図31は、渋滞などのイベント発生地点をユーザに通知する一連の処理を示したシーケンス図である。前述の第1実施形態と同様に、通知情報生成部90は、周期的(例えば、15分に1回)に発生するイベントタイマー時など所定のタイミングで通知情報を生成する(S50)。なお、通知情報の生成処理は、前述と同様である。
また、通知情報生成部90は、交通情報DB120に格納されている交通情報1200から、渋滞が発生しているリンクIDおよびリンク始点からの距離を取得し、これを案内情報選択部820に出力する。
案内情報選択部820は、取得したリンクIDおよびリンク始点からの距離をキーとして案内情報2100を選択する(S60)。図32は、案内情報選択処理の流れを示したフロー図である。案内情報選択処理が開始されると、案内情報選択部820は、リンクIDに対応するレコードを案内情報2100から検索し(ステップS061)、検出したレコードを選択する。また、案内情報選択部820は、選択したレコードに、同じ情報種別を持つレコードが複数存在するか否かを判定し(ステップS062)、存在しない場合(ステップS062でNo)、本フローの処理を終了する。
一方で、複数存在する場合(ステップS062でYes)、案内情報選択部820は、情報種別ごとにリンク始点からの距離が最も近いレコードを選択し(ステップS063)、本フローの処理を終了する。
図31に戻って説明する。案内情報選択部820は、選択したレコードを含む案内情報2100を、通知情報と共にアプリケーション実行部10に出力する。
アプリケーション実行部10は、取得した情報に案内情報2100が含まれている場合、通知情報を用いた処理は行わずに、案内情報2100を用いた通知を行う。例えば、案内情報2100のレコードの情報種別が画像であって、案内内容が“撮影画像”である場合、アプリケーション実行部10は、画面表示部50を介して、かかる地点の画像を表示する(S61)。
また、案内情報2100のレコードの情報種別がテキストであって、案内内容が“いつもの場所”である場合、アプリケーション実行部10は、“いつもの場所”という音声情報の生成指示を音声発話部40に出力する。音声発話部40では、指示に応じて“いつもの場所”という音声情報を生成し、音声案内を実行する(S62)。
なお、案内情報選択部820から取得した情報に案内情報2100が含まれていない場合、すなわち、通知情報のみを取得した場合、前述の実施形態と同様、アプリケーション実行部10は発話文を生成し(S55)、音声発話部40は発話文を用いて音声案内を実行する(S56)。
なお、本実施形態に係る車載装置800で実行された処理を、前述の第2実施形態に係る通知情報生成装置700が実行しても良い。すなわち、通知情報生成装置700は、テキスト名称および画像を用いた音声情報を生成し、これを通知情報として車載装置600に送信する。
このような車載装置によれば、ユーザがより確実に認識できるイベント発生地点を含む通知情報を生成することができる。特に、本実施形態に係る車載装置では、予め登録した任意のテキスト名称やカメラ撮影画像を用いた案内が可能となる。そのため、いつも同じ場所で渋滞が発生している場合、予めその場所を認識できるテキスト名称や画像の登録をユーザから受け付けておくことにより、車載装置は、ユーザが確実に知っている名称や画像を用いてイベント発生地点の案内を実行することができる。
なお、車載装置および通知情報生成装置の機能ブロックは、本実施形態において実現される車載装置および通知情報生成装置の機能を理解容易にするために、主な処理内容に応じて分類したものであり、各機能の分類の仕方やその名称によって、本発明が制限されることはない。また、車載装置および通知情報生成装置の各構成は、処理内容に応じて、さらに多くの構成要素に分類することもできる。また、一つの構成要素がさらに多くの処理を実行するように分類することもできる。
また、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加、削除、置換をすることが可能である。
また、上記説明では、制御線や情報線は、説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えて良い。