施設検索プログラム
【課題】素早い検索が可能で処理の負荷が少ない検索プログラムを提供すること。
【解決手段】地図データに予めメッシュに切っておく。地図上の施設の位置がどのメッシュの区画にあるかを調べ、施設があるメッシュの区画を“1”、ないメッシュ区画を“0”と表した文字列を使って施設の位置情報を格納しておく。ユーザから現在位置の緯度経度情報と最寄り施設の検索条件が入力されると、現在位置を中心とした検索範囲を、メッシュ状の地図のメッシュの区画の位置に基づいた“0”と“1”からなる文字列で表す。そして、施設の位置を表す文字列と検索範囲を表す文字列の論理積を取ることにより、検索範囲内に施設があるか否かの情報を取得する。
【解決手段】地図データに予めメッシュに切っておく。地図上の施設の位置がどのメッシュの区画にあるかを調べ、施設があるメッシュの区画を“1”、ないメッシュ区画を“0”と表した文字列を使って施設の位置情報を格納しておく。ユーザから現在位置の緯度経度情報と最寄り施設の検索条件が入力されると、現在位置を中心とした検索範囲を、メッシュ状の地図のメッシュの区画の位置に基づいた“0”と“1”からなる文字列で表す。そして、施設の位置を表す文字列と検索範囲を表す文字列の論理積を取ることにより、検索範囲内に施設があるか否かの情報を取得する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ナビゲーションシステムにおける施設検索プログラムに関する。
【背景技術】
【0002】
車両等での移動時などに、現在位置またはある地点から最も近い特定の施設を知りたい場合、カーナビ等のナビゲーションシステムを使いそれを求めている。
図11及び図12は、従来の検索システムを説明する図である。
【0003】
例えば、図11において、現在位置をM1とし、ある検索範囲内のうち最寄りの施設を知りたい場合を考える。
従来、カーナビ等に使われるデータベースにおいて、各施設の位置情報は、図12のような緯度経度を数値変換した値として、施設情報DB(データベース)に格納されている。ある地点を中心に最も近い施設を検索する場合、まず現在位置である地点M1の位置情報として、GPS(Global Positioning System)などから得た緯度経度情報を数値変換し、算出する。地点M1を中心としたある範囲を検索範囲(この例では、緯度x1〜x2、経度y1〜y2)とし、その範囲内にある施設を抽出する。この例では、施設F1〜F7が該当する。そして、地点M1と各施設の距離を演算して求め、演算結果から最も距離が近い施設を最寄りの施設としていた。
【0004】
特許文献1には、ナビゲーションシステムにおいて、セルマトリクス(メッシュ)から所定数の集合セル(区画群)を集め、少なくとも一つのPOI(施設)を持つ集合セル配列(複数の区画群)を形成し、所定位置からの距離に基づいて集合セル配列を中の集合セル(区画群)をソートし、ソートされた集合セルのPOIの距離レベルに基づいて特定のPOIを検索する発明が開示されている。
【特許文献1】特開2000−61503号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかしながら、現在位置からの最寄りの施設を求める場合、従来の方法では検索範囲の全ての施設と現在位置との距離を求め、もっとも値の小さいものを最寄りの施設としているため、全ての施設との距離計算が必要となり、施設が多くなると演算による負荷が増大していた。また、ナビゲーションシステムの利用において、現在位置から最も近い施設を知りたい場合の他に、例えば進行方向の道路沿いに施設があるか等、任意の検索範囲に施設があるかを知りたい場合がある。この場合、任意の形の検索範囲内の施設を検索するには、複数回の検索を行うか、検索条件を複雑にする必要がある等、検索が非常に困難であった。
【0006】
本発明は、上記問題を鑑みてなされたもので、素早い検索が可能で処理の負荷が少ない検索プログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明は、上記課題を解決するため、下記のような構成を採用した。
すなわち、本発明の一態様によれば、本発明のプログラムは、コンピュータに、メッシュ状に区切られた地図データと施設の緯度経度情報とに基づいて、該施設がメッシュ状に区切られた地図データのどの位置のメッシュの区画に属するかを算出する手順と、該施設が属するメッシュの区画の地図データ内での位置を、メッシュの区画の配列を文字列として表す文字列で表す手順と、該施設の位置情報を前記文字列として格納する手順と、を実行させることを特徴とする。
【0008】
本発明のプログラムは、前記施設が存在するか否かを検索する範囲である検索範囲の指定に基づき、該検索範囲を該検索範囲が含むメッシュの区画の位置を表す文字列として作成する検索条件生成手順と、前記文字列として表された該施設の位置が、前記検索条件生成手段により作成された検索範囲に含まれるか否かを、該施設の位置を表す文字列と前記検索範囲を表す文字列のパターンマッチングをすることにより行う文字列パターンマッチング手順をさらに備えることもできる。
【0009】
また、本発明のプログラムは、前記検索条件生成手順は、波紋状に検索範囲を広くする複数の検索条件を作成してもよい。
【発明の効果】
【0010】
本発明によれば、最寄りの施設を素早く検索することができ、処理の負荷も少なく、また任意の範囲の施設を容易に検索することができる。
【発明を実施するための最良の形態】
【0011】
以下、図面を参照しながら、本発明の第一の実施の形態を説明する。
図1は、本発明の実施の形態のシステム構成図である。
検索を行う利用者は、カーナビゲーションシステム、パーソナルコンピュータ、または携帯端末などの端末10からインターネット等の通信網20を介して、サービス提供者の提供するデータセンター30に検索要求を送信する。
【0012】
データセンター30は、検索要求送受信装置40で検索要求を受信し、利用者の現在位置の緯度経度、検索範囲などの情報を施設検索システム50に渡す。施設検索システム50は、施設検索プログラム51と施設情報DB52を用いて検索を行い、その結果を利用者の端末10に送信する。
【0013】
以下、本発明の実施の形態における施設の緯度経度情報を文字列として格納する方法について図2〜図5を参照して説明する。
図2は、施設の緯度経度情報を文字列として施設情報DBに格納する処理のフローチャートである。
【0014】
図3は、本発明の第一の実施の形態で用いられる地図および施設を表す図である。
図4は、図3の地図をメッシュで区切ったものである。
図5(a)は、施設の位置を文字列で表したものであり、図5(b)は、図5(a)のデータを文字列として格納した施設情報DBを表す図である。
【0015】
まず、図2を参照すると、ステップ201において、施設の位置情報を格納しているデータベースから施設の緯度経度情報を読み出す。施設の緯度経度情報は、従来と同様の緯度経度を数値変換したものである。なお、施設の緯度経度情報は、従来と同様の緯度経度を数値変換したものでなくとも、施設の位置を表す位置データであれば良い。また、緯度経度情報は外部から送られてきたものを受信しても良い。
【0016】
ステップ202において、緯度経度の値が、メッシュ状に区切られた地図のメッシュのどの区画に属するかを算出する。これは、例えばメッシュの区画と緯度経度の範囲を対応させたテーブルに基づいて決められる。
【0017】
ステップ203において、施設が含まれるメッシュの区画の値を“1”、それ以外を“0”とし、それらを結合したものをその施設の緯度経度情報として施設情報DBに格納する。すなわち、メッシュ状に区切られた地図内において、施設が含まれるメッシュの区画の位置を、地図内の各メッシュ区画単位で文字列で表すようにする。施設が含まれていないメッシュ区画は“0”で表し、施設が含まれているメッシュ区画を“1”で表すと、メッシュ状に区切られた地図は、“0”と“1”が2次元に配列された文字列で表されることになる。このように、文字列は“1”および“0”の組み合わせでも、他の情報の組み合わせでも良い。
【0018】
具体的には、以下ようになる。
まず、図4のように、図3の地図全体をメッシュで区切り、各メッシュ区画を特定する番号を振る。図4の場合には、x方向とy方向に順番に番号を振り、各メッシュ区画は、x方向の番号と、y方向の番号の組み合わせで特定されることになる。例えば、メッシュの区画の境界がどの緯度経度にあるかを予め知っておけば、メッシュの区画と緯度経度の範囲の対応が分かり、メッシュの区画の番号と緯度経度の範囲を対応させたテーブルの作成が可能となる。このようなテーブルは、メッシュ状に区切られた地図データとして、各施設がメッシュの区画のどの位置に存在するかを算出するために用いられ、データベース等に予め格納しておいてもよい。メッシュ状に区切られた地図データはテーブルでなくとも、緯度経度の値をメッシュの区画の番号に変換するための式でもよい。次に、地図上の各施設(F1〜F7)がメッシュの区画のどの番号に属するかを算出する。
【0019】
例えば、施設F1はx方向(経度)の19番、y方向(緯度)の19番に存在することになる。そして、図5(a)に示すように、施設が含まれるメッシュの区画の値を“1”、それ以外を“0”とし、それらを結合し1つの文字列としたものを図5(b)に示すように緯度経度情報として施設情報DBに格納する。例えば、施設F1はx方向の19番、y方向の19番に存在するので、x方向(経度)の位置を示すデータは“0”が18個続き、19番目に“1”、その後“0”が続く1つの文字列として表される。y方向(緯度)のデータも同様である。
【0020】
以上のようにして、各施設の緯度経度情報が文字列として施設情報DBに格納される。
格納する場合には、文字列をランレングス法を用いて格納しても良い。
次に、利用者の現在位置から最寄りの施設を検索する方法について、図6〜図8を参照して説明する。
【0021】
図6は、本発明の第一の実施の形態の施設検索プログラムのフローチャートである。
図7は、本発明の第一の実施の形態の検索処理を説明するための図である。
図8は、本発明の第一の実施の形態の検索処理の流れを示す図である。
【0022】
まず、図6を参照する。利用者が最寄りの施設の検索を行おうとすると、利用者の端末から各種情報とともに施設検索要求が送信される。
ステップ601において、利用者からの施設検索要求を受け付け、利用者の現在位置の緯度経度、検索範囲などの情報を受信する。本発明の第一の実施の形態においては、検索範囲の中心は利用者の現在位置としているが、任意の位置とすることも可能である。
【0023】
ステップ602において、利用者の現在位置の属する区画(メッシュの区画の番号)を算出する。これは、図2の処理と同様に、例えば、メッシュの区画の番号と緯度経度の範囲を対応させたテーブルから求めることができる。
【0024】
ステップ603において、ステップ602において算出した現在位置を中心として、範囲(1)の区画群にある施設を検索するための文字列を生成する。範囲(1)の区画群にある施設を検索するための文字列は、現在位置を中心として範囲(1)のメッシュの区画の値を“1”、それ以外を“0”とし、それらを一つに結合したものである。次に範囲(2)にある施設を検索するための文字列を生成し、同様に範囲(n)まで繰り返す。ここで、nはステップ601において受信した検索範囲である。本発明の第一の実施の形態においては、n=4としている。
【0025】
図7に対応させて説明すると、利用者の現在位置はM1であり、メッシュの区画の番号では(13、12)に存在する。そして、M1を中心とする範囲(1)の区画群は、M1の周りの3×3メッシュ区画群であり、メッシュの区画の番号ではx方向は12〜14、y方向は11〜13である。M1を中心とする範囲(2)の区画群は、M1の周りの5×5メッシュ区画群であり、メッシュの区画の番号ではx方向は11〜15、y方向は10〜14である。同様に、M1を中心とする範囲(4)の区画群までそれぞれ異なる斜線で表されている。
【0026】
範囲(1)の区画群にある施設を検索するための文字列は図8の801に対応する。同様に802〜803はそれぞれ範囲(2)〜(4)の区画群にある施設を検索するための文字列を表す。すなわち、範囲(1)を示す文字列は、x方向は、12〜14までの文字が“1”で、他の文字が“0”の文字列となり、y方向は、11〜13までの文字が“1”で、他の文字が“0”の文字列となる。範囲(2)〜(4)についても同様である。
【0027】
ステップ604において、ステップ603で作成された文字列を検索条件805として、施設情報DB806を検索し、その結果を返す。ここで施設の検索は、文字列のパターンマッチングにより検索する。詳しく述べると、例えば、M1を中心とする範囲(3)の区画群に施設があるか調べる場合、検索条件の文字列は803のようになるが、これと施設情報DB806にある施設の緯度経度を表す各施設の文字列とのパターンマッチングを行う。範囲(3)の区画群に施設F1があるか否かを調べるには、文字列803と、施設F1の緯度経度情報を表す文字列807のx方向の文字列とy方向のそれぞれの文字列とで、各メッシュ区画ごとに各メッシュの区画の値の論理積をとる。そうすると、それぞれの文字列において、各メッシュの区画の値が共に“1”であるかないかでx方向、y方向それぞれについて、施設F1が範囲(3)の中にあるか否かが分かる。そして、論理積をとった結果、x方向、y方向の文字列の両方について、施設F1の緯度経度情報を示す文字列の“1”が、範囲(3)を示す文字列の“1”に含まれている場合、施設F1は範囲(3)の区画群にあると分かる。
【0028】
具体的には、例えば、文字列803と807でパターンマッチングを行った場合、x方向およびy方向の文字列の各メッシュの区画の値の論理積をとると、x方向、y方向ともに各メッシュの区画の値で共に“1”の箇所がないので、範囲(3)の区画群に施設F1は存在しないことが分かる。
【0029】
例えば、範囲(3)の区画群に施設F4があるか調べるにあたり、文字列803と810でパターンマッチングを行った場合、x方向およびy方向の文字列の各メッシュの区画の値の論理積をとると、y方向の14番目に共に“1”があるが、x方向には共通する“1”の箇所がないため、範囲(3)の区画群に施設F4は存在しないが分かる。
【0030】
例えば、範囲(3)の区画群に施設F6があるか調べるにあたり、文字列803と812でパターンマッチングを行った場合、x方向およびy方向の文字列の各メッシュの区画の値の論理積をとると、x方向の16番目、y方向の9番目に共に“1”があるので、範囲(3)の区画群に施設F6が存在することが分かる。
【0031】
上記のような検索を、例えば範囲(1)の区画群に施設があるかを調べる場合、文字列801を用いて、各施設の緯度経度情報の文字列807〜813に対してそれぞれ行う。
ステップ604において、ステップ603で作成された文字列を検索条件805として、施設情報DB806を検索するが、本発明の第一の実施の形態においては、複数の検索条件を範囲(1)の条件から順に優先順位を高く(重み付け)して、一斉に検索を行う。そのために、本発明の第一の実施の形態においては、データベースエンジンとして「Shunsaku」(登録商標)を用いる。
【0032】
Shunsakuとは、データの多様性や変化に柔軟に対応し、情報活用基盤を提供するXML型データベースエンジンである。本発明の第一の実施の形態においては、Shunsakuの特性として、下記を利用する。
(1)高度検索技術
OR条件やNOT条件を組み合わせた複雑な検索条件でも一定のスピードで検索するSIGMA検索技術(一方向逐次処理による高速文字列照合アルゴリズム)と複数のアプリケーションから検索要求が一度に集中しても安定したレスポンスを発揮するハイトラフィック技術を採用することで、パターン検索、文字列検索、ワード検索などの目的のデータ検索に合う検索式を指定することが可能な特性。
(2)サーバ追加(スケールアウト)で検索性能を均一化
検索用のデータを複数台サーバ(サーチサーバ)に分散配置し、並列で検索処理を実行可能な特性。
【0033】
Shunsakuについては、日経BP企画編著、「革新のXML型データベースエンジン「Shunsaku」」、2004年3月24日、日経BP企画、に詳しく記載されている。
【0034】
これにより、複数の検索条件による検索を一度に行うことができ、効率的な検索が可能となる。
上記のような方法で、各条件に対する検索を行うことにより、それぞれの検索結果814が得られる。すると、範囲(1)および(2)の区画群には施設は存在せず、範囲(3)の区画群に施設F6、範囲(4)の区画群に施設F4が存在することが分かる。このように、現在位置を中心に波紋状に検索範囲を広げていくことで、最寄りの施設を発見することができる。
【0035】
ステップ605において、範囲(1)の区画群に施設が含まれているか否かをチェックし、含まれていた場合、ステップ609に進む。含まれていなかった場合、ステップ606に進む。ステップ606では、範囲(2)の区画群に施設が含まれているか否かをチェックし、含まれていた場合、ステップ609に進む。含まれていなかった場合、ステップ607に進む。以下同様に、範囲(n)の区画群に施設が含まれているかまでチェックする。前述のように本発明の第一の実施の形態においてはn=4としている。
【0036】
ステップ609において、最寄りの施設の検索結果を利用者に返す。もし、同一区画群内に複数の施設があった場合、複数の施設を検索結果として返す。ただし、メッシュの区画のサイズが大きいと施設の位置の精度が落ち、また、検索範囲の設定が荒くなるので、最寄りの施設の位置の正確性が失われる。しかし、メッシュの区画のサイズをより細かくすることで、従来の距離計算による最寄りの施設の検索結果に近い精度を出すことが可能である。1件も施設が含まれていない場合は検索結果を「要求範囲内には施設がない」とする。
【0037】
以上のようにして、最寄りの施設が求められる。このように、文字列パターンマッチングにより検索すると、各施設との距離の演算の必要がないため、最寄りの施設を素早く検索することができ、処理の負荷も少なくできる。
【0038】
次に第二の実施の形態について、図9及び図10を参照して説明する。
第一の実施の形態においては、現在位置を中心に波紋状に検索範囲を大きくしていき、最寄りの施設を発見したが、第二の実施の形態においては任意の形の検索範囲において施設があるかないかを調べる。
【0039】
図9は、本発明の第二の実施の形態の検索処理を説明するための図である。
図10は、本発明の第二の実施の形態の検索処理の流れを示す図である。
第二の実施の形態においても、システムや施設情報DBなどは第一の実施の形態と同じである。そして、施設の緯度経度情報も同様に文字列で格納されている。
【0040】
例えば、検索範囲は利用者が端末上で範囲を指定することにより決定される。
図9において、x方向のメッシュの区画の番号で8〜9番、y方向のメッシュの区画の番号で7〜17番の2×11のメッシュ区画の範囲と、x方向のメッシュの区画の番号で10〜20番、y方向のメッシュの区画の番号で7〜8番の11×2のメッシュ区画の範囲に施設があるかを検索したい場合を説明する。上記のそれぞれの範囲を範囲(1)および(2)とし、図9において、それぞれ異なる斜線で表されている。
【0041】
施設検索プログラムは、範囲(1)および(2)に施設があるか検索するための文字列を生成する。範囲(1)を検索するための文字列は、x方向は範囲(1)のx方向のメッシュの区画の番号8〜9の値を“1”とし、それ以外を“0”としたものを結合したもの。y方向は範囲(1)のy方向のメッシュの区画の番号7〜17の値を“1”とし、それ以外を“0”としたものを結合したものである。これは図10の文字列1001に対応する。範囲(2)を検索するための文字列についても同様に作成され、文字列1002のようになる。
【0042】
そして範囲(1)および(2)に施設があるか否かを文字列1001および1002を検索条件1003とし、施設情報DB1004の各施設の緯度経度情報を表す文字列と文字列パターンマッチングを行うことにより検索する。これは第一の実施の形態と同様である。
【0043】
すると検索結果1005により、範囲(1)に施設F4、範囲(2)に施設F7があることが分かる。
以上のように、検索したい範囲に対応した文字列を作成し、文字列パターンマッチングにより検索を行うことで、容易に任意の範囲について検索を行うことができる。
【0044】
以上、本発明の実施の形態を、図面を参照しながら説明してきたが、本発明が適用される施設検索システムは、その機能が実行されるのであれば、上述の実施の形態に限定されることなく、単体の装置であっても、複数の装置からなるシステムあるいは統合装置であっても、LAN、WAN等のネットワークを介して処理が行なわれるシステムであってもよい。
【0045】
また、バスに接続されたCPU、ROMやRAMのメモリ、入力装置、出力装置、外部記録装置、媒体駆動装置、ネットワーク接続装置で構成されるシステムでも実現できる。すなわち、前述してきた実施の形態のシステムを実現するソフトェアのプログラムコードを記録したROMやRAMのメモリ、外部記録装置、可搬記録媒体を、施設検索システムに供給し、その施設検索システムのコンピュータがプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。
【0046】
この場合、可搬記録媒体等から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記録した可搬記録媒体等は本発明を構成することになる。
【0047】
プログラムコードを供給するための可搬記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、DVD−ROM、DVD−RAM、磁気テープ、不揮発性のメモリーカード、ROMカード、電子メールやパソコン通信等のネットワーク接続装置(言い換えれば、通信回線)を介して記録した種々の記録媒体などを用いることができる。
【0048】
また、コンピュータ(情報処理装置)がメモリ上に読み出したプログラムコードを実行することによって、前述した実施の形態の機能が実現される他、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOSなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施の形態の機能が実現される。
【0049】
さらに、可搬型記録媒体から読み出されたプログラムコードやプログラム(データ)提供者から提供されたプログラム(データ)が、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施の形態の機能が実現され得る。
すなわち、本発明は、以上に述べた実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内で種々の構成または形状を取ることができる。
【0050】
(付記1) コンピュータに、
メッシュ状に区切られた地図データと施設の緯度経度情報とに基づいて、該施設がメッシュ状に区切られた地図データのどの位置のメッシュの区画に属するかを算出する順と、
該施設が属するメッシュの区画の地図データ内での位置を、メッシュの区画の配列を文字列として表す文字列で表す手順と、
該施設の位置情報を前記文字列として格納する手順と、
を実行させるためのプログラム。
(付記2) 前記施設が存在するか否かを検索する範囲である検索範囲の指定に基づき、該検索範囲を該検索範囲が含むメッシュの区画の位置を表す文字列として作成する検索条件生成手順と、
前記文字列として表された該施設の位置が、前記検索条件生成手段により作成された検索範囲に含まれるか否かを、該施設の位置を表す文字列と前記検索範囲を表す文字列のパターンマッチングをすることにより行う文字列パターンマッチング手順をさらに備える請求項1記載のプログラム。
(付記3) 前記検索条件生成手順は、波紋状に検索範囲を広くする複数の検索条件を作成することを特徴とする付記2記載のプログラム。
(付記4) 前記文字列は2値データに基づく文字列であることを特徴とする付記1乃至3記載のプログラム。
(付記5) 前記文字列パターンマッチング手順により、該施設が前記複数の検索範囲に含まれていた場合、前記複数の検索範囲の内、優先順位の高い検索範囲に含まれる該施設の情報を送信する手順をさらに備える付記1乃至4記載のプログラム。
(付記6) 前記検索範囲は、任意の範囲の検索範囲であることを特徴とする付記2記載のプログラム。
(付記7) コンピュータに、
メッシュ状に区切られた地図データと施設の位置データとに基づいて、該施設がメッシュ状に区切られた地図データのどの位置のメッシュの区画に属するかを算出する手順と、
該施設が属するメッシュの区画の地図データ内での位置を、メッシュの区画の配列を文字列として表す文字列で表す手順と、
該施設の位置情報を前記文字列として格納する手順と、
を実行させるためのプログラム。
(付記8)メッシュ状に区切られた地図データと施設の緯度経度情報とに基づいて、該施設がメッシュ状に区切られた地図データのどの位置のメッシュの区画に属するかを算出するステップと、
該施設が属するメッシュの区画の地図データ内での位置を、メッシュの区画の配列を文字列として表す文字列で表すステップと、
該施設の位置情報を前記文字列として格納するステップと、
を備える施設検索方法。
(付記9) 前記施設が存在するか否かを検索する範囲である検索範囲の指定に基づき、該検索範囲を該検索範囲が含むメッシュの区画の位置を表す文字列として作成するステップと、
前記文字列として表された該施設の位置が、検索範囲に含まれるか否かを、該施設の位置を表す文字列と前記検索範囲を表す文字列のパターンマッチングをすることにより行う文字列パターンマッチング手段をさらに備える付記8記載の施設検索方法。
(付記10)検索範囲に基づき検索条件を文字列として作成するステップは、波紋状に検索範囲を広くする複数の検索条件を作成することを特徴とする付記9記載の施設検索方法。
【図面の簡単な説明】
【0051】
【図1】本発明の実施の形態のシステム構成図である。
【図2】施設の緯度経度情報を文字列として施設情報DBに格納する処理のフローチャートである。
【図3】本発明の第一の実施の形態で用いられる地図および施設を表す図である。
【図4】図3の地図をメッシュで区切ったものである。
【図5】(a)は施設の位置を文字で表したものであり、(b)は図5(a)のデータを文字列として格納した施設情報DBを表す図である。
【図6】本発明の第一の実施の形態の施設検索プログラムのフローチャートである。
【図7】本発明の第一の実施の形態の検索処理を説明するための図である。
【図8】本発明の第一の実施の形態の検索処理の流れを示す図である。
【図9】本発明の第二の実施の形態の検索処理を説明するための図である。
【図10】本発明の第二の実施の形態の検索処理の流れを示す図である。
【図11】従来の検索処理を説明するための図である。
【図12】従来の施設情報DBの各施設の緯度経度情報を表す図である。
【符号の説明】
【0052】
10 端末
20 通信網
【技術分野】
【0001】
本発明は、ナビゲーションシステムにおける施設検索プログラムに関する。
【背景技術】
【0002】
車両等での移動時などに、現在位置またはある地点から最も近い特定の施設を知りたい場合、カーナビ等のナビゲーションシステムを使いそれを求めている。
図11及び図12は、従来の検索システムを説明する図である。
【0003】
例えば、図11において、現在位置をM1とし、ある検索範囲内のうち最寄りの施設を知りたい場合を考える。
従来、カーナビ等に使われるデータベースにおいて、各施設の位置情報は、図12のような緯度経度を数値変換した値として、施設情報DB(データベース)に格納されている。ある地点を中心に最も近い施設を検索する場合、まず現在位置である地点M1の位置情報として、GPS(Global Positioning System)などから得た緯度経度情報を数値変換し、算出する。地点M1を中心としたある範囲を検索範囲(この例では、緯度x1〜x2、経度y1〜y2)とし、その範囲内にある施設を抽出する。この例では、施設F1〜F7が該当する。そして、地点M1と各施設の距離を演算して求め、演算結果から最も距離が近い施設を最寄りの施設としていた。
【0004】
特許文献1には、ナビゲーションシステムにおいて、セルマトリクス(メッシュ)から所定数の集合セル(区画群)を集め、少なくとも一つのPOI(施設)を持つ集合セル配列(複数の区画群)を形成し、所定位置からの距離に基づいて集合セル配列を中の集合セル(区画群)をソートし、ソートされた集合セルのPOIの距離レベルに基づいて特定のPOIを検索する発明が開示されている。
【特許文献1】特開2000−61503号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかしながら、現在位置からの最寄りの施設を求める場合、従来の方法では検索範囲の全ての施設と現在位置との距離を求め、もっとも値の小さいものを最寄りの施設としているため、全ての施設との距離計算が必要となり、施設が多くなると演算による負荷が増大していた。また、ナビゲーションシステムの利用において、現在位置から最も近い施設を知りたい場合の他に、例えば進行方向の道路沿いに施設があるか等、任意の検索範囲に施設があるかを知りたい場合がある。この場合、任意の形の検索範囲内の施設を検索するには、複数回の検索を行うか、検索条件を複雑にする必要がある等、検索が非常に困難であった。
【0006】
本発明は、上記問題を鑑みてなされたもので、素早い検索が可能で処理の負荷が少ない検索プログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明は、上記課題を解決するため、下記のような構成を採用した。
すなわち、本発明の一態様によれば、本発明のプログラムは、コンピュータに、メッシュ状に区切られた地図データと施設の緯度経度情報とに基づいて、該施設がメッシュ状に区切られた地図データのどの位置のメッシュの区画に属するかを算出する手順と、該施設が属するメッシュの区画の地図データ内での位置を、メッシュの区画の配列を文字列として表す文字列で表す手順と、該施設の位置情報を前記文字列として格納する手順と、を実行させることを特徴とする。
【0008】
本発明のプログラムは、前記施設が存在するか否かを検索する範囲である検索範囲の指定に基づき、該検索範囲を該検索範囲が含むメッシュの区画の位置を表す文字列として作成する検索条件生成手順と、前記文字列として表された該施設の位置が、前記検索条件生成手段により作成された検索範囲に含まれるか否かを、該施設の位置を表す文字列と前記検索範囲を表す文字列のパターンマッチングをすることにより行う文字列パターンマッチング手順をさらに備えることもできる。
【0009】
また、本発明のプログラムは、前記検索条件生成手順は、波紋状に検索範囲を広くする複数の検索条件を作成してもよい。
【発明の効果】
【0010】
本発明によれば、最寄りの施設を素早く検索することができ、処理の負荷も少なく、また任意の範囲の施設を容易に検索することができる。
【発明を実施するための最良の形態】
【0011】
以下、図面を参照しながら、本発明の第一の実施の形態を説明する。
図1は、本発明の実施の形態のシステム構成図である。
検索を行う利用者は、カーナビゲーションシステム、パーソナルコンピュータ、または携帯端末などの端末10からインターネット等の通信網20を介して、サービス提供者の提供するデータセンター30に検索要求を送信する。
【0012】
データセンター30は、検索要求送受信装置40で検索要求を受信し、利用者の現在位置の緯度経度、検索範囲などの情報を施設検索システム50に渡す。施設検索システム50は、施設検索プログラム51と施設情報DB52を用いて検索を行い、その結果を利用者の端末10に送信する。
【0013】
以下、本発明の実施の形態における施設の緯度経度情報を文字列として格納する方法について図2〜図5を参照して説明する。
図2は、施設の緯度経度情報を文字列として施設情報DBに格納する処理のフローチャートである。
【0014】
図3は、本発明の第一の実施の形態で用いられる地図および施設を表す図である。
図4は、図3の地図をメッシュで区切ったものである。
図5(a)は、施設の位置を文字列で表したものであり、図5(b)は、図5(a)のデータを文字列として格納した施設情報DBを表す図である。
【0015】
まず、図2を参照すると、ステップ201において、施設の位置情報を格納しているデータベースから施設の緯度経度情報を読み出す。施設の緯度経度情報は、従来と同様の緯度経度を数値変換したものである。なお、施設の緯度経度情報は、従来と同様の緯度経度を数値変換したものでなくとも、施設の位置を表す位置データであれば良い。また、緯度経度情報は外部から送られてきたものを受信しても良い。
【0016】
ステップ202において、緯度経度の値が、メッシュ状に区切られた地図のメッシュのどの区画に属するかを算出する。これは、例えばメッシュの区画と緯度経度の範囲を対応させたテーブルに基づいて決められる。
【0017】
ステップ203において、施設が含まれるメッシュの区画の値を“1”、それ以外を“0”とし、それらを結合したものをその施設の緯度経度情報として施設情報DBに格納する。すなわち、メッシュ状に区切られた地図内において、施設が含まれるメッシュの区画の位置を、地図内の各メッシュ区画単位で文字列で表すようにする。施設が含まれていないメッシュ区画は“0”で表し、施設が含まれているメッシュ区画を“1”で表すと、メッシュ状に区切られた地図は、“0”と“1”が2次元に配列された文字列で表されることになる。このように、文字列は“1”および“0”の組み合わせでも、他の情報の組み合わせでも良い。
【0018】
具体的には、以下ようになる。
まず、図4のように、図3の地図全体をメッシュで区切り、各メッシュ区画を特定する番号を振る。図4の場合には、x方向とy方向に順番に番号を振り、各メッシュ区画は、x方向の番号と、y方向の番号の組み合わせで特定されることになる。例えば、メッシュの区画の境界がどの緯度経度にあるかを予め知っておけば、メッシュの区画と緯度経度の範囲の対応が分かり、メッシュの区画の番号と緯度経度の範囲を対応させたテーブルの作成が可能となる。このようなテーブルは、メッシュ状に区切られた地図データとして、各施設がメッシュの区画のどの位置に存在するかを算出するために用いられ、データベース等に予め格納しておいてもよい。メッシュ状に区切られた地図データはテーブルでなくとも、緯度経度の値をメッシュの区画の番号に変換するための式でもよい。次に、地図上の各施設(F1〜F7)がメッシュの区画のどの番号に属するかを算出する。
【0019】
例えば、施設F1はx方向(経度)の19番、y方向(緯度)の19番に存在することになる。そして、図5(a)に示すように、施設が含まれるメッシュの区画の値を“1”、それ以外を“0”とし、それらを結合し1つの文字列としたものを図5(b)に示すように緯度経度情報として施設情報DBに格納する。例えば、施設F1はx方向の19番、y方向の19番に存在するので、x方向(経度)の位置を示すデータは“0”が18個続き、19番目に“1”、その後“0”が続く1つの文字列として表される。y方向(緯度)のデータも同様である。
【0020】
以上のようにして、各施設の緯度経度情報が文字列として施設情報DBに格納される。
格納する場合には、文字列をランレングス法を用いて格納しても良い。
次に、利用者の現在位置から最寄りの施設を検索する方法について、図6〜図8を参照して説明する。
【0021】
図6は、本発明の第一の実施の形態の施設検索プログラムのフローチャートである。
図7は、本発明の第一の実施の形態の検索処理を説明するための図である。
図8は、本発明の第一の実施の形態の検索処理の流れを示す図である。
【0022】
まず、図6を参照する。利用者が最寄りの施設の検索を行おうとすると、利用者の端末から各種情報とともに施設検索要求が送信される。
ステップ601において、利用者からの施設検索要求を受け付け、利用者の現在位置の緯度経度、検索範囲などの情報を受信する。本発明の第一の実施の形態においては、検索範囲の中心は利用者の現在位置としているが、任意の位置とすることも可能である。
【0023】
ステップ602において、利用者の現在位置の属する区画(メッシュの区画の番号)を算出する。これは、図2の処理と同様に、例えば、メッシュの区画の番号と緯度経度の範囲を対応させたテーブルから求めることができる。
【0024】
ステップ603において、ステップ602において算出した現在位置を中心として、範囲(1)の区画群にある施設を検索するための文字列を生成する。範囲(1)の区画群にある施設を検索するための文字列は、現在位置を中心として範囲(1)のメッシュの区画の値を“1”、それ以外を“0”とし、それらを一つに結合したものである。次に範囲(2)にある施設を検索するための文字列を生成し、同様に範囲(n)まで繰り返す。ここで、nはステップ601において受信した検索範囲である。本発明の第一の実施の形態においては、n=4としている。
【0025】
図7に対応させて説明すると、利用者の現在位置はM1であり、メッシュの区画の番号では(13、12)に存在する。そして、M1を中心とする範囲(1)の区画群は、M1の周りの3×3メッシュ区画群であり、メッシュの区画の番号ではx方向は12〜14、y方向は11〜13である。M1を中心とする範囲(2)の区画群は、M1の周りの5×5メッシュ区画群であり、メッシュの区画の番号ではx方向は11〜15、y方向は10〜14である。同様に、M1を中心とする範囲(4)の区画群までそれぞれ異なる斜線で表されている。
【0026】
範囲(1)の区画群にある施設を検索するための文字列は図8の801に対応する。同様に802〜803はそれぞれ範囲(2)〜(4)の区画群にある施設を検索するための文字列を表す。すなわち、範囲(1)を示す文字列は、x方向は、12〜14までの文字が“1”で、他の文字が“0”の文字列となり、y方向は、11〜13までの文字が“1”で、他の文字が“0”の文字列となる。範囲(2)〜(4)についても同様である。
【0027】
ステップ604において、ステップ603で作成された文字列を検索条件805として、施設情報DB806を検索し、その結果を返す。ここで施設の検索は、文字列のパターンマッチングにより検索する。詳しく述べると、例えば、M1を中心とする範囲(3)の区画群に施設があるか調べる場合、検索条件の文字列は803のようになるが、これと施設情報DB806にある施設の緯度経度を表す各施設の文字列とのパターンマッチングを行う。範囲(3)の区画群に施設F1があるか否かを調べるには、文字列803と、施設F1の緯度経度情報を表す文字列807のx方向の文字列とy方向のそれぞれの文字列とで、各メッシュ区画ごとに各メッシュの区画の値の論理積をとる。そうすると、それぞれの文字列において、各メッシュの区画の値が共に“1”であるかないかでx方向、y方向それぞれについて、施設F1が範囲(3)の中にあるか否かが分かる。そして、論理積をとった結果、x方向、y方向の文字列の両方について、施設F1の緯度経度情報を示す文字列の“1”が、範囲(3)を示す文字列の“1”に含まれている場合、施設F1は範囲(3)の区画群にあると分かる。
【0028】
具体的には、例えば、文字列803と807でパターンマッチングを行った場合、x方向およびy方向の文字列の各メッシュの区画の値の論理積をとると、x方向、y方向ともに各メッシュの区画の値で共に“1”の箇所がないので、範囲(3)の区画群に施設F1は存在しないことが分かる。
【0029】
例えば、範囲(3)の区画群に施設F4があるか調べるにあたり、文字列803と810でパターンマッチングを行った場合、x方向およびy方向の文字列の各メッシュの区画の値の論理積をとると、y方向の14番目に共に“1”があるが、x方向には共通する“1”の箇所がないため、範囲(3)の区画群に施設F4は存在しないが分かる。
【0030】
例えば、範囲(3)の区画群に施設F6があるか調べるにあたり、文字列803と812でパターンマッチングを行った場合、x方向およびy方向の文字列の各メッシュの区画の値の論理積をとると、x方向の16番目、y方向の9番目に共に“1”があるので、範囲(3)の区画群に施設F6が存在することが分かる。
【0031】
上記のような検索を、例えば範囲(1)の区画群に施設があるかを調べる場合、文字列801を用いて、各施設の緯度経度情報の文字列807〜813に対してそれぞれ行う。
ステップ604において、ステップ603で作成された文字列を検索条件805として、施設情報DB806を検索するが、本発明の第一の実施の形態においては、複数の検索条件を範囲(1)の条件から順に優先順位を高く(重み付け)して、一斉に検索を行う。そのために、本発明の第一の実施の形態においては、データベースエンジンとして「Shunsaku」(登録商標)を用いる。
【0032】
Shunsakuとは、データの多様性や変化に柔軟に対応し、情報活用基盤を提供するXML型データベースエンジンである。本発明の第一の実施の形態においては、Shunsakuの特性として、下記を利用する。
(1)高度検索技術
OR条件やNOT条件を組み合わせた複雑な検索条件でも一定のスピードで検索するSIGMA検索技術(一方向逐次処理による高速文字列照合アルゴリズム)と複数のアプリケーションから検索要求が一度に集中しても安定したレスポンスを発揮するハイトラフィック技術を採用することで、パターン検索、文字列検索、ワード検索などの目的のデータ検索に合う検索式を指定することが可能な特性。
(2)サーバ追加(スケールアウト)で検索性能を均一化
検索用のデータを複数台サーバ(サーチサーバ)に分散配置し、並列で検索処理を実行可能な特性。
【0033】
Shunsakuについては、日経BP企画編著、「革新のXML型データベースエンジン「Shunsaku」」、2004年3月24日、日経BP企画、に詳しく記載されている。
【0034】
これにより、複数の検索条件による検索を一度に行うことができ、効率的な検索が可能となる。
上記のような方法で、各条件に対する検索を行うことにより、それぞれの検索結果814が得られる。すると、範囲(1)および(2)の区画群には施設は存在せず、範囲(3)の区画群に施設F6、範囲(4)の区画群に施設F4が存在することが分かる。このように、現在位置を中心に波紋状に検索範囲を広げていくことで、最寄りの施設を発見することができる。
【0035】
ステップ605において、範囲(1)の区画群に施設が含まれているか否かをチェックし、含まれていた場合、ステップ609に進む。含まれていなかった場合、ステップ606に進む。ステップ606では、範囲(2)の区画群に施設が含まれているか否かをチェックし、含まれていた場合、ステップ609に進む。含まれていなかった場合、ステップ607に進む。以下同様に、範囲(n)の区画群に施設が含まれているかまでチェックする。前述のように本発明の第一の実施の形態においてはn=4としている。
【0036】
ステップ609において、最寄りの施設の検索結果を利用者に返す。もし、同一区画群内に複数の施設があった場合、複数の施設を検索結果として返す。ただし、メッシュの区画のサイズが大きいと施設の位置の精度が落ち、また、検索範囲の設定が荒くなるので、最寄りの施設の位置の正確性が失われる。しかし、メッシュの区画のサイズをより細かくすることで、従来の距離計算による最寄りの施設の検索結果に近い精度を出すことが可能である。1件も施設が含まれていない場合は検索結果を「要求範囲内には施設がない」とする。
【0037】
以上のようにして、最寄りの施設が求められる。このように、文字列パターンマッチングにより検索すると、各施設との距離の演算の必要がないため、最寄りの施設を素早く検索することができ、処理の負荷も少なくできる。
【0038】
次に第二の実施の形態について、図9及び図10を参照して説明する。
第一の実施の形態においては、現在位置を中心に波紋状に検索範囲を大きくしていき、最寄りの施設を発見したが、第二の実施の形態においては任意の形の検索範囲において施設があるかないかを調べる。
【0039】
図9は、本発明の第二の実施の形態の検索処理を説明するための図である。
図10は、本発明の第二の実施の形態の検索処理の流れを示す図である。
第二の実施の形態においても、システムや施設情報DBなどは第一の実施の形態と同じである。そして、施設の緯度経度情報も同様に文字列で格納されている。
【0040】
例えば、検索範囲は利用者が端末上で範囲を指定することにより決定される。
図9において、x方向のメッシュの区画の番号で8〜9番、y方向のメッシュの区画の番号で7〜17番の2×11のメッシュ区画の範囲と、x方向のメッシュの区画の番号で10〜20番、y方向のメッシュの区画の番号で7〜8番の11×2のメッシュ区画の範囲に施設があるかを検索したい場合を説明する。上記のそれぞれの範囲を範囲(1)および(2)とし、図9において、それぞれ異なる斜線で表されている。
【0041】
施設検索プログラムは、範囲(1)および(2)に施設があるか検索するための文字列を生成する。範囲(1)を検索するための文字列は、x方向は範囲(1)のx方向のメッシュの区画の番号8〜9の値を“1”とし、それ以外を“0”としたものを結合したもの。y方向は範囲(1)のy方向のメッシュの区画の番号7〜17の値を“1”とし、それ以外を“0”としたものを結合したものである。これは図10の文字列1001に対応する。範囲(2)を検索するための文字列についても同様に作成され、文字列1002のようになる。
【0042】
そして範囲(1)および(2)に施設があるか否かを文字列1001および1002を検索条件1003とし、施設情報DB1004の各施設の緯度経度情報を表す文字列と文字列パターンマッチングを行うことにより検索する。これは第一の実施の形態と同様である。
【0043】
すると検索結果1005により、範囲(1)に施設F4、範囲(2)に施設F7があることが分かる。
以上のように、検索したい範囲に対応した文字列を作成し、文字列パターンマッチングにより検索を行うことで、容易に任意の範囲について検索を行うことができる。
【0044】
以上、本発明の実施の形態を、図面を参照しながら説明してきたが、本発明が適用される施設検索システムは、その機能が実行されるのであれば、上述の実施の形態に限定されることなく、単体の装置であっても、複数の装置からなるシステムあるいは統合装置であっても、LAN、WAN等のネットワークを介して処理が行なわれるシステムであってもよい。
【0045】
また、バスに接続されたCPU、ROMやRAMのメモリ、入力装置、出力装置、外部記録装置、媒体駆動装置、ネットワーク接続装置で構成されるシステムでも実現できる。すなわち、前述してきた実施の形態のシステムを実現するソフトェアのプログラムコードを記録したROMやRAMのメモリ、外部記録装置、可搬記録媒体を、施設検索システムに供給し、その施設検索システムのコンピュータがプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。
【0046】
この場合、可搬記録媒体等から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記録した可搬記録媒体等は本発明を構成することになる。
【0047】
プログラムコードを供給するための可搬記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、DVD−ROM、DVD−RAM、磁気テープ、不揮発性のメモリーカード、ROMカード、電子メールやパソコン通信等のネットワーク接続装置(言い換えれば、通信回線)を介して記録した種々の記録媒体などを用いることができる。
【0048】
また、コンピュータ(情報処理装置)がメモリ上に読み出したプログラムコードを実行することによって、前述した実施の形態の機能が実現される他、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOSなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施の形態の機能が実現される。
【0049】
さらに、可搬型記録媒体から読み出されたプログラムコードやプログラム(データ)提供者から提供されたプログラム(データ)が、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施の形態の機能が実現され得る。
すなわち、本発明は、以上に述べた実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内で種々の構成または形状を取ることができる。
【0050】
(付記1) コンピュータに、
メッシュ状に区切られた地図データと施設の緯度経度情報とに基づいて、該施設がメッシュ状に区切られた地図データのどの位置のメッシュの区画に属するかを算出する順と、
該施設が属するメッシュの区画の地図データ内での位置を、メッシュの区画の配列を文字列として表す文字列で表す手順と、
該施設の位置情報を前記文字列として格納する手順と、
を実行させるためのプログラム。
(付記2) 前記施設が存在するか否かを検索する範囲である検索範囲の指定に基づき、該検索範囲を該検索範囲が含むメッシュの区画の位置を表す文字列として作成する検索条件生成手順と、
前記文字列として表された該施設の位置が、前記検索条件生成手段により作成された検索範囲に含まれるか否かを、該施設の位置を表す文字列と前記検索範囲を表す文字列のパターンマッチングをすることにより行う文字列パターンマッチング手順をさらに備える請求項1記載のプログラム。
(付記3) 前記検索条件生成手順は、波紋状に検索範囲を広くする複数の検索条件を作成することを特徴とする付記2記載のプログラム。
(付記4) 前記文字列は2値データに基づく文字列であることを特徴とする付記1乃至3記載のプログラム。
(付記5) 前記文字列パターンマッチング手順により、該施設が前記複数の検索範囲に含まれていた場合、前記複数の検索範囲の内、優先順位の高い検索範囲に含まれる該施設の情報を送信する手順をさらに備える付記1乃至4記載のプログラム。
(付記6) 前記検索範囲は、任意の範囲の検索範囲であることを特徴とする付記2記載のプログラム。
(付記7) コンピュータに、
メッシュ状に区切られた地図データと施設の位置データとに基づいて、該施設がメッシュ状に区切られた地図データのどの位置のメッシュの区画に属するかを算出する手順と、
該施設が属するメッシュの区画の地図データ内での位置を、メッシュの区画の配列を文字列として表す文字列で表す手順と、
該施設の位置情報を前記文字列として格納する手順と、
を実行させるためのプログラム。
(付記8)メッシュ状に区切られた地図データと施設の緯度経度情報とに基づいて、該施設がメッシュ状に区切られた地図データのどの位置のメッシュの区画に属するかを算出するステップと、
該施設が属するメッシュの区画の地図データ内での位置を、メッシュの区画の配列を文字列として表す文字列で表すステップと、
該施設の位置情報を前記文字列として格納するステップと、
を備える施設検索方法。
(付記9) 前記施設が存在するか否かを検索する範囲である検索範囲の指定に基づき、該検索範囲を該検索範囲が含むメッシュの区画の位置を表す文字列として作成するステップと、
前記文字列として表された該施設の位置が、検索範囲に含まれるか否かを、該施設の位置を表す文字列と前記検索範囲を表す文字列のパターンマッチングをすることにより行う文字列パターンマッチング手段をさらに備える付記8記載の施設検索方法。
(付記10)検索範囲に基づき検索条件を文字列として作成するステップは、波紋状に検索範囲を広くする複数の検索条件を作成することを特徴とする付記9記載の施設検索方法。
【図面の簡単な説明】
【0051】
【図1】本発明の実施の形態のシステム構成図である。
【図2】施設の緯度経度情報を文字列として施設情報DBに格納する処理のフローチャートである。
【図3】本発明の第一の実施の形態で用いられる地図および施設を表す図である。
【図4】図3の地図をメッシュで区切ったものである。
【図5】(a)は施設の位置を文字で表したものであり、(b)は図5(a)のデータを文字列として格納した施設情報DBを表す図である。
【図6】本発明の第一の実施の形態の施設検索プログラムのフローチャートである。
【図7】本発明の第一の実施の形態の検索処理を説明するための図である。
【図8】本発明の第一の実施の形態の検索処理の流れを示す図である。
【図9】本発明の第二の実施の形態の検索処理を説明するための図である。
【図10】本発明の第二の実施の形態の検索処理の流れを示す図である。
【図11】従来の検索処理を説明するための図である。
【図12】従来の施設情報DBの各施設の緯度経度情報を表す図である。
【符号の説明】
【0052】
10 端末
20 通信網
【特許請求の範囲】
【請求項1】
コンピュータに、
メッシュ状に区切られた地図データと施設の緯度経度情報とに基づいて、該施設がメッシュ状に区切られた地図データのどの位置のメッシュの区画に属するかを算出する手順と、
該施設が属するメッシュの区画の地図データ内での位置を、メッシュの区画の配列を文字列として表す文字列で表す手順と、
該施設の位置情報を前記文字列として格納する手順と、
を実行させるためのプログラム。
【請求項2】
前記施設が存在するか否かを検索する範囲である検索範囲の指定に基づき、該検索範囲を該検索範囲が含むメッシュの区画の位置を表す文字列として作成する検索条件生成手順と、
前記文字列として表された該施設の位置が、前記検索条件生成手段により作成された検索範囲に含まれるか否かを、該施設の位置を表す文字列と前記検索範囲を表す文字列のパターンマッチングをすることにより行う文字列パターンマッチング手順をさらに備える請求項1記載のプログラム。
【請求項3】
前記検索条件生成手順は、波紋状に検索範囲を広くする複数の検索条件を作成することを特徴とする請求項2記載のプログラム。
【請求項1】
コンピュータに、
メッシュ状に区切られた地図データと施設の緯度経度情報とに基づいて、該施設がメッシュ状に区切られた地図データのどの位置のメッシュの区画に属するかを算出する手順と、
該施設が属するメッシュの区画の地図データ内での位置を、メッシュの区画の配列を文字列として表す文字列で表す手順と、
該施設の位置情報を前記文字列として格納する手順と、
を実行させるためのプログラム。
【請求項2】
前記施設が存在するか否かを検索する範囲である検索範囲の指定に基づき、該検索範囲を該検索範囲が含むメッシュの区画の位置を表す文字列として作成する検索条件生成手順と、
前記文字列として表された該施設の位置が、前記検索条件生成手段により作成された検索範囲に含まれるか否かを、該施設の位置を表す文字列と前記検索範囲を表す文字列のパターンマッチングをすることにより行う文字列パターンマッチング手順をさらに備える請求項1記載のプログラム。
【請求項3】
前記検索条件生成手順は、波紋状に検索範囲を広くする複数の検索条件を作成することを特徴とする請求項2記載のプログラム。
【図2】
【図3】
【図6】
【図1】
【図4】
【図5】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図3】
【図6】
【図1】
【図4】
【図5】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【公開番号】特開2007−241516(P2007−241516A)
【公開日】平成19年9月20日(2007.9.20)
【国際特許分類】
【出願番号】特願2006−60929(P2006−60929)
【出願日】平成18年3月7日(2006.3.7)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】
【公開日】平成19年9月20日(2007.9.20)
【国際特許分類】
【出願日】平成18年3月7日(2006.3.7)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】
[ Back to top ]