(58)【調査した分野】(Int.Cl.,DB名)
前記停止条件が発生するまで、前記更新処置群に基づく前記更新マッチング対照群、および前記更新マッチング対照群に基づく前記追加の更新処置群の各々を反復的に作成するステップが、
前記更新処置群に最大指定数の地理的地域が含まれるまで、前記更新マッチング対照群および前記更新処置群の各々を反復的に作成するステップを含む、
請求項1に記載の方法。
前記停止条件が発生するまで、前記更新処置群に基づく前記更新マッチング対照群、および前記更新マッチング対照群に基づく前記追加の更新処置群の各々を反復的に作成するステップが、
既存の処置群への別の地理的地域の追加が前記既存の処置群によって提供される前記目的関数の前記値と比較して前記目的関数の前記値を改善できなくなるまで、前記更新マッチング対照群および前記更新処置群の各々を反復的に作成するステップを含む、
請求項1に記載の方法。
1つまたは複数のコンピュータと、前記1つまたは複数のコンピュータによって実行されると、前記1つまたは複数のコンピュータに動作を行わせるように動作可能である命令を記憶した1つまたは複数の記憶デバイスとを備えたシステムであって、前記動作が、
1つまたは複数の実験のために、1つまたは複数の地理的地域を含む初期処置群を作成することと、
前記初期処置群に含まれない1つまたは複数の地理的地域を含む前記初期処置群に対するマッチング対照群を作成することと、
前記初期処置群によって提供される目的関数の値と比較して前記目的関数にされた値の上昇を提供する、前記初期処置群からの前記地理的地域および、複数の異なる適格な地理的地域の中からの、追加の地理的地域を含む更新処置群を作成することと、
停止条件が発生するまで、i)前記更新処置群に基づく更新マッチング対照群、およびii)前記更新マッチング対照群に基づく追加の更新処置群の各々を反復的に作成することであって、各追加の更新処置群が、直前の処置群より追加の地理的地域を含み、前記停止条件は、前記更新処置群のサイズが最大許容値に達することであり、前記更新処置群のサイズが、前記更新処置群に含まれる地理的地域の数である、作成することと、
所与の実験のための処置群のサイズを指定する入力を受信することと、
前記所与の実験のための前記処置群のサイズを指定する前記入力を受信したことに応じて、i)前記処置群のサイズと一致する数の地理的地域を含む前記更新処置群、およびii)前記更新処置群に対して作成される前記更新マッチング対照群を使用して前記実験を行うことと
を含む、システム。
前記停止条件が発生するまで、前記更新処置群に基づく前記更新マッチング対照群、および前記更新マッチング対照群に基づく前記追加の更新処置群の各々を反復的に作成することが、
前記更新処置群に最大指定数の地理的地域が含まれるまで、前記更新マッチング対照群および前記更新処置群の各々を反復的に作成することを含む、
請求項8に記載のシステム。
前記停止条件が発生するまで、前記更新処置群に基づく前記更新マッチング対照群、および前記更新マッチング対照群に基づく前記追加の更新処置群の各々を反復的に作成することが、
既存の処置群への別の地理的地域の追加が前記既存の処置群によって提供される前記目的関数の前記値と比較して前記目的関数の前記値を改善できなくなるまで、前記更新マッチング対照群および前記更新処置群の各々を反復的に作成することを含む、
請求項8に記載のシステム。
1つまたは複数のコンピュータによって実行可能な命令を含むソフトウェアを記憶したコンピュータ可読記憶媒体であって、前記命令が、前記1つまたは複数のコンピュータに、
1つまたは複数の実験のために、1つまたは複数の地理的地域を含む初期処置群を作成することと、
前記初期処置群に含まれない1つまたは複数の地理的地域を含む前記初期処置群に対するマッチング対照群を作成することと、
前記初期処置群によって提供される目的関数の値と比較して前記目的関数にされた値の上昇を提供する、前記初期処置群からの前記地理的地域および、複数の異なる適格な地理的地域の中からの、追加の地理的地域を含む更新処置群を作成することと、
停止条件が発生するまで、i)前記更新処置群に基づく更新マッチング対照群、およびii)前記更新マッチング対照群に基づく追加の更新処置群の各々を反復的に作成することであって、各追加の更新処置群が、直前の処置群より追加の地理的地域を含み、前記停止条件は、前記更新処置群のサイズが最大許容値に達することであり、前記更新処置群のサイズが、前記更新処置群に含まれる地理的地域の数である、作成することと、
所与の実験のための処置群のサイズを指定する入力を受信することと、
前記所与の実験のための前記処置群のサイズを指定する前記入力を受信したことに応じて、i)前記処置群のサイズと一致する数の地理的地域を含む前記更新処置群、およびii)前記更新処置群に対して作成される前記更新マッチング対照群を使用して前記実験を行うことと
を含む動作を行わせる、コンピュータ可読記憶媒体。
前記停止条件が発生するまで、前記更新処置群に基づく前記更新マッチング対照群、および前記更新マッチング対照群に基づく前記追加の更新処置群の各々を反復的に作成することが、
前記更新処置群に最大指定数の地理的地域が含まれるまで、前記更新マッチング対照群および前記更新処置群の各々を反復的に作成することを含む、
請求項15に記載のコンピュータ可読記憶媒体。
前記停止条件が発生するまで、前記更新処置群に基づく前記更新マッチング対照群、および前記更新マッチング対照群に基づく前記追加の更新処置群の各々を反復的に作成することが、
既存の処置群への別の地理的地域の追加が前記既存の処置群によって提供される前記目的関数の前記値と比較して前記目的関数の前記値を改善できなくなるまで、前記更新マッチング対照群および前記更新処置群の各々を反復的に作成することを含む、
請求項15に記載のコンピュータ可読記憶媒体。
【発明を実施するための形態】
【0009】
歴史的に、地理的実験は、ユーザ人口を2つの群(例えば、対照および処置群)へランダムに分割することによって行われてきた。しかしながら、地理的実験を設計するときにランダム化に依存することが可能でないことがある。例えば、ランダム化は、地理的地域の一部が他の地理的地域と著しく異なる場合に、または実験で利用可能な地理的地域が僅かしかない場合に均衡実験群を作成しないことがある。更に、ランダム化は、或る実験要件-所与の予算内でより小規模な地理的実験を行う、または特定の実験群に特定の地理的地域を含める必要など、を考えると実現可能でないことがある。更には、地理的地域間を移動できるユーザの能力が地理的実験の精度を低下させ得る。このように、そのようなランダム化実験の実施例は実装するのが困難であり得る。
【0010】
本文書は、実験で利用される配置の選択を通じて実験結果の精度を改善するための方法、システムおよびコンピュータ可読媒体について記載する。記載される選択工程は、例えば、選択されている処置地理的地域を考慮して最良の精度(または少なくとも指定量の精度)を提供する地理的地域の対照群を特定することによってランダム化地理的実験の不足を克服する。具体的には、関心点(物理店舗など)が地理的地域内に位置できる。一部の場合には、地理的地域は、関心点への訪問者の大半を含む最小の物理領域であることができる。これらの地理的地域はデジタルコンテンツ(例えば、広告または他の情報)の露出のために使用できる。例えば、第1の地理的地域が対照地理的地域(例えば、地理的地域内でデジタルコンテンツへの露出なし)として使用できる一方、第2の地理的地域は処置地理的地域(例えば、デジタルコンテンツへの露出)として使用できる。処置地理的地域および対照地理的地域の各々に含まれる特定の地理的地域は、例えば、処置および対照地理的地域を使用して行われる実験の結果が最高の精度(または少なくとも指定量の精度)を提供するように選択でき、それらは最適地理的地域と称することができる。同工程は、地理的地域の各可能な組合せを評価することを含む、所望の関心メトリックを最適化することによって実験のための最適地理的地域を選択する。
【0011】
一部の場合には、選択工程は、地理的地域の集合を含む初期処置群が作成されることで始まり、そして初期処置群に含まれない地理的地域を含む、初期処置群に対するマッチング対照群が作成される。言い換えれば、初期処置群は地理的地域の第1の集合(処置-例えば、デジタルコンテンツの露出の適用のため)を含むことができ、そして特定の初期処置群に対応する初期対照群は、第1の集合によって含まれない地理的地域の第2の集合(対照-例えば、デジタルコンテンツの露出なしのため)を含むことができる。初期処置群からの地理的地域および追加の地理的地域を含む更新処置群が次いで作成できる。言い換えれば、更新処置群は初期処置群に比べて1つの地理的地域(または場合により2つ以上の地理的地域)だけ増大される。更には、初期処置群によって提供されるモデル品質メトリックのレベルと比較してモデル品質メトリックに指定レベルの上昇を提供する追加の地理的地域が選択される。すなわち、更新処置群を形成する、初期処置群への地理的地域の追加は、初期処置群と比較してモデル品質メトリックのレベルを上昇させる。更新処置群に基づいて更新マッチング対照群が次いで作成でき、そして処置群およびマッチング対照群を作成する工程は、停止条件が発生するまで反復的に繰り返すことができる。次いで、所与の実験のための処置群サイズを指定する入力を受信すること、ならびにi)受信した処置群サイズと一致する数の地理的地域を含む処置群およびii)処置群に対して作成されるマッチング対照群を使用して実験を行うことを含む、実験が行われ得る。
【0012】
図1は、実験のための地理的地域の選択のためのシステム100を示す。システム100は、計算デバイス102、地理的地域データストア110および実験結果データストア112を含む。計算デバイス102は1つまたは複数のネットワーク(図示せず)を通じてデータベース110、112と通信していることができる。一部の例では、計算デバイス102は1つまたは複数のモジュールを含むことができ、また計算システムの組合せとしてまたは同じ一組の物理ハードウェアに実装できる。
【0013】
一部の例では、計算デバイス102は地理的地域データストア110から地理的地域データ120を得ることができる。地理的地域データ120は、地理的地域によって含まれる関心点の位置、地理的地域の地理的大きさおよび地理的地域の地理的位置のようなデータを含む、地理的地域を定義するデータを含むことができる。計算デバイス102は、モデル品質メトリック140を示すデータを含む実験モデル142を特定するデータを更に受信できる。実験モデル142は、本明細書に更に記載されるように、計算デバイス102によって、地理的地域データ120の地理的地域に選択的に適用されて、選択された地理的地域内のデジタルコンテンツの配信からの結果を特定できる。更には、モデル品質メトリック140は、本明細書に更に記載されるように、選択された領域内のデジタルコンテンツの配信に関連できる。
【0014】
要するに、計算デバイス102は、地理的地域データ120からの地理的地域を各々含む処置群および対照群を作成できる。計算デバイス102は、本明細書に更に記載されるように、処置群および/または対照群を使用して-すなわち、処置群によって含まれる地理的地域においてデジタルコンテンツがどのように配信されるかを変更して、かつ対照群によって含まれる地理的地域においてデジタルコンテンツがどのように配信されるかを変更せずに、実験を行うことができる。一部の例では、計算デバイス102によって得られる地理的地域データ120は、i)どの地理的地域が処置群に含まれることを要求されるかを指定するデータおよびii)どの地理的地域が対照群に含まれることを許可されるかを指定するデータを含むことができる。
【0015】
一部の実施例では、計算デバイス102は、1つまたは複数の実験のために、1つまたは複数の地理的地域を含む初期処置群を作成する。
図2Aは、集合的に地理的地域202と称される、複数の地理的地域202a、202b、202c、202d、202e、202f、202gを示す。地理的地域データ120は、地理的地域202を示すデータを含むことができる。示された例では、計算デバイス102は、地理的地域202aを含む初期処置群210を作成する。一部の例では、初期処置群210はモデル品質メトリック140の値(またはレベル)を提供できる。モデル品質メトリック140は、計算デバイス102によって最適化される、例えば、システム100によって所望されかつ/またはシステム100のユーザによって提供されるパラメータに基づいて最適化されることになる目的関数のメトリックであることができる。例えば、地理的地域202は、それぞれの計算デバイスに関するデジタルコンテンツ、例えば、それぞれの地理的地域内に含まれることを示すユーザプロファイルデータを含む計算デバイスに提供される広告デジタルコンテンツの配信を受ける地域を含むことができる。この例では、モデル品質メトリック140は、デジタルコンテンツの配信およびユーザによって呈されるそのような配信の影響-例えば、デジタルコンテンツの配信を受けた地理的地域202によって含まれる関心点とのユーザによる関与、に関連したメトリックを含むことができる。例えば、メトリックには関心点の店内売上高を含むことができるが、しかしながら、地理的地域202内のデジタルコンテンツの配信に関して最適化されることを所望される任意のモデルに対して任意のメトリックが使用できる。
【0016】
示された例では、計算デバイス102は、単一の地理的地域、例えば、地理的地域202aを含む初期処置群210を作成する。計算デバイス102は、初期処置群210がモデル品質メトリック140の指定レベルを提供するように初期処置群210を作成できる。すなわち、計算デバイス102は、初期処置群210がモデル品質メトリック140の指定レベルを提供するように初期処置群210内に含めるために地理的地域202aを選択する。一部の例では、計算デバイス102は、モデル品質メトリック140の最適化レベルを提供する初期処置群210内に含めるために地理的地域202aを選択する。
【0017】
一部の例では、計算デバイス102は、地理的地域データ120によって示されるように初期処置群に含まれることを要求されると示される地理的地域の集合を含むように初期処置群を作成する。例えば、地理的地域データ120によって示されるように地理的地域202aが初期処置群210に含まれることを要求されるので、計算デバイス102は、地理的地域202aを含めて初期処置群210を作成する。一部の例では、地理的地域データ120は、初期処置群210を含む、任意の処置群内に含まれることになる地理的地域の数、例えば、2つ以上の地理的地域202、を示すことができる。
【0018】
一部の実施例では、計算デバイス102は、初期処置群によって含まれない地理的地域を含む初期処置群に対するマッチング対照群を作成する。すなわち、計算デバイス102は、
図2Aの示された例では、初期処置群210に対するマッチング対照群212を作成する。マッチング対照群212は、初期処置群210によって含まれない地理的地域202cおよび202dを含む。一部の例では、計算デバイス102は、初期処置群210およびマッチング対照群212を使用して決定できるモデル品質メトリック140を最適化するよう、利用可能な地理的地域202b、202c、202d、202e、202f、202gから地理的地域202cおよび202dを選択する。具体的には、計算デバイス102は、初期処置群210および初期処置群に対する初期対照群を使用して実験モデル142を使用して実験を行うことができる。
【0019】
例えば、計算デバイス102は、初期処置群210および初期処置群に対する初期対照群を使用して実験モデル142で実験を行うことができる。計算デバイス102は、複数の異なる候補地理的地域202の中の各追加の地理的地域に対して、i)追加の地理的地域を含むか、または初期処置群210に対する初期対照群に含まれる地理的地域のうちの1つを除く、近傍対照群を作成し、ii)初期処置群210および近傍対照群を使用して実験モデル142によって提供される結果に基づいてモデル品質メトリック140のレベルを決定する。例えば、計算デバイス102は、各追加の地理的地域202に対して、利用可能な地理的地域202-例えば、初期処置群210によって含まれない地理的地域202(地理的地域202b、202c、202d、202e、202f、202g)の各組合せに対する近傍対照群を作成する。計算デバイス102は、利用可能な地理的地域202の各組合せに対して-すなわち、各近傍対照群に対して、初期処置群210および近傍対照群を使用して実験モデル142によって提供される結果に基づいてモデル品質メトリック140のレベルを決定する。例えば、計算デバイス102は、i)初期処置群210およびii)近傍対照群-例えば、地理的地域202b、202c、202d、202e、202f、202gの任意の組合せ、の各組合せに実験モデル142を適用する。計算デバイス102は次いで、i)初期処置群210およびii)近傍対照群の各組合せに対して実験モデル142によって提供されるモデル品質メトリック140のレベルを決定できる。計算デバイス102は、初期処置群210に対するマッチング対照群212としてモデル品質メトリック140の最高レベルに対応する近傍対照群のうちの1つを割り当てることができる。例えば、地理的地域202c、202dを含む近傍対照群がモデル品質メトリック140の最高の第2のレベルに対応するので、計算デバイス102は、マッチング対照群212に、地理的地域202c、202dを含む近傍対照群を割り当てることができる。
【0020】
一部の例では、計算デバイス102は、地理的地域データ120によって示されるように、マッチング対照群212に含まれることを許可される地理的地域202を含めてマッチング対照群を作成する。例えば、地理的地域データ120によって例えば示されるように、地理的地域202b、202c、202d、202e、202f、202gのいずれもマッチング対照群212に含まれることを許可されるので、計算デバイス102は、マッチング対照群212に地理的地域202b、202c、202d、202e、202f、202gの部分集合を含めてマッチング対照群212を作成する。
【0021】
一部の実施例では、計算デバイス102は、初期処置群からの地理的地域および複数の異なる適格な地理的地域の中からの追加の地理的地域を含む更新処置群を作成する。すなわち、計算デバイス102は、
図2Bの示された例では、地理的地域202aおよび202bを含む更新処置群220を作成する。一部の例では、計算デバイス102は、追加の地理的地域および初期処置群からの地理的地域が初期処置群によって提供されるモデル品質メトリックのレベルと比較して更新処置群のモデル品質メトリックに指定レベルの上昇を提供するように複数の異なる適格な地理的地域から追加の地理的地域を選択する。
図2Bの示された例では、計算デバイス102は、地理的地域202bおよび初期処置群210からの地理的地域202aが初期処置群210によって提供されるモデル品質メトリック140の値と比較して更新処置群220のモデル品質メトリック140に指定レベルの上昇を提供するように地理的地域202b、202c、202d、202e、202f、202gから地理的地域202bを選択する。具体的には、計算デバイス102は、更新処置群220を使用して実験モデル142を使用して実験を行うことができる。例えば、計算デバイス102は、更新処置群220-すなわち、初期処置群210および追加の地理的地域、を使用して実験モデル142で実験を行うことができる。計算デバイス102は、更新処置群220に含めるのに適格である地理的地域データ120の複数の異なる地理的地域からの各追加の地理的地域に対して、初期処置群210および追加の地理的地域を使用して実験モデル142によって提供される結果に基づいてモデル品質メトリック140の上昇のレベルを決定する。例えば、計算デバイス102は、各追加の地理的地域202に対して、初期処置群210および追加の地理的地域202を使用して実験モデル142によって提供される結果に基づいてモデル品質メトリック140の上昇のレベルを決定する。言い換えれば、計算デバイス102は、i)初期処置群210およびii)追加の地理的地域202の各組合せに実験モデル142を適用して、i)初期処置群210およびii)追加の地理的地域202の各組合せに対して実験モデル142によって提供されるモデル品質メトリック140の上昇のレベルを決定する。計算デバイス102は次いで、モデル品質メトリック140の最高レベルの上昇に対応する追加の地理的地域202の1つを選択できる。計算デバイス102は、初期処置群210からの地理的地域202aおよびモデル品質メトリック140の最高レベルの上昇に対応する追加の地理的地域202bを含む更新処置群220を作成できる。
【0022】
一部の例では、計算デバイス102は、実験のために追加の地理的地域および任意の既存の処置群に現在含まれる地理的地域を含む候補処置群を作成する。計算デバイス102は、更新処置群に含めるのに適格である地理的地域データ120の複数の異なる地理的地域の各追加の地理的地域に対して、既存の処置群の地理的地域および追加の地理的地域を含む候補処置群を作成する。計算デバイス102は、更新処置群に含めるのに適格である地理的地域データ120の複数の異なる地理的地域の各追加の地理的地域に対して、例えば、候補処置群を使用して実験モデル142によって提供される結果に基づいて、候補処置群が既存の処置群より高いモデル品質メトリック140のレベルを提供するかどうかを判定する。計算デバイス102は、候補処置群が既存の処置群より高いモデル品質メトリック140のレベルを提供できない場合に既存の処置群に追加の地理的地域を追加しない。
【0023】
一部の実施例では、計算デバイス102は、停止条件が発生するまでi)更新処置群に基づく更新マッチング対照群およびii)更新マッチング対照群に基づく追加の更新処置群の各々を反復的に作成する。
図2Bの示された例では、計算デバイス102は、更新処置群220に基づいて更新マッチング対照群222を作成する。更新マッチング対照群222は、更新処置群220によって含まれない地理的地域202fおよび202gを含む。一部の例では、計算デバイス102は、更新処置群220および更新マッチング対照群222の選択された地理的地域202を使用して決定できるモデル品質メトリック140を最適化するよう、利用可能な地理的地域202c、202d、202e、202f、202gから地理的地域202fおよび202gを選択する。
【0024】
例えば、計算デバイス102は、更新処置群220および更新処置群220に対する更新対照群を使用して実験モデル142で実験を行うことができる。計算デバイス102は、地理的地域データ120の複数の異なる候補対照地理的地域の中の各追加の地理的地域に対して、i)追加の地理的地域を含むか、または更新処置群に対する更新対照群に含まれる地理的地域のうちの1つを除く、近傍対照群を作成し、ii)更新処置群および近傍更新対照群を使用して実験モデル142によって提供される結果に基づいてモデル品質メトリック140のレベルを決定する。例えば、計算デバイス102は、各追加の地理的地域202に対して、利用可能な地理的地域202-例えば、更新処置群220によって含まれない地理的地域202(地理的地域202c、202d、202e、202f、202g)の各組合せに対する近傍更新対照群を作成する。計算デバイス102は、利用可能な地理的地域202の各組合せに対して-すなわち、各近傍更新対照群に対して、更新処置群220および近傍更新対照群を使用して実験モデル142によって提供される結果に基づいてモデル品質メトリック140のレベルを決定する。例えば、計算デバイス102は、i)更新処置群220およびii)近傍更新対照群-例えば、地理的地域202c、202d、202e、202f、202gの任意の組合せ、の各組合せに実験モデル142を適用し、そしてi)更新処置群220およびii)近傍更新対照群の各組合せに対して実験モデル142によって提供されるモデル品質メトリック140のレベルを決定する。計算デバイス102は次いで、更新処置群に対するマッチング更新対照群としてモデル品質メトリック140の最高レベルに対応する近傍更新対照群の1つを割り当てることができる。例えば、地理的地域202f、202gを含む近傍更新対照群がモデル品質メトリック140の最高レベルに対応するので、計算デバイス102は、更新マッチング対照群222に、地理的地域202f、202gを含む近傍更新対照群を割り当てることができる。
【0025】
更には、計算デバイス102は、更新処置群からの地理的地域および複数の異なる適格な地理的地域の中からの追加の地理的地域を含む更なる更新処置群を作成する。すなわち、計算デバイス102は、
図2Cの示された例では、地理的地域202a、202b、202dを含む更なる更新処置群240を作成する。一部の例では、計算デバイス102は、追加の地理的地域および更新処置群からの地理的地域が更新処置群によって提供されるモデル品質メトリックのレベルと比較して更なる更新処置群のモデル品質メトリックに指定レベルの上昇を提供するように複数の異なる適格な地理的地域から追加の地理的地域を選択する。具体的には、計算デバイス102は、更なる更新処置群240に含めるのに適格である地理的地域データ120の複数の異なる地理的地域の各追加の地理的地域に対して、更新処置群220および追加の地理的地域を使用して実験モデル142によって提供される結果に基づいてモデル品質メトリック140の上昇のレベルを決定する。例えば、計算デバイス102は、各追加の地理的地域202に対して、更新処置群220および追加の地理的地域202を使用して実験モデル142によって提供される結果に基づいてモデル品質メトリック140の上昇のレベルを決定する。例えば、計算デバイス102は、i)更新処置群220およびii)追加の地理的地域202の各組合せに実験モデル142を適用する。計算デバイス102は、i)更新処置群220およびii)追加の地理的地域202の各組合せに対して実験モデル142によって提供されるモデル品質メトリック140の上昇のレベルを決定する。計算デバイス102は次いで、モデル品質メトリック140の最高レベルの上昇に対応する追加の地理的地域202の1つを選択できる。計算デバイス102は、更新処置群220からの地理的地域202a、202bおよびモデル品質メトリック140の最高レベルの上昇に対応する追加の地理的地域202dを含む更なる更新処置群240を作成できる。
【0026】
更には、
図2Cの示された例では、計算デバイス102は、更なる更新処置群240に基づいて更なる更新マッチング対照群242を作成する。更なる更新マッチング対照群242は地理的地域202gを含む。一部の例では、計算デバイス102は、更なる更新処置群240および更なる更新マッチング対照群242の選択された地理的地域202を使用して決定できるモデル品質メトリック140を最適化するよう、利用可能な地理的地域202c、202e、202f、202gから地理的地域202gを選択する。例えば、計算デバイス102は、i)更なる更新処置群240およびii)地理的地域202c、202e、202f、202gの組合せである近傍の更なる更新対照群を使用して実験モデル142を使用して実験を行うことができる。計算デバイス102は、i)更なる更新処置群240およびii)近傍の更なる更新対照群の各組合せに対して実験モデル142によって提供されるモデル品質メトリック140のレベルを決定する。計算デバイス102は次いで、更なる更新処置群に対する更なる更新マッチング対照群としてモデル品質メトリック140の最高レベルに対応する近傍の更なる更新対照群の1つを割り当てることができる。例えば、地理的地域202gを含む近傍の更なる更新対照群がモデル品質メトリック140の最高レベルに対応するので、計算デバイス102は、更なる更新マッチング対照群242に、地理的地域202gを含む近傍の更なる更新対照群を割り当てることができる。
【0027】
一部の例では、計算デバイス102は、停止条件が発生するまで更新マッチング対照群および更新処置群を反復的に作成する。すなわち、計算デバイス102は、停止条件が発生するまで処置群(例えば、処置群210、220、240)およびマッチング対照群(例えば、対照群212、222、242)を反復的に作成する。一部の例では、停止条件は、更新処置群に含まれることになる地理的地域の最大指定数と関連付けることができる。具体的には、計算デバイス102は、(最新/最終)更新処置群に最大指定数の地理的地域が含まれるまで更新マッチング対照群および更新処置群を反復的に作成できる。一部の例では、計算デバイス102は、停止条件に使用するための地理的地域の最大指定数を示すデータを受信できる。例えば、
図2A、
図2B、
図2Cを参照すると、停止条件のための地理的地域の最大指定数は3であり、したがって、計算デバイス102は、最終的な処置群-例えば、更なる更新処置群240に3つの地理的地域が含まれるまで処置群(例えば、処置群210、220、240)およびマッチング対照群(例えば、対照群212、222、242)を反復的に作成できる。停止条件に使用するための地理的地域の最大指定数を示すデータは、計算デバイス102のユーザによって提供できる、または地理的地域データ120の地理的地域の数に基づいて自動的に決定できる。
【0028】
一部の例では、計算デバイス102は、既存の処置群への別の地理的地域の追加が既存の処置群によって提供されるモデル品質メトリック140のレベルと比較してモデル品質メトリック140のレベルを改善できなくなるまで更新マッチング対照群および更新処置群を反復的に作成できる。すなわち、計算デバイス102は、実験モデル142によって提供される結果に基づいて既存の処置群への別の地理的地域の追加がモデル品質メトリック140を上昇させることができないと判定する。例えば、計算デバイス102は、実験モデル142によって提供される結果に基づいて更なる更新処置群240への別の地理的地域の追加がモデル品質メトリック140を上昇させることができないと判定でき、したがって、停止条件が満たされて、計算デバイス102は、更新マッチング対照群および更新処置群を反復的に作成することをやめる。
【0029】
一部の例では、計算デバイス102は、各追加の更新処置群が直前の処置群より追加の地理的地域を含むように追加の更新処置群を作成する。例えば、計算デバイス102は、直前の処置群-すなわち、更新処置群220より追加の地理的地域である地理的地域202dを含めて更なる更新処置群240を作成する。
【0030】
一部の実施例では、計算デバイス102は、所与の実験のための処置群サイズを指定する入力144を受信する。すなわち、処置群サイズ入力144は、所与の実験のための処置群に対する地理的データ120の地理的地域の具体数を示す。例えば、入力144は、所与の実験のための処置群に対する2つの地理的地域-すなわち、更新処置群220を示すことができる。所与の実験のための処置群サイズを指定する入力144を受信したことに応じて、計算デバイス102は、i)入力144の処置群サイズと一致する数の地理的地域を含む更新処置群およびii)その更新処置群に対して作成される更新マッチング対照群を使用して実験を行う。例えば、計算デバイス102は、i)更新処置群220およびii)更新マッチング対照群222を使用して実験を行うことができる。一部の例では、計算デバイス102は実験結果データストア112に実験結果160を提供できる。一部の例では、実験結果160は、i)入力144の処置群サイズと一致する数の地理的地域を含む更新処置群およびii)その更新処置群に対して作成される更新マッチング対照群にデジタルコンテンツを提供することと関連するデータを含むことができる。一部の例では、計算デバイス102によって実験を行うことは、更新処置群に含まれる地理的地域においてデジタルコンテンツがどのように配信されるかを変更すること、およびマッチング対照群に含まれる地理的地域においてデジタルコンテンツがどのように配信されるかを変更しないことを含むことができる。具体的には、計算デバイス102は、更新処置群220における地理的地域202a、202bにおいてデジタルコンテンツがどのように配信されるかを変更でき、かつ更新マッチング対照群222に含まれる地理的地域202f、202gにおいてデジタルコンテンツがどのように配信されるかを変更できない。
【0031】
図3を参照すると、一部の例では、
図1のシステム100に山登りアルゴリズム300が利用できる。具体的には、山登りアルゴリズム300は、目的関数f-すなわち、モデル品質メトリック140、を最適化するために使用できる。アルゴリズム300は、処置群の地理的地域の現在の集合を考慮して対照群の地理的地域の「最良の」集合を特定するマッチング相と現在の対照群を考慮して処置群に1つの新たな地理的地域を追加するかどうかを判定する拡大相との間で交互に動作する。この手順は、例えば、停止条件によって示されるように、処置群が最大許容サイズに達するまで繰り返される。追加的に、山登りアルゴリズム300は、或る試験調査期間日t∈T
0の間の各地理的地域i=1、...、Nに対する許容可能な実験群割当Aiおよび関心メトリックm
i,tの指定の集合も必要とする。k
0=|{i|Ai={処置}}|が処置群に割り当てられることを要求される地理的地域の数を表すとすると、アルゴリズム300は、実験のために処置群における地理的地域の最大数を示す正の整数Kも任意選択で許容する。これらの入力を与えられて、アルゴリズム300は、いくつかの異なる実験設計選択肢-サイズk=max(k
0,1)、...、Kの各処置群に対して1つ、を提供する。特に、各kに対して、推奨処置群G*
trt,kが指定され、そしてマッチング対照群がG*
ctl,kであり、ここでアスタリスクが上付きで使用されてこれらの推奨群を他の非推奨群と区別する。更には、推奨処置群G*
trt,kが厳密にk個の地理的地域を含むことになるのでk=|G*
trt,k|であることに留意されたい。推奨対照群G*
ctl,kに対する下付きkは、それがどの推奨処置群G*
trt,kと対にされるかを示すだけである。
【0032】
アルゴリズム300は、アルゴリズム300の行1における式(8)によって定義されるように実験群に対する地理的地域を初期化することによって始まる。特に、初期推奨処置群G*
trt,k0が、処置群に割り当てられることを要求される地理的地域を含む一方、初期対照群G
ctl,k0は、対照群に割り当てられることを許可される地理的地域から成る。その後、G*
trt,kに対する推奨マッチング対照群G*
ctl,kが既に決定されたか否かに応じて、アルゴリズム300は次いで、停止規則に達するまで「マッチング」ルーチンと「拡大」ルーチンとの間で繰り返し交互に動作できる。アルゴリズム300の行2〜行6が、どのルーチンが最初に使用されるか-地理的地域のいずれかが処置群にあることを要求されるか否かに基づく決定、を判定することに留意されたい。
【0033】
アルゴリズム300の行9〜行16によって概説されるマッチングルーチンでは、所与の推奨処置群G*
trt,kに対するマッチング対照群G*
ctl,kは、局所最適に達するまで非推奨対照群G
ctl,kを逐次更新することによって見つけられる。これは、それぞれ対照群または未割当群に再割り当てされるのに適格である地理的地域を含む式(9)および式(10)によって定義されるように最初に集合R
ctlおよびR
uadを見つけることによって達成される。その後、式(11)によって定義されるように、再割当-対照群から未割当群にまたは未割当群から対照群に-が推奨処置群G*
trt,kと併せて使用されるとfを最大化する地理的地域を再配分することによって、G
ctl,kから「近傍」対照群G'
ctl,kが導出される。次いで、アルゴリズム1の行12〜行13によって記載されるように、f(G*
trt,k, G'
ctl,k)>f(G*
trt,k, G
ctl,k)であれば-すなわち、G'
ctl,kがG*
trt,kと対にされたときにG
ctl,kより高品質モデルに至れば-アルゴリズム300は、G'
ctl,kと一致させて対照群G
ctl,kの定義を更新することになり、そしてこの更新対照群は次いでマッチングルーチンの次の反復に使用されることになる。
【0034】
しかしながら、f(G*
trt,k, G'
ctl,k)≦f(G*
trt,k, G
ctl,k)であれば-すなわち、局所最適に達したならば-アルゴリズム300の行14〜行16が示すように、アルゴリズム300は、既存の集合G
ctl,kをサイズkのその推奨処置群G*
trt,kに対する推奨マッチング対照群G*
ctl,kであるとみなすことになる。一方、アルゴリズム300の行17〜行22に詳述される拡大ルーチンは、サイズkの既存の推奨処置群G*
trt,kからサイズk+1のより大きい推奨処置群G*
trt,k+1を導出するために使用される。これを達成するために、アルゴリズム300は、式(12)によって定義されるように処置群に再割り当てされるのに適格である地理的地域の集合R
trtを最初に見つける。その後、式(13)から分かるように、サイズk+1の推奨処置群G*
trt,k+1は次いで、処置群への再割当が推奨対照群G*
ctl,kと組み合わせて使用されるとfを最大化する地理的地域でサイズkの推奨処置群G*
trt,kを拡大することによって構築される。最後に、アルゴリズム300の行20〜行22が示すように、推奨対照群G*
ctl,kは次いで、G*
trt,k+1に対するマッチング対照群を見つけるために使用されるマッチングルーチンの次の呼出しのための起点であるとみなされる。アルゴリズム300の行8によって示されるように、アルゴリズム300は、それがサイズk=max(k
0,1)、...、Kの処置群を有する実験設計のために推奨処置群G*
trt,kおよびその対応するマッチング対照群G*
ctl,kを決定するまで拡大およびマッチングルーチン間で交互に動作し続ける。加えて、これらの推奨設計の各々は要件の点で目的関数fを局所最適化し、そしてアルゴリズム300の仮定が地理的地域実験の全期間Tの間成り立てば、マッチングマーケットアプローチによって推奨される地理的地域実験は直接的な因果推定に至る。更には、推奨実験設計の各々に対して電力計算が行われて各設計の実験費の見積りを得ることができる。特に、実験の費用は、処置群の量が増加するにつれて比例して増加する傾向がある。したがって、アルゴリズム300によって推奨される処置群の量がkと共に増加するにつれて、アルゴリズム300は、エンティティ(例えば、広告主)に異なる実験費のいくつかの地理的実験設計オプションを提供することができる。
【0035】
図4は、実験のための地理的地域の選択のための工程例400を示す。工程400は、例えば、計算デバイス102または別のデータ処理装置によって行うことができる。工程400は、コンピュータ記憶媒体に記憶される命令としても実装でき、そして1つまたは複数のデータ処理装置による命令の実行は、1つまたは複数のデータ処理装置に工程400の動作の一部または全部を行わせる。
【0036】
計算デバイス102は、1つまたは複数の実験のために、1つまたは複数の地理的地域を含む初期処置群を作成する(402)。例えば、計算デバイス102は、
図2Aの示された例では、地理的地域202aを含む初期処置群210を作成する。計算デバイス102は、初期処置群によって含まれない地理的地域を含む初期処置群に対するマッチング対照群を作成する(404)。例えば、計算デバイス102は、
図2Aの示された例では、初期処置群210に対するマッチング対照群212を作成する。マッチング対照群212は、初期処置群210によって含まれない地理的地域202cおよび202dを含む。計算デバイス102は、初期処置群からの地理的地域および複数の異なる適格な地理的地域の中からの追加の地理的地域を含む更新処置群を作成する(406)。すなわち、計算デバイス102は、
図2Bの示された例では、地理的地域202aおよび202bを含む更新処置群220を作成する。一部の例では、計算デバイス102は、追加の地理的地域および初期処置群からの地理的地域が初期処置群によって提供されるモデル品質メトリックのレベルと比較して更新処置群のモデル品質メトリックに指定レベルの上昇を提供するように複数の異なる適格な地理的地域から追加の地理的地域を選択する。
図2Bの示された例では、計算デバイス102は、地理的地域202bおよび初期処置群210からの地理的地域202aが初期処置群210によって提供されるモデル品質メトリック140の値と比較して更新処置群220のモデル品質メトリック140に指定レベルの上昇を提供するように地理的地域202b、202c、202d、202e、202f、202gから地理的地域202bを選択する。
【0037】
計算デバイス102は、停止条件が発生するまでi)更新処置群に基づく更新マッチング対照群およびii)更新マッチング対照群に基づく追加の更新処置群の各々を反復的に作成する(408)。例えば、計算デバイス102は、
図2Bの示された例では、更新処置群220に基づいて更新マッチング対照群222を作成する。更新マッチング対照群222は、更新処置群220によって含まれない地理的地域202fおよび202gを含む。追加的に、計算デバイス102は、
図2Cの示された例では、地理的地域202a、202b、202dを含む更なる更新処置群240を作成する。更には、一部の例では、停止条件は、更新処置群に含まれることになる地理的地域の最大指定数と関連付けることができる。計算デバイス102は、所与の実験のための処置群サイズを指定する入力144を受信する(410)。すなわち、処置群サイズ入力144は、所与の実験のための処置群に対する地理的データ120の地理的地域の具体数を示す。所与の実験のための処置群サイズを指定する入力144を受信したことに応じて、計算デバイス102は、i)入力144の処置群サイズと一致する数の地理的地域を含む更新処置群およびii)その更新処置群に対して作成される更新マッチング対照群を使用して実験を行う(412)。例えば、計算デバイス102は、i)更新処置群220およびii)更新マッチング対照群222を使用して実験を行うことができる。
【0038】
図5は、一般的なコンピュータデバイス500および一般的なモバイルコンピュータデバイス550の一例を図示し、これらはここで記載される手法で使用できる。計算デバイス500は、ラップトップ、デスクトップ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレームおよび他の適切なコンピュータなどの、デジタルコンピュータの様々な形態を表すと意図される。計算デバイス550は、携帯情報端末、セルラ電話、スマートフォンおよび他の同様の計算デバイスなどの、モバイルデバイスの様々な形態を表すと意図される。ここで図示される部品、それらの接続および関係、ならびにそれらの機能は単に例証であると意味され、本文書に記載および/または特許請求される発明の実施例を限定するとは意味されない。
【0039】
計算デバイス500は、プロセッサ502、メモリ504、記憶デバイス506、メモリ504および高速拡張ポート510に接続する高速インタフェース508、ならびに低速バス514および記憶デバイス506に接続する低速インタフェース512を含む。部品502、504、506、508、510および512の各々は、様々なバスを使用して相互接続され、かつ共通のマザーボード上にまたは適宜他の方式で装着されてよい。プロセッサ502は、メモリ504にまたは記憶デバイス506に記憶される命令を含む、計算デバイス500内での実行のための命令を処理して、高速インタフェース508に連結されるディスプレイ516などの外部入出力デバイス上にGUIのためのグラフィック情報を表示してよい。他の実施例では、複数のプロセッサおよび/または複数のバスが、適宜、複数個のメモリおよび複数種類のメモリと共に使用されてよい。同じく、複数の計算デバイス500が接続されて、各デバイスが必要な動作の一部分を提供してよい(例えば、サーババンク、一群のブレードサーバまたはマルチプロセッサシステムとして)。
【0040】
メモリ504は計算デバイス500内の情報を記憶する。一実施例では、メモリ504は1つまたは複数の揮発性メモリユニットである。別の実施例では、メモリ504は1つまたは複数の不揮発性メモリユニットである。メモリ504は、磁気または光ディスクなどの、コンピュータ可読媒体の別の形態であってもよい。
【0041】
記憶デバイス506は計算デバイス500に大容量記憶を提供することが可能である。一実施例では、記憶デバイス506は、フロッピーディスクデバイス、ハードディスクデバイス、光ディスクデバイスもしくはテープデバイス、フラッシュメモリもしくは他の同様のソリッドステートメモリデバイス、またはストレージエリアネットワークもしくは他の構成のデバイスを含む、デバイスのアレイなど、コンピュータ可読媒体であっても、またはそれを含んでよい。コンピュータプログラム製品が情報担体に有形に具現化されてよい。コンピュータプログラム製品は、実行されると、上記したものなど、1つまたは複数の方法を行う命令を含んでもよい。情報担体は、メモリ504、記憶デバイス506またはプロセッサ502上のメモリなど、コンピュータまたは機械可読媒体である。
【0042】
高速コントローラ508が計算デバイス500のための帯域幅集約動作を管理する一方、低速コントローラ512は低帯域幅集約動作を管理する。そのような機能の配分は単に例証である。一実施例では、高速コントローラ508は、メモリ504、ディスプレイ516(例えば、グラフィックプロセッサまたはアクセラレータを通じて)に、および高速拡張ポート510に連結され、これは様々な拡張カード(図示せず)を受け入れることができる。実施例では、低速コントローラ512は、記憶デバイス506および低速拡張ポート514に連結される。低速拡張ポートは、様々な通信ポート(例えば、USB、ブルートゥース(登録商標)、イーサネット(登録商標)、無線イーサネット(登録商標))を含んでよく、キーボード、ポインティングデバイス、スキャナ、または、例えば、ネットワークアダプタを通じてスイッチもしくはルータといったネットワークデバイスなど、1つまたは複数の入出力デバイスに連結されてよい。
【0043】
計算デバイス500は、図に図示されるように、いくつかの異なる形態で実装されてよい。例えば、それは、標準サーバ520として、または一群のそのようなサーバに重ねて実装されてよい。それは、ラックサーバシステム524の一部として実装されてもよい。加えて、それは、ラップトップコンピュータ522などのパーソナルコンピュータに実装されてよい。代替的に、計算デバイス500からの部品が、デバイス550などのモバイルデバイス(図示せず)における他の部品と組み合わされてよい。そのようなデバイスの各々は、計算デバイス500、550の1つまたは複数を含んでよく、そしてシステム全体が、互いと通信する複数の計算デバイス500、550から構成されてよい。
【0044】
計算デバイス550は、他の部品の中でも、プロセッサ552、メモリ564、ディスプレイ554などの入出力デバイス、通信インタフェース570および送受信器568を含む。デバイス550は、マイクロドライブまたは他のデバイスなどの記憶デバイスも設けられて追加記憶を提供してよい。部品550、552、564、554、570および568の各々は、様々なバスを使用して相互接続され、そして部品のいくつかは共通のマザーボード上にまたは適宜他の方式で装着されてよい。
【0045】
プロセッサ552は、メモリ564に記憶される命令を含む、計算デバイス550内で命令を実行してよい。プロセッサは、別々かつ複数のアナログおよびデジタルプロセッサを含むチップのチップセットとして実装されてよい。プロセッサは、例えば、ユーザインタフェース、デバイス550によって動かされるアプリケーションおよびデバイス550による無線通信の制御など、デバイス550のその他の部品の協調を提供してよい。
【0046】
プロセッサ552は、ディスプレイ554に連結される制御インタフェース558およびディスプレイインタフェース556を通じてユーザと通信してよい。ディスプレイ554は、例えば、TFT LCD(薄膜トランジスタ液晶ディスプレイ)もしくはOLED(有機発光ダイオード)ディスプレイ、または他の適切なディスプレイ技術であってよい。ディスプレイインタフェース556は、ディスプレイ554を駆動してユーザにグラフィックおよび他の情報を提示するための適切な回路網を備えてよい。制御インタフェース558は、ユーザから命令を受けて、それらをプロセッサ552への投入のために変換してよい。加えて、外部インタフェース562が、デバイス550の他のデバイスとの近距離通信を可能にするように、プロセッサ552と通信していてよい。外部インタフェース562は、例えば、一部の実施例では有線通信を、または他の実施例では無線通信を提供してよく、そして複数のインタフェースが使用されてもよい。
【0047】
メモリ564は計算デバイス550内の情報を記憶する。メモリ564は、1つもしくは複数のコンピュータ可読媒体、1つもしくは複数の揮発性メモリユニットまたは1つもしくは複数の不揮発性メモリユニットの1つまたは複数として実装されてよい。拡張メモリ574も設けられて、デバイス550に拡張インタフェース572を通じて接続されてよく、それは、例えば、SIMM(シングルインラインメモリモジュール)カードインタフェースを含んでよい。そのような拡張メモリ574は、デバイス550に追加の記憶空間を提供してよく、またはデバイス550のためのアプリケーションもしくは他の情報を記憶してもよい。具体的には、拡張メモリ574は、上記した工程を実施または補足する命令を含んでよく、かつ安全な情報も含んでよい。したがって、例えば、拡張メモリ574は、デバイス550のためのセキュリティモジュールとして設けられてよく、かつデバイス550の安全な使用を許可する命令がプログラムされてよい。加えて、安全なアプリケーションが、SIMMカード上に非ハッキング可能な方式で識別情報を置くことなど、追加情報と共に、SIMMカードを介して提供されてよい。
【0048】
メモリには、例えば、後述されるように、フラッシュメモリおよび/またはNVRAMメモリを含んでよい。一実施例では、コンピュータプログラム製品が情報担体に有形に具現化される。コンピュータプログラム製品は、実行されると、上記したものなど、1つまたは複数の方法を行う命令を含む。情報担体は、メモリ564、拡張メモリ574、プロセッサ552上のメモリ、または、例えば、送受信器568もしくは外部インタフェース562を通じて受信されてよい伝搬信号などのコンピュータまたは機械可読媒体である。
【0049】
デバイス550は、通信インタフェース570を通じて無線通信してよく、それは必要な場合、デジタル信号処理回路網を含んでよい。通信インタフェース570は、とりわけ、GSM(登録商標)音声通話、SMS、EMSもしくはMMSメッセージング、CDMA(登録商標)、TDMA、PDC、WCDMA(登録商標)、CDMA2000、またはGPRSなどの様々なモードまたはプロトコル下で通信を提供してよい。そのような通信は、例えば、無線周波数送受信器568を通じて発生してよい。加えて、ブルートゥース(登録商標)、WiFiまたは他のそのような送受信器(図示せず)を使用してなど、短距離通信が発生してよい。加えて、GPS(全地球測位システム)受信器モジュール550がデバイス550に追加のナビゲーションおよび位置関連無線データを提供してよく、これはデバイス550上で動くアプリケーションによって適宜使用されてよい。
【0050】
デバイス550は、音声コーデック560を使用して可聴通信してもよく、それはユーザから発声情報を受けて、それを使用可能なデジタル情報に変換してよい。音声コーデック560は同様に、例えば、デバイス550のハンドセットのスピーカを通してなど、ユーザに対する可聴音を発生してよい。そのような音は、音声通話からの音を含んでよく、録音(例えば、音声メッセージ、音楽ファイル等)を含んでよく、そしてデバイス550上で動作するアプリケーションによって発生される音も含んでよい。
【0051】
計算デバイス550は、図に図示されるように、いくつかの異なる形態で実装されてよい。例えば、それは、セルラ電話580として実装されてよい。それは、スマートフォン582、携帯情報端末または他の同様のモバイルデバイスの一部として実装されてもよい。
【0052】
ここで記載されるシステムおよび手法の様々な実施例は、デジタル回路網、集積回路網、特別設計のASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェアおよび/またはその組合せで実現されてよい。これらの様々な実施例は、記憶システム、少なくとも1つの入力デバイスおよび少なくとも1つの出力デバイスからデータおよび命令を受けるように、かつそれらにデータおよび命令を送るように連結される、専用または汎用であってよい、少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステム上で実行および/または解釈可能である1つまたは複数のコンピュータプログラムによる実装を含むことができる。
【0053】
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーションまたはコードとしても知られる)は、プログラマブルプロセッサ用の機械命令を含み、そして高水準手続き型および/もしくはオブジェクト指向プログラミング言語で、ならびに/またはアセンブリ/機械語で実装されてよい。本明細書で使用される場合、用語「機械可読媒体」、「コンピュータ可読媒体」は、機械可読信号として機械命令を受信する機械可読媒体を含む、プログラマブルプロセッサに機械命令および/またはデータを提供するために使用される任意のコンピュータプログラム製品、装置および/またはデバイス(例えば、磁気ディスク、光ディスク、メモリ、プログラマブル論理デバイス(PLD))を指す。用語「機械可読信号」は、プログラマブルプロセッサに機械命令および/またはデータを提供するために使用される任意の信号を指す。
【0054】
ユーザとの対話を提供するために、ここで記載されるシステムおよび手法は、ユーザに情報を表示するためのディスプレイデバイス(例えば、CRT(陰極線管)またはLCD(液晶ディスプレイ)モニタ)ならびにユーザがコンピュータに入力を提供できるキーボードおよびポインティングデバイス(例えば、マウスまたはトラックボール)を有するコンピュータ上に実装されてよい。ユーザとの対話を提供するために他の種類のデバイスも使用されてよく、例えば、ユーザに提供されるフィードバックは任意の形態の感覚フィードバック(例えば、視覚フィードバック、聴覚フィードバックまたは触覚フィードバック)でよく、そしてユーザからの入力は、音響、音声または触覚入力を含む、任意の形態で受け取られてよい。
【0055】
ここで記載されるシステムおよび手法は、バックエンド部品(例えば、データサーバとして)を含む、あるいはミドルウェア部品(例えば、アプリケーションサーバ)を含む、あるいはフロントエンド部品(例えば、ここで記載されるシステムおよび手法の実施例とユーザが対話できるグラフィカルユーザインタフェースもしくはウェブブラウザを有するクライアントコンピュータ)、またはそのようなバックエンド、ミドルウェアもしくはフロントエンド部品の任意の組合せを含む、計算システムにおいて実装されてよい。システムの部品は、デジタルデータ通信の任意の形態または媒体(例えば、通信ネットワーク)によって相互接続されてよい。通信ネットワークの例には、ローカルエリアネットワーク(「LAN」)、ワイドエリアネットワーク(「WAN」)およびインターネットを含む。
【0056】
計算システムはクライアントおよびサーバを含んでよい。クライアントおよびサーバは、一般に互いから離れており、典型的に通信ネットワークを通じて対話する。クライアントおよびサーバの関係は、それぞれのコンピュータ上で動いており、互いにクライアント-サーバ関係を有するコンピュータプログラムによって生じる。
【0057】
本開示が一部の詳細を含むが、これらは、本開示のまたは特許請求され得るものの範囲への限定としてでなく、むしろ本開示の実施例の特徴の記述として解釈されるべきである。別々の実施例の文脈で本開示に記載される或る特徴を組み合わせて単一の実施例でも提供できる。反対に、単一の実施例の文脈で記載される様々な特徴を別々に複数の実施例でも、または任意の適切な下位組合せでも提供できる。その上、特徴が或る組合せで作用すると上記され、しかも当初そのように特許請求されてよいが、特許請求された組合せからの1つまたは複数の特徴が一部の場合に同組合せから削除でき、そして特許請求された組合せは下位組合せまたは下位組合せの変形とされてよい。
【0058】
同様に、動作が特定の順に図面に描かれるが、これは、望ましい結果を達成するために、そのような動作が図示された特定の順にもしくは順番に行われること、または全ての例示された動作が行われることを必要とすると理解されるべきでない。或る状況では、マルチタスキングおよび並列処理が有利であり得る。その上、上記した実施例における様々なシステム部品の分離は、全ての実施例においてそのような分離を必要とすると理解されるべきでなく、記載されたプログラム部品およびシステムが一般に単一のソフトウェア製品に共に統合できるまたは複数のソフトウェア製品へ実装できることが理解されるべきである。
【0059】
このように、本開示の特定の実施例が記載された。他の実施例は以下の請求項の範囲内である。例えば、請求項に列挙される行為は異なる順に行うことができ、それでも望ましい結果を達成できる。多くの実施例が記載された。にもかかわらず、本開示の趣旨および範囲から逸脱することなく様々な変更がなされてよいことが理解されるであろう。例えば、以上図示されたフローは、ステップを並べ替え、追加または削除して、様々な形態が使用されてよい。したがって、他の実施例は以下の請求項の範囲内である。