(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-02-07
(45)【発行日】2024-02-16
(54)【発明の名称】コンピュータシステムおよびプログラム
(51)【国際特許分類】
G01C 21/26 20060101AFI20240208BHJP
G01C 21/34 20060101ALI20240208BHJP
G08G 1/005 20060101ALI20240208BHJP
G08G 1/09 20060101ALI20240208BHJP
G09B 29/00 20060101ALI20240208BHJP
【FI】
G01C21/26 P
G01C21/34
G08G1/005
G08G1/09 F
G09B29/00 A
(21)【出願番号】P 2020034589
(22)【出願日】2020-03-02
【審査請求日】2022-10-12
(73)【特許権者】
【識別番号】597151563
【氏名又は名称】株式会社ゼンリン
(74)【代理人】
【識別番号】100095407
【氏名又は名称】木村 満
(74)【代理人】
【識別番号】100181618
【氏名又は名称】宮脇 良平
(74)【代理人】
【識別番号】100162259
【氏名又は名称】末富 孝典
(74)【代理人】
【識別番号】100146916
【氏名又は名称】廣石 雅紀
(74)【代理人】
【識別番号】100147924
【氏名又は名称】美恵 英樹
(72)【発明者】
【氏名】中原 公大
(72)【発明者】
【氏名】伊藤 千志
【審査官】貞光 大樹
(56)【参考文献】
【文献】特開2015-194438(JP,A)
【文献】特開2010-60712(JP,A)
【文献】特開2013-257280(JP,A)
【文献】特開2013-257822(JP,A)
【文献】特開2009-134280(JP,A)
【文献】米国特許出願公開第2018/0188035(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G01C 21/00 - 21/36
G08G 1/00 - 1/16
G09B 29/00 - 29/14
(57)【特許請求の範囲】
【請求項1】
プロセッサを備えるコンピュータシステムであって、
前記プロセッサが、高さ方向の配置が地物の階層に基づいて設定された3次元ブロックを用いて現実世界の地理的位置を表現する地図データに基づいて、前記コンピュータシステムへの要求に対応する前記地理的位置を特定
し、
前記プロセッサが、第1コンピュータから受信した前記要求に対応する前記地理的位置を示す前記3次元ブロックの識別子を前記第1コンピュータに送信し、
前記第1コンピュータが、前記識別子を暗号化し、該暗号化された識別子を第2コンピュータに送信する、
コンピュータシステム。
【請求項2】
前記第1コンピュータにおいて、前記要求に対応する前記地理的位置が前記3次元ブロックによって表示される、
請求項
1に記載のコンピュータシステム。
【請求項3】
前記地物が建築物である、
請求項1
または2に記載のコンピュータシステム。
【請求項4】
前記プロセッサが、
出発地から目的地までの移動経路を得るための前記要求を第1コンピュータから受信し、
前記移動経路を示す複数の前記3次元ブロックを前記地図データに基づいて抽出し、
前記複数の3次元ブロックを示す経路情報を前記第1コンピュータに送信する、
請求項1~
3の何れか一項に記載のコンピュータシステム。
【請求項5】
前記第1コンピュータにおいて、前記移動経路が前記複数の3次元ブロックによって表示される、
請求項
4に記載のコンピュータシステム。
【請求項6】
高さ方向の配置が地物の階層に基づいて設定された3次元ブロックを用いて現実世界の地理的位置を表現する地図データに基づいて、要求に対応する前記地理的位置を特定するステップ
と、
第1コンピュータから受信した前記要求に対応する前記地理的位置を示す前記3次元ブロックの識別子を前記第1コンピュータに送信するステップと、をコンピュータに実行させ、
前記識別子を暗号化し、該暗号化された識別子を第2コンピュータに送信するステップを前記第1コンピュータに実行させる、
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示の一側面はコンピュータシステム、処理方法、プログラム、および/またはデータ構造に関する。
【背景技術】
【0002】
従来から、位置を特定する技術が知られている(例えば、特許文献1を参照)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
本開示の一側面は、位置を適切に特定することを目的とする。
【課題を解決するための手段】
【0005】
本開示の一側面に係るコンピュータシステムは、プロセッサを備えるコンピュータシス
テムであって、プロセッサが、高さ方向の配置が地物の階層に基づいて設定された3次元
ブロックを用いて現実世界の地理的位置を表現する地図データに基づいて、コンピュータ
システムへの要求に対応する地理的位置を特定する。プロセッサが、第1コンピュータから受信した要求に対応する地理的位置を示す3次元ブロックの識別子を第1コンピュータに送信し、第1コンピュータが、識別子を暗号化し、暗号化された識別子を第2コンピュータに送信する。
【図面の簡単な説明】
【0006】
【
図1】実施形態に係る位置特定システムの適用の一例を示す図である。
【
図2】実施形態に係るプラットフォーマサーバのハードウェア構成の一例を示す図である。
【
図3】地図データの3次元ブロックによって表される地理的位置の例を示す図である。
【
図4】地図データのデータ構造の例を示す図である。
【
図5】実施形態に係るプラットフォーマサーバの機能構成の一例を示す図である。
【
図6】実施形態に係る位置特定システムの動作の一例を示すシーケンス図である。
【
図7】実施形態に係る位置特定システムの動作の一例を示すシーケンス図である。
【
図8】実施形態に係る位置特定システムの動作の一例を示すシーケンス図である。
【発明を実施するための形態】
【0007】
以下、添付図面を参照しながら本開示での実施形態を詳細に説明する。なお、図面の説明において同一または同等の要素には同一の符号を付し、重複する説明を省略する。
【0008】
[システムの概要]
実施形態に係る位置特定システム1は、要求に対応する地理的位置を特定するコンピュータシステムである。要求とは、地理的位置または該地理的位置に関連する情報を取得するための情報をいう。地理的位置とは、現実世界における場所をいう。「要求に対応する地理的位置」とは、要求により示される条件を満たす地理的位置をいう。位置特定システム1は、例えば、要求者の要求に対応する地理的位置を特定する。
【0009】
要求者とは位置特定システム1に地理的位置を特定させようとする人または組織をいう。要求者は個人でもよいし複数人から成るグループでもよい。本開示では要求者の例としてユーザおよび事業者を示す。ユーザとは、商品またはサービスを消費する消費者になり得る人または組織をいう。事業者とは、ユーザに商品またはサービスを提供する人または組織をいう。位置特定システム1と関係する事業者は限定されない。事業者の例として、鉄道、バス、タクシー、飛行機、船舶などの各種の交通機関の事業者と、自動車、自転車などの各種の移動手段のレンタル事業者と、配車サービスの事業者と、荷物の運搬サービスの事業者と、ショッピング、レストラン、駐車場などの各種施設を運営する事業者と、各種のイベントを運営する事業者と、広告、クーポンなどの各種情報を提供する事業者と、国または自治体の各種の組織とが挙げられる。
【0010】
位置特定システム1は、3次元ブロックを用いて現実世界の地理的位置を表現する地図データに基づいて、要求に対応する地理的位置を特定する。3次元ブロックとは、現実世界(より具体的には現実の3次元空間)を区切る仮想の3次元図形をいう。3次元ブロックの水平方向の配置は任意の方針で設定されてよい。一方、3次元ブロックの高さ方向(すなわち鉛直方向)の配置は地物の階層に基づいて設定される。3次元ブロックは、例えば、ボクセルであってもよい。
【0011】
地物とは、地上に存在する任意の有体物または無体物である。地物は自然物でも人工物でもよい。例えば、地物は、山地、農地、住宅地、更地、河川、湖、海、観光地、道路、鉄道、建物、公園、塔、信号機、踏切、横断歩道、歩道橋、浮標などを含み得る。無体物である地物の例として、任意の目的で設定された区域(例えば、撮影禁止区域、一時的な進入禁止区域など)、イベントが開催される区域、集合場所、撮影スポットなどが挙げられる。地物の種類はこれらに限定されない。
【0012】
地物の階層とは、一つの地物における、高さ方向に沿って配置された1以上の層の集合をいう。例えば、2階建て以上の建物、立体駐車場、展望台を有するタワーなどの建築物は、2以上の層(すなわち、2以上のフロア)の集合から成る階層を有する。隣接する層(フロア)は離れてもよい。例えば、展望台を備えるタワーについては、典型的には、地上階(地面の直上の階)に対応する層と展望台に対応する層とが離れている。地物の階層の少なくとも一部は地下に位置してもよく、この場合には、地下にも3次元ブロックが設定される。地物の階層は自然物に対して設定されてもよい。例えば、山、丘などの自然物に対して自然にまたは人工的に形成された空間に対応する層が設定されてもよい。道路、平地、平屋建ての建物などのように、高さ方向に沿って一つの層しか存在しない地物がある。このような地物には、高さ方向に沿って一つの3次元ブロックが設定され得る。
【0013】
位置特定システム1は、3次元ブロックを用いて表現する地図データに基づいて、要求に対応する地理的位置を特定する。位置特定システム1は地理的位置の特定を含む任意の処理を実行してよい。例えば、位置特定システム1は移動経路を特定してもよい。移動経路とは、或る地点から別の地点までの移動に関する情報をいい、例えば、出発地から目的地までの移動に関する情報をいう。出発地とは、移動経路を検索するための始点として設定される場所のことをいう。目的地とは、その検索のための終点として設定される場所のことをいう。出発地および目的地はいずれも移動経路検索の基準点である。
【0014】
一例では、移動経路は、設定された出発地から目的地までの経路だけでなく、その経路の属性(以下では「経路属性」という)も示すことができる。経路属性とは、経路の性質、特徴、または状況を表す任意の情報である。例えば、経路属性は、交通機関などの移動手段と、経路を移動するための所要時間または費用と、経路に関連する地物(すなわち地物情報)と、経路に関連する事業者(すなわち事業者情報)と、経路に関連するサービス情報(例えば広告情報など)と、経路の状況(例えば交通情報)とのうちの少なくとも一つを含んでもよい。
【0015】
位置特定システム1を通じて、要求者は要求した所望の情報を得ることができる。例えば、要求者は所望の地理的位置または移動経路を知ったり、その地理的位置または移動経路に関連する付加情報(例えば広告情報)を得たりすることができる。
【0016】
[システムの構成]
図1は位置特定システム1の適用の一例を示す図である。位置特定システム1は、要求に対応する地理的位置を特定するコンピュータであるプラットフォーマサーバ10を備える。一例では、プラットフォーマサーバ10は通信ネットワークNWを介して地図データベース20、1以上のユーザ端末30、および1以上の事業者システム40と接続する。ユーザ端末30および事業者システム40は、第1コンピュータの一例または第2コンピュータの一例である。
【0017】
プラットフォーマサーバ10は、位置特定システム1の主要な機能を実行するコンピュータである。プラットフォーマサーバ10として機能するコンピュータは限定されない。一例では、プラットフォーマサーバ10は、業務用サーバなどの大型のコンピュータによって構成される。
【0018】
図2は、プラットフォーマサーバ10のハードウェア構成の一例を示す図である。例えば、プラットフォーマサーバ10は制御回路100を有する。一例では、制御回路100は、一つまたは複数のプロセッサ101と、メモリ102と、ストレージ103と、通信ポート104と、入出力ポート105とを有する。プロセッサ101は、オペレーティングシステムおよびアプリケーションプログラムを実行する。ストレージ103は、ハードディスク、不揮発性の半導体メモリ、または取り出し可能な媒体(例えば、磁気ディスク、光ディスクなど)の記憶媒体で構成され、オペレーティングシステムおよびアプリケーションプログラムを記憶する。メモリ102は、ストレージ103からロードされたプログラム、またはプロセッサ101による演算結果を一時的に記憶する。一例では、プロセッサ101は、メモリ102と協働してプログラムを実行することで、各機能モジュールとして機能する。通信ポート104は、プロセッサ101からの指令に従って、通信ネットワークNWを介して他の装置との間でデータ通信を行う。入出力ポート105は、プロセッサ101からの指令に従って、キーボード、マウス、モニタなどの入出力装置(ユーザインタフェース)との間で電気信号の入出力を実行する。
【0019】
プラットフォーマサーバ10は一つまたは複数のコンピュータにより構成され得る。複数のコンピュータが用いられる場合には、通信ネットワークを介してこれらのコンピュータが互いに接続されることで論理的に一つのプラットフォーマサーバ10が構成される。
【0020】
再び
図1を参照する。地図データベース20は、位置特定システム1において必要なデータを永続的に記憶する非一時的な記憶媒体または記憶装置である。地図データベース20は、位置特定システム1の一部として構築されてもよいし、位置特定システム1とは別のコンピュータシステムに設けられてもよい。プラットフォーマサーバ10は、地図データベース20にアクセスしてデータを読み取ったり書き込んだりすることができる。地図データベース20は位置特定システム1(より具体的には、プラットフォーマサーバ10)によって複数の要求者の間で共有され得る。地図データベース20は、3次元ブロックを用いて現実世界の地理的位置を表現する地図データ21を記憶する。
【0021】
ユーザ端末30はユーザによって操作されるコンピュータである。ユーザ端末30は固定端末でもよいし携帯端末でもよい。ユーザ端末30の例として、携帯電話機、スマートフォン、タブレット端末、ウェアラブル端末、またはパーソナルコンピュータが挙げられるが、端末の種類はこれらに限定されない。位置特定システム1にアクセスするユーザ端末30の台数は限定されない。ユーザ端末30は、自機の地理的位置を示すGPS(Global Positioning System)機能を有してもよい。
【0022】
事業者システム40は事業者によって管理または運用されるコンピュータシステムである。位置特定システム1にアクセスする事業者システム40の個数は限定されない。一例では、事業者システム40は事業者サーバ41およびオペレータ端末42を有する。事業者サーバ41は、事業者によって管理または運用されるコンピュータである。事業者サーバ41として機能するコンピュータは限定されない。例えば、事業者サーバ41は業務用サーバなどの大型のコンピュータによって構成されてもよいし、パーソナルコンピュータによって構成されてもよい。オペレータ端末42は事業者のオペレータによって操作されるコンピュータである。オペレータ端末42は固定端末でもよいし携帯端末でもよい。オペレータ端末42の例として、携帯電話機、スマートフォン、タブレット端末、ウェアラブル端末、またはパーソナルコンピュータが挙げられるが、端末の種類はこれらに限定されない。
【0023】
図3は地図データの3次元ブロックによって表される地理的位置の例を示す図である。この例では、現実空間を3次元座標で表し、水平方向に沿ってX軸およびY軸を設定し、高さ方向(鉛直方向)に沿ってZ軸を設定するものとする。
図3では説明のために、個々の3次元ブロック51を地表に投影することで得られる個々のメッシュ52を示す。一例では、3次元ブロック51は直方体であり、水平方向に沿った3次元ブロック51の面は矩形であるとする。X軸およびY軸に沿った3次元ブロック51の一辺の寸法(言い換えるとメッシュ52の大きさ)は任意の方針で設定されてよい。その一辺の長さは、例えば、2m、3m、または5mでもよい。
【0024】
上述したように、3次元ブロック51の高さ方向の配置は地物の階層に基づいて設定される。言い換えると、高さ方向(
図3におけるZ方向)に沿った3次元ブロック51の寸法は、その3次元ブロックの場所に位置する地物の層の高さによって規定される。階層を構成する個々の層の高さは地物によって異なる。例えば、1フロアの高さは、建物の種類、建物の設計方針、建築に関する法律上の規定などの様々な要因によって、個々の建築物の間で様々な値を取り得る。3次元ブロック51の高さ方向の配置が地物の階層に基づいて設定されるということは、当該配置が個々の地物の階層に応じて変わることを意味する。
図3の例では、共に3階建ての建物60(建物A)と建物70(建物B)とでは各階の高さが異なり、これに応じて、建物60に対応する3次元ブロック51aと建物70に対応する3次元ブロック51bとでは、高さ方向の寸法が異なる。3次元ブロックの高さ方向の配置は地表面からの高さ、標高などの絶対値で決まるのではなく、個々の地物の構造によって決まることに留意されたい。例えば、地物が2階建てのアパートメントであり、各フロアの高さが3mであるとすれば、このビルに対応する3次元ブロックの高さ方向の配置は、1階部分に対応する高さ3mの3次元ブロックと、2階部分に対応する高さ3mの3次元ブロックとによって構成される。別の例として、地物が3階建てのビルであり、各フロアの高さが4mであるとすれば、このビルに対応する3次元ブロックの高さ方向の配置は、1階部分に対応する高さ4mの3次元ブロックと、2階部分に対応する高さ4mの3次元ブロックと、3階部分に対応する高さ4mの3次元ブロックとによって構成される。
【0025】
一例では、個々の3次元ブロック51は、該3次元ブロックの位置を用いて区別される。具体的には、個々の3次元ブロックはX軸方向、Y軸方向およびZ軸方向のそれぞれの位置によって区別される。X軸方向、Y軸方向およびZ軸方向における3次元ブロックの位置をそれぞれ位置番号Xp、位置番号Yq、および位置番号Zrで表すとすると、その3次元ブロックの位置を(Xp,Yq,Zr)と表すことができる。個々の位置番号は3次元ブロックの並び順に基づいて設定されるとする。本開示では3軸の位置番号(Xp,Yq,Zr)によって表現される座標を「番号座標」という。この番号座標(Xp,Yq,Zr)は、個々の3次元ブロックを一意に特定する識別子として機能し得る。現実世界の地理的位置はその番号座標(Xp,Yq,Zr)を用いて表すことができる。
【0026】
或る地物が、連続する複数の3次元ブロックを占めるように存在する場合、当該地物の地理的位置は、その複数の3次元ブロックの組み合わせを用いて表されてもよいし、その複数の3次元ブロックのうちの一つを用いて表されてもよい。本開示では、X軸方向に沿って位置番号Xpaから位置番号Xpbまで連続して存在する複数の3次元ブロックの位置を位置番号の範囲Xpa-pbによって表す。同様に、Y軸方向に沿って位置番号Yqaから位置番号Yqbまで連続して存在する複数の3次元ブロックの位置を範囲Yqa-qbによって表し、Z軸方向に沿って位置番号Zraから位置番号Zrbまで連続して存在する複数の3次元ブロックの位置を範囲Zra-rbと表す。
【0027】
図3の例において、建物60の地理的位置は番号座標(X
8-12,Y
4-5,Z
1-3)によって表される。建物70の地理的位置は番号座標(X
19-23,Y
3-4,Z
1-3)によって表される。地物の構成要素の地理的位置も番号座標によって示すことができる。
図3の例では、建物60内の部屋61(建物Aの101号室)の地理的位置は番号座標(X
8-9,Y
4,Z
1)によって表される。建物70内の部屋71(建物Bの302号室)の地理的位置は番号座標(X
22-23,Y
3,Z
3)によって表される。建物70の出入口72(建物Bの出入口)の地理的位置は番号座標(X
20,Y
3,Z
1)によって表される。建物70のエレベータ73(建物Bのエレベータ)の地理的位置は番号座標(X
21,Y
3,Z
1―3)によって表される。
【0028】
図4は地図データ21のデータ構造の一例を示す図である。一例では、地図データ21の各レコードは、3次元ブロックを一意に特定する識別子であるブロックIDと、その3次元ブロックの番号座標と、その3次元ブロックに対応する緯度および経度と、その3次元ブロックに対応する住所と、その3次元ブロックに対応する地物(または地物の構成要素)の情報である地物情報とを有する。
図4に示す各レコードは、
図3に示す地理的位置に対応する。
【0029】
地図データ21を構成する情報は静的に設定されてもよいし動的に設定されてもよい。「静的に設定される」とは、値が予め設定され、人手の介入がない限りはその設定が変更されないことをいう。一方、「動的に設定される」とは、値が任意の事象に応じて人手の介入無しに変更され得ることをいう。動的な設定は、所与のデータ項目を制御するプログラムが所定のコンピュータ上で実行されることで実現される。動的な設定は位置特定システム1により実行されてもよいし、別のコンピュータシステムにより実行されてもよい。
【0030】
地図データ21のデータ構造は
図4の例に限定されず、任意の方針で設計されてよい。例えば、地図データ21が任意の方針で正規化または非正規化されて一または複数のデータテーブル上に記憶されてもよい。一例として、地図データ21の個々のレコードは、3次元ブロックごとにではなく、地物ごとにまたは地物の構成要素ごとに生成されてもよい。地図データ21の少なくとも一部の情報は位置特定システム1の運営者とは異なる少なくとも一つの事業者によって提供されてもよい。あるいは、少なくとも一つの事業者のデータベースが地図データベース20の役割の少なくとも一部を担ってもよい。
【0031】
また、地図データ21は3次元ブロックだけで構成されていてもよい。また、位置特定システム1は、地図データ21の3次元ブロックを用いて他の地図データにおける地理的位置を表現してもよい。位置特定システム1は、3次元ブロックの座標値を他の地図データに適用し、他の地図データの地理的位置を3次元ブロックを用いて表現してもよい。他の地図データとは、縮尺や主題の異なる地図データをいう。
【0032】
図5はプラットフォーマサーバ10の機能構成の一例を示す図である。プラットフォーマサーバ10は機能モジュールとして通信部11および検索部12を備える。通信部11は他のコンピュータとの間でデータを送受信する機能モジュールである。検索部12は現実世界の地理的位置を特定する機能モジュールである。
【0033】
[システムでの処理手順]
図6を参照しながら、位置特定システム1の動作を説明するとともに本実施形態に係る位置特定方法を説明する。
図6は位置特定システム1の動作の一例を処理シーケンスS1として示すシーケンス図である。処理シーケンスS1では、位置特定システム1はユーザ端末30から送信される要求に対応する地理的位置を地図データ21に基づき特定する。そして、位置特定システム1はその地理的位置を示すブロック情報をユーザ端末30に送信する。この検索処理は地理的位置の特定の一例である。
【0034】
ステップS11では、通信部11がユーザ端末30から要求を受信する。要求とは、例えば、地理的位置を特定するための入力情報である。ユーザはユーザ端末30を操作して、地理的位置の検索に必要な情報を入力し、その情報の送信を指示する。情報の入力方法は限定されない。例えば、ユーザは場所の名称、座標および住所のうちの少なくとも一つを入力してもよいし、ポインティングデバイスを用いて地図上で所望の場所を指定してもよい。ユーザ端末30はその操作に応答して検索条件を生成し、この検索条件を要求としてプラットフォーマサーバ10に向けて送信する。通信部11はその要求を受信する。要求(検索条件)によって示される情報は限定されず、例えば、要求は場所の名称、住所、および緯度経度のうちの少なくとも一つを含んでよい。
【0035】
ステップS12では、検索部12がその要求に対応する地理的位置を検索する。検索部12は要求に基づいて地図データベース20内の地図データ21を検索することで、該要求に対応する3次元ブロックを抽出する。検索部12は複数の3次元ブロックを抽出してもよく、例えば、検索条件で示される地物に対応する複数の3次元ブロックを抽出してもよい。検索部12は抽出された少なくとも一つの3次元ブロックを示すブロック情報を生成する。一例では、ブロック情報は、それぞれの3次元ブロックについて、ブロックIDおよび番号座標のうちの少なくとも一つを含む。
【0036】
ステップS13では、通信部11がそのブロック情報を検索結果としてユーザ端末30に向けて送信する。ユーザ端末30はそのブロック情報を受信する。ユーザ端末30はそのブロック情報を表示してもよく、この場合には、ユーザはそのブロック情報(検索結果)を確認することができる。
【0037】
ステップS14では、ユーザ端末30がブロック情報を、すなわち、3次元ブロックの識別子を暗号化する。3次元ブロックの識別子は、例えば、予め複数の単語、記号、画像などで暗号化されてもよい。暗号化とは、第三者に情報を知られることを防止するためにその情報を変換する処理をいう。暗号化の手法は何ら限定されない。ユーザ端末30は、例えば、事業者からユーザに与えられた、該事業者に固有の暗号鍵(例えば公開鍵)を用いてブロック情報を暗号化する。
【0038】
ステップS15では、ユーザ端末30が、暗号化されたブロック情報を事業者システム40に向けて送信する。事業者システム40はそのブロック情報を受信する。
【0039】
ステップS16では、事業者システム40が、暗号化されたブロック情報を復号する。一例では、事業者サーバ41が、ユーザに与えられた暗号鍵に対応する復号鍵(例えば秘密鍵)を用いて、暗号化されたブロック情報を復号する。
【0040】
ステップS17では、オペレータ端末42がブロック情報で示される3次元ブロックを用いて地理的位置を表示する。オペレータ端末42は、例えば、その3次元ブロックを地図上の対応する場所に表示する。
【0041】
処理シーケンスS1によれば、ユーザ端末30から事業者システム40へは、人が地理的位置を容易に特定できるような表記(例えば、名称、住所、または緯度経度)ではなくブロック情報が提供される。したがって、ユーザは、プライバシーに直結する情報を事業者以外の第三者に知らせることなく、地理的位置を該事業者に伝達することができる。加えて、その伝達の際にはブロック情報が暗号化されるので、ブロック情報の秘匿性を高めることができる。
【0042】
図7は位置特定システム1の動作の一例を処理シーケンスS2として示すシーケンス図である。処理シーケンスS2では、位置特定システム1は、事業者の拠点を出発地とし、ユーザの要求に対応する地理的位置を目的地とする移動経路を地図データ21に基づき特定する。この経路検索は地理的位置の特定の一例である。
【0043】
ステップS21では、通信部11が事業者システム40から要求を受信する。事業者のオペレータはオペレータ端末42を操作して、移動経路の検索に必要な情報を入力し、その情報の送信を指示する。オペレータ端末42はその操作に応答して検索条件を生成し、この検索条件を要求としてプラットフォーマサーバ10に向けて送信する。通信部11はその要求を受信する。検索条件は、オペレータにより指定された出発地および目的地を少なくとも示す。一例では、目的地は、処理シーケンスS1においてユーザ端末30から提供されたブロック情報によって示される。検索条件は出発日時および到着日時のうちの少なくとも一つ、移動手段(例えば、車、トラック、徒歩など)、少なくとも一つの経由地などの、他のデータ項目をさらに含んでもよい。経由地とは、出発地および目的地を結ぶ移動経路の途中にある点として設定される場所のことをいう。
【0044】
ステップS22では、検索部12がその要求に対応する移動経路を検索する。検索部12は要求に基づいて地図データベース20内の地図データ21を検索することで、出発地から目的地までの移動経路に対応する複数の3次元ブロックを抽出する。検索された移動経路は、出発地の3次元ブロックから目的地の3次元ブロックにかけて連続して並ぶ複数の3次元ブロックによって表される。一例では、移動経路の3次元ブロックは、道路、線路、航路、空路などの地物に対応する3次元ブロックと、出入口、エレベータ、通路などのような地物の構成要素に対応する3次元ブロックとの少なくとも一方を含む。検索部12は複数の移動経路を検索してもよく、例えば、道筋が互いに異なる複数の移動経路、道筋は同じだが交通手段または移動日時が互いに異なる複数の移動経路、あるいはこれらの移動経路の双方を検索してもよい。検索部12は1以上の移動経路のそれぞれについて、該移動経路を構成する複数の3次元ブロックを示す経路情報を生成する。一例では、経路情報は、それぞれの3次元ブロックについて、ブロックIDおよび番号座標のうちの少なくとも一つを含む。
【0045】
ステップS23では、通信部11がその経路情報を検索結果として事業者システム40に向けて送信する。事業者システム40ではオペレータ端末42がその経路情報を受信する。
【0046】
ステップS24では、オペレータ端末42が経路情報で示される複数の3次元ブロックを用いて移動経路を表示する。オペレータ端末42は、例えば、一または複数の移動経路のそれぞれについて、該移動経路を構成する複数の3次元ブロックを表示する。
【0047】
処理シーケンスS2によれば、移動経路が3次元ブロックの集合により表示されるので、事業者は移動経路を容易に把握することができる。
【0048】
図8は位置特定システム1の動作の一例を処理シーケンスS3として示すシーケンス図である。処理シーケンスS3では、位置特定システム1は、事業者システム40からの要求に対応する地理的位置を地図データ21に基づき特定し、その地理的位置の3次元ブロックに広告情報を関連付ける。ユーザがその地理的位置に行った場合に、ユーザ端末30は位置特定システム1から広告情報を取得する。事業者はこのような広告情報によって、地理的位置に関連する任意の宣伝を実施することができる。例えば、事業者は地理的位置において開催されるイベントを宣伝することができる。
【0049】
ステップS31では、通信部11が事業者システム40から要求を受信する。事業者のオペレータはオペレータ端末42を操作して、地理的位置の検索に必要な情報を入力し、その情報の送信を指示する。情報の入力方法は限定されない。例えば、オペレータは場所の名称および住所のうちの少なくとも一つを入力してもよいし、ポインティングデバイスを用いて地図上で所望の場所を指定してもよい。オペレータ端末42はその操作に応答して検索条件を生成し、この検索条件を要求としてプラットフォーマサーバ10に向けて送信する。通信部11はその要求を受信する。要求(検索条件)によって示される情報は限定されず、例えば、要求は場所の名称、住所、および緯度経度のうちの少なくとも一つを含んでよい。
【0050】
ステップS32では、検索部12がその要求に対応する地理的位置を検索する。検索部12は要求に基づいて地図データベース20内の地図データ21を検索することで、該要求に対応する3次元ブロックを抽出する。検索部12は複数の3次元ブロックを検索してもよく、例えば、検索条件で示される地物に対応する複数の3次元ブロックを検索してもよい。検索部12は抽出された少なくとも一つの3次元ブロックを示すブロック情報を生成する。一例では、ブロック情報は、それぞれの3次元ブロックについて、ブロックIDおよび番号座標のうちの少なくとも一つを含む。
【0051】
ステップS33では、通信部11がそのブロック情報を検索結果としてオペレータ端末42に向けて送信する。オペレータ端末42はそのブロック情報を受信および表示する。
【0052】
ステップS34では、事業者システム40がそのブロック情報で示される3次元ブロックに広告情報を関連付ける。例えば、事業者システム40は、オペレータ端末42を介して入力されたオペレータの指示に基づいてその関連付けを実行する。
【0053】
ステップS35では、事業者システム40が、互いに関連付けられたブロック情報および広告情報をプラットフォーマサーバ10に向けて送信する。通信部11はそれらの情報を受信する。プラットフォーマサーバ10はブロック情報と広告情報との関連付けを所定のデータベースに格納する。例えばプラットフォーマサーバ10はその関連付けを、地図データベース20に格納してもよいし、他のデータベースに格納してもよい。
【0054】
その後、ユーザ端末30を携帯したユーザが、広告情報が関連付けられた地理的位置を訪れたとする。ステップS36以降の処理はこのユーザの行動をきっかけにして実行される。
【0055】
ステップS36では、通信部11がユーザ端末30の地理的位置を示す位置情報を該ユーザ端末30から受信する。ユーザ端末30は、GPS機能により得られる自機の地理的位置を取得し、その地理的位置を示す位置情報をプラットフォーマサーバ10に向けて送信する。
【0056】
ステップS37では、検索部12がその位置情報に対応する広告情報を検索する。検索部12は位置情報に基づいて地図データベース20内の地図データ21を検索することで、該位置情報に対応する3次元ブロックを抽出する。さらに、検索部12は所定のデータベースを検索して、その3次元ブロックに関連付けられた広告情報を抽出する。
【0057】
ステップS38では、通信部11がその広告情報をユーザ端末30に向けて送信する。
【0058】
ステップS39では、ユーザ端末30がその広告情報を表示する。この結果、ユーザは現在訪れている場所に関連する広告を認識することができる。
【0059】
処理シーケンスS3によれば、事業者は地理的位置に対応する3次元ブロックに広告情報を関連付けることでユーザにその広告情報を提供することができる。
【0060】
図6~
図8に示された処理シーケンスS1~S3は、組み合わせて実行されてもよい。例えば、位置特定システム1は、ユーザ端末30から受信した要求に対応する地理的位置に関連付けられた広告情報を該ユーザ端末30に提供してもよい。
【0061】
[プログラム]
コンピュータをプラットフォーマサーバ10として機能させるためのプログラムは、該コンピュータを通信部11および検索部12として機能させるためのプログラムコードを含む。このプログラムは、CD-ROM、DVD-ROM、半導体メモリなどの非一時的な記録媒体に固定的に記録された上で提供されてもよい。あるいは、プログラムは、搬送波に重畳されたデータ信号として通信ネットワークを介して提供されてもよい。提供されたプログラムはストレージ103に記憶され、プロセッサ101がメモリ102と協働してそのプログラムを実行することで上記の各機能モジュールが実現する。
【0062】
[効果]
以上説明したように、本開示の一側面に係るコンピュータシステムはプロセッサを備える。プロセッサは、高さ方向の配置が地物の階層に基づいて設定された3次元ブロックを用いて現実世界の地理的位置を表現する地図データに基づいて、コンピュータシステムへの要求に対応する地理的位置を特定する。
【0063】
本開示の一側面に係るプログラムは、高さ方向の配置が地物の階層に基づいて設定された3次元ブロックを用いて現実世界の地理的位置を表現する地図データに基づいて、要求に対応する地理的位置を特定するステップをコンピュータに実行させる。
【0064】
これらのような側面においては、地物の階層に基づいて3次元ブロックが表現されるので、地理的位置を地物の構成に合わせて適切に特定することができる。これらのような側面を通じて、一例では、地理的位置を人に分かりやすく伝えることができる。
【0065】
他の側面に係るコンピュータシステムでは、プロセッサが、第1コンピュータから受信した要求に対応する地理的位置を示す3次元ブロックの識別子を第1コンピュータに送信してもよい。この場合、要求に対応する地理的位置を3次元ブロックの識別子に基づき表現することができる。
【0066】
他の側面に係るコンピュータシステムでは、第1コンピュータにおいて、要求に対応する地理的位置が3次元ブロックによって表示されてもよい。この場合、地理的位置を3次元ブロックにより分かりやすく表示することができる。
【0067】
他の側面に係るコンピュータシステムでは、第1コンピュータが、識別子を暗号化し、該暗号化された識別子を第2コンピュータに送信してもよい。この暗号化によって、地理的位置に関する情報の秘匿性を高めることができる。
【0068】
他の側面に係るコンピュータシステムでは、地物が建築物であってもよい。この場合、建築物ごとの階層に応じて地理的位置を適切に特定することができる。
【0069】
他の側面に係るコンピュータシステムでは、プロセッサが、出発地から目的地までの移動経路を得るための要求を第1コンピュータから受信し、移動経路を示す複数の3次元ブロックを地図データに基づいて抽出し、複数の3次元ブロックを示す経路情報を第1コンピュータに送信してもよい。この場合、経路情報を地物の構成に合わせて適切に特定することができる。一例では、移動経路を人に分かりやすく伝えることができる。
【0070】
他の側面に係るコンピュータシステムでは、第1コンピュータにおいて、移動経路が複数の3次元ブロックによって表示されてもよい。この場合、移動経路を3次元ブロックの集合により分かりやすく表示することができる。
【0071】
[変形例]
以上、本開示をその実施形態に基づいて詳細に説明した。しかし、本開示は上記実施形態に限定されるものではない。本開示は、その要旨を逸脱しない範囲で様々な変形が可能である。
【0072】
上記実施形態では3次元ブロックの識別子としてブロックIDおよび番号座標を示すが、他の表現方法によって個々の3次元ブロックが一意に特定されてもよい。例えば、3次元ブロックの識別子が、(りんご、うさぎ、豆)などのように複数の単語の組合せによって表現されてもよい。また、3次元ブロックの識別子は、世界に存在する任意の言語または記号を使って表現されてもよいし、単語または記号に対応する絵または写真を用いて表現されてもよい。このような側面を通じて、一例では、位置特定システム1は、言語圏を限定せずに地理的位置を表現または表示することができる。
【0073】
上記実施形態において地図データ21は、3次元ブロックを用いて現実世界の地理的位置を表示するが、3次元ブロックと地図データおよび地図データベースとは別の構成であってもよい。すなわち、3次元ブロックは2次元座標(x,y)を有した状態で3次元ブロックデータベース(図示せず)に記憶されており、2次元座標を有する複数の種類の地図データと関連づいていてもよい。例えば、位置特定システム1は要求に対応する3次元ブロックを特定し、特定した3次元ブロックに対応する複数の種類の地図データを読み出してもよい。このような側面を通じて、一例では、位置特定システム1は3次元ブロックを用いて複数の種類の地図データにおける地理的位置を特定または表現することができる。また、位置特定システム1は、例えば入力された住所に基づいて特定した地図データの位置から、該当する3次元ブロックを特定してもよい。このような側面を通じて、一例では、位置特定システム1は、建物の場所を示す住所に基づいて、3次元ブロックを用いた地図データを描画することができる。
【0074】
本開示において、「少なくとも一つのプロセッサが、第1の処理を実行し、第2の処理を実行し、…第nの処理を実行する。」との表現、またはこれに対応する表現は、第1の処理から第nの処理までのn個の処理の実行主体(すなわちプロセッサ)が途中で変わる場合を含む概念を示す。すなわち、この表現は、n個の処理のすべてが同じプロセッサで実行される場合と、n個の処理においてプロセッサが任意の方針で変わる場合との双方を含む概念を示す。
【0075】
コンピュータシステム内で二つの数値の大小関係を比較する際には、「以上」および「よりも大きい」という二つの基準のどちらを用いてもよく、「以下」および「未満」の二つの基準のうちのどちらを用いてもよい。このような基準の選択は、二つの数値の大小関係を比較する処理についての技術的意義を変更するものではない。
【0076】
少なくとも一つのプロセッサにより実行される方法の処理手順は上記実施形態での例に限定されない。例えば、上述したステップ(処理)の一部が省略されてもよいし、別の順序で各ステップが実行されてもよい。また、上述したステップのうちの任意の2以上のステップが組み合わされてもよいし、ステップの一部が修正または削除されてもよい。あるいは、上記の各ステップに加えて他のステップが実行されてもよい。
【0077】
以上の実施形態の全部または一部に記載された態様は、地理的位置に関する制御、移動経路に関する制御、処理速度の向上、処理精度の向上、使い勝手の向上、データを利用した機能の向上または適切な機能の提供その他の機能向上または適切な機能の提供、データおよび/またはプログラムの容量の削減、装置および/またはシステムの小型化等の適切なデータ、プログラム、記録媒体、装置および/またはシステムの提供、並びにデータ、プログラム、装置またはシステムの制作・製造コストの削減、制作・製造の容易化、制作・製造時間の短縮等のデータ、プログラム、記録媒体、装置および/またはシステムの制作・製造の適切化のいずれか一つの課題を解決する。
【符号の説明】
【0078】
1…位置特定システム、10…プラットフォーマサーバ、11…通信部、12…検索部、20…地図データベース、21…地図データ、30…ユーザ端末、40…事業者システム、41…事業者サーバ、42…オペレータ端末、51…3次元ブロック。