以下、本発明による情報処理システムについて、実施の形態を用いて説明する。なお、以下の実施の形態において、同じ符号を付した構成要素及びステップは同一または相当するものであり、再度の説明を省略することがある。
(実施の形態1)
本発明の実施の形態1による情報処理システムについて、図面を参照しながら説明する。本実施の形態による情報処理システムでは、2以上の地図情報表示装置から送信された訪問位置をサーバで管理し、その訪問位置を地図情報表示装置に送信するものである。
図1は、本実施の形態による情報処理システム100の構成を示すブロック図である。本実施の形態による情報処理システム100は、2以上の地図情報表示装置1と、サーバ2とを備える。2以上の地図情報表示装置1と、サーバ2とは、有線または無線の通信回線500で接続されている。通信回線500は、例えば、インターネットやイントラネット、公衆電話回線網等である。地図情報表示装置1は、例えば、自動車に装着されるカーナビゲーション装置であってもよく、地図表示機能やナビゲーション機能等を有する携帯電話であってもよく、地図表示機能やナビゲーション機能等を有するPDA(Personal Digital Assistant)であってもよく、PND(Personal Navigation Device)であってもよい。すなわち、地図情報表示装置1は、自動車で用いられるものであってもよく、徒歩や自転車で用いられるものであってもよく、その他の状況で用いられるものであってもよい。
図2は、本実施の形態による地図情報表示装置1の構成を示すブロック図である。図2において、本実施の形態による地図情報表示装置1は、地図情報記憶部11と、現在位置取得部12と、表示部13と、判断部14と、訪問位置取得部15と、訪問位置送信部16と、受付部17と、要求情報送信部18と、訪問位置受信部19と、出力部20とを備える。
地図情報記憶部11では、地図に関する情報である地図情報が記憶される。地図情報は、例えば、地図の画像情報であってもよい。この画像情報は、例えば、ラスタデータ(ビットマップデータ)であってもよく、ベクタデータであってもよい。また、画像情報がラスタデータである場合には、地図情報に、複数の縮尺に対応した画像情報が含まれていてもよい。例えば、同じ地域について、縮尺の大きい画像情報、縮尺の中ぐらいの画像情報、縮尺の小さい画像情報が地図情報に含まれていてもよい。また、地図情報は、タイル状に分割された地図を示すものであり、それらを適宜組み合わせることによって、様々な領域の地図を表示することができるようになっていてもよい。ここで、「地図」は、地形図や、地勢図、地質図、土地利用図、住宅地図、路線図、道路地図、ガイドマップ等であってもよい。地図情報表示装置1がカーナビゲーション装置である場合には、この地図情報は道路地図であってもよい。地図情報表示装置1が徒歩や自転車等で用いられる場合には、この地図情報は歩行者や自転車用の道路地図であってもよい。また、その地図情報は、ルート探索を行うことができるものであってもよい。すなわち、地図情報は、道路の位置を示すものであってもよい。また、その地図情報は、道路の属性(例えば、制限速度や、主要な道路であるのか、脇道であるのかなど)を知ることができるようになっているものであってもよい。また、例えば、この地図情報は、カーナビゲーションで用いられるKIWIフォーマットのものであってもよい。また、「地図」は、地形や道路等が把握可能な航空写真や衛星写真、それらに記号や文字等が記入されたものなどであってもよい。地図情報において、地図の各地点と、座標(位置)との対応を知ることができるようになっているものとする。座標とは、ある基準点を原点とした座標(この座標は、例えば、距離でもよい)であってもよく、緯度・経度であってもよく、その他の位置を識別できる情報であってもよい。地図情報に、その座標そのものが含まれていてもよい。本実施の形態では、座標が緯度・経度である場合について説明する。また、この地図情報には、地名や、山や川などの地形に関する文字情報が含まれていてもよい。また、この地図情報において、北などの特定の方位がどちらであるのかが設定されていてもよい。なお、地図情報は、2次元のオンライン地図や電子地図等として公知であり、その詳細な説明を省略する。
地図情報記憶部11に地図情報が記憶される過程は問わない。例えば、記録媒体を介して地図情報が地図情報記憶部11で記憶されるようになってもよく、通信回線等を介して送信された地図情報が地図情報記憶部11で記憶されるようになってもよい。また、地図情報記憶部11での記憶は、RAM等における一時的な記憶でもよく、あるいは、長期的な記憶でもよい。地図情報記憶部11は、所定の記録媒体(例えば、半導体メモリや磁気ディスク、光ディスクなど)によって実現されうる。
現在位置取得部12は、地図情報表示装置1の現在位置を取得する。その現在位置の取得は、例えば、GPS(Global Positioning System)を用いてなされてもよく、ジャイロなどの自律航法装置を用いてなされてもよく、その両方を用いることによって互いの欠点を補うようにしてもよい。なお、現在位置の取得方法は、これらに限定されないことは言うまでもない。例えば、携帯電話の最寄りの基地局を利用した現在位置の取得等を行ってもよい。
表示部13は、現在位置取得部12が取得した現在位置に応じた地図情報を地図情報記憶部11から読み出して表示する。その表示の際には、表示部13は、表示対象となる領域の地図情報のみを地図情報記憶部11から読み出して表示するものとする。地図情報を表示するとは、地図情報における地図の画像を表示することである。なお、その地図の画像には、地名や、北を示す方位図形、縮尺を示す縮尺表示等が表示されてもよい。また、表示部13は、地図情報表示装置1の位置を示すマークを地図上に表示してもよい。地図情報表示装置1がカーナビゲーション装置である場合には、そのカーナビゲーション装置が装着されている自動車の位置を示すマークが地図情報に表示されてもよい。
なお、表示部13は、それらの表示を行う表示デバイス(例えば、CRTや液晶ディスプレイなど)を含んでもよく、あるいは含まなくてもよい。また、地図情報等の表示は、地図情報表示装置1と別の装置においてなされてもよい。その場合には、表示部13は、地図情報表示装置1の外部に対して地図情報等を表示するために送信するものであってもよい。また、表示部13は、ハードウェアによって実現されてもよく、あるいは表示デバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
判断部14は、地図情報表示装置1が、ある地点に留まったかどうかを判断する。この判断部14によって、ある地点に留まったと判断された地点が訪問位置であると判断されることになる。ここで、ある地点に留まったと判断するいくつかの手法について説明する。なお、判断部14による判断手法が、以下の説明のものに限定されないことは言うまでもない。
(1)判断部14は、現在位置取得部12が取得した現在位置が、しきい値の時間以上変化しない場合に、ある地点に留まったと判断してもよい。そのしきい値の時間(期間)以上にわたって地図情報表示装置1の位置が変化しない場合には、その地点がユーザの訪問先であると考えることができるからである。そのしきい値の時間は、例えば、30分や1時間であってもよい。なお、「現在位置が変化しない」とは、現在位置が厳密な意味において変化しない場合であってもよく、あるいは、現在位置が誤差(例えば、5メートルや10メートル程度の誤差であってもよい)の範囲内で同一視できる場合であってもよい。
この場合に、判断部14は、現在位置取得部12が取得する現在位置を時系列に沿って順次、図示しない記録媒体に蓄積していき、現在の時点から、しきい値の時間だけ過去の時点までの間に現在位置が変化しているかどうか判断することによって、この判断を行うことができる。現在の時点から、しきい値の時間だけ過去の時点までの間に現在位置が変化していない場合には、ある地点に留まったと判断されることになり、そうでない場合には、ある地点に留まっていないと判断されることになる。
(2)地図情報表示装置1がカーナビゲーション装置である場合に、判断部14は、地図情報表示装置1が装着されている自動車のエンジンが切られた場合に、ある地点に留まったと判断してもよい。エンジンが切られた場合には、そこが目的地であって訪問先である可能性が高いと考えられるからである。
この場合には、判断部14は、エンジンの停止を検知した場合に、ある地点に留まったと判断することになる。なお、エンジンの停止に応じて地図情報表示装置1も停止される場合には、エンジンが始動されたことによって、エンジンの停止を検知してもよい。エンジンが始動されると言うことは、それ以前にエンジンが停止されたことになるからである。
(3)地図情報表示装置1がカーナビゲーション装置である場合に、判断部14は、地図情報表示装置1が装着されている自動車のエンジンが、しきい値の時間以上停止している場合に、ある地点に留まったと判断してもよい。そのしきい値の時間(期間)以上にわたってエンジンが止まっている場合には、その地点がユーザの訪問先であると考えることができるからである。そのしきい値の時間は、例えば、30分や1時間であってもよい。
この場合には、判断部14は、エンジンが停止された際に、その日時を図示しない記録媒体に蓄積しておき、次にエンジンが始動された際に、現在の日時を取得し、記録媒体に蓄積した日時から現在の日時までの期間がしきい値の時間を超えている場合に、ある地点に留まったと判断し、そうでない場合に、ある地点に留まっていないと判断してもよい。あるいは、判断部14は、エンジンが停止された際にタイマを用いた計時を開始し、次にエンジンが始動された際に、そのタイマの値を取得し、その値がしきい値を超えている場合に、ある地点に留まったと判断し、そうでない場合に、ある地点に留まっていないと判断してもよい。
なお、上記(2)、(3)の場合に、エンジンが動いていること、停止していることや、エンジンが停止したこと、エンジンが始動したことを検知する方法は問わない。例えば、エンジンを制御する図示しない制御部から、エンジンを制御する信号を受けて、その信号で判断してもよい。例えば、その信号が、エンジンが動いている際には5Vとなり、エンジンが停止している際には0Vとなる信号である場合には、判断部14は、その信号が5Vである場合には、エンジンが動いていると判断し、その信号が0Vである場合には、エンジンが停止していると判断し、その信号が5Vから0Vに変化した場合には、エンジンが停止したと判断し、その信号が0Vから5Vに変化した場合には、エンジンが始動したと判断してもよい。また、その他の方法によって、判断部14がエンジンの動きについて判断してもよいことは言うまでもない。例えば、振動を検知することによって、判断部14がエンジンの動きについて判断してもよい。すなわち、しきい値以上の振動がある場合には、エンジンが動いており、そうでない場合には、エンジンが停止していると判断してもよい。
(4)判断部14は、第1の位置に到達してから、その後に第2の位置に到達するまでの時間がしきい値の時間以上である場合に、ある地点に留まったと判断してもよい。そのしきい値の時間(期間)以上にわたって第1の位置から第2の位置の間にいる場合には、その第1及び第2の位置の間が訪問先であると考えることができうるからである。第1の位置は、例えば、駐車場の入口であってもよい。また、第2の位置は、例えば、駐車場の出口であってもよい。そのしきい値の時間は、例えば、30分や1時間であってもよい。
この場合に、判断部14は、例えば、第1及び第2の位置に到達したことを、現在位置取得部12が取得する現在位置を用いて判断してもよい。すなわち、あらかじめ設定されている第1の位置(第2の位置)と現在位置とが一致した場合に、第1の位置(第2の位置)に到達したと判断してもよい。また、判断部14は、例えば、第1の位置(第2の位置)においてビーコンを受信することによって、判断してもよい。すなわち、第1の位置(第2の位置)であることを示すビーコンを受信した場合に、第1の位置(第2の位置)に到達したと判断してもよい。なお、判断部14が、その他の方法を用いて第1の位置、第2の位置に到達したことの判断を行ってもよいことは言うまでもない。また、判断部14は、第1の位置に到達した時点から、第2の位置に到達した時点までの時間(期間)を取得する。この時間の取得は、例えば、第1の位置に到達した時点からタイマによる計時を開始し、第2の位置に到達した時点にそのタイマの値を読み取ることによって行われてもよく、あるいは、第1の位置に到達した時点の時刻を図示しない記録媒体に蓄積し、第2の位置に到達した時点の時刻と、蓄積した時刻との差を計算することによって行われてもよい。そして、判断部14は、第1の位置に到達した時点から、第2の位置に到達した時点までの時間がしきい値の時間以上である場合には、ある地点に留まったと判断し、そうでない場合には、ある地点に留まっていないと判断してもよい。
(5)判断部14は、現在位置取得部12が取得した現在位置があらかじめ決められた位置であり、さらに、しきい値の時間以上変化しない場合に、ある地点に留まったと判断してもよい。すなわち、この場合には、上記(1)の条件に加えて、現在位置があらかじめ決められた位置であることが求められる。そのあらかじめ決められた位置は、例えば、ナビゲーション装置においてルートの目的地に設定された位置であってもよく、あるいは、ナビゲーション装置にあらかじめ設定されている位置であってもよい。この場合には、現在位置があらかじめ決められた位置であるかどうかの判断が追加されている以外は、上記(1)の場合と同様であるため、詳細な説明を省略する。
(6)判断部14は、ある位置において、その位置を訪問位置とする旨の指示を後述する受付部17が受け付けた場合に、ある地点に留まったと判断してもよい。例えば、ユーザが目的とする訪問地に到着し、そこが訪問位置である旨のボタンを押した場合に、判断部14によって、そこに留まったと判断され、その結果、その位置が訪問位置であると判断されてもよい。
上述の(1)〜(6)で説明したように、判断部14は、種々の方法によって、ある位置に留まったかどうかを判断することができる。例えば、判断部14は、現在位置取得部12が取得した現在位置を用いて、その現在位置がある地点に留まったことを示すかどうかに応じて判断を行ってもよい。上述の(1)の場合、(4)で位置情報を用いる場合、(5)の場合がそれに該当する。また、例えば、判断部14は、地図情報表示装置1が装着されている自動車のエンジンの情報を用いて、その自動車がある地点に留まったことを示すかどうかに応じて判断を行ってもよい。上述の(2)の場合、(3)の場合がそれに該当する。また、例えば、判断部14は、外部からの入力を用いて、その外部からの入力がある地点に留まったことを示すかどうかに応じて判断を行ってもよい。上述の(4)でビーコンを受信する場合、(6)の場合がそれに該当する。
訪問位置取得部15は、訪問地点の位置を示す訪問位置を取得する。訪問位置取得部15は、判断部14がある地点に留まったと判断した場合に、その時点の現在位置に応じた訪問位置を取得する。その現在位置は、現在位置取得部12によって取得されたものである。
ここで、訪問位置について簡単に説明する。訪問位置は、例えば、緯度・経度等の位置情報(すなわち、座標の情報)であってもよく、地点名であってもよい。地点名は、例えば、施設名(例えば、店や病院、駅、建物、ホテル等の名称)であってもよく、名所や旧跡の名称であってもよく、住所(例えば、兵庫県神戸市中央区東川崎町等)であってもよく、その他の地点に関する名称であってもよい。また、その訪問位置は、情報処理システム100において受け渡しがなされていく際に、位置情報と地点名との変換や、位置情報の付加、地点名の付加等が行われてもよい。このように、位置情報のみの場合、地点名のみの場合、位置情報と地点名の両方を含む場合のすべてについて訪問位置と呼ぶことにする。例えば、訪問位置取得部15は、位置情報である訪問位置を取得してもよく(例えば、現在位置取得部12が取得した現在位置そのものである場合など)、地点名である訪問位置を取得してもよく(例えば、現在位置取得部12が取得した現在位置に対応する地図上の地点名を取得する場合など)、あるいは、位置情報と地点名の両方を含む訪問位置を取得してもよい。
訪問位置送信部16は、訪問位置取得部15が取得した訪問位置をサーバ2に送信する。なお、訪問位置送信部16は、訪問位置をサーバ2に直接送信してもよく、あるいは、他の中継サーバ等を介して間接的に送信してもよい。また、訪問位置送信部16は、送信を行うための送信デバイス(例えば、モデムやネットワークカードなど)を含んでもよく、あるいは含まなくてもよい。また、訪問位置送信部16は、ハードウェアによって実現されてもよく、あるいは送信デバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。また、訪問位置送信部16は、サーバ2のアドレスをあらかじめ図示しない記憶媒体において保持しており、そのアドレスを用いて訪問位置の送信を行ってもよく、あるいは、訪問位置の送信を行うまでに他の構成要素や装置等からサーバ2のアドレスを受け取ってもよい。また、訪問位置送信部16が訪問位置を送信するタイミングは問わない。例えば、訪問位置送信部16は、訪問位置取得部15が訪問位置を取得するごとに、その訪問位置をサーバ2に送信してもよく、あるいは、訪問位置取得部15が取得した訪問位置を、ある程度まとめてサーバ2に送信してもよい。後者の場合に、訪問位置送信部16は、例えば、定期的に訪問位置をサーバ2に送信してもよく(例えば、毎日午前2時にサーバ2に送信するなど)、あるいは、あるイベント(例えば、地図情報表示装置1の起動や地図情報表示装置1のシャットダウン、あるいは、ある決められた量以上の訪問位置が取得されたことなど)の発生時に訪問位置をサーバ2に送信してもよい。
受付部17は、ユーザからの入力を受け付ける。受付部17は、例えば、後述する要求情報を送信する旨の指示を受け付けてもよい。また、受付部17は、例えば、前述のように、現在の位置を訪問位置とする旨の指示を受け付けてもよい。また、受付部17は、地図情報表示装置1の操作に関する他の入力を受け付けてもよいことは言うまでもない。
受付部17は、例えば、入力デバイス(例えば、キーボードやマウス、タッチパネルなど)から入力された情報を受け付けてもよく、有線もしくは無線の通信回線を介して送信された情報を受信してもよい。なお、受付部17は、受け付けを行うためのデバイス(例えば、モデムやネットワークカードなど)を含んでもよく、あるいは含まなくてもよい。また、受付部17は、ハードウェアによって実現されてもよく、あるいは所定のデバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
要求情報送信部18は、訪問位置の送信を要求する要求情報をサーバ2に送信する。本実施の形態では、要求情報送信部18は、受付部17が要求情報の送信の指示を受け付けた場合に、要求情報を送信するものとする。なお、要求情報送信部18は、現在位置取得部12が取得した現在位置を含む要求情報を送信してもよく、あるいは、その現在位置を含まない要求情報を送信してもよい。要求情報に含まれる現在位置は、例えば、要求情報を送信する際の現在位置であってもよい。
なお、要求情報送信部18は、要求情報をサーバ2に直接送信してもよく、あるいは、中継サーバ等を介して間接的に送信してもよい。また、要求情報送信部18は、送信を行うための送信デバイス(例えば、モデムやネットワークカードなど)を含んでもよく、あるいは含まなくてもよい。また、要求情報送信部18は、ハードウェアによって実現されてもよく、あるいは送信デバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
訪問位置受信部19は、サーバ2から送信された訪問位置を受信する。この訪問位置は、要求情報送信部18による要求情報の送信に応じて、サーバ2から送信されたものである。また、この訪問位置は、後述するように、サーバ2において管理されている訪問位置である。なお、訪問位置受信部19は、受信を行うための有線または無線の受信デバイス(例えば、モデムやネットワークカードなど)を含んでもよく、あるいは含まなくてもよい。また、訪問位置受信部19は、ハードウェアによって実現されてもよく、あるいは受信デバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
出力部20は、訪問位置受信部19が受信した訪問位置を出力する。出力部20による訪問位置の出力がなされることによって、ユーザは、訪問位置受信部19が受信した訪問位置の内容を知ることができる。ここで、この出力は、例えば、表示デバイス(例えば、CRTや液晶ディスプレイなど)への表示でもよく、所定の機器への通信回線を介した送信でもよく、プリンタによる印刷でもよく、スピーカによる音声出力でもよく、記録媒体への蓄積でもよく、他の構成要素への引き渡しでもよい。なお、出力部20は、出力を行うデバイス(例えば、表示デバイスやプリンタなど)を含んでもよく、あるいは含まなくてもよい。また、出力部20は、ハードウェアによって実現されてもよく、あるいは、それらのデバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
また、出力部20が訪問位置を表示する場合に、出力部20は、例えば、訪問位置のテキスト(例えば、訪問位置の地点名や位置情報などのテキスト)を表示してもよく、あるいは、訪問位置を地図情報の地図上に表示してもよい。「訪問位置を地図情報の地図上に表示する」とは、訪問位置のテキストや訪問位置であることを示すマーク等を、その訪問位置に対応する地図上の位置に表示することであってもよい。
なお、図2では、訪問位置送信部16、要求情報送信部18、訪問位置受信部19が通信回線500と有線で接続されているように記載しているが、これは一例であって、図1で示されるように、それらの送受信部は、通信回線500と無線で接続されていてもよいことは言うまでもない。
図3は、本実施の形態によるサーバ2の構成を示すブロック図である。図3において、本実施の形態によるサーバ2は、受信部21と、地点名対応情報記憶部22と、訪問位置変換部23と、訪問情報記憶部24と、訪問情報更新部25と、要求情報受信部26と、取得部27と、送信部28とを備える。
受信部21は、地図情報表示装置1から送信された訪問位置を受信する。なお、受信部21は、受信を行うための有線または無線の受信デバイス(例えば、モデムやネットワークカードなど)を含んでもよく、あるいは含まなくてもよい。また、受信部21は、ハードウェアによって実現されてもよく、あるいは受信デバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
地点名対応情報記憶部22では、1以上の地点名対応情報が記憶される。地点名対応情報は、地点名と、その地点名に対応する位置を示す情報である地点名位置情報とを有する情報である。地点名位置情報は、通常、ある一点の位置を示す情報(例えば、緯度・経度であってもよく、その他の位置を示す情報であってもよい)であるが、場合によっては、微小な範囲(例えば、10メートル四方や20メートル四方等)の領域を示す情報(すなわち、施設等の領域を示す情報)であってもよい。地点名は、前述のように、例えば、施設名であってもよく、名所や旧跡の名称であってもよく、住所であってもよく、その他の地点に関する名称であってもよい。
地点名対応情報記憶部22に1以上の地点名対応情報が記憶される過程は問わない。例えば、記録媒体を介して1以上の地点名対応情報が地点名対応情報記憶部22で記憶されるようになってもよく、通信回線等を介して送信された1以上の地点名対応情報が地点名対応情報記憶部22で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された1以上の地点名対応情報が地点名対応情報記憶部22で記憶されるようになってもよい。地点名対応情報記憶部22での記憶は、RAM等における一時的な記憶でもよく、あるいは、長期的な記憶でもよい。地点名対応情報記憶部22は、所定の記録媒体(例えば、半導体メモリや磁気ディスク、光ディスクなど)によって実現されうる。
また、地点名対応情報に含まれる各情報、例えば、地点名や地点名位置情報は、それらの情報そのものであってもよく、あるいは、それらの情報を特定可能な情報であってもよい。後者の場合には、地点名対応情報に含まれる地点名等は、例えば、地点名等が格納されている領域を示すポインタやアドレスであってもよい。このことは、他の情報についても同様であるとする。
訪問位置変換部23は、訪問位置が位置情報(すなわち、緯度・経度等の座標の情報)である場合に、位置情報である訪問位置を、地点名対応情報を用いて、訪問位置と一致する地点名位置情報に対応する地点名である訪問位置に変換する。具体的には、訪問位置が位置情報である場合に、訪問位置変換部23は、各地点名対応情報に含まれる地点名位置情報と、その訪問位置である位置情報とが一致するかどうか判断し、一致する場合に、その地点名位置情報を含む地点名対応情報から地点名を取得し、訪問位置である位置情報を、その取得した地点名に変換する。なお、前述のように、その変換の際に、訪問位置変換部23は、訪問位置に地点名を付加してもよく、訪問位置の位置情報を地点名で置き換えてもよい。前者の場合には、変換後の訪問位置に、位置情報と地点名とが含まれることになり、後者の場合には、変換後の訪問位置に、地点名のみが含まれることになる。本実施の形態では、前者の場合について説明する。なお、位置情報と地点名位置情報とが一致するとは、厳密な意味において一致することであってもよく、あるいは、ある誤差(例えば、10メートルや20メートル程度の誤差であってもよい)の範囲内で一致することであってもよい。また、訪問位置変換部23が位置情報を変換するタイミングは問わない。例えば、(A)受信部21が訪問位置を受信した後であって、その訪問位置を用いた訪問情報の更新が行われる前に位置情報の変換が行われてもよく、(B)後述する訪問情報記憶部24で記憶されている訪問情報に含まれる訪問位置である位置情報に対して、位置情報の変換が行われてもよく、(C)後述する取得部27が訪問位置を取得した後であって、その訪問位置が送信される前に位置情報の変換が行われてもよい。本実施の形態では、(A)の場合について説明する。
訪問情報記憶部24では、訪問情報が記憶される。訪問情報は、受信部21が受信した訪問位置を少なくとも有する情報である。本実施の形態では、訪問情報が、訪問位置と、その訪問位置に対応する、受信部21が訪問位置を受信した回数とを有する情報である場合について説明する。
訪問情報記憶部24で記憶される訪問情報は、後述する訪問情報更新部25によって蓄積され、更新されるものである。訪問情報記憶部24での記憶は、RAM等における一時的な記憶でもよく、あるいは、長期的な記憶でもよい。訪問情報記憶部24は、所定の記録媒体(例えば、半導体メモリや磁気ディスク、光ディスクなど)によって実現されうる。
訪問情報更新部25は、受信部21による訪問位置の受信に応じて、訪問情報を更新する。例えば、訪問情報が、受信部21が受信した訪問位置のみを含む情報であり、それまでに記憶されている訪問情報に含まれない訪問位置が受信された場合には、訪問情報更新部25は、その訪問位置を含む訪問情報を訪問情報記憶部24に蓄積し、すでに記憶されている訪問情報に含まれる訪問位置が受信された場合には、訪問情報更新部25は、その訪問位置の受信に対しては何も行わない。また、例えば、訪問情報が、受信部21が受信した訪問位置と、その訪問位置の受信回数とを有する情報であり、それまでに記憶されている訪問情報に含まれない訪問位置が受信された場合には、訪問情報更新部25は、その訪問位置と、受信回数「1」とを含む訪問情報を訪問情報記憶部24に蓄積し、すでに記憶されている訪問情報に含まれる訪問位置が受信された場合には、訪問情報更新部25は、その訪問位置を含む訪問情報に含まれる受信回数を1だけインクリメントする。なお、訪問位置の一致・不一致は、訪問位置が地点名である場合には、その地点名が一致するかどうかによって判断してもよく、訪問位置が位置情報である場合には、その位置情報が一致するかどうかによって判断してもよい。なお、2個の位置情報が一致するとは、両位置情報が厳密に一致することであってもよく、あるいは、ある誤差の範囲内で一致することであってもよい。その誤差は、例えば、10メートル程度であってもよく、20メートル程度であってもよい。
要求情報受信部26は、地図情報表示装置1から送信された要求情報を受信する。なお、要求情報受信部26は、受信を行うための有線または無線の受信デバイス(例えば、モデムやネットワークカードなど)を含んでもよく、あるいは含まなくてもよい。また、要求情報受信部26は、ハードウェアによって実現されてもよく、あるいは受信デバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
取得部27は、訪問情報に含まれる訪問位置を取得する。本実施の形態では、取得部27は、しきい値よりも多い回数に対応する訪問位置を取得するものとする。そのしきい値は、あらかじめ決められた値であってもよく、あるいは、そうでなくてもよい。前者の場合には、そのしきい値は、例えば、取得部27がアクセス可能な図示しない記録媒体において記憶されており、取得部27は、そのしきい値を読み出して用いてもよい。後者の場合には、そのしきい値は、例えば、訪問情報記憶部24で記憶されているすべての訪問情報に含まれる受信回数の最大値に、1よりも小さい係数(例えば、0.7など)を掛けた値であってもよく、訪問情報記憶部24で記憶されている訪問情報を受信回数の多い方からあらかじめ決められた割合(例えば、2割や3割、4割など)の訪問情報における最も小さい受信回数であってもよい(この場合には、実質的には受信回数の上位のものからあらかじめ決められた割合の訪問位置を取得することになる)。
また、本実施の形態では、取得部27は、要求情報受信部26が受信した要求情報に含まれる現在位置を含む領域の訪問位置を取得するものとする。現在位置を含む領域は、例えば、現在位置を含む、あらかじめ決められた市区町村等の行政区画の領域であってもよい。例えば、行政区画の領域を示す領域情報が行政区画ごとに存在する場合に、取得部27は、まず、現在位置の含まれる行政区画の領域情報を特定し、次に、その特定した領域情報の示す領域に含まれる訪問位置を取得してもよい。なお、その領域情報は、行政区画以外の区画の領域を示すものであってもよい。また、現在位置を含む領域は、例えば、現在位置を中心とした、あらかじめ決められた半径(例えば、50kmや100kmなど)の領域であってもよい。例えば、取得部27は、現在位置を中心としたある半径の領域に含まれる訪問位置を取得してもよい。また、現在位置を含む領域は、例えば、現在位置に対して、進行方向には多くの領域が存在し、進行方向と逆の方向にはあまり領域が存在しない領域であってもよい。例えば、その領域が進行方向を長さ方向とする矩形領域である場合に、進行方向と直交する方向の幅は20kmであり(その幅の中心に現在位置が存在するものとする)、現在位置から進行方向側の辺までは100kmであり、現在位置から進行方向と逆の方向側の辺までは10kmであってもよい。なお、進行方向を用いて領域を設定する場合には、要求情報に、進行方向を示す情報が含まれていてもよい。その進行方向を示す情報は、進行方向の方位角(例えば、北が0°、東が90°、南が180°、西が270°となる方位角であってもよい)を示す情報であってもよく、その他の情報であってもよい。
送信部28は、取得部27が取得した訪問位置を送信する。なお、送信部28は、要求情報受信部26が要求情報を受信した際に、その要求情報を送信した地図情報表示装置1に訪問位置を送信する。そのため、要求情報受信部26が要求情報を受信した際に、取得部27による訪問位置の取得が行われ、その取得された訪問位置が送信部28によって送信されてもよい。
なお、送信部28は、訪問位置を地図情報表示装置1に直接送信してもよく、あるいは、他の中継サーバ等を介して間接的に送信してもよい。また、送信部28は、送信を行うための送信デバイス(例えば、モデムやネットワークカードなど)を含んでもよく、あるいは含まなくてもよい。また、送信部28は、ハードウェアによって実現されてもよく、あるいは送信デバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
なお、地点名対応情報記憶部22と、訪問情報記憶部24とは、同一の記録媒体によって実現されてもよく、あるいは、別々の記録媒体によって実現されてもよい。前者の場合には、地点名対応情報を記憶している領域が地点名対応情報記憶部22となり、訪問情報を記憶している領域が訪問情報記憶部24となる。
次に、本実施の形態による地図情報表示装置1の動作について、図4のフローチャートを用いて説明する。
(ステップS101)現在位置取得部12は、新たな現在位置を取得したかどうか判断する。そして、新たな現在位置を取得した場合には、ステップS102に進み、そうでない場合には、ステップS103に進む。現在位置取得部12は、例えば、新たな現在位置を取得したと判断した場合に、その現在位置を図示しない記録媒体において一時的に記憶しておき、最新の現在位置がその一時的に記憶している現在位置と異なる場合に、新たな現在位置を取得したと判断して、その新たな現在位置を図示しない記録媒体に上書きで蓄積してもよい。
(ステップS102)表示部13は、現在位置取得部12が取得した新たな現在位置に対応する地図情報を地図情報記憶部11から読み出して表示する。そして、ステップS101に戻る。なお、表示部13は、その表示対象の地図情報において、現在位置を示すマーク等を表示するようにしてもよい。また、ルートのガイドをしている場合には、表示部13は、「次の交差点を右に曲がります」といったようなガイドを表示してもよい。また、そのガイドを音声出力するカーナビゲーション装置の場合には、そのガイドの音声を生成してスピーカに音声出力するガイド音声出力部(図示せず)を地図情報表示装置1が備えていてもよい。
(ステップS103)判断部14は、ある地点に留まったと判断したかどうか判断する。そして、ある地点に留まったと判断した場合には、ステップS104に進み、そうでない場合には、ステップS106に進む。
(ステップS104)訪問位置取得部15は、その時点における現在位置に応じた訪問位置を取得する。その訪問位置は、図示しない記録媒体で一時的に記憶されてもよい。
(ステップS105)訪問位置送信部16は、訪問位置取得部15が取得した訪問位置をサーバ2に送信する。そして、ステップS101に戻る。
(ステップS106)受付部17は、サーバ2からの訪問位置の送信を要求する指示を受け付けたかどうか判断する。そして、その指示を受け付けた場合には、ステップS107に進み、そうでない場合には、ステップS101に戻る。
(ステップS107)要求情報送信部18は、現在位置取得部12から現在位置を受け取り、その現在位置を含む要求情報をサーバ2に送信する。
(ステップS108)訪問位置受信部19は、要求情報送信部18による要求情報の送信に応じてサーバ2から送信された1以上の訪問位置を受信したかどうか判断する。そして、訪問位置を受信した場合には、ステップS109に進み、そうでない場合には、訪問位置を受信するまでステップS108の処理を繰り返す。なお、要求情報が送信されてからあらかじめ決められた時間が経過しても訪問位置を受信しない場合には、タイムアウトであるとして、ステップS101に戻ってもよい。
(ステップS109)出力部20は、訪問位置受信部19が受信した訪問位置を出力する。そして、ステップS101に戻る。
なお、図4のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。また、図4では、訪問位置が取得された際に、その訪問位置をサーバ2に送信する場合について説明したが、そうでなくてもよい。例えば、訪問位置の取得後の他のタイミングで訪問位置をサーバ2に送信してもよいことは前述の通りである。
また、地図情報表示装置1がナビゲーション装置である場合には、図4のフローチャートで説明した以外の処理、例えば、目的地の受け付けやルートの生成、ルートを用いたナビゲーションの処理等が行われてもよいことは言うまでもない。
次に、本実施の形態によるサーバ2の動作について、図5のフローチャートを用いて説明する。
(ステップS201)受信部21は、訪問位置を受信したかどうか判断する。そして、訪問位置を受信した場合には、ステップS202に進み、そうでない場合には、ステップS205に進む。
(ステップS202)訪問位置変換部23は、受信部21が受信した訪問位置が地点名を含むかどうか判断する。そして、地点名を含む場合には、ステップS204に進み、そうでない場合、すなわち、訪問位置が位置情報である場合には、ステップS203に進む。なお、訪問位置変換部23は、訪問位置が地点名を含むかどうかは、訪問位置が数字以外のテキスト情報を含むかどうかによって判断してもよい。そして、訪問位置が数字以外のテキスト情報を含む場合には、地点名が含まれると判断し、訪問位置が数字のみを含む場合には、地点名が含まれないと判断してもよい。
(ステップS203)訪問位置変換部23は、地点名対応情報記憶部22で記憶されている地点名対応情報を用いて、訪問位置の位置情報を地点名に変換する。本実施の形態では、前述のように、変換後の訪問位置には、位置情報と、地点名との両方が含まれるものとする。
(ステップS204)訪問情報更新部25は、訪問位置の変換が行われた場合には、その変換後の訪問位置を用いて訪問情報記憶部24で記憶されている訪問情報を更新する。また、訪問情報更新部25は、訪問位置の変換が行われなかった場合には、受信部21が受信した訪問位置を用いて訪問情報記憶部24で記憶されている訪問情報を更新する。そして、ステップS201に戻る。
(ステップS205)要求情報受信部26は、要求情報を受信したかどうか判断する。そして、要求情報を受信した場合には、ステップS206に進み、そうでない場合には、ステップS201に戻る。
(ステップS206)取得部27は、訪問情報記憶部24で記憶されている訪問情報から、訪問位置を取得する。その際に、要求情報に含まれる現在位置を用いてもよく、訪問情報に含まれる受信回数を用いてもよい。
(ステップS207)送信部28は、取得部27が取得した訪問位置を、要求情報受信部26が受信した要求情報の送信元のアドレスを送信先として送信する。そして、ステップS201に戻る。
なお、図5のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
次に、本実施の形態による情報処理システム100の動作について、具体例を用いて説明する。この具体例において、地図情報表示装置1は、カーナビゲーション装置であって、自動車に装着されているものとする。また、この具体例において、地点名対応情報記憶部22では、図6で示される地点名対応情報が記憶されているものとする。図6において、地点名対応情報は、地点名と、地点名位置情報とを対応付ける情報である。地点名位置情報は、地点の位置を示す座標(例えば、緯度・経度など)である。また、この具体例では、判断部14が、前述の(2)の方法によって判断を行う場合について説明する。
ユーザが自動車で走行中に地図情報表示装置1を動作させていたとする。すると、現在位置取得部12は、自動車の走行に合わせて最新の現在位置を取得し(ステップS101)、表示部13は、それに応じて表示対象の地図情報を更新して表示する(ステップS102)。図7は、そのようにして表示された地図情報の一例を示すものである。中央の少し下方の上向きの三角のマークは、現在の自動車の位置を示すものである。また、この地図はタッチパネルに表示されているものとする。
その後に、ユーザが神戸空港の駐車場に自動車を駐車し、エンジンを切ったとする。すると、それに応じて表示部13による表示は終了されるが、訪問位置取得部15等による処理は、バックグラウンドで継続されるものとする。すなわち、判断部14は、ある地点に留まったと判断し(ステップS103)、そのことを訪問位置取得部15に渡す。すると、訪問位置取得部15は、その時点の現在位置(X15,Y15)を、現在位置取得部12から受け取る(ステップS104)。その現在位置が訪問位置となる。また、訪問位置取得部15は、その訪問位置を訪問位置送信部16に渡す。すると、訪問位置送信部16は、その訪問位置をペイロードに含み、送信先のアドレスとしてサーバ2のアドレスをヘッダに含むパケットを構成し、そのパケットを送信する(ステップS105)。
その訪問位置を含むパケットは、サーバ2の受信部21で受信され(ステップS201)、その訪問位置(X15,Y15)が訪問位置変換部23と、訪問情報更新部25とに渡される。訪問位置変換部23は訪問位置を受け取ると、その訪問位置に地点名が含まれるかどうか判断する(ステップS202)。その判断は、前述のように、緯度・経度等の座標以外、すなわち、数字以外の漢字や平仮名、カタカナ等のテキストが訪問位置に含まれているかどうかによって判断するものとする。この場合には、訪問位置は(X15,Y15)であり、数字以外のテキストが含まれていないため(なお、「X15」「Y15」も実際には緯度・経度を示す数値である)、訪問位置変換部23は、訪問位置の緯度・経度を地点名に変換する処理を行う。すなわち、訪問位置変換部23は、地点名対応情報記憶部22で記憶されている地点名対応情報を参照し、受け取った訪問位置(X15,Y15)と一致する地点名位置情報を探す。ここで、この具体例では、150メートルの誤差の範囲内であれば、一致すると判断されるものとする。この場合には、位置情報(X15,Y15)と、地点名位置情報(X1002,Y1002)とがその誤差の範囲内で一致すると判断されたとする。すると、訪問位置変換部23は、その地点名位置情報を含む地点名対応情報から地点名「神戸空港」を取得して、訪問情報更新部25に渡す(ステップS203)。訪問情報更新部25は、訪問位置変換部23から受け取った地点名「神戸空港」を検索キーとして、訪問情報記憶部24で記憶されている複数の訪問情報を検索する。なお、この時点において、訪問情報記憶部24では、図8で示される訪問情報が記憶されていたものとする。図8の訪問情報において、訪問情報には、訪問位置と、受信回数とが含まれている。また、訪問位置には、地点名と、緯度・経度を示す位置情報とが含まれている。この場合には、訪問情報更新部25による検索キー「神戸空港」を用いた検索によって、図8の1番目のレコードの訪問情報がヒットする。したがって、訪問情報更新部25は、その訪問情報に含まれる受信回数を1だけインクリメントすることによって、訪問情報を更新する(ステップS204)。その結果、訪問情報記憶部24で記憶されている訪問情報は、図9で示されるようになる。なお、その検索によってヒットする訪問情報が存在しなかった場合には、訪問情報更新部25は、受信部21から受け取った位置情報(X15,Y15)と、訪問位置変換部23から受け取った地点名とを含む訪問位置、及び受信回数「1」を含む訪問情報を訪問情報記憶部24に新たに蓄積することによって、訪問情報の更新を行うことになる。
その後、ユーザが駐車場に戻ってきて自動車に乗ってエンジンを掛けて出発したとする。すると、最新の位置に応じた地図の表示が行われる(ステップS101,S102)。その際に、ユーザが、画面左下の「訪問位置の表示」ボタンを指で押した(タップした)とする。すると、受付部17は、訪問位置の要求の指示が受け付けられたと判断し(ステップS106)、その指示を要求情報送信部18に渡す。要求情報送信部18は、その指示を受け取ると、現在位置取得部12から現在位置(X20,Y20)を受け取り、その現在位置を含む要求情報のパケットを構成し、サーバ2を送信先として送信する(ステップS107)。
その要求情報のパケットは、サーバ2の要求情報受信部26で受信され(ステップS205)、現在位置を含む要求情報が取得部27に渡される。また、その要求情報の送信元のアドレスである地図情報表示装置1のアドレスが送信部28に渡される。なお、送信部28は、その受け取ったアドレスを、図示しない記録媒体において一時的に記憶しているものとする。
ここで、この具体例における訪問位置の取得について簡単に説明する。取得部27は、図示しない記録媒体で記憶されている図10で示される領域対応情報にアクセス可能であるとする。その領域対応情報は、地域名と、その地域名で識別される地域の領域を示す領域情報とを対応付ける情報である。領域情報は、その地域の輪郭の座標値を示す情報である。例えば、神戸市の領域は、(X101,Y101)、(X102,Y102)、(X103,Y103)…で囲まれる領域である。取得部27は、要求情報を受け取った場合に、その領域情報に含まれる現在位置を含む領域情報を特定し、その特定した領域情報の領域に含まれる訪問位置であって、受信回数の多い方から3個の訪問位置を取得するものとする。
この具体例では、取得部27は、現在位置(X20,Y20)を含む要求情報を受け取り、その現在位置を含む領域を特定する。ここでは、神戸市に対応する領域情報によって示される輪郭内に、現在位置(X20,Y20)が含まれたとする。すると、取得部27は、その領域情報と、訪問情報の位置情報とを用いて、その領域情報によって示される輪郭内に含まれる位置情報を有する訪問情報を特定する。そして、取得部27は、その特定した訪問情報を、受信回数の降順にソートし、受信回数の最大のものから3個の訪問位置を取得する。この具体例では、地点名「神戸空港」「六甲山牧場」「有馬温泉」の訪問位置が取得されたものとする(ステップS206)。それらの取得された訪問位置(この訪問位置は、地点名と位置情報とを含んでいるものである)は、送信部28に渡される。送信部28は、その訪問位置を含むパケットを構成し、要求情報受信部26から受け取り一時的に記憶している地図情報表示装置1のアドレスを送信先として、そのパケットを送信する(ステップS207)。
その訪問位置を含むパケットは、地図情報表示装置1の訪問位置受信部19で受信され、その訪問位置が出力部20に渡される(ステップS108)。出力部20は、カーナビゲーション装置のディスプレイに、その訪問位置を表示する(ステップS109)。その結果、図11で示される表示がなされる。なお、図11では、訪問位置のうち、地点名のみを表示しているが、位置情報も地点名と一緒に表示してもよいことは言うまでもない。また、図11では、訪問位置をテキスト表示する場合を示しているが、図12で示されるように、訪問位置を地図情報の地図上に表示してもよいことは前述の通りである。図12の表示を行う場合には、出力部20は、訪問位置に含まれる位置情報を用いて、各訪問位置に対応する地図上の位置を特定する。そして、出力部20は、その特定した位置に、あらかじめ図示しない記憶媒体で記憶されている吹き出しの画像に、地点名を追記した画像を表示する。
なお、この具体例では、領域対応情報において地域名と領域情報とが対応付けられている場合について説明したが、そうでなくてもよい。前述の説明から明らかなように、地域名は用いないため、地域名と対応付けられていない領域情報のみを用いて、訪問位置の取得が行われてもよいことは言うまでもない。
以上のように、本実施の形態による情報処理システム100によれば、地図情報表示装置1において取得した訪問位置をサーバ2で管理し、その管理している訪問位置を地図情報表示装置1に送信するため、地図情報表示装置1では、他の地図情報表示装置1で取得された訪問位置も出力することができる。したがって、例えば、地図情報表示装置1のユーザは、他人の訪問位置を知ることができる。なお、サーバ2において、受信回数の多い訪問位置を取得する場合には、地図情報表示装置1は、人気スポットとしての他人の訪問位置を知ることができる。そして、例えば、その人気スポットを目的地として訪問することも可能となる。また、サーバ2において、受信回数の多い訪問位置を取得する場合には、訪問回数の低い訪問位置は、サーバ2から地図情報表示装置1に送信されないことになる。したがって、ユーザの自宅や勤め先、知人宅などの訪問位置は、他の訪問位置と比較して相対的に低い訪問回数になると考えられるため、ユーザの個人情報に関するセキュリティーを担保することができるものと考えられる。なお、あらかじめ登録されている特定の位置(例えば、ユーザの自宅や勤め先、知人宅等)については、その位置に対応する訪問位置を地図情報表示装置1からサーバ2に送信しないようにしてもよい。また、要求情報に含まれる現在位置を含む領域の訪問位置が取得されることによって、地図情報表示装置1に近い領域の訪問位置を地図情報表示装置1が出力できるようになる。したがって、地図情報表示装置1から遠い位置であって、地図情報表示装置1のユーザが容易には行くことができない位置の訪問位置(この訪問位置は、利用価値の低い訪問位置であると考えられる)を出力しないようにすることができる。
なお、本実施の形態で説明したように、判断部14による判断の手法は前述のものに限定されるものではなく、他の判断手法によって、ある地点に留まったかどうかが判断されてもよいことは言うまでもない。
(実施の形態2)
本発明の実施の形態2による情報処理システムについて、図面を参照しながら説明する。本実施の形態による情報処理システムでは、ルートを生成して表示する際に用いられる目的地を、訪問位置としてサーバに送信する。
なお、本実施の形態による情報処理システム100の構成も、実施の形態1における図1の情報処理システム100と同様であり、その詳細な説明を省略する。
図13は、本実施の形態による地図情報表示装置1の構成を示すブロック図である。図13において、本実施の形態による地図情報表示装置1は、地図情報記憶部11と、現在位置取得部12と、表示部13と、訪問位置送信部16と、受付部17と、要求情報送信部18と、訪問位置受信部19と、出力部20と、目的地受付部31と、訪問位置取得部32と、選択受付部33と、ルート生成部34とを備える。なお、目的地受付部31、訪問位置取得部32、選択受付部33、ルート生成部34以外の構成及び動作は、表示部13がルート生成部34の生成したルートをも表示し、出力部20が訪問位置受信部19が受信した訪問位置を表示する以外、実施の形態1と同様であり、その詳細な説明を省略する。
目的地受付部31は、目的地を受け付ける。この目的地は、後述するルート生成部34におけるルートの生成で用いられる目的地である。なお、この目的地は、例えば、地点名であってもよく、地図上の位置情報(例えば、緯度・経度など)であってもよく、住所であってもよく、目的地を特定できる情報であればその内容を問わない。
目的地受付部31は、例えば、入力デバイス(例えば、キーボードやマウス、タッチパネルなど)から入力された目的地を受け付けてもよく、有線もしくは無線の通信回線を介して送信された目的地を受信してもよく、所定の記録媒体(例えば、光ディスクや磁気ディスク、半導体メモリなど)から読み出された目的地を受け付けてもよい。なお、目的地受付部31は、受け付けを行うためのデバイス(例えば、モデムやネットワークカードなど)を含んでもよく、あるいは含まなくてもよい。また、目的地受付部31は、ハードウェアによって実現されてもよく、あるいは所定のデバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
訪問位置取得部32は、目的地受付部31が受け付けた目的地である訪問位置を取得する。すなわち、本実施の形態では、目的地受付部31が受け付けた目的地が訪問位置となる。この訪問位置は、前述のように、地点名であってもよく、位置情報であってもよく、住所であってもよく、その他の目的地を特定可能な情報であってもよい。なお、後述するように、本実施の形態による地図情報表示装置1では、その目的地を用いてルートの生成を行う。そのため、目的地が地点名や住所であったとしても、その目的地や地点名に応じた位置情報が算出することができるものである。したがって、訪問位置取得部32が取得する目的地である訪問位置は、そのようにして算出された位置情報を含むものであってもよい。その位置情報の算出は、訪問位置取得部32によって行われてもよく、あるいは、他の構成要素によって行われてもよい。その位置情報の算出は、例えば、地点名対応情報と同様の情報を用いて行われてもよい。その場合には、地点名である目的地を検索キーとして地点名対応情報を検索し、ヒットした地点名対応情報から、地点名位置情報を取得してもよい。その取得した地点名位置情報が、地点名である目的地に対応する位置情報である。
選択受付部33は、出力部20が表示した訪問位置の選択を受け付ける。例えば、出力部20が1個の訪問位置を表示した場合には、その訪問位置を目的地とするルートを生成する旨の指示として、その訪問位置の選択を選択受付部33が受け付けてもよい。また、例えば、出力部20が2個以上の訪問位置を表示した場合には、ユーザの所望の訪問位置を目的地とするルートを生成する旨の指示として、その2個以上の訪問位置から選択された1個の訪問位置の選択を選択受付部33が受け付けてもよい。
選択受付部33は、例えば、入力デバイス(例えば、キーボードやマウス、タッチパネルなど)から入力された選択を受け付けてもよく、有線もしくは無線の通信回線を介して送信された選択を受信してもよい。なお、選択受付部33は、受け付けを行うためのデバイス(例えば、モデムやネットワークカードなど)を含んでもよく、あるいは含まなくてもよい。また、選択受付部33は、ハードウェアによって実現されてもよく、あるいは所定のデバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
ルート生成部34は、現在位置取得部12が取得した現在位置である出発地から、目的地受付部31が受け付けた目的地までのルートを生成する。また、ルート生成部34は、出力部20が出力した訪問位置であって、選択受付部33が選択を受け付けた訪問位置である目的地を用いたルートの生成をも行ってもよい。
ここで、ルート生成部34が現在位置を始点として、目的地を終点とするルートを生成する方法について簡単に説明する。ルート生成部34は、現在位置と目的地との2個の位置にそれぞれ対応する座標(例えば、緯度・経度等)を取得し、その取得した2個の座標の間のルート探索を行う。具体的には、ルート生成部34は、通常、地図情報を用いて、始点から終点までのルートのスコアが最小となるようにルートを決定する。その経路探索において、例えば、ダイクストラ法を用いてもよく、A*アルゴリズムを用いてもよく、ベルマン−フォード法を用いてもよく、ワーシャル−フロイド法を用いてもよく、その他のアルゴリズムを用いてもよい。
なお、ダイクストラ法は、始点から放射状に距離の短い順に距離を計算しながら最短ルートをチェックしていく方法である。また、ダイクストラ法は、目的地へたどり着いた時点でその経路が最短ルートとなるアルゴリズムである。さらに、ダイクストラ法において、必要なメモリ量と処理時間が、リンクやノードの数に比例して増加する。なお、ノードとは、地図上の地点のことである。リンクとは、ノードとノードを接続する線である(参考:インターネット<URL:http://www.deqnotes.net/acmicpc/dijkstra/>)。
また、A*アルゴリズムは、各頂点nからゴールまでの距離の推定値h*(n)を知っていた場合に対して、最短経路問題を効率的に解くアルゴリズムである。A*アルゴリズムは、ダイクストラ法に予測距離を加えた考えで、ダイクストラ法に比べて目的地までの到達ステップが短くなる。また、A*アルゴリズムにおいて、予測距離が含まれるため、目的地へたどり着いた時点でその経路が最短ルートとならない可能性がある。また、A*アルゴリズムにおいて、目的地までたどり着くことを優先させ、メモリ容量と処理時間を抑えることができる(参考:インターネット<URL:http://ja.wikipedia.org/wiki/A*%E3%82%A2%E3%83%AB%E3%82%B4%E3%83%AA%E3%82%BA%E3%83%A0>)。なお、ルート生成部34がルート探索を行うために必要な情報は、地図情報記憶部11で記憶されているものとする。
このルート画像の生成は、すでに公知であり、その詳細な説明を省略する。例えば、オンラインマップにおいて、始点の緯度・経度と、終点の緯度・経度を入力すると、その始点から終点までのルートが表示されるものがある(例えば、「http://maps.google.co.jp/maps」等を参照のこと)。
なお、本実施の形態では、出力部20は、受信された訪問位置を表示すると共に、ルート生成部34にも渡すものとする。
次に、本実施の形態による地図情報表示装置1の動作について、図14のフローチャートを用いて説明する。なお、図14のフローチャートにおいて、ステップS301〜S308以外の処理は、実施の形態1の図4のフローチャートと同様であり、その説明を省略する。
(ステップS301)目的地受付部31は、目的地を受け付けたかどうか判断する。そして、目的地を受け付けた場合には、ステップS302に進み、そうでない場合には、ステップS106に進む。
(ステップS302)訪問位置取得部32は、目的地受付部31が受け付けた目的地である訪問位置を取得する。その取得した訪問位置は、図示しない記録媒体において一時的に記憶されてもよい。
(ステップS303)訪問位置送信部16は、訪問位置取得部32が取得した訪問位置をサーバ2に送信する。
(ステップS304)ルート生成部34は、現在位置取得部12が取得した現在位置である出発地から、目的地受付部31が受け付けた目的地までのルートを生成する。その生成されたルートは、図示しない記録媒体において一時的に記憶されてもよい。
(ステップS305)表示部13は、ルート生成部34が生成したルートを表示する。そして、ステップS101に戻る。なお、ルートの表示は、現在位置の近辺に関する地図上でのルートの表示であってもよい。その場合には、地図情報表示装置1が出発地から目的地に移動するに従って、徐々にそのルートの異なる部分が表示されていくことになる。
(ステップS306)出力部20は、訪問位置受信部19が受信した訪問位置を表示する。
(ステップS307)選択受付部33は、出力部20が表示したいずれかの訪問位置の選択を受け付けたかどうか判断する。そして、受け付けた場合には、ステップS308に進み、そうでない場合には、受け付けるまでステップS307の処理を繰り返す。なお、訪問位置が表示されてからあらかじめ決められた時間が経過しても選択を受け付けない場合には、タイムアウトであるとして、ステップS101に戻ってもよい。
(ステップS308)ルート生成部34は、現在位置取得部12が取得した現在位置である出発地から、選択受付部33が受け付けた訪問位置である目的地までのルートを生成する。その生成されたルートは、図示しない記録媒体において一時的に記憶されてもよい。そして、ステップS305に進み、その生成したルートの表示が行われる。
なお、図14のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。また、実施の形態1の図4のフローチャートの場合と同様に、図14のフローチャートでは、訪問位置が取得された際に、その訪問位置をサーバ2に送信する場合について説明したが、そうでなくてもよい。例えば、訪問位置の取得後の他のタイミングで訪問位置をサーバ2に送信してもよいことは前述の通りである。
また、地図情報表示装置1がナビゲーション装置である場合には、図14のフローチャートで説明した以外の処理、例えば、ルートを用いたナビゲーションの処理、地図の拡大、縮小の指示に応じた地図の表示の変更等が行われてもよいことは言うまでもない。
また、本実施の形態によるサーバ2の動作は、実施の形態1の図5のフローチャートと同様であり、その説明を省略する。
次に、本実施の形態による情報処理システム100の動作について、具体例を用いて説明する。この具体例でも、実施の形態1の具体例と同様に、地図情報表示装置1は、カーナビゲーション装置であって、自動車に装着されているものとする。また、この具体例でも、地点名対応情報記憶部22では、図6で示される地点名対応情報が記憶されているものとする。
ユーザが自動車で走行中に地図情報表示装置1を動作させていたとする。すると、現在位置取得部12は、自動車の走行に合わせて最新の現在位置を取得し(ステップS101)、表示部13は、それに応じて表示対象の地図情報を更新して表示する(ステップS102)。その後、ユーザが、画面下の「メインメニュー」ボタンを押して(タップして)、メインメニューを表示させ、そのメインメニューから目的地入力を選択したとする。すると、目的地入力画面が表示される。その目的地入力画面において、ユーザが図15で示されるように、「こうべくうこう」を入力し、「決定」ボタンを押したとする。すると、目的地受付部31は、「こうべくうこう」に対応する目的地「神戸空港」を受け付け、その目的地を訪問位置取得部32と、ルート生成部34とに渡す(ステップS301)。訪問位置取得部32は、目的地「神戸空港」を受け取ると、その神戸空港を用いて地図情報を検索し、神戸空港に対応する緯度・経度を取得する(ステップS302)。そして、訪問位置取得部32は、地点名「神戸空港」と、緯度・経度である位置情報とを含む訪問位置を訪問位置送信部16に渡す。訪問位置送信部16は、その訪問位置を含むパケットを構成し、サーバ2に送信する(ステップS303)。その訪問位置を含むパケットは、実施の形態1の具体例と同様にしてサーバ2で受信され、その受信に応じた訪問情報の更新が行われる(ステップS201〜S204)。
なお、地図情報表示装置1のルート生成部34は、目的地受付部31から目的地「神戸空港」を受け取ると、現在位置取得部12から出発地である現在位置を受け取り、それらの出発地と目的地とを用いてルートを生成する(ステップS304)。そのルートの生成の際に、地図情報記憶部11で記憶されている地図情報が参照されるものとする。生成されたルートは、図示しない記録媒体に記憶され、表示部13によって表示される(ステップS305)。図16は、そのようにして表示されたルートつきの地図の一例を示す図である。なお、図16において、生成されたルートを用いたナビゲーションの情報、例えば、「500メートル先の信号を右折してください」等が画面に表示されてもよく、あるいは、音声出力されてもよいことは、公知のナビゲーション装置と同様である。
次に、ユーザが自動車で神戸市内を走行中に、画面左下の「訪問位置の表示」ボタンを指で押したとする。すると、受付部17は、訪問位置の要求の指示が受け付けられたと判断し(ステップS106)、その指示を要求情報送信部18に渡す。要求情報送信部18は、その指示を受け取ると、現在位置取得部12から現在位置を受け取り、その現在位置を含む要求情報のパケットを構成し、サーバ2を送信先として送信する(ステップS107)。その要求情報のパケットは、実施の形態1の具体例と同様にしてサーバ2で受信され、その実施の形態1の具体例の場合と同様にして訪問位置の取得が行われ、取得された訪問位置を含むパケットが地図情報表示装置1に送信されたとする。
その訪問位置を含むパケットは、地図情報表示装置1の訪問位置受信部19で受信され(ステップS108)、出力部20によって図11または図12のように表示されたとする(ステップS306)。その表示において、ユーザが訪問位置「六甲山牧場」のテキストが表示されている箇所を指で押したとする。すると、選択受付部33は、訪問位置「六甲山牧場」が選択されたと判断し(ステップS307)、ルート生成部34に目的地「六甲山牧場」を渡す。すると、ルート生成部34は、前述のルートの生成の場合と同様に、現在位置である出発地と、目的地「六甲山牧場」とを用いて、ルートの生成を行う(ステップS308)。生成されたルートは、図示しない記録媒体に記憶され、表示部13によって表示される(ステップS305)。その結果、ユーザは、地図上に表示された六甲山牧場までのルートを見ることによって、六甲山牧場にまで行くことができるようになる。なお、前述のように、生成されたルートを用いたナビゲーションの情報が画面に表示されたり、音声出力されたりしてもよいことは言うまでもない。
以上のように、本実施の形態による情報処理システム100によれば、実施の形態1と同様に、他人の訪問位置が地図情報表示装置1において出力されるようになる。したがって、地図情報表示装置1のユーザは、他人の訪問位置を知ることができるようになる。また、その出力された訪問位置から選択されたものを、目的地に設定してルートの生成、表示を行うこともでき、人気スポットまでのルート設定を容易に行うことができるようになる。また、本実施の形態では、ルート設定において入力された目的地は、ユーザの訪問地点であると考えられるため、その目的地を訪問位置として取得することによって、実施の形態1のように判断部14による判断を行うことなく、訪問位置を取得することができる。
なお、本実施の形態では、出力部20が表示した訪問位置の選択を受け付け、その選択された訪問位置を目的地としてルートの生成を行う場合について説明したが、そうでなくてもよい。すなわち、出力された訪問位置の選択を行わなくてもよい。その場合には、地図情報表示装置1は、選択受付部33を備えていなくてもよい。また、訪問位置の選択を行わない場合には、ルート生成部34は、出力部20が出力した訪問位置のいずれか(例えば、一番上位のもの)を目的地とするルートを生成してもよく、あるいは、出力部20が出力したすべての訪問位置を目的地とするルートを生成してもよい。
また、本実施の形態では、出力部20が出力した訪問位置を目的地としてルートの生成を行う場合について説明したが、そうでなくてもよい。ルート生成部34は、そのようなルートの生成を行わなくてもよい。
また、上記各実施の形態において、サーバ2の取得部27が、しきい値よりも多い受信回数に対応する訪問位置を取得する場合について主に説明したが、そうでなくてもよい。取得部27は、受信回数に関係なく訪問位置を取得してもよい。その場合には、訪問情報は、受信回数を含まない情報であってもよい。
また、上記各実施の形態において、要求情報に現在位置が含まれる場合について主に説明したが、そうでなくてもよい。要求情報に現在位置が含まれない場合には、サーバ2の取得部27は、その現在位置に関係なく訪問位置を取得してもよい。その場合には、実施の形態1の具体例で説明した領域対応情報がサーバ2において記憶されていなくてもよい。
また、上記各実施の形態において、地図情報表示装置1からサーバ2への要求情報の送信に応じて、サーバ2から地図情報表示装置1に訪問位置が送信される場合について主に説明したが、そうでなくてもよい。例えば、サーバ2の送信部28は、あらかじめ登録されているすべての地図情報表示装置1に対して、あるイベント(例えば、訪問情報があらかじめ決められた回数以上更新されたことなど)の発生に応じて、あるいは、定期的(例えば、毎日1回、あるいは、毎週1回など)に、訪問位置を送信してもよい。その場合には、地図情報表示装置1は、要求情報送信部18を備えていなくてもよい(受付部17が要求情報の送信の指示以外を受け付けない場合には、地図情報表示装置1は、受付部17をも備えていなくてもよい)。また、サーバ2は、要求情報受信部26を備えていなくてもよい。
また、上記各実施の形態において、サーバ2において、訪問位置の変換が行われうる場合について説明したが、そうでなくてもよい。例えば、本実施の形態2の具体例の場合のように、地図情報表示装置1から地点名と位置情報とを含む訪問位置が送信される場合などのように、訪問位置の変換を行わなくてもよい場合には、サーバ2において、訪問位置の変換が行われなくてもよい。訪問位置の変換が行われない場合には、サーバ2は、訪問位置変換部23を備えていなくてもよい。
また、上記各実施の形態では、要求情報送信部18が、要求情報の送信の指示を受付部17が受け付けた場合に、要求情報をサーバ2に送信する場合について説明したが、そうでなくてもよい。例えば、要求情報送信部18は、定期的(例えば、30秒ごとや1分ごと、5分ごとなど)に要求情報を送信してもよい。その場合には、出力部20は、前述の具体例のようにして訪問位置を表示してもよく、あるいは、現在位置取得部12が取得した現在位置に応じて表示部13が表示している地図上に、訪問位置受信部19が受信した訪問位置に応じた位置が含まれる場合に、その訪問位置を表示するようにしてもよい。その表示は、例えば、図12で示されるような表示であってもよい。また、例えば、要求情報送信部18は、所定のイベント(例えば、地図情報表示装置1において周辺検索が行われたことなど)の発生を契機として要求情報を送信してもよい。そのように、周辺検索が行われた際に要求情報を送信した場合には、出力部20は、受信された訪問位置のうち、現在位置に近いものを前述の具体例のようにして表示してもよく、あるいは、その現在位置に近い訪問位置に対応する位置の地図を拡大表示して、順次、訪問位置と一緒に表示してもよい。
また、上記各実施の形態では、サーバ2から訪問位置のみが送信される場合について説明したが、それは一例であり、訪問位置に対応付けて、その訪問位置に関連する情報である関連情報もサーバ2から送信されてもよい。訪問位置に関連する関連情報は、例えば、訪問位置の画像であってもよく、訪問位置に関する解説であってもよく、その他の訪問位置に関する情報であってもよい。具体的には、図17で示されるように、サーバ2は、前述の各構成要素に加えて、訪問位置(例えば、地点名であってもよく、位置情報であってもよい)と、当該訪問位置に対応する関連情報とを有する関連対応情報が1以上記憶される関連対応情報記憶部41をさらに備える。図18は、訪問位置が地点名であり、関連情報が画像である場合の関連対応情報の一例を示す図である。そして、取得部27は、訪問位置を取得すると、関連対応情報を用いて、その取得した訪問位置に対応する関連情報を取得し、それらを送信部28に渡す。送信部28は、訪問位置と、関連情報とを地図情報表示装置1に送信する。地図情報表示装置1では、訪問位置と関連情報とが訪問位置受信部19で受信され、出力部20がそれらを出力することになる。具体的には、例えば、取得部27が、訪問位置「神戸空港」「六甲山牧場」「有馬温泉」を取得したとすると、取得部27は、さらに、図18で示される2以上の関連対応情報を参照し、「神戸空港」に対応する関連情報「P1001.jpg」と、「六甲山牧場」に対応する関連情報「P1003.jpg」と、「有馬温泉」に対応する関連情報「P1004.jpg」とをそれぞれ取得し、取得した関連情報を、対応する訪問位置に対応付けて送信部28に渡す。すると、送信部28は、それらの情報を、地図情報表示装置1に送信する。その後、地図情報表示装置1において、訪問位置と、関連情報とがそれぞれ受信され、出力されることになる。その出力は、訪問位置に加えて関連情報が出力される以外、前述の説明と同様であり、その詳細な説明を省略する。ただし、訪問位置と、関連情報とは、それぞれ対応付けられて出力されることが好適である。例えば、「神戸空港」に対応付けられて、関連情報「P1001.jpg」が出力されることが好適である。対応付けられて出力されるとは、例えば、テキスト「神戸空港」の横に、画像「P1001.jpg」が表示されることであってもよく、テキスト「神戸空港」と、画像「P1001.jpg」とが線やその他の図形等によって対応付けられて表示されることであってもよい。なお、サーバ2が有する関連対応情報記憶部41は、所定の記録媒体(例えば、半導体メモリや磁気ディスク、光ディスクなど)によって実現されうる。その関連対応情報記憶部41での記憶は、RAM等における一時的な記憶でもよく、あるいは、長期的な記憶でもよい。また、関連対応情報記憶部41に関連対応情報が記憶される過程は問わない。例えば、記録媒体を介して関連対応情報が関連対応情報記憶部41で記憶されるようになってもよく、通信回線等を介して送信された関連対応情報が関連対応情報記憶部41で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された関連対応情報が関連対応情報記憶部41で記憶されるようになってもよい。また、関連対応情報記憶部41で記憶される関連対応情報は、取得部27が訪問位置を取得した後に、インターネット等において検索され、取得された情報であってもよい。例えば、取得部27が訪問位置「神戸空港」を取得した後に、その「神戸空港」に関連する関連情報が検索されて取得され、関連対応情報記憶部41に一時的に記憶されてもよい。そして、その関連情報を取得部27が読み出して送信部28に渡してもよい。
また、前述の説明では、サーバ2から関連情報を地図情報表示装置1に送信する場合について説明したが、そうでなくてもよい。地図情報表示装置1は、訪問位置を受信すると、その訪問位置に関連する関連情報を取得し、その関連情報を訪問位置と一緒に出力してもよい。その場合には、例えば、地図情報表示装置1は、訪問位置に関連する関連情報をインターネット等で検索して取得し、その取得した関連情報を訪問位置と一緒に出力してもよい。
また、上記各実施の形態では、サーバ2で記憶される訪問情報が、図8で示されるように、訪問位置と受信回数とを有する場合について主に説明したが、そうでなくてもよい。例えば、訪問位置に加えて、その訪問位置を訪問した日時を示す日時情報や、訪問位置を送信した地図情報表示装置1のユーザの属性を示すユーザ属性情報等が訪問情報に含まれてもよい。その場合には、例えば、地図情報表示装置1の訪問位置送信部16は、訪問位置に加えて、訪問位置を訪問した日時を示す日時情報や、ユーザ属性情報をもサーバ2に送信してもよい。そのため、例えば、訪問位置取得部15は、訪問位置を取得する際に、その訪問位置に対応する日時情報をも取得してもよい。その日時情報は、例えば、訪問位置を取得した際に、図示しないカレンダー部や時計部から取得した年月日と時刻とであってもよい。また、ユーザ属性情報は、地図情報表示装置1の図示しない記録媒体においてあらかじめ記憶されていてもよい。そして、訪問位置送信部16は、訪問位置の送信時に、訪問位置取得部15が取得した日時情報と、図示しない記録媒体から読み出したユーザ属性情報とを訪問位置と一緒にサーバ2に送信してもよい。サーバ2では、受信部21がそれらの情報を受信し、訪問情報更新部25によって、それらの情報を含む訪問情報が訪問情報記憶部24に蓄積されてもよい。その場合には、訪問情報記憶部24で記憶される訪問情報は、例えば、図19で示されるものとなる。図19の訪問情報において、訪問位置と、日時情報と、ユーザ属性情報とが対応付けられている。日時情報は、年月日と、時刻とを示す情報である。ユーザ属性情報は、年齢と、性別とを示す情報である。なお、日時情報は、これに限定されるものではなく、例えば、年月日であってもよく、月のみであってもよく、時刻のみであってもよい。また、ユーザ属性情報も、これに限定されるものではなく、例えば、性別のみでもよく、年齢のみでもよく、グループ構成を示すもの(例えば、一人なのか、カップルなのか、家族なのか、友人同士なのかを示す情報など)を含んでいてもよく、地図情報表示装置1を識別する情報を含んでいてもよい。また、訪問位置が取得されてすぐにサーバ2に送信されるシステムの場合には、日時情報は、サーバ2で取得されてもよい。例えば、訪問位置を受信した日時を日時情報として訪問情報に含めるようにしてもよい。
また、図19で示されるように、訪問情報に日時情報やユーザ属性情報が含まれている場合には、サーバ2の取得部27は、訪問位置の取得の際に、日時情報やユーザ属性情報を用いた絞り込みを行ってもよい。日時情報を用いた絞り込みは、例えば、次のようにして行われる。まず、時刻を用いた絞り込みについて説明する。取得部27は、訪問位置を取得する際の時刻を図示しない時計部から取得し、その取得した時刻を含む時間帯(例えば、取得した時刻の前後に1時間をそれぞれ足した時間帯など)の日時情報を含む訪問情報のみを特定する。そして、その特定した訪問情報から、訪問位置の取得を行ってもよい。その訪問位置の取得は、例えば、その特定した訪問位置を、地点名についてソートし、各地点名の訪問情報の個数をそれぞれカウントすることによって、図8と同様の情報を生成する。そして、前述の説明と同様に、しきい値以上のカウント値(図8の受信回数に対応する)を有する訪問位置を取得してもよい。このようにすることで、要求情報が受信された時刻と同じ時間帯に他のユーザが訪問した訪問位置を取得することができるようになる。例えば、食事時であれば、レストランなどの訪問位置が多く存在すると考えられ、そのようなレストランの訪問位置を取得することができるようになる。次に、年月日を用いた絞り込みについて説明する。取得部27は、訪問位置を取得する際の年月日を図示しないカレンダー部から取得し、その取得した年月日を含む期間(例えば、取得した年月日の前後に1か月をそれぞれ足した期間であってもよく、取得した年月日が4〜6月であれば、4〜6月といったように決まっていてもよい)の日時情報を含む訪問情報のみを特定する。そして、その特定した訪問情報から、訪問位置の取得を行ってもよい。その訪問位置の取得は前述の通りであり、その説明を省略する。このようにすることで、要求情報が受信された年月日と同じ期間に他のユーザが訪問した訪問位置を取得することができるようになる。例えば、春の観桜の季節であれば、それに適した訪問位置を取得することができるようになる。次に、ユーザ属性情報を用いた絞り込みについて説明する。この場合には、要求情報に、ユーザ属性情報が含まれているものとする。したがって、地図情報表示装置1では、図示しない記録媒体において、ユーザ属性情報が記憶されており、要求情報送信部18は、そのユーザ属性情報を含む要求情報をサーバ2に送信するものとする。そして、その要求情報は、要求情報受信部26で受信され、取得部27にユーザ属性情報が渡される。取得部27は、そのユーザ属性情報と同じユーザ属性情報を有する訪問情報を特定し、その特定した訪問情報から、訪問位置の取得を行ってもよい。その訪問位置の取得は前述の通りであり、その説明を省略する。このようにすることで、要求情報を送信したユーザと同じ属性の他のユーザが訪問した訪問位置を取得することができるようになる。例えば、若い男性が訪問した訪問位置を、若い男性であるユーザが見ることができるようになる。なお、ユーザ属性情報を用いた絞り込みは、これに限定されるものではなく、他の方法を用いてもよい。例えば、ユーザ属性情報が地図情報表示装置1の識別情報である場合には、訪問情報記憶部24で記憶されている訪問情報は、どの地図情報表示装置1がどこを訪問したのかのを示す情報となる。そのため、ある地図情報表示装置1について、その訪問情報を用いて訪問位置のレコメンドを行うことができる。したがって、訪問情報が有するユーザ属性情報に、地図情報表示装置1を識別する情報が含まれており、要求情報に、地図情報表示装置1を識別する情報を含むユーザ属性情報が含まれている場合には、取得部27は、その要求情報のユーザ属性情報に含まれる識別情報で識別される地図情報表示装置1に対してレコメンドするための訪問位置を訪問情報記憶部24から取得するようにしてもよい。このレコメンドの手法は、すでに公知であり、その詳細な説明を省略する。なお、図19では、訪問情報に日時情報とユーザ属性情報との両方が含まれる場合について説明したが、それらの一方のみが訪問情報に含まれてもよいことは言うまでもない。
また、上記各実施の形態による地図情報表示装置1のように訪問位置を送信した場合には、例えば、自宅の位置に対応する訪問位置も送信されることがありうるが、自宅の位置の訪問位置が送信されサーバ2に登録されると、個人情報が流出することになり、セキュリティー上好ましくない。したがって、自宅の位置などが訪問位置として送信されないようにしてもよい。図20は、自宅の位置などを訪問位置として送信しない地図情報表示装置1の構成を示すブロック図である。図20において、地図情報表示装置1は、図2の構成要素に加えて、除外位置情報記憶部51と、除外位置判断部52と、履歴蓄積部53と、除外位置情報蓄積部54とを備える。
除外位置情報記憶部51では、送信しない訪問位置を示す除外位置情報が記憶される。この除外位置情報は、例えば、緯度・経度の情報であってもよく、その他の位置を示す座標の情報であってもよく、地点名であってもよく、あるいは、その他の位置を示す情報であってもよい。除外位置情報記憶部51において、2個以上の除外位置情報が記憶されてもよいことは言うまでもない。自宅と会社の位置を示す2個の除外位置情報が除外位置情報記憶部51において記憶されてもよい。除外位置情報記憶部51での記憶は、RAM等における一時的な記憶でもよく、あるいは、長期的な記憶でもよい。除外位置情報記憶部51は、所定の記録媒体(例えば、半導体メモリや磁気ディスク、光ディスクなど)によって実現されうる。
除外位置判断部52は、訪問位置送信部16による送信の対象となる訪問位置が、除外位置情報記憶部51で記憶されている、いずれかの除外位置情報の示す位置であるかどうか判断する。その判断は、厳密に両者が一致するかどうかを判断するものであってもよく、あるいは、ある程度の誤差(例えば、10メートルや20メートルなど)の範囲内で両者が一致するかどうかを判断するものであってもよい。なお、除外位置判断部52が、訪問位置送信部16による送信の対象となる訪問位置が、除外位置情報の示す位置であると判断した場合には、訪問位置送信部16は、その訪問位置の送信を行わないものとする。訪問位置の送信を行わないとは、結果として訪問位置が送信されないようになるのであれば、その方法を問わない。例えば、訪問位置を取得しないことであってもよく、あるいは、取得された訪問位置を送信しないことであってもよい。
履歴蓄積部53は、現在位置取得部12が取得した現在位置の履歴を蓄積する。すなわち、履歴蓄積部53は、現在位置取得部12が取得した現在位置を、その時点の日時に対応付けて図示しない記録媒体に蓄積する。その履歴の蓄積される対象である図示しない記録媒体は、例えば、履歴蓄積部53が有していてもよく、あるいは、そうでなくてもよい。また、その記録媒体での記憶は、RAM等における一時的な記憶でもよく、あるいは、長期的な記憶でもよい。また、その記録媒体は、例えば、半導体メモリや磁気ディスク、光ディスクなどによって実現されうる。また、履歴蓄積部53が現在位置の履歴を蓄積するタイミングは問わない。例えば、履歴蓄積部53は、現在位置取得部12が新たな現在位置を取得するごとに、その現在位置の履歴を蓄積してもよく、定期的(例えば、10秒ごと、1分ごと、10分ごとなど)に現在位置の履歴を蓄積してもよく、あるいは、所定のイベントの発生(例えば、地図情報表示装置1が起動されたこと、地図情報表示装置1の電源が切られたこと、地図情報表示装置1の装着されている自動車のエンジンが入ったこと、そのエンジンが切られたことなど)に応じて、現在位置の履歴を蓄積してもよい。
除外位置情報蓄積部54は、履歴蓄積部53が蓄積した現在位置の履歴を参照し、あらかじめ決められた条件を満たす位置を示す位置情報である除外位置情報を、除外位置情報記憶部51に蓄積する。その条件は、図示しない記録媒体で記憶されていてもよい。その条件は、例えば、自宅の位置を特定するための条件であってもよく、その他の位置を特定するためのものであってもよい。自宅の位置を特定するための条件は、例えば、週に4日以上、午前3時の時点の位置が一致することであってもよい。その条件の場合には、例えば、現在位置の履歴において、週に4日以上、午前3時の時点の位置が一致する場合には、除外位置情報蓄積部54は、その一致する位置を、除外位置情報として除外位置情報記憶部51に蓄積する。なお、例えば、現在位置の履歴において、午前3時の時点の現在位置が存在しない場合には、除外位置情報蓄積部54は、その時点の直前あるいは直後に履歴に存在する現在位置を、その午前3時の時点の現在位置として取得してもよい。その時点の現在位置が履歴に存在しない場合には、その時点では地図情報表示装置1の電源が切られており、地図情報表示装置1の位置が変化していないと考えられる。したがって、その時点の現在位置は、その時点の直前あるいは直後の現在位置、すなわち、地図情報表示装置1の電源が切られる前あるいは電源が投入された後の現在位置と同じであると考えられるからである。なお、除外位置情報蓄積部54が除外位置情報を蓄積するタイミングは問わない。例えば、前述の条件を用いる場合には、除外位置情報蓄積部54は、1週間に1回、直近の1週間の履歴について、その条件を満たすかどうかの判断を行い、条件を満たす場合に、除外位置情報を蓄積してもよい。また、条件を満たす場合であっても、蓄積対象となる除外位置情報が、除外位置情報記憶部51ですでに記憶されている除外位置情報と同じ場合には、除外位置情報蓄積部54は、その除外位置情報の蓄積を行わなくてもよい。また、条件は、前述のものに限定されないことは言うまでもない。例えば、1週間のうち、最も滞在時間が長いという条件であってもよい。その条件の場合には、除外位置情報蓄積部54は、現在位置の履歴を参照し、1週間のうちで最も滞在時間の長い位置を特定し、その特定した位置である除外位置情報を除外位置情報記憶部51に蓄積することになる。なお、その条件の場合に、履歴に含まれない時間帯の現在位置は、その空白の時間帯の直前または直後の現在位置であるとして判断を行ってもよい。
次に、この除外位置情報を用いることによって、訪問位置が送信されない場合の動作について、具体例を用いて説明する。履歴蓄積部53は、1分ごとに現在位置の履歴を蓄積するものとする。すると、その履歴は、例えば、次のようになる。
日時 現在位置
2009年9月22日21時51分 (X5001,Y5001)
2009年9月22日21時52分 (X5002,Y5002)
2009年9月22日21時53分 (X5003,Y5003)
2009年9月22日21時54分 (X5004,Y5004)
2009年9月23日 7時02分 (X5005,Y5005)
2009年9月23日 7時03分 (X5006,Y5006)
2009年9月23日 7時04分 (X5007,Y5007)
2009年9月23日 7時05分 (X5008,Y5008)
: :
: :
次に、ある時点において、除外位置情報蓄積部54が、除外位置情報の蓄積を行うと判断したとする。そして、その処理で用いる条件は、前述のように、週に4日以上、午前3時の時点の位置が一致することであったとする。その場合には、例えば、除外位置情報蓄積部54は、9月23日の午前3時の位置として、現在位置(X5005,Y5005)を取得する。また、同様にして、除外位置情報蓄積部54は、判断対象となる1週間の7日分の午前3時の現在位置を取得し、誤差の範囲内で一致するものを選び出す。この場合には、7日分の全ての午前3時の現在位置が誤差の範囲内で一致したとする。すると、除外位置情報蓄積部54は、その現在位置である除外位置情報を除外位置情報記憶部51に蓄積する。その蓄積された除外位置情報は、(X6001,Y6001)であったとする。
その後、判断部14が、ある地点に留まったと判断したとする。すると、訪問位置取得部15は、その判断に応じて、現在位置取得部12から現在位置(X7001,Y7001)を取得し、除外位置判断部52に渡す。除外位置判断部52は、その受け取った現在位置と誤差の範囲内で一致する除外位置情報が除外位置情報記憶部51で記憶されているかどうか判断する。この場合には、前述の除外位置情報(X6001,Y6001)と、訪問位置(X7001,Y7001)とが誤差の範囲内で一致したとする。すると、除外位置判断部52は、訪問位置(X7001,Y7001)が、除外位置情報(X6001,Y6001)の示す位置であると判断し、その判断結果を訪問位置送信部16に渡す。そして、訪問位置送信部16は、その訪問位置を送信しない。このようにして、自宅などの位置を訪問位置として送信しないようにすることができる。なお、除外位置判断部52によって、訪問位置と一致する除外位置情報が存在しないと判断された場合には、訪問位置送信部16によって、訪問位置の送信が行われることになる。なお、ここでは、除外位置情報と訪問位置とを対比する場合について説明したが、判断部14がある位置に留まったと判断した場合に、除外位置判断部52は、その時点の現在位置(すなわち、訪問位置取得部15による取得の対象となる位置)と、除外位置情報とを対比し、両者が一致する場合に、訪問位置の取得自体を行わないようにしてもよい。
また、上記説明では、図2で示される地図情報表示装置1が除外位置情報記憶部51や除外位置判断部52等を備えた場合について説明したが、図13で示される地図情報表示装置1が、図21で示されるように、除外位置情報記憶部51や除外位置判断部52、履歴蓄積部53、除外位置情報蓄積部54をさらに備えてもよい。この場合にも、送信の対象となる訪問位置が、除外位置情報の示す位置であるときには、訪問位置が送信されないことになる。すなわち、目的地受付部31が受け付けた目的地(あるいは、その後に訪問位置取得部32が取得した訪問位置であってもよい)が、除外位置情報記憶部51で記憶されている、いずれかの除外位置情報の示す位置であると判断された場合に、訪問位置が送信されないことになる。
なお、上記説明では、除外位置情報蓄積部54によって、自動的に除外位置情報が登録される場合について説明したが、そうでなくてもよい。例えば、ユーザが手作業で、自宅の位置に対応する除外位置情報や、その他の訪問情報を蓄積したくない位置に対応する除外位置情報を除外位置情報記憶部51に登録してもよい。その場合には、図20や図21で示される地図情報表示装置1は、履歴蓄積部53や、除外位置情報蓄積部54を備えていなくてもよい。また、その場合には、除外位置情報記憶部51に除外位置情報が記憶される過程は問わない。例えば、記録媒体を介して除外位置情報が除外位置情報記憶部51で記憶されるようになってもよく、通信回線等を介して送信された除外位置情報が除外位置情報記憶部51で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された除外位置情報が除外位置情報記憶部51で記憶されるようになってもよい。
また、上記各実施の形態において、要求情報には、表示部13が表示中の地図に含まれる地点名が含まれてもよい。そして、サーバ2では、その地点名を含む訪問位置であって、しきい値よりも多い受信回数に対応する訪問位置が存在する場合に、その地点名を含む訪問位置を取得して送信してもよい(あるいは、人気スポットである旨のみを送信してもよい)。そして、地図情報表示装置1において、表示中の地図上の地点名の位置に、人気スポットである旨を出力するようにしてもよい。一方、サーバ2において、要求情報に含まれる地点名を含む訪問位置が存在しない場合や、その地点名を含む訪問位置の受信回数がしきい値よりも少ない場合には、その地点名を含む訪問位置を送信しなくてもよく、あるいは、人気スポットではない旨を送信してもよい。そして、地図情報表示装置1では、地図上に何も表示が行われなくてもよく、あるいは、人気スポットではない旨が表示されてもよい。
また、上記各実施の形態において、各処理または各機能は、単一の装置または単一のシステムによって集中処理されることによって実現されてもよく、あるいは、複数の装置または複数のシステムによって分散処理されることによって実現されてもよい。
また、上記各実施の形態において、各構成要素が実行する処理に関係する情報、例えば、各構成要素が受け付けたり、取得したり、選択したり、生成したり、送信したり、受信したりした情報や、各構成要素が処理で用いるしきい値や数式、アドレス等の情報等は、上記説明で明記していない場合であっても、図示しない記録媒体において、一時的に、あるいは長期にわたって保持されていてもよい。また、その図示しない記録媒体への情報の蓄積を、各構成要素、あるいは、図示しない蓄積部が行ってもよい。また、その図示しない記録媒体からの情報の読み出しを、各構成要素、あるいは、図示しない読み出し部が行ってもよい。
また、上記各実施の形態において、各構成要素等で用いられる情報、例えば、各構成要素が処理で用いるしきい値やアドレス、各種の設定値等の情報がユーザによって変更されてもよい場合には、上記説明で明記していない場合であっても、ユーザが適宜、それらの情報を変更できるようにしてもよく、あるいは、そうでなくてもよい。それらの情報をユーザが変更可能な場合には、その変更は、例えば、ユーザからの変更指示を受け付ける図示しない受付部と、その変更指示に応じて情報を変更する図示しない変更部とによって実現されてもよい。その図示しない受付部による変更指示の受け付けは、例えば、入力デバイスからの受け付けでもよく、通信回線を介して送信された情報の受信でもよく、所定の記録媒体から読み出された情報の受け付けでもよい。
また、上記各実施の形態において、地図情報表示装置1やサーバ2に含まれる2以上の構成要素が通信デバイスや入力デバイス等を有する場合に、2以上の構成要素が物理的に単一のデバイスを有してもよく、あるいは、別々のデバイスを有してもよい。
また、上記各実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。なお、上記実施の形態における地図情報表示装置1を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータを、2以上の地図情報表示装置とサーバとを備えた情報処理システムを構成する地図情報表示装置として機能させるためのプログラムであって、現在位置を取得する現在位置取得部、現在位置取得部が取得した現在位置に応じた、地図に関する情報である地図情報を、地図情報が記憶される地図情報記憶部から読み出して表示する表示部、訪問地点の位置を示す訪問位置を取得する訪問位置取得部、訪問位置取得部が取得した訪問位置をサーバに送信する訪問位置送信部、サーバから送信された訪問位置を受信する訪問位置受信部、訪問位置受信部が受信した訪問位置を出力する出力部として機能させるためのプログラムである。
また、上記各実施の形態におけるサーバ2を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータを、2以上の地図情報表示装置とサーバとを備えた情報処理システムを構成するサーバとして機能させるためのプログラムであって、地図情報表示装置の訪問地点の位置を示す訪問位置を地図情報表示装置から受信する受信部、受信部による訪問位置の受信に応じて、受信部が受信した訪問位置を少なくとも有する情報である訪問情報が記憶される訪問情報記憶部で記憶されている訪問情報を更新する訪問情報更新部、訪問情報に含まれる訪問位置を取得する取得部、取得部が取得した訪問位置を送信する送信部として機能させるためのプログラムである。
なお、上記プログラムにおいて、上記プログラムが実現する機能には、ハードウェアでしか実現できない機能は含まれない。例えば、情報を取得する取得部や、情報を出力する出力部、情報を送信する送信部、情報を受信する受信部などにおけるモデムやインターフェースカードなどのハードウェアでしか実現できない機能は、上記プログラムが実現する機能には少なくとも含まれない。
また、このプログラムは、サーバなどからダウンロードされることによって実行されてもよく、所定の記録媒体(例えば、CD−ROMなどの光ディスクや磁気ディスク、半導体メモリなど)に記録されたプログラムが読み出されることによって実行されてもよい。また、このプログラムは、プログラムプロダクトを構成するプログラムとして用いられてもよい。
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
図22は、上記プログラムを実行して、上記各実施の形態による地図情報表示装置1、サーバ2を実現するコンピュータの外観の一例を示す模式図である。上記各実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムによって実現されうる。
図22において、コンピュータシステム900は、CD−ROM(Compact Disk Read Only Memory)ドライブ905、FD(Floppy(登録商標) Disk)ドライブ906を含むコンピュータ901と、キーボード902と、マウス903と、モニタ904とを備える。
図23は、コンピュータシステム900の内部構成を示す図である。図23において、コンピュータ901は、CD−ROMドライブ905、FDドライブ906に加えて、MPU(Micro Processing Unit)911と、ブートアッププログラム等のプログラムを記憶するためのROM912と、MPU911に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するRAM(Random Access Memory)913と、アプリケーションプログラム、システムプログラム、及びデータを記憶するハードディスク914と、MPU911、ROM912等を相互に接続するバス915とを備える。なお、コンピュータ901は、LANへの接続を提供する図示しないネットワークカードを含んでいてもよい。
コンピュータシステム900に、上記各実施の形態による地図情報表示装置1、サーバ2の機能を実行させるプログラムは、CD−ROM921、またはFD922に記憶されて、CD−ROMドライブ905、またはFDドライブ906に挿入され、ハードディスク914に転送されてもよい。これに代えて、そのプログラムは、図示しないネットワークを介してコンピュータ901に送信され、ハードディスク914に記憶されてもよい。プログラムは実行の際にRAM913にロードされる。なお、プログラムは、CD−ROM921やFD922、またはネットワークから直接、ロードされてもよい。
プログラムは、コンピュータ901に、上記各実施の形態による地図情報表示装置1、サーバ2の機能を実行させるオペレーティングシステム(OS)、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム900がどのように動作するのかについては周知であり、詳細な説明は省略する。
また、本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。