(57)【要約】  ネットワークトラフィックの流れの視覚化表現を生成するためのシステムおよび方法。採点関数を用いてどのトラフィック経路が上記視覚化表現で表示されるかについて優先順位をつける。
2014535099.tif 000002
【特許請求の範囲】
【請求項１】
インターネットトラフィックデータを示すデータを生成するための方法であって、
ノードおよびノード間のトラフィック経路を表すデータを記憶装置から取り出す段階と、
各ノードについて、開始ノードに対するノードの位置を表すレベルを決定する段階と、
トラフィック経路に沿ったトラフィック量と前記トラフィック経路によって接続されたノード間のレベル差とに部分的に基づいて、各トラフィック経路の得点を処理回路によって計算する段階と、
前記トラフィック経路に関してより高い得点合計を備えたノードの配置を前記処理回路によって決定する段階と、
電子表示装置に前記ノードの2つ以上を表示させかつ前記表示されたノード間の1つまたは複数のトラフィック経路を表示させるよう構成された視覚化表現データを、部分的には前記決定されたノードの配置に基づいて生成する段階と、
前記視覚化表現データを電子デバイスに与える段階とを含む、方法。
【請求項２】
前記ノードが複数のURLのクラスターを含む、請求項1に記載の方法。
【請求項３】
各ノードが前記表示装置で一度だけ表示される、請求項1に記載の方法。
【請求項４】
表示されるトラフィック経路の量を示す接続パラメータを受け取る段階をさらに含み、前記視覚化表現データが、部分的に前記接続パラメータに基づいて生成される、請求項1に記載の方法。
【請求項５】
表示されるノードの量を示すノードパラメータを受け取る段階をさらに含み、前記視覚化表現データが、部分的に前記ノードパラメータに基づいて生成される、請求項1に記載の方法。
【請求項６】
前記視覚化表現データは、表示されたノードに到達しないトラフィックの表示を含む、請求項1に記載の方法。
【請求項７】
レベルはオンラインプロセスの1つのステップに対応する、請求項1に記載の方法。
【請求項８】
前記1つまたは複数の表示されたトラフィック経路は、前記1つまたは複数の表示されたトラフィック経路に沿った前記トラフィック量の表示を含む、請求項1に記載の方法。
【請求項９】
表示されたトラフィック経路は逆方向経路を含む、請求項1に記載の方法。
【請求項１０】
ノードとノード間のトラフィック経路とを表すデータを取り出すよう構成された処理回路を含む、ネットワークトラフィックを示すデータを生成するためのシステムであって、前記処理回路は、各ノードについて、開始ノードに対するノードの位置を表すレベルを決定するようさらに構成されており、前記処理回路は、トラフィック経路に沿ったトラフィック量と前記トラフィック経路によって接続されたノード間のレベル差とに部分的に基づいて、各トラフィック経路の得点を計算するようさらに構成されており、前記処理回路は、前記トラフィック経路に関してより高い得点合計を備えたノードの配置を決定するようさらに構成されており、前記処理回路は、電子表示装置に前記ノードの2つ以上を表示させかつ前記表示されたノード間の1つまたは複数のトラフィック経路を表示させるよう構成された視覚化表現データを、部分的には前記決定されたノードの配置に基づいて生成するようさらに構成されており、前記処理回路は前記視覚化表現データを電子デバイスに与えるよう構成された、システム。
【請求項１１】
前記ノードが複数のURLのクラスターを含む、請求項10に記載のシステム。
【請求項１２】
各ノードが前記表示装置で一度だけ表示される、請求項10に記載のシステム。
【請求項１３】
前記処理回路は、表示されるトラフィック経路の量を示す接続パラメータを受け取るようさらに構成されており、前記視覚化表現データは、部分的に前記接続パラメータに基づいて生成される、請求項10に記載のシステム。
【請求項１４】
前記処理回路は、表示されるノードの量を示すノードパラメータを受け取るようさらに構成されており、前記視覚化表現データは、部分的に前記ノードパラメータに基づいて生成される、請求項10に記載のシステム。
【請求項１５】
前記視覚化表現データは、表示されたノードに到達しないトラフィックの表示を含む、請求項10に記載のシステム。
【請求項１６】
表示されたトラフィック経路は逆方向経路を含む、請求項10に記載のシステム。
【請求項１７】
前記1つまたは複数の表示されたトラフィック経路は、前記1つまたは複数の表示されたトラフィック経路に沿った前記トラフィック量の表示を含む、請求項10に記載のシステム。
【請求項１８】
レベルはオンラインプロセスの1つのステップに対応する、請求項10に記載のシステム。
【請求項１９】
命令が格納された1つまたは複数のコンピュータ可読媒体であって、前記命令は、1つまたは複数のプロセッサにより実行可能であって前記1つまたは複数のプロセッサに、
ノードおよびノード間のトラフィック経路を表すデータを取り出す動作と、
各ノードについて、開始ノードに対するノードの位置を表すレベルを決定する動作と、
トラフィック経路に沿ったトラフィック量と前記トラフィック経路によって接続されたノード間のレベル差とに部分的に基づいて、各トラフィック経路の得点を計算する動作と、
前記トラフィック経路に関してより高い得点合計を備えたノードの配置を決定する動作と、
電子表示装置に前記ノードの2つ以上を表示させかつ前記表示されたノード間の1つまたは複数のトラフィック経路を表示させるよう構成された視覚化表現データを、部分的には前記決定されたノードの配置に基づいて生成する動作と、
前記視覚化表現データを電子デバイスに与える動作とを実行させる、1つまたは複数のコンピュータ可読媒体。
【請求項２０】
前記ノードが複数のURLのクラスターを含む、請求項19に記載の1つまたは複数のコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
インターネットは多種多様なコンテンツへのアクセスを提供する。例えば、多くの異なる話題に関する画像、音声、ビデオ、およびウェブページにインターネットを介してアクセスできる。このアクセス可能なコンテンツは広告を掲載する機会をユーザに提供する。広告は、ウェブページ、画像もしくはビデオのようなコンテンツ内に掲載でき、またはコンテンツが、そのコンテンツ内の広告スロットにおける広告の提示および/またはポップアップウィンドウもしくは他のオーバーレイの広告スロットにおける広告の提示など1つまたは広告の表示をトリガできる。
【背景技術】
【０００２】
基本的なインターネットトランザクションに関して入手可能なトラフィック情報の量でさえ利害関係者にとって大きく扱いにくいものとなりうる。ユーザは、実質的に同一種類のトランザクションを完了するため多数の異なる全域資源位置指示子(URL)を訪れることがある。例えば、広告主は、実際に製品をオンラインショッピングカートに入れるユーザの数についてより多くを知りたいと願うことがある。しかし、ユーザが製品をショッピングカートに追加する毎に一意のURLが生成されることがある。さらに、様々な関係者は、ユーザがどのように特定のウェブページに到着するかを知りたいこともあろう。例えば、あるユーザが特定の製品を求めてインターネット検索を実行する一方、別のユーザは広告主のリンクを辿ることにより同じ製品説明ページに到着するかもしれない。従って、ユーザが辿ることができるトラフィック経路の数も多数に上ることがある。これらや他の理由によって、インターネットトラフィックの流れの視覚化表現の生成は、骨が折れるものであり困難である。
【発明の概要】
【０００３】
概して、本明細書に記載された主題の1つの革新的側面は、インターネットトラフィックデータを示すデータを生成するための方法で実現できる。前記方法は、ノードおよびノード間のトラフィック経路を表すデータを記憶装置から取り出す段階を含む。前記方法は、各ノードについて、開始ノードに対するノードの位置を表すレベルを決定する段階を含む。前記方法は、トラフィック経路に沿ったトラフィック量と前記トラフィック経路によって接続されたノード間のレベル差とに部分的に基づいて、各トラフィック経路の得点を処理回路によって計算する段階を含む。前記方法は、前記トラフィック経路に関してより高い得点合計を備えたノードの配置を前記処理回路によって決定する段階を含む。前記方法は、電子表示装置に前記ノードの2つ以上を表示させかつ前記表示されたノード間の1つまたは複数のトラフィック経路を表示させるよう構成された視覚化表現データを、部分的には前記決定されたノードの配置に基づいて生成する段階を含む。前記方法は、前記視覚化表現データを電子デバイスに与える段階を含む。
【０００４】
別の実装例では、ネットワークトラフィックを示すデータを生成するためのシステムは、ノードとノード間のトラフィック経路とを表すデータを取り出すよう構成された処理回路を含む。前記処理回路は、各ノードについて、開始ノードに対するノードの位置を表すレベルを決定するよう構成されている。前記処理回路は、トラフィック経路に沿ったトラフィック量と前記トラフィック経路によって接続されたノード間のレベル差とに部分的に基づいて、各トラフィック経路の得点を計算するよう構成されている。前記処理回路は、前記トラフィック経路に関してより高い得点合計を備えたノードの配置を決定するよう構成されている。前記処理回路は、電子表示装置に前記ノードの2つ以上を表示させかつ前記表示されたノード間の1つまたは複数のトラフィック経路を表示させるよう構成された視覚化表現データを、部分的には前記決定されたノードの配置に基づいて生成するよう構成されている。前記処理回路は、前記視覚化表現データを電子デバイスに与えるよう構成されている。
【０００５】
さらなる実装例は、命令が格納された1つまたは複数のコンピュータ可読媒体である。前記命令は、1つまたは複数のプロセッサにより実行可能であって前記1つまたは複数のプロセッサに動作を実行させる。前記動作は、ノードおよびノード間のトラフィック経路を表すデータを取り出す動作を含む。前記動作は、各ノードについて、開始ノードに対するノードの位置を表すレベルを決定する動作を含む。前記動作は、トラフィック経路に沿ったトラフィック量と前記トラフィック経路によって接続されたノード間のレベル差とに部分的に基づいて、各トラフィック経路の得点を計算する動作を含む。前記動作は、前記トラフィック経路に関してより高い得点合計を備えたノードの配置を求める動作を含む。前記動作は、電子表示装置に前記ノードの2つ以上を表示させかつ前記表示されたノード間の1つまたは複数のトラフィック経路を表示させるよう構成された視覚化表現データを、部分的には前記決定されたノードの配置に基づいて生成する動作を含む。前記動作は、前記視覚化表現データを電子デバイスに与える動作も含む。
【０００６】
これらの実装例を記載したのは、本開示の範囲を制限するのではなくその理解の助けとなる実例を示すためである。次の利点の1つまたは複数を実現するために特定の実装例を開発することは可能である。
【図面の簡単な説明】
【０００７】
本明細書に記載された主題の1つ又は複数の実装例の詳細は、添付の図面及び以下の説明に記載されている。この主題のその他の特徴、側面、および利点は、説明、図面、および特許請求の範囲から明らかとなるはずである。
【図１】例示的な実施形態による、広告管理システムが広告サービスを管理する代表的な環境のブロック図である。
【図２】オンライントラフィックの例示的な視覚化表現の図である。
【図３】より多くのトラフィック流れ接続を示す、オンライントラフィックの例示的な視覚化表現の図である。
【図４】さらに多くのトラフィック流れ接続を示す、オンライントラフィックの例示的な視覚化表現の図である。
【図５】図5は、オンライントラフィックの視覚表示を生成するための例示的なプロセス500のフローチャートである。
【図６】例示的な一実装例による代表的な処理回路のブロック図である。
【０００８】
これら様々な図面中の類似番号および記号は、類似の構成要素を示す。
【発明を実施するための形態】
【０００９】
インターネットトラフィックの流れは、ウェブサイト所有者、広告主、および他の利害関係者には重要な測定基準である。例えば、トラフィックデータは、ユーザがどのように任意ウェブサイトに到着したか(例えば、このウェブサイトからウェブ閲覧を開始したり、別のウェブサイトからのハイパーリンクを辿ったりすることによる)、ユーザがどのようにこのウェブサイト内でナビゲートするか(例えば、製品情報ページからショッピングカートページにトラバースしたり、ショッピングカートページから購入ページにトラバースしたりすることによる)、およびこのウェブページ訪問後にどこに向かうか(例えば、広告をクリックしたり、他のウェブサイトへナビゲートしたりすることによる)に関する情報を含みうる。利害関係者は、トラフィック情報を用いてそのウェブサイトを修正し、広告キャンペーンを一定の方法で調整し、かつ他の機能を果たすことができる。
【００１０】
利害関係者(例えば、広告主、ウェブサイト管理者、および他の当事者)は、コンテンツとの様々なユーザインタラクションに関する情報および一定のウェブサイトにおけるトラフィックの流れに関する情報を伝達する様々なレポートや視覚化表現にアクセスできる。トラフィック分析ツールはトラフィックデータを集約しかつ表示して、ユーザがどのように様々なウェブページとインタラクションするかを利害関係者が理解する助けとなりうる。例えば、広告主は、任意広告を実際にクリックするユーザの割合や何人のユーザが広告された製品の購入を実際に完了するかを知りたいと願うことがある。こうしたトラフィックデータの分析および報告により、広告主は広告予算の割り振りを決定できる。別の例では、ウェブサイト管理者は、ウェブサイトの一定のページに到達するユーザの数を増やすことに繋がる変更をウェブサイトに施すことができる。
【００１１】
特に、この分析ツールは、トラフィックの流れに関する情報の利害関係者への表示を簡素化するよう動作可能である。そのため、この分析ツールは一定種類の情報を集約し、かつ視覚化表現において「ノード」へとグループ化できる。幾つかの実装例では、表示されたノードは集約されたURLの「クラスター」としてもよい。例えば、ショッピングカートの閲覧に関連付けられた複数のURLは、トラフィック流れの視覚化表現で表示するため単一のクラスターに集約してもよい。別の例では、特定ウェブサイト内の他種類のURLをクラスター化し(例えば、メインページ、検索ページなど)、これらURL間のトラフィックも集約できる。URLクラスター化は、参照して本明細書に援用する「Automatic Approach to Web Page Grouping Based on URLs(URLに基づいたウェブページグループ化への自動的アプローチ)」と題した同時出願された米国特許出願で詳細に記載されている。さらなる実装例では、他の種類の情報は、トラフィックの流れを視覚化するため、同じように集約しかつノードにグループ化できる(例えば、人口統計学的データ、地理的位置情報、ウェブサイトのアクセスに使用されたハードウェアまたはソフトウェアに関する情報等)。
【００１２】
様々な実装例によれば、この分析ツールは、どのノードまたはどのトラフィック流れが視覚化表現において表示されるかを自動的に決定できる。そうした視覚化表現のユーザが、ノード間の集約されたトラフィック流れを追跡するのはなお容易でない場合がある。例えば、トラフィックは、ノードAからノードDまでをノードBとCをトラバースすることで流れることがある。また、トラフィックはノードAからノードCにトラバースし、その後ノードDに至ることもある。別のトラフィックは、ノードAからノードDに直接流れることもある。さらに、別のトラフィックは、逆方向経路を辿ることがある(例えば、以前のノードに到着することにより)。例えば、ユーザはノードBからノードCにトラバースし、その後ノードBに戻った後でノードDに移動することもある。幾つかの実装例では、この分析ツールは、採点関数を用いて特定のトラフィック経路がトラフィック流れの視覚化表現において表示されるか否かを特定できる。
【００１３】
図1は、広告管理システムが広告サービスを管理する代表的な環境のブロック図である。環境100は、ローカルエリアネットワーク(LAN)、広域ネットワーク(WAN)、ワイヤレスネットワーク、インターネット、またはそれらの組合せなどのネットワーク102を含む。ネットワーク102は、ウェブサイト104と、ユーザデバイス106と、広告主108と、広告管理システム110とを接続する。環境100は、任意の数のウェブサイト104と、ユーザデバイス106と、広告主108とを含むことができる。
【００１４】
ウェブサイト104は、ドメイン名に関連付けられかつ1つまたは複数のサーバがホストとして働く1つまたは複数のリソース105を含む。代表的なウェブサイトは、テキスト、画像、マルチメディアコンテンツ、およびスクリプトなどのプログラミングエレメントを含みうるハイパーテキスト作成言語(HTML)で書式設定されたウェブページの収集体である。
【００１５】
リソース105は、ネットワーク102を介して提供可能な任意のデータである。リソース105は、URLなどのリソース105に関連付けられたリソースアドレスにより識別される。リソース105は、一部しか列挙しないが、ウェブページ、ワードプロセッシング文書、ポータブルドキュメントフォーマット(PDF)文書、画像、ビデオ、プログラミングエレメント、インタラクション型コンテンツ、フィードリソースなどを含むことができる。リソース105は、埋め込み情報（ハイパーリンクでのメタ情報など）および/または埋め込み命令を含みうる単語、語句、画像および音声などのコンテンツを含むことができる。埋め込み命令は、ウェブブラウザ内などユーザのデバイスで実行されるコードを含むことができる。コードは、JavaScript(登録商標)またはECMAScript(登録商標)などの言語で書くことができる。
【００１６】
ユーザデバイス106は、ユーザの制御下にある電子デバイスであって、ネットワーク102を介してリソース105を要求し受信できる。代表的なユーザデバイス106は、パーソナルコンピュータ、移動通信デバイス、およびネットワーク102を介してデータの送受信が可能な他の装置を含む。幾つかの実装例では、ユーザデバイス106は、ネットワーク102を介したデータの送受信を促進するウェブブラウザなどのユーザアプリケーションを含むこともできる。
【００１７】
ユーザデバイス106は、ウェブサイト104からリソース105を要求できる。すると、リソース105を表現するデータが、ユーザデバイス106での表示のためユーザデバイス106に与えられる(例えば、電子表示装置におけるスピーカを介して可聴音として、またははそれらの組合せとして)。リソース105を表現するデータは、広告を提示できるリソースの一部またはユーザ表示装置の一部(例えば、ポップアップウィンドウの提示位置またはウェブページのスロット)を指定するデータを含むことができる。リソース105またはユーザ表示装置のこれら指定された部分は、広告スロットと呼ばれる。
【００１８】
ネットワーク102を介してアクセスできる膨大な数のリソース105の検索を容易にするため、環境100は、ウェブサイト104で与えられるリソース105をクローリングしかつ索引付けすることでリソース105を識別する検索システム112を含むことができる。リソース105に関するデータは、このデータが関連付けられているリソース105に基づいて索引付けできる。リソース105の索引付けされかつオプションでキャッシュされたコピーは、検索索引(図示しない)に格納される。
【００１９】
ユーザデバイス106は、ネットワーク102を介して検索システム112に検索クエリを提出できる。それに応答して、検索システム112は検索索引にアクセスして、その検索クエリに関連したリソース105を識別する。代表的な一実施形態では、検索クエリは1つまたは複数のキーワードを含む。検索システム112はこのクエリに応答するリソース105を識別し、リソース105に関する情報を検索結果の形式で与え、この検索結果をユーザデバイス106に検索結果のページで返す。検索結果は、特定の検索クエリに応答するリソース105を識別する検索システム112により生成されたデータを含むことができ、さらに、そのリソース105へのリンクを含むことができる。代表的な検索結果は、ウェブページのタイトル、ウェブページ104から抽出されたテキストのスニペットまたは画像の一部、リソース105の描画、およびウェブページ104のURLを含むことができる。検索結果ページは、広告を提示できる1つまたは複数の広告スロットを含むこともできる。
【００２０】
検索結果ページは、検索システム112から、ユーザデバイス106のウェブブラウザにHTTP(ハイパーテキスト転送プロトコル)クッキーを設定するための要求を付けて送信できる。クッキーは、例えば、特定のユーザデバイス106および特定のウェブブラウザを表すことができる。例えば、検索システム112は、検索結果ページをHTTP応答で送信することでクエリに返答するサーバを含む。このHTTP応答は、サーバがホストとして働くサイトまたはそのサーバのドメインのクッキーをブラウザに格納させる命令(例えば、クッキー設定命令)を含む。このブラウザがクッキーをサポートしており、クッキーが使用可能であれば、同一サーバまたはそのサーバのドメイン内のサーバへの以降のページ要求すべてはこのクッキーを含むことになる。このクッキーは、一意のまたはほぼ一意の識別子を含む様々なデータを格納できる。この一意またはほぼ一意の識別子は匿名化でき、ユーザ名とは繋がっていない。HTTPは状態を持たないプロトコルなので、クッキーを使用すると、検索システム112または他のシステムのような外部サービスが、ユーザの特定の行為および状態を多数のセッションにわたり追跡できるようになる。ユーザは、例えば、ブラウザの設定でクッキーを無効にすることで、ユーザ行為の追跡から選択的に離脱できる。
【００２１】
リソース105または検索結果がユーザデバイス106により要求されたりユーザデバイス106に与えられたりすると、広告管理システム110は、広告をリソース105または検索結果とともに提供する要求を受け取る。この広告の要求は、要求されたリソース105または検索結果ページに関して定義された広告スロットの特性を含むことができ、広告管理システム110に与えることができる。例えば、広告スロットが定義されているリソース105への参照(例えば、URL)、広告スロットのサイズ、および/または広告スロットでの提示に使用できるメディアの種類を広告管理システム110に与えることができる。同様に、要求されたリソース105に関連付けられたキーワード(すなわち、コンテンツに関連付けられた1つまたは複数の言葉)(「リソースキーワード」)または検索結果を要求している検索クエリも広告管理システム110に与えることで、リソース105または検索クエリに関連した広告を容易に識別可能になる。
【００２２】
この広告の要求に含まれるデータに基づいて、広告管理システム110は、その要求に応答して提供するのに適格な広告(「適格広告」)を選択できる。例えば、適格広告は、広告スロットの特性に一致した特性であって、指定されたリソースキーワードまたは検索クエリに関連しているものとして識別された特性を備えた広告を含むことができる。幾つかの実装例では、こうしたリソースキーワード、検索クエリ、または検索クエリの一部に一致したターゲティングキーワードを備えた広告が、広告管理システム110によって適格広告として選択される。
【００２３】
広告管理システム110は、リソース105または検索結果ページの各広告スロット用の適格広告を選択する。リソース105または検索結果ページは、ユーザデバイス106での提示のためユーザデバイス106により受信される。提示された広告とのユーザのインタラクションを表すユーザインタラクションデータは、履歴データ記憶装置119に格納できる。例えば、広告がユーザに広告サーバ114を介して提示されると、データはログファイル116に格納できる。後に詳述するように、ログファイル116は、履歴データ記憶装置119内の他のデータと集約(aggregate)できる。従って、履歴データ記憶装置119は、広告のインプレッションを表すデータを含む。例えば、広告の提示は、提示されるその広告の要求に応答して格納される。例えば、この広告要求は、特定のクッキーを識別するデータを含むことができ、よって、このクッキーを識別するデータは、その要求に応答して提供された広告を識別するデータと関連付けて格納できる。幾つかの実装例では、このデータは履歴データ記憶装置119に直接格納できる。
【００２４】
同様に、ユーザがリンク(例えば、ハイパーリンク、提示された広告等)をトラバースすることを選択すると、そのリンクの選択を表すデータはログファイル116、クッキー、または履歴データ記憶装置119内に格納されうる。幾つかの実装例では、このデータは、この広告にリンクされたウェブページに対する要求に応答して格納される。例えば、この広告のユーザ選択が、広告主により(または広告主に代わって)提供されるウェブページの提示要求を開始するようにしてもよい。この要求は、ユーザデバイスのクッキーを識別するデータを含むことができ、このデータは広告データ記憶装置内に格納できる。
【００２５】
ユーザインタラクションデータは、ユーザインタラクションの実行に使用された対応するユーザ装置を表す一意の識別子に関連付けることができる。例えば、幾つかの実装例では、ユーザインタラクションデータは、1つまたは複数のクッキーに関連付けることができる。各クッキーは、そのクッキーがこのユーザデバイス106に初めて設定された時刻を示す初期設定時刻を指定する内容を含むことができる。別の実装例では、特定のユーザに関する付加的情報を収集できる。例えば、付加的情報は、ユーザの人口統計、地理的位置に関わる(例えば、モバイルデバイスのGPS機能やIPアドレスに基づく)情報、システム情報(例えば、どのウェブブラウザが使用されているか、使用される計算装置の種類など)、および環境100とのユーザのインタラクションに関する他の任意種類の情報を含むことができる。
【００２６】
また、ログファイル116または履歴データ記憶装置119は、広告への参照と、各広告がユーザへの提示のために選択された条件を表すデータとを格納する。例えば、履歴データ記憶装置119は、ターゲティングキーワードと、ビッドと、適格広告を提示目的で選択するための他の判断基準とを格納できる。さらに、履歴データ記憶装置119は、各広告のインプレッションの回数を明示したデータを含むことができ、各広告に関するインプレッションの回数は、例えば、それら広告インプレッションを生じさせたキーワードおよび/またはそれらインプレッションに関連付けられたクッキーを用いて追跡できる。また、各インプレッションに関するデータを格納して、各インプレッションおよびユーザ選択が、選択された広告および/またはこの広告が提示のために選択される原因となったターゲティングキーワードに関連付けられる(すなわち、この広告および/またはターゲティングキーワードへの参照と共に格納しかつ/またはこの広告および/またはターゲティングキーワードに従って索引を付ける)ようにすることも可能である。
【００２７】
広告主108は、広告管理システム110に、広告の配信を制御するのに用いられるキャンペーンパラメータ(例えば、ターゲティングキーワードおよび対応するビッド)を渡すことができる。広告主108は、広告管理システム110にアクセスし、これらキャンペーンパラメータを用いて配信される広告のパフォーマンスを監視できる。例えば、広告主は、広告に関して識別されているインプレッション(すなわち、提示)、選択(すなわちクリック)、およびコンバージョンの回数を示すキャンペーン・パフォーマンスレポートにアクセスできる。キャンペーン・パフォーマンスレポートは、総コスト、クリック単価、および指定期間における広告の他のコスト尺度を示すこともできる。
【００２８】
幾つかの実装例では、ユーザがウェブページまたは別のリソースを参照元のウェブページ(または他のリソース)からアクセスした場合、このインタラクションに関わるその参照元ウェブページ(または他のリソース)は、例えば、アクセスされたウェブページにより参照されたコードの実行および/またはそのウェブページのアクセスに使用されたURLに基づいて識別できる。例えば、ユーザは、一例として広告主のアフィリエートによる販売促進オファーの一環としてウェブページに提示されたリンクを選択することで広告主のウェブサイトにアクセスできる。このリンクは、ユーザがナビゲートする元となるリソースを一意に識別するデータ(すなわちテキスト)を含むURLに関連付けることができる。例えば、http://www.example.com/homepage/%affiliate_identifier%promotion_1というリンクは、ユーザが、このURLに指定されているアフィリエート識別番号に関連付けられたアフィリエートのウェブページからexample.comウェブページにナビゲートし、かつ、ユーザがpromotion_1に関連付けられた販売促進オファーに含まれるリンクの選択に基づいてexample.comのウェブページに差し向けられたことを示している。このインタラクション(すなわち、このリンクの選択)に関するユーザインタラクションデータはデータベースに格納して、後述するようにパフォーマンスの報告および環境100におけるトラフィックの流れの視覚化を容易にするため使用できる。
【００２９】
広告管理システム110は、ログ116、履歴データ119、または別の場所に格納されたトラフィックデータや他のデータを使用して、環境100におけるトラフィックの1つまたは複数の流れ視覚化表現を生成できるパフォーマンス分析装置120を含む。例えば、パフォーマンス分析装置120は、クッキーデータを分析して何人のユーザがウェブサイト104の1つから別のウェブサイトにトラバースするかを特定することができる。幾つかの実装例では、パフォーマンス分析装置120は、視覚化のために複数組のデータをノードおよび/またはトラフィック経路に集約できる。パフォーマンス分析装置120は、さらに、どのノードおよびトラフィック経路がトラフィックの流れの視覚化表現において表示されるかを決定できる。例えば、パフォーマンス分析装置120は、1つまたは複数の採点関数を用いてノード間のトラフィック量に基づいてどのトラフィック経路が表示されるかを決定できる。この採点関数はレベル重み(level weights)に基づくことができる。例えば、ノードAからBへそしてCへ向かう各トラフィック経路はレベル重み1を備え、AからCへ直接トラバースする経路はレベル重み2を備えるようにしてよい。
【００３０】
図2は、オンライントラフィックの例示的な視覚化表現200の図である。一般に、視覚化表現200は、複数のソースノード216(例えば、URLクラスター、人口統計のグループ、地理的位置のグループ、または情報の他の任意のグループ化)を表示する。例えば、第1ソースノードはソーシャルネットワーキングサイトの集合体とする一方、第2ソースノードはサーチエンジンの集合体としてよい。ソースノードの一部またはすべては、特定のウェブサイトに関するURLのグループを含むこともできる。例えば、特定のウェブサイトは次のURLを含むことができる。
http://www.example.com/home.html
http://www.example.com/search.aspx
http://www.example.com/results.aspx?type=simple&q=test
こうした場合、視覚化表現200は、これらのURLを「Example.com」とラベル付けした単一のソースノードに集約できる。
【００３１】
幾つかの実装例によれば、視覚化表現200は、目標に対応するノードを含むこともできる。目標とは、ユーザが実行する一定の行為に対応するURLのグループでよい。例えば、第1目標206は、特定のウェブサイトまたは一組のウェブサイトで製品カテゴリを閲覧することでよい。目標206は、例えば、製品情報を表示するすべてのURLを集約することによってノード220を生成するために用いることができる。第2目標208はショッピングカートを閲覧することであり、従って、ウェブサイトの訪問者が製品を自分のショッピングカートに追加したことを示す。目標208はノード226の構築に用いることもできる。第3目標210は、ユーザがウェブサイトにログインすることであり、ノード232の構築に用いることができる。第4目標212はユーザが注文することであり、ノード238の構築に用いることができる。第4目標214は、ユーザが注文を完了することであり、ノード244の構築に用いることができる。
【００３２】
さらに、視覚化表現200は、ノード間のトラフィック流れ情報を表示する。例えば、トラフィック経路218は、ソースノード216からノード220へのトラフィックの流れを表す。様々な実装例では、視覚化表現200は、さらにノード間のトラフィック量を表示できる(例えば、トラフィック量によりトラフィック流れの外観を変化させたり、トラフィック量を示すアイコンまたはテキストを表示させたり、ノード間のトラフィック量を伝達する他の方法により)。例えば、トラフィック経路218は、視覚化表現200において大きさが異なることが示されており、よってそれらのトラフィック量が異なることを表す。同様に、トラフィック経路224、230、236、および242は、ノード226、232、および238を介したノード220からノード244(例えば、購入の完了まで)へのトラフィックの流れを表す。図示したように、視覚化表現200においてトラフィック経路224、230、236、および242の大きさの減少は、ノード220で製品を閲覧するユーザの一部のみがノード244で実際に購入を完了することを示している。
【００３３】
さらに、視覚化表現200は、減少トラフィック流れも示す。一般に、減少トラフィック流れとは、ユーザが目標206、208、210、212、および214で定義されたプロセスから出る流れである(例えば、ウェブ閲覧セッションを中止したり、異なる小売業者のウェブサイトを訪問するためにサイトを離れたりするなどにより)。図示したように、減少トラフィック経路222、228、234、および240は、それぞれノード220、226、232、および238に結合されており、これらステップのそれぞれから離脱するトラフィック流れ(例えば、視覚化表現200において目標と関連付けられた別のノードに戻らない)を表す。幾つかの実装例では、減少トラフィック流れは、これら流れを他のトラフィック流れから区別する表示を含むことができる(例えば、色、テキスト、またはアイコンなどを用いることにより)。例えば、減少トラフィック流れ222を赤く表示して、ノード220の製品説明ページから離脱する(例えば、競争業者のウェブサイトを訪問したり、このショッピングプロセスを中断したりすることで)トラフィック流れを示すことができる。
【００３４】
幾つかの実装例によれば、視覚化表現200は、時間入力204を含むことも図示されている。時間入力204は、視覚化表現200が生成される時間または日付の選択を受け取るよう構成されている。例えば、時間入力204は、視覚化表現200によって与えられるトラフィック情報をフィルタするのに使用できる日付範囲の選択を受け取ることができる。一例として、広告主は、広告キャンペーンを調整するため、ある休日付近のウェブサイトトラフィック情報を閲覧したいと望むかもしれない。他の実装例では、時間入力204は予め設定しておくことができる(例えば、先週、先月、ユーザプロファイルで定義されている時間枠など)。
【００３５】
視覚化表現200は、ズームレベルの選択を受け取るズーム入力205を含むこともできる。例えば、視覚化表現200のユーザはズーム入力205を用いて縮小表示することで、より多くのノードを表示させることもできる。さらに、ズーム入力205を用いて拡大表示して、ノードの部分集合のみを視覚化表現200で表示させてもよい。ズーム入力205は、1つまたは複数のアイコン、1つのスライドバー、または視覚化表現200の他の選択可能領域とすればよい。
【００３６】
幾つかの実装例では、視覚化表現200は接続セレクタ202を含むことができる。接続セレクタ202は、視覚化表現200で表示されるトラフィック流れの量の選択を受け取る。図示したように、接続セレクタ202は、最小量のトラフィック流れを視覚化表現200に表示するよう設定されている。接続セレクタ202は、表示すべき流れの数を受け取る入力フィールド、1つまたは複数のアイコン(例えば、上下の矢印)、1つのスライドバー、または視覚化表現200で選択を受け取るための他の任意の選択可能領域とすればよい。
【００３７】
図3は例示的な視覚化表現300の図であり、視覚化表現200のものよりも多くのトラフィック流れ接続を示す。視覚化表現300は、接続セレクタ202が視覚化表現300では視覚化表現200のものよりも多くのトラフィック流れ接続を表示するよう調節されていることを除けば、視覚化表現200のものと同じ情報をすべて示す。特に、トラフィック経路302が視覚化表現300で表示されるのは、表示されるトラフィック接続の数を増加させる指令を接続セレクタ202が受け取ったときである。
【００３８】
トラフィック経路302は、これが逆方向経路を示している点で視覚化表現200のトラフィック流れのトラフィック経路とは異なる。例えば、トラフィック経路302は、多くのユーザが最初の製品を自分のショッピングカートに追加した後で、2番目の製品に関する詳細を閲覧するために後戻りすることを意味するのかもしれない(例えば、ユーザは注文を完了するのでなく買い物を継続する選択をする)。この情報は、幾つかの状況で視覚化表現300のユーザにとって重要になることがある。例えば、オンライン小売商は、注文の合計購入価格が一定の限度を超える場合は発送を無料とする販売促進を実施できる。トラフィック経路302によって、この小売商は、この販売促進が顧客の注文増大を促すのにどの程度効果的かを分析できるようになる。
【００３９】
幾つかの実装例では、採点関数を用いることで、どのトラフィック流れが視覚化表現300に表示されるかを制御できる。場合によっては、採点関数は、特定のトラフィック流れにおけるトラフィック量および/またはレベル重みに部分的に基づかせてもよい。例えば、1つの実装例では、次のように定義された採点関数を使用してもよい。
【００４０】
【数１】
2014535099.tif 000003
【００４１】
ここで、eは2つのノード間のトラフィック流れであり、wtraffic(e)はeにおけるトラフィック量に基づくトラフィック重み因子であり、w length (e)は、視覚化表現200においてeがトラバースするレベルの数に基づいた長さ重み因子(length weight factor)である。例えば、購入を実際に完了するよりも多くのユーザが商品を自分のショッピングカートに追加するので、データ流れ224はデータ流れ242よりも大きいトラフィック重み因子を備えることがある。
【００４２】
長さ重み因子は、視覚化表現300において、他のトラフィック流れに比べて特定のトラフィック流れの表示により大きな優先度を与えるように定義できる。幾つかの実装例では、目標206、208、210、212、および214からなるレベルに沿ってノードを1つのレベルから次のレベルに接続するトラフィック流れには、最も大きい長さ重み因子を与えることができる。従って、目標206、208、210、212、および214により定義されるステップを辿るトラフィック流れは、他の種類のトラフィック流れよりも優先して表示されうる。負の方向のトラフィック流れにはより低い長さ重み因子を与えて、表示されうる逆方向経路の数を減らしてもよい。例えば、トラフィック経路302は、この方向に流れるトラフィックは購入の完了すなわち目標214という全体的な目標から離れる方向に移動するので、-1の長さを備えることができる。レベルを飛び越すトラフィック流れ(「スキップ」)には他の長さ重み因子を与えてもよい。例えば、ソースノード216からノード232へ直接流れるトラフィックは、2つのレベルをスキップするので長さ3と重み1/3を備えることができる。
【００４３】
様々な実装例によれば、特定のトラフィック流れのトラフィック重み因子は、より小さい長さ重み因子を相殺するだけの大きさを備えていてもよい。例えば、トラフィック経路302は、反対方向に流れるのでトラフィック経路224よりも小さい長さ重み因子を備えることができる。しかし、ノード226からノード220に戻るトラフィック量は、トラフィック経路302が表示されるほど十分に大きいこともある。トラフィックが少ない他の逆方向経路は、接続セレクタ202により定義された詳細レベルによっては、表示されずに隠されたままかもしれない。例えば、トラフィック経路302のトラフィック量がずっと大きいためトラフィック経路302が表示されている一方で、ノード232から226へのトラフィック流れは隠されていることもある。
【００４４】
図4は例示的な視覚化表現400の図であり、図3の視覚化表現300のものよりも多くのトラフィック流れ接続を示す。視覚化表現400は、視覚化表現400のノード間でトラフィックが流れるすべてのトラフィック経路を表示するよう接続セレクタ202が調節されていることを除けば、視覚化表現200および300と同じ情報をすべて示す。例えば、逆方向経路およびスキップは小さなトラフィック量のみを備えていても、視覚化表現400に示すことができる。接続セレクタ202の3つの設定のみが図2-4に示されているが、任意数の異なる設定を用いて表示トラフィック流れの数を変更できる。
【００４５】
図5は、ネットワークトラフィックデータを表示するための例示的なプロセス500のフローチャートである。幾つかの実装例では、プロセス500は、ネットワークトラフィックデータを集約するサーバ(例えば、図1のパフォーマンス分析装置120など)により実行させてよい。例えば、サーバは、プロセス500を使用してネットワークトラフィックの視覚化表現を生成し、ユーザデバイスに視覚化表現データを与えることができる。別の実装例では、ネットワークトラフィックデータは、まず、プロセス500を使用してこのトラフィックデータを分析するユーザデバイス(例えば、このユーザデバイス上で実行する1つまたは複数のスクリプト、プログラム、または他のルーチンを用いて)にダウンロードできる。
【００４６】
プロセス500は、記憶装置からのノードおよびトラフィック経路の取り出しを含むことができる(ブロック502)。一般に、ノードは、ネットワークに関連したデータの任意のひとまとまりでよい。例えば、ノードは、ウェブサイト、URL、サーバ、またはネットワークにおけるコンテンツソースの他のグループでよい。さらに、ノードは地理的位置情報、人口統計学的情報、システム構成情報(例えば、コンテンツソースにアクセスするのに使用されるハードウェアおよび/またはソフトウェア)に基づくこともできる。幾つかの実装例では、ノードは複数の因子に基づいてグループ化してもよい。例えば、あるノードは、地理的位置情報とシステム構成情報の両方に基づくことができる。トラフィック経路はノードを接続し、ノード間のネットワークトラフィックのグループ化を表す。例えば、あるノードはwww.example.comのURLのクラスターとして、別のノードはwww.example.orgのURLのクラスターとしてもよい。この場合、トラフィック経路はノード1をノード2に接続し、別のトラフィック経路はノード2をノード1に接続できる。
【００４７】
プロセス500は、各ノードへのレベルの割り当てを含むことができる(ブロック504)。一般に、レベルはノード間の分離に対応する。例えば、ノードAからBそしてCに至るトラフィックは、AからBとその後にBからCへの2つのトラフィック経路を通過するので2つのレベルをトラバースする。この場合、ノードAにはレベル1が割り当てられ、ノードBにはレベル2が割り当てられ、ノードCにはレベル3が割り当てられる。幾つかの実装例では、開始レベルは予め定めておいてよい。例えば、視覚化表現においてどのノードを開始ノードとするかを選択するためにパラメータを使用してもよい。その場合、これらノードには最も低いレベルを割り当て、他のノードには開始ノードに対するそれらの相対位置に基づいてレベルを割り当てればよい。
【００４８】
プロセス500は、各トラフィック経路への得点の割り当てを含むことができる(ブロック506)。一般に、得点は、経路に沿ったトラフィック量に基づかせればよい。どの種類のトラフィック経路に視覚化表現に関わる優先権を与えるかを定めるため、得点は他の因子に基づかせてもよい。例えば、長さ重みを得点の一部として用いて、一定種類の経路は他の経路に比べて優先的に視覚化表現を行ってもよい。経路の種類には、レベルをトラバースする順方向経路と、レベルをスキップする順方向経路と、下位レベルに戻る逆方向経路とが含まれる。この長さ重みも、経路がトラバースするレベルの数により変化できる。例えば、1つのレベルをスキップするトラフィック経路(例えば、長さが+2のトラフィック経路)は、3つのレベルをスキップするトラフィック経路(例えば、長さが+4のトラフィック経路)よりも大きい長さ重みを備えることができる。こうすることで、得点が低いトラフィック経路は視覚化表現から排除し、従ってネットワークにおいて最も関連性が高いトラフィック流れを表示できる。
【００４９】
プロセス500は、トラフィック経路得点の合計が増えるようなノードの再配置を含むことができる(ブロック508)。一般に、総得点は、現時点でのノードの配置におけるすべてのトラフィック経路の得点を合計することで維持できる。ノードが異なるレベルに再配置されると、それらの関連付けられたトラフィック経路の得点も変化することがある。例えば、ノードAがレベル1にあり、ノードBがレベル3にあるとする。ノードBがレベル2に再配置されれば、ノードAとノードBの距離が減少するため、これらの2つのノードを接続するトラフィック経路の得点が増加しうる。総得点が増加する限りはこの再配置を繰り返してもよい。一実装例では、山登り法アルゴリズムを用いてトラフィック経路の総得点を最適化できる。他の実装例では、異なる最適化戦略を使用してもよい。幾つかの実装例では、ノードの再配置は最適解に到達する前に停止してよい。例えば、ノードが再配置される回数に上限を設けてもよい。
【００５０】
プロセス500は、視覚化表現データの生成を含むことができる(ブロック510)。この視覚化表現データは、トラフィック経路得点の合計を増加させるノードの配置に基づいて、少なくとも2つのノードおよび1つまたは複数のトラフィック経路を含む。この視覚化表現データにおけるノードは一意としてよい。すなわち、各ノードは視覚化表現で一度だけ表示される。この視覚化表現は、該視覚化表現で表示されたノードに到達しないトラフィックの表示を含むこともできる(たとえば、プロセスから「外れる」トラフィックの流れ)。さらに、1つまたは複数の接続パラメータを用いて視覚化表現データを生成してもよい。例えば、接続パラメータは、視覚化表現で表示されるトラフィック経路の量を示すことができる。こうした場合、接続パラメータが指定する量に達するまで、最も高い得点を備えたトラフィック経路が視覚化表現に含まれうる。
【００５１】
プロセス500は、視覚化表現データを電子デバイスに与える動作を含むことができる(ブロック512)。幾つかの実装例では、この電子デバイスは1つまたは複数の電子表示装置でよい。例えば、受け取られたネットワークトラフィックデータを処理するユーザデバイスは、視覚化表現データを電子表示装置に直接与えてもよい。他の実装例では、この視覚化表現データはサーバまたは他の遠隔装置によって生成され、ユーザデバイスに与えられるようにしてもよい。すると、このユーザデバイスは、その視覚化表現データを用いて電子表示装置に視覚化表現を表示させる。例えば、この視覚化表現データはサーバによって生成され、ユーザのコンピュータに与えられると、次にこのユーザデバイスがその視覚化表現データを用いてモニタ上にその視覚化表現データを表示できる。
【００５２】
図6は、ネットワークトラフィックの情報を用いて視覚化表現データを生成するよう構成された例示的な処理回路600のブロック図である。処理回路600は、サーバ(例えば、図1のパフォーマンス分析装置120または他の計算装置)の一部、ユーザデバイス(例えば、モバイルデバイス、デスクトップコンピュータ、または他の任意計算装置)の一部、または他の任意電子装置の一部としてよい。処理回路600は、バス605または情報を伝達するための他の通信機構と、情報処理のためにバス605に結合されたプロセッサ610 とを含む。処理回路600は、情報とプロセッサ610に実行される命令とを格納するためにバス605に接続されたランダムアクセス記憶装置(RAM)または他の動的記憶装置などの主メモリ610も含んでいる。主メモリ615は、位置情報、一時変数、またはプロセッサ610による命令の実行時に他の中間情報を格納するためにも使われる。さらに、処理回路600は、静的情報およびプロセッサ610の命令を格納するためにバス605に接続された読取り専用記憶装置(ROM)610または他の静的記憶装置も含むことができる。情報および命令を永続的に格納するため固体デバイス、磁気ディスク、光学ディスク、非一時的メモリなどの記憶装置625がバス605に接続されている。
【００５３】
処理回路600は、ユーザに情報を表示するため、液晶表示装置またはアクティブマトリックス表示装置などの表示装置635にバス605を介して接続することもできる。情報および選択した指令をプロセッサ610に伝達するため、英数字および他のキーを含むキーボードのような入力装置630をバス605に接続できる。別の実施形態では、入力装置630はタッチスクリーン表示装置635を備える。入力装置630は、方向情報および選択された指令をプロセッサ610に伝達し、かつ表示装置635におけるカーソルの動作を制御するため、マウス、トラックボール、またはカーソル方向キー(cursor direction key)などのカーソル制御装置を含むこともできる。処理回路600は、ネットワークインターフェース638も含むことができる。ネットワークインターフェース638は、データネットワークを介してデータを送受信するよう構成されている。例えば、ネットワークインターフェース638は、イーサネット（登録商標）ポート、ワイヤレストランシーバ、電話ポート、または他の任意種類のデータネットワークインターフェースを含むことができる。
【００５４】
様々な実装例によれば、本明細書に記載された例示的な実施形態を実行するプロセスは、主メモリ615および/または記憶装置625に含まれた一連の命令を実行するプロセッサ610に応答して処理回路600により実装できる。こうした命令は、記憶装置625などの別のコンピュータ可読媒体から主メモリ615に読み込みまたはネットワークインターフェース638を介して受け取り可能である。主メモリ615に保持された一連の命令の実行によって、処理回路600は、本明細書に記載された例示的なプロセスを実行する。主メモリ615に保持された命令を実行するため、多重処理構成の1つまたは複数のプロセッサを利用してもよい。代替的な実施形態では、例示的な実施形態を実装するため、ソフトウェア命令に代えてまたはそれらと組み合わせてハードワイヤード回路を使用してもよい。よって、実施形態は、ハードウェア回路またはソフトウェアの特定の組合せに限定されるものではない。
【００５５】
一例では、これら命令の擬似コードは次の通り。
Input:
G         // Gはノード{n}および経路{e}を備えた有向グラフ
F          // Fは経路eiを採点する採点関数
Output:
Garranged // GarrangedはΣを最大化するGの配置
F(ei)
Layout(G,F)
{
startNodes = nodes in G with the fewest incoming weights; 
startNotes. level = 0;
improved = true;
WHILE improved
improved = false;
FOR each node in G
IF node. level = x improves sum(F(ei))
node. level = x
improved = true
ENDIF 
END FOR 
END WHILE 
return(G);
}
【００５６】
上述の擬似コードで示したように、採点関数を用いて表示される経路の優先順位を制御できる。例えば、採点関数は次のように規定できる。
【００５７】
【数２】
2014535099.tif 000004
【００５８】
ここで、wlengthは、その開始ノードと終了ノードとのレベル差に基づいて経路eiに割り当てられる重みであり、wtrafficは、経路eiに沿ったトラフィック量にもとづいてこの経路に割り当てられる重みである。他の採点関数を用いて特定のトラフィック経路を強調したり、強調しないようにしてもよい。
【００５９】
例示的な処理回路を図6に記載したが、本明細書に記載した主題および機能動作は、他の種類のデジタル電子回路またはコンピュータソフトウェア、ファームウェアもしくは本明細書で開示された構造体およびその構造的等価物を含むハードウェアもしくはそれらの1つまたは複数の組合せで実装できる。
【００６０】
本明細書に記載した主題および動作は、デジタル電子回路またはコンピュータソフトウェア、ファームウェアもしくは本明細書で開示された構造体およびその構造的等価物を含むハードウェアまたはそれらの1つもしくは複数の組合せで実装できる。本明細書に記載した主題は、1つまたは複数のコンピュータプログラムとして、すなわち、データ処理装置による実行またはデータ処理装置の動作制御のためコンピュータ記憶媒体で符号化されたコンピュータプログラム命令の1つまたは複数のモジュールとして実装できる。代替的にまたは付加的に、これらプログラム命令は、データ処理装置により実行するため適切な受信装置への送信用に情報を符号化するため生成される、例えば機械生成電気、光学、または電磁気信号などの人工生成伝搬信号で符号化できる。コンピュータ格納媒体は、コンピュータ可読格納媒体、コンピュータ可読格納基板、ランダムまたはシリアルアクセス記憶装置アレイもしくはデバイス、またはそれらの1つもしくは複数の組合せとすることができ、あるいはそれらに含まれていてもよい。さらに、コンピュータ格納媒体は伝搬信号ではないが、コンピュータ格納媒体は、人工生成伝搬信号で符号化されたコンピュータプログラム命令の供給源または出力先となりうる。コンピュータ格納媒体は、1つもしくは複数の別個の物理的構成要素または媒体(例えば、複数のCD、ディスク、または他の記憶装置)とすることができ、またはそれらに含まれていてもよい。
【００６１】
本明細書に記載された動作は、1つまたは複数のコンピュータ可読格納装置に格納されたまたは他の供給源から受け取られたデータに対してデータ処理装置によって実行されうる動作として実現できる。
【００６２】
「データ処理装置」または「計算装置」という用語は、例示的には、プログラマブルプロセッサ、コンピュータ、チップ搭載システム、それらの複数または組合せを含む、データを処理するためのあらゆる種類の装置、デバイス、機械を包含する。こうした装置は、例えば、FPGA（書替え可能ゲートアレイ）又はASIC（特定用途向けIC）などの専用論理回路を含むことができる。さらに、この装置は、ハードウェアに加え、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、クロスプラットフォームのランタイム環境、仮想マシン、これらの1つまたは複数の組合せなどを構成するコードなど、当該コンピュータプログラムの実行環境を作成するコードを含むことができる。これら装置および実行環境は、ウェブサービス、分散形計算およびグリッドコンピューティング・インフラストラクチャなどの様々な異なる計算モデルインフラストラクチャを実現できる。
【００６３】
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとも呼ばれる)は、コンパイル済みもしくは解釈実行言語または宣言型もしくは手続き型言語を含む任意形式のプログラミング言語で書くことができ、こうしたプログラムは、独立型プログラムもしくはモジュール、構成要素、サブルーチン、オブジェクトまたは計算環境における使用に適した他の単位を含む任意形式で導入できる。コンピュータプログラムは、ファイルシステムのファイルに対応することがあるが、そうである必要はない。プログラムは、他のプログラムまたはデータ(例えば、マークアップ言語文書に格納された1つまたは複数のスクリプト)を保持するファイルの一部、このプログラム専用の単一ファイル、または多数の調整ファイル(例えば、1つまたは複数のモジュール、サブプログラム、またはコードの複数部分を格納するファイル)に格納できる。コンピュータプログラムは、単一のコンピュータまたは単一サイトに配置された複数のコンピュータもしくは複数サイトに分散されて通信ネットワークにより相互接続した複数のコンピュータで実行されるよう導入することもできる。
【００６４】
本明細書で説明したプロセスおよび論理フローは、入力データに作用しかつ出力を生成することによって動作を実行する1つまたは複数のコンピュータプログラムを実行する1つ又は複数のプログラマブルプロセッサにより実行できる。これらプロセスおよび論理フローは、例えば、FPGA（書替え可能ゲートアレイ）又はASIC（特定用途向けIC）などの専用論理回路により実行でき、装置も、FPGA又はASICなどの専用論理回路として実装できる。
【００６５】
コンピュータプログラムの実行に適したプロセッサは、例示目的だが、汎用および専用マイクロプロセッサならびに任意種類のデジタルコンピュータの1つ又は複数のプロセッサを含む。一般に、プロセッサは、読み取り専用メモリもしくはランダムアクセス記憶装置またはそれら両方から命令およびデータを受け取る。コンピュータの不可欠な要素は、命令に従って動作を実行するためのプロセッサと、命令およびデータを格納するための1つまたは複数の記憶装置とである。一般に、コンピュータは、例えば、磁気ディスク、光磁気ディスク、または光ディスクなどの1つまたは複数のデータ格納用の大容量記憶装置を含むか、それらからデータを受信または転送、ならびにその両方を行うため機能的に接続されている。しかし、コンピュータはそうした装置を備えている必要はない。さらに、コンピュータは、一部しか列挙しないが、例えば、携帯電話、個人情報端末(PAD)、携帯オーディオもしくはビデオプレーヤ、ゲームコンソール、全地球測位システム(GPS)受信機、または携帯用記憶装置(例えば、ユニバーサルシリアルバス(USB)フラッシュドライブ)などの別の装置に埋め込んでもよい。コンピュータプログラム命令およびデータを格納するのに適した装置は、例えば、EPROM、EEPROM、及びフラッシュメモリ装置などの半導体記憶装置、例えば、内部ハードディスク又はリムーバルブディスクなどの磁気ディスク、光磁気ディスク、ならびにCD-ROMおよびDVD-ROMディスクを含むあらゆる形式の不揮発性記憶装置、媒体および記憶装置を例えば含む。こうしたプロセッサ及びメモリは、専用論理回路により補足するかそれに組み込み可能である。
【００６６】
ユーザとのインタラクションを実現するため、本明細書に記載された主題の実施形態は、情報をユーザに表示するための、例えば、CRT(ブラウン管)またはLCD(液晶表示装置)モニタなどの表示装置と、ユーザがコンピュータに入力を与えるのに使用するキーボードと、例えばマウスやトラックボールなどのポインティングデバイスとを備えたコンピュータで実装できる。他の種類のデバイスを使ってもユーザとインタラクションを実現できる。例えば、ユーザに与えられるフィードバックは、視覚フィードバック、聴覚フィードバック、または触覚フィードバックなどの任意形式の感覚フィードバックでよく、ユーザからの入力は、音響、音声、または触覚入力を含む任意形式で受信できる。さらに、コンピュータは、例えば、ウェブブラウザから受信した要求に応答してウェブページをユーザのクライアント装置上のウェブブラウザに送るなど、ユーザが使用する装置との間で文書を送受信することでユーザとインタラクションできる。
【００６７】
本明細書に記載された主題は、データサーバなどのバックエンド構成要素を含んだ計算機システム、例えばアプリケーションサーバなどのミドルウェア構成要素を含んだ計算機システム、ユーザが本明細書に記載された主題の実装とインタラクションする手段となるグラフィカル・ユーザインタフェースもしくはウェブブラウザを備えたクライアントコンピュータなどのフロントエンド構成要素を含む計算機システム、または1つまたは複数のそうしたバックエンド、ミドルウェア、もしくはフロントエンド構成要素の任意組合せ含む計算機システムで実装できる。こうしたシステムの構成要素は、例えば通信ネットワークなどの任意形式または媒体のデジタルデータ通信により相互接続できる。通信ネットワークの例は、ローカルエリアネットワーク（「LAN」）、広域ネットワーク（「WAN」）、相互接続ネットワーク(例えば、インターネット)、およびピアツーピアネットワーク(例えば、アドホック・ピアツーピアネットワーク)を含む。
【００６８】
この計算機システムは、クライアントおよびサーバを含むことができる。クライアントとサーバは、概して互いから遠隔に位置し、典型的には通信ネットワークを介して相互作用する。クライアントとサーバの関係は、それぞれのコンピュータ上で実行されかつ互いにクライアント・サーバ関係を備えたコンピュータプログラムによって実現される。一実施形態では、サーバは、データ(例えば、HTMLページ)をクライアント装置に送信する(例えば、データをクライアント装置とインタラクションするユーザに表示し、ユーザからユーザ入力を受け取るため)。クライアント装置で生成されるデータ(例えば、ユーザインタラクションの結果)は、クライアント装置からサーバで受信できる。
【００６９】
本明細書は多くの特定の実施詳細を含むが、これらは本開示の範囲または請求項の限定と解釈されるべきでなく、特定の実装例の特定の実施形態に固有な特徴の記述と解釈すべきである。別々の実施形態の文脈で本明細書に記載された幾つかの特徴は、組み合わせることにより単一の実施形態でも実現可能である。反対に、単一の実施形態の文脈で記載された幾つかの特徴は、複数の実施形態で別々にまたは任意適切な部分的な組合せでも実現可能である。さらに、幾つかの特徴は、特定の組合せで動作するように上記で説明されかつ請求項にも当初そのように記載されているかもしれないが、請求項に記載の組合せからの1つまたは複数の特徴は、場合によってはこうした組合せから削除でき、さらに、この請求項に記載の組合せは、部分的組合せまたは部分的組合せの変形例に関するものとしてよい。
【００７０】
同様に、動作は図面では特定の順序で図示されているが、所望の結果を得るためには、こうした動作は、図示した特定の順序または連続した順序で実行する必要があると理解すべきではなく、またすべての例示的な動作が実行される必要があるとも理解すべきではない。一定の状況では、多重タスク処理および並列処理が有利となることがある。さらに、上述の実施形態における様々なシステム構成要素の分離は、すべての実施形態でそうした分離が必要であると理解すべきでなく、上述のプログラム構成要素およびシステムは概して、単一のソフトウェア製品に統合または多数のソフトウェア製品に実装できることを理解すべきである。
【００７１】
ここまで本主題の幾つかの実装例を説明してきた。他の実装例も次の請求項の範囲に入る。幾つかの場合では、請求項に記載の動作は、異なる順序で実行しても所望の結果を得ることができる。さらに、添付図面に示したプロセスは、所望の結果を得るために図示した順序や連続した順番で実行する必要があるわけではない。幾つかの実装例では、多重タスク処理および並列処理が有利となることがある。
【図１】
2014535099.tif 000005
【図２】
2014535099.tif 000006
【図３】
2014535099.tif 000007
【図４】
2014535099.tif 000008
【図５】
2014535099.tif 000009
【図６】
2014535099.tif 000010
【国際調査報告】
2014535099.tif 000011
2014535099.tif 000012