(57)【要約】ロケーションベースサービスゾーンのためのマルチプロバイダ管理システムの様々な実施形態が開示されている。マルチプロバイダ管理システムは、複数のプロバイダからロケーションベースサービスゾーンに関連するデータを受信できる。固有の識別子を各プロバイダに割り当てることができる。マルチプロバイダ管理システムは、ロケーションベースサービスゾーンを複数のプロバイダからクライアントデバイスに送信することができ、ロケーションベースサービスゾーンに関連付けられたトリガイベント通知を受信することができる。固有の識別子を使用して、トリガイベント通知を受信した際に通知するプロバイダを識別できる。【選択図】図１
2020530220.tif 000002
【特許請求の範囲】
【請求項１】
システムであって、
第一コンピューティングデバイスと、
前記第一コンピューティングデバイスにおいて実行される少なくとも１つのアプリケーションであって、実行されると、前記少なくとも１つのアプリケーションは前記第一コンピューティングデバイスに少なくとも、
地理的領域内の複数のロケーションベースサービスゾーンと、前記地理的領域を画定する地理的パラメータとを第二コンピューティングデバイスから受信させ、
ロケーションベースサービスゾーン数が所定の閾値を満たす、または上回ることを判定させ、
前記第一コンピューティングデバイスの位置に少なくとも部分的に基づく前記複数のロケーションベースサービスゾーンのサブセットを選択させ、かつ、
前記複数のロケーションベースサービスゾーンの前記サブセットの監視を開始させる、
前記少なくとも１つのアプリケーションと、
を備える、システム。
【請求項２】
前記複数のロケーションベースサービスゾーンの前記サブセットは、以前に監視されたロケーションベースサービスゾーン、前記第一コンピューティングデバイスの速度、前記第一コンピューティングデバイスの移動方向、ユーザインタラクション履歴、及び集約ユーザインタラクション履歴のうちの少なくとも１つを含む複数の要因に少なくとも部分的にさらに基づく、請求項１に記載のシステム。
【請求項３】
実行されると、前記少なくとも１つのアプリケーションは、さらに、前記第一コンピューティングデバイスに少なくとも、前記複数の要因に少なくとも部分的に基づき前記複数のロケーションベースサービスゾーンの個々のロケーションベースサービスゾーンにスコアを割り当てさせ、異なる重み付けが前記複数の要因の個々の要因に適用される、請求項２に記載のシステム。
【請求項４】
実行されると、前記少なくとも１つのアプリケーションは、さらに、前記第一コンピューティングデバイスに少なくとも、前記スコアに従い前記個々のロケーションベースサービスゾーンをランク付けさせ、前記複数のロケーションベースサービスゾーンの前記サブセットが前記所定の閾値内のロケーションベースサービスゾーンの最高ランク数に従って選択される、請求項３に記載のシステム。
【請求項５】
実行されると、前記少なくとも１つのアプリケーションは、さらに、前記第一コンピューティングデバイスに少なくとも、
前記第一コンピューティングデバイスが前記地理的領域の外側に移動したことを判定させ、
前記第一コンピューティングデバイスの更新された位置を推定させ、かつ、
前記更新された位置に少なくとも部分的に基づき、新たな地理的領域内の新たな複数のロケーションベースサービスゾーンについての要求を前記第二コンピューティングデバイスに送信させる、
請求項１乃至４の何れか１項に記載のシステム。
【請求項６】
実行されると、前記少なくとも１つのアプリケーションは、さらに、前記第一コンピューティングデバイスに少なくとも、前記第一コンピューティングデバイスが位置を変更したと判定することに応答して前記複数のロケーションベースサービスゾーンの前記サブセットを修正させる、請求項１乃至５の何れか１項に記載のシステム。
【請求項７】
実行されると、前記少なくとも１つのアプリケーションは、さらに、前記第一コンピューティングデバイスに少なくとも、前記複数のロケーションベースサービスゾーン内の前記ロケーションベースサービスゾーン数を決定させる、請求項１乃至６の何れか１項に記載のシステム。
【請求項８】
実行されると、前記少なくとも１つのアプリケーションは、前記第一コンピューティングデバイスに少なくとも、
特定のロケーションベースサービスゾーンとのインタラクションを検出させ、かつ、
前記特定のロケーションベースサービスゾーンとの前記インタラクションを検出することに応答して、ユーザインタラクション履歴を修正させる、請求項１乃至７の何れか１項に記載のシステム。
【請求項９】
方法であって、
第一コンピューティングデバイスを介して、アクティブゾーンデータを第二コンピューティングデバイスから受信することであって、前記アクティブゾーンデータが地理的パラメータによって画定されるアクティブゾーン内の複数のロケーションベースサービスゾーンを含む、前記第二コンピューティングデバイスから前記受信することと、
前記第一コンピューティングデバイスを介して、前記複数のロケーションベースサービスゾーンの数が所定の閾値を上回ることに応答して、ロケーションベースサービスゾーンのサブセットを前記複数のロケーションベースサービスゾーンから選択することと、
前記第一コンピューティングデバイスを介して、前記ロケーションベースサービスゾーンの前記サブセットを監視することと、
を含む、方法。
【請求項１０】
前記第一コンピューティングデバイスを介して、以前に監視されたロケーションベースサービスゾーンからの退出に少なくとも部分的に基づき前記第一コンピューティングデバイスのデバイス位置を推定することをさらに含む、請求項９に記載の方法。
【請求項１１】
前記ロケーションベースサービスゾーンの前記サブセットは、前記デバイス位置に少なくとも部分的に基づき選択される、請求項１０に記載の方法。
【請求項１２】
前記第一コンピューティングデバイスを介して、特定のロケーションベースサービスゾーンからの退出を前記ロケーションベースサービスゾーンの前記サブセットから検出することをさらに含む、請求項９乃至１１の何れか１項に記載の方法。
【請求項１３】
前記第一コンピューティングデバイスを介して、前記退出に応答して前記第一コンピューティングデバイスの更新されたデバイス位置を推定することをさらに含む、請求項１２に記載の方法。
【請求項１４】
前記第一コンピューティングデバイスを介して、前記更新されたデバイス位置に少なくとも部分的に基づき前記複数のロケーションベースサービスゾーンから、更新されたロケーションベースサービスゾーンのサブセットを選択することをさらに含む、請求項１３に記載の方法。
【請求項１５】
前記第一コンピューティングデバイスを介して、前記第一コンピューティングデバイスが前記更新されたデバイス位置に少なくとも部分的に基づき前記アクティブゾーンを退出したと判定することと、
前記第一コンピューティングデバイスを介して、前記第二コンピューティングデバイスから更新されたアクティブゾーンについての要求を送信することであって、前記要求が新たな前記デバイス位置を含む、前記要求を前記送信することと、
前記第一コンピューティングデバイスを介して、更新された地理的パラメータによって画定される前記更新されたアクティブゾーン内の更新された複数のロケーションベースサービスゾーンを含む、更新されたアクティブゾーンデータを受信することと、
をさらに含む、請求項１３または１４に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
＜関連出願の相互参照＞
本出願は、２０１７年８月７日に出願の「ＨＩＧＨ  ＤＥＮＳＩＴＹ  ＬＯＣＡＴＩＯＮ−ＢＡＳＥＤ  ＳＥＲＶＩＣＥ  ＺＯＮＥ  ＭＡＮＡＧＥＭＥＮＴ  ＦＯＲ  Ａ  ＧＥＯＧＲＡＰＨＩＣ  ＲＥＧＩＯＮ」と題する米国特許出願第１５／６７０，４３０号の利益及びそれへの優先権を主張し、その内容は、その全体が参照により本明細書に援用される。
【背景技術】
【０００２】
地理的フェンス、または「ジオフェンス（geofences）」、及びビーコンは、ロケーションベースサービスに関連するマーケティング目的のために使用されることが可能である。例えば、モバイルデバイスがジオフェンスの境界によって画定される地理的領域に入るときに、ジオフェンスを使用して、通知をモバイルデバイスへ提供することが可能である。同様に、モバイルデバイスが無線信号をブロードキャストするビーコンに物理的に近いときに、モバイルデバイスは、ブロードキャストされた信号を受信することが可能であり、通知は、トリガされることができる。ジオフェンス及び／またはビーコンと関連する通知は、ロケーションベースサービスに関することができる。
【０００３】
本開示の多くの態様は、以下の図面を参照して、より良好に理解することができる。図面の構成要素は、必ずしも縮尺通りになっているとは限らず、代わりに本開示の原理を明確に例示することに重点を置いている。さらに図面中で、同様の参照番号は、いくつかの図面全体にわたって対応する部分を指定する。
【図面の簡単な説明】
【０００４】
【図１】本開示のさまざまな実施形態に従い、クライアントデバイスがロケーションベースサービスゾーンのサブセットを選択し、提供されたアクティブゾーン内で監視する、例示的なシナリオを示す図である。
【図２】本開示のさまざまな実施形態に従う、ネットワーク環境の概略ブロック図である。
【図３】本開示のさまざまな実施形態に従い、図２のネットワーク環境においてクライアントデバイス内で実行されるアクティブゾーンフィルタアプリケーションの部分として実装される機能性の一例を示すフローチャートである。
【図４】本開示のさまざまな実施形態に従い、図２のネットワーク環境においてクライアントデバイス内で実行されるアクティブゾーンフィルタアプリケーションの部分として実装される機能性の一例を示すフローチャートである。
【図５】本開示のさまざまな実施形態に従い、図２のネットワーク環境においてクライアントデバイス内で実行されるアクティブゾーンフィルタアプリケーションの部分として実装される機能性の一例を示すフローチャートである。
【図６】本開示のさまざまな実施形態に従い、図２のネットワーク環境において使用されるコンピューティング環境の一例の説明を提供する概略ブロック図である。
【図７】本開示の種々の実施形態による、図２のネットワーク環境で使用されるクライアントデバイスの一例の説明を提供する概略ブロック図である。
【発明を実施するための形態】
【０００５】
本開示は、クライアントデバイスによって監視されるロケーションベースサービスゾーン（例えば、ジオフェンス、ビーコンなど）を管理する、さまざまなシステム及び方法に関する。本開示のいくつかの実施形態は、ユーザデバイスを囲む動的なサイズに形成された領域内の包括的なロケーションベースサービスゾーンのセットを受信すること、及びロケーションベースサービスゾーンを動的にフィルタリングして、監視する動的なサイズに形成された領域内でロケーションベースサービスゾーンのサブセットを決定することに関する。フィルタリングは、例えば、デバイス制限、現在の位置、以前に監視されたロケーションベースサービスゾーン、デバイス速度、デバイス方向、ユーザインタラクション履歴、集約ユーザインタラクション履歴などのような、さまざまな要因に基づくことができる。
【０００６】
ロケーションベースサービスゾーンの実施例は、地理的フェンス（「ジオフェンス」）及びビーコンを含む。ジオフェンスは、地理的座標及び半径の組み合わせのような、仮想地理的境界として画定されることが可能である。例えば、ジオフェンスは、ユーザが特定のプロバイダと関連するロケーションベースサービスを経験することができる領域を画定することができる。ジオフェンス領域は、ユーザが経験したい可能性がある特定のロケーションベースサービスに対応する領域を囲む仮想境界線によって形成される、または画定されることが可能である。ジオフェンスの内側領域は、いずれかの適切なサイズ、及びいずれかの適切な形状であることができる。仮想境界線は、二次元または三次元境界線に対応することができる。例えば、プロバイダが配送サービスに関連する場合に、二次元境界線は配送位置を中心とする領域を含むことができ、三次元境界線は配送位置の高さまたは高度を含むことができる。別の実施例として、三次元境界線は、建物の特定の階またはスイートにジオフェンスを置くために、高さまたは高度を利用することができる。
【０００７】
ビーコンは、無線信号をブロードキャストするように構成されるデバイスを含むことができる。配送サービスの実施例を使用して、プロバイダデバイスは、プロバイダデバイスの位置に関連する無線信号をブロードキャストするビーコンを含むことができる。ユーザデバイスがビーコンの近接内にあるときに、ユーザデバイスは、無線信号を受信することにより、ビーコンと関連するイベント通知（例えば、メッセージを表示する、近接位置のプロバイダデバイスを通知するなど）をトリガすることが可能である。
【０００８】
サービスプロバイダ（例えば、モバイルストア、モバイルデリバリサービス、ブリックアンドモルタル店舗など）は、ロケーションベースサービスゾーンを作成して、これらのサービスに関連するユーザエクスペリエンスを開始することができる。１つの非限定的な実施例において、プロバイダは、モバイルデリバリ位置においてマーチャントが販売する物品と関連付けられることができる。各配送位置は、それぞれのロケーションベースサービスゾーンと関連付けられることができる。例えば、マーチャントが位置Ａにおいて物品を販売しているときに、マーチャント位置を囲む境界を画定するジオフェンスを作成することができる。ジオフェンスを監視しているユーザデバイスがジオフェンスによって画定される境界を横切るときに、クライアントデバイスは、ジオフェンスを認識し、ジオフェンスと関連するアクションを実行することができる（例えば、マーチャント位置を含むメッセージを表示し、通知をプロバイダへ送信して集荷のための物品を準備するなど）。
【０００９】
本開示の１つの実施形態は、クライアントデバイスが監視することができるロケーションベースサービスゾーン数を制限するクライアントデバイスの制限をロケーションベースサービスゾーン数が上回るときに、ロケーションベースサービスゾーンのサブセットを選択し、アクティブゾーン内で監視することに関する。アクティブゾーンは、包括的なロケーションベースサービスゾーンのセットを含む動的なサイズの地理的領域であり、サーバコンピューティングデバイスによって作成される。クライアントデバイスは、ロケーションベースサービスゾーンを含むアクティブゾーンをアクティブゾーン管理システムから受信し、このアクティブゾーン中に含まれるロケーションベースサービスゾーンを監視することが可能である。特定のアクティブゾーン内のロケーションベースサービスゾーン数がクライアントデバイスの制限を上回るときに、クライアントデバイスは、アクティブゾーン内でロケーションベースサービスゾーンのサブセットを選択して、監視することができる。その結果、ロケーションベースサービスゾーンのサブセットは、サーバコンピューティングデバイスによって提供されるアクティブゾーン中に含まれたロケーションベースサービスゾーンの一部の選択である。
【００１０】
例えば、異なるタイプのクライアントデバイスは、クライアントデバイスがサポートすることが可能である、ロケーションベースサービスゾーンの数に関する制限を有することができる。クライアントデバイスの制限は、クライアントデバイスの電力使用量、メモリ使用量、及び／またはプロセッサ使用量を最適化するために、クライアントデバイスによって課せられることができる。いくつかの実施形態において、クライアントデバイスは、フィルタリングルールのセットを適用し、アクティブゾーン内の異なるロケーションベースサービスゾーンを分析し、例えば、クライアントデバイスの現在の位置、クライアントデバイスが監視する（例えば、ロケーションベースサービスゾーンを出る、または入る）最近抜けたロケーションベースサービスゾーン、デバイス速度、デバイス方向、ユーザインタラクション履歴、集約ユーザインタラクション履歴、及び／または理解できるようないずれかの他の要因などの要因に基づきロケーションベースサービスゾーンのサブセットを選択することができる。
【００１１】
図１は、本開示のさまざまな実施形態に従い、クライアントデバイス１０６によって監視されているアクティブゾーン１０３内のロケーションベースサービスゾーンのサブセット１００を示す例示的なシナリオを示す図である。この実施例において、クライアントデバイス１０６は、ハンドヘルドモバイルデバイス（例えば、タブレット、スマートフォンなど）に対応する。ロケーションベースサービスゾーン１００は、ジオフェンス１０９（例えば、１０９ａ、１０９ｂ、１０９ｃ、１０９ｄ、１０９ｅ）、ビーコン１１２（例えば、１１２ａ、１１２ｂ、１１２ｃ、１１２ｄ）、及び／または理解できるようないずれかの他のタイプのロケーションベースサービスゾーン１００を含むことができる。
【００１２】
アクティブゾーン１０３は、クライアントデバイス１０６の少なくとも１つの位置に従い、少なくとも１つのコンピューティングデバイス１１８上で実行されるアクティブゾーン管理システム１１５によって作成される。所定の半径に従うクライアントデバイス位置を含むアクティブゾーン１０３を作成する。例えば、いくつかの実施形態において、クライアントデバイス１０６の位置に中心点、及びいくつかの所定の値の半径（例えば、１キロメートル（ｋｍ）、５ｋｍ、２５ｋｍなど）を有するアクティブゾーン１０３を作成することができる。アクティブゾーン１０３を作成すると、このアクティブゾーン１０３内のロケーションベースサービスゾーン１００を識別することができる。いくつかの実施形態において、半径は、所定の最小値（例えば、１ｋｍ、３ｋｍ）を有する。この所定の最小値は、デバイス制限、設計選択、ロケーションベースサービスゾーンを識別するための高精度機能、及び／または理解できるようないずれかの他の要因に基づくことができる。
【００１３】
アクティブゾーン管理システム１１５は、アクティブゾーン１０３を作成し、アクティブゾーンデータ１１７（例えば、地理的パラメータ、ロケーションベースサービスゾーンパラメータなど）を、クライアントデバイス１０６上で実行されるアクティブゾーンフィルタアプリケーション１２４に送信することができる。クライアントデバイス位置１２７に関して、アクティブゾーン１０３を作成することができる。クライアントデバイス１０６、ロケーションベースサービスゾーン進入及び／または退出履歴、及び／またはデバイス位置１２７を決定する及び／または推定するいずれかの他の方式によって提供される座標に従い、クライアントデバイス位置１２７を決定する、及び／または推定することができる。
【００１４】
いくつかの実施形態において、クライアントデバイス１０６は、コンピューティングデバイス１１８からアクティブゾーン１０３を要求することができる。他の実施形態において、アクティブゾーン管理システム１１５は、クライアントデバイス１０６からの要求なく、アクティブゾーン１０３をクライアントデバイス１０６に送信することができる。例えば、アクティブゾーン管理システム１１５は、アクティブゾーン１０３をクライアントデバイス１０６に定期的に生成して、送信することができる。別の実施例において、アクティブゾーン管理システム１１５は、以前に監視されたアクティブゾーン１０３からの退出の検出の際に、アクティブゾーン１０３をクライアントデバイスに送信することができる。クライアントデバイス１０６から受信するデバイス位置１２７、クライアントデバイス１０６がアクティブゾーン１０３を画定する地理的領域を退出したことを示すクライアントデバイス１０６から受信するトリガ通知、及び／または理解できるようないずれかの他の要因に従い、以前に監視されたアクティブゾーン１０３からの退出を決定することができる。
【００１５】
アクティブゾーン１０３の作成の際に、アクティブゾーン管理システム１１５は、アクティブゾーンデータ１１７をクライアントデバイス１０６に送信する。アクティブゾーンデータ１１７は、クライアントデバイス１０６のために、またアクティブゾーン管理システム１１５によって、作成されるアクティブゾーン１０３と関連するデータを含む。アクティブゾーンデータ１１７は、ジオフェンスパラメータ２３０（図２）、ビーコンパラメータ２３３（図２）、集約インタラクションデータ２１５（図２）、及び／または理解できるいずれかの他のタイプのデータを含むことができる。
【００１６】
いくつかの実施形態において、アクティブゾーンデータ１１７は、デバイスがサポートした閾値を上回るロケーションベースサービスゾーン１００の量についてのパラメータを含む。デバイスがサポートした閾値は、クライアントデバイス１０６の電力使用量、メモリ使用量、及び／またはプロセッサ使用量を最適化するために、クライアントデバイス１０６によって課せられることができる、クライアントデバイスの制限に従い定義されることができる。例えば、特定のクライアントデバイス１０６は、五十（５０）個のロケーションベースサービスゾーン１００のみを所与の時間に監視することが可能であることができる。このようなものとして、アクティブゾーン管理システム１１５によって提供されるアクティブゾーン１０３がクライアントデバイス１０６によってサポートされる量を上回るロケーションベースサービスゾーン１００の量を含む場合に、提供されたアクティブゾーン１０３内のロケーションベースサービスゾーン１００の数は、監視するために減らされる必要がある。
【００１７】
ロケーションベースサービスゾーン１００の量が所定の閾値を上回るときに、アクティブゾーンフィルタアプリケーション１２４は、監視されるロケーションベースサービスゾーンのサブセット１００を選択することができる。例えば、図１において、アクティブゾーン１０３は、複数のジオフェンス１０９及び複数のビーコン１１２を含む。しかしながら、ジオフェンス１０９のサブセット及びビーコン１１２（例えば、１０９ａ、１０９ｂ、１０９ｃ、１１２ａ、１１２ｂ）のみを監視する。これらのジオフェンス１０９及びビーコン１１２を実線によって画定し、監視されていないジオフェンス１０９及びビーコン１１２（例えば、１０９ｄ、１０９ｅ、１１２ｃ、１１２ｄ）を破線によって画定する。
【００１８】
アクティブゾーンフィルタアプリケーション１２４は、要因に従いロケーションベースサービスゾーンのサブセット１００を選択することができ、これらの要因は、例えば、クライアントデバイス１０６の現在の位置、最近クライアントデバイス１０６が進入した、または退出したロケーションベースサービスゾーン、デバイス速度、デバイス方向、ユーザインタラクション履歴、集約ユーザインタラクション履歴、及び／または理解できるようないずれかの他の要因を含むことができる。図１の実施例を使用して、アクティブゾーンフィルタアプリケーション１２４は、アクティブゾーン１０３の同じ一般領域にクラスタ化されるロケーションベースサービスゾーンのグループ１００を選択した。この実施例において、ロケーションベースサービスゾーンのサブセット１００は、クライアントデバイス１０６への近接、及び／またはクライアントデバイス１０６の移動の方向及び／または速度のそれぞれに従い、決定されることができる。
【００１９】
いくつかの実施形態において、アクティブゾーンフィルタアプリケーション１２４は、ロケーションベースサービスゾーンのサブセット１００が更新される必要があると判定することができる。例えば、アクティブゾーンフィルタアプリケーション１２４は、１つまたは全てのロケーションベースサービスゾーン１００が監視されていないアクティブゾーン１０３内の他のロケーションベースサービスゾーン１００に関してもはや好ましくはないように、クライアントデバイス位置１２７が変更されたと判定することができる。このようなものとして、アクティブゾーンフィルタアプリケーション１２４は、ロケーションベースサービスゾーン１００を再評価し、アクティブゾーン１０３内に新たなロケーションベースサービスゾーンのサブセット１００を生成することができる。クライアントデバイス１０６がアクティブゾーン１０３に含まれるロケーションベースサービスゾーン１００と関連するデータを既に含むため、クライアントデバイス１０６は、アクティブゾーン１０３の地理的領域内にまだある間、少なくともコンピューティングデバイス１１８と接続する必要がない。いくつかの実施形態において、アクティブゾーンフィルタアプリケーション１２４は、クライアントデバイス１０６が特定のロケーションベースサービスゾーン１００を退出したことにより、クライアントデバイス１０６のデバイス位置１２７を変更することを検出することに応答して、ロケーションベースサービスゾーンのサブセット１００が更新される必要があると判定することができる。
【００２０】
いくつかの実施形態において、アクティブゾーンフィルタアプリケーション１２４は、クライアントデバイス１０６がアクティブゾーン１０３を退出したことを検出することができ、更新されたアクティブゾーン１０３をアクティブゾーン管理システム１１５から要求することができる。例えば、アクティブゾーンフィルタアプリケーション１２４は、クライアントデバイス１０６がアクティブゾーン１０３の地理的境界に接することができる特定のロケーションベースサービスゾーン１００を退出したことを検出することに応答して、クライアントデバイス１０６がアクティブゾーン１０３を退出したことを検出することができる。
【００２１】
以下の説明では、システム及びその構成要素の一般的な説明を提供した後に、その動作の考察を伴う。
【００２２】
図２を参照すると、種々の実施形態によるネットワーク環境２００が示される。ネットワーク環境２００は、ネットワーク１２１を介して互いにデータ通信する、コンピューティング環境２０３及びクライアントデバイス１０６を含む。ネットワーク１２１は、例えば、インターネット、イントラネット、エクストラネット、ワイドエリアネットワーク（ＷＡＮ）、ローカルエリアネットワーク（ＬＡＮ）、有線ネットワーク、無線ネットワーク、ケーブルネットワーク、衛星ネットワーク、もしくは他の適切なネットワークなど、または２つ以上のこれらのようなネットワークのいずれかの組み合わせを含む。
【００２３】
コンピューティング環境２０３は、例えば、サーバコンピュータまたは計算能力を提供する任意の他のシステムを含んでよい。代わりに、コンピューティング環境２０３は、例えば、１つ以上のサーババンクまたはコンピュータバンクまたは他の配置で配置し得る複数のコンピューティングデバイスを使用し得る。係るコンピューティングデバイスは、単独の設備に位置し得る、または多くの異なる地理的な場所間に分散され得る。例えば、コンピューティング環境２０３は、ホストコンピューティングリソース、グリッドコンピューティングリソース、及び／または任意の他の分散コンピューティング配列を一緒に備え得る複数のコンピューティングデバイスを含み得る。いくつかの場合では、コンピューティング環境２０３は、処理、ネットワーク、ストレージ、または他のコンピューティング関連リソースの割り当て容量が経時的に変化してもよい弾性的な計算リソースに対応してもよい。
【００２４】
様々なアプリケーション及び／または他の機能は、様々な実施形態に従って、コンピューティング環境２０３で実行され得る。また、種々のデータは、コンピューティング環境２０３にアクセス可能であるデータストア２０６に格納される。データストア２０６は、理解できるような、複数のデータストア２０６を代表するものであり得る。例えば、データストア２０６に記憶されるデータは、下記に説明される様々なアプリケーション及び／または機能エンティティの動作と関連付けられる。
【００２５】
コンピューティング環境２０３上で実行されるコンポーネントは、例えば、アクティブゾーン管理システム１１５、及び本明細書に詳細に説明されない他のアプリケーション、サービス、プロセス、システム、エンジン、または機能を含む。アクティブゾーン管理システム１１５を実行し、特定のコンピューティングデバイスについてのアクティブゾーン１０３を作成する。アクティブゾーン１０３は、特定のクライアントデバイス１０６及び／またはユーザアカウントに関して選択される、包括的なロケーションベースサービスゾーンのセット１００を含む動的なサイズの地理的領域である。いくつかの実施形態において、アクティブゾーン管理システム１１５は、特定のクライアントデバイス１０６及びクライアントデバイス制限に特有であるロケーションベースサービスゾーン１００を含むアクティブゾーン１０３を作成し、このアクティブゾーンのサイズに動的に合わせて作ることが可能である。アクティブゾーン管理システム１１５は、ロケーションベースサービスゾーン１００を作成されたアクティブゾーン１０３内で識別することが可能である。アクティブゾーン管理システム１１５は、クライアントデバイス位置における変化、ロケーションベースサービスゾーン１００と関連する時間制約、ロケーションベースサービスゾーン１００の追加、ロケーションベースサービスゾーン１００の除去、ロケーションベースサービスゾーンパラメータにおける変化、及び／または理解できるようないずれかの他の要因に少なくとも部分的に基づきアクティブゾーン１００を更新し、変更するように構成されることが可能である。
【００２６】
データストア２０６に格納されるデータは、例えば、デバイスデータ２０９、プロバイダデータ２１２、集約インタラクションデータ２１５、及び潜在的に他のデータを含む。デバイスデータ２０９は、異なるクライアントデバイス１０６と関連するデータを含む。デバイスデータ２０９は、ユーザアカウント情報２１８、位置データ２２１、アクティブゾーン（複数可）１０３、及び／またはクライアントデバイス１０６と関連するいずれかの他のデータを含むことができる。
【００２７】
ユーザアカウント情報２１８は、クライアントデバイス１０６と関連する１つ以上のユーザアカウントと関係がある情報を含むことができる。例えば、ユーザアカウント情報２１８は、ユーザ名、名前及び苗字、及び／または他の識別情報を含むことができる。位置データ２２１は、クライアントデバイス１０６の地理的位置を表す。クライアントデバイス１０６からコンピューティング環境２０３に提供される地理的座標に従い、位置データ２２１を決定することができる。他の実施形態において、クライアントデバイス１０６によって最近トリガされた、及び／または抜けたロケーションベースサービスゾーン１００に従い、位置データ２２１を決定することができる。例えば、クライアントデバイス１０６が特定のロケーションベースサービスゾーン１００に進入する、及び／または退出するときに、クライアントデバイス１０６は、トリガイベント通知２２７をコンピューティング環境２０３に送信するように構成されることができる。このようなものとして、トリガされたロケーションベースサービスゾーン１００の地理的パラメータに従い、位置データ２２１を決定することができる。
【００２８】
アクティブゾーン（複数可）１０３は、デバイス制限、ロケーションベースサービスゾーン１００と関連するサービスがユーザ（例えば、単一のユーザ）を標的とするか、幅広く（例えば、複数のユーザを）標的とするか、特定のロケーションベースサービスゾーン１００のアクティブステータス、それぞれのサービスについてクライアントデバイス１０６によるオプトインステータス、及び／または理解できるようないずれかの他の要因を考慮して特定のデバイス１０６について具体的に選択される、包括的なロケーションベースサービスゾーンのセット１００を含む特定のクライアントデバイス１０６についてのアクティブゾーン１０３についてのパラメータを含むことができる。
【００２９】
プロバイダデータ２１２は、ロケーションベースサービスゾーン１００のプロバイダと関連するデータを含む。プロバイダデータ２１２は、ジオフェンス（複数可）１０９、ビーコン（複数可）１１２、及び／またはプロバイダと関連するいずれかの他のデータを含む。ジオフェンス１０９は、プロバイダのサービスに関連する仮想地理的境界を表す。ジオフェンス１０９は、ジオフェンスパラメータ２３０、及び／またはジオフェンス１０９と関連するいずれかの他のタイプのデータを含む。ジオフェンスパラメータ２３０は、地理的位置と関連する１つ以上の座標、内側領域の半径、非円形領域についての周囲仕様、クライアントデバイスが境界内にあるときにクライアントデバイス１０６のユーザに提示されるメッセージ（例えば、「ＸＹＺ店舗で販売する。途中で立ち寄り、１つの物品の５０％割引を受ける」）、アクティブ時間、アクティブ日付、一意のトークン識別子、及び／またはジオフェンス１０９と関連する他のパラメータを含むことができる。
【００３０】
ビーコン（複数可）１１２は、無線信号をブロードキャストするように構成されるデバイスを表す。ビーコン（複数可）１１２は、クライアントデバイス１０６がブロードキャストされた信号を受信する範囲内にあるときに、クライアントデバイス１０６がビーコン１１２からブロードキャストされる無線信号にアクセスするために使用することが可能である、ビーコン識別子を有するビーコンパラメータ２３３を含む。
【００３１】
集約インタラクションデータ２１５は、複数のユーザのインタラクション履歴と関連するデータを含む。例えば、ロケーションベースサービスゾーン１００をトリガする場合、アクティブゾーン管理システム１１５、及び／またはコンピューティング環境２０３内で実行される他のアプリケーションは、各トリガと関連するユーザインタラクションのログを取ることができる。しかしながら、ユーザが特定のロケーションベースサービスゾーン１００をトリガすることができる間、ユーザは、ロケーションベースサービスゾーン１００と関連するサービス（例えば、製品を購入する）とインタラクトすることができない。集約インタラクションデータ２１５は、複数のユーザと関連するデータを含むことができ、ユーザが特定のロケーションベースサービスゾーン１００とインタラクトすることができる確率を決定するために使用されることができる。例えば、特定の地理的領域中に２つの異なるロケーションベースサービスゾーン１００がある場合、集約インタラクションデータ２１５は、サービスＢと関連するロケーションベースサービスゾーン１００とインタラクトすることより多くのユーザがサービスＡと関連するロケーションベースサービスゾーン１００とインタラクトすることを示すことができる。いくつかの実施形態において、集約インタラクションデータ２１５をクライアントデバイス１０６に提供されるアクティブゾーンデータ１１７に含むことができる。クライアントデバイス１０６は、ロケーションベースサービスゾーンのサブセット１００を選択してアクティブゾーン１０３から監視する際に、集約インタラクションデータ２１５を要因として使用することができる。
【００３２】
クライアントデバイス１０６は、ネットワーク１２１に連結され得る複数のクライアントデバイスを表す。クライアントデバイス１０６は、例えば、コンピュータシステムなどのプロセッサベースのシステムを含み得る。係るコンピュータシステムは、デスクトップコンピュータ、ラップトップコンピュータ、パーソナルデジタルアシスタント、携帯電話、スマートフォン、セットトップボックス、音楽プレーヤ、ウェブパッド、タブレットコンピュータシステム、ゲーム機、電子書籍リーダ、スマートウォッチ、ヘッドマウントディスプレイ、音声インタフェースデバイス、または他のデバイスの形で具体化されてよい。クライアントデバイス１０６は、ディスプレイ２３６を含んでよい。ディスプレイ２３６は、例えば、液晶ディスプレイ（ＬＣＤ）、ガスプラズマベースのフラットパネルディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、電子インク（Ｅインク）ディスプレイ、ＬＣＤプロジェクタ、または他の種類の表示装置等の１つ以上の装置を含んでよい。
【００３３】
クライアントデバイス１０６は、アクティブゾーンフィルタアプリケーション１２４、クライアントアプリケーション２３９及び／または他のアプリケーション等の種々のアプリケーションを実行するよう構成されてもよい。クライアントアプリケーション２３９をクライアントデバイス１０６内で実行し、例えば、コンピューティング環境２０３及び／または他のサーバによって提供されるネットワークコンテンツにアクセスすることによって、ディスプレイ２３６上のユーザインタフェース２４１をレンダリングすることができる。この目的のために、クライアントアプリケーション２３９は、例えば、ブラウザ、専用アプリケーションなどを含むことができ、ユーザインタフェース２４１は、ネットワークページ、アプリケーション画面などを含むことができる。クライアントデバイス１０６は、例えば、電子メールアプリケーション、ソーシャルネットワーキングアプリケーション、ワードプロセッサ、スプレッドシート、及び／または他のアプリケーションなどのクライアントアプリケーション２３９を越えるアプリケーションを実行するように構成されることができる。
【００３４】
本開示のさまざまな実施形態に従い、アクティブゾーンフィルタアプリケーション１２４を実行し、アクティブゾーン管理システム１１５から受信するアクティブゾーン１０３中に含まれるロケーションベースサービスゾーンのサブセット１００を選択する。いくつかの地理的領域は、密な量のロケーションベースサービスゾーン１００を含むことができる。アクティブゾーンフィルタアプリケーション１２４がクライアントデバイス１０６によってサポートされるものより多いロケーションベースサービスゾーン１００を含むアクティブゾーン１０３を受信するときに、アクティブゾーンフィルタアプリケーション１２４は、例えば、クライアントデバイス１０６の現在位置、クライアントデバイス１０６によって最近抜けたロケーションベースサービスゾーン１００、デバイス速度、デバイス方向、ユーザ履歴、集約ユーザ履歴、及び／または理解できるようないずれかの他の要因などの、さまざまな要因に従い受信したアクティブゾーン１０３中に含まれるロケーションベースサービスゾーンのサブセット１００を選択することができる。いくつかの実施形態において、アクティブゾーンフィルタアプリケーション１２４は、上記の要因及びフィルタリングルール２５１に少なくとも部分的に基づき受信したアクティブゾーン１０３中に含まれるロケーションベースサービスゾーン１００のそれぞれにスコアを割り当てることができる。ロケーションベースサービスゾーン１００をランク付けすることができ、デバイスがサポートした閾値内の最高ランクのロケーションベースサービスゾーン１００を、監視されているロケーションベースサービスゾーンのサブセット１００中に含むことができる。アクティブゾーンフィルタアプリケーション１００は、ロケーションベースサービスゾーンのサブセット１００を更新するときを、及び／またはアクティブゾーン管理システム１１５から新たなアクティブゾーン１０３を要求するときを決定することもできる。
【００３５】
クライアントデバイス１０６は、ローカルデータストア２４３中にさまざまなデータを格納することができる。位置データストア２４３中に格納されるデータは、例えば、監視データ２４６、アクティブゾーンデータ１１７、インタラクション履歴２４９、フィルタリングルール２５１、位置データ２２１、クライアントサポートデータ２５４、及び／または他のデータを含むことができる。監視データ２４６は、特定のインスタンスにおいて監視されているアクティブゾーン１０３内のロケーションベースサービスゾーンのサブセット１００と関連するデータを含む。監視データ２４６は、サブセットのデータ２５３を含み、このサブセットのデータは、地理的位置と関連する１つ以上の座標、内側領域の半径、非円形領域についての周囲仕様、クライアントデバイス１０６が境界内にあるときにクライアントデバイス１０６のユーザに提示されるメッセージ（例えば、「ＸＹＺ店舗で販売する。途中で立ち寄り、１つの物品の５０％割引を受ける」）、アクティブ時間、アクティブ日付、一意のトークン識別子、クライアントデバイス１０６がブロードキャストされた信号を受信する範囲内にあるときにビーコン１１２からブロードキャストされる無線信号にアクセスするためにクライアントデバイス１０６が使用することができるビーコン識別子、及び／またはアクティブゾーン１０３内の選択されたロケーションベースサービスゾーンのサブセット１００と関連するいずれかの他のパラメータデータを含むことができる。
【００３６】
アクティブゾーンデータ１１７は、クライアントデバイス１０６のために、またアクティブゾーン管理システム１１５によって、作成されるアクティブゾーン１０３と関連するデータを含む。アクティブゾーンデータ１１７は、アクティブゾーン１０３の地理的領域を画定する地理的パラメータ、ロケーションベースサービスゾーン１００、集約インタラクションデータ２１５、及び／または理解できるいずれかの他のタイプのデータを含むことができる。ロケーションベースサービスゾーン１００は、アクティブゾーン管理システム１１５によって作成されるアクティブゾーン１０３中に含まれたロケーションベースサービスゾーン１００についてのジオフェンスパラメータ２３０及び／またはビーコンパラメータ２３３を含むことができる。
【００３７】
インタラクション履歴２４９は、ロケーションベースサービスゾーン１００に関する前のトリガ及びインタラクションと関連するデータを含む。例えば、インタラクション履歴２４９は、特定のロケーションベースサービスゾーン１００に進入する、及び／またはこのロケーションベースサービスゾーンを退出する際にユーザがサービスとのインタラクションを有したかどうか、例えば、ロケーションベースサービスゾーン１００が特定の店舗と関連したとき、に関連するデータを含むことができる。クライアントデバイス１０６と関連するユーザがその店舗で物品を購入した場合、インタラクション履歴２４９は、ロケーションベースサービスゾーン１００に関連する物品購入を示す。
【００３８】
同様に、ユーザがその店舗で物品を購入しなかった場合、インタラクション履歴２４９は、その店舗での購入の欠如を示すことができる。インタラクション履歴２４９は、監視する受信したアクティブゾーン１０３内のロケーションベースサービスゾーンのサブセット１００を決定する際に、アクティブゾーンフィルタアプリケーション１２４によって使用されることができる。いくつかの実施形態において、インタラクション履歴２４９は、以前に抜けたロケーションベースサービスゾーンに関係がある（例えば、ジオフェンスパラメータを退出する、または進入する、ブロードキャストされたビーコン信号を受信する距離内にもはやないなどの）情報を含むことができる。この情報を使用して、所与の時間にクライアントデバイスの、方向、速度、及び／または位置を推定することができる。
【００３９】
フィルタリングルール２５１は、ロケーションベースサービスゾーンのサブセット１００を選択することと関連するルールを含む。いくつかの実施形態において、フィルタリングルール２５１は、例えば、アクティブゾーン１０３内のロケーションベースサービスゾーン１００のプライオリティを決定するために、ランク付けアルゴリズムなどのアルゴリズムを含むことができる。例えば、フィルタリングルール２５１は、各ロケーションベースサービスゾーン１００と関連するさまざまな特徴に割り当てる重み付けを有することができる。割り当てられた重み付けに基づき、作成されたアクティブゾーン１０３内で識別されるロケーションベースサービスゾーン１００をランク付けすることができ、クライアントデバイス１０６によってサポートされる最大閾値内にある最高ランクのロケーションベースサービスゾーン１００をサブセットについて選択することができる。
【００４０】
１つの実施形態において、フィルタリングルール２５１は、インタラクションの確率のレベルに従い割り当てる重み付けを有することができる。例えば、第一ロケーションベースサービスゾーン１００がインタラクション履歴２４９及び／または集約インタラクションデータ２１５に従い第二ロケーションベースサービスゾーン１００経由でユーザインタラクションをもたらす、より高確率を有する場合、第一ロケーションベースサービスゾーン１００は、第二ロケーションベースサービスゾーン１００に割り当てられる重み付けより高い重み付けを割り当てられることができる。フィルタリングルール２５１は、特定のロケーションベースサービスゾーン１００を考慮するために距離閾値を決定するように適用されることができるルールをさらに含むことができる。例えば、フィルタリングルール２５１は、ロケーションベースサービスゾーン１００がサブセット中の包含のために考慮されるため、クライアントデバイス位置に関連して満たさなければならない特定の距離閾値を示すことができる。
【００４１】
位置データ２２１は、クライアントデバイス１０６の位置に特定のインスタンスにおいて対応する。例えば、位置データ２２１は、クライアントデバイス１０６の地理的座標を含むことができる。他の実施形態において、位置データ２２１は、最近トリガされた、及び／または抜けたロケーションベースサービスゾーン１００に少なくとも部分的に基づき、推定された位置を含むことができる。例えば、クライアントデバイス１０６が特定のロケーションベースサービスゾーン１００を退出した場合、位置データ２２１は、特定のロケーションベースサービスゾーン１００の地理的パラメータに従い推定されることができる。
【００４２】
デバイスサポートデータ２５４は、クライアントデバイス１０６によってサポートされるロケーションベースサービスゾーン１００の量、及び／またはこのデバイスによってサポートされる他の特徴を含む。クライアントデバイスの制限は、クライアントデバイス１０６の電力使用量、メモリ使用量、及び／またはプロセッサ使用量を最適化するために、クライアントデバイスによって課せられることができる。
【００４３】
次に図３を参照して、示されるのは、種々の実施形態に係るアクティブゾーンフィルタアプリケーション１２４の一部分の動作の一例を提供するフローチャートである。図３のフローチャートが本明細書に説明されるようなアクティブゾーンフィルタアプリケーション１２４の一部分の動作を実施するために利用され得る、多くの異なる種類の機能配置の一例を提示するにすぎないことが理解される。代わりに、図３のフローチャートは、１つ以上の実施形態による、クライアントデバイス１０６（図１）内に実装された方法の要素の例を示すように見られてもよい。
【００４４】
図３は、本開示のさまざまな実施形態に従いアクティブゾーン１０３（図１）内のロケーションベースサービスゾーンのサブセット１００（図２）を選択することに関して、アクティブゾーンフィルタアプリケーション１２４によって実行されることができる機能性の非限定的な実施例を提供する。
【００４５】
ボックス３０３から始まり、アクティブゾーンフィルタアプリケーション１２４は、アクティブゾーンデータ１１７（図１）をコンピューティングデバイス１１８（図１）から受信する。アクティブゾーンデータ１１７は、クライアントデバイス１０６のために、またアクティブゾーン管理システム１１５（図１）によって、作成されるアクティブゾーン１０３（図１）と関連するデータを含む。アクティブゾーンデータ１１７は、ジオフェンスパラメータ２３０（図２）、ビーコンパラメータ２３３（図２）、集約インタラクションデータ２１５、及び／または理解できるいずれかの他のタイプのデータを含むことができる。いくつかの実施形態において、クライアントデバイス１０６によるアクティブゾーン１０３についての要求に応答して、アクティブゾーンデータ１１７を受信する。他の実施形態において、アクティブゾーン１０３についての要求なしで、アクティブゾーンデータ１１７を受信する。例えば、コンピューティングデバイス１１８は、クライアントデバイス１０６が以前に作成されたアクティブゾーン１０３を退出したときを検出するように構成されることができる。クライアントデバイス１０６が以前に作成されたアクティブゾーン１０３を退出することの検出の際に、アクティブゾーン管理システム１１５は、新たなアクティブゾーン１０３を作成し、アクティブゾーンデータ１１７をクライアントデバイス１０６に提供する。
【００４６】
ボックス３０６において、アクティブゾーンフィルタアプリケーション１２４は、アクティブゾーンデータ１１７中に含まれるロケーションベースサービスゾーン１００の数が所定の閾値を満たす、または上回るかどうかを判定する。いくつかの実施形態において、クライアントデバイス１０６と関連するデバイス制限に従い、所定の閾値を定義する。例えば、クライアントデバイスＡは、二十（２０）個のロケーションベースサービスゾーンをサポートすることが可能であることができ、クライアントデバイスＢは、百（１００）個のロケーションベースサービスゾーン１００をサポートすることが可能であることができる。クライアントデバイスの制限は、クライアントデバイス１０６の電力使用量、メモリ使用量、及び／またはプロセッサ使用量を最適化するために、クライアントデバイス１０６によって課せられることができる。ロケーションベースサービスゾーン１００の数が所定の閾値内にある場合、アクティブゾーンフィルタアプリケーション１２４は、ボックス３０９に進む。ボックス３０９において、アクティブゾーンフィルタアプリケーション１２４は、クライアントデバイス１０６によるアクティブゾーン１０３内のロケーションベースサービスゾーン１００の監視を開始する。
【００４７】
ロケーションベースサービスゾーン１００の数が所定の閾値を上回る場合に、アクティブゾーンフィルタアプリケーション１２４は、ボックス３１２に進む。ボックス３１２において、アクティブゾーンフィルタアプリケーション１２４は、アクティブゾーン１０３内でロケーションベースサービスゾーンのサブセット１００を選択して、監視する。いくつかの実施形態において、クライアントデバイス１０６は、フィルタリングルールのセット２５１を適用し、アクティブゾーン１０３内の異なるロケーションベースサービスゾーン１００を分析し、例えば、クライアントデバイス１０６の現在の位置、クライアントデバイス１０６が最近入った、及び／または出たロケーションベースサービスゾーン１００、デバイス速度、デバイス方向、ユーザ履歴、集約ユーザ履歴、及び／または理解できるようないずれかの他の要因などの要因に基づきロケーションベースサービスゾーンのサブセット１００を選択することができる。
【００４８】
いくつかの実施形態において、アクティブゾーンフィルタアプリケーション１２４は、クライアントデバイス１０６が監視されている抜けたロケーションベースサービスゾーン１００に従い、クライアントデバイス位置１２７を決定することができる。抜けたロケーションベースサービスゾーン１００と関連する既知の地理的パラメータによって、クライアントデバイス位置１２７を推定することができる。いくつかの実施形態において、アクティブゾーンフィルタアプリケーション１２４は、推定されたクライアントデバイス位置１２７からの所定の距離に従い、ロケーションベースサービスゾーンのサブセット１００を選択することができる。例えば、クライアントデバイス位置１２７から五十（５０）ヤード（ｙｄ）内にある、いずれかのロケーションベースサービスゾーン１００を、ロケーションベースサービスゾーンのサブセット１００における包含のために選択することができる。
【００４９】
いくつかの実施形態において、アクティブゾーンフィルタアプリケーション１２４は、フィルタリングルール２５１を適用して、ロケーションベースサービスゾーンのサブセット１００を選択する。例えば、フィルタリングルール２５１は、例えば、アクティブゾーン１０３内のロケーションベースサービスゾーン１００のプライオリティを決定するために、ランク付けアルゴリズムなどのアルゴリズムを含むことができる。いくつかの実施形態において、フィルタリングルール２５１は、各ロケーションベースサービスゾーン１００と関連するさまざまな特徴に割り当てる重み付けを有することができる。割り当てられた重み付けに基づき、作成されたアクティブゾーン１０３内で識別されるロケーションベースサービスゾーン１００をランク付けすることができ、クライアントデバイス１０６によってサポートされる最大閾値内にある最高ランクのロケーションベースサービスゾーン１００をサブセットについて選択することができる。別の非限定的な実施例において、フィルタリングルール２５１は、監視されていないロケーションベースサービスゾーン１００のタイプを示すことができる。例えば、フィルタリングルール２５１は、コーヒーショップに関連する、いずれかのタイプのロケーションベースサービスゾーン１００が考慮から除外されることを示すことができる。
【００５０】
他の実施形態において、アクティブゾーンフィルタアプリケーション１２４は、集約インタラクションデータ２１５を分析し、この集約インタラクションデータ２１５に従いロケーションベースサービスゾーンのサブセット１００を選択することができる。例えば、集約インタラクションデータ２１５を使用して、ユーザが複数のユーザのインタラクションデータに基づく特定のロケーションベースサービスゾーン１００とのインタラクションを有する確率を決定することができる。
【００５１】
いくつかの実施形態において、アクティブゾーンフィルタアプリケーション１２４は、クライアントデバイス１０６の速度及び／または方向を決定することができる。この情報を使用して、クライアントデバイス１０６と関連するコースを決定することができる。このようなものとして、クライアントデバイス１０６と関連するコースに従い、ロケーションベースサービスゾーンのサブセット１００を選択することができる。
【００５２】
ロケーションベースサービスゾーンのサブセット１００を選択した後に、アクティブゾーンフィルタアプリケーション１２４は、ボックス３１５に進む。ボックス３１５において、アクティブゾーンフィルタアプリケーション１２４は、アクティブゾーン１０３からロケーションベースサービスゾーンのサブセット１００の監視を開始する。ロケーションベースサービスゾーン１００の監視を開始すると、アクティブゾーンフィルタアプリケーション１２４のこの部分は終了する。
【００５３】
ここで図４に戻り、示されるのは、種々の実施形態に係るアクティブゾーンフィルタアプリケーション１２４の一部分の動作の一例を提供するフローチャートである。図４のフローチャートが本明細書に説明されるようなアクティブゾーンフィルタアプリケーション１２４の一部分の動作を実施するために利用され得る、多くの異なる種類の機能配置の一例を提示するにすぎないことが理解される。代わりに、図４のフローチャートは、１つ以上の実施形態による、クライアントデバイス１０６（図１）内に実装された方法の要素の例を示すように見られてもよい。
【００５４】
図４は、本開示のさまざまな実施形態に従い、クライアントデバイス１０６がサポートすることが可能である最大閾値をコンピューティングデバイス１１８（図１）から受信するアクティブゾーン１０３（図１）において最初に識別されるロケーションベースサービスゾーン１００（図１）の量が上回るときに、アクティブゾーン１０３を含むロケーションベースサービスゾーン１００に優先順位を付けることに関して、アクティブゾーンフィルタアプリケーション１２４によって実行されることができる機能性の非限定的な実施例を提供する。
【００５５】
ボックス４０３によって開始し、アクティブゾーンフィルタアプリケーション１２４は、コンピューティングデバイス１１８から受信するアクティブゾーン１０３内に含まれるロケーションベースサービスゾーン１００を識別する。ボックス４０６において、アクティブゾーンフィルタアプリケーション１２４は、ロケーションベースサービスゾーン１００を分析し、１つ以上の要因に従いロケーションベースサービスゾーン１００にスコアを割り当てる。１つ以上の要因は、ロケーションベースサービスと関連するサービス（例えば、小売、配送など）のタイプ、ロケーションベースサービスゾーン１００とクライアントデバイス位置１２７との間の距離、ユーザインタラクションがユーザインタラクション履歴２４９及び／または集約インタラクションデータ２１５に部分的に基づき発生する確率、抜けたロケーションベースサービスゾーン１００、クライアントデバイス方向、クライアントデバイス速度、及び／または理解できるようないずれかの他の要因を含むことができる。
【００５６】
いくつかの実施形態において、フィルタリングルール２５１に定義される重み付けに従い、スコアを決定する。例えば、各要因は、特定の重み付けを与えられることができ、ロケーションベースサービスゾーン１００についてのスコアは、分析された各要因に割り当てられる重み付けの合計に基づく。１つの非限定的な実施例において、ロケーションベースサービスゾーンＡは、クライアントデバイス位置１２７の所定の距離内にあることに対する「１」の重み付けを受け、ロケーションベースサービスゾーンＢは、クライアントデバイス位置１２７の所定の距離の外側にあることに対する「０」の重み付けを受ける。さらに、ロケーションベースサービスゾーンＢとのユーザインタラクションの確率がロケーションベースサービスゾーンＡとのユーザインタラクションの確率より高いと仮定し、またユーザインタラクションの確率についてロケーションベースサービスゾーンＢに割り当てられる重み付けが「５」であり、ユーザインタラクションの確率についてロケーションベースサービスゾーンＡに割り当てられる重み付けが「２」であると仮定する。この実施例において、ロケーションベースサービスゾーンＡに割り当てられるスコアは、「３」であることができ、ロケーションベースサービスゾーンＢについてのスコアは、「５」であることができる。
【００５７】
ボックス４０９において、アクティブゾーンフィルタアプリケーション１２４は、スコアが分析されていない、及び／または与えられていない、アクティブゾーン１０３において識別される他のロケーションベースサービスゾーン１００があるかどうかを判定する。他のロケーションベースサービスゾーン１００がある場合、アクティブゾーンフィルタアプリケーション１２４は、ボックス４０３に戻る。場合により、アクティブゾーンフィルタアプリケーション１２４は、ボックス４１２に進む。ボックス４１２において、アクティブゾーンフィルタアプリケーション１２４は、それぞれの各スコアに従い、ロケーションベースサービスゾーン１００をランク付けする。ボックス４１５において、クライアントデバイス１０６によって監視するためのロケーションベースサービスゾーンのサブセット１００中に含まれる、ロケーションベースサービスゾーン１００のサポートされた閾値内で最高ランクのロケーションベースサービスゾーン１００を選択する。監視するためにロケーションベースサービスゾーンのサブセット１００を選択すると、アクティブゾーンフィルタアプリケーション１２４のこの部分は終了する。
【００５８】
次に図５を参照して、示されるのは、種々の実施形態に係るアクティブゾーンフィルタアプリケーション１２４の一部分の動作の一例を提供するフローチャートである。図５のフローチャートが本明細書に説明されるようなアクティブゾーンフィルタアプリケーション１２４の一部分の動作を実施するために利用され得る、多くの異なる種類の機能配置の一例を提示するにすぎないことが理解される。代わりに、図５のフローチャートは、１つ以上の実施形態による、クライアントデバイス１０６（図１）内に実装された方法の要素の例を示すように見られてもよい。
【００５９】
図５は、本開示のさまざまな実施形態に従い、特定のクライアントデバイス１０６についてのアクティブゾーン１０３（図２）及び／またはロケーションベースサービスゾーン１００を修正することに関して、アクティブゾーンフィルタアプリケーション１２４によって実行されることができる機能性の非限定的な実施例を提供する。
【００６０】
ボックス５０３によって開始し、アクティブゾーンフィルタアプリケーション１２４は、クライアントデバイス１０６が監視されたロケーションベースサービスゾーン１００を出た（例えば、抜けた）かどうかを判定する。クライアントデバイス１０６が監視されたロケーションベースサービスゾーン１００を出た場合に、アクティブゾーンフィルタアプリケーション１２４は、ボックス５０６に進む。場合により、アクティブゾーンフィルタアプリケーション１２４は、ロケーションベースサービスゾーン１００を監視し、退出を検出し続ける。
【００６１】
ボックス５０６において、アクティブゾーンフィルタアプリケーション１２４は、クライアントデバイス位置１２７を推定する。いくつかの実施形態において、アクティブゾーンフィルタアプリケーション１２４は、抜けたロケーションベースサービスゾーン１００の地理的パラメータに基づきクライアントデバイス位置１２７を推定する。例えば、ボックス５０３において、ロケーションベースサービスゾーン１００を抜けていると検出するときに、アクティブゾーンフィルタアプリケーション１２４は、抜けたロケーションベースサービスゾーン１００を画定する地理的パラメータを決定し、地理的パラメータをクライアントデバイス位置１２７の推定値として使用することができる。同様に、クライアントデバイス１０６が新たなロケーションベースサービスゾーン１００をトリガする場合、アクティブゾーンフィルタアプリケーション１２４は、新たなロケーションベースサービスゾーン１００の地理的パラメータに少なくとも部分的に基づきクライアントデバイス位置１２７を推定することができる。いくつかの実施形態では、クライアントデバイス１０６は、理解できるように、その位置の地理的座標にアクセスすることができる。
【００６２】
ボックス５０９において、アクティブゾーンフィルタアプリケーション１２４は、クライアントデバイス１０６がアクティブゾーン１０３内にまだあるかどうかを判定する。例えば、アクティブゾーンデータ１１７は、アクティブゾーン１０３の地理的境界を画定する地理的パラメータを含む。クライアントデバイス位置１２７がアクティブゾーン１０３の所定の地理的境界の外側にある場合、アクティブゾーンフィルタアプリケーション１２４は、ボックス５１２に進む。場合により、アクティブゾーンフィルタアプリケーション１２４は、ボックス５１８に進む。
【００６３】
ボックス５１２において、アクティブゾーンフィルタアプリケーション１２４は、コンピューティング環境２０３中のアクティブゾーン管理システム１１５から新たなアクティブゾーン１０３を要求する。ボックス５１５において、アクティブゾーンフィルタアプリケーション１２４は、ネットワーク１２１経由で送信するアクティブゾーンデータ１１７を介して、新たなアクティブゾーン１０３を受信する。ボックス５１８において、アクティブゾーンフィルタアプリケーション１２４は、新たなロケーションベースサービスゾーンのサブセット１００を選択する。新たなロケーションベースサービスゾーンのサブセット１００は、例えば、クライアントデバイス１０６の現在の位置、最近クライアントデバイス１０６が進入した及び／または退出したロケーションベースサービスゾーン１００、デバイス速度、デバイス方向、ユーザ履歴、集約ユーザ履歴、及び／または理解できるようないずれかの他の要因などの要因に少なくとも部分的に基づくことができる。ボックス５２１において、アクティブゾーンフィルタアプリケーション１２４は、クライアントデバイス１０６によって新規に選択されたサブセット中のロケーションベースサービスゾーン１００の監視を開始する。クライアントデバイス１０６が新たなロケーションベースサービスゾーンのサブセット１００を監視し始めると、アクティブゾーンフィルタアプリケーション１２４のこの部分は終了する。
【００６４】
図６を参照して、示されるのは、本開示の実施形態による、コンピューティング環境２０３の概略ブロック図である。コンピューティング環境２０３は、１つ以上のコンピューティングデバイス１１８を含む。各コンピューティングデバイス１１８は、例えば、プロセッサ６０３及びメモリ６０６を有する少なくとも１つのプロセッサ回路を含み、それら両方がローカルインタフェース６０９に結合される。このために、各コンピューティングデバイス１１８は、例えば、少なくとも１つのサーバコンピュータまたは同様のデバイスを備え得る。ローカルインタフェース６０９は、例えば、付随するアドレス／制御バスを伴うデータバスまたは理解できるような他のバス構造を含み得る。
【００６５】
メモリ６０６に記憶されるのは、データと、プロセッサ６０３によって実行可能ないくつかのコンポーネントとの両方である。具体的には、メモリ６０６に格納され、かつプロセッサ６０３により実行可能であるのは、アクティブゾーン管理システム１１５、及び潜在的な他のアプリケーションである。また、メモリ６０６に記憶されるのは、データストア２０６及び他のデータであり得る。加えて、オペレーティングシステムは、メモリ６０６に格納され、プロセッサ６０３によって実行可能であり得る。
【００６６】
図７を参照して、示されるのは、本開示の実施形態による、クライアントデバイス１０６の概略ブロック図である。クライアントデバイス１０６は、例えば、プロセッサ７０３、メモリ７０６、及びディスプレイ２３６を含み、これらの全てがローカルインタフェース７０９に結合される、少なくとも１つのプロセッサ回路を含む。ローカルインタフェース７０９は、例えば、付随するアドレス／制御バスを有するデータバス、または理解できるような他のバス構造を含み得る。
【００６７】
メモリ７０６に格納されるのは、データと、プロセッサ７０３により実行可能ないくつかのコンポーネントとの両方である。具体的には、メモリ７０６に格納され、かつプロセッサ７０３により実行可能であるのは、アクティブゾーンフィルタアプリケーション１２４、クライアントアプリケーション２３９、及び潜在的な他のアプリケーションである。また、メモリ７０６に格納されるのは、ローカルデータストア２４３及び他のデータであってもよい。さらに、オペレーティングシステムは、メモリ７０６に格納され、かつプロセッサ７０３により実行可能であり得る。
【００６８】
次いで図６及び７の両方を参照して、認識できるように、メモリ６０６、７０６に格納され、プロセッサ６０３、７０３によって実行可能である他のアプリケーションが存在し得ることを理解する。本明細書に説明される任意のコンポーネントがソフトウェアの形式で実装される場合、例えば、Ｃ、Ｃ＋＋、Ｃ＃、Ｏｂｊｅｃｔｉｖｅ Ｃ、Ｊａｖａ（登録商標）、ＪａｖａＳｃｒｉｐｔ（登録商標）、Ｐｅｒｌ、ＰＨＰ、Ｖｉｓｕａｌ   Ｂａｓｉｃ（登録商標）、Ｐｙｔｈｏｎ（登録商標）、Ｒｕｂｙ、Ｆｌａｓｈ（登録商標）、または他のプログラミング言語等のいくつかのプログラミング言語のうちの任意の１つを使用し得る。
【００６９】
いくつかのソフトウェアコンポーネントがメモリ６０６、７０６に格納され、プロセッサ６０３、７０３によって実行可能である。この点において、用語「実行可能」は、プロセッサ６０３、７０３によって最終的に起動することができる形式にあるプログラムファイルを意味する。実行可能プログラムの例は、例えば、メモリ６０６、７０６のランダムアクセス部にロードし、プロセッサ６０３、７０３によって起動され得る形式の機械コードに変換することができるコンパイルされたプログラム、メモリ６０６、７０６のランダムアクセス部にロードされ、プロセッサ６０３、７０３によって実行されることが可能であるオブジェクトコード等の適切な形式で表され得るソースコード、またはプロセッサ６０３、７０３によって実行されるメモリ６０６、７０６のランダムアクセス部に命令を生成するために別の実行可能なプログラムによって解釈され得るソースコード等であり得る。実行可能プログラムは、例えば、ランダムアクセスメモリ（ＲＡＭ）、読取専用メモリ（ＲＯＭ）、ハードドライブ、ソリッドステートドライブ、ＵＳＢフラッシュドライブ、メモリカード、コンパクトディスク（ＣＤ）またはデジタル多用途ディスク（ＤＶＤ）等の光学ディスク、フロッピーディスク、磁気テープ、または他のメモリ構成要素を含む、メモリ６０６、７０６の任意の部分または任意の構成要素に記憶され得る。
【００７０】
メモリ６０６、７０６は、揮発性メモリと不揮発性メモリの両方と、データストレージ構成要素とを含むように本明細書に定義される。揮発性構成要素は、電源喪失時にデータ値を保持しないものである。不揮発性構成要素は、電源喪失時にデータを保持するものである。したがって、メモリ６０６、７０６は、例えば、ランダムアクセスメモリ（ＲＡＭ）、読取専用メモリ（ＲＯＭ）、ハードディスクドライブ、ソリッドステートドライブ、ＵＳＢフラッシュドライブ、メモリカードリーダを介してアクセスされるメモリカード、関連付けられるフロッピーディスクドライブを介してアクセスされるフロッピーディスク、光ディスクドライブを介してアクセスされる光ディスク、適切なテープドライブを介してアクセスされる磁気テープ、及び／または他のメモリ構成要素、あるいはこれらのメモリ構成要素のうちの任意の２つ以上の組み合わせを含み得る。加えて、ＲＡＭは、例えば、スタティックランダムアクセスメモリ（ＳＲＡＭ）、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）、または磁気ランダムアクセスメモリ（ＭＲＡＭ）、及び他の係るデバイスを含み得る。ＲＯＭは、例えば、プログラマブル読み取り専用メモリ（ＰＲＯＭ）、消去可能プログラマブル読み取り専用メモリ（ＥＰＲＯＭ）、電気的消去可能プログラマブル読み取り専用メモリ（ＥＥＰＲＯＭ）、または他の同様のメモリデバイスを含み得る。
【００７１】
また、プロセッサ６０３、７０３は、複数のプロセッサ６０３、７０３及び／または複数のプロセッサコアを表し得、メモリ６０６、７０６は、各々、並列処理回路で動作する複数のメモリ６０６、７０６を表し得る。係る場合、ローカルインタフェース６０９、７０９は、複数のプロセッサ６０３、７０３のうちの任意の２つの間、任意のプロセッサ６０３、７０３とメモリ６０６、７０６のうちのいずれかとの間、またはメモリ６０６、７０６のうちの任意の２つの間等の通信を容易にする適切なネットワークであり得る。ローカルインタフェース６０９、７０９は、例えば、ロードバランシングを行うことを含む、この通信を調整するように設計された追加システムを備え得る。プロセッサ６０３、７０３は、電気式、または、いくつかの他の利用可能な構成であり得る。
【００７２】
アクティブゾーン管理システム１１５、アクティブゾーンフィルタアプリケーション１２４、及び本明細書に記載される他のさまざまシステムは、上記で考察されるように、汎用ハードウェアにより実行されるソフトウェアまたはコードで具体化され得るが、代替として、同一のものが専用ハードウェア、またはソフトウェア／汎用ハードウェアと専用ハードウェアとの組み合わせで具体化されてもよい。専用ハードウェアで具体化される場合、いくつかの技術のうちの任意の１つまたはそれらの組み合わせを使用する回路またはステートマシンとして実装されることができる。これらの技術は、１つ以上のデータ信号の適用時に様々な論理機能を実行する論理ゲートを有する個別論理回路、適切な論理ゲートを有する特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、または他の構成要素等を含んでもよいが、これらに限定されない。この技術は通常、当業者にはよく理解されており、したがって、本明細書では詳述しない。
【００７３】
図３〜５のフローチャートは、アクティブゾーンフィルタアプリケーション１２４の部分の実装の機能性及び動作を示す。ソフトウェアで具体化される場合、各ブロックは、指定された論理関数（複数可）を実装するプログラム命令を含むモジュール、セグメント、またはコードの一部を表し得る。プログラム命令は、プログラミング言語で作成される人間が読めるステートメントを含むソースコード、またはコンピュータシステムもしく他のシステム内のプロセッサ７０３等の適切な実行システムにより認識可能な数値命令を含むマシンコードの形で具体化されてよい。マシンコードはソースコード等から変換され得る。ハードウェアで具体化される場合、各ブロックは、指定された論理関数（複数可）を実装するために、回路またはいくつかの相互接続回路を表し得る。
【００７４】
図３〜５のフローチャートは、具体的な実行順序を示すが、実行順序が図示する順序と異なってもよいことが理解される。例えば、２つ以上のブロックの実行順序は、示される順序に対してスクランブルがかけられ得る。また、図３〜５に連続して示される２つ以上のブロックは、同時に、または一部同時に実行し得る。さらに、いくつかの実施形態では、図３〜５に示される１つ以上のブロックは、省略または省かれる場合もある。加えて、有用性の向上、説明、性能測定、またはトラブルシューティングの補助の提供等の目的で、任意の数のカウンタ、状態変数、警告セマフォ、またはメッセージが、本明細書に説明する論理フローに追加される可能性がある。係る全ての変形例は、本開示の範囲内にあることを理解されたい。
【００７５】
また、ソフトウェアまたはコードを含む、アクティブゾーン管理システム１１５及びアクティブゾーンフィルタアプリケーション１２４を含む、本明細書に記載されるいずれかのロジックまたはアプリケーションは、例えば、コンピュータシステムまたは他のシステム内のプロセッサ６０３、７０３などの命令実行システムによって使用される、またはそれに関連して使用される、いずれかの非一時的コンピュータ可読媒体で具現化されることが可能である。この意味では、論理は、例えば、コンピュータ可読媒体からフェッチされ、及び命令実行システムによって実行することができる命令及び宣言を含むステートメントを含み得る。本開示の文脈において、「コンピュータ可読媒体」は、命令実行システムが使用する、またはそれに関連して使用する、本明細書に記載の論理またはアプリケーションを包含、格納、または保持することができる任意の媒体であることができる。
【００７６】
コンピュータ可読媒体は、例えば、磁気媒体、光媒体、または半導体媒体等の多くの物理媒体のうちの任意の１つを含み得る。好適なコンピュータ可読媒体のより具体的な例は、限定ではないが、磁気テープ、磁気フロッピーディスク、磁気ハードドライブ、メモリカード、ソリッドステートドライブ、ＵＳＢフラッシュドライブ、または光ディスクを含むであろう。また、コンピュータ可読媒体は、例えば、スタティックランダムアクセスメモリ（ＳＲＡＭ）及びダイナミックランダムアクセスメモリ（ＤＲＡＭ）、または磁気ランダムアクセスメモリ（ＭＲＡＭ）を含むランダムアクセスメモリ（ＲＡＭ）であり得る。加えて、コンピュータ可読媒体は、読取専用メモリ（ＲＯＭ）、プログラマブル読取専用メモリ（ＰＲＯＭ）、消去可能プログラマブル読取専用メモリ（ＥＰＲＯＭ）、電気的消去可能プログラマブル読取専用メモリ（ＥＥＰＲＯＭ）、または他の種類のメモリデバイスであり得る。
【００７７】
また、アクティブゾーン管理システム１１５及びアクティブゾーンフィルタアプリケーション１２４を含む、本明細書に記載の任意の論理またはアプリケーションは、様々な方法で実装され、構築されてもよい。例えば、説明される１つ以上のアプリケーションは、単一のアプリケーションのモジュールまたは構成要素として実装され得る。さらに、本明細書に説明される１つ以上のアプリケーションは、共有されたコンピューティングデバイスもしくは別々のコンピューティングデバイス、またはそれらの組み合わせで実行され得る。例えば、本明細書に説明される複数のアプリケーションは、同じコンピューティング環境２０３中の、または同じクライアントデバイス１０６中の、同じ単一のコンピューティングデバイス１１８で、または複数のコンピューティングデバイス１１８で実行し得る。
【００７８】
「Ｘ、Ｙ、またはＺのうちの少なくとも１つ」という表現等の選言的言語は、別様に特定的に述べられていない限り、項目、用語等がＸ、Ｙ、もしくはＺ、またはそれらのいずれかの組み合わせ（例えば、Ｘ、Ｙ、及び／またはＺ）のいずれかあり得ることを提示するために一般的に使用されるものとして文脈の中で理解される。したがって、係る選言的言語は、概して、ある実施形態がＸの少なくとも１つ、Ｙの少なくとも１つ、またはＺの少なくとも１つがそれぞれ存在することを必要とすることを暗示することを意図しておらず、そのように暗示することを意味するべきではない。
【００７９】
本開示の実施形態の例は、以下の条項を鑑みて説明できる。
【００８０】
条項１．第一コンピューティングデバイスにおいて実行可能なプログラムを用いる非一時的なコンピュータ可読媒体であって、
実行されると、前記プログラムは前記第一コンピューティングデバイスに少なくとも、
アクティブゾーンデータを第二コンピューティングデバイスから取得させ、前記アクティブゾーンデータが地理的領域、及び前記地理的領域を画定する地理的パラメータ内の複数のロケーションベースサービスゾーンの識別を符号化し、
クライアントがサポートした閾値を前記複数のロケーションベースサービスゾーンの数が満たす、または上回るとことを判定させ、
前記第一コンピューティングデバイスによって監視される少なくとも１つのロケーションベースサービスゾーンに関連して前記第一コンピューティングデバイスの退出または進入のうちの少なくとも１つに少なくとも部分的に基づき前記第一コンピューティングデバイスの位置を決定させ、
前記第一コンピューティングデバイスの前記位置、前記第一コンピューティングデバイスの速度、または前記第一コンピューティングデバイスの移動の方向のうちの少なくとも１つに少なくとも部分的に基づき前記複数のロケーションベースサービスゾーンのサブセットを選択させ、かつ、
前記複数のロケーションベースサービスゾーンの前記サブセットの監視を開始させる、
非一時的なコンピュータ可読媒体。
【００８１】
条項２．実行されると、前記プログラムは、前記第一コンピューティングデバイスに少なくとも、
前記位置に少なくとも部分的に基づき前記複数のロケーションベースサービスゾーンのうちの個々のものと、前記複数のロケーションベースサービスゾーンのうちの前記個々のものの地理的パラメータとにスコアを割り当てさせ、かつ、
前記スコアに従い前記複数のロケーションベースサービスゾーンの前記個々のものをランク付けさせ、
前記クライアントがサポートした閾値内でロケーションベースサービスゾーンの最高ランクの数に従い、前記複数のロケーションベースサービスゾーンの前記サブセットが選択される、
条項１に記載の非一時的なコンピュータ可読媒体。
【００８２】
条項３．前記アクティブゾーンデータは、前記ロケーションベースサービスゾーンのうちの少なくとも１つに関して複数のユーザによるユーザインタラクションの集約ユーザ履歴をさらに含み、前記複数のロケーションベースサービスゾーンの前記サブセットが前記集約ユーザ履歴に少なくとも部分的に基づきさらに選択される、条項１または２に記載の非一時的なコンピュータ可読媒体。
【００８３】
条項４．第一コンピューティングデバイス、及び
前記第一コンピューティングデバイスにおいて実行される少なくとも１つのアプリケーション、
を備え、
実行されると、前記少なくとも１つのアプリケーションは前記第一コンピューティングデバイスに少なくとも、
地理的領域内の複数のロケーションベースサービスゾーン、及び前記地理的領域を画定する地理的パラメータを第二コンピューティングデバイスから受信させ、
ロケーションベースサービスゾーン数が所定の閾値を満たす、または上回ると判定させ、
前記第一コンピューティングデバイスの位置に少なくとも部分的に基づき前記複数のロケーションベースサービスゾーンのサブセットを選択させ、かつ、
前記複数のロケーションベースサービスゾーンの前記サブセットの監視を開始させる、
システム。
【００８４】
条項５．前記複数のロケーションベースサービスゾーンの前記サブセットは、前に監視されたロケーションベースサービスゾーン、前記第一コンピューティングデバイスの速度、前記第一コンピューティングデバイスの移動方向、ユーザインタラクション履歴、または集約ユーザインタラクション履歴のうちの少なくとも１つを含む複数の要因に少なくとも部分的にさらに基づく、条項４に記載のシステム。
【００８５】
条項６．実行されると、前記少なくとも１つのアプリケーションは、前記第一コンピューティングデバイスに少なくとも、前記複数の要因に少なくとも部分的に基づき前記複数のロケーションベースサービスゾーンの個々のロケーションベースサービスゾーンにスコアを割り当てさせ、異なる重み付けが前記複数の要因の個々の要因に適用される、条項５に記載のシステム。
【００８６】
条項７．実行されると、前記少なくとも１つのアプリケーションは、前記第一コンピューティングデバイスに少なくとも、前記スコアに従い前記個々のロケーションベースサービスゾーンをランク付けさせ、前記複数のロケーションベースサービスゾーンの前記サブセットが前記所定の閾値内のロケーションベースサービスゾーンの最高ランク数に従って選択される、条項６に記載のシステム。
【００８７】
条項８．実行されると、前記少なくとも１つのアプリケーションは、前記第一コンピューティングデバイスに少なくとも、
前記第一コンピューティングデバイスが前記地理的領域の外側に移動したと判定させ、
前記第一コンピューティングデバイスの更新された位置を推定させ、かつ、
前記更新された位置に少なくとも部分的に基づき新たな地理的領域内の新たな複数のロケーションベースサービスゾーンについての要求を前記第二コンピューティングデバイスに送信させる、
条項４から７に記載のシステム。
【００８８】
条項９．前記複数のロケーションベースサービスゾーンの第一ロケーションベースサービスゾーンは、ジオフェンスを含み、前記複数のロケーションベースサービスゾーンの第二ロケーションベースサービスゾーンは、ビーコンを含む、条項４から８に記載のシステム。
【００８９】
条項１０．実行されると、前記少なくとも１つのアプリケーションは、前記第一コンピューティングデバイスに少なくとも、前記第一コンピューティングデバイスが位置を変更したと判定することに応答して前記複数のロケーションベースサービスゾーンの前記サブセットを少なくとも修正することをさらに引き起こす、条項４から９に記載のシステム。
【００９０】
条項１１．実行されると、前記少なくとも１つのアプリケーションは、前記第一コンピューティングデバイスに少なくとも、前記複数のロケーションベースサービスゾーン内の前記ロケーションベースサービスゾーン数を決定させる、条項４から１０に記載のシステム。
【００９１】
条項１２．実行されると、前記少なくとも１つのアプリケーションは、前記第一コンピューティングデバイスに少なくとも、
特定のロケーションベースサービスゾーンとのインタラクションを検出させ、
前記特定のロケーションベースサービスゾーンとの前記インタラクションに応答してユーザインタラクション履歴を変更させる、
条項４から１１に記載のシステム。
【００９２】
条項１３．第一コンピューティングデバイスを介して、アクティブゾーンデータを第二コンピューティングデバイスから受信することであって、前記アクティブゾーンデータが複数のロケーションベースサービスゾーンを地理的パラメータによって画定されるアクティブゾーン内に含む、前記第二コンピューティングデバイスから前記受信すること、
前記複数のロケーションベースサービスゾーンの数が所定の閾値を上回ることに応答して、前記第一コンピューティングデバイスを介して、ロケーションベースサービスゾーンのサブセットを前記複数のロケーションベースサービスゾーンから選択すること、及び
前記第一コンピューティングデバイスを介して、前記ロケーションベースサービスゾーンの前記サブセットを監視すること、
を備える、方法。
【００９３】
条項１４．前記第一コンピューティングデバイスを介して、以前に監視されたロケーションベースサービスゾーンからの退出に少なくとも部分的に基づき前記第一コンピューティングデバイスのデバイス位置を推定することをさらに備える、条項１３に記載の方法。
【００９４】
条項１５．前記ロケーションベースサービスゾーンの前記サブセットは、前記デバイス位置に少なくとも部分的に基づき選択される、条項１４に記載の方法。
【００９５】
条項１６．前記第一コンピューティングデバイスを介して、前記アクティブゾーンデータについての要求を前記第二コンピューティングデバイスに送信することをさらに備え、前記要求が前記デバイス位置を含む、条項１４または１５に記載の方法。
【００９６】
条項１７．前記第一コンピューティングデバイスを介して、特定のロケーションベースサービスゾーンからの退出を前記ロケーションベースサービスゾーンの前記サブセットから検出することをさらに備える、条項１３から１６に記載の方法。
【００９７】
条項１８．前記第一コンピューティングデバイスを介して、前記退出に応答して前記第一コンピューティングデバイスの更新されたデバイス位置を推定することをさらに備える、条項１７に記載の方法。
【００９８】
条項１９．前記第一コンピューティングデバイスを介して、前記更新されたデバイス位置に少なくとも部分的に基づき前記複数のロケーションベースサービスゾーンから、更新されたロケーションベースサービスゾーンのサブセットを選択することをさらに備える、条項１８に記載の方法。
【００９９】
条項２０．前記第一コンピューティングデバイスを介して、前記第一コンピューティングデバイスが前記更新されたデバイス位置に少なくとも部分的に基づき前記アクティブゾーンを退出したと判定すること、
前記第一コンピューティングデバイスを介して、更新されたアクティブゾーンについての要求を前記第二コンピューティングデバイスから送信することであって、前記要求が前記新たなデバイス位置を含む、前記第二コンピューティングデバイスから前記送信すること、及び
前記第一コンピューティングデバイスを介して、更新された地理的パラメータによって画定される前記更新されたアクティブゾーン内に更新された複数のロケーションベースサービスゾーンを含む更新されたアクティブゾーンデータを受信すること、
をさらに備える、条項１８または１９に記載の方法。
【０１００】
本開示の上述の実施形態は、本開示の原理を明確に理解するために記述される単に実施態様の可能な例にすぎないことを強調すべきである。本開示の主旨及び原理から実質的に逸脱することなく、上述の実施形態（複数可）に多くの変形及び修正が行われ得る。係る変更及び変形の全ては、本開示の範囲内で本明細書に含まれ、添付の特許請求の範囲により保護されることが意図される。
【図１】
2020530220.tif 000003
【図２】
2020530220.tif 000004
【図３】
2020530220.tif 000005
【図４】
2020530220.tif 000006
【図５】
2020530220.tif 000007
【図６】
2020530220.tif 000008
【図７】
2020530220.tif 000009
【国際調査報告】
2020530220.tif 000010
2020530220.tif 000011