図1において、地点検索装置100は、テーブル記憶部110と、キーワード入力部120と、設定部130と、データベース140と、開始入力部150と、検索部160と、表示部170と、変更入力部180と、履歴記憶部190と、を備えて構成される。
テーブル記憶部110は、検索手法を特定するための属性とキーワードとを対応付けたテーブルを記憶する。検索手法は、地点の名称を対象として地点の検索をおこなう名称検索、地点のヨミを対象として地点の検索をおこなうヨミ検索、地点のジャンルを対象として検索をおこなうジャンル検索、地点の住所またはエリアを対象として地点の検索をおこなう住所エリア検索、地点の電話番号を対象として地点の検索をおこなう電話番号検索、などが挙げられる。
属性は、検索手法を特定するためのものであり、具体的には、名称検索を特定する名称属性、ヨミ検索を特定するヨミ属性、ジャンル検索を特定するジャンル属性、住所エリア検索を特定する住所エリア属性、電話番号検索を特定する電話番号属性、などが挙げられる。
キーワードは、具体的には、たとえば、複数の文字からなる単語であり、1文字の仮名、アルファベット、数字なども含む。テーブル記憶部110は、あるキーワードを検索する際に検索される可能性の高い属性を当該キーワードに対応付けて記憶する。具体例を挙げると、テーブル記憶部110は、「東京」や「さいたま」など地名を表すキーワードは、住所エリア属性に対応して記憶している。また、「ホテル」など施設の分類を表すキーワードは、ジャンル属性に対応して記憶している。さらに、「さいたま○×ホテル」など固有名称を示すキーワードは、特定の施設名称を表すため、名称属性として記憶している。
キーワード入力部120は、キーワードの入力をユーザから受け付ける。キーワード入力部120は、具体的には、入力ボタンやタッチパネルからなる。なお、キーワード入力部120へのキーワードの入力に際し、ユーザからの検索手法や属性などの設定をおこなう必要はなく、任意のキーワードを入力できるようになっている。
設定部130は、テーブル記憶部110に記憶されるテーブルを参照して、キーワード入力部120にて入力されたキーワード(以下「入力キーワード」という)に属性を設定する。具体的には、設定部130は、入力キーワードがテーブル内のどのキーワードに合致するかを判定するとともに、合致したキーワードに対応する属性を、入力キーワードに設定する。たとえば、「さいたま」という入力キーワードが入力された場合、テーブルを参照することにより、当該キーワードに住所エリア属性が設定される。また、「さいたま○×ホテル」という入力キーワードが入力された場合、テーブルを参照することにより、当該キーワードに名称属性が設定される。
データベース140は、検索対象となる複数の地点に関する情報を記憶する。地点に関する情報は、具体的には、当該地点の位置や名称の情報などである。開始入力部150は、検索開始の指示をユーザから受け付ける。開始入力部150は、具体的には、入力ボタンやタッチパネルからなる。
検索部160は、開始入力部150を介して検索開始の指示を受け付けた際に、入力キーワードに設定されている属性により特定される検索手法を用いて当該入力キーワードに該当する地点をデータベース140から検索する。たとえば、「さいたま」という入力キーワードが入力されている場合、検索部160は、住所エリア検索による検索手法を用いて、検索をおこなう。
表示部170は、検索部160による検索結果を表示出力する。表示部170は、具体的には、ディスプレイからなる。なお、検索結果の出力は、表示部170による表示出力に限らず、図示しない音声出力部からの音声出力とすることも可能であるし、表示出力および音声出力の双方を用いることも可能である。
また、本実施の形態において、キーワード入力部120は、複数のキーワードを受け付けることが可能である。たとえば、キーワード入力部120は、第1キーワードおよび第2キーワードの入力を受け付ける。キーワード入力部120は、具体的には、第1キーワードの入力が完了した後に、第2キーワードの入力を受け付ける。
この場合、設定部130は、テーブルを参照して、第1キーワードに第1属性を設定するとともに、第2キーワードに第2属性を設定する。キーワード入力部120による入力および設定部130による属性の設定の順番について補足すると、設定部130は、キーワード入力部120が受け付けた第1キーワードに対して第1属性を設定する。このあと、キーワード入力部120が第2キーワードの入力を受け付ける。そして、設定部130が当該第2キーワードに対して第2属性を設定する。なお、第1属性と第2属性とは、それぞれ異なる属性である。
また、この場合、検索部160は、検索開始の指示を受け付けた際に、第1属性により特定される検索手法を用いて第1キーワードに該当する地点を検索するとともに、第2属性により特定される検索手法を用いて第2キーワードに該当する地点を検索する。検索部160は、第1キーワードに該当する地点の検索結果、および第2キーワードに該当する地点の検索結果から、双方に合致する地点(AND検索)、または双方のいずれかに含まれる地点(OR検索)を、双方の検索結果として出力する。
また、本実施の形態において、変更入力部180は、任意の構成要素である。変更入力部180は、入力キーワードに設定されている属性の変更をユーザから受け付ける。すなわち、設定部130によって設定された属性がユーザの所望する属性とは異なる場合に、変更入力部180がユーザからの変更を受け付けることにより、属性が変更されるようになっている。変更入力部180が変更を受け付ける回数は、1回に限らず、変更入力を受け付ける画面が表示されている間は何度でも受け付けることが可能である。変更入力部180は、具体的には、入力ボタンやタッチパネルからなる。
変更入力部180を備えた構成において、検索部160は、検索開始の指示を受け付けた際に属性の変更を既に受け付けている場合には、変更後の属性により特定される検索手法を用いて入力キーワードに該当する地点をデータベースから検索する。
また、本実施の形態において、履歴記憶部190は、任意の構成要素である。履歴記憶部190は、属性の変更の履歴情報を記憶する。履歴記憶部190は、変更入力部180が前回変更を受け付けた際の属性のみを記憶してもよいし、属性ごとに、これまでに変更を受け付けた回数を記憶してもよい。
履歴記憶部190を備えた構成において、設定部130は、テーブルおよび履歴情報を参照して、入力キーワードに属性を設定する。具体的には、設定部130は、入力キーワードに対して、たとえば、前回変更を受け付けた際の属性を設定したり、これまでに変更を受け付けた回数の多い属性を設定したりする。
また、本実施の形態において、キーワード入力部120は、第1受付部121と、提示部122と、第2受付部123と、出力部124と、を備えるようにしてもよい。第1受付部121は、キーワードの入力をユーザから受け付ける。第1受付部121は、具体的には、入力ボタンやタッチパネルからなる。
提示部122は、受け付けたキーワードに基づいて、テーブルの中から候補キーワードを抽出してユーザに提示する。候補キーワードは、入力されたキーワードから推測されるキーワードである。提示部122によって提示される候補キーワードの数は、入力されたキーワードによって異なるが、代表的には複数である。なお、複数の候補キーワードを提示する際には、同一画面上に複数の候補キーワードを表示してもよいし、1キーワードずつ表示してもよい。
第2受付部123は、候補キーワードの中から所望のキーワードの選択をユーザから受け付ける。第2受付部123が受け付けた候補キーワードは、たとえば、次回、同様のキーワードが第1受付部121に入力された場合に、提示部122によって提示される筆頭の候補となる。第2受付部123は、具体的には、入力ボタンやタッチパネルからなる。出力部124は、選択された候補キーワードを入力キーワードとして出力する。
また、本実施の形態において、キーワード入力部120は、新規登録用のキーワード(以下「新規キーワード」という)を当該新規キーワードに対応する属性とともにユーザから受け付ける。新規キーワードおよび属性は、ユーザが選択する任意のキーワードおよび属性である。また、この場合、テーブル記憶部110は、新規キーワードと属性とをテーブルに記憶する。
また、このような新規キーワードを受け付けることが可能な構成において、設定部130は、入力キーワードがテーブル記憶部110に記憶されている新規キーワードに相当する場合、当該入力キーワードに、新規キーワードに対応する属性を設定する。設定部130は、新規キーワードがテーブル記憶部110に記憶されたときを基準として、つぎの設定時に、入力キーワードに対し、新規キーワードに対応する属性の設定を優先しておこなう。なお、新規キーワードに対応する属性の設定したものの、変更入力部180により属性の変更を受け付けた場合には、たとえば、更につぎの設定時には、履歴記憶部190に記憶された属性の変更の履歴情報を参照して、入力キーワードに属性を設定する。
図2のフローチャートにおいて、地点検索装置100は、キーワード入力部120にキーワードが入力されたか否かを判断する(ステップS201)。キーワードが入力されるまで待機状態にあり(ステップS201:Noのループ)、キーワードが入力されると(ステップS201:Yes)、設定部130が入力キーワードに属性を設定する(ステップS202)。
このあと、開始入力部150がユーザから検索開始の指示を受け付けるまで待機状態にある(ステップS203:Noのループ)。検索開始の指示を受け付けると(ステップS203:Yes)、検索部160が属性によって特定される検索手法を用いて、入力キーワードに該当する地点を検索し(ステップS204)、一連の処理を終了する。
以上説明したように、本実施の形態にかかる地点検索装置100によれば、入力キーワードに属性を設定し、当該属性により特定される検索手法を用いて、当該入力キーワードに該当する地点を検索するようにしたので、検索をおこなうにあたりユーザからの検索手法の設定を要することのない、所謂フリーキーワードによる検索をおこなうことができる。したがって、ユーザは、検索手法を設定することによる煩わしさを低減できるとともに、検索手法の誤認を低減することにより、適正な検索結果を得ることができる。
また、本実施の形態において、複数の入力キーワード(第1キーワードおよび第2キーワード)を受け付け、各入力キーワードに属性を設定するとともに、各属性により特定される検索手法を用いて、各入力キーワードに該当する地点を検索するようにすれば、属性の異なる複数のキーワードの入力を同一画面上にておこなうことができる。換言すれば、従来のように、たとえば、属性を選択してキーワードを入力するといった操作を属性ごとに繰り返すことがない。したがって、ユーザの入力操作の負担を軽減することができる。
また、入力キーワードに設定されている属性の変更をユーザから受け付けるようにすれば、設定された属性がユーザの所望するものと異なる場合に、ユーザの所望する属性に変更することができる。したがって、ユーザの所望する属性を反映させた適正な検索結果を得ることができる。
また、属性の変更を受け付けた履歴情報を記憶するようにし、テーブルおよび履歴情報を参照して、入力キーワードに属性を設定するようにすれば、あるキーワードにおいて、テーブルに予め登録されている属性とユーザの所望する属性とが異なるようなことがあっても、毎回ユーザが属性を変更する必要なく、次回以降の属性の設定時に、ユーザの所望する属性を設定させることができる。
また、キーワードの入力にあたり、候補キーワードを抽出してユーザに提示し、提示した中から受け付けた候補キーワードを入力キーワードとして出力するようにすれば、ユーザのキーワード入力をサポートすることができ、ユーザの入力操作の負担を軽減することができる。
また、ユーザから受け付けた、新規キーワードを当該新規キーワードに対応する属性とともに記憶するようにすれば、キーワードがテーブルに記憶されていない場合であっても、ユーザが所望するキーワードを新たに記憶させることができる。
また、入力キーワードが新規キーワードに相当する場合、当該入力キーワードに、新規キーワードに対応する属性を設定するようにすれば、ユーザが所望する属性の検索手法を用いて検索をおこなうことができる。したがって、適正な検索をおこなうことができるとともに、検索の迅速化を図ることができる。
以下に、本発明の実施例について説明する。本実施例では、車両に搭載されるナビゲーション装置によって、本発明の地点検索装置100を実施した場合の一例について説明する。
(ナビゲーション装置のハードウェア構成)
図3を用いて、本実施例にかかるナビゲーション装置のハードウェア構成について説明する。図3は、本実施例にかかるナビゲーション装置のハードウェア構成の一例を示すブロック図である。
図3において、ナビゲーション装置300は、CPU301と、ROM302と、RAM303と、磁気ディスクドライブ304と、磁気ディスク305と、光ディスクドライブ306と、光ディスク307と、音声I/F(インターフェース)308と、スピーカ309と、入力デバイス310と、映像I/F311と、ディスプレイ312と、通信I/F313と、GPSユニット314と、各種センサ315とを備えている。また、各構成部301〜315はバス320によってそれぞれ接続されている。
CPU301は、ナビゲーション装置300の全体の制御を司る。ROM302は、ブートプログラム、現在位置算出プログラム、経路探索プログラム、経路誘導プログラム、キーワード入力プログラムと、属性設定プログラム、情報検索プログラムなどの各種プログラムを記録している。また、RAM303は、CPU301のワークエリアとして使用される。
現在位置算出プログラムは、たとえば、後述するGPSユニット314および各種センサ315の出力情報に基づいて、車両の現在位置(ナビゲーション装置300の現在位置)を算出させる。
経路探索プログラムは、後述する磁気ディスク305に記録されている地図データなどを利用して、出発地から目的地までの最適な経路を探索させる。ここで、最適な経路とは、目的地までの最短(または最速)経路やユーザが指定した条件に最も合致する経路などである。また、目的地のみならず、立ち寄り地点や休憩地点までの経路を探索してもよい。探索された誘導経路は、CPU301を介して音声I/F308や映像I/F311へ出力される。
経路誘導プログラムは、経路探索プログラムを実行することによって探索された誘導経路情報、現在位置算出プログラムを実行することによって算出された車両の現在位置情報、磁気ディスク305から読み出された地図データに基づいて、リアルタイムな経路誘導情報を生成させる。生成された経路誘導情報は、CPU301を介して音声I/F308や映像I/F311へ出力される。
キーワード入力プログラムは、ユーザのキーワード入力をサポートするためのプログラムであり、入力されたキーワードを確定するに際し、入力されたキーワードに対して推測される候補キーワードを抽出して提示し、提示した候補キーワードのうち、ユーザから受け付けたものを入力キーワードとして出力するプログラムである。また、キーワード入力プログラムは、ユーザから受け付けた新規キーワードを当該新規キーワードに対応する属性とともに磁気ディスク305に記録させるプログラムを含む。なお、キーワードの入力および入力キーワードの受け付けは、入力デバイス310を用いておこなわれる。
また、候補キーワードの提示は、スピーカ309やディスプレイ312からおこなわれる。なお、図1に示したキーワード入力部120は、CPU301と入力デバイス310と、ディスプレイ312によって実現される。すなわち、CPU301がキーワード入力プログラムを実行し、ディスプレイ312に表示した候補キーワードのうち、入力デバイス310によってユーザからの入力を受け付けることにより、キーワード入力部120の機能を実現する。
属性設定プログラムは、入力キーワードに属性を設定するプログラムである。また、複数の入力キーワードを受け付けた場合には、各入力キーワードに属性を設定する。設定された属性は、CPU301を介して映像I/F311へ出力される。なお、図1に示した設定部130は、CPU301によって実現される。すなわち、CPU301が属性設定プログラムを実行することにより、設定部130の機能を実現する。
情報検索プログラムは、属性設定プログラムによって属性が設定された入力キーワードに該当する地点を検索するプログラムである。検索された検索結果は、CPU301を介して映像I/F311へ出力される。なお、図1に示した検索部160は、CPU301によって実現される。すなわち、CPU301が情報検索プログラムを実行することにより、検索部160の機能を実現する。
磁気ディスクドライブ304は、CPU301の制御にしたがって磁気ディスク305に対するデータの読み取り/書き込みを制御する。磁気ディスク305は、磁気ディスクドライブ304の制御で書き込まれたデータを記録する。磁気ディスク305としては、たとえば、HD(ハードディスク)やFD(フレキシブルディスク)を用いることができる。
磁気ディスク305に記録される情報の一例としては、各地点に関する情報を登録した検索用テーブルや、検索手法を特定するための属性とキーワードとを対応付けた属性テーブルのほか、ユーザからの属性の変更を受け付けた際の履歴情報などを記録する。検索用テーブルは、施設ごとの名称や位置に関する情報、施設ごとの住所情報、施設のジャンル情報などを記録したものであり、図1に示したデータベース140に記録されるものである。なお、検索用テーブルの詳細については、図5を用いて後述する。
また、属性テーブルは、属性ごとにキーワードを対応付けて分類したテーブルであり、図1に示したテーブル記憶部110に記録されるものである。なお、属性テーブルの詳細については、図4を用いて後述する。また、履歴情報は、たとえば、ユーザからの選択により、入力キーワードに設定する属性を変更した際の履歴を示したものであり、図1に示した履歴記憶部190に記録されるものである。なお、履歴テーブルの詳細については、図4を用いて後述する。なお、図1に示したテーブル記憶部110と、データベース140と、履歴記憶部190とは、磁気ディスク305によって実現される。
光ディスクドライブ306は、CPU301の制御にしたがって光ディスク307に対するデータの読み取り/書き込みを制御する。光ディスク307は、光ディスクドライブ306の制御にしたがってデータの読み出される着脱自在な記録媒体である。光ディスク307は、書き込み可能な記録媒体を利用することもできる。また、この着脱可能な記録媒体として、光ディスク307のほか、MO、メモリカードなどであってもよい。
音声I/F308は、音声出力用のスピーカ309に接続される。スピーカ309は、音声を出力する。入力デバイス310は、文字、数値、各種指示などの入力のための複数のキーを備えたリモコン、キーボード、マウス、タッチパネルなどが挙げられる。入力デバイス310は、リモコン、キーボード、マウス、タッチパネルのうち、いずれか一つの形態によって実現されてもよいし、複数の形態によって実現してもよい。
この入力デバイス310を用い、ユーザからキーワードの入力や、検索開始の入力のほか、属性を変更する際の入力などがおこなわれる。なお、図1に示したキーワード入力部120(第1受付部121、第2受付部123)と、開始入力部150と、変更入力部180とは、入力デバイス310によって実現される。
映像I/F311は、ディスプレイ312に接続される。映像I/F311は、具体的には、たとえば、ディスプレイ312全体の制御をおこなうグラフィックコントローラと、即時表示可能な画像情報を一時的に記録するVRAM(Video RAM)などのバッファメモリと、グラフィックコントローラから出力される画像データに基づいて、ディスプレイ312を表示制御する制御ICなどによって構成される。
ディスプレイ312には、入力キーワード、候補キーワード、属性、検索結果などのデータが表示される。アイコン、カーソル、メニュー、ウインドウ、あるいは文字や画像などの各種データが表示される。
このディスプレイ312は、たとえば、CRT、TFT液晶ディスプレイ、プラズマディスプレイなどを採用することができる。ディスプレイ312は、たとえば、車両のダッシュボード付近に設置される。ディスプレイ312は、車両のダッシュボード付近のほか、車両の後部座席周辺などに設置するなどして、車両内に複数設置してもよい。なお、図1に示した提示部122と、出力部124と、表示部170とは、ディスプレイ312によって実現される。
通信I/F313は、無線を介してネットワークに接続され、ナビゲーション装置300とCPU301とのインターフェースとして機能する。通信I/F313は、さらに、無線を介してインターネットなどの通信網に接続され、この通信網とCPU301とのインターフェースとしても機能する。
GPSユニット314は、GPS衛星からの電波を受信し、車両の現在位置を示す情報を出力する。GPSユニット314の出力情報は、後述する各種センサ315の出力値とともに、CPU301による車両の現在位置の算出に際して利用される。現在位置を示す情報は、たとえば緯度・経度、高度などの、地図データ上の1点を特定する情報である。
各種センサ315は、車速センサ、加速度センサ、角速度センサなどの、車両の位置や挙動を判断することが可能な情報を出力する。各種センサ315の出力値は、CPU301による車両の現在位置の算出や、速度や方位の変化量の測定などに用いられる。
図1に示した地点検索装置100が備えるテーブル記憶部110と、キーワード入力部120と、設定部130と、データベース140と、開始入力部150と、検索部160と、表示部170と、変更入力部180と、履歴記憶部190とは、図3に示したナビゲーション装置300におけるROM302、RAM303、磁気ディスク305、光ディスク307などに記録されたプログラムやデータを用いて、CPU301が所定のプログラムを実行し、ナビゲーション装置300における各部を制御することによってその機能を実現する。
すなわち、本実施例のナビゲーション装置300は、ナビゲーション装置300における記録媒体としてのROM302に記録されている各種プログラムを実行することにより、図1に示した地点検索装置100が備える機能を、図2に示した地点検索処理手順で実行することができる。
(磁気ディスクに記録される属性テーブルの一例)
つぎに、図4を用いて、磁気ディスク305に記録される属性テーブルの一例について説明する。図4は、磁気ディスク305に記録される属性テーブルの一例を示す説明図である。
図4において、属性テーブル400は、属性401と、キーワード402と、ユーザ選択履歴403とを示している。属性401は、名称検索を特定するための名称属性、住所エリア検索を特定するための住所エリア属性、ジャンル検索をおこなうためのジャンル属性、電話番号検索を特定するための電話番号属性、からなる。なお、名称検索は、地点の名称を対象として地点の検索をおこなうものである。住所エリア検索は、地点の住所またはエリアを対象として地点の検索をおこなうものである。ジャンル検索は、地点のジャンルを対象として検索をおこなうものである。電話番号検索は、地点の電話番号を対象として地点の検索をおこなうものである。
なお、属性401は、図示しないが、このほかにも、ヨミ検索を特定するためのヨミ属性などがあってもよい。ヨミ検索は、地点のヨミを対象として地点の検索をおこなうものであり、カタカナやひらがなで入力されたキーワードの検索をおこなうものである。具体的には、「東京」という地名に対し、「トウキョウ」や「とうきょう」が入力キーワードとして入力された場合にヨミ属性が設定される。なお、「さいたま」など、予めひらがなとして登録される地名に関しては、当該ひらがなに対して、住所エリア属性が設定される。
キーワード402は、属性401ごとに予め登録されているワードである。ユーザ選択履歴403は、ユーザからの属性の変更を受け付けた際の、変更した属性の履歴情報である。ここで、各属性について具体的に説明する。名称属性には、施設名などの固有名詞が多数記録されており、系列店などの支店名も記録されている。つまり、地図上に存在する固有の施設全てが名称属性に記録されている。
また、住所エリア属性には、地名が記録されている。つまり、地図上に存在する全ての地名が記録されている。なお、符号410に示すように、ユーザ選択履歴403には、「名称」が記録されているが、これは、「埼玉」411が入力され、住所エリア属性として判断した際に、ユーザから名称属性として変更されたことを示している。なお、この履歴は、所定期間内の過去の直近のものでもよいし、変更された回数が多いものとしてもよい。また、ジャンル属性には、施設のジャンルが記録されており、系列店などの商号も記録されている。
このような属性テーブル400には、予め記録されているキーワードのほかに、ユーザから新規に受け付けた新規キーワードを記録することも可能である。なお、新規キーワードを記録するに際しては、ユーザから当該新規キーワードとともに受け付けた、当該新規キーワードに対応する属性も記録する。
(磁気ディスクに記録される検索用テーブルの一例)
つぎに、図5を用いて、磁気ディスク305に記録される検索用テーブルの一例について説明する。図5は、磁気ディスク305に記録される検索用テーブルの一例を示す説明図である。
図5に示す検索用テーブルは、地点情報テーブル510と、住所テーブル520と、ジャンルテーブル530とからなる。地点情報テーブル510は、施設名称511、施設ヨミ512と、ジャンルコード513と、エリアコード514と、緯度経度515と、電話番号516とからなる。
施設名称511は、地図上に存在する全ての施設の名称である。施設ヨミ512は、施設名称511をカタカナで示したものである。ジャンルコード513は、施設をジャンル別に分類した際の、各ジャンルに設定される記号である。エリアコード514は、所定のエリアごとに設定される記号である。緯度経度515は、施設が位置する地点を示している。電話番号516は、施設の電話番号を示している。
住所テーブル520は、住所名称521と、エリアコード514と、緯度経度515とからなる。住所名称521は、地図上に存在する全ての地名である。この住所テーブル520は、住所名称521ごとにエリアコード514と緯度経度515とを対応付けて記録している。
ジャンルテーブル530は、ジャンル名称531と、ジャンルコード513とからなる。ジャンル名称531は、施設をジャンル別に分類した際の当該分類の名称であり、系列店などの商号も含む。ジャンルテーブル530は、ジャンル名称531ごとにジャンルコード513を対応付けて記録している。
(ナビゲーション装置による地点検索処理の一例)
つぎに、図6−1および図6−2(以下、図6と称す)を用いて、ナビゲーション装置300による地点検索処理の一例について説明する。図6は、ナビゲーション装置300による地点検索処理の一例を示すフローチャートである。なお、図6においては、ユーザからマルチ検索の選択を受け付けたことにより地点検索時の初期画面が予め表示されていることを前提とする。なお、この入力画面については、図7を用いて後述する。
図6において、ナビゲーション装置300のCPU301は、入力デバイス310を用いてユーザからキーワードが入力されたか否かを判断する(ステップS601)。キーワードが入力されるまで待機状態にあり(ステップS601:Noのループ)、キーワードが入力されると(ステップS601:Yes)、候補キーワードがあるか否かを判断する(ステップS602)。なお、候補キーワードは、詳細については図8を用いて後述するが、たとえば「さ」が入力された場合に推測される「さいたま」などである。
候補キーワードがあると判断した場合(ステップS602:Yes)、候補キーワードを、入力ボックスの下に表示される推奨変換候補ボックスに表示する(ステップS603)。そして、推奨変換候補ボックスに表示した候補キーワードの中から、ユーザによるキーワードの選択を受け付けたか否かを判断する(ステップS604)。候補キーワードの選択を受け付けた場合(ステップS604:Yes)、受け付けた候補キーワードを入力キーワードとして入力ボックスに表示する(ステップS605)。
そして、図4に示した属性テーブル400を用いて、入力ボックスに表示されているキーワードに属性を設定する(ステップS606)。なお、設定する属性は、具体的には、予めキーワードに設定された属性や、ユーザからの属性変更の入力による履歴情報に基づく属性のほか、入力キーワードが新規キーワードに相当する場合には新規キーワードに対応する属性である。
このあと、引き続きキーワードの入力があるか否かを判断する(ステップS607)。キーワードの入力がある場合(ステップS607:Yes)、ステップS602に移行する。ステップS602において、候補キーワードがないと判断した場合(ステップS602:No)、具体的には、たとえば、「ん」や「っ」などで始まるキーワードが入力された場合、ステップS606に移行し、当該キーワードを入力キーワードとして属性を設定する。なお、このとき設定する属性は、たとえば、名称属性とするなどして予め定めておけばよい。
また、ステップS604において候補キーワードの選択を受け付けない場合(ステップS604:No)、ステップS606に移行し、入力ボックスに表示されているキーワードを入力キーワードとして属性を設定する。ステップS607において、引き続きキーワードの入力がないと判断した場合(ステップS607:No)、ユーザから属性の変更を受け付けたか否かを判断する(ステップS608)。
属性の変更を受け付けると(ステップS608:Yes)、受け付けた属性に変更する(ステップS609)。そして、属性が設定された入力キーワードのほかに、他のキーワードを入力する旨を受け付けたか否かを判断する(ステップS610)。なお、ステップS610の判断は、具体的には、図7に示す「追加ボタン」が選択されたか否かの判断である。一方、ステップS608において、属性の変更を受け付けない場合(ステップS608:No)、ステップS610に移行する。
他のキーワードを入力する旨を受け付けたか否かを判断した場合(ステップS610:Yes)、属性が設定された入力キーワードを入力完了ボックスに表示させる(ステップS611)。なお、入力完了ボックスの表示については、図12を用いて後述する。このあと、他のキーワードの入力を受け付け(ステップS612)、ステップS602に移行する。
一方、ステップS610において、他のキーワードを入力する旨を受け付けない場合(ステップS610:No)、検索開始の入力を受け付けたか否かを判断する(ステップS613)。検索開始の入力を受け付けるまで待機状態にあり(ステップS613:Noのループ)、検索開始の入力を受け付けると(ステップS613:Yes)、属性ごとのテーブルを用いて検索をおこなう(ステップS614)。なお、検索処理の詳細については、図13〜15を用いて後述する。このあと、ディスプレイ312に検索結果を表示し(ステップS615)、一連の処理を終了する。
(地点検索時における入力画面の一例)
つぎに、図7を用いて、地点検索時における入力画面の一例について説明する。図7は、地点検索時における入力画面の一例を示す説明図である。なお、図7に示す説明図は、図6に示したフローチャートの前提として表示される画面を示す。
図7において、ディスプレイ312には、50音キー701と、入力ボックス702と、推測変換候補ボックス703と、属性タブ704と、追加ボタン705と、検索開始ボタン706とが表示されている。50音キー701には、日本語のひらがなが一覧表記されており、タッチパネルにより、ユーザからの入力を受け付けるようになっている。入力ボックス702は、50音キー701から入力されたキーワードを表示する。
推測変換候補ボックス703は、50音キー701から入力された文字を基に、候補キーワードを表示する。属性タブ704は、入力キーワードに設定する属性を示すものであり、50音キー701から入力された文字に属性が設定された際に、設定された属性に対応するタブがアクティブに表示される。追加ボタン705は、属性の異なる他のキーワードを入力する場合に、ユーザからの選択を受け付ける。検索開始ボタン706は、入力ボックス702に表示されている入力キーワードに該当する地点について検索の開始を受け付ける。
(ユーザからキーワードの入力を受け付けた際の表示画面の一例)
つぎに、図8を用いて、ユーザからキーワードの入力を受け付けた際の表示画面の一例について説明する。図8は、ユーザからキーワードの入力を受け付けた際の表示画面の一例を示す説明図である。なお、図8に示す説明図は、図6に示したフローチャートのステップS603において表示される画面を示す。
図8において、ユーザが50音キー701の「さ」を入力したことにより、入力ボックス702には、「さ」が表示されている。なお、この入力の受け付けは、図1に示した第1受付部121による入力の受け付けに相当する。推測変換候補ボックス703には、「さ」から推測される候補キーワードが表示されており、たとえば、地名である「さいたま」、「佐賀」のほか、コンビニエンスストアのジャンルの「サークルストア」などが表示される。なお、この候補キーワードは、たとえば、ユーザが「さ」を入力した際の直近の履歴を基に抽出されたキーワードである。この推測キーワードの表示は、図1に示した提示部122による提示に相当する。
推測変換候補ボックス703に表示される候補キーワードは、タッチパネルによってユーザからの選択を受け付けるようになっている。なお、このタッチパネルによる受け付けは、図1に示した第2受付部123による受け付けに相当する。この表示画面において、たとえば、ユーザが推測変換候補ボックス703の中から「さいたま」を選択したとすると、図9に示す表示画面に移行する。
(入力キーワードに属性を設定した際の表示画面の一例)
つぎに、図9を用いて、入力キーワードに属性を設定した際の表示画面の一例について説明する。図9は、入力キーワードに属性を設定した際の表示画面の一例を示す説明図である。なお、図9に示す説明図は、図6に示したフローチャートのステップS606において表示される画面を示す。
図9において、入力ボックス702には、「さいたま」が表示されている。なお、この表示は、図1に示した出力部124による出力に相当する。そして、符号900に示すように、「さいたま」に対応する住所エリア属性を示す属性タブ704がアクティブになって表示されている。また、推測変換候補ボックス703には、「さいたま」の後に続いて入力が推測される候補キーワードが表示されている。この表示画面において、推測変換候補ボックス703の中から、ユーザが「国立美術館」を選択したとすると、図10に示す表示画面に移行する。
(キーワードが変更したことにより属性が変更した際の表示画面の一例)
つぎに、図10を用いて、キーワードが変更したことにより属性が変更した際の表示画面の一例について説明する。図10は、キーワードが変更したことにより属性が変更した際の表示画面の一例を示す説明図である。なお、図10に示す説明図は、図6に示したフローチャートにおいて、引き続き入力があった場合の(ステップS607:Yes)、ステップS606において表示される画面を示す。
図10において、入力ボックス702には、「さいたま国立美術館」が入力されている。そして、符号1000に示すように、「さいたま国立美術館」に対応する名称属性を示す属性タブ704がアクティブになって表示されている。この表示画面において、ユーザにより検索開始ボタン706が選択されると、「さいたま国立美術館」に該当する地点の名称検索がおこなわれる。一方、この表示画面において、追加ボタン705が選択されると図11に示す表示画面に移行する。
(ユーザの選択により属性が変更した際の表示画面の一例)
つぎに、図11を用いて、ユーザの選択により属性が変更した際の表示画面の一例について説明する。図11は、ユーザの選択により属性が変更した際の表示画面の一例を示す説明図である。なお、図11に示す説明図は、図6に示したフローチャートにおいて、引き続き入力があった場合の(ステップS607:Yes)、ステップS609において表示される画面を示す。
図11において、ユーザがタッチパネルの属性タブ704のうち、ジャンル属性を示す項目を選択したことにより、「さいたま国立美術館」がジャンル属性に設定されるとともに、符号1100に示すように、ジャンル属性を示す属性タブ704がアクティブになって表示されている。なお、この表示画面において、ユーザが名称属性を示す属性タブ704を選択することによって、再度、名称属性に設定することも可能である。また、住所エリア属性、ヨミ仮名属性(ヨミ属性に相当)、または電話番号属性を示す属性タブ704を選択すると、それぞれ対応する属性に設定することも可能になっている。なお、たとえば、「さいたま国立美術館」にジャンル属性や電話番号属性を設定し、ジャンル検索や電話番号検索をおこなったとしても、検索結果としては該当なしという検索結果となる。
(複数の入力キーワードに属性を設定した際の表示画面の一例)
つぎに、図12を用いて、複数の入力キーワードに属性を設定した際の表示画面の一例について説明する。図12は、複数の入力キーワードに属性を設定した際の表示画面の一例を示す説明図である。なお、図12に示す説明図は、図6に示したフローチャートにおいて、ステップS611およびステップS612において表示される画面を示す。なお、図12に示す表示画面は、図8〜11にて示したキーワードとは無関係の画面を示している。
図12において、表示画面には、入力完了ボックス1201,1202が表示されている。この入力完了ボックス1201には、「さいたま」という入力キーワードに住所エリア属性が設定されている旨が表示されている。これは、入力ボックス702に「さいたま」の入力キーワードが入力され、当該入力キーワードに住所エリア属性が設定されたことを示している。
さらに、入力完了ボックス1202には、「競技場」の入力キーワードにジャンル属性が設定されている旨が表示されている。これは、「さいたま」が入力された後に、ユーザから追加ボタン705が選択され、「競技場」の入力キーワードが入力されたことにより、当該入力キーワードにジャンル属性が設定されたことを示している。
また、この表示画面において、入力ボックス702には、「浦和」の入力キーワードが入力されており、符号1203に示すように、名称属性を示す属性タブ704がアクティブになって表示されている。なお、「浦和」のキーワードは、本来であれば住所エリア属性が設定されるが、ここでは名称属性が設定されている。これは、住所エリア属性として既に「さいたま」が登録されていることにより、住所属性の入力を受け付けないように予め設定しているためである。なお、住所エリア属性が既に登録されている場合であっても、再度、住所エリア属性の入力を受け付け可能に予め設定しておくことも可能である。
この表示画面において、ユーザが検索開始ボタン706を選択すると、3つの入力キーワードについて、設定されている各属性により、住所エリア検索、ジャンル検索、および名称検索がおこなわれる。以下に、図13〜15を用いて、検索処理の詳細について説明する。
(ナビゲーション装置による検索処理の詳細の一例)
つぎに、図13〜15を用いて、ナビゲーション装置300による検索処理の詳細の一例について説明する。図13は、地点検索処理におけるエリアコードの抽出処理の一例を示すフローチャートである。図13に示すフローチャートは、住所エリア属性が設定された入力キーワードからエリアコードを抽出するときの処理を示している。なお、図13においては、たとえば、図12に示した表示画面を前提とし、すなわち、「さいたま」の入力キーワードに住所エリア属性が設定され、「競技場」の入力キーワードにジャンル属性が設定され、「浦和」の入力キーワードに名称属性が設定されていることを前提とする。
図13において、ナビゲーション装置300のCPU301は、住所エリアの入力キーワード(「さいたま」)と、図5に示した住所テーブル520中の住所名称とを照合する(ステップS1301)。そして、照合の結果、一致するものがあったか否かを判断する(ステップS1302)。一致するものがあったと判断した場合(ステップS1302:Yes)、一致するものが複数あるか否かを判断する(ステップS1303)。
一致するものが複数ある場合とは、具体的には、住所エリア属性のキーワードに「富士見」などの全国に複数ある地名が入力されている場合である。なお、「富士見」に該当する地は、たとえば、「埼玉県富士見市」、「埼玉県鶴ヶ島市富士見」などがある。ステップS1303において、一致するものが複数あると判断した場合(ステップS1303:Yes)、ユーザによる選択をおこなう(ステップS1304)。なお、ユーザによる選択をおこなうにあたっては、入力キーワードに一致した複数の地名をリスト表示し、ユーザからの選択を受け付ける画面表示をおこなう。
このあと、住所名称に対応するエリアコード(図5、符号514参照)を抽出する(ステップS1305)。一方、ステップS1303において、一致するものが単数であると判断した場合(ステップS1303:No)、ステップS1305におけるエリアコードの抽出をおこなう。一致するものが単数である場合とは、具体的には、住所エリア属性のキーワードに「さいたま」などの全国に一つしかない地名が入力されている場合である。なお、本フローチャートにおいては、住所エリア属性のキーワードに「さいたま」が入力されていることを前提としているため、ステップS1303においては、一致するものが単数であると判断する(ステップS1303:No)。
そして、抽出したエリアコード(「さいたま」の場合「11100」)を、バッファ1(たとえば、磁気ディスクドライブ304のドライブバッファ)に保存する(ステップS1306)。なお、バッファの数字は、各属性による検索結果ごとに便宜上定めた数字である。一方、ステップS1302において、照合の結果、一致するものがないと判断した場合(ステップS1302:No)、バッファ1に無効値を保存し(ステップS1307)、一連の処理を終了する。なお、無効値とは、当該入力キーワードに該当する地点がない旨を示すものである。
図14は、地点検索処理におけるジャンルコードの抽出処理の一例を示すフローチャートである。図14に示すフローチャートは、ジャンル属性が設定された入力キーワードからジャンルコードを抽出するときの処理を示している。
図14において、ナビゲーション装置300のCPU301は、ジャンル名称の入力キーワード(「競技場」)と、図5に示したジャンルテーブル530中のジャンル名称とを照合する(ステップS1401)。そして、照合の結果、一致するものがあったか否かを判断する(ステップS1402)。一致するものがあったと判断した場合(ステップS1402:Yes)、一致するものが複数あるか否かを判断する(ステップS1403)。
一致するものが複数ある場合とは、具体的には、住所エリア属性のキーワードに「車」など複数のジャンルに含まれる入力キーワードがある場合である。なお、「車」に該当するジャンルは、たとえば、「自動車用品店」、「自動車販売店」などがある。ステップS1403において、一致するものが複数あると判断した場合(ステップS1403:Yes)、ユーザによる選択をおこなう(ステップS1404)。なお、ユーザによる選択をおこなうにあたっては、入力キーワードに一致した複数のジャンルをリスト表示し、ユーザからの選択を受け付ける画面表示をおこなう。
このあと、ジャンル名称に対応するジャンルコード(図5、符号513参照)を抽出する(ステップS1405)。一方、ステップS1403において、一致するものが単数であると判断した場合(ステップS1403:No)、ステップS1405におけるジャンルコードの抽出をおこなう。一致するものが単数である場合とは、具体的には、ジャンル属性のキーワードに「競技場」など他のジャンルには含まれないワードが入力されている場合である。なお、本フローチャートにおいては、ジャンル属性のキーワードに「競技場」が入力されていることを前提としているため、ステップS1403においては、一致するものが単数であると判断する(ステップS1403:No)。
そして、抽出したジャンルコード(「競技場」の場合「1」)を、バッファ2に保存する(ステップS1406)。一方、ステップS1402において、照合の結果、一致するものがないと判断した場合(ステップS1402:No)、バッファ2に無効値を保存し(ステップS1407)、一連の処理を終了する。
図15は、地点検索処理における名称検索処理の一例を示すフローチャートである。図15に示すフローチャートは、名称属性が設定された入力キーワード、図13に示したエリアコードの抽出処理により抽出されたエリアコード、および図14に示したジャンルコードの抽出処理により抽出されたジャンルコード、を用いて施設を特定する際の処理を示している。
図15において、ナビゲーション装置300のCPU301は、バッファ1に保存されたエリアコード「11100」を取得する(ステップS1501)。そして、取得したエリアコード「11100」と、図5に示した地点情報テーブル510とを照合する(ステップS1502)。そして、照合の結果、一致するものがあったか否かを判断する(ステップS1503)。一致するものがあったと判断した場合(ステップS1503:Yes)、一致した地点情報を抽出し、検索用テーブルを作成する(ステップS1504)。なお、この検索用テーブルの詳細については図16を用いて後述する。
さらに、このあと、バッファ2に保存されたジャンルコード「1」を取得する(ステップS1505)。そして、取得したジャンルコード「1」と、ステップS1504にて作成した検索用テーブル中のジャンルコードとを照合する(ステップS1506)。そして、照合の結果、一致するものがあったか否かを判断する(ステップS1507)。一致するものがあったと判断した場合(ステップS1507:Yes)、一致した地点情報を抽出し、検索用テーブルを再作成する(ステップS1508)。
そして、施設名称の入力キーワード(「浦和」)と、ステップS1508にて再作成した検索用テーブルの中の施設名称とを照合する(ステップS1509)。そして、照合の結果、一致するものがあったか否かを判断する(ステップS1510)。一致するものがあったと判断した場合(ステップS1510:Yes)、一致した地点情報を抽出し、バッファ3に保存する(ステップS1511)。そして、バッファ3に保存した地点情報を検索結果として出力し(ステップS1512)、一連の処理を終了する。
一方、ステップS1503において、エリアコードと、地点情報テーブル510との照合の結果、一致するものがないと判断した場合(ステップS1503:No)、該当する地点情報がない旨を出力し(ステップS1513)、一連の処理を終了する。また、ステップS1507において、ジャンルコードと検索用テーブル中のジャンルコードとの照合の結果、一致するものがないと判断した場合(ステップS1507:No)、ステップS1513に移行する。また、ステップS1510において、施設名称の入力キーワードと、再作成した検索用テーブルの中の施設名称との照合の結果、一致するものがないと判断した場合(ステップS1510:No)、ステップS1513に移行する。
(検索処理において作成される検索用テーブルの一例)
つぎに、図16を用いて、検索処理において作成される検索用テーブルの一例について説明する。図16は、検索処理において作成される検索用テーブルの一例を示す説明図である。
図16において、第1検索用テーブル1610は、取得したエリアコード「11100」と、図5に示した地点情報テーブル510との照合の結果、一致するものがあった場合に、一致した地点情報を抽出したテーブルを示している。すなわち、第1検索用テーブル1610は、地点情報テーブル510の中から、エリアコード「11100」(「さいたま」)を抽出した際の施設情報を示したものである。
第2検索用テーブル1620は、取得したジャンルコード「1」と、第1検索用テーブル1610中のジャンルコードとの照合の結果、一致するものがあった場合に、一致した地点情報を抽出することにより、再作成したテーブルを示している。すなわち、第2検索用テーブル1620は、第1検索用テーブル1610の中からジャンルコード「1」(「競技場」)を抽出した際の、施設名称を示している。
検索結果1630は、施設名称の入力キーワード(「浦和」)と、第2検索用テーブル1620の中の施設名称との照合の結果、一致するものがあった場合に、一致した地点情報を抽出することにより、出力される検索結果を示している。すなわち、検索結果1630は、第2検索用テーブル1620の中から「浦和」の文字を含む施設情報を示している。つまり、「浦和スタジアム」が検索結果1630として出力されることを示している。なお、検索結果1630が出力される際の表示画面については、図17および図18を用いて以下に説明する。
(検索結果を出力した際の表示画面の一例)
つぎに、図17および図18を用いて、検索結果を出力した際の表示画面の一例について説明する。図17は、1件の検索結果を出力した際の表示画面の一例を示す説明図である。
図17において、ディスプレイ312には、検索結果画面1710と、地図画面1720とが表示されている。検索結果画面1710には、検索結果として「浦和スタジアム」の住所などが表示される。また、検索結果画面1710には、「浦和スタジアム」を目的地に設定するか否かの入力を受け付ける選択ボタン1711が表示されている。この選択ボタン1711のうち、ユーザが「はい」を選択すると、「浦和スタジアム」を目的地として設定する。
地図画面1720には、「浦和スタジアム」を中心に、周辺の地図が表示されている。なお、この検索結果画面1710においては、1件のみの検索結果を示しているが、検索結果が複数の場合には、複数件の検索結果を表示することもある。検索結果が複数件表示される際の表示画面については、図18を用いて以下に説明する。
図18は、複数件の検索結果を出力した際の表示画面の一例を示す説明図である。図18において、ディスプレイ312には、複数の検索結果が列挙されて表示されている。この表示画面において、たとえば、「浦和スタジアム」がユーザにより選択されると、図17に示した表示画面に移行する。なお、「浦和スタジアム」以外の他の地点がユーザにより選択された場合にも同様に、それぞれの検索結果画面や地図画面が表示された表示画面に移行する。
以上説明したように、本実施例にかかるナビゲーション装置300によれば、入力キーワードに属性を設定し、当該属性により特定される検索手法を用いて、当該入力キーワードに該当する地点を検索するようにしたので、検索をおこなうにあたりユーザからの検索手法の設定を要することのない、所謂フリーキーワードによる検索をおこなうことができる。したがって、ユーザは、検索手法を設定することによる煩わしさを低減できるとともに、検索手法の誤認を低減することにより、適正な検索結果を得ることができる。
また、本実施例において、複数のキーワード(「さいたま」、「競技場」、「浦和」)を受け付け、各入力キーワードに属性を設定するとともに、各属性により特定される検索手法を用いて、各入力キーワードに該当する地点を検索するようにしたので、属性の異なる複数の入力キーワードの入力を同一画面上にておこなうことができる。換言すれば、従来のように、たとえば、属性を選択してキーワードを入力するといった操作を属性ごとに繰り返すことがない。したがって、ユーザの入力操作の負担を軽減することができる。
また、入力キーワードに設定されている属性の変更をユーザから受け付けるようにしたので、設定された属性がユーザの所望するものと異なる場合に、ユーザの所望する属性に変更することができる。したがって、ユーザの所望する属性を反映させた適正な検索結果を得ることができる。
また、属性の変更を受け付けた履歴情報を記憶するようにし、テーブルおよび履歴情報を参照して、入力キーワードに属性を設定するようにしたので、あるキーワードにおいて、テーブルに予め登録されている属性とユーザの所望する属性とが異なるようなことがあっても、毎回ユーザが属性を変更する必要なく、次回以降の属性の設定時に、ユーザの所望する属性を設定させることができる。
また、キーワードの入力にあたり、候補キーワードを抽出してユーザに提示し、提示した中から受け付けた候補キーワードを入力キーワードとして出力するようにしたので、ユーザのキーワード入力をサポートすることができ、ユーザの入力操作の負担を軽減することができる。
また、ユーザから受け付けた、新規キーワードを当該新規キーワードに対応する属性とともに記憶するようにすれば、キーワードが属性テーブル(図4参照)に記憶されていない場合であっても、ユーザが所望するキーワードを新たに記憶させることができる。
また、入力キーワードが新規キーワードに相当する場合、当該入力キーワードに、新規キーワードに対応する属性を設定するようにすれば、ユーザが所望する属性の検索手法を用いて検索をおこなうことができる。したがって、適正な検索をおこなうことができるとともに、検索の迅速化を図ることができる。
以上説明したように、本発明の地点検索装置、地点検索方法、地点検索プログラム、および記録媒体によれば、検索をおこなうにあたりユーザからの検索手法の設定を要することのない、所謂フリーキーワードによる検索をおこなうことができる。したがって、ユーザは、検索手法を設定することによる煩わしさを低減できるとともに、検索手法の誤認を低減することにより、適正な検索結果を得ることができる。
なお、本実施例で説明した地点検索方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーションなどのコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVDなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネットなどのネットワークを介して配布することが可能な伝送媒体であってもよい。