(57)【要約】      （修正有）【課題】検索のレスポンスが低下する可能性を低減することが可能な検索システム、及び検索プログラムを提供する。【解決手段】検索プログラム２１は、ローカルデータベースと外部データベースとの少なくとも一方から取得した検索対象の候補をディスプレイに表示する候補表示部２１ａと、候補の選択を受け付ける入力受付部２１ｂと、選択された候補がローカルデータベースから取得された場合、通信を利用した外部データベースへの参照を行わず、ローカルデータベースを参照して選択された候補に対応した検索対象を取得し、選択された候補が外部データベースから取得された場合、通信を利用した外部データベースへの参照を行って、選択された候補に対応した検索対象を取得する検索対象取得部２１ｃと、取得された検索対象をディスプレイに表示させる表示制御部２１ｄと、を備える。【選択図】図１
2017207957.tif 000002
【特許請求の範囲】
【請求項１】
ローカルデータベースと外部データベースとの少なくとも一方から取得した検索対象の候補をディスプレイに表示する候補表示部と、
前記候補の選択を受け付ける入力受付部と、
選択された前記候補が前記ローカルデータベースから取得された場合、通信を利用した前記外部データベースへの参照を行わず、前記ローカルデータベースを参照して選択された前記候補に対応した前記検索対象を取得し、
選択された前記候補が前記外部データベースから取得された場合、前記通信を利用した前記外部データベースへの参照を行って、選択された前記候補に対応した前記検索対象を取得する検索対象取得部と、
取得された前記検索対象を前記ディスプレイに表示させる表示制御部と、
を備える検索システム。
【請求項２】
前記候補表示部は、
前記検索対象を検索するための検索情報の少なくとも一部の入力を受け付け、
前記検索情報に基づいて前記ローカルデータベースを検索し、前記通信を利用して前記検索情報に基づいて前記外部データベースを検索し、
前記通信によって前記外部データベースの検索結果が取得されなかった場合、前記ローカルデータベースの検索結果に基づいて前記候補を取得して前記ディスプレイに表示し、
前記通信によって前記外部データベースの検索結果が取得された場合、前記外部データベースの検索結果に基づいて前記候補を取得して前記ディスプレイに表示する、
請求項１に記載の検索システム。
【請求項３】
前記候補表示部は、
前記候補とともに前記検索情報に基づく検索を指示する検索指示部を前記ディスプレイに表示し、
前記入力受付部は、
前記検索指示部による検索の指示を受け付け、
前記検索対象取得部は、
前記検索指示部による検索の指示が受け付けられた場合、前記通信を利用した前記外部データベースへの参照を行って、前記検索情報に対応した前記検索対象を取得する、
請求項２に記載の検索システム。
【請求項４】
コンピュータを、
ローカルデータベースと外部データベースとの少なくとも一方から取得した検索対象の候補をディスプレイに表示する候補表示部、
前記候補の選択を受け付ける入力受付部、
選択された前記候補が前記ローカルデータベースから取得された場合、通信を利用した前記外部データベースへの参照を行わず、前記ローカルデータベースを参照して選択された前記候補に対応した前記検索対象を取得し、
選択された前記候補が前記外部データベースから取得された場合、前記通信を利用した前記外部データベースへの参照を行って、選択された前記候補に対応した前記検索対象を取得する検索対象取得部、
取得された前記検索対象を前記ディスプレイに表示させる表示制御部、
として機能させる検索プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、検索システムおよび検索プログラムに関する。
【背景技術】
【０００２】
従来、入力した文字列に対応する情報をローカルのデータベースとセンターのデータベースとから検索する技術が知られている（例えば、特許文献１）。また、１文字ずつ入力した文字列に部分一致する文字列を検索する技術が知られている（例えば、特許文献２）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許４３０８６７９号公報
【特許文献２】特開２０１１−２３９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
入力した文字列に対応する情報をローカルのデータベースとセンターのデータベースとから検索する技術において、検索システムの外部に存在するセンターのデータベースから検索する場合、センターと通信を行う必要がある。従って、センターとの通信に通信障害等が発生すると検索結果を得るまでの待ち時間が長くなってしまう。特に、文字列が１文字ずつ入力されるなど、検索対象を指定する文字列が変化し得る構成においては、文字列の変化に応じて再検索が行われる場合がある。この場合において、再検索のたびにセンターとの通信に通信障害等が発生すると利用者に大変なストレスを感じさせてしまう。
本発明は、前記課題にかんがみてなされたもので、検索のレスポンスが低下する可能性を低減することが可能な技術を提供することを目的とする。
【課題を解決するための手段】
【０００５】
上記の目的を達成するため、検索システムは、ローカルデータベースと外部データベースとの少なくとも一方から取得した検索対象の候補をディスプレイに表示する候補表示部と、候補の選択を受け付ける入力受付部と、選択された候補がローカルデータベースから取得された場合、通信を利用した外部データベースへの参照を行わず、ローカルデータベースを参照して選択された候補に対応した検索対象を取得し、選択された候補が外部データベースから取得された場合、通信を利用した外部データベースへの参照を行って、選択された候補に対応した検索対象を取得する検索対象取得部と、取得された検索対象をディスプレイに表示させる表示制御部と、を備える。
【０００６】
さらに、上記の目的を達成するため、コンピュータを、ローカルデータベースと外部データベースとの少なくとも一方から取得した検索対象の候補をディスプレイに表示する候補表示部、候補の選択を受け付ける入力受付部、選択された候補がローカルデータベースから取得された場合、通信を利用した外部データベースへの参照を行わず、ローカルデータベースを参照して選択された候補に対応した検索対象を取得し、選択された候補が外部データベースから取得された場合、通信を利用した外部データベースへの参照を行って、選択された候補に対応した検索対象を取得する検索対象取得部、取得された検索対象をディスプレイに表示させる表示制御部、として機能させる検索プログラムが構成される。
【０００７】
すなわち、検索システム、検索プログラムにおいては、選択された候補に対応した検索対象を取得する際に、候補の取得元に基づいて検索対象の参照先を変更する。具体的には、候補がローカルデータベースから取得された場合、当該候補に対応した検索対象がローカルデータベースに記録されていると推定され、通信を利用した外部データベースへの参照は行われない。そして、ローカルデータベースが参照されて候補に対応した検索対象が取得される。従って、外部データベースを参照することなく、確実に検索対象を取得することができ、外部データベースの参照の際の通信障害等により待ち時間が発生することはない。従って、検索のレスポンスが低下する可能性を低減することができる。
【０００８】
なお、外部データベースを参照する際に待ち時間が発生する要因としては、電波障害など、種々の要因による通信障害が発生している場合、種々の要因によって外部データベースの参照を行う外部システムがビジー状態となっている場合、外部データベースの全データのスキャン完了を待機している場合など、種々の要因が挙げられる。
【０００９】
また、候補が外部データベースから取得された場合、当該候補に対応した検索対象が外部データベースに記録されていると推定される。さらに、候補が外部データベースから取得された場合、当該候補を取得する際の通信は適正であったと推定され、通信障害などレスポンスを遅らせる要因が発生していなかった可能性が高い。従って、候補が外部データベースから取得された場合において外部データベースを参照して候補に対応した検索対象を取得することにより、検索のレスポンスが低下する可能性を低減することができる。
【図面の簡単な説明】
【００１０】
【図１】ナビゲーションシステムを示すブロック図である。
【図２】候補表示処理を示すフローチャートである。
【図３】検索処理を示すフローチャートである。
【図４】図４Ａ，図４Ｂ，図４Ｃは、施設検索を行うためのインタフェースの例を示す図である。
【発明を実施するための形態】
【００１１】
ここでは、下記の順序に従って本発明の実施の形態について説明する。
（１）ナビゲーションシステムの構成：
（２）候補表示処理：
（３）検索処理：
（４）他の実施形態：
【００１２】
（１）ナビゲーションシステムの構成：
図１は、本発明の一実施形態であるナビゲーションシステム１０の構成を示すブロック図である。ナビゲーションシステム１０は、ＣＰＵ、ＲＡＭ、ＲＯＭ等を備える制御部２０を備えており、制御部２０は、当該ＲＯＭやローカル記録媒体３０に記録された所望のプログラムを実行することができる。本実施形態においては、このプログラムの一つとしてナビゲーションプログラムを実行可能である。当該ナビゲーションプログラムは、ディスプレイに現在地と現在地周辺の地図を表示する機能と目的地までの経路を探索して案内する機能を制御部２０に実現させることができる。
【００１３】
また、ナビゲーションプログラムは、検索プログラムを含んでおり、制御部２０は、検索プログラム２１の処理により、利用者が指示した検索情報に基づいて施設を検索する機能を実行する。本実施形態において施設は、目的地や目印等として利用可能であり、施設を示す情報は、ナビゲーションシステム１０と外部システム５０とに記録されている。すなわち、ナビゲーションシステム１０が備えるローカル記録媒体３０には、ローカルデータベース３０ａが記録されている。また、外部システム５０は外部データベース５０ａが記録された図示しない外部記録媒体を備えている。施設を示す情報は、これらのローカルデータベース３０ａと外部データベース５０ａとに記録されている。
【００１４】
ナビゲーションシステム１０が使用される車両は、ＧＰＳ受信部４１と車速センサ４２とジャイロセンサ４３と通信部４４とユーザＩ／Ｆ部４５とを備えている。ＧＰＳ受信部４１は、ＧＰＳ衛星からの電波を受信し、図示しないインタフェースを介して車両の現在地を算出するための信号を出力する。車速センサ４２は、車両が備える車輪の回転速度に対応した信号を出力する。制御部２０は、図示しないインタフェースを介してこの信号を取得し、車速を取得する。ジャイロセンサ４３は、車両の水平面内の旋回についての角加速度を検出し、車両の向きに対応した信号を出力する。
【００１５】
制御部２０は、この信号を取得して車両の進行方向を取得する。制御部２０は、車速センサ４２およびジャイロセンサ４３等の出力信号に基づいて車両の走行軌跡を特定することで車両の現在地を取得する。ＧＰＳ受信部４１の出力信号は、車速センサ４２およびジャイロセンサ４３等から特定される車両の現在地を補正するなどのために利用される。
【００１６】
通信部４４は、外部システム５０と無線通信するための回路を備えており、制御部２０と外部システム５０の間では、通信部４４を介して任意の情報が授受される。本実施形態において、制御部２０は、検索対象の候補や検索対象自体を検索するための検索情報（検索ワードや検索条件等）を、通信部４４を介して外部システム５０に対して送信することができる。また、制御部２０は、通信部４４を介して検索対象の候補や検索対象自体を取得することができる。
【００１７】
ユーザＩ／Ｆ部４５は、利用者に種々の情報を提供し、また、利用者から種々の入力を受け付けるためのインタフェース部であり、図示しないディスプレイや操作入力部、スピーカー、マイク等を備えている。制御部２０は、ナビゲーションプログラムの機能により、当該車両の現在地周辺の地図や経路、施設の検索結果等をディスプレイに表示することができる。また、制御部２０は、検索プログラム２１の機能により施設検索を行うことができ、施設検索を行うためのインタフェースをディスプレイに表示させ、当該インタフェースを介して施設検索を行うために行った利用者の入力操作を特定することができる。
【００１８】
外部システム５０は図示しない外部記録媒体を備えており、当該外部記録媒体には外部データベース５０ａが記録されている。外部システム５０が、制御部２０から検索情報を取得すると、外部システム５０は、外部データベース５０ａに基づいて当該検索情報が示す検索条件に合致した検索結果や、当該検索情報が示す検索ワードを含む検索結果を取得する。検索結果は、検索対象の候補または検索対象自体（検索結果）としてナビゲーションシステム１０に対して送信される。制御部２０は、通信部４４を介して、当該検索対象の候補または検索対象を示す情報を受信することができる。
【００１９】
ローカル記録媒体３０には、ローカルデータベース３０ａが記録されている。ローカルデータベース３０ａには、現在地の特定や施設の検索、地図の描画等に利用される地図情報が含まれている。具体的には、ローカルデータベース３０ａは、道路上に設定されたノードの位置等を示すノードデータ，ノード間の道路の形状を特定するための形状補間点データ，ノード同士の連結を示すリンクデータ，道路やその周辺に存在する施設の位置、属性および名称等を示す施設データ等を含んでいる。従って、施設データは、複数個の施設のそれぞれに関するレコードによって構成され、各レコードに対して位置、属性、名称等の複数の項目毎の情報が対応づけられたデータである。なお、本実施形態において各施設の属性には、施設の種類、例えば、レストラン、コンビニエンスストア、公共施設等を示す情報が対応づけられている。
【００２０】
なお、外部システム５０が備える外部データベース５０ａにも施設データが含まれている。ただし、外部データベース５０ａに含まれる施設データは、ローカルデータベース３０ａに含まれる施設データと比較して情報量が多く、また情報が新しい可能性が高い。本実施形態において外部システム５０は、一台または少数台で多数のナビゲーションシステム１０からの検索要求を受け付ける。そして、ローカルデータベース３０ａは、ナビゲーションシステム１０の販売段階でローカル記録媒体３０に記録されている。
【００２１】
本実施形態において、外部データベース５０ａおよびローカルデータベース３０ａは、ともに更新され得る。ローカルデータベース３０ａは各ナビゲーションシステム１０の利用者の操作や設定、利用者の意図等に従って更新され得るが、外部データベース５０ａは外部システム５０の管理者によって管理、更新され得る。従って、外部データベース５０ａの更新は複数の利用者が利用する全てのローカルデータベース３０ａの更新よりも容易である。このため、外部データベース５０ａにおいては、ローカルデータベース３０ａよりも早く、施設データに対して付加される情報（おすすめ度合いを示す属性情報等）や、新設された施設データを示す情報等が追加される可能性が高い。
【００２２】
そこで、本実施形態において、制御部２０は、外部データベース５０ａから取得された候補や検索対象を優先的に表示する。具体的には、制御部２０は、検索の過程で候補や検索対象が外部データベース５０ａから取得された場合に、外部データベース５０ａから取得された情報をユーザＩ／Ｆ部４５のディスプレイに表示させ、ローカルデータベース３０ａから取得された情報は表示させない。
【００２３】
このような検索を行うために、検索プログラム２１は、候補表示部２１ａと入力受付部２１ｂと検索対象取得部２１ｃと表示制御部２１ｄとを備えている。候補表示部２１ａは、ローカルデータベース３０ａと外部データベース５０ａとの少なくとも一方から取得した検索対象の候補をディスプレイに表示する機能を制御部２０に実現させるプログラムモジュールである。本実施形態において、制御部２０は、ユーザＩ／Ｆ部４５によって利用者が入力した検索情報（検索ワードまたは検索条件の少なくとも一方）を受け付ける。当該検索情報による検索においては、検索情報が多いほど検索対象を絞りやすくなるが、検索対象が既定の数（例えば１個）に絞られるまで検索情報の入力が必要となる構成においては、当該検索情報の入力が煩雑となる。また、利用者が検索対象の情報の一部のみ記憶している場合には検索が困難となる。
【００２４】
そこで、本実施形態において制御部２０は、検索情報を示す文字の入力を受け付け、既定数（例えば１文字）の文字の入力を行われる度に検索情報に基づいて検索対象の候補を検索し、当該候補をディスプレイに表示する。具体的には、制御部２０は、ユーザＩ／Ｆ部４５の出力に基づいて利用者が入力した検索情報を特定する。さらに、制御部２０は、通信障害等による通信失敗の発生を示すフラグ（通信失敗フラグ）がＯＦＦであれば、検索情報に基づいてローカルデータベース３０ａを検索し、通信部４４を介して外部システム５０に検索情報を送信して外部データベース５０ａを検索する。本実施形態においては、検索が開始された後の通信失敗フラグがＯＦＦであるため、候補を最初に検索する際には、ローカルデータベース３０ａおよび外部データベース５０ａが検索される。
【００２５】
検索情報に対応する施設データがローカルデータベース３０ａに含まれる場合、制御部２０は、当該施設データが示す施設の名称を候補として取得する。検索情報に対応する施設データが外部データベース５０ａに含まれる場合、外部システム５０は、当該施設データが示す施設の名称を候補として取得し、ナビゲーションシステム１０に対して送信する。制御部２０は、通信部４４を介して当該候補を取得する。
【００２６】
この構成によれば、検索情報の全てなど、詳細な情報を入力しなくても候補の検索を行うことが可能になり、利用者が検索対象の詳細を知らなくても候補を表示することが可能になる。さらに、本実施形態においては、少なくとも最初に候補を取得する際にローカルデータベース３０ａと外部データベース５０ａとの双方が参照される。そして、外部システム５０との通信が行われ、通信の失敗が発生した場合（通信障害、通信のタイムアウト等が発生した場合）、制御部２０は、通信失敗フラグをＯＮにする。このため、少なくとも一回、外部データベース５０ａを参照する処理が行われた後には、通信失敗フラグを参照することにより、外部システム５０との通信のレスポンスが低下した状態であるか否かを特定することが可能になる。
【００２７】
候補が取得されると、制御部２０は、ユーザＩ／Ｆ部４５に制御信号を出力し、ディスプレイ上に候補をリスト表示させる。本実施形態において、候補は施設データが示す施設の名称であるため、ディスプレイ上には施設の名称がリスト表示される。なお、本実施形態においては、外部データベース５０ａから取得された候補が優先的にディスプレイに表示される。具体的には、候補がローカルデータベース３０ａと外部データベース５０ａとから取得された場合、制御部２０は、外部データベース５０ａから取得された候補のみをディスプレイに表示させる。候補がローカルデータベース３０ａのみから取得された場合、制御部２０は、ローカルデータベース３０ａから取得された候補をディスプレイに表示させる。候補が外部データベース５０ａのみから取得された場合、制御部２０は、外部データベース５０ａから取得された候補をディスプレイに表示させる。この構成によれば、更新や追加が容易な外部データベース５０ａから取得された候補が優先的に表示され、より価値の高い情報が優先的に表示されるように構成することができる。
【００２８】
入力受付部２１ｂは候補の選択を受け付ける機能を制御部２０に実現させるプログラムモジュールである。本実施形態において、利用者は、ユーザＩ／Ｆ部４５のディスプレイに表示された候補をタッチ等によって選択することが可能である。候補の選択が行われると、ユーザＩ／Ｆ部４５は選択された候補を示す信号を出力し、制御部２０は、当該信号に基づいて選択された候補を受け付ける。
【００２９】
検索対象取得部２１ｃは、選択された候補の取得元のデータベースによって検索対象の検索先となるデータベースを切り替えて検索対象を取得する機能を制御部２０に実現させるプログラムモジュールである。具体的には、選択された候補がローカルデータベース３０ａから取得された候補である場合、制御部２０は、検索対象取得部２１ｃの機能により、通信を行うことなく検索対象を取得する。すなわち、選択された候補がローカルデータベース３０ａから取得された場合、検索対象はローカルデータベース３０ａに記録されていると推定されるため、ローカルデータベース３０ａを参照すれば、レスポンスを低下させ得る通信を行うことなく検索対象を取得することができる。
【００３０】
また、選択された候補がローカルデータベース３０ａから取得された場合、ディスプレイに表示された候補がローカルデータベース３０ａから取得されたことになり、この状況は、外部システム５０との通信が失敗した場合に発生する。そこで、選択された候補の取得元がローカルデータベース３０ａである場合、制御部２０は、ローカルデータベース３０ａを参照して候補に対応した検索対象を取得する。この構成によれば、検索対象の取得に際してレスポンスが低下する可能性を低減することができる。
【００３１】
選択された候補が外部データベース５０ａから取得された候補である場合、制御部２０は、検索対象取得部２１ｃの機能により、通信を利用して外部データベース５０ａから候補に対応した検索対象を取得する。すなわち、選択された候補が外部データベース５０ａから取得された場合、検索対象は高い確率で外部データベース５０ａに記録されている。さらに、直前の通信によって通信失敗フラグがＯＮにならなかった状況であるため、通信障害などのレスポンスを低下させる要因が発生している可能性も低い。
【００３２】
そこで、制御部２０は、選択された候補を示す情報（本実施形態においては、施設の名称）を、通信部４４を介して外部システム５０に対して送信する。この結果、外部システム５０においては、候補を示す情報を含む施設データを外部データベース５０ａから検索する。そして、外部システム５０は、検索された施設データを検索対象としてナビゲーションシステム１０に対して送信する。制御部２０は、通信部４４を介して当該検索対象を取得する。この構成によれば、レスポンスを低下させることなく、高い確率で検索結果を取得することが可能になる。
【００３３】
表示制御部２１ｄは、取得された検索対象をディスプレイに表示させる機能を制御部２０に実現させるプログラムモジュールである。本実施形態において制御部２０は、検索対象として得られた（検索結果として得られた）施設データから施設名称を抽出し、既定の順序でソートしてディスプレイに表示する。既定の順序としては、例えば、現在位置からの距離が小さい順序が挙げられ、この場合、制御部２０は、各施設データから施設の位置を特定する。また、制御部２０は、ＧＰＳ受信部４１，車速センサ４２，ジャイロセンサ４３の出力信号に基づいて現在位置を取得する。
【００３４】
そして、制御部２０は、各施設と現在位置との距離を取得し、距離が小さい順にソートし、ソートされた順序で各施設をリスト表示するための制御信号をユーザＩ／Ｆ部４５に対して出力する。この結果、ユーザＩ／Ｆ部４５のディスプレイには、現在地からの距離が小さい順に検索対象の施設名称がリスト表示される。
【００３５】
以上のような本実施形態によれば、候補の検索の際に通信の失敗の可能性が高いか否か判定される。そして、候補に対応した検索対象を取得する際に、通信の失敗の可能性が高ければローカルデータベース３０ａが参照され、通信の失敗の可能性が低ければ外部データベース５０ａが参照される。このため、検索対象が取得される際に、通信障害等により待ち時間が発生する可能性は低い。従って、検索のレスポンスが低下する可能性を低減することができる。
【００３６】
（２）候補表示処理：
次に、制御部２０が実行する候補表示処理を説明する。候補表示処理は、検索プログラム２１に記述された処理の一部であり、検索プログラム２１の実行が開始されると、制御部２０は、候補表示部２１ａの機能により、一定期間毎（例えば、１００ｍｓ毎）に図２に示す候補表示処理を実行する。候補表示処理が開始されると、制御部２０は、入力を受け付ける（ステップＳ１００）。すなわち、制御部２０は、ユーザＩ／Ｆ部４５に制御信号を出力して施設検索を行うためのインタフェースをディスプレイに表示させる。また、制御部２０は、当該ユーザＩ／Ｆ部４５を利用した利用者の入力を受け付ける。
【００３７】
図４Ａ，図４Ｂ，図４Ｃは、施設検索を行うためのインタフェースの例を示している。これらの例は、英語の文字を１文字ずつ入力することにより、検索ワードや検索条件を順次特定していくインタフェースである。むろん、言語は英語に限定されず、他の言語であってもよい。図４Ａは、ステップＳ１００において表示されるインタフェースの例である。
【００３８】
同図４Ａにおいては、文字入力部４５ａに下線を付したアルファベットが１文字ずつ表示されており、利用者は、任意の１文字を選択することによって入力する文字を指示することができる。制御部２０は、当該指示された文字を特定し、ユーザＩ／Ｆ部４５に対して制御信号を出力することで、文字が入力された順にこれらの文字を検索情報表示部４５ｂに表示する。
【００３９】
なお、検索情報表示部４５ｂには、初期状態で「どこへ行きたいですか？」という趣旨の質問文が表示されているが、文字入力部４５ａによる入力が開始されると質問文は消去され、入力された文字が表示される。図４Ｂは、検索ワードとしての文字Ａ，Ａ，ｓが順番に入力された場合の例を示している。本実施形態においては、検索ワード以外にも検索条件（現在地の近く等）を文字入力することも可能である。また、図４Ａ，図４Ｂに示すインタフェースは、空白を入力するための空白入力部４５ｃ、検索情報表示部４５ｂに入力された検索情報での検索を指示する検索指示部４５ｄ、検索開始前の状態に戻るための指示を行う指示部４５ｅを備えている。
【００４０】
次に制御部２０は、通信失敗フラグがＯＮであるか否かを判定する（ステップＳ１０５）。通信失敗フラグは新たな検索の開始とともにＯＦＦに初期化され（検索完了またはキャンセルまで再度初期化されない）通信が失敗した場合にＯＮに設定される。制御部２０は、当該通信失敗フラグがＯＮになっているか否かを判定することにより、検索開始後に外部システム５０との通信が通信障害等によって失敗していたか否かを判定する。
【００４１】
ステップＳ１０５において、通信失敗フラグがＯＮになっていると判定されない場合、すなわち、通信が失敗していなかった場合、制御部２０は、ローカルデータベース３０ａおよび外部データベース５０ａを参照して候補を検索する（ステップＳ１１０）。具体的には、制御部２０は、ローカルデータベース３０ａを参照し、入力済の検索情報（検索ワードや検索条件）に合致する施設を検索する。検索結果として施設が１件以上得られた場合、制御部２０は、得られた施設を候補として取得する。
【００４２】
また、制御部２０は、入力済の検索情報を、通信部４４を介して外部システム５０に対して送信する。外部システム５０は、外部データベース５０ａを参照し、入力済の検索情報に合致する施設を検索する。検索結果として施設が１件以上得られた場合、外部システム５０は当該施設を示す情報をナビゲーションシステム１０に対して送信する。制御部２０は、通信部４４を介して当該施設を候補として取得する。
【００４３】
一方、ステップＳ１０５において、通信失敗フラグがＯＮになっていると判定された場合、すなわち、通信が失敗していた場合、制御部２０は、ローカルデータベース３０ａを参照して候補を検索する（ステップＳ１１５）。具体的には、制御部２０は、ローカルデータベース３０ａを参照し、入力済の検索情報（検索ワードや検索条件）に合致する施設を検索する。検索結果として施設が１件以上得られた場合、制御部２０は、得られた施設を候補として取得する。この場合、制御部２０は、通信を行わず、外部データベース５０ａを参照しない。
【００４４】
ステップＳ１１０またはＳ１１５において候補が検索されると、制御部２０は、外部データベース５０ａから候補が取得されたか否かを判定する（ステップＳ１２０）。すなわち、ステップＳ１１０の処理において外部データベース５０ａから１件以上の施設が検索結果として取得された場合に、制御部２０は、外部データベース５０ａから候補が取得されたと判定する。
【００４５】
ステップＳ１２０において、外部データベース５０ａから候補が取得されたと判定された場合、制御部２０は、外部データベース５０ａから取得された候補を表示する（ステップＳ１２５）。すなわち、制御部２０は、ユーザＩ／Ｆ部４５に制御信号を出力し、ステップＳ１１０で取得された候補の中で、外部データベース５０ａから取得された候補を抽出し、インタフェース上にリスト表示させる。
【００４６】
一方、ステップＳ１２０において、外部データベース５０ａから候補が取得されたと判定されない場合、制御部２０は、ローカルデータベース３０ａから取得された候補を表示する（ステップＳ１３０）。すなわち、ステップＳ１１０において新たな通信障害の発生等により外部データベース５０ａから候補が取得されなかった場合やステップＳ１１５が実行された場合には、制御部２０がステップＳ１３０を実行する。
【００４７】
この場合、外部データベース５０ａから候補は取得されていないため、制御部２０は、ユーザＩ／Ｆ部４５に制御信号を出力し、ステップＳ１１０またはＳ１１５においてローカルデータベース３０ａから取得された候補をインタフェース上にリスト表示させる。なお、図４Ｂにおいては、ステップＳ１２５またはステップＳ１３０において、候補がユーザＩ／Ｆ部４５のディスプレイ上のリスト表示部４５ｆに表示された例を示している。図４Ｂにおいては、検索情報として文字列ＡＡｓが入力済である状態が想定されており、これらの文字列が検索ワードとなって施設が候補として検索された結果、「ＡＡｓｈｉｐ」、「ＡＡｓｈｏｐ」，「ＡＡｓｔｏｒｅ」という名称の施設が候補として取得された例が示されている。
【００４８】
ステップＳ１２５が実行されると、制御部２０は、候補表示処理を終了する。ステップＳ１３０が実行されると、制御部２０は、通信タイムアウトが発生したか否かを判定する（ステップＳ１３５）。すなわち、本実施形態において制御部２０は、通信部４４を介して通信が行った場合に、予め決められた期間以上外部システム５０から応答がなければ通信タイムアウトと見なして通信を中断する。そこで、ステップＳ１３５において制御部２０は、ステップＳ１１０において実行した外部システム５０との通信において通信タイムアウトが発生したか否かを判定する。
【００４９】
ステップＳ１３５において、通信タイムアウトが発生したと判定されない場合、制御部２０は、候補表示処理を終了する。ステップＳ１３５において、通信タイムアウトが発生したと判定された場合、制御部２０は、通信障害や外部システム５０のビジー状態が発生していると見なし、通信失敗フラグをＯＮに設定する（ステップＳ１４０）。なお、本実施形態においては、上述のように１００ｍｓ等の短い時間毎に候補表示処理が繰り返し実行されるため、実質的に１文字入力する度に候補の検索が行われることになる。また、ステップＳ１３５等において通信タイムアウトであるか否かを判定するために予め決められた期間だけ応答待ちが行われた場合、文字入力はできない状態になり、応答待ちが終了して候補表示処理の繰り返しが行われた際に再度文字が入力可能になるため、この場合でも１文字入力する度に候補の検索が行われる。
【００５０】
（３）検索処理：
次に、制御部２０が実行する検索処理を説明する。検索処理は、検索プログラム２１に記述された処理の一部である。施設検索を行うためのインタフェースがユーザＩ／Ｆ部４５のディスプレイに表示された状態において、制御部２０は、入力受付部２１ｂの処理により、利用者の入力を受け付ける。当該入力において、利用者が候補の選択または検索指示部４５ｄによる指示を行った場合に、制御部２０は、図３に示す検索処理を実行する。
【００５１】
検索処理が開始されると、制御部２０は、入力受付部２１ｂの処理により、利用者による指示が候補選択による検索の指示であったか否かを判定する（ステップＳ２００）。ステップＳ２００において、利用者による指示が候補選択による検索の指示であったと判定された場合、制御部２０は、検索対象取得部２１ｃの処理により、選択された候補の取得元がローカルデータベース３０ａであったか否かを判定する（ステップＳ２０５）。すなわち、ステップＳ１３０において表示された候補が利用者によって選択されたことによって検索処理が開始されていた場合に、制御部２０は、選択された候補の取得元がローカルデータベース３０ａであったと判定する。
【００５２】
ステップＳ２０５において、選択された候補の取得元がローカルデータベース３０ａであったと判定された場合、すなわち、外部データベース５０ａとの通信が失敗した場合または外部データベース５０ａに候補が存在しなかった場合、制御部２０は、検索対象取得部２１ｃの処理により、ローカルデータベース３０ａを参照して検索対象を取得する（ステップＳ２１０）。すなわち、制御部２０は、利用者が選択した候補を検索情報としてローカルデータベース３０ａから検索対象を検索する。本実施形態において、候補は施設名称であるため、制御部２０は、当該施設名称をキーにしてローカルデータベース３０ａを検索する。
【００５３】
次に、制御部２０は、表示制御部２１ｄの処理により、ローカルデータベース３０ａから取得された検索対象を表示する（ステップＳ２２５）。すなわち、制御部２０は、ユーザＩ／Ｆ部４５に制御信号を出力し、ディスプレイに検索対象を表示させる。具体的には、制御部２０は、検索対象として得られた施設データから施設名称を抽出し、既定の順序でソートしてディスプレイに表示させる。
【００５４】
図４Ｃは、図４Ｂにおいて「ＡＡｓｈｏｐ」という名称の施設が候補として選択された場合の表示例である。同図４Ｃにおいては、「ＡＡｓｈｏｐ」という名称の施設がチェーン店であり、ローカルデータベース３０ａに複数個記録されていた場合の例を示しており、「ＡＡｓｈｏｐ」という名称の施設が現在位置に近い順にソートされ、上から下に並べてリスト表示されている。
【００５５】
一方、ステップＳ２００において、利用者による指示が候補選択による検索の指示であったと判定されない場合は、利用者が候補ではなく検索指示部４５ｄを選択した場合である。また、ステップＳ２０５において、選択された候補の取得元がローカルデータベース３０ａであったと判定されない場合は、利用者がステップＳ１２５で表示された候補を選択した場合である。利用者が候補ではなく検索指示部４５ｄを選択した場合、または、利用者がステップＳ１２５で表示された候補を選択した場合、制御部２０は、検索対象取得部２１ｃの処理により、ローカルデータベース３０ａおよび外部データベース５０ａを参照して検索対象を取得する（ステップＳ２１５）。
【００５６】
利用者が検索指示部４５ｄを選択した場合、制御部２０は、検索情報表示部４５ｂに入力されている文字列を検索情報としてローカルデータベース３０ａから検索対象を検索する。また、制御部２０は、通信部４４を介して当該文字列からなる検索情報を外部システム５０に送信する。この場合、外部システム５０は、当該検索情報としての文字列をキーにして外部システム５０を検索する。検索対象が取得されると、外部システム５０は、ナビゲーションシステム１０に対して検索対象を送信する。制御部２０は、通信部４４を介して当該検索対象を取得する。
【００５７】
一方、利用者がステップＳ１２５で表示された候補を選択した場合、制御部２０は、利用者が選択した候補としての施設名称を検索情報としてローカルデータベース３０ａから検索対象を検索する。また、制御部２０は、通信部４４を介して当該検索情報を外部システム５０に送信する。この場合、外部システム５０は、当該検索情報としての施設名称をキーにして外部システム５０を検索する。検索対象が取得されると、外部システム５０は、ナビゲーションシステム１０に対して検索対象を送信する。制御部２０は、通信部４４を介して当該検索対象を取得する。
【００５８】
次に、制御部２０は、外部データベース５０ａから検索対象が取得されたか否かを判定する（ステップＳ２２０）。すなわち、ステップＳ２１５の処理において外部データベース５０ａから１件以上の施設が検索結果として取得された場合に、制御部２０は、外部データベース５０ａから検索対象が取得されたと判定する。
【００５９】
ステップＳ２２０において、外部データベース５０ａから検索対象が取得されたと判定されない場合、制御部２０は、ステップＳ２２５を実行する。ステップＳ２２０において、外部データベース５０ａから検索対象が取得されたと判定された場合、制御部２０は、表示制御部２１ｄの処理により、外部データベース５０ａから取得された検索対象を表示する（ステップＳ２３０）。
【００６０】
すなわち、制御部２０は、ユーザＩ／Ｆ部４５に制御信号を出力し、ステップＳ２１５で取得された検索対象の中で、外部データベース５０ａから取得された検索対象を抽出し、ディスプレイ上にリスト表示させる。この場合の表示例も図４Ｃのような例となる。すなわち、図４Ｂにおいて「ＡＡｓ」という文字列によって検索が行われ、外部データベース５０ａに「ＡＡｓｈｏｐ」という名称の施設が複数個記録され、他に「ＡＡｓ」という文字列を有する施設が存在しない場合、「ＡＡｓｈｏｐ」という名称の施設が現在位置に近い順にソートされ、上から下に並べてリスト表示される。
【００６１】
以上のように、本実施形態において利用者は、候補の選択の他に、検索情報表示部４５ｂに入力された文字列の検索を指示することができる。すなわち、文字列の部分一致する候補の検索と検索された候補の表示が行われ、候補の選択によって検索対象が検索結果として表示される構成は、簡易な入力によって検索結果を得られる点で好ましい。しかし、利用者が意図する検索対象が候補として挙がっていない場合など、利用者が候補を選択しないで検索対象を取得したいと望む場合もある。
【００６２】
そこで、本実施形態においては、検索指示部４５ｄが設けられており、利用者は当該検索指示部４５ｄを利用して入力済の文字列を検索キーとして検索を実行することができるように構成されている。また、当該検索指示部４５ｄによる検索が指示された場合には、通信を利用した外部データベース５０ａの参照が行われる。従って、ローカルデータベース３０ａよりも価値の高い情報が存在する可能性が高い外部データベース５０ａを利用した検索を行うことが可能である。
【００６３】
（４）他の実施形態：
以上の実施形態は本発明を実施するための一例であり、選択された候補の取得元に基づいて検索対象の取得先を変化させる限りにおいて、他にも種々の実施形態を採用可能である。例えば、ナビゲーションシステム１０とともに移動する移動体は任意であり、車両であっても良いし、歩行者であっても良く、種々の例が想定される。また、検索システムは、車両等に搭載された装置であっても良いし、可搬型の端末によって実現される装置であっても良いし、複数の装置（例えば、クライアントとサーバ）によって実現されるシステムであっても良い。
【００６４】
さらに、検索システムを構成する候補表示部２１ａ、入力受付部２１ｂ、検索対象取得部２１ｃ、表示制御部２１ｄの少なくとも一部が複数の装置に分かれて存在していても良い。むろん、上述の実施形態の一部の構成が省略されてもよいし、処理の順序が変動または省略されてもよい。さらに、通信の失敗は、電波障害等の通信障害や、外部システム５０がビジーであることによる不応答の他にも、種々の状態を通信の失敗と見なす構成を採用可能である。例えば、外部システム５０の外部データベース５０ａに検索情報に対応した検索結果が存在しない場合に通信が失敗したと見なす構成であってもよい。
【００６５】
候補表示部は、ローカルデータベースと外部データベースとの少なくとも一方から取得した検索対象の候補をディスプレイに表示することができればよい。すなわち、一般的な検索においては、検索対象を検索するための検索情報（検索対象に対応づけられた文字等の情報（検索ワード）や検索条件）が多いほど検索対象を絞りやすくなる。しかし、検索対象が既定の数（例えば１個）に絞られるまで検索情報の入力が必要となる構成においては、当該検索情報の入力が煩雑となる。また、利用者が検索対象の情報の一部のみ記憶している場合には検索が困難となる。
【００６６】
そこで、本発明にかかる検索システムの一実施形態においては、検索対象を表示する前に、検索対象の候補をディスプレイに表示する。ディスプレイには、検索対象を想起させるように候補が表示されればよく、種々の態様で候補が表示されてよい。例えば、検索対象に対応づけられた検索ワードの一部や、検索対象に対応づけられた位置情報等が利用者に把握できるように表示される構成等が採用可能である。むろん、候補は文字以外の情報で表示されてもよく、例えば、地図上において検索対象に対応づけられた位置にアイコンが表示される構成等が採用されてもよい。
【００６７】
候補は、ローカルデータベースと外部データベースとの少なくとも一方から取得されればよく、取得元のデータベースに優先順位があってもよい。例えば、外部データベースから候補が得られた場合には、外部データベースから取得された候補を優先的に表示する構成であってもよい。この構成によれば、更新や追加が容易な外部データベースから取得された候補が優先的に表示され、より価値の高い情報が優先的に表示されるように構成することができる。
【００６８】
なお、候補は、当該候補が選択された場合に、選択された候補の取得元のデータベースを特定できるように定義される。取得元のデータベースの特定は、種々の手法で実施可能であり、例えば、各候補に取得元のデータベースを示す情報が対応づけられる構成を採用可能である。また、ローカルデータベースと外部データベースとのいずれか一方から取得された候補のみがディスプレイ上に候補として表示される構成であれば、いずれのデータベースから取得された候補が表示対象となっているのかを特定することにより、候補の取得元を特定することが可能である。
【００６９】
入力受付部は候補の選択を受け付けることができればよい。すなわち、ディスプレイに表示された候補に基づいて利用者が候補を選択でき、選択された候補が特定されるように構成されていれば良い。
【００７０】
検索対象取得部は、選択された候補の取得元のデータベースによって検索対象の検索先となるデータベースを切り替えて検索対象を取得することができればよい。具体的には、選択された候補がローカルデータベースから取得された候補である場合、検索対象取得部は、通信を行うことなく検索対象を取得する。すなわち、選択された候補がローカルデータベースから取得された場合、検索対象は高い確率でローカルデータベースに記録されているため、ローカルデータベースを参照すれば、レスポンスを低下させ得る通信を行うことなく検索対象を取得することができる。
【００７１】
また、外部データベースから取得された候補が優先的に表示され、かつ、外部データベースから候補が取得されなかった場合にのみローカルデータベースから取得された候補が表示される構成において、選択された候補の取得元がローカルデータベースである場合に、検索対象取得部がローカルデータベースを参照して候補に対応した検索対象を取得する構成としてもよい。この構成においては、選択可能な候補の取得元がローカルデータベースであるという状況が発生した段階で、外部データベースの参照には通信障害などのレスポンスを低下させる要因が発生していると推定することができる。従って、この構成によれば、レスポンスが低下する可能性を低減することができる。
【００７２】
さらに、選択された候補が外部データベースから取得された候補である場合、検索対象取得部は、通信を利用して外部データベースから候補に対応した検索対象を取得する。すなわち、選択された候補が外部データベースから取得された場合、検索対象は高い確率で外部データベースに記録されており、通信障害などのレスポンスを低下させる要因が発生している可能性も低い。従って、レスポンスを低下させることなく、高い確率で検索結果を取得することが可能になる。なお、選択された候補が外部データベースから取得された候補である場合、ローカルデータベースから検索結果が取得されてもよいし取得されなくてもよい。
【００７３】
表示制御部は、取得された検索対象をディスプレイに表示させることができればよい。すなわち、利用者が候補を選択することによってディスプレイへの表示を指示した検索対象を検索結果として表示することができればよい。検索対象は、候補に対応していればよく、種々の対象が想定される。例えば、データベースに記録されたレコードの一部の情報が候補であり、他の情報を含む情報が検索対象となる構成が挙げられる。
【００７４】
従って、データベースに複数の施設の情報が複数のレコードとして記録されている構成において、地図上の施設が検索対象となる場合、施設の名称が候補となり、施設の名称、座標、住所、属性等の情報が検索結果となる構成等が挙げられる。検索対象のディスプレイ上での表示態様は、種々の態様が採用可能であり、候補が示す検索ワードを含む検索対象がリスト表示される態様や、地図上において検索対象に対応づけられた位置にアイコンが表示される構成等が採用されてもよい。
【００７５】
さらに、候補は種々の態様で特定されてよく、例えば、候補表示部が、検索対象を検索するための検索情報の少なくとも一部の入力を受け付け、検索情報に基づいてローカルデータベースを検索し、通信を利用して検索情報に基づいて外部データベースを検索する構成としてもよい。すなわち、検索情報の少なくとも一部の入力に応じて仮検索が行われて候補が取得される構成であり、少なくとも最初に候補が取得される際にはローカルデータベースと外部データベースとの双方が参照される構成であってもよい。
【００７６】
この構成によれば、検索情報の全てなど、詳細な情報を入力しなくても候補の検索を行うことが可能になり、利用者が検索対象の詳細を知らなくても候補を表示することが可能になる。また、少なくとも最初に候補を取得するためには、ローカルデータベース３０ａと外部データベース５０ａとの双方が参照されるため、外部データベース５０ａとの通信のレスポンスが低下した状態であるか否かを特定することが可能になる。
【００７７】
さらに、この構成において、通信によって外部データベースの検索結果が取得されなかった場合、ローカルデータベースの検索結果に基づいて候補を取得してディスプレイに表示する構成であってもよい。この構成においては、外部データベースとの通信障害等によって外部データベースから候補が得られなかった場合、ローカルデータベースから取得された候補のみが表示される。
【００７８】
一方、通信によって外部データベースの検索結果が取得された場合、外部データベースの検索結果に基づいて候補を取得して前記ディスプレイに表示する構成であってもよい。この構成においては、更新や追加が容易であってローカルデータベースよりも価値の高い情報が存在する可能性が高い外部データベースに記録された候補が得られた場合には、その候補をディスプレイに表示する構成となる。なお、この場合、ローカルデータベースから取得された候補は表示されなくてもよいし、表示されてもよいが、外部データベースから取得された候補はローカルデータベースから取得された候補よりも優先的に表示されることが好ましい。
【００７９】
さらに、候補表示部が候補とともに検索情報に基づく検索を指示する検索指示部をディスプレイに表示し、入力受付部が検索指示部による検索の指示を受け付け、検索指示部による検索の指示が受け付けられた場合、検索対象取得部が、通信を利用した外部データベースへの参照を行って、検索情報に対応した検索対象を取得する構成であってもよい。すなわち、検索情報の一部によって候補が表示され、候補の選択によって検索対象が検索結果として表示される構成は、簡易な入力によって検索結果を得られる点で好ましい。
【００８０】
しかし、利用者が意図する検索対象が候補として挙がっていない場合など、利用者が候補を選択しないで検索対象を取得したいと望む場合もある。そこで、検索指示部が設けてあれば、利用者は当該検索指示部を利用して検索情報に基づく検索を実行することが可能になる。また、当該検索指示部による検索が指示された場合に通信を利用した外部データベースの参照が行われることにより、候補を利用しない検索において、更新や追加が容易であってローカルデータベースよりも価値の高い情報が存在する可能性が高い外部データベースを利用した検索を行うことが可能である。むろん、検索指示部による検索が指示された場合に、ローカルデータベースを参照した検索が行われてもよい。
【００８１】
さらに、本発明のように、選択された候補の取得元に基づいて検索対象の取得先を変化させる手法は、プログラムや方法としても適用可能である。また、以上のようなシステム、プログラム、方法は、単独の装置として実現される場合や、複数の装置によって実現される場合が想定可能であり、各種の態様を含むものである。例えば、以上のような手段を備えたナビゲーションシステムや方法、プログラムを提供することが可能である。また、一部がソフトウェアであり一部がハードウェアであったりするなど、適宜、変更可能である。さらに、システムを制御するプログラムの記録媒体としても発明は成立する。むろん、そのソフトウェアの記録媒体は、磁気記録媒体であってもよいし光磁気記録媒体であってもよいし、今後開発されるいかなる記録媒体においても全く同様に考えることができる。
【符号の説明】
【００８２】
１０…ナビゲーションシステム、２０…制御部、２１…検索プログラム、２１ａ…候補表示部、２１ｂ…入力受付部、２１ｃ…検索対象取得部、２１ｄ…表示制御部、３０…ローカル記録媒体、３０ａ…ローカルデータベース、４１…ＧＰＳ受信部、４２…車速センサ、４３…ジャイロセンサ、４４…通信部、４５…ユーザＩ／Ｆ部、４５ａ…文字入力部、４５ｂ…検索情報表示部、４５ｃ…空白入力部、４５ｄ…検索指示部、４５ｅ…指示部、４５ｆ…リスト表示部、５０…外部システム、５０ａ…外部データベース
【図１】
2017207957.tif 000003
【図２】
2017207957.tif 000004
【図３】
2017207957.tif 000005
【図４】
2017207957.tif 000006