(57)【要約】コンピューティング装置によって与えられた位置データ点を用いて、位置情報を決定するシステム及び方法である。システムによって、クライアントのコンピューティング装置から、位置データ点が受信される。システムは、位置データ点が、ユーザーによって構成された、複数の所定領域のうちの、いずれかの所定領域内にあるか否かを判定する。位置データ点が、所定領域内にある場合、所定領域に対応する位置情報がクライアント装置に送信される。位置データ点が、所定領域内にない場合、位置データ点を所在地住所に翻訳する、１つ以上のサードパーティの逆ジオコーディングサービスを利用することができる。
2016540191.tif 000002
【特許請求の範囲】
【請求項１】
システムの１つ以上のプロセッサによって実行されると、該システムに、
１つ以上のネットワークを介して、クライアント装置の全地球測位システム（ＧＰＳ）から発信された位置データ点を受信させ、
複数の所定のジオフェンスのうちの少なくとも１つが、選択された一連の構成に基づいて成る、該複数の所定のジオフェンスに対応するデータを記憶するデータストアにアクセスして、前記データ点が、前記複数の所定のジオフェンスのうちのいずれかの所定領域内にあるか否かを判定させ、
前記位置データ点が所定領域内にある場合は、（ｉ）前記所定領域に対応する所定のジオフェンスから位置情報を特定させ、（ｉｉ）該特定した位置情報を、１つ以上のネットワークを介して、前記クライアント装置に送信させ、
前記位置データ点が所定領域内にない場合は、（ｉ）他の資源を利用して、位置情報をクライアント装置に提供すべきか否かを判定させ、（ｉｉ）前記位置データ点を所在地住所に翻訳するために、１つ以上のサードパーティの逆ジオコーディングサービスが利用可能であるか否かを判定させるための命令を記憶したコンピュータ可読媒体。
【請求項２】
前記命令が前記システムに、更に、
前記位置データ点が所定領域内になく、且つ、１つ以上のサードパーティの逆ジオコーディングサービスが利用可能な場合は、該１つ以上のサードパーティの逆ジオコーディングサービスに対し、前記１つ以上のネットワークを介して、前記位置データ点を含む要求を送信して、該位置データ点を前記所在地住所に翻訳させることを特徴とする請求項１記載のコンピュータ可読媒体。
【請求項３】
前記命令が前記システムに、更に、
前記位置データ点が所定領域内になく、且つ、１つ以上のサードパーティの逆ジオコーディングサービスが利用可能な場合は、（ｉ）該１つ以上のサードパーティの逆ジオコーディングサービスから、前記所在地住所を受信させ、（ｉｉ）該受信した所在地住所を、前記１つ以上のネットワークを介して、前記クライアント装置に送信させることを特徴とする請求項２記載のコンピュータ可読媒体。
【請求項４】
前記命令が前記システムに、更に、
前記位置データ点が所定領域内になく、且つ、１つ以上のサードパーティの逆ジオコーディングサービスが利用できない場合は、前記位置データ点を所在地住所に翻訳するために、前記システムがアクセス可能な地図データベースが、利用可能であるか否かを判定させることを特徴とする請求項１記載のコンピュータ可読媒体。
【請求項５】
前記命令が前記システムに、更に、
前記システムの前記地図データベースが利用可能である場合は、（ｉ）前記位置データ点を用いて、前記地図データベースを検索させ、（ｉｉ）該地図データベースから、保存されている所在地住所を取り出させ、（ｉｉｉ）該取り出した所在地住所を、前記１つ以上のネットワークを介して、前記クライアント装置に送信させることを特徴とする請求項４記載のコンピュータ可読媒体。
【請求項６】
前記命令が前記システムに、更に、
前記システムの前記地図データベースが利用できない場合は、（ｉ）前記クライアント装置に送信すべきデフォルトのテキスト文字列を決定させ、（ｉｉ）該デフォルトのテキスト文字列を、前記１つ以上のネットワークを介して、前記クライアント装置に送信させることを特徴とする請求項４記載のコンピュータ可読媒体。
【請求項７】
前記位置データ点が、緯度、経度、及びエラー値を含み、該位置データ点は、地図ユーザーインタフェース機能におけるユーザー入力に基づいて、前記クライアント装置において生成されたものであることを特徴とする請求項１記載のコンピュータ可読媒体。
【請求項８】
前記命令が前記システムに、更に、
前記クライアント装置から、前記１つ以上のネットワークを介して、前記位置データ点を含む輸送サービス要求を受信させ、
前記システムにおいて、前記位置データ点に少なくとも部分的に基づいて、前記輸送サービスを提供するための運転者を選択させ、
前記決定した所在地住所を、前記１つ以上のネットワークを介して、前記選択した運転者の装置に送信させることを特徴とする請求項３記載のコンピュータ可読媒体。
【請求項９】
前記命令が前記システムに、更に、
前記クライアント装置から、前記１つ以上のネットワークを介して、輸送サービス要求を受信させ、
前記システムにおいて、前記位置データ点の少なくとも一部に基づいて、前記輸送サービスを提供するための運転者を選択させ、
前記クライアント装置のユーザーの優先言語が、前記選択した運転者の優先言語に一致するか否かを判定させ、
前記クライアント装置の前記ユーザーの優先言語が、前記選択した運転者の優先言語に一致しない場合は、（ｉ）前記１つ以上のサードパーティの逆ジオコーディングサービスに対し、再度要求を送信して、前記選択した運転者の優先言語で、前記位置データ点を所在地住所に翻訳させ、（ｉｉ）前記１つ以上のサードパーティの逆ジオコーディングサービスから、前記選択した運転者の優先言語による所在地住所を受信させ、（ｉｉｉ）該優先言語による所在地住所を、前記１つ以上のネットワークを介して、前記クライアント装置に送信させることを特徴とする請求項３記載のコンピュータ可読媒体。
【請求項１０】
システムの１つ以上のプロセッサによって実行される位置情報を決定するための方法であって、
１つ以上のネットワークを介して、１つ以上のクライアント装置から、一定の期間にわたり通信された多数の位置データ点を受信するステップ、
前記多数の位置データ点の各々の受信に応じて、
（ａ）前記システムにおいて、複数の所定のジオフェンスのうち少なくとも１つのジオフェンスが前記システムのユーザーによって構成されて成る、該複数の所定のジオフェンスを含むデータストアにアクセスして、前記位置データ点が、前記複数の所定のジオフェンスのうちのいずれかの所定領域内にあるか否かを判定するステップ
（ｂ）所定領域内にない少なくとも１つの位置データ点に対し、(ｉ)他の資源を利用して、位置情報をクライアント装置に提供すべきか否かを判定し、（ｉｉ）前記位置データ点を所在地住所に翻訳するために、１つ以上のサードパーティの逆ジオコーディングサービスが利用可能であるか否かを判定するステップ、
サードパーティの逆ジオコーディングサービスに対し、前記１つ以上のネットワークを介して、前記位置データ点を含む要求を送信して、前記多数の位置データ点の各々を所在地住所に翻訳するステップ、
前記サードパーティの逆ジオコーディングサービスから、前記多数の位置データ点の各々に対応する所在地住所を受信するステップ、及び
前記多数の位置データ点の各々について、前記対応する所在地住所を、前記１つ以上のネットワークを介して、前記位置データ点を通信したクライアント装置に送信するステップ
を有して成ることを特徴とする方法。
【請求項１１】
前記位置データ点が、緯度、経度、及びエラー値を含み、該位置データ点は、地図ユーザーインタフェース機能におけるユーザー入力に基づいて、前記クライアント装置において生成されたものであることを特徴とする請求項１０記載の方法。
【請求項１２】
前記クライアント装置から、前記１つ以上のネットワークを介して、前記位置データ点を含む輸送サービス要求を受信するステップ、
前記システムにおいて、前記位置データ点に少なくとも部分的に基づいて、前記輸送サービスを提供するための運転者を選択するステップ、及び
前記対応する前記所在地住所を、前記１つ以上のネットワークを介して、前記選択した運転者の装置に送信するステップ
を更に有して成ることを特徴とする請求項１０記載の方法。
【請求項１３】
前記クライアント装置から、前記１つ以上のネットワークを介して、前記位置データ点を含む輸送サービス要求を受信するステップ、 
前記システムにおいて、前記位置データ点の少なくとも一部に基づいて、前記輸送サービスを提供するための運転者を選択するステップ、
前記クライアント装置のユーザーの優先言語が、前記選択した運転者の優先言語に一致するか否かを判定するステップ、及び
前記クライアント装置の前記ユーザーの前記優先言語が、前記選択した運転者の前記優先言語に一致しないとの判定を受けて、(ｉ) 前記１つ以上のサードパーティの逆ジオコーディングサービスに対し、第２の要求を送信して、前記選択した運転者の優先言語で、前記位置データ点を所在地住所に翻訳し、（ｉｉ）前記１つ以上のサードパーティの逆ジオコーディングサービスから、前記選択した運転者の優先言語による所在地住所を受信し、（ｉｉｉ）前記選択した運転者の優先言語による所在地住所を、前記１つ以上のネットワークを介して、前記クライアント装置に送信するステップを更に有して成ることを特徴とする請求項１２記載の方法。
【請求項１４】
システムの１つ以上のプロセッサによって実行されると、該システムに、
１つ以上のネットワークを介して、クライアント装置から、ある瞬間の時刻に位置データ点を受信させ、
データストアに保存されている複数の所定のジオフェンスの各々が所定領域に関連付けられて成る、該複数の所定のジオフェンスのうち、一定の期間にも関連付けられる任意の時間ベースのジオフェンスが、前記位置データ点及び該位置データ点を受信した前記瞬間の時刻に基づいて、前記位置データ点に対し適用可能であるか否かを判定させ、
前記位置データ点が、第１の時間ベースのジオフェンスの所定領域内にあり、且つ、前記瞬間の時刻が、前記第１の時間ベースのジオフェンスの前記一定の期間内にある時には、前記第１の時間ベースのジオフェンスが適用可能であり、該ジオフェンスが適用可能な場合は、（ｉ）前記第１の時間ベースのジオフェンスから位置情報を特定し、(ｉｉ)該特定した位置情報を、１つ以上のネットワークを介して、前記クライアント装置に送信させ、
適用可能な所定のジオフェンスがない場合は、（ｉ）他の資源を利用して、位置情報をクライアント装置に提供すべきか否かを判定させ、（ｉｉ）前記位置データ点を所在地住所に翻訳するために、１つ以上のサードパーティの逆ジオコーディングサービスが利用可能であるか否かを判定させる
ことを特徴とする命令を記憶したコンピュータ可読媒体。
【請求項１５】
前記特定された位置情報が、前記位置テータ点に関連付けられているイベントを前記クライアント装置のユーザーに知らせ、該クライアント装置の該ユーザーに対し、特定の場所に移動するよう指示するテキスト文字列を含んで成ることを特徴とする請求項１４記載のコンピュータ可読媒体。
【請求項１６】
前記命令が前記システムに、更に、
適用可能な所定のジオフェンスがない、且つ、１つ以上のサードパーティの逆ジオコーディングサービスが利用可能な場合は、該１つ以上のサードパーティの逆ジオコーディングサービス対し、前記１つ以上のネットワークを介して、前記位置データ点を含む要求を送信して、該位置データ点を前記所在地住所に翻訳させることを特徴とする請求項１４記載のコンピュータ可読媒体。
【請求項１７】
前記命令が前記システムに、更に、
適用可能なジオフェンスがない、且つ、１つ以上のサードパーティの逆ジオコーディングサービスが利用可能な場合は、（ｉ）該１つ以上のサードパーティの逆ジオコーディングサービスから前記所在地住所を受信させ、（ｉｉ）該受信した所在地住所を、前記１つ以上のネットワークを介して、前記クライアント装置に送信させることを特徴とする請求項１６記載のコンピュータ可読媒体。
【請求項１８】
前記命令が前記システムに、更に、
前記位置データ点が所定領域内になく、且つ、１つ以上のサードパーティの逆ジオコーディングサービスが利用できない場合は、前記位置データ点を所在地住所に翻訳するために、前記システムがアクセス可能な地図データベースが、利用可能であるか否かを判定させることを特徴とする請求項１４記載のコンピュータ可読媒体。
【請求項１９】
前記命令が前記システムに、更に、
前記システムの前記地図データベースが利用可能である場合は、（ｉ）前記位置データ点を用いて、前記地図データベースを検索させ、（ｉｉ）該地図データベースから、保存されている所在地住所を取り出させ、（ｉｉｉ）該取り出した所在地住所を、前記１つ以上のネットワークを介して、前記クライアント装置に送信させることを特徴とする請求項１８記載のコンピュータ可読媒体。
【請求項２０】
前記命令が前記システムに、更に、
前記システムの前記地図データベースが利用できない場合は、（ｉ）前記クライアント装置に送信すべきデフォルトのテキスト文字列を決定させ、（ｉｉ）該デフォルトのテキスト文字列を、前記１つ以上のネットワークを介して、前記クライアント装置に送信させることを特徴とする請求項１８記載のコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、コンピューティング装置によって与えられる、位置データ点を用いた位置情報の決定に関するものである。
【背景技術】
【０００２】
一部のオンデマンドサービスは、車両の運転者によってユーザーに提供される輸送を手配することができる。ある場合には、ユーザー及び運転者が、各々コンピューティング装置を操作して、輸送を手配するシステムと通信することができる。システムは、輸送を手助けするために、輸送に関わる位置情報を、ユーザー及び運転者のコンピューティング装置に提供することができる。
【発明の概要】
【課題を解決するための手段】
【０００３】
本明細書に記載の実施例は、位置情報サービスを提供するために、コンピューティング装置から位置データ点を受信し、その位置データ点に対応する位置情報を決定するシステムを提供する。１つの実施例において、システムは、システムが利用可能又はアクセス可能な資源に基づいて、どの資源を用いて位置情報を決定すべきかを判定することができる。
【０００４】
１つの実施例によれば、システムは、クライアントのコンピューティング装置から、全地球測位システム（ＧＰＳ）のデータ点等の位置データ点を受信することができる。位置データ点は、緯度、経度、及びエラー値を含むことができる。システムは、位置データ点の逆ジオコーディング処理を実行して、対応する位置情報又は住所を決定することができる。１つの実施例において、システムは、まず、位置データ点が、システムのユーザー（例えば、管理者）によって構成された、複数の所定領域のいずれかの所定領域内にあるか否かを判定することができる。複数の所定領域は、例えば、システムがアクセス可能なデータベースに保存することができる。位置データ点が、所定領域内にある場合、その所定領域に対応する位置情報を特定し、クライアント装置に送信することができる。
【０００５】
位置データ点が所定領域内にない場合、システムは、位置データ点を所在地住所等の住所に翻訳又は変換するのに、サードパーティの逆ジオコーディングサービスが利用可能又はアクセス可能であるか否かを判定することができる。一部の実施例において、システムは、複数のサードパーティの逆ジオコーディングサービスと通信することができる。位置データ点を住所に翻訳するのに、サードパーティの逆ジオコーディングサービスにアクセス可能である場合、システムは、当該逆ジオコーディングサービスに対し、位置データ点を含む要求を送信することができ、対応する住所を受信することができる。次に、その住所をクライアント装置に送信することができる。
【０００６】
ときには、システムにとって、サードパーティの逆ジオコーディングサービスが利用不可、又はアクセス不可の場合がある。かかる場合には、システムは、位置データ点を住所に翻訳するのに、システムの地図データベース（例えば、システムが維持している内部データベース）が利用可能であるか否かを判定することができる。地図データベースが利用可能である場合、システムは、位置データ点を用いて、保存されている住所を検索し、検索した住所をクライアント装置に送信することができる。地図データベースが利用できない場合（又は位置データ点に対応する住所が見つからなかった場合）、システムは、クライアント装置に送信すべき特定の文字列を識別することができる。このようにして、システム１００は、所定の階層又は順序に基づいて、逆ジオコーディング処理を実行することができる。
【０００７】
更に、システムは、クライアント装置から、輸送サービスに対する要求を受信することもできる。輸送要求には、クライアント装置のユーザーによって指定／選択された、位置データ点（例えば、以前に送信された位置データ点又は新規の位置データ点のいずれか）を含めることができる。システムは、輸送要求の位置データ点に基づいて、当該輸送サービスを提供できる運転者を選択することができる。一部の実施例によれば、システムは、クライアント装置のユーザーの優先言語が、選択した運転者の優先言語と一致するか否かを判定することができる。優先言語が一致した場合、システムは、運転者の装置に対し、決定した位置情報／住所を送信することができる。一方、優先言語が一致しなかった場合、システムは、例えば、運転者に代わって、逆ジオコーディング処理を実行して、運転者の優先言語による位置情報又は住所を決定することができる。
【０００８】
本明細書において、クライアント装置、運転者装置、及び／又はコンピューティング装置は、ネットワーク接続、及びネットワークを介して、システムと通信するための処理資源を提供することができる、デスクトップコンピュータ、携帯電話装置若しくはスマートフォン、携帯情報端末（ＰＤＡ）、ラップトップコンピュータ、タブレット装置、テレビ（ＩＰテレビ）等に相当する装置を意味する。運転者装置は、輸送対象の他の装置、カスタムハードウェア等にも相当することができる。クライアント装置及び／又は運転者装置は、システムと通信するように構成されたアプリケーションを動作させることもできる。
【０００９】
更に、システムは、例えば、前述のコンピューティング装置を用いて、個人と個人との間で手配される(輸送サービス、配達サービス、娯楽サービス等の)位置情報サービスを可能にすることができる。一例として、ユーザーは、輸送若しくは配達サービス（例えば、食品配達、メッセンジャーサービス、食品トラックサービス、又は製品輸送）又は娯楽サービス（例えば、マリアッチバンド又は弦楽四重奏）等のオンデマンドサービスを要求することができ、システムは、システムと通信する装置を使用する運転者、食品提供者、楽団等のサービス提供者を選択することができる。
【００１０】
更に別の実施例において、１つ以上のネットワークを介し、１つ以上のクライアント装置から、一定の期間にわたり通信された多数の位置データ点が受信される。多数の位置データ点の各々の受信に応じて、複数の所定のジオフェンスを含むデータストアにアクセスして、その位置データ点が、複数の所定のジオフェンスのうちの、いずれかの所定領域内にあるか否かが判定される。複数の所定のジオフェンスの少なくとも１つが、システムのユーザーによって構成されている。所定領域内に存在しない少なくとも１つの位置データ点について、（ｉ）別の資源を用いて、クライアント装置に位置情報を提供すべきであるかについて判定される。位置データ点を翻訳する１つ以上のサードパーティの逆ジオコーディングングサービスも決定される。サードパーティの逆ジオコーディングングサービスに対し、位置データ点を含む要求が送信され、多数の位置データ点の各々が所在地住所に翻訳される。多数の位置データ点の各々について、対応する所在地住所が受信される。多数の位置データ点の各々について、対応する所在地住所が、その位置データ点を通信したクライアント装置に送信される。
【００１１】
本明細書に記載の１つ以上の実施例において、コンピューティング装置によって実行される方法、技術、及び動作が、プログラム的に実行される、又はコンピュータによって実行される方法として提供される。本明細書において、プログラム的とは、コード又はコンピュータ実行可能な命令の使用によることを意味する。これ等の命令は、コンピューティング装置の１つ以上のメモリ資源に記憶することができる。プログラム的に実行されるステップは自動でも、自動でなくてもよい。
【００１２】
本明細書に記載の１つ以上の実施例は、プログラムモジュール、エンジン、又はコンポーネントを用いて実行することができる。プログラムモジュール、エンジン、又はコンポーネントは、前述のタスク又は機能の１つ以上を実行することができる、プログラム、サブルーチン、プログラムの一部、又はソフトウェアコンポーネント若しくはハードウェアコンポーネントを含むことができる。本明細書において、モジュール又はコンポーネントは、他のモジュール又はコンポーネントから独立して、ハードウェアコンポーネントに存在することができる。あるいは、モジュール又はコンポーネントは、他のモジュール、プログラム、又はマシーンとの共有要素又はプロセスであってよい。
【００１３】
本明細書に記載の一部の実施例は、概して、処理及びメモリ資源を有する、コンピューティング装置の使用を必要とし得る。例えば、本明細書に記載の１つ以上の実施例の全部又は一部を、サーバー、デスクトップコンピュータ、携帯電話若しくはスマートフォン、携帯情報端末（例えば、ＰＤＡ）、ラップトップコンピュータ、プリンター、デジタルピクチャフレーム、ネットワーク装置（例えば、ルータ）、タブレット装置等のコンピューティング装置によって実行することができる。本明細書に記載の任意の実施例の確立、使用、及び性能に関連して（任意の方法の性能又は任意のシステムの実施態様に関連することを含む）、メモリ、処理、及びネットワーク資源をすべて使用することができる。
【００１４】
更に、本明細書に記載の１つ以上の実施例は、１つ以上のプロセッサによって実行可能な命令の使用を通して実施することができる。これ等の命令は、コンピュータ可読媒体に担持させることができる。図を用いて以下に示す又説明するマシーンは、処理資源及び本明細書に記載の実施例を実施するための命令を担持及び／又は実行できるコンピュータ可読媒体の例を提供するものである。特に、本明細書に記載の実施例で示す多くのマシーンは、プロセッサ、並びにデータ及び命令を保持するための様々な形態のメモリを含んでいる。コンピュータ可読媒体の例には、パーソナルコンピュータやサーバーのハードドライブ等の固定記憶装置がある。コンピュータ記憶媒体の別の例には、ＣＤやＤＶＤ等の携帯記憶装置、（スマートフォン、多機能装置、タブレット等に担持された）フラッシュメモリー、及び磁気メモリがある。コンピュータ、端末、ネットワーク対応装置（例えば、携帯電話等の携帯装置）はすべて、プロセッサ、メモリ、及びコンピュータ可読媒体に記憶されている命令を利用するマシーン及び装置の例である。更に、実施例は、コンピュータプログラム、又はかかるプログラムを担持することができる、コンピュータ使用可能担持媒体の形態で実施することができる。
【図面の簡単な説明】
【００１５】
【図１】１つの実施の形態下における、位置データ点を用いて位置情報を決定する例示的なシステムを示す図。
【図２Ａ】１つの実施の形態による、位置情報を決定するための例示的な方法を示す図。
【図２Ｂ】１つの実施の形態による、位置情報を決定するための例示的な方法を示す図。
【図３】別の実施の形態による、位置情報を決定するための例示的な方法を示す図。
【図４】本明細書に記載の実施の形態を実施することができる、コンピュータシステムを示すブロック図。
【図５】本明細書に記載の実施の形態を実施することができる、携帯コンピューティング装置を示すブロック図。
【発明を実施するための形態】
【００１６】
システムの説明
図１は１つの実施の形態における、位置データ点を用いて位置情報を決定する、例示的なシステムを示す図である。１つの実施例において、本システムは、当事者間で手配されるサービス（例えば、ユーザーとサービス提供者との間の輸送サービス、又は配達サービスの手配）を可能にする、別のシステムと共に又は一部として動作することができる。例えば、図１のシステムは、ユーザーに輸送サービスを手配するために、運転者を選択する派遣システムに対応することができる。システム１００は、ユーザーのクライアント装置から位置データ点を受信し、逆ジオコーディング処理を実行して、位置データ点に対応する住所又はその他の位置情報を決定することができる。
【００１７】
一般に、コンピューティング装置は、サードパーティの逆ジオコーディングサービスに対し、位置データ点を与えることができ、サードパーティの逆ジオコーディングサービスは、位置データ点を所在地住所に翻訳することができる。しかし、単にサードパーティの逆ジオコーディングサービスを利用して、位置情報を決定するのには問題があり得る。例えば、サードパーティの逆ジオコーディングサービスは、特定の装置に許可されている秒あたりのクエリ数（ＱＰＳ）が制限されている等、レート制限が設けられている可能性及び／又は高コストの可能性がある。多数のクライアント装置が、無線ローカルエリアネットワーク（ＷＬＡＮ）等、同じネットワーク上で動作している状況においては、サードパーティの逆ジオコーディングサービスに照会している多数の装置は、サードパーティの逆ジオコーディングサービスによって、同じ装置と見なされ、ロックアウトされる（例えば、装置がサードパーティの逆ジオコーディングサービスに電話するのが阻止される）。更に、住所データが不正確又はサードパーティの逆ジオコーディングサービスのコンピューティング資源の障害（例えば、サーバーのクラッシュ）等、状況によっては、特定のサードパーティの逆ジオコーディングサービスに依存することが問題になる可能性がある。クライアント装置を有効にして、サードパーティの逆ジオコーディングサービスに対し、位置データ点を直接送信するのではなく、図１のシステムが、クライアント装置から位置データ点を受信することができ、サードパーティの逆ジオコーディングサービを利用した又は利用しなくてもよい、逆ジオコーディング処理を実行することができる。
【００１８】
１つの実施例によれば、システム１００は、位置決定部１１０、輸送手配部１２０、装置インタフェース１３０、サービスインタフェース１４０、ジオフェンスデータベース１５０、ジオフェンスインタフェース１５５、及び地図データベース１６０を有している。複数のクライアント装置１７０及び複数の運転者装置１８０が、１つ以上のネットワークを介し、装置インタフェース１３０を経由して、システム１００と通信することができる。一部の実施例において、システム１００は、１つ以上のサードパーティの逆ジオコーディングサービス１９０とも通信することができる。システム１００の構成要素が連合して、クライアント装置１７０から位置データ点を受信し、逆ジオコーディング処理を実行して、位置データ点に対応する住所又は位置情報を決定することができる。ロジックは、様々なアプリケーション（例えば、ソフトウェア）及び／又はシステム１００を実装するコンピュータシステムのハードウェアで実行することができる。
【００１９】
実施態様に応じ、システム１００の１つ以上の構成要素を、１つ以上のサーバー等のネットワーク側の資源で実現することができる。システム１００は、別のアーキテクチャ（ピアツーピアネットワーク等）において、別のコンピュータシステムを通して実現することもできる。追加又は代替として、システム１００の構成要素の一部又は全部を、クライアント装置１７０及び／又は運転者装置１８０上で動作するアプリケーションを通して、クライアント装置１７０において実現することができる。例えば、サービスアプリケーション等のクライアントアプリケーションを実行して、システム１００の様々な構成要素によって記述されるプロセスの１つ以上を実行することができる。システム１００は、（例えば、無線又は有線を使用した）ネットワークインタフェースを経由し、ネットワークを介して通信することができ、１つ以上のクライアント装置１７０及び１つ以上の運転者装置１８０と通信することができる。
【００２０】
システム１００は、装置インタフェース１３０を用いて、１つ以上のネットワークを介し、クライアント装置１７０及び運転者装置１８０と通信することができる。装置インタフェース１３０は、システム１００と遠隔コンピューティング装置との通信を管理することができる。一部の実施例において、クライアント装置１７０（及び運転者装置１８０）が、装置インタフェース１３０にインタフェースして、システム１００と通信することができるサービスアプリケーションを個別に動作させることができる。一部の実施例によれば、アプリケーションが、外向きアプリケーションプログラミングインターフェース（ＡＰＩ）等のＡＰＩを含み、又は使用して、装置インタフェース１３０とデータを通信することができる。外向きＡＰＩは、ウェブベースフォーム、レストフルＡＰＩを介したプログラムアクセス、シンプルオブジェクトアクセスプロトコル（ＳＯＡＰ）、リモートプロシージャコール（ＲＰＣ）、スクリプトアクセス等の任意の数の方法を通して、ネットワーク上のセキュアアクセスチャンネルを介し、システム１００に対するアクセスを提供することができる。
【００２１】
一部の実施例によれば、位置決定部１１０が、装置インタフェース１３０を経由して、クライアント装置１７０から、位置データ点１７１を受信することができる。例えば、クライアント装置１７０のユーザーが、サービスアプリケーションを動作させると、ユーザーはサービスアプリケーションのユーザーインタフェースと対話して、オンデマンド及び／又は位置情報サービスに関連した、特定の位置を選択又は指定することができる。ユーザーは、例えば、ユーザーの現在位置（例えば、クライアント装置１７０の現在位置）及びユーザーが地図上を移動させて、位置情報サービスに用いられる位置を示すことができる１つ以上のグラフィック機能（例えば、ピン）を示す、地図インタフェースと対話することができる。１つの実施例において、ピンで指定された地図上の位置が、輸送サービスのピックアップ場所及び／若しくは目的地、又は配達サービスの届先とすることができる。
【００２２】
ユーザーが、例えば、地図インタフェース上のピンを特定の位置に移動させることによって、位置を選択すると、クライアント装置１７０が、（特定の位置に対応する）位置データ点１７１を決定し、装置インタフェースを経由して、システム１００に送信する。実施例によれば、選択された位置に対応する位置データ点１７１は、緯度、経度、及びエラー値を含んでいる。例えば、クライアント装置１７０は、全地球測位システム(ＧＰＳ)コンポーネント、及び／又はクライアント装置１７０の現在の位置、又は地図インタフェース上の選択位置のＧＰＳ座標を決定することができる、別のコンポーネントを含むことができる。ＧＰＳコンポーネントは、緯度及び経度の精度を示す、位置データ点１７１のエラー値を含むこともできる。例えば、高エラー値の位置データ点１７１は、低エラー値の位置データ点１７１ほど正確ではないと見なされる（例えば、ＧＰＳコンポーネントは、ＧＰＳ座標が決定されるとき、信号干渉、ハードウェア障害等があると、位置データ点に対し高エラーを有し得る）。
【００２３】
１つの実施例によれば、クライアント装置１７０のユーザーによって、サービスアプリケーションの地図インタフェース上で、輸送サービスのピックアップ場所等の位置が選択される都度、クライアント装置１７０が、対応する位置データ点１７１をシステム１００に与えることができる。例えば、ユーザーは（例えば、クライアント装置１７０のタッチセンサー式ディスプレイ上で、指のタッチを介してピンを移動し、所望の位置が指定されたら指を離して）地図インタフェース上で、第１の位置を選択し、ユーザーがタッチセンサー式ディスプレイから指を離したことに応じて、クライアント装置１７０は、ユーザーが位置を選択したと判断し、対応する位置データ点１７１をシステム１００に送信することができる。その後直ちに（例えば、１秒後）、ユーザーは（例えば、ユーザーが輸送サービスにとって、第２の位置がより良いと判断して）地図インタフェース上で、別の第２の位置を選択することができる。同様に、クライアント装置１７０は、次いで、第２の位置に対応する位置データ点１７１を送信することができる。
【００２４】
一部の実施例において、ユーザーは、（ｉ）ユーザーがシステム１００に対し輸送要求１７５を出すまで（ｉｉ）ユーザーが輸送要求１７５を出してから所定の時間後まで（ｉｉｉ）ユーザーが輸送サービスの運転者にピックアップされるまで、連続して指定位置を変更する（及びクライアント装置１７０に連続して対応する位置データ点１７１を送信させる）ことができる。ユーザーによって位置が指定される都度、ユーザーのクライアント装置１７０上で動作している、サービスアプリケーションによって、対応する位置データ点１７１が、システムに１００に与えられるため、システム１００によって、対応する住所又は位置情報を決定して、サービスアプリケーションに提供することができる。１つの実施例によれば、位置データ点１７１を、対応する住所の要求の一部として、サービスアプリケーションによって、システム１００に与えることができる。このようにして、特定の住所が、輸送サービスにおいて、ユーザーがピックアップされたいと希望する住所（又は、別の例における届先住所）であることを、ユーザーが見て確認することができる。
【００２５】
位置決定部１１０は、クライアント装置１７０から、位置データ点１７１を受信し、それに応じて、当該位置データ点１７１の逆ジオコーディング処理を実行することができる。１つの実施例において、位置決定部１１０は、１つ以上の条件に基づいて、位置データ点１７１を対応する住所（例えば、所在地住所）又は対応する場所名、情報、若しくは識別子に翻訳するのに、どの資源（例えば、どのデータベース、どのサードパーティの逆ジオコーディングサービス等）を利用するかを決定し、逆ジオコーディング処理を実行することができる。一部の実施例において、位置決定部１１０は資源選択部及び言語照合部を有している。
【００２６】
位置決定部１１０は、複数の資源にアクセス又は通信して、受信した位置データ点１７１の位置情報又は住所を決定することができる。複数の資源には、ジオフェンスデータベース１５０、地図データベース１６０、複数のサードパーティの逆ジオコーディングサービス１９０、及び／又は、図１に図示しない、テキスト文字列を保存するためのデータベース等の他のデータベースが含まれる。実施態様にもよるが、ジオフェンスデータベース１５０及び／又は地図データベース１６０は、システム１００に含めることができ、及び／又はシステム１００の管理者ユーザーによって維持することができる。
【００２７】
１つの実施例によれば、ジオフェンスデータベース１５０は、各々が記述的テキスト文字列に対応する、ユーザーが作成又は設定した複数のジオフェンス（例えば、３つ以上の位置データ点によって規定された所定領域）を保存するデータベースである。ジオフェンスデータベース１５０の各エントリは（ｉ）ジオフェンスの境界を規定する複数の位置点、及び（ｉｉ）ジオフェンスに対応する位置情報を（例えば、指定されたテキスト文字列として）含むことができる。例えば、ジオフェンスは、サンフランシスコ国際空港、ターミナル２の出口又はドアの近傍（例えば、ピックアップ場所の近傍）等の、地理的領域に対して作成することができ、「ターミナル２、ＳＦＯ」と識別することができる。一部の実施例において、ジオフェンスエントリは、そのジオフェンスエントリの期間（例えば、開始日、開始時刻、終了日、終了時刻等）も含むことができる。管理者は、１つ以上の入力を通して、ジオフェンスインタフェース１５５と対話して、ジオフェンスデータベース１５０に対し、ジオフェンスの作成、編集、及び／又は削除を行うことができる。
【００２８】
地図データベース１６０は、システム１００に保存されているマッピング情報に対応することができる。例えば、マッピング情報は、ＯｐｅｎＳｔｒｅｅｔＭａｐ（ＯＳＭ）、オープンソースのマッピングデータベース、又は他のマッピングソース等のマッピングソースから提供を受ける、又は検索することができる。地図データベース１６０は、ＯＳＭからの情報を用いて、及び／又はシステム１００（例えば、地図データベース１６０を保管維持するシステム１００）の管理者によって、定期的に更新することができる。位置決定部１１０は、ジオフェンスデータベース１５０及び／又は地図データベース１６０にアクセスして、受信した位置データ点１７１に対応する位置情報を決定することができる。
【００２９】
更に、システム１００は、１つ以上のサービスインタフェース１４０を経由して、ネットワークを介し、１つ以上のサードパーティの逆ジオコーディングサービス１９０にアクセスすることもできる。サードパーティの逆ジオコーディングサービスは、緯度及び経度等の位置データ点を可読な住所又は名前に翻訳するサービスを提供する。複数のサードパーティの逆ジオコーディングサービスが存在している可能性があり、システム１００が（例えば、サービスインタフェース１４０を経由して）利用可能である。例えば、あるサードパーティの逆ジオコーディングサービス１９０は、大都市又は国等の特定の領域内の位置データ点に対し、所在地住所を提供することができる（例えば、あるサードパーティの逆ジオコーディングサービスは、韓国の位置データ点の翻訳に特化することができる）一方、別のサードパーティの逆ジオコーディングサービス１９０は、別の領域内（例えば、フランス）の位置点の所在地住所を提供することができる。別の実施例において、あるサードパーティの逆ジオコーディングサービス１９０が、他より広い範囲を含むことができる（即ち、グーグル社のサードパーティの逆ジオコーディングサービス等の他よりも大きな地理的領域にまたがる、より大きな住所データベースを有している）。
【００３０】
受信した位置データ点１７１、及びシステム１００の１つ以上の条件に基づいて、資源選択部は、受信した位置データ点１７１の位置情報又は住所を決定するのに、どの資源を利用すべきかを決定することができる。例えば、受信した位置データ点１７１に対する位置情報、又は住所を決定するために、ユーザーがシステム１００に入力した１つ以上のパラメータを用いて、どの資源を最初に利用すべきかを決定し、必要があれば第２の資源、更に必要があれば第３の資源を決定するというように、資源選択部を構成することができる。更に、１つの実施例において、位置決定部１１０は、位置データ点１７１と一緒に受信したエラー値が、エラー閾値以上であるかをまず判定することができる。エラー閾値以上のエラー値は、クライアント装置１７０のＧＰＳコンポーネントによって決定された緯度及び経度が、例えば、間違い又は不正確である可能性が高いことを示している可能性がある。
【００３１】
位置決定部１１０によって、エラー値がエラー閾値以上であると判定された場合、例えば、資源選択部は、テキスト文字列データベース（図１に図示せず）を位置決定部１１０がアクセスすべき資源として選択することができる。位置決定部１１０は、テキスト文字列データベースから、デフォルトのテキスト文字列を検索して、そのデフォルトのテキスト文字列を（当該位置データ点１７１を送信した）クライアント装置１７０に提供して、ユーザーに対し、位置が決定できなかったこと、又はＧＰＳコンポーネントによって提供された位置データが、不正確であったことを示すことができる。別の実施例において、テキスト文字列が、ユーザーに対し、再試行又は新たな位置を選択するよう促すこともできる。そのような実施例において、エラー値が高いと判定されたため、位置決定部１１０が、サードパーティの逆ジオコーディングサービス１９０の利用を見送ることにより、ネットワークの帯域幅の使用を減らすと共に、サードパーティの逆ジオコーディングサービス１９０に対して行われる通信の回数を減らすことができ、また、受信した位置データ点１７１に対し、対応する住所又は位置情報を決定するための、逆ジオコーディング処理は一般に行われない。
【００３２】
追加又は代替として、一部の実施例において、資源選択部は、受信した位置データ点１７１に対応する住所又は位置情報の決定に用いる資源の、（相対）順位付けを保存することもできる。１つの実施例において、システム１００の管理者によって、予め資源の分類又は相対順位付けを行うことができる。位置決定部１１０が、位置データ点１７１を受信すると、資源選択部は、対応する住所又は位置情報の決定に使用するために、利用可能又はアクセス可能な最も順位の高い資源を選択することができる。例えば、位置決定部１１０が利用する資源の順位付けは、（１）ジオフェンスデータベース１５０、（２）地域限定サードパーティの逆ジオコーディングサービス１９０（３）、（地域限定サードパーティの逆ジオコーディングサービスと比較して）より大きく、より包括的なサードパーティの逆ジオコーディングサービス１９０、（４）地図データベース１６０、及び（５）テキスト文字列データベースの優先順とすることができる。資源の順序は別の実施例において異なり得る。一部の実施例において、位置決定部１１０の資源選択について、管理者が資源の順位付けを調整することができる。
【００３３】
位置決定部１１０が、位置データ点１７１を受信すると、位置決定部は、逆ジオコーディング処理を実行して、対応する住所又は位置情報を決定することができる。逆ジオコーディング処理は、受信した位置データ点１７１に対し、対応する住所又は位置情報を決定するのに、どの資源を利用するかを決定することを含んでいる。１つの実施例において、資源選択部は、（例えば、前述の順位付けに基づいて）ジオフェンスデータベース１５０を最初に利用すべきであると決定することができる。位置決定部１１０は、ジオフェンスデータベース１５０にアクセスして、当該位置データ点１７１が、ジオフェンスの所定領域内（例えば、ジオフェンスの３つ以上の位置点によって規定される境界内）に存在しているか否かを判定する。位置データ点１７１がジオフェンスの所定領域内にある場合、位置決定部１１０は、ジオフェンスデータベース１５０から、対応する位置情報１５１又は記述的テキスト文字列を特定し、その位置情報１５１又は記述的テキスト文字列を位置情報１７３として、装置インタフェース１３０を経由して、クライアント装置１７０に提供する。
【００３４】
説明したように、ジオフェンスデータベース１５０に保存されるジオフェンスエントリは、１つ以上の期間が関連付けられている、時間ベースのジオフェンスであってよい。期間はいつジオフェンスが「アクティブ」であるかを示すことができる。例えば、ジオフェンスは、イベント（例えば、コンサート、スポーツイベント、パレード等）が発生し得る期間を指定することができる。このような時間ベースのジオフェンスは、その期間中に、ユーザーがジオフェンス領域において、ピックアップ場所を要求した場合のような、イベントに対応する記述的テキスト文字列を示すことができる。位置決定部１１０が、時間ベースのジオフェンスの所定領域内における位置データ点１７１を受信したが、そのジオフェンスの指定期間中ではない、特定の時刻に受信した場合、位置決定部１１０は、（例えば、位置データ点１７１が時間ベースのジオフェンスの所定領域内にあったとしても）位置データ点１７１が、ジオフェンスデータベース１５０の既存のジオフェンスエントリに一致しないと表示することができる。資源選択部は、指定された順序又は階層に基づいて、逆ジオコーディング処理に対し、別の資源の使用を決定することができる。
【００３５】
位置データ点１７１が、ジオフェンスデータベース１５０のどのジオフェンスの所定領域内にもない場合、資源選択部は、その位置データ点１７１に対応する、地域限定サードパーティの逆ジオコーディングサービス１９０に対し、アクセスできるか否かを判定することができる。時として、アクセス制限（例えば、秒当たりのクエリ（ＱＰＳ）制限等の、秒当たりの可能な逆ジオコーディング要求数の制限）、帯域制限、ハードウェア上の問題（例えば、サードパーティの逆ジオコーディングサービスのサーバーがダウンしている、又はネットワーク上の問題）等の結果、サードパーティの逆ジオコーディングサービスにアクセスできない場合があり得る。更に、位置データ点１７１が、どの地域限定サードパーティの逆ジオコーディングサービス１９０も利用できない領域内に存在していることがあり得る。（例えば、位置データ点１７１が存在している都市、領域、州、国等に限定した、地域限定サードパーティの逆ジオコーディングサービス１９０のような）地域限定サードパーティの逆ジオコーディングサービス１９０にアクセス可能である場合、位置決定部１１０は、位置データ点１７１を用いて、その位置データ点１７１から対応する住所に翻訳することができる、地域限定サードパーティの逆ジオコーディングサービス１９０に対し、逆ジオコード要求１１１を送る（例えば、地域限定サードパーティの逆ジオコーディングサービス１９０にクエリする）ことができる。位置決定部１１０が、そのサードパーティの逆ジオコーディングサービス１９０から、対応する住所１９１を受信した後、位置決定部１１０は、住所１７３をクライアント装置１７０に提供することができる。
【００３６】
一方、どの地域限定サードパーティの逆ジオコーディングサービス１９０にもアクセスできない場合、資源選択部は（地域限定サードパーティの逆ジオコーディングサービスと比較して）より大きく、より包括的なサードパーティの逆ジオコーディングサービス１９０にアクセス可能であるか否かを判定することができる。一部の実施例において、より大きく、より包括的なサードパーティの逆ジオコーディングサービス１９０が、（例えば、グーグル社が提供している逆ジオコーディングサービスのような）地理的により広い範囲のデータ点を含むことができる。より大きく、より包括的なサードパーティの逆ジオコーディングサービス１９０にアクセス可能である場合、位置決定部１１０は、位置データ点１７１を用いて、その位置データ点１７１から対応する住所に翻訳することができる、より大きく、より包括的なサードパーティの逆ジオコーディングサービス１９０に対し、逆ジオコード要求１１１を送る（例えば、より大きく、より包括的なサードパーティの逆ジオコーディングサービス１９０にクエリする）ことができる。位置決定部１１０が、そのより大きく、より包括的なサードパーティの逆ジオコーディングサービス１９０から、対応する住所１９１を受信した後、位置決定部１１０は、住所１７３をクライアント装置１７０に提供することができる。
【００３７】
どのサードパーティの逆ジオコーディングサービス１９０にもアクセスできない場合、資源選択部は、システム１００の内部地図データベース１６０にアクセス可能であるか否かを判定することができる。地図データベース１６０は、１つ以上のマッピングソースから提供される又は検索される、マッピング情報に対応することができる。地図データベース１６０にアクセス可能である場合、位置決定部１１０は、地図データベース１６０において、位置データ点１７１の検索を行うことができる。位置データ点１７１が、対応する住所又は位置情報１６１を有している場合、位置決定部１１０は、その住所又は位置情報１６１を、位置情報１７３として、装置インタフェース１３０を経由して、クライアント装置１７０に提供することができる。
【００３８】
地図データベース１６０がアクセス不可若しくは利用不可、又は対応する住所若しくは位置情報が、地図データベース１６０において見つからない場合、資源選択部は、どの資源も利用不可又はアクセス不可であると判断することができ、位置決定部１１０は、テキスト文字列データベースに保存されている、カスタムテキスト文字列を特定することができる。位置決定部１１０は、 「住所が入手できませんでした」、「別の場所を選択して下さい」、又は「テキストフィールドに住所を入力して下さい」等のカスタムテキスト文字列を、装置インタフェース１３０を経由して、クライアント装置１７０に送信させることができる。このようにして、ユーザーは、オンデマンドの位置情報サービスを要求する前に、そのサービスに関わる住所又は位置についての正確な情報を受信することができる。
【００３９】
一部の実施例によれば、位置決定部１１０は、クライアント装置１７０を操作するユーザーの優先言語を決定することもできる。例えば、システム１００は、ユーザー及び／又はユーザーの個々のクライアント装置１７０のプロフィールデータベースを維持することができる。システム１００は運転者プロフィールデータベースも維持することができる。ユーザーのプロフィールは、他のユーザー情報と共に、ユーザー識別子（ＩＤ）（例えば、ユーザー名、電子メールアドレス等）及び優先言語（例えば、英語、韓国語、アラビア語、フランス語、中国語等）を含むことができる。ユーザーがクライアント装置１７０を操作し、クライアント装置１７０によって、位置決定部１１０に対し、（ユーザーＩＤと共に）位置データ点１７１が与えられると、言語照合部が、ユーザープロフィールデータベースの当該ユーザーのプロフィールにアクセスすることにより、そのユーザーの優先言語を特定することができる。このようにして、ユーザーによって選択された位置データ点１７１に対し、対応する住所又は位置情報１７３が、そのユーザーのクライアント装置１７０に提供される場合、位置決定部１１０は、当該ユーザーの優先言語で、住所又は位置情報１７３を送信することができる。
【００４０】
幾つかの変形例によれば、位置決定部１１０は、（例えば、言語照合部を介して）（ｉ）逆ジオコーディング処理を用いて決定した（例えば、複数の資源のうちの１つを用いて決定した）住所又は位置情報を翻訳することにより、（ｉｉ）サードパーティの翻訳サービスにアクセスして、決定された住所又は位置情報を翻訳することにより、及び／又は（ｉｉｉ）逆ジオコーディング処理中に、位置決定部１１０によって、サードパーティの逆ジオコーディングサービスに対し、住所１９１の逆ジオコーディング要求１１１が、指定優先言語でなされるようにすることによって、対応するユーザー及び／又はユーザーのクライアント装置１７０の優先言語で、住所又は位置情報１７３を提供することができる。一部の実施例において、この翻訳は、１つの言語（例えば英語）から音声的に表現された別の言語（例えば、音声的に表現された中国語）への翻訳である。
【００４１】
システム１００は、当事者間に手配される位置情報サービスを可能にする、別のシステムと一緒に又は一部として動作することもできる。例えば、システム１００は、クライアント装置１７０から輸送要求１７５を受信する、輸送手配部１２０を含むことができる。クライアント装置１７０のユーザーは、ピックアップ場所等の位置を選択し、システム１００から住所又は位置情報１７３を受信することができる。次に、ユーザーは、クライアント装置１７０上で動作しているサービスアプリケーションを介して、選択された位置を用いて（又は別の位置を選択して）、システム１００に対し、輸送要求１７５を出すことができる。輸送要求１７５は位置データ点１７１を含むことができ、輸送手配部１２０は、ピックアップ場所を指定する位置データ点１７１に基づいて、運転者が提供する輸送を手配することができる。例えば、複数の運転者が、複数の運転者装置１８０を操作することができる。輸送手配部１２０は、輸送要求１７５（例えば、要求車両の種類、時刻、ユーザーの評価、運転者の評価等）及び／又は位置データ点１７１に基づいて、運転者を選択することができる（例えば、輸送手配部１２０は、遠くにいる他の運転者と比較して、近くにいる運転者を選択することができる）。
【００４２】
輸送手配部１２０が運転者を選択すると、クライアント装置１７０及び選択された運転者の運転者装置１８０（例えば、各々の装置上で動作しているサービスアプリケーション）に対し、輸送サービス情報１２５を提供することができる。運転者には、顧客が選択したピックアック場所も通知される。しかし、クライアント装置１７０のユーザーが選択した位置データ点１７１を、運転者装置１８０に提供する代わりに、一部の実施例において、位置決定部１１０が、（クライアント装置１７０のユーザーに対し、以前に決定された）対応する所在地住所又は位置情報を、住所又は位置情報１８３として、運転者装置１８０に提供することができる。
【００４３】
一部の実施例において、位置決定部１１０は、選択された運転者の優先言語も決定することができる。輸送手配部１２０によって運転者が選択されると、位置決定部１１０の言語照合部は、運転者プロフィールデータベースの選択された運転者プロフィールに（例えば、運転者ＩＤを用いて）アクセスすることにより、その運転者の優先言語を特定することができる。言語照合部は、ユーザーの優先言語と選択された運転者の優先言語とを比較して、両者が同じであるか否かを判定することができる。優先言語が一致した場合、位置決定部１１０は、別の翻訳ステップを実行する必要がなく、代わりに、（ユーザーのクライアント装置１７０に送信済みの）決定した住所又は位置情報を運転者装置１８０に送信することができる。一方、優先言語が一致しない場合、位置決定部１１０は、（例えば、運転者の優先言語で住所１９３を受信するために）再度逆ジオコーディング処理を実行、及び／又はユーザーの優先言語で決定された住所を、運転者の好ましい言語に翻訳する処理を実行することができる。
【００４４】
このように、システム１００は、所定の逆ジオコーディング処理を用いて、位置情報又は所在地住所を提供するにあたり、多くの利点をもたらす。例えば、サードパーティの逆ジオコーディングサービスが、利用不可又はアクセス不可であっても、システム１００が、他の資源を用いて、クライアント装置１７０のユーザーに対し、適切な位置情報を提供することができる。システム１００の管理者が、ジオフェンスデータベース１５０等の内部データベースを絶えず更新して、ユーザーに対し、よりきめの細かな時間ベースの位置情報メッセージを提供することができる。このようなきめの細かな時間ベースの情報は、道路、街角、領域等が、一時的なイベント（例えば、マラソン又は街の祭り）によって、封鎖又は閉鎖されている場合には、ユーザーだけでなく、サービスプロバイダーにとっても、一般的な所在地住所よりも、より有用である。更に、システム１００によって、クライアント装置及び運転者装置の両方に対し、オンデマンドサービスのための確固たる住所又は位置情報が提供されるため、サードパーティの逆ジオコーディングサービスに対し、２つの別々（即ち、クライアント装置及び運転者装置による個別）の逆ジオコーディング要求を出すことなく、ユーザーと選択された運転者が同じ情報を受信することができる。
【００４５】
方法論
図２Ａ及び２Ｂは、１つの実施の形態による、位置情報を決定するための例示的な方法を示す図である。図２Ａ及び２Ｂの例等で説明する方法は、例えば、図１の実施の形態で説明した構成要素を用いて実行することができる。従って、図１の構成要素に対する参照は、ステップ又はサブステップを実行するための適切な要素、又はコンポーネントを示すことを目的としたものである。
【００４６】
図２Ａにおいて、システム１００は、１つ以上のネットワークを介し、クライアント装置から、ＧＰＳデータ点等の位置データ点を受信することができる（２０５）。一部の実施例において、位置データ点は緯度、経度、及びエラー値を含むことができる。エラー値がエラー閾値より小さい場合、システム１００は、受信した位置データ点に対し、逆ジオコーディング処理（２１０〜２５０）を行うことができる。図１の位置決定部１１０によって実行されるような逆ジオコーディング処理の例を詳細に説明する。
【００４７】
位置決定部１１０は、位置データ点が、システム１００の管理者によって構成された、複数の所定領域のいずれかの所定領域内にあるか否かを判定する（２１０）。位置データ点が所定領域内にある場合、位置決定部１１０は、当該所定領域に対応する位置情報を特定し、その位置情報をクライアント装置に送信する（２１５）。複数の所定領域に関する情報は、ジオフェンスエントリとして、ジオフェンスデータベースに保存することができる。一部の実施例において、ジオフェンスエントリは、時間ベースとすることができ、当該ジオフェンスエントリの期間（例えば、開始日、開始時刻、終了日、終了時刻等）を含むことができる。例えば、ジオフェンスエントリは、ＡＴ＆Ｔパーク周囲の領域および／又は対応する領域を指定することができると共に、そこで行われる野球の試合の日付と継続時間に関連した期間（例えば、試合開始の１時間前から試合終了後１時間まで）を有することができる。ＡＴ＆Ｔパークの所定領域に対応する位置情報テキスト文字列は、例えば、「ジャイアンツの試合、ピックアップは、３番ストリートとブラナンストリートの角まで歩いてください」とすることができる。実際の住所／場所が人で混雑及び／又は道路が閉鎖されている可能性があるため、位置情報は（例えば、輸送サービスについて）別の場所に移動してピックアップされるように、ユーザーを誘導する有益な情報とすることができる。このようにしてユーザーのクライアント装置に提供される、このような予め構成された位置情報を、オンデマンドサービスの目的を達成する上において、ユーザーにとってより便利にすることができる。
【００４８】
位置データ点が所定領域内にない場合、位置決定部１１０は、利用可能又はアクセス可能な、地域限定逆ジオコーディングサービスがあるか否かを判定する（２２０）。例えば、位置データ点をクライアント装置から受信したとき、秒当たりのクエリ（ＱＰＳ）数等のレート制限に到達していた場合、サードパーティの逆ジオコーディングサービスを利用することはできない。別の例において、サードパーティの逆ジオコーディングサービスに電話したが、（例えば、当該サードパーティの逆ジオコーディングサービスのコンピューティング資源が、故障若しくはクラッシュしていたため、又は当該サードパーティの逆ジオコーディングサービスに対するネットワーク接続が失われたため）、その呼び出しに応じて住所が受信されなかった場合、サードパーティの逆ジオコーディングサービスを利用することはできない。
【００４９】
地域限定サードパーティの逆ジオコーディングサービスにアクセスして、位置データ点を住所に翻訳可能である場合、位置決定部１１０は、その地域限定サードパーティの逆ジオコーディングサービスに対し、要求を送信することができる（２２５）。この要求には位置データ点を含めることができる。１つの実施の形態において、ユーザーの優先言語で所在地住所の要求を出すことができる。当該地域限定サードパーティの逆ジオコーディングサービスは、当該位置データ点を所在地住所に翻訳して、その住所を位置決定部に１１０に提供することができる。位置決定部は、その住所をクライアント装置に送信することができる（２２８）。１つの変形例において、地域限定サードパーティの逆ジオコーディングサービスが、位置データ点の住所を提供することができない場合、位置決定部１１０は、当該翻訳のために、利用可能又はアクセス可能な、別のサードパーティの逆ジオコーディングサービスがあるか否かを判定することができる。どのサードパーティの逆ジオコーディングサービスも、利用不可又はアクセス不可の場合、位置決定部１１０は、システム１００の地図データベース等の別の資源を利用して位置情報を決定、又はクライアント装置に対し、カスタムテキスト文字列を提供することができる。
【００５０】
２２０に戻り、位置データ点を住所に翻訳するのに、地域限定サードパーティの逆ジオコーディングサービスが利用不可又はアクセス不可の場合、位置決定部１１０は（地域限定サードパーティの逆ジオコーディングサービスと比較して）より大きく、より包括的なサードパーティの逆ジオコーディングサービス（グーグル社が提供している逆ジオコーディングサービス等）にアクセス可能であるか否かを判定することができる（２３０）。より大きく、より包括的なサードパーティの逆ジオコーディングサービスが利用可能である場合、位置決定部１１０は、そのより大きく、より包括的なサードパーティの逆ジオコーディングサービスに対し要求を送信する（２３５）。位置決定部１１０は、翻訳された住所を受信し、その住所をクライアント装置に送信することができる（２３８）。
【００５１】
ときには、システム１００にとって、サードパーティの逆ジオコーディングサービスが利用不可、又はアクセス不可の場合があり得る。どのサードパーティの逆ジオコーディングサービスもアクセス不可、又は利用不可の場合、位置決定部１１０は、位置データ点を住所に翻訳するのに、システム１００の地図データベース（例えば、システム１００が維持する内部データベース）が利用可能であるか否かを判定することができる（２４０）。地図データベースが利用可能である場合、位置決定部１１０は、位置データ点を用いて、保存されている住所を検索して、検索した住所をクライアント装置に送信することができる（２４５）。地図データベースが利用できない場合（又は位置データ点に対応する住所が見つからなかった場合）、システム１００は、クライアント装置に送信すべき、規定の文字列（「住所が入手できませんでした」、「別の場所を選択して下さい」、「運転者を呼び出してください」等）を特定することができる。
【００５２】
図２Ａには、位置決定部１１０が、複数の資源に対し、アクセス又はアクセスを試みる特定の順序が記載してあるが、変形例に応じ、資源の別の順序又は順位付けが可能である。別の実施例において、位置決定部１１０は、特定の資源にアクセス又はアクセスを試みることをしなくてもよい。例えば、サードパーティの逆ジオコーディングサービスが、総ＱＰＳ制限に到達している場合、位置決定部１１０は、そのサードパーティの逆ジオコーディングサービスに対しアクセスしなくてもよく、代わりに、別の資源（例えば、システム１００の地図データベース）又は他の内部データベースにアクセスすることができる。更に、位置データ点が存在するそれぞれの地理的領域には、それぞれ異なる資源が利用可能である。
【００５３】
例えば、図２Ｂは、１つの実施の形態による、位置情報を決定するための別の例を示す図である。図２Ｂにおいて、位置決定部１１０が、地域限定サードパーティの逆ジオコーディングサービスに対し、個別にアクセス又はアクセスを試みることをしないことを除き、図２Ｂは図２Ａと同様である。位置決定部１１０は、クライアント装置から位置データ点を受信し（２５５）、その位置データ点が所定領域内にあるか否かを判定する（２６０）。所定領域内にある場合、その所定領域に対応する特定された位置情報が、クライアント装置に送信される（２６５）。
【００５４】
位置データ点が所定領域内にない場合、位置決定部１１０は、サードパーティの逆ジオコーディングサービスが利用可能、又はアクセス可能であるか否かを判定する（２７０）。サードパーティの逆ジオコーディングサービスが利用可能、又はアクセス可能である場合、位置決定部１１０は、そのサービスに対し要求を送信する（２７５）。当該サードパーティの逆ジオコーディングサービスは、位置データ点を所在地住所等の住所に翻訳して、位置決定部１１０に対し、結果を返すことができる。位置決定部１１０は、クライアント装置に対し、その住所を送信することができる（２７８）。
【００５５】
どのサードパーティの逆ジオコーディングサービスも利用不可、又はアクセス不可の場合、位置決定部１１０は、システム１００の地図データベースが、利用可能であるか否かを判定する（２８０）。利用可能である場合、当該位置データ点に対応する位置情報又は住所を、地図データベースから検索して、クライアント装置に送信する（２８５）。システム１００の地図データベースが利用できない場合、位置決定部１１０は、クライアント装置に送信されるカスタムテキスト文字列を特定することができる（２９０）。
【００５６】
図３は、別の実施の形態による、位置情報を決定するための例示的な方法を示す図である。図３の例等で説明する方法は、例えば、図１の実施の形態で説明した構成要素を用いて実行することができる。従って、図１の構成要素に対する参照は、ステップ又はサブステップを実行するための適切な要素、又はコンポーネントを示すことを目的としたものである。
【００５７】
システム１００は、クライアント装置から、位置データ点を受信することができる（３１０）。クライアント装置は、例えば、そのクライアント装置のユーザーが、オンデマンド又は位置情報サービスに使用する位置を指定することができる、サービスアプリケーションを実行することができる。１つの実施例において、サービスアプリケーションが、地図インタフェースを提供することができ、ユーザーがその地図インタフェース上のグラフィック機能を移動させることにより、位置を選択することができる。選択された位置が、緯度、経度等の位置データ点に対応することができる。
【００５８】
位置データ点の受信に応じて、位置決定部１１０は、逆ジオコーディング処理を実行し、受信したデータ点に対応する住所又は位置情報を決定する（３２０）。一部の実施例において、逆ジオコーディング処理が、図２Ａのステップ２１０〜２５０、又は図２Ｂのステップ２６０〜２９０に対応することができる。位置決定部１１０は、クライアント装置に対し、当該逆ジオコーディング処理の結果、例えば、住所、位置情報、又はカスタムテキスト文字列を提供する。ユーザーは、地図インタフェース上において、輸送要求を出す前に、又は一部の実施の形態においては、輸送要求を出した後でも（ただし、運転者の到着予定時刻の所定時間前まで）、引き続き位置を変更することもできる。位置決定部１１０は、クライアント装置によって、システム１００に対し、別の位置データ点が与えられる都度（例えば、ユーザーが、サービスアプリケーションの地図インタフェース上において、グラフィック機能を移動する都度）、引き続き逆ジオコーディング処理を実行することができる（３２０）。
【００５９】
一部の実施の形態において、ユーザーは、位置データ点を用い、クライアント装置を介して、システム１００に対し、オンデマンドサービス要求（配達要求、娯楽サービス要求、輸送要求等）を出すことができる（３３０）。システム１００は、サービス提供者によって、ユーザーに提供されるオンデマンドサービスを手配することができる。例えば、システム１００は、輸送サービス要求に関する情報、ユーザーに関する情報、及び当該輸送サービスを提供する運転者を選択するための、サービス位置データ点に対応する地理的領域内の利用可能な運転者に関する情報を用いることができる（３４０）。別のオンデマンドサービスの例において、システム１００は、配達サービスを行う特定の運転者の選択、食品サービスを提供する食品販売店の選択等を行うことができる。輸送サービスに関する情報は、ユーザーのクライアント装置及び運転者の運転者装置の両方に提供することができる。
【００６０】
例えば、輸送サービスにおいて、運転者は、ユーザーが指定したピックアップ場所を知る必要がある。ユーザーがピックアップ場所を指定すると、図２Ａ又は２Ｂに記載の逆ジオコーディング処理を通してシステム１００によって特定された、所在地住所又は位置情報を受信することができる。このような情報は運転者にも提供する必要がある。１つの実施例において、位置決定部１１０は、ユーザーに対し、ユーザーの優先言語で住所又は位置情報を提供することができる。位置決定部１１０は、ユーザーの優先言語が運転者の優先言語と一致するか否かを判定することができる（３５０）。優先言語が一致した場合、位置決定部１１０は、既に決定されている住所又は位置情報を、その運転者の装置に送信することができる（３５５）。
【００６１】
一方、ユーザーの優先言語が運転者の優先言語に一致しない場合、位置決定部１１０は、(ｉ)決定された住所又は位置情報を翻訳する、（ｉｉ）サードパーティの翻訳サービスにアクセスして、決定された住所又は位置情報を翻訳する、及び／又は（ｉｉｉ）逆ジオコーディング処理を再度行うことができ、これには、サードパーティの逆ジオコーディングサービスに対し、運転者の優先言語で住所又は位置情報を得るための、逆ジオコーディング要求を出すことを含めることができる（３６０）。運転者の優先言語による住所又は位置情報は、その運転者の装置に提供することができる（３７０）。
【００６２】
ハードウェア図
図４は、本明細書に記載の実施の形態を実施することができる、コンピュータシステムを示すブロック図である。例えば、図１の状況において、システム１００は、図４に示すようなコンピュータシステムを用いて実現することができる。システム１００は、図４で説明するように、複数のコンピュータシステムの組み合わせを使用して実現することもできる。
【００６３】
１つの実施態様において、コンピュータシステム４００は、処理資源４１０、主記憶装置４２０、読み出し専用メモリ（ＲＯＭ）４３０、記憶装置４４０、及び通信インタフェース４５０を有している。コンピュータシステム４００は、情報を処理するための少なくとも１つのプロセッサ４１０、並びに情報及びプロセッサ４１０によって実行される命令を記憶するための、ランダムアクセスメモリ（ＲＡＭ）やその他の動的記憶装置等の主記憶装置４２０を有している。主記憶装置４２０は、プロセッサ４１０によって実行される命令の実行中における、一時的な変数又はその他の中間情報の記憶にも使用することができる。コンピュータシステム４００は、静的情報及びプロセッサ４１０の命令を記憶するためのＲＯＭ４３０、又はその他の静的記憶装置も有することができる。磁気ディスク又は光ディスク等の記憶装置４４０が備えられ、情報及び図１のシステム１００の構成要素を実現するための命令を含む命令が記憶される。一部の実施例において、プロセッサ４１０が、ＲＯＭ４３０及び／又は記憶装置４４０に保存されている命令を実行して、図１〜３で説明したような、逆ジオコーディング処理を実行するためのロジックを実現することができる。
【００６４】
通信インタフェース４５０によって、コンピュータシステム４００が、ネットワークリンク（無線又は有線）を用いて、１つ以上のネットワーク４８０（例えば、移動体通信ネットワーク）と通信することができる。コンピュータシステム４００は、ネットワークリンクを用いて、１つ以上のコンピューティング装置、及び１つ以上のサーバーと通信することができる。一部の変形例において、コンピュータシステム４００が、ネットワークリンクを介し、１つ以上のクライアント装置から、位置データ点４５２を受信することができる。位置データ点４５２をプロセッサ４１０で処理して、その位置データ点４５２に対応する住所又は位置情報を決定することができる。ネットワーク４８０を介し（例えば、位置データ点４５２を与えた）クライアント装置、及び／又はそのクライアント装置のユーザーに輸送サービスを提供するために選択されている運転者の運転者装置に対し、決定された住所情報４５４を送信することができる。
【００６５】
コンピュータシステム４００は、ユーザーに対し、例えば、図形や情報を表示するための陰極線管（ＣＲＴ）、ＬＣＤモニター、又はテレビ受像機等の表示装置４６０も有することができる。英数字キー及び他のキーを含むキーボード等の入力機構４７０をコンピュータシステム４００に接続して、プロセッサ４１０に対し、情報及びコマンド選択を伝達することができる。他の例示的な入力機構４７０には、方向情報及びコマンド選択をプロセッサ４１０に伝達し、表示装置４６０上におけるカーソルの移動を制御するためのマウス、トラックボール、タッチセンサー式スクリーン、又はカーソル方向キーが含まれるが、これに限定されるものではない。
【００６６】
本明細書に記載の実施例は、本明細書に記載の技術を実現するためのコンピュータシステム４００の使用に関連している。１つの実施の形態によれば、これ等の技術は、主記憶装置４２０に含まれている１つ以上の命令の１つ以上のシーケンスを実行するプロセッサ４１０に応じて、コンピュータシステム４００によって実施される。かかる命令は、記憶装置４４０等の別の機械可読媒体から、主記憶装置４２０に読み込むことができる。主記憶装置４２０に含まれている命令のシーケンスを実行することにより、本明細書に記載の処理ステップが、プロセッサ４１０によって実行されることになる。別の実施態様において、ソフトウェア命令の代わりに、又はソフトウェア命令と組み合わせて、ハードワイヤード回路を用いて、本明細書に記載の実施例を実現することができる。従って、記載の実施例は、ハードウェア回路及びソフトウェアの、特定の組合せに限定されるものではない。
【００６７】
図５は、本明細書に記載の実施の形態を実施することができる、携帯コンピューティング装置を示すブロック図である。１つの実施の形態において、コンピューティング装置５００は、電話、メッセージ交換、及びデータサービスが可能な携帯装置等の携帯コンピューティング装置に相当することができる。コンピューティング装置５００は、クライアント装置又は運転者装置に相当することができる。かかる装置の例には、携帯電話キャリア用のスマートフォン、ハンドセット、又はタブレット装置が含まれる。コンピューティング装置５００は、プロセッサ５１０、メモリ資源５２０、表示装置５３０（タッチセンサー式表示装置等）、１つ以上の通信サブシステム５４０（無線通信サブシステムを含む）、入力機構５５０（例えば、入力機構は、タッチセンサー式表示装置を含むか、又はその一部であってよい）、及び１つ以上の位置検出機構（ＧＰＳコンポーネント等）５６０を有している。１つの実施例において、通信サブシステム５４０のうちの少なくとも１つが、データチャンネル及び音声チャンネルを介し、移動通信データを送受信する。
【００６８】
プロセッサ５１０は、図１〜４等で説明した実施態様、及び本出願の他の場所に記載の１つ以上のプロセス、ステップ、及びその他の機能を実行するための、ソフトウェア及び／又はその他のロジックで構成されている。プロセッサ５１０は、メモリ資源５２０に保存されている命令及びデータを用い、図１〜４で説明したサービスアプリケーションを動作させるように構成されている。例えば、ユーザーインタフェースを表示するためのサービスアプリケーションを動作させる命令を、コンピューティング装置５００のメモリ資源５２０に保存することができる。
【００６９】
ユーザーは、コンピューティング装置５００のサービスアプリケーションを動作させて、（例えば、ＧＰＳコンポーネント５６０を用いて）選択した場所の位置データ点５６５を決定することができる。位置データ点５６５は、通信サブシステム５４０を介し、システムに無線送信することができる。システムは、逆ジオコーディング処理を実行して、位置データ点５６５に対応する住所又は位置情報を決定し、コンピューティング装置５００に対し、決定した住所又は位置情報を送信することができる。住所情報５４５が、プロセッサ５１０によって処理され、その住所をユーザーインタフェース５１５の一部として、表示装置５３０に供給することができる。
【００７０】
例えば、プロセッサ５１０は、メモリ資源５２０に保存されている命令及び／又はアプリケーションを実行することにより、表示装置５３０に対し、様々なコンテンツを供給することができる。プロセッサ５１０によって、受信した住所情報５４５を含むことができる、サービスアプリケーションのユーザーインタフェース等の１つ以上のユーザーインタフェース５１５を提供することができる。図５は携帯コンピューティング装置を示しているが、１つ以上の実施の形態は、ラップトップ、デスクトップ（例えば、ＰＣ）等のフル機能のコンピュータを含む、別の種類の装置に実装することができる。
【００７１】
本明細書に記載の実施例は、本出願の何れかの場所で説明した要素の組合せを含むことを意図するのみならず、他の概念、アイデア、又はシステムとは独立して、本明細書に記載の個々の要素及び概念に拡張されることを意図したものである。本明細書において、図面を参照しながら、実施例について詳細に説明したが、概念はこれ等の詳細な実施例に限定されものではないと理解されたい。従って、本概念の範囲は、以下の特許請求の範囲及びその均等物によって規定されることを意図したものである。更に、個別又は実施例の一部として説明した特定の機能は、個別に説明した別の機能又は実施例において、その特定の機能が言及されていない場合であっても、その別の機能又は実施例の一部と組み合わせることができることを意図したものである。従って、組合せについて記述されていなことによって、かかる組合せが有する権利が排除されるべきではない。
【符号の説明】
【００７２】
１００  システム
１１０  位置決定部
１２０  輸送手配部
１３０  装置インタフェース
１４０  サービスインタフェース
１５０  ジオフェンスデータベース
１５５  ジオフェンスインタフェース
１６０  地図データベース
１７０  クライアント装置
１８０  運転者装置
１９０  逆ジオコーディングサービス
４００  コンピュータシステム
４１０  プロセッサ
４２０  主記憶装置
４３０  ＲＯＭ
４４０  記憶装置
４５０  通信インタフェース
４６０  表示装置
４７０  入力機構
５００  コンピューティング装置
５１０  プロセッサ
５２０  メモリ資源
５３０  表示装置
５４０  通信サブシステム
５５０  入力機構
５６０  ＧＰＳコンポーネント
【図１】
2016540191.tif 000003
【図２Ａ】
2016540191.tif 000004
【図２Ｂ】
2016540191.tif 000005
【図３】
2016540191.tif 000006
【図４】
2016540191.tif 000007
【図５】
2016540191.tif 000008
【国際調査報告】
2016540191.tif 000009
2016540191.tif 000010