[ナビゲーション装置の概略構成]
先ず、実施例1に係るナビゲーション装置の概略構成について図1に基づいて説明する。図1は実施例1に係るナビゲーション装置1を示したブロック図である。
図1に示すように、実施例1に係るナビゲーション装置1は、自車の現在位置(以下、「自車位置」という。)等を検出する現在地検出処理部11と、各種のデータが記録されたデータ記録部12と、入力された情報に基づいて、各種の演算処理を行うナビゲーション制御部13と、操作者からの操作を受け付ける操作部14と、操作者に対して地図等の情報を表示する液晶ディスプレイ15と、経路案内等に関する音声ガイダンスを出力するスピーカ16と、不図示の道路交通情報センタや地図情報配信センタ等との間で携帯電話網等を介して通信を行う通信装置17と、液晶ディスプレイ15の表面に装着されたタッチパネル18とから構成されている。また、ナビゲーション制御部13には自車の走行速度を検出する車速センサ21が接続されている。
以下に、ナビゲーション装置1を構成する各構成要素について説明すると、現在地検出処理部11は、GPS31、方位センサ32、距離センサ33等からなり、自車位置、自車の向きを表す自車方位、走行距離等を検出することが可能となっている。
また、データ記録部12は、外部記憶装置及び記録媒体としてのハードディスク(図示せず)と、ハードディスクに記憶された地図情報データベース(地図情報DB)25、施設名データベース(施設名DB)27及び所定のプログラム等を読み出すとともにハードディスクに所定のデータを書き込む為のドライバ等を備えている。
また、地図情報DB25には、ナビゲーション装置1の走行案内や経路探索に使用されるナビ地図情報26が格納されている。ここで、ナビ地図情報26は、経路案内及び地図表示に必要な各種情報から構成されており、例えば、各新設道路を特定するための新設道路情報、地図を表示するための地図表示データ、各交差点に関する交差点データ、ノード点に関するノードデータ、施設の一種である道路(リンク)に関するリンクデータ、経路を探索するための探索データ、施設の一種である店舗等のPOI(Point of Interest)に関する店舗データ、地点を検索するための検索データ等から構成されている。
尚、店舗データには、各地域のホテル、病院、ガソリンスタンド、駐車場、駅、空港、フェリー乗り場等のPOIに関する名称や住所、電話番号等に加えて、後述の検索結果表示画面71(図6参照)にリスト表示する表示優先度のデータをPOIを特定するIDとともに記憶するようにしてもよい。例えば、表示優先度は、「88」や「256」等の数値で表され、数値の大きいものほど優先度が高くなる。また、地図情報DB25の内容は、不図示の地図情報配信センタから通信装置17を介して配信された更新情報をダウンロードすることによって更新される。
また、施設名DB27には、後述の施設名及び該施設名の読みを所定文字数(実施例1では、2文字である。)の平仮名が属する50音の行の所定行数の組み合わせ、または、所定行数よりも1行少ない行数が前方一致する50音の行の組み合わせに関連付けて分割単位毎に記憶する施設名データテーブル51(図2参照)が格納されている。
また、図1に示すように、ナビゲーション装置1を構成するナビゲーション制御部13は、ナビゲーション装置1の全体の制御を行う演算装置及び制御装置としてのCPU41、並びにCPU41が各種の演算処理を行うに当たってワーキングメモリとして使用されるとともに、経路が探索されたときの経路データ等が記憶されるRAM42、制御用のプログラム等が記憶されたROM43、ROM43から読み出したプログラムを記憶するフラッシュメモリ44等の内部記憶装置や、時間を計測するタイマ45等を備えている。
また、ROM43には、後述の50音キー62から入力された検索語に基づいて地点情報を検索してリスト表示する地点情報表示処理のプログラム(図3参照)等が記憶されている。
更に、前記ナビゲーション制御部13には、操作部14、液晶ディスプレイ15、スピーカ16、通信装置17、タッチパネル18の各周辺装置(アクチュエータ)が電気的に接続されている。
この操作部14は、走行開始時の現在地を修正し、案内開始地点としての出発地及び案内終了地点としての目的地を入力する際や施設に関する情報の検索を行う場合等に操作され、各種のキーや複数の操作スイッチから構成される。そして、ナビゲーション制御部13は、各スイッチの押下等により出力されるスイッチ信号に基づき、対応する各種の動作を実行すべく制御を行う。
また、液晶ディスプレイ15には、現在走行中の地図情報、後述の検索語入力画面61(図5参照)、検索した施設の名称をリスト表示する検索結果表示画面71(図6参照)、操作案内、操作メニュー、キーの案内、現在地から目的地までの推奨経路、推奨経路に沿った案内情報、交通情報、ニュース、天気予報、時刻、メール、テレビ番組等が表示される。
また、スピーカ16は、ナビゲーション制御部13からの指示に基づいて、推奨経路に沿った走行を案内する音声ガイダンス等を出力する。ここで、案内される音声ガイダンスとしては、例えば、「200m先、○○交差点を右方向です。」等がある。
また、通信装置17は、地図情報配信センタと通信を行う携帯電話網等による通信手段であり、地図情報配信センタとの間で最もバージョンの新しい更新地図情報等の送受信を行う。また、通信装置17は地図情報配信センタに加えて、道路交通情報センタ等から送信された渋滞情報やサービスエリアの混雑状況等の各情報から成る交通情報を受信する。
また、タッチパネル18は、液晶ディスプレイ15の表面部に装着された透明なパネル状のタッチスイッチであり、液晶ディスプレイ15の画面に表示されたボタンや地図上を押下することによって各種指示コマンドを入力することが可能に構成されている。尚、タッチパネル18は、液晶ディスプレイ15の画面を直接押下する光センサ液晶方式等で構成してもよい。
ここで、施設名DB27に格納される施設名データテーブル51について図2に基づいて説明する。
図2に示すように、施設名データテーブル51は、「分割単位」と、「読み」と、「施設名」とから構成されている。この「分割単位」は、「独立分割単位」と「統合分割単位」とから構成されている。
「独立分割単位」には、施設名の読みを構成するキーワードと前方一致する2文字の平仮名が、その属する1組の50音の2行の組み合わせに対応されて記憶されている。例えば、「独立分割単位」の1組の50音の2行の組み合わせ「さ行あ行」には、施設名の読みのキーワードと前方一致する2文字の各平仮名「さあ」、「さい」、「さう」、・・・・「そえ」、「そお」の25個が記憶されている。ここで、キーワードは、意味を成す単位で構成された読みの文字列である。また、「独立分割単位」に属する「読み」と「施設名」から構成される分割単位データのデータサイズは、所定データサイズ以上である(例えば、約1メガバイト以上である。)。
また、「統合分割単位」には、分割単位データが所定データサイズ未満で、且つ、50音の1行目が共通する複数の「独立分割単位」に属する「読み」と「施設名」が統合されて属している。そして、「統合分割単位」には、当該「統合分割単位」に統合された複数の「独立分割単位」に記憶されていた複数組の50音の2行の組み合わせに対応する2文字の平仮名、つまり、統合された施設名の読みを構成するキーワードと前方一致する2文字の平仮名が記憶されている。
例えば、「統合分割単位」の「さ行その他」には、「独立分割単位」の「さ行あ行」以外、つまり、「さ行か行」、「さ行さ行」、・・・「さ行わ行」の複数組の50音の2行の組み合わせに対応する2文字の平仮名「さか」、「さき」、「さく」、・・・・「そん」が記憶されている。
また、「統合分割単位」に属する「読み」と「施設名」から構成される分割単位データのデータサイズは、所定分割データサイズを超えないように(例えば、約2メガバイト以下になるようにする。)、複数の「独立分割単位」が統合されている。
尚、「独立分割単位」には、例えば「あ行あ行あ行」、「あ行あ行か行」、「あ行あ行さ行」・・・等、50音の3行以上の組み合わせをそれぞれ1組ずつ記憶するようにしてもよい。また、「独立分割単位」の一部区間だけ、例えば、・・・「あ行わ行」、「か行あ行あ行」、「か行あ行か行」、・・・「か行あ行わ行」、「か行か行」、「か行さ行」・・等、50音の3行以上の組み合わせをそれぞれ1組ずつ記憶するようにしてもよい。
そして、「統合分割単位」には、当該「統合分割単位」に統合された複数の「独立分割単位」に記憶される複数の50音の3行以上の組み合わせに対応する3文字以上の平仮名が記憶されるようにしてもよい。また、「統合分割単位」に属する「読み」と「施設名」から構成される分割単位データのデータサイズが、所定分割データサイズを超える場合には、当該「統合分割単位」に統合された複数の「独立分割単位」を2つまたは3つに分割して、複数の「統合分割単位」を構成するようにしてもよい。
また、「読み」には、「独立分割単位」と「統合分割単位」から構成された各「分割単位」に属する2文字の各平仮名と前方一致するキーワードを含む施設名の読みが記憶されている。例えば、施設名の読みが「とうきょう/ねずみー/しー」は、各キーワードの前方2文字の「とう」、「ねず」、「しー」に対応する施設名データテーブル51の「独立分割単位」の「た行あ行」、「さ行あ行」に対応する「読み」と、「統合分割単位」の「な行その他」に対応する「読み」にそれぞれ記憶される。尚、長音「ー」の読みは、前文字の母音とする。
また、「施設名」には、検索対象となる目的地を表す施設名が、「読み」に記憶された施設名の読みに対応して記憶されている。例えば、施設名「東京ネズミーシー」は、施設名データテーブル51の「独立分割単位」の「さ行あ行」、「た行あ行」内の各「読み」の「とうきょう/ねずみー/しー」と、「統合分割単位」の「な行その他」内の「読み」の「とうきょう/ねずみー/しー」に対応する「施設名」にそれぞれ記憶される。
これにより、施設名データテーブル51の「分割単位」間では「施設名」に記憶された施設名の重複はあるが、各「分割単位」内においては、「施設名」に記憶された施設名の重複は無く、1つの施設名だけが記憶されている。従って、施設名データテーブル51の「分割単位」間では「読み」に記憶された施設名の読みの重複はあるが、各「分割単位」内においては、「読み」に記憶された施設名の読みの重複は無く、1つの施設名の読みだけが記憶されている。
また、例えば、施設名の読みが「のうきょう/のーむ」のように、各キーワード「のうきょう」、「のーむ」の前方2文字の読みが同じ「分割単位」の「な行あ行」に属する場合には、施設名データテーブル51の「分割単位」の「な行あ行」に対応する「読み」だけに、「のうきょう/のーむ」が記憶されると共に、「分割単位」の「な行あ行」に対応する「施設名」だけに「農協ノーム」が記憶される。
これにより、施設名の読みを構成する複数のキーワードの前方1文字目が一致する場合には、施設名データテーブル51の「分割単位」間における「読み」及び「施設名」の重複記憶を削減することが可能となり、施設データテーブル51のデータ容量の削減化を図ることができる。また、各「分割単位」毎の「読み」と「施設名」との合計データ容量を所定データ容量以下(例えば、1メガバイト〜2メガバイト以下である。)に設定することが可能となる。
[地点情報表示処理]
次に、上記のように構成されたナビゲーション装置1のCPU41が実行する処理であって、50音キー62から入力された検索語に基づいて地点情報を検索してリスト表示する「地点情報表示処理」について図3乃至図8に基づいて説明する。
図3はCPU41が実行する処理であって、入力された検索語に基づいて地点情報を検索してリスト表示する「地点情報表示処理」を示すフローチャートである。尚、図3にフローチャートで示されるプログラムは、操作部14の不図示の目的地設定ボタンが押下された場合に、CPU41により実行される。
図3に示すように、先ず、ステップ(以下、Sと略記する)11において、CPU41は、液晶ディスプレイ15の画面に、地点情報として目的地の住所や施設に関する名称等を検索するための検索語を入力する検索語入力画面61を表示する。
ここで、検索語入力画面61の一例について図5に基づいて説明する。図5に示すように、検索語入力画面61には、50音キー62、入力文字表示部63、修正ボタン65、戻るボタン66、完了ボタン68が表示される。
この入力文字表示部63には、50音キー62によって入力された入力文字が表示される。また、修正ボタン65を押下する毎に、入力文字表示部63に表示されている文字列の最終入力文字を1文字ずつ削除することができる。また、戻るボタン66を押下することによって、最後の操作の前の状態に戻すことができる。更に、完了ボタン68を押下することによって、入力文字表示部63に表示されている文字列を検索語として、地点情報としての施設に関する名称等を検索してリスト表示するように指示することができる。
続いて、図3に示すように、S12において、CPU41は、50音キー62によって検索語が入力されるのを待つ(S12:NO)。そして、検索語が50音キー62から入力された場合には(S12:YES)、CPU41は、入力文字表示部63に50音キー62から入力された文字列を表示後、S13の処理に移行する。
S13において、CPU41は、入力文字表示部63に表示された文字列を検索語として、施設の名称等を検索して目的地候補としてリスト表示するよう指示されたか否か、つまり、完了ボタン68が押下されたか否かを判定する判定処理を実行する。そして、完了ボタン68が押下されないで、他の50音キー62等が押下された場合には(S13:NO)、CPU41は、再度S12以降の処理を実行する。
一方、完了ボタン68が押下された場合には(S13:YES)、CPU41は、入力文字表示部63に表示された文字列を検索語としてRAM42に記憶後、S14の処理に移行する。S14において、CPU41は、後述の「該当データ範囲決定処理1」のサブ処理(図4参照)を実行する。
ここで、「該当データ範囲決定処理1」のサブ処理について図4に基づいて説明する。
図4に示すように、CPU41は、先ず、施設名データテーブル51の1番目の「分割単位」を構成する50音の2行の組み合わせを読み出してRAM42に記憶する。そして、S111において、CPU41は、入力された検索語と当該「分割単位」を構成する50音の2行の組み合わせをRAM42から読み出し、この検索語の前方2文字が「分割単位」を構成する50音の2行の組み合わせに該当するか否かを判定する判定処理を実行する。
そして、検索語の前方2文字が「分割単位」を構成する50音の2行の組み合わせに該当しないと判定した場合には(S111:NO)、CPU41は、施設名データテーブル51に次の順番の「分割単位」が記憶されているか否かを判定する判定処理を実行する。
そして、施設名データテーブル51に次の順番の「分割単位」が記憶されていると判定した場合には、CPU41は、この次の順番の「分割単位」を構成する50音の2行の組み合わせを読み出してRAM42に記憶後、再度S111以降の処理を実行する。
一方、施設名データテーブル51に次の順番の「分割単位」が記憶されていないと判定した場合には、CPU41は、ループを終了して当該サブ処理を終了し、メインフローチャートに戻ってS15の処理に移行する。
他方、検索語の前方2文字が「分割単位」を構成する50音の2行の組み合わせに該当すると判定した場合には(S111:YES)、CPU41は、S112の処理に移行する。S112において、CPU41は、当該「分割単位」を構成する50音の2行の組み合わせは、「その他」を含む組み合わせか否か、つまり、「統合分割単位」か否かを判定する判定処理を実行する。
そして、当該「分割単位」を構成する50音の2行の組み合わせは、「その他」を含まない組み合わせである、つまり、「独立分割単位」であると判定した場合には(S112:NO)、CPU41は、S113の処理に移行する。
S113において、CPU41は、当該「独立分割単位」を構成する50音の2行の組み合わせを、施設名を検索する該当データ範囲の「分割単位」の50音の2行の組み合わせとしてRAM42に記憶する。
例えば、入力された「検索語」が「とうきょう」の場合には、図2に示すように、検索語の前方2文字「とう」が、「独立分割単位」を構成する50音の2行の組み合わせ「た行あ行」に該当する(S111:YES〜S112:NO)。このため、CPU41は、「独立分割単位」を構成する50音の2行の組み合わせ「た行あ行」を施設名を検索する該当データ範囲の「分割単位」としてRAM42に記憶する(S113)。
続いて、CPU41は、施設名データテーブル51に次の順番の「分割単位」が記憶されているか否かを判定する判定処理を実行する。そして、施設名データテーブル51に次の順番の「分割単位」が記憶されていると判定した場合には、CPU41は、この次の順番の「分割単位」を構成する50音の2行の組み合わせを読み出してRAM42に記憶後、再度S111以降の処理を実行する。一方、施設名データテーブル51に次の順番の「分割単位」が記憶されていないと判定した場合には、CPU41は、ループを終了して当該サブ処理を終了し、メインフローチャートに戻ってS15の処理に移行する。
また一方、当該「分割単位」を構成する50音の2行の組み合わせは、「その他」を含む組み合わせである、つまり、「統合分割単位」であると判定した場合には(S112:YES)、CPU41は、S114の処理に移行する。S114において、CPU41は、検索語の前方2文字が属する50音の2行の組み合わせが、施設名を検索する該当データ範囲の「分割単位」の50音の2行の組み合わせとしてRAM42に既に記憶されているか否かを判定する判定処理を実行する。
そして、検索語の前方2文字が属する50音の2行の組み合わせが、施設名を検索する該当データ範囲の「分割単位」の50音の2行の組み合わせとしてRAM42に記憶されていないと判定した場合には(S114:NO)、CPU41は、S113の処理に移行する。S113において、CPU41は、当該「統合分割単位」を構成する「その他」を含む50音の行の組み合わせを、施設名を検索する該当データ範囲の「分割単位」の50音の2行の組み合わせとしてRAM42に記憶する。
例えば、入力された「検索語」が「つしま」の場合には、図2に示すように、検索語の前方2文字「つし」が、「統合分割単位」を構成する50音の2行の組み合わせ「た行その他」に該当する、つまり、「た行さ行」に該当する(S111:YES〜S112:YES)。また、50音の2行の組み合わせ「た行さ行」は、該当データ範囲の「分割単位」の50音の2行の組み合わせとしてRAM42に記憶されていない(S114:NO)。このため、CPU41は、「統合分割単位」を構成する50音の2行の組み合わせ「た行その他」を施設名を検索する該当データ範囲の「分割単位」としてRAM42に記憶する(S113)。
続いて、CPU41は、施設名データテーブル51に次の順番の「分割単位」が記憶されているか否かを判定する判定処理を実行する。そして、施設名データテーブル51に次の順番の「分割単位」が記憶されていると判定した場合には、CPU41は、この次の順番の「分割単位」を構成する50音の2行の組み合わせを読み出してRAM42に記憶後、再度S111以降の処理を実行する。一方、施設名データテーブル51に次の順番の「分割単位」が記憶されていないと判定した場合には、CPU41は、ループを終了して当該サブ処理を終了し、メインフローチャートに戻ってS15の処理に移行する。
また一方、検索語の前方2文字が属する50音の2行の組み合わせが、施設名を検索する該当データ範囲の「分割単位」の50音の2行の組み合わせとしてRAM42に既に記憶されていると判定した場合には(S114:YES)、CPU41は、施設名データテーブル51に次の順番の「分割単位」が記憶されているか否かを判定する判定処理を実行する。
そして、施設名データテーブル51に次の順番の「分割単位」が記憶されていると判定した場合には、CPU41は、この次の順番の「分割単位」を構成する50音の2行の組み合わせを読み出してRAM42に記憶後、再度S111以降の処理を実行する。一方、施設名データテーブル51に次の順番の「分割単位」が記憶されていないと判定した場合には、CPU41は、ループを終了して当該サブ処理を終了し、メインフローチャートに戻ってS15の処理に移行する。
その後、図3に示すように、S15において、CPU41は、「該当データ範囲決定処理1」のサブ処理において決定された施設名を検索する該当データ範囲の「分割単位」の50音の2行の組み合わせをRAM42から読み出す。そして、CPU41は、この50音の2行の組み合わせ(例えば、「た行あ行」、や「た行その他」等である。)に該当する「独立分割単位」または「統合分割単位」内の全施設名の「読み」を施設名データテーブル51から順番に読み出す。
そして、CPU41は、この読み出した各施設名の読みを構成するキーワードの中に当該検索語と前方一致するキーワードがあるか否かを判定する判定処理を実行する、つまり、読み出した全施設名の「読み」の全文検索を行う。そして、CPU41は、読み出した施設名の読みを構成するキーワードの中に当該検索語と前方一致するキーワードがある場合には、この施設名の読みに対応する「施設名」を施設名データテーブル51から読み出し、目的地候補である候補施設名としてRAM42に順番に記憶する。
尚、CPU41は、検索語と前方一致する施設名の読みのキーワードが、この検索語よりも短い文字列の場合には、更に、検索語のキーワードと一致していない残りの文字列と前方一致するキーワードが、当該施設名の読みを構成するキーワードの中にあるか否かを判定する判定処理を実行する。
そして、CPU41は、検索語のキーワードと一致していない残りの文字列と前方一致するキーワードが、当該施設名の読みを構成するキーワードの中にある場合には、この施設名の読みに対応する「施設名」を施設名データテーブル51から読み出し、目的地候補である候補施設名としてRAM42に記憶する。
続いて、S16において、CPU41は、RAM42から候補施設名を読み出して一覧表示すると共に、候補施設名の件数を表示後、当該処理を終了する。尚、液晶ディスプレイ15には、一度に5件等、リスト順に所定個数表示される(図6参照)。尚、各施設名に表示優先度が付されている場合には、CPU41は、候補施設名を表示優先度の大きい順にソートしたリストとして一覧表示する。
ここで、図5に示すように、検索語入力画面61で、検索語として「とうきょうねずみー」が入力されて、完了ボタン68が押下された場合の結果リスト表示の一例について図6に基づいて説明する。
先ず、図5に示すように、CPU41は、上記S13で検索語として「とうきょうねずみー」をRAM42に記憶する。
その後、CPU41は、上記S14で検索語「とうきょうねずみー」の前方2文字が属する50音の2行の組み合わせ「た行あ行」の「独立分割単位」を施設名を検索する該当データ範囲の「分割単位」とする。そして、CPU41は、当該「独立分割単位」内の全施設名の「読み」を施設名データテーブル51から順番に読み出し、検索語「とうきょうねずみー」と前方一致するキーワードが含まれているか全文検索を行う。
尚、CPU41は、施設名の読みのキーワードの中に「とうきょう」がある場合には、更に、施設名の読みのキーワードの中に「ねずみー」が含まれているか全文検索を行い、各施設名の読み「とうきょう/ねずみー/しー」、「とうきょう/ねずみー/らんど」に対応する各施設名「東京ネズミーシー」、「東京ネズミーランド」を施設名データテーブル51から読み出し、目的地候補である候補施設名としてRAM42に記憶する。
続いて、図6に示すように、CPU41は、液晶ディスプレイ15に検索結果表示画面71を表示し、2つの検索結果表示欄72に「東京ネズミーシー」、「東京ネズミーランド」の2件の候補施設名(地点情報)を表示する。ここで、ユーザが、検索結果表示欄72の地点情報を押下して選択すると、CPU41は、当該施設を目的地に設定して経路探索を行い、推奨経路を地図上に表示する。また、当該施設に関する施設情報(例えば、営業時間、料金等である。)を表示する。
また、検索結果表示画面71の上部には、件数表示部73が設けられ、検索した検索対象の件数「2件」が表示される。また、各検索結果表示欄72の左側には、検索結果表示欄72の施設の名称を1件ずつスクロールダウン、スクロールアップするための前ボタン74、次ボタン75と、検索結果表示欄72の施設の名称を5件ずつスクロールダウン、スクロールアップするための各頁ボタン76、77とが表示されている。
次に、図7に示すように、検索語入力画面61で、検索語として「つしま」が入力されて、完了ボタン68が押下された場合の結果リスト表示の一例について図8に基づいて説明する。
先ず、図7に示すように、CPU41は、上記S13で検索語として「つしま」をRAM42に記憶する。
その後、CPU41は、上記S14で検索語「つしま」の前方2文字が属する50音の2行の組み合わせ「た行さ行」が含まれる「た行その他」の「統合分割単位」を施設名を検索する該当データ範囲の「分割単位」とする。そして、CPU41は、当該「統合分割単位」内の全施設名の「読み」を施設名データテーブル51から順番に読み出し、検索語「つしま」と前方一致するキーワードが含まれているか全文検索を行う。
続いて、図8に示すように、CPU41は、液晶ディスプレイ15に検索結果表示画面71を表示し、5つの検索結果表示欄72に「つしまスーパー」、「津島レインランド」、「つしまえサンロード」、「つしまえローズガーデン」、「つしまやガーデン」と検索上位5件の候補施設名(地点情報)を表示する。また、件数表示部73には、候補施設名の件数「28件」が表示される。
以上詳細に説明した通り、実施例1に係るナビゲーション装置1では、施設名データテーブル51の各「分割単位」は、1組の50音の2行の組み合わせが記憶された「独立分割単位」と、複数組の50音の2行の組み合わせが記憶された「統合分割単位」とから構成されている。また、「独立分割単位」に属する「読み」と「施設名」から構成される分割単位データのデータサイズは、所定データサイズ以上である。また、「統合分割単位」に属する「読み」と「施設名」から構成される分割単位データのデータサイズは、所定分割データサイズを超えないように、所定データサイズ未満の複数の「独立分割単位」が統合されている。
これにより、施設名データテーブル51の各「分割単位」の個数を50音の2行の組み合わせ数、つまり、100個よりも少なくすることができる。このため、検索語の前方2文字が属する50音の2行の組み合わせが記憶される「分割単位」、つまり、施設名の検索対象となる「分割単位」を高速に決定することができ、応答性の更なる高速化を図ることが可能となる。
また、「統合分割単位」に属する「読み」と「施設名」から構成される分割単位データのデータサイズは、所定分割データサイズを超えないように設定されている。このため、施設名の検索対象となった「統合分割単位」に属する「読み」と「施設名」を施設名データテーブル51から読み出して、展開するRAM42のメモリ容量の増大を抑止することが可能となる。
次に、実施例2に係るナビゲーション装置80について図9及び図10に基づいて説明する。尚、上記実施例1に係るナビゲーション装置1と同一符号は、上記実施例1に係るナビゲーション装置1と同一あるいは相当部分を示すものである。
この実施例2に係るナビゲーション装置80の全体構成は、実施例1に係るナビゲーション装置1とほぼ同じ構成である。また、実施例2に係るナビゲーション装置80の制御構成及び制御処理は、実施例1に係るナビゲーション装置1の制御構成及び制御処理とほぼ同じである。
但し、実施例2に係るナビゲーション装置80の施設名DB27には、施設名データテーブル51に替えて後述の施設名データテーブル81が格納されている点で、上記実施例1に係るナビゲーション装置1と異なっている。また、実施例2に係るナビゲーション装置80のCPU41は、後述のように上記「該当データ範囲決定処理1」に替えて後述の「該当データ範囲決定処理2」(図10参照)を実行する点で、上記実施例1に係るナビゲーション装置1と異なっている。
先ず、施設名データテーブル81について図9に基づいて説明する。
図9に示すように、施設名データテーブル81は、上記施設名データテーブル51とほぼ同じ構成である。但し、「あ行その他」、「か行その他」等の各「統合分割単位」に対応する「施設名の読み及び該施設名」を記憶する構成が異なっている。
各「統合分割単位」に対応する「施設名の読み及び該施設名」は、「統合分割単位」に統合された複数の「独立分割単位」毎に区分けされて、つまり、統合された複数の「独立分割単位」に記憶されていた各50音の2行の組み合わせ毎に区分けされて、施設名の読み及び該施設名が対になって記憶されている。また、施設名の読み及び該施設名の各区分け毎に記憶されている施設名データテーブル81内の記憶領域を表す「記憶情報」が記憶されている。
具体的には、施設名の読み及び該施設名の各区分け毎の記憶領域を表す「記憶情報」として、各区分け毎の施設名の読み及び該施設名の1番目のデータが記憶されている「メモリ番地」と、各区分け毎の「データサイズ」とが対になって記憶されている。例えば、「た行その他」に属する「記憶情報」は、50音の2行の組み合わせ「た行さ行」〜「た行わ行」毎に区分けされて、各区分け毎に記憶された施設名の読み及び該施設名の1番目のデータが記憶されている「メモリ番地」と、各区分け毎の「データサイズ」とが記憶されている。
そして、「た行さ行」に区分けされた1番目の施設名の読み及び該施設名の「つしき/すとあー:津式ストアー」のデータが記憶されている「メモリ番地」は、「○○○1」で、「た行さ行」の「データサイズ」は、「58キロバイト(kB)」である旨が記憶されている。続いて、施設名の読み及び該施設名が、統合された複数の「独立分割単位」に記憶されていた50音の2行の組み合わせ「た行さ行」〜「た行わ行」毎に区分けされて、「た行さ行」〜「た行わ行」の50音順に記憶されている。
次に、CPU41が上記のように構成された施設名データテーブル81を使用して実行する「該当データ範囲決定処理2」のサブ処理について図10に基づいて説明する。
図10に示すように、CPU41は、先ず、施設名データテーブル81の1番目の「分割単位」を構成する50音の2行の組み合わせを読み出してRAM42に記憶する。そして、S211〜S212において、CPU41は、施設名データテーブル51に替えて施設名データテーブル81を使用して上記S111〜S112の処理を実行する。
そして、施設名データテーブル81から読み出した「分割単位」を構成する50音の2行の組み合わせは、「その他」を含まない組み合わせである、つまり、「独立分割単位」であると判定した場合には(S212:NO)、CPU41は、S213の処理に移行する。S213において、CPU41は、当該「独立分割単位」を構成する50音の2行の組み合わせを、施設名を検索する該当データ範囲の「分割単位」の50音の2行の組み合わせとしてRAM42に記憶する。
例えば、入力された「検索語」が「とうきょう」の場合には、図9に示すように、検索語の前方2文字「とう」が、「独立分割単位」を構成する50音の2行の組み合わせ「た行あ行」に該当する(S211:YES〜S212:NO)。このため、CPU41は、「独立分割単位」を構成する50音の2行の組み合わせ「た行あ行」を施設名を検索する該当データ範囲の「分割単位」としてRAM42に記憶する(S213)。
続いて、CPU41は、施設名データテーブル81に次の順番の「分割単位」が記憶されているか否かを判定する判定処理を実行する。そして、施設名データテーブル81に次の順番の「分割単位」が記憶されていると判定した場合には、CPU41は、この次の順番の「分割単位」を構成する50音の2行の組み合わせを読み出してRAM42に記憶後、再度S211以降の処理を実行する。一方、施設名データテーブル81に次の順番の「分割単位」が記憶されていないと判定した場合には、CPU41は、ループを終了して当該サブ処理を終了し、メインフローチャートに戻ってS15の処理に移行する。
従って、上記S15において、CPU41は、施設名を検索する該当データ範囲として「独立分割単位」の50音の2行の組み合わせがRAM42に記憶されている場合には、この50音の2行の組み合わせ(例えば、「た行あ行」等である。)に該当する「独立分割単位」内の全施設名の「読み」を施設名データテーブル81から順番に読み出して、全文検索を行う。
そして、CPU41は、読み出した施設名の読みを構成するキーワードの中に当該検索語と前方一致するキーワードがある場合には、この施設名の読みに対応する「施設名」を施設名データテーブル81から読み出し、目的地候補である候補施設名としてRAM42に順番に記憶する。
また一方、S212で当該「分割単位」を構成する50音の2行の組み合わせは、「その他」を含む組み合わせである、つまり、「統合分割単位」であると判定した場合には(S212:YES)、CPU41は、S214の処理に移行する。S214において、CPU41は、検索語の前方2文字が属する50音の2行の組み合わせに区分けされた施設名の読み及び該施設名が記憶されている施設名データテーブル81内の記憶領域を表す記憶情報を、当該「統合分割単位」に属する「記憶情報」から読み出し、施設名を検索する該当データ範囲としてRAM42に記憶する。
例えば、入力された「検索語」が「つしま」の場合には、図9に示すように、検索語の前方2文字「つし」が、「統合分割単位」を構成する50音の2行の組み合わせ「た行その他」の「た行さ行」に属する。このため、CPU41は、当該「統合分割単位」に属する「読み」から「た行さ行」に区分けされて記憶された施設名の読みの、それぞれの1番目のデータが記憶されている「メモリ番地」の「○○○1」と、この「た行さ行」に区分けされた施設名の読み及び該施設名の「データサイズ」の「58kB」を読み出し、施設名を検索する該当データ範囲としてRAM42に記憶する。
その後、CPU41は、施設名データテーブル81に次の順番の「分割単位」が記憶されているか否かを判定する判定処理を実行する。そして、施設名データテーブル81に次の順番の「分割単位」が記憶されていると判定した場合には、CPU41は、この次の順番の「分割単位」を構成する50音の2行の組み合わせを読み出してRAM42に記憶後、再度S211以降の処理を実行する。一方、施設名データテーブル81に次の順番の「分割単位」が記憶されていないと判定した場合には、CPU41は、ループを終了して当該サブ処理を終了し、メインフローチャートに戻ってS15の処理に移行する。
従って、上記S15において、CPU41は、施設名を検索する該当データ範囲として「記憶情報」が記憶されている場合には、この「記憶情報」に該当する施設名データテーブル81内の記憶領域に記憶されている全施設名の読み及び施設名を順番に読み出して、施設名の読みの全文検索を行う。
つまり、CPU41は、「記憶情報」の施設名の読みの1番目のデータが記憶されている「メモリ番地」から「データサイズ」に達するまで施設名データテーブル81内の全施設名の読み及び施設名を順番に読み出して、施設名の読みの全文検索を行う。そして、CPU41は、読み出した施設名の読みを構成するキーワードの中に当該検索語と前方一致するキーワードがある場合には、この施設名の読みに対応する施設名を、目的地候補である候補施設名としてRAM42に順番に記憶する。
以上詳細に説明した通り、実施例2に係るナビゲーション装置80では、施設名データテーブル81の各「分割単位」は、1組の50音の2行の組み合わせが記憶された「独立分割単位」と、複数組の50音の2行の組み合わせが記憶された「統合分割単位」とから構成されている。また、「独立分割単位」に属する「読み」と「施設名」から構成される分割単位データのデータサイズは、所定データサイズ以上である。また、「統合分割単位」に対応する「施設名の読み及び該施設名」は、「統合分割単位」に統合された複数の「独立分割単位」に記憶されていた各50音の2行の組み合わせ毎に区分けされて記憶されている。また、「統合分割単位」に対応する「施設名の読み及び該施設名」の各50音の2行の組み合わせ毎に区分けされて記憶されている記憶領域を表す「記憶情報」が記憶されている。
これにより、施設名データテーブル81の各「分割単位」の個数を50音の2行の組み合わせ数、つまり、250個よりも少なくすることができる。このため、検索語の前方2文字が属する50音の2行の組み合わせが記憶される「分割単位」、つまり、施設名の検索対象となる「分割単位」を高速に決定することができ、応答性の更なる高速化を図ることが可能となる。
また、「統合分割単位」に対応する「施設名の読み及び該施設名」から候補施設名を検索する場合には、検索語の前方2文字が属する50音の2行の組み合わせに該当する「記憶情報」に該当する施設名データテーブル81内の記憶領域に記憶されている全施設名の読み及び施設名を順番に読み出して、全文検索を行うことができる。
これにより、「統合分割単位」の検索対象となる「施設名の読み」の対称件数を、検索語の前方2文字が属する50音の2行の組み合わせに該当する区分けだけに限定して、少なくすることができ、検索を更に高速で行い、応答性の更なる高速化を図ることが可能となる。また、「統合分割単位」の検索対象となる「施設名の読み及び該施設名」を施設名データテーブル81から読み出して、展開するRAM42のメモリ容量の増大を更に抑止することが可能となる。
尚、本発明は前記実施例に限定されるものではなく、本発明の要旨を逸脱しない範囲内で種々の改良、変形が可能であることは勿論である。
[他の実施例1]
(A)例えば、他の実施例1に係るナビゲーション装置90は、上記実施例1に係るナビゲーション装置1とほぼ同じ構成であるが、施設名データテーブル51に替えて、図11に示す施設名データテーブル91を施設名DB27に格納するようにしてもよい。ここで、施設名データテーブル91について図11に基づいて説明する。尚、上記実施例1に係るナビゲーション装置1と同一符号は、上記実施例1に係るナビゲーション装置1と同一あるいは相当部分を示すものである。
図11に示すように、施設名データテーブル91は、施設名データテーブル51と同様に、「分割単位」と、施設名の読みを記憶する「読み」と、「施設名」とから構成されている。
但し、この「分割単位」の「独立分割単位」には、施設名の読みを構成するキーワードと前方一致する2文字の平仮名が記憶されている。また、「独立分割単位」に属する「読み」と「施設名」から構成される分割単位データのデータサイズは、所定データサイズ以上である(例えば、約1メガバイト以上である。)。
また、「統合分割単位」には、分割単位データが所定データサイズ未満で、且つ、50音の1文字目の平仮名が共通する複数の「独立分割単位」に属する「読み」と「施設名」が統合されて属している。そして、「統合分割単位」には、当該「統合分割単位」に統合された複数の「独立分割単位」に記憶されていた複数組の50音の2文字の平仮名、つまり、統合された施設名の読みを構成するキーワードと前方一致する2文字の平仮名が記憶されている。
例えば、「統合分割単位」の「とその他」には、「独立分割単位」の「とう」以外、つまり、「とあ」、「とい」、「とえ」、「とお」・・・・「とわ」、「とん」の複数組の2文字の平仮名が記憶されている。
また、「統合分割単位」に属する「読み」と「施設名」から構成される分割単位データのデータサイズは、所定分割データサイズを超えないように(例えば、約2メガバイト以下になるようにする。)、複数の「独立分割単位」が統合されている。
尚、「独立分割単位」には、例えば「あああ」、「ああい」、「ああう」・・・等、50音の3文字以上の平仮名をそれぞれ1個ずつ記憶するようにしてもよい。また、「独立分割単位」の一部区間だけ、例えば、・・・「おん」、「かああ」、「かあい」、・・・「かあん」、「かい」、「かう」・・等、50音順に3文字以上ずつ記憶するようにしてもよい。そして、「統合分割単位」には、当該「統合分割単位」に統合された複数の「独立分割単位」に記憶される複数の3文字以上の平仮名が記憶されるようにしてもよい。
また、「読み」には、「独立分割単位」と「統合分割単位」から構成された各「分割単位」に属する2文字の各平仮名と前方一致するキーワードを含む施設名の読みが記憶されている。また、「施設名」には、検索対象となる目的地を表す施設名が、「読み」に記憶された施設名の読みに対応して記憶されている。
これにより、施設名データテーブル91の「分割単位」間では「施設名」に記憶された施設名の重複はあるが、各「分割単位」内においては、「施設名」に記憶された施設名の重複は無く、1つの施設名だけが記憶されている。従って、施設名データテーブル91の「分割単位」間では「読み」に記憶された施設名の読みの重複はあるが、各「分割単位」内においては、「読み」に記憶された施設名の読みの重複は無く、1つの施設名の読みだけが記憶されている。
そして、他の実施例1に係るナビゲーション装置90のCPU41は、上記図4に示す「該当データ範囲決定処理1」のサブ処理において、施設名データテーブル51に替えて、施設名データテーブル91を使用するようにしてもよい。
具体的には、CPU41は、施設名データテーブル91の1番目の「分割単位」に記憶される2文字の平仮名を読み出す。そして、S111において、CPU41は、入力された検索語と当該「分割単位」に記憶される2文字の平仮名とが前方一致するか否かを判定する判定処理を実行する。
そして、検索語と当該「分割単位」に記憶される2文字の平仮名とが前方一致しないと判定した場合には(S111:NO)、CPU41は、施設名データテーブル91に次の順番の「分割単位」が記憶されているか否かを判定する判定処理を実行する。そして、施設名データテーブル91に次の順番の「分割単位」が記憶されていると判定した場合には、CPU41は、この次の順番の「分割単位」に記憶される2文字の平仮名を読み出してRAM42に記憶後、再度S111以降の処理を実行する。
一方、施設名データテーブル91に次の順番の「分割単位」が記憶されていないと判定した場合には、CPU41は、ループを終了して当該サブ処理を終了し、メインフローチャートに戻ってS15の処理に移行する。
他方、検索語と「分割単位」に記憶される2文字の平仮名とが前方一致すると判定した場合には(S111:YES)、CPU41は、S112の処理に移行する。S112において、CPU41は、当該「分割単位」に記憶される平仮名は、「その他」を含む平仮名か否か、つまり、「統合分割単位」か否かを判定する判定処理を実行する。
そして、当該「分割単位」に記憶される平仮名は、「その他」を含まない平仮名である、つまり、「独立分割単位」であると判定した場合には(S112:NO)、CPU41は、S113の処理に移行する。S113において、CPU41は、当該「独立分割単位」を施設名を検索する該当データ範囲の「分割単位」としてRAM42に記憶する。
また一方、当該「分割単位」に記憶される平仮名は、「その他」を含む平仮名である、つまり、「統合分割単位」であると判定した場合には(S112:YES)、CPU41は、S114の処理に移行する。S114において、CPU41は、検索語の前方2文字が属する「独立分割単位」が、施設名を検索する該当データ範囲の「分割単位」としてRAM42に既に記憶されているか否かを判定する判定処理を実行する。
そして、検索語の前方2文字が属する「独立分割単位」が、施設名を検索する該当データ範囲の「分割単位」としてRAM42に記憶されていないと判定した場合には(S114:NO)、CPU41は、S113の処理に移行する。S113において、CPU41は、当該「統合分割単位」を施設名を検索する該当データ範囲の「分割単位」としてRAM42に記憶する。
続いて、CPU41は、施設名データテーブル91に次の順番の「分割単位」が記憶されているか否かを判定する判定処理を実行する。そして、施設名データテーブル91に次の順番の「分割単位」が記憶されていると判定した場合には、CPU41は、この次の順番の「分割単位」に記憶される2文字の平仮名を読み出してRAM42に記憶後、再度S111以降の処理を実行する。一方、施設名データテーブル91に次の順番の「分割単位」が記憶されていないと判定した場合には、CPU41は、ループを終了して当該サブ処理を終了し、メインフローチャートに戻ってS15の処理に移行する。
また一方、検索語の前方2文字が属する「独立分割単位」が、施設名を検索する該当データ範囲の「分割単位」としてRAM42に既に記憶されていると判定した場合には(S114:YES)、CPU41は、施設名データテーブル91に次の順番の「分割単位」が記憶されているか否かを判定する判定処理を実行する。
そして、施設名データテーブル91に次の順番の「分割単位」が記憶されていると判定した場合には、CPU41は、この次の順番の「分割単位」に記憶される2文字の平仮名を読み出してRAM42に記憶後、再度S111以降の処理を実行する。一方、施設名データテーブル91に次の順番の「分割単位」が記憶されていないと判定した場合には、CPU41は、ループを終了して当該サブ処理を終了し、メインフローチャートに戻ってS15の処理に移行する。
従って、施設名データテーブル91の各「分割単位」の個数を50音の2文字の平仮名の組み合わせ数、つまり、2500個よりも少なくすることができる。このため、検索語の前方2文字が属する「分割単位」、つまり、施設名の検索対象となる「分割単位」を高速に決定することができ、応答性の更なる高速化を図ることが可能となる。
また、「統合分割単位」に属する「読み」と「施設名」から構成される分割単位データのデータサイズは、所定分割データサイズを超えないように設定されている。このため、施設名の検索対象となった「統合分割単位」に属する「読み」と「施設名」を施設名データテーブル91から読み出して、展開するRAM42のメモリ容量の増大を抑止することが可能となる。
[他の実施例2]
(B)例えば、他の実施例2に係るナビゲーション装置100は、上記実施例2に係るナビゲーション装置80とほぼ同じ構成であるが、施設名データテーブル81に替えて、図12に示す施設名データテーブル101を施設名DB27に格納するようにしてもよい。ここで、施設名データテーブル101について図12に基づいて説明する。尚、上記実施例2に係るナビゲーション装置80と同一符号は、上記実施例2に係るナビゲーション装置2と同一あるいは相当部分を示すものである。
図12に示すように、施設名データテーブル101は、施設名データテーブル81をほぼ同じ構成である。但し、「独立分割単位」には、施設名の読みを構成するキーワードと前方一致する2文字の平仮名が記憶されている。また、「独立分割単位」に属する「読み」と「施設名」から構成される分割単位データのデータサイズは、所定データサイズ以上である(例えば、約1メガバイト以上である。)。
また、「統合分割単位」には、分割単位データが所定データサイズ未満で、且つ、50音の1文字目の平仮名が共通する複数の「独立分割単位」に属する「読み」と「施設名」が統合されて属している。そして、「統合分割単位」には、当該「統合分割単位」に統合された複数の「独立分割単位」に記憶されていた複数組の50音の2文字の平仮名、つまり、統合された施設名の読みを構成するキーワードと前方一致する2文字の平仮名が記憶されている。
例えば、「統合分割単位」の「とその他」には、「独立分割単位」の「とう」以外、つまり、「とあ」、「とい」、「とえ」、「とお」・・・・「とわ」、「とん」の複数組の2文字の平仮名が記憶されている。また、「統合分割単位」に属する「読み」と「施設名」から構成される分割単位データのデータサイズは、所定分割データサイズを超えないように(例えば、約2メガバイト以下になるようにする。)、複数の「独立分割単位」が統合されている。
尚、「独立分割単位」には、例えば「あああ」、「ああい」、「ああう」・・・等、50音の3文字以上の平仮名をそれぞれ1個ずつ記憶するようにしてもよい。また、「独立分割単位」の一部区間だけ、例えば、・・・「おん」、「かああ」、「かあい」、・・・「かあん」、「かい」、「かう」・・等、50音順に3文字以上ずつ記憶するようにしてもよい。そして、「統合分割単位」には、当該「統合分割単位」に統合された複数の「独立分割単位」に記憶される複数の3文字以上の平仮名が記憶されるようにしてもよい。
各「統合分割単位」に対応する「施設名の読み及び該施設名」は、「統合分割単位」に統合された複数の「独立分割単位」毎に区分けされて、つまり、統合された複数の「独立分割単位」に記憶されていた各2文字の平仮名に区分けされて、施設名の読み及び該施設名が対になって記憶されている。また、施設名の読み及び該施設名の各区分け毎に記憶されている施設名データテーブル101内の記憶領域を表す「記憶情報」が記憶されている。具体的には、施設名の読み及び該施設名の各区分け毎の記憶領域を表す「記憶情報」として、各区分け毎の施設名の読み及び該施設名の1番目のデータが記憶されている「メモリ番地」と、各区分け毎の「データサイズ」とが対になって記憶されている。
具体的には、「とその他」に属する「記憶情報」は、2文字の平仮名「とあ」〜「とん」毎に区分けされて、各区分け毎に記憶された施設名の読み及び該施設名の1番目のデータが記憶されている「メモリ番地」と、各区分け毎の「データサイズ」とが記憶されている。例えば、「とあ」に区分けされた1番目の施設名の読み及び該施設名の「とあけ/すとあー:とあけストアー」のデータが記憶されている「メモリ番地」は、「□○×1」で、「とあ」の「データサイズ」は、「18kB」である旨が記憶されている。続いて、施設名の読み及び該施設名が、統合された複数の「独立分割単位」に記憶されていた2文字の平仮名「とあ」〜「とん」毎に区分けされて、「とあ」〜「とん」の50音順に記憶されている。
そして、他の実施例2に係るナビゲーション装置100のCPU41は、上記図10に示す「該当データ範囲決定処理2」のサブ処理において、施設名データテーブル81に替えて、施設名データテーブル101を使用するようにしてもよい。
具体的には、CPU41は、施設名データテーブル101の1番目の「分割単位」に記憶される2文字の平仮名を読み出す。そして、S211において、CPU41は、入力された検索語と当該「分割単位」に記憶される2文字の平仮名とが前方一致するか否かを判定する判定処理を実行する。
そして、検索語と当該「分割単位」に記憶される2文字の平仮名とが前方一致しないと判定した場合には(S211:NO)、CPU41は、施設名データテーブル101に次の順番の「分割単位」が記憶されているか否かを判定する判定処理を実行する。そして、施設名データテーブル101に次の順番の「分割単位」が記憶されていると判定した場合には、CPU41は、この次の順番の「分割単位」に記憶される2文字の平仮名を読み出してRAM42に記憶後、再度S211以降の処理を実行する。
一方、施設名データテーブル101に次の順番の「分割単位」が記憶されていないと判定した場合には、CPU41は、ループを終了して当該サブ処理を終了し、メインフローチャートに戻ってS15の処理に移行する。
他方、検索語と「分割単位」に記憶される2文字の平仮名とが前方一致すると判定した場合には(S211:YES)、CPU41は、S212の処理に移行する。S212において、CPU41は、当該「分割単位」に記憶される平仮名は、「その他」を含む平仮名か否か、つまり、「統合分割単位」か否かを判定する判定処理を実行する。
そして、当該「分割単位」に記憶される平仮名は、「その他」を含まない平仮名である、つまり、「独立分割単位」であると判定した場合には(S212:NO)、CPU41は、S213の処理に移行する。S213において、CPU41は、当該「独立分割単位」を施設名を検索する該当データ範囲の「分割単位」としてRAM42に記憶する。
続いて、CPU41は、施設名データテーブル101に次の順番の「分割単位」が記憶されているか否かを判定する判定処理を実行する。そして、施設名データテーブル101に次の順番の「分割単位」が記憶されていると判定した場合には、CPU41は、この次の順番の「分割単位」に記憶される2文字の平仮名を読み出してRAM42に記憶後、再度S211以降の処理を実行する。一方、施設名データテーブル101に次の順番の「分割単位」が記憶されていないと判定した場合には、CPU41は、ループを終了して当該サブ処理を終了し、メインフローチャートに戻ってS15の処理に移行する。
また一方、当該「分割単位」に記憶される平仮名は、「その他」を含む平仮名である、つまり、「統合分割単位」であると判定した場合には(S212:YES)、CPU41は、S214の処理に移行する。S214において、CPU41は、検索語の前方2文字の平仮名に区分けされた施設名の読み及び該施設名が記憶されている施設名データテーブル101内の記憶領域を表す「記憶情報」を当該「統合分割単位」に属する「記憶情報」から読み出し、施設名を検索する該当データ範囲としてRAM42に記憶する。
その後、CPU41は、施設名データテーブル101に次の順番の「分割単位」が記憶されているか否かを判定する判定処理を実行する。そして、施設名データテーブル101に次の順番の「分割単位」が記憶されていると判定した場合には、CPU41は、この次の順番の「分割単位」に記憶される2文字の平仮名を読み出してRAM42に記憶後、再度S211以降の処理を実行する。一方、施設名データテーブル101に次の順番の「分割単位」が記憶されていないと判定した場合には、CPU41は、ループを終了して当該サブ処理を終了し、メインフローチャートに戻ってS15の処理に移行する。
そして、上記S15において、CPU41は、施設名を検索する該当データ範囲として「記憶情報」が記憶されている場合には、この「記憶情報」に該当する施設名データテーブル101内の記憶領域に記憶されている全施設名の読み及び施設名を順番に読み出して、施設名の読みの全文検索を行う。
つまり、CPU41は、「記憶情報」の施設名の読みの1番目のデータが記憶されている「メモリ番地」から「データサイズ」に達するまで施設名データテーブル101内の全施設名の読み及び施設名を順番に読み出して、施設名の読みの全文検索を行う。そして、CPU41は、読み出した施設名の読みを構成するキーワードの中に当該検索語と前方一致するキーワードがある場合には、この施設名の読みに対応する施設名を、目的地候補である候補施設名としてRAM42に順番に記憶する。
従って、施設名データテーブル101の各「分割単位」の個数を50音の2文字の平仮名の組み合わせ数、つまり、2500個よりも少なくすることができる。このため、検索語の前方2文字が属する「分割単位」、つまり、施設名の検索対象となる「分割単位」を高速に決定することができ、応答性の更なる高速化を図ることが可能となる。
また、「統合分割単位」に対応する「施設名の読み及び該施設名」から候補施設名を検索する場合には、検索語の前方2文字が属する区分けの「記憶情報」に該当する施設名データテーブル101内の記憶領域に記憶されている全施設名の読み及び施設名を順番に読み出して、全文検索を行うことができる。
これにより、「統合分割単位」の検索対象となる「施設名の読み」の対称件数を、検索語の前方2文字が属する区分けだけに限定して、少なくすることができ、検索を更に高速で行い、応答性の更なる高速化を図ることが可能となる。また、「統合分割単位」の検索対象となる「施設名の読み及び該施設名」を施設名データテーブル101から読み出して、展開するRAM42のメモリ容量の増大を更に抑止することが可能となる。