(57)【要約】本開示は、少なくとも１つのプログラムを格納するコンピュータ可読ストレージ媒体を含むシステムと、高容量のストリーミングデータのインタラクティブな可視化をレンダリングするための方法とを含む。複数のイベントを記述するストリーミングデータはメモリ中にロードされる。ストリーミングデータは、イベント毎の発信元位置及び宛先位置を指定する地理空間データを含む。イベントを表す視覚的メタファは、スライディングタイムウィンドウ全体を通じて視覚的メタファに沿った各点の空間的位置及び不透明度を視覚的メタファ毎に定義する可視化数理モデルを使用してレンダリングされる。【選択図】図２
2019535066.tif 000002
【特許請求の範囲】
【請求項１】
機械の１つ以上のプロセッサと、
前記１つ以上のプロセッサにより実行される場合に、
複数のイベントを記述するストリーミングデータであって、前記複数のイベント中の各イベントに対応する発信元位置及び宛先位置を識別する地理空間データを含む前記ストリーミングデータをメモリ中にロードすることと、
前記複数のイベントからのイベントを各視覚的メタファが表す、マップ上の複数の視覚的メタファを、スライディングタイムウィンドウ全体を通じて視覚的メタファ上の各点の空間的位置及び不透明度を視覚的メタファ毎に定義する可視化数理モデルを使用してディスプレイ上にレンダリングすることと
を含む動作を前記機械に実施させる情報を格納する機械可読ストレージ媒体と
を含む、システム。
【請求項２】
前記複数の視覚的メタファの内の少なくとも１つをレンダリングすることは、
前記マップ上の前記発信元位置及び前記宛先位置を接続する円弧の点を補間することと、
前記発信元位置と前記宛先位置との間の距離に基づいて、前記円弧に曲率制御を適用することと
を含む、請求項１に記載のシステム。
【請求項３】
前記複数の視覚的メタファの内の前記少なくとも１つをレンダリングすることは、前記円弧の部分の不透明度を変更することによって、前記発信元位置から前記宛先位置までの前記円弧の移動をアニメーション化することを更に含む、請求項２に記載のシステム。
【請求項４】
各イベントはタイムスタンプと関連付けられ、
前記スライディングタイムウィンドウの時間範囲は下界及び上界を含み、
前記動作は、前記スライディングタイムウィンドウの前記上界との直近のタイムスタンプの比較に基づいて、前記スライディングタイムウィンドウを調節することを更に含む、請求項１に記載のシステム。
【請求項５】
前記スライディングタイムウィンドウを調節することは、前記スライディングタイムウィンドウの前記上界が前記タイムスタンプよりも古いことに基づいて、前記スライディングタイムウィンドウの変化率を増加させることを含む、請求項４に記載のシステム。
【請求項６】
前記スライディングタイムウィンドウに渡って前記複数の視覚的メタファからの視覚的メタファの不透明度を徐々に減少させることを更に含む、請求項１に記載のシステム。
【請求項７】
前記視覚的メタファが透明になる結果をもたらす前記視覚的メタファの前記不透明度の減少に応じて、前記視覚的メタファに対応するデータを前記メモリから一掃することを更に含む、請求項６に記載のシステム。
【請求項８】
前記システムは、
前記メモリに対応するグラフィカル処理ユニット（ＧＰＵ）キャッシュと、
中央処理装置（ＣＰＵ）キャッシュと
を更に含み、前記動作は、
前記ストリーミングデータをデータ発信元から取得することと、
前記ストリーミングデータを前記ＣＰＵキャッシュ中にロードすることと、
前記ＧＰＵキャッシュからデータが一掃されることに応じて、前記ストリーミングデータを前記ＣＰＵキャッシュから検索することと
を更に含む、請求項１に記載のシステム。
【請求項９】
前記可視化数理モデルは、前記発信元位置と前記宛先位置との間の円弧上の点を補間する第１の要素を含む、請求項１に記載のシステム。
【請求項１０】
前記可視化数理モデルは、前記発信元位置と前記宛先位置との間の距離に基づいて前記円弧に曲率制御を適用する第２の要素を含む、請求項９に記載のシステム。
【請求項１１】
前記可視化数理モデルは、前記スライディングタイムウィンドウに渡って前記円弧上の前記点の不透明度を変更することによって、前記円弧中にアニメーションを導入する第３の要素を含む、請求項１０に記載のシステム。
【請求項１２】
前記可視化数理モデルは、対応するイベントと関連付けられたタイムスタンプから判定される前記円弧の寿命に基づいて、前記円弧の不透明度を減少させる第４の要素を含む、請求項１１に記載のシステム。
【請求項１３】
前記複数の視覚的メタファは、空間適応的円弧アニメーション、散布図、又は地理ベースの棒グラフの内の少なくとも１つを含む、請求項１に記載のシステム。
【請求項１４】
複数のイベントを記述するストリーミングデータであって、前記複数のイベント中の各イベントに対応する発信元位置及び宛先位置を識別する地理空間データを含む前記ストリーミングデータをメモリ中にロードすることと、
前記複数のイベントからのイベントを各視覚的メタファが表す、マップ上の複数の視覚的メタファを、スライディングタイムウィンドウ全体を通じて視覚的メタファ上の各点の空間的位置及び不透明度を視覚的メタファ毎に定義する可視化数理モデルを使用してディスプレイ上にレンダリングすることと
を含む、プロセッサに実装される方法。
【請求項１５】
前記複数の視覚的メタファの内の少なくとも１つをレンダリングすることは、
前記マップ上の前記発信元位置及び前記宛先位置を接続する円弧の点を補間することと、
前記発信元位置と前記宛先位置との間の距離に基づいて、前記円弧に曲率制御を適用することと、
前記発信元位置から前記宛先位置までの前記円弧の移動をアニメーション化することと、
前記円弧の不透明度を徐々に減少させることと
を含む、請求項１４に記載の方法。
【請求項１６】
前記円弧に前記曲率制御を適用することは、前記発信元位置と前記宛先位置との間の前記距離に基づいて、前記円弧に対する最大の高さを判定することを含む、請求項１５に記載の方法。
【請求項１７】
前記円弧の前記移動をアニメーション化することは、
前記円弧の区域であって、前記発信元位置に最初に設置された前記区域の不透明度を増加させることと、
前記円弧の残りの区域の不透明度を維持しつつ、前記発信元位置から前記宛先位置まで、不透明度を増加させた前記区域を徐々に移動させることと
を含む、請求項１５に記載の方法。
【請求項１８】
前記円弧の前記不透明度を減少させることは、前記スライディングタイムウィンドウの
経過後に前記円弧が透明になる結果をもたらす、請求項１５に記載の方法。
【請求項１９】
前記円弧が透明になることに応じて、前記円弧に対応するデータを前記メモリから一掃することを更に含む、請求項１８に記載の方法。
【請求項２０】
機械の１つ以上のプロセッサにより実行される場合に、
複数のイベントを記述するストリーミングデータであって、前記複数のイベント中の各イベントに対応する発信元位置及び宛先位置を識別する地理空間データを含む前記ストリーミングデータをメモリ中にロードすることと、
前記複数のイベントからのイベントを各視覚的メタファが表す、マップ上の複数の視覚的メタファを、スライディングタイムウィンドウ全体を通じて視覚的メタファ上の各点の空間的位置及び不透明度を視覚的メタファ毎に定義する可視化数理モデルを使用してディスプレイ上にレンダリングすることであって、前記複数の視覚的メタファの内の少なくとも１つをレンダリングすることは、
前記マップ上の前記発信元位置及び前記宛先位置を接続する円弧の点を補間することと、
前記発信元位置と前記宛先位置との間の距離に基づいて、前記円弧に曲率制御を適用することと、
前記発信元位置から前記宛先位置までの前記円弧の移動をアニメーション化することと、
前記円弧の不透明度を徐々に減少させることと
を含むことと
を含む動作を前記機械に実施させる命令を具体化する機械可読ストレージ媒体。
【請求項２１】
機械の１つ以上のプロセッサにより実行される場合に、請求項１４〜１９の何れか一項に記載の方法を前記機械に実行させる命令を搬送する機械可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
[優先権の主張]
本願は、２０１６年９月１９日出願の名称が“ＩＮＴＥＲＡＣＴＩＶＥ  ＲＥＡＬ−ＴＩＭＥ  ＶＩＳＵＡＬＩＺＡＴＩＯＮ  ＳＹＳＴＥＭ  ＦＯＲ  ＬＡＲＧＥ−ＳＣＡＬＥ
ＳＴＲＥＡＭＩＮＧ  ＤＡＴＡ”である米国仮特許出願番号６２／３９６,６３２の優先権を主張する２０１７年９月１８日出願の名称が“ＩＮＴＥＲＡＣＴＩＶＥ  ＲＥＡＬ−ＴＩＭＥ  ＶＩＳＵＡＬＩＺＡＴＩＯＮ  ＳＹＳＴＥＭ  ＦＯＲ  ＬＡＲＧＥ−ＳＣＡＬＥ  ＳＴＲＥＡＭＩＮＧ  ＤＡＴＡ”である米国特許出願番号１５／７０７,５２９の出願の優先権を主張し、それらは、参照によりそれらの全体が本明細書に組み込まれる。
【０００２】
本開示は、概して、専用機のコンピュータ化した変形とそうした変形への改善とを含む可視化（visualization）を生成及びレンダリングする専用機の技術分野、並びに可視化を生成及びレンダリングする他の専用機と比較してそうした専用機が改善される技術で構成された機械に関する。具体的には、本開示は、イタラクティブリアルタイム可視化システム及び大規模なストリーミングデータのための方法を扱う。
【背景技術】
【０００３】
高容量のライブデータストリームを分析し、それをエンドユーザのデバイス上でインタラクティブな速度で可視化するための計算資源に関して、現在、非常にコストがかかる。このことは、効率的な分析と複合データの可視化とを多くの決定が頼りにしているような、ビッグデータの時代では特に真実である。実際、リアルタイムで且つ大規模にデータを処理及び可視化することは些細なことではない。
【０００４】
高容量のデータを可視化するための従来のプリロード−格納−プロットの手法は、大量のデータの入出力遅延に苦しみ、それらの最善の状態でも、これらの手法は、準リアルタイムな性能を提供するにすぎない。更に、可視化へのフロントエンドの手法は、データポイントの量が大きくなりすぎると、あっけなく圧倒され得る。例えば、今日の可視化ライブラリ（例えば、Ｄ３．ｊｓ）は、プログラムが容易であり、表現力が豊かであるが、それらは、数万（を超える）の要素に拡大できない。レベルオブディテール（Level-Of-Detail）スケーリング等の解決法が以前から存在しているが、これは、リンクされた複数のビューを表示する能力をユーザが有する場合に遭遇する性能問題をほとんど緩和しない。
【図面の簡単な説明】
【０００５】
添付の図面の様々なものは、本開示の例示的な実施形態を図示するにすぎず、それを限定するものとみなされ得ない。
【０００６】
【図１】例示的実施形態に従った可視化システムを図示するシステム図である。
【図２】例示的実施形態に従った可視化システムの一部として提供されるレンダリングエンジンの機能的コンポーネントを説明するブロック図である。
【図３】例示的実施形態に従った円弧上の点の補間を説明する図である。
【図４】例示的実施形態に従った円弧上のｉ番目の点の補間を説明する図である。
【図５Ａ】例示的実施形態に従った、曲線に沿ったパラメータ表記されたアーチ状のハイライトアニメーションを説明する図である。
【図５Ｂ】例示的実施形態に従った、曲線に沿ったパラメータ表記されたアーチ状のハイライトアニメーションを説明する図である。
【図６】例示的実施形態に従った、視覚的メタファをレンダリングするための方法を実施する可視化システムの例示的動作を説明するフローチャートである。
【図７】例示的実施形態に従った、視覚的メタファをレンダリングするための方法を実施する可視化システムの例示的動作を説明するフローチャートである。
【図８】例示的実施形態に従った、視覚的メタファをレンダリングするための方法を実施する可視化システムの例示的動作を説明するフローチャートである。
【図９】例示的実施形態に従った可視化システムにより提供されるユーザインタフェースの側面を説明する。
【図１０】例示的実施形態に従った可視化システムにより提供されるユーザインタフェースの側面を説明する。
【図１１】例示的実施形態に従った可視化システムにより提供されるユーザインタフェースの側面を説明する。
【図１２】例示的実施形態に従った可視化システムにより提供されるユーザインタフェースの側面を説明する。
【図１３】例示的実施形態に従った可視化システムにより提供されるユーザインタフェースの側面を説明する。
【図１４】例示的実施形態に従った可視化システムにより提供されるユーザインタフェースの側面を説明する。
【図１５】例示的実施形態に従った可視化システムにより提供されるユーザインタフェースの側面を説明する。
【図１６】例示的実施形態に従った可視化システムが展開されるネットワーク環境を説明するネットワーク図である。
【図１７】本明細書の様々なハードウェアアーキテクチャと組み合わせて使用され得る代表的なソフトウェアアーキテクチャを説明するブロック図である。
【図１８】機械可読媒体からの命令を読み出し、本明細書で論じられる方法論の何れかを実施することができる、幾つかの例示的実施形態に従った機械のコンポーネントを説明するブロック図である。
【発明を実施するための形態】
【０００７】
発明の主題を実行するための具体的な例示的実施形態が詳細にここで言及されるであろう。これらの具体的な実施形態の例は、添付の図面中に説明される。これらの例は、説明される実施形態に請求項の範囲を限定する意図がないことは理解されるであろう。それどころか、それらは、開示の範囲内に含まれ得るような代替物、変形物、及び均等物をカバーすることを意図する。以下の記述において、主題の理解を通じて提供するために具体的詳細が記載される。実施形態は、これらの具体的詳細の幾つか又は全てなしに実施され得る。
【０００８】
本開示の側面は、イベントデータの空間的一時的分散を理解するために、及び様々なスケールレベルでの（例えば、地域的、国的、又は地球的）挙動を理解するために、多次元の空間中でジオタグ付きのイベントデータ（例えば、取引データ）にユーザがインタラクティブにアクセスすることを可能にする可視化システムを含む。そうした可視化システムは、広報、ブランディングのためのストーリの生成を支援する特定のアプリケーションを発見し得、ソーシャルネットワークの投稿用等の大規模ストリーミングデータに関する通信と協働し得る。
【０００９】
一例として、より深い洞察を提供するために、可視化システムは、マルチスクリーン表示システム中に表示するためのリンクされた複数のビューを提供するように構成され得る。例えば、マルチスクリーン表示システムは、回転する３次元（３Ｄ）仮想地球の外観を表示するように大きなセンタスクリーンが構成され得、平面な世界地図と共に該地球の異なる領域のズームインビューを表示するようにサイドスクリーンが構成され得るように、構成され得る。代替的な例として、可視化システムは、ＶＲ空間中の可視化をユーザが眺め、該可視化とインタラクティブすることを可能にする、ＶＲヘッドセット等の仮想現実
（ＶＲ）システムと統合され得る。マルチスクリーン表示及びＶＲシステムに加えて、可視化システムは、３Ｄ仮想地球又は３Ｄ平面世界図をユーザがそれらの手振りで直接操縦することが可能なモーション入力デバイスと統合され得る。
【００１０】
図１を参照すると、例示的実施形態に従って可視化システム１００が説明される。示されるように、可視化システム１００は、バックエンドデータ処理コンポーネント１０２、フロントエンド可視化コンポーネント１０４、インタラクションコンポーネント１０６、及び分析コンポーネント１０８を含む。関連するコンピュータ技術の当業者により理解されるように、図１に説明されるこれらの機能的コンポーネントは、実行可能なソフトウェア命令と、該命令を実行するための対応するハードウェア(例えば、メモリ及びプロセッサ)のセットを表す。更に、図１に図示される様々な機能的コンポーネントは、単一の機械（例えば、サーバ若しくはラップトップ）上に存在し得、又はクラウドベースのアーキテクチャ等の様々な配置中の幾つかのコンピュータに渡って分散され得る。更に、図１の機能的コンポーネントが唯一つの意味で論じられつつ、他の実施形態では、該コンポーネントの内の１つ以上の複数の実例が用いられてもよいことは認められるであろう。
【００１１】
バックエンドデータ処理コンポーネント１０２は、到来するデータ発信元（data source）１１０からのライブストリーミングデータを処理することを担当する。バックエンドデータ処理コンポーネント１０２は、ライブストリーミングデータが生成されるとそれを処理する。フロントエンド可視化コンポーネント１０４は、例えば、ユーザ指定の制約に基づいて、バックエンドデータ処理コンポーネント１０２からのデータのサブセットを表示する。インタラクションコンポーネント１０６は、フロントエンド可視化コンポーネント１０４とのユーザインタラクションを処理する。分析コンポーネント１０８は、ユーザの選択及びフィルタを判定し、フロントエンド可視化コンポーネント１０４からの出力を制御するための対応する規則をその後適用する。フィルタリングの一例として、分析コンポーネント１０８は、ある一定のカテゴリ（例えば、製品のカテゴリ）の取引のみが可視化され得るように、カテゴリに基づいて情報をフィルタリングする能力をユーザに提供し得る。
【００１２】
高容量のライブデータストリームを効果的に扱うために、可視化システム１００は、データ格納として分散メッセージングシステム１１２を用い、データの無限のストリームを確実に処理するために分散リアルタイム計算システム１１４を利用する。更に、大量の情報をプロットするようにフロントエンド可視化コンポーネント１０４の性能を拡大するために、フロントエンド可視化コンポーネント１０４は、クライアント１１８の表示デバイス上に可視化をレンダリングするレンダリングエンジン１１６を含む。可視化がレンダリングされるクライアント１１８は、例えば、ウェブブラウザを実行する計算機（例えば、パーソナルコンピュータ若しくはラップトップ）、可視化システム１００と通信するように構成されたアプリケーションを実行するモバイルデバイス（例えば、スマートフォン）、ＶＲヘッドセットディスプレイ、又はそれらの任意の組み合わせに対応し得る。
【００１３】
レンダリングエンジン１１６は、ローカルグラフィックス処理ユニット（ＧＰＵ）１２０（例えば、クライアント１１８のＧＰＵ）の計算資源を利用することによって可視化性能を改善及び強化するために、柔軟で一時的な地理空間の可視化フレームワークを用いる。この方法では、レンダリングエンジン１１６は、ネイティブのドキュメントオブジェクトモデル（ＤＯＭ）レンダリングに基づく手法等の典型的な手法よりも速い規模でデータをプロットし得る。
【００１４】
可視化システム１００は、キュレーションされたデータをフロントエンド可視化コンポーネント１０４に提供し、バックエンドデータ処理コンポーネント１０２に対して追加の保護レイヤを提供するように、フロントエンド可視化コンポーネント１０４とリアルタイ
ム計算コンポーネント１１４との間でサービス提供するための１つ以上のデータキュレーションサーバ１２２を含むイベント駆動型の非ブロッキング入出力ルーチンモデルを含む。ロードバランサ１２４は、１つ以上のデータキュレーションサーバ１２２と、可視化コンポーネント１０４を含む複数の可視化コンポーネントとの間の接続を分配する。
【００１５】
＜レンダリングエンジン＞
上述したように、レンダリングエンジン１１６は、大量（例えば、数百万）の幾何プリミティブを容易にプロットするためにレンダリング速度を（例えば、毎秒６０フレームに）加速するためにローカルＧＰＵ１２０を利用する。ＤＯＭ及びスケーラブルベクターグラフィックス（ＳＶＧ）ベースの技術を使用する従来の方法は、ディスプレイ上にレンダリングする前に中間ＨＴＭＬをまず生成する。そうした手法は、点又は線のような高容量の幾何プリミティブでは満足に対応せず、ＨＴＭＬファイルのサイズを拡張し得、クライアントブラウザ上の著しい性能低下を引き起こす。対照的に、レンダリングエンジン１１６は、僅かなオーバヘッドと共に（例えば、ＷｅｂＧＬにより晒された）低レベルのＡＰＩを使用し、レンダリング結果は、中間ＳＶＧ要素を作り出すことなく。キャンバス要素上に直接描かれる。
【００１６】
図２を参照すると、レンダリングエンジン１１６の機能的コンポーネントが例示的実施形態に従って示される。図２に説明されるレンダリングエンジン１１６の機能的コンポーネントは、ハードウェア、ソフトウェア、又はそれら両方の様々な組み合わせ（例えば、メモリ及びプロセッサ）を表し得る。
【００１７】
レンダリングエンジン１１６は、動的で大規模なリアルタイムのストリーミングイベントを様々な視覚的メタファ中に可視化できる。そうした視覚的メタファは、３Ｄ仮想地球上又は２次元（２Ｄ）平面地図上の何れかの、空間適応的円弧アニメーション、散布図、及び地理ベースの棒グラフを含む。レンダリングエンジン１１６は、３Ｄ球面投影と２Ｄ平面投影法の間の円滑な遷移を提供し、それにより、ジオロケーション寸法を有するリアルタイムのストリーミングイベントを可視化するための最大限の柔軟性をユーザに提供する。上述のように、レンダリングエンジン１１６は、ウェブブラウザを実行する計算機（例えば、パーソナルコンピュータ若しくはラップトップ）、可視化システム１００と通信するように構成されたアプリケーションを実行するモバイルデバイス（例えば、スマートフォン）、ＶＲヘッドセットディスプレイ、又はそれらの任意の組み合わせ等のクライアントデバイスのディスプレイ上に、そうした視覚的メタファをレンダリングし得る。
【００１８】
図２に示されるように、レンダリングエンジン１１６は、動的メモリ管理コンポーネント２０２及び適応的ジッタ安定化コンポーネント２０４を含む。動的メモリ管理コンポーネント２０２は、レンダリング品質を犠牲にすることなく、総データ量を管理可能なサイズに維持するように、入力／出力する新たな／古いデータの交換を扱うように構成される。示されるように、データ発信元１１０からバックエンドデータ処理コンポーネント１０２により取得されたライブストリーミングデータは、それが動的メモリ管理コンポーネント２０２によりフェッチされてＧＰＵメモリ２０８（例えば、ＧＰＵキャッシュ）中にロードされる、中央処理装置（ＣＰＵ）メモリ２０６（例えば、ＣＰＵキャッシュ）中にロードされる。以下で更に詳細に論じられるように、動的メモリ管理コンポーネント２０２は、ストリーミングデータの複数のバッチに渡ってシームレスな遷移を実現するために、ＧＰＵメモリ２０８からの古い出力データをいつ交換するかを決定するための数理モデルを使用し、ここで、ストリーミングデータの各バッチは、複数のデータパケットを含み得る。また、動的メモリ管理コンポーネント２０２は、直近に到来したデータパケットのタイムスタンプ２１０を適応的ジッタ安定化コンポーネント２０４に提供する。
【００１９】
適応的ジッタ安定化コンポーネント２０４を参照すると、ジッタは、仮定的周期信号の
真の周期からの不要な偏差を含む。ジッタは、ネットワークトラフィックの変動、パケットの喪失及び再送、又はバックエンドのデータ計算資源の変化に起因してライブストリーミングデータに非常に共通する。全体として、ジッタは、リアルタイムストリーミングデータの規則的な流動パターンを破壊し、リアルタイムなパケット到来の不規則な遅延、又は更に悪いことに、順序外の到来（例えば、新たなパケットが到来した後に古いパケットが到来する）を引き起こす。ジッタなしに、直近のデータパケット中のタイムスタンプ２１０は、アニメーションの進捗を制御するために使用され得る。ただし、ジッタの存在に起因して、ジッタリングした元のストリーミングデータのタイムスタンプ２１０を可視化において直接使用することは、ユーザの混乱を招く。このことは、アニメーション化された空間適応的円弧の可視化に特に当てはまる。例えば、最悪の場合、アニメーション化された円弧ファイルは、ブーメランのように行ったり来たりする。
【００２０】
前述の問題を補間するために、適応的ジッタ安定化コンポーネント２０４は、スライディングタイムウィンドウ２１２を更新するための変化率を決定するために、直近のデータパケットのタイムスタンプ２１０とアニメーションのスライディングタイムウィンドウ２１２との間のデルタを計算する。スライディングタイムウィンドウ２１２は、上界及び下界を含む。説明の目的のため、時間ｔにおいてデータパケットが到来するエポックなタイムスタンプをＴｐ（ｔ）であるとする。更に、ＴＷ（ｔ）＝（Ｔｍｉｎ（ｔ）,Ｔｍａｘ（ｔ））は、アニメーションの進捗を制御するスライディングタイムウィンドウを意味するとし、ここで、Ｔｍｉｎ（ｔ）は下界であり、Ｔｍａｘ（ｔ）は上界であり、｜Ｔｍｉｎ（ｔ）  −  Ｔｍａｘ（ｔ）｜は一定である。現在のキーフレームにおけるＴＷ（ｔ）の変化率は、以下の一次常微分式（以後“定式１”と称する）によって統制される。
【数１】
2019535066.tif 000003
ここで、ωは最小の定数係数であり、ｈは、通常、｜Ｔｍｉｎ（ｔ）  −  Ｔｍａｘ（ｔ）｜の内のごく一部であるステップサイズである。定式１は、例えば、オイラーステップ法により解かれ得る。定式１に照らして、スライディングウィンドウの変化率は、直近データのタイムスタンプとスライディングタイムウィンドウの上界との間の差に依存する。該データのタイムスタンプがスライディングタイムウィンドウの上界よりも古い（Ｔｐ（ｔ）＜Ｔｍａｘ（ｔ））場合、定式１は、タイムウィンドウが前進することを停止させる。これは、古いデータパケットが、それが到来すべきよりも遅く到来するジッタ状態である。一方、スライディングタイムウィンドウがあまりにゆっくりと移動し、直近のタイムスタンプがスライディングタイムウィンドウの上界よりも新しい（Ｔｐ（ｔ）＞Ｔｍａｘ（ｔ））場合、タイムウィンドウの変化率は維持され又は増加する。要約すると、何れの場合でも、定式１は、Ｔｐ（ｔ）及びＴｍａｘ（ｔ）を、それらが一致するように均衡させるであろう。
【００２１】
＜可視化数理モデル＞
レンダリングエンジン１１６は、リアルタイムのストリーミングイベントの各発生を表す、アニメーション化された空間適応的円弧等の視覚的メタファを成形するための数理モデルを利用する。そうしたイベントは、少なくとも地理空間の一時的な情報を有する高次元性を標準的な特徴とする。レンダリングエンジン１１６は、例えば、進展するデータのよりよいメンタルモデルを人的分析者が実現するのを助力し得る、イベントの別々の複数の大部分を通じて円滑な遷移を提供する。
【００２２】
幾つかの実施形態では、レンダリングエンジン１１６は、各リアルタイムイベントを表すために、３Ｄ地球の周囲に又は２Ｄ平面世界地図上にプロットされる、柔軟にアニメーション化される空間適応的円弧を使用する。例えば、リアルタイムイベントは、購入者と販売者との間の取引に対応し得、レンダリングエンジン１１６は、取引がリアルタイムで発生すると、販売者の位置を購入者の位置に接続する湾曲した円弧を明確に描き得る。レンダリングエンジン１１６により用いられる可視化数理モデルの要素の内訳を以下に提示する。
【００２３】
＜球面上の２つの終点間の円弧の生成＞
図３を参照すると、ｐｉ,０及びｐｉ，１は、ｉ番目の円弧の最初の点及び最後の点であるとし、ｋは０≦ｋ≦１のパラメータであるとする。円弧上の任意の点を定義する幾何学定式は、以下によりその後与えられる（以後、“定式２”と称する）。
【数２】
2019535066.tif 000004
ここで、Φｉは、図３に示されるように、ｉ番目の円弧に対する角度として計算される。そうしたモデルは、２つの終点間の円弧上の点を円滑に補間する。
【００２４】
＜円弧への適応曲率制御の導入＞
上述した定式２を更に拡張するために、球体の表面上に相互に近接する一組の点が更に離れた一組の点を接続する円弧よりも平坦に見える円弧を生成するように、適応的曲率制御が組み込まれ得る。例えば、１）円弧のより視覚的な相違を提供すること、２）このモデルでは、より長い円弧は、より短い円弧よりも高い高度を有する傾向があり、それ故、より短い円弧から自身を分離するので、視覚的混乱を削減すること、３）それらの終点間の距離によって円弧を自然に集団化し、一組の突出した可視的パターンを形成すること、及び４）より長い円弧が仮想３Ｄ地球により塞がれることを緩和することを含む、円弧の数が非常に多い場合に適応的曲率制御を組み込むことの幾つかの利点がある。
【００２５】
新たな円弧上の任意の点を定義する幾何学定式は、以下によりその後与えられる（以後、“定式３”）。
【数３】
2019535066.tif 000005
ここで、最大の高さｈｉ，ｍａｘは、円弧の曲率を判定し、ｈｉ，ｍａｘ＝λΦｉとして定義され、ここで、０≦λ≦１は、全ての円弧に適用するユーザ選択のグローバル定数係数である。具体的には、λ＝０であると、定式３は定式２に変質する。一例として、定式３の適用の結果は図４に説明される。
【００２６】
＜円弧へのアニメーションの導入＞
最後の２つのモデルに基づくと、始点（発信元）と終点（宛先）との識別が困難である。この問題に対処するために、発信元点から宛先点までの飛行ハイライトを示すことによって、円弧中にアニメーションが導入される。飛行ハイライトは、円弧の残部の不透明度が弱められながら、高い不透明度を有する円弧の小さな区域である。如何なる区域がより高い不透明度を有するかを変更することによって、レンダリングエンジン１１６は、飛行する円弧の精神的印象を観察者に与えるアニメーションを生成し得る。異なる色、形状、
又はラベル等、発信元及び宛先の点を表すためのその他の視覚的メタファを用いることが可能であるが、円弧を使用する利点は、１）観察者は、２つの終点間の違いを視覚的に比較することなく、発信元点及び宛先点の見当を直ちにつけることができること（このことは、仮想地球の他の側面上に１つ又は２つの終点がある場合に特に当てはまる）、及び２）対象物の移動により敏感である人間の目との、よりよい見栄えと適合とを実現することである。
【００２７】
このモデル中のｉ番目の円弧に沿った不透明度の分布は、上で論じられたスライディングタイムウィンドウによりピーク位置が制御されるガウス関数（以後、“定式４”）によって定式化される。
【数４】
2019535066.tif 000006
ここで、パラメータｔｉはｉ番目のイベントのエポックなタイムスタンプである。α及びβは、調節可能な定数係数である。ｋは定式３中のものと同じパラメータである。τは、始点ｐｉ，０に関連する円弧上のハイライトの位置を制御するための０≦τ≦１の新たなパラメータである。例えば、τ＝０である場合、ＯＰ（ｋ，０）は、ｐｉ，０に対応するｔ＝０において最大を実現する。同様に、τ＝１である場合、ＯＰ（ｋ，１）は、ｐｉ，１であるｋ＝１において最大を実現する。結果として、τが０から１まで行くと、ハイライトの部分は、始点（例えば、発信元位置）から終点（例えば、宛先位置）まで移動する。定数係数ｃは、ｋ＞ｃ＋τである円弧の位置に対して透明度が単純にゼロに落ちるように、小さな閾値である。
【００２８】
図５Ａ及び図５Ｂは、定式４の適用の実例を提供する。図５Ａを参照すると、破線の矢印は、τが０から１まで増加するハイライトの移動方向を指し示す。該破線の矢よりも下のパルス関数は、定式４により定義される、円弧に沿った不透明度の分布である。図５Ｂを参照すると、図５Ａと同様の例が説明されるが、τがより高い値に増加するにつれて、ハイライトは、宛先点ｐｉ,１により近接して移動させられる。
【００２９】
＜円弧保持の組み込み＞
レンダリングエンジン１１６は、痛烈な視覚的混乱を引き起こす、ディスプレイ上の（古いイベントを表す）古い円弧を無期限に維持することを回避するように構成される。更に、動的メモリ管理コンポーネント２０２は、新たなデータのためにＣＰＵ及びＧＰＵメモリの両者をクリアにすることを担当する。これらの目的のため、定式４は、古いデータをメモリから一掃させるデータ保持手法を用いて更に改善される。ただし、古いデータを直接廃棄することは、ディスプレイからの一組の円弧の突然の消失等、不快な視覚的遺物を生じさせ得る。該問題に対処するために、レンダリングエンジン１１６は、対応するイベントと関連付けられたタイムスタンプから判定されるような円弧の寿命に基づいて、各円弧の不透明度を徐々に減少させるための一時的減衰因子を用いる。一旦、円弧が完全に透明になると、その対応するデータは、メモリからその後一掃される。以下の定式（以後、“定式５”と称する）は、フェードアウト効果を円滑に制御するために分析的に使用される。
【数５】
2019535066.tif 000007
【００３０】
定式５において、定式４中のものと同じスライディングタイムウィンドウが適用される。パラメータｔｉは、ｉ番目のイベントのエポックなタイムスタンプである。γ及びσは、減衰率、言い換えれば、円弧の存続を如何なる間望むかを判定する調節可能な定数係数である。
【００３１】
＜空間的一時的不透明度の制御＞
最後に、飛行する円弧アニメーションとフェードアウト効果との両方を制御するための統一モデルを確立するために、定式４及び定式５は、融合され得、以下の定式（以後、“定式６”）中に組み込まれ得る。
【数６】
2019535066.tif 000008
【００３２】
全体として、定式６及び定式３は、時間ｔｉで生じたｉ番目のリアルタイムイベントを表すための視覚的メタファとして使用される時変で空間適応的な円弧を定義する。この円弧に沿ってｋによりパラメータ表記された任意の点に対して、定式３によってその空間的位置が与えられ、定式５によってその不透明度が計算される。アニメーション全体及びフェードアウト効果の通し時間を駆動する変数は、スライディングタイムウィンドウ（Ｔｍｉｎ（ｔ），Ｔｍａｘ（ｔ））である。
【００３３】
＜パラメータ最適化＞
幾つかの場合、視覚的メタファの一時的不透明度は、発信元点ｐｉ，０から宛先点ｐｉ，１までをアニメーション化されたハイライトが飛行するのに十分な時間を与えるには減衰が速すぎることがある。アニメーション化されたハイライトが宛先点に到達した後暫くの間、各円弧が留まることを確認するために、円弧が早期にフェードアウトすることを防ぐための以下の式が利用され得る。
【数７】
2019535066.tif 000009
【００３４】
示されるように、円弧のハイライトが宛先点に到達する前の長期間、該円弧を視覚可能に維持するのに十分に、定式５中のガウス関数を平坦化するために、定式５中のようなパ
ラメータσは、スライディングウィンドウのサイズの半分以上であるべきである。
【００３５】
また、幾つかの実施形態では、可視化システム１００により用いられる円弧モデル化技術は、フォースダイレクテッドエッジバンドリング（Force-Directed Edge Bundling）等のエッジバンドリング技術及び／又はカーネル密度推定によるバンドリングを用いて強化され得る。この種の技術は、視覚的混乱問題を更に改善し得、高レベルのエッジ及び円弧のパターンを潜在的に明らかにし得る。この技術の例は、図１５中に説明される。
【００３６】
上述した数理モデルの利用を通じて、レンダリングエンジン１１６は、履歴データを再生することに加えて、ライブリアルタイムイベントデータの円滑な遷移と効果的なレンダリングとを扱い得る。このことは、早送りの仕方で履歴データを観察し、数分程度で一日又は一週間のデータをプレイバックすることに関心がある分析者に特に役立つことを示し得る。
【００３７】
図６〜図８は、例示的実施形態に従った、視覚的メタファをレンダリングするための方法６００を実施中の可視化システム１００の例示的動作を説明するフローチャートである。方法６００の動作が計算機により実施され得るように、方法６００は、ハードウェアコンポーネント（例えば、プロセッサ）による実行用のコンピュータ可読命令中に具体化されてもよい。具体的には、方法６００の動作は、可視化システム１００を形成する機能的コンポーネントによって一部又は全体が実施され得、それに応じて、方法６００は、それを参照する例として以下に記述される。しかしながら、方法６００は、その他の様々なハードウェア構成で展開され得、可視化システム１００に限定されることを意図しないと認められるであろう。
【００３８】
動作６０５において、バックエンドデータ処理コンポーネント１０２は、ライブストリーミングデータをデータ発信元１１０から取得する。ライブストリーミングデータは１つ以上のデータパケットを含み、各データバケットはイベントを記述する。各データパケットは、イベントに対応するタイムスタンプ２１０と、発信元位置及び宛先位置を識別する地理空間データとを含む。データ発信元１１０は、例えば、１つ以上の商取引関連のアプリケーションをホストするネットワークベースの商取引プラットフォームのサーバを含み得、又は該サーバに対応し得る。この例では、イベントは、発信元位置が販売者の位置に対応し、宛先位置が購入者の位置に対応するネットワークベースの商取引プラットフォーム上で生じる取引に対応し得る。
【００３９】
ライブストリーミングデータを処理すると、バックエンドデータ処理コンポーネント１０２は、動作６１０において、ライブストリーミングデータをＣＰＵメモリ２０６中にロードする。例えば、ライブストリーミングデータは、サーバ機のＣＰＵキャッシュに追加され得る。
【００４０】
動的メモリ管理コンポーネント２０２は、（動作６１５において）ライブストリーミングデータの少なくとも一部をＣＰＵメモリ２０６からフェッチし、（動作６２０において）フェッチしたライブストリーミングデータをローカルなＧＰＵメモリ２０８中にロードする。ＣＰＵメモリ２０６からフェッチされ、ＧＰＵメモリ２０８中にロードされたライブストリーミングデータの該一部は、ユーザにより供給された１つ以上の制約に基づき得る。ネットワークベースの商取引プラットフォームの例では、ユーザは、ある一定の種類又はカテゴリの取引のみが可視化されることをリクエストし得る。フェッチされたライブストリーミングデータをＧＰＵメモリ２０８中にロードする前に、動的メモリ管理コンポーネント２０２は、ＧＰＵによる処理に適するフォーマットにデータパケットを変換し得る。別例として、ユーザは、制約として時間範囲を提供し得、動的メモリ管理コンポーネント２０２によりフェッチされるデータは、ユーザ指定の時間範囲内のタイムスタンプを
有するデータパケットに対応する。幾つかの実施形態では、動的メモリ管理コンポーネント２０２は、（以下で更に論じられるように）１つ以上のデータパケットがＧＰＵメモリ２０８から一掃されることに応じて、ライブストリーミングデータをフェッチし得る。
【００４１】
動作６２５において、レンダリングエンジン１１６は、可視化数理モデルを使用して、マップ上の１つ以上の視覚的メタファをディスプレイ上にレンダリングする。各視覚的メタファは、ライブストリーミングデータ中に含まれるイベントを表す。１つ以上の視覚的メタファは、空間適応的円弧アニメーション、散布図、又は地理ベースの棒グラフの内の少なくとも１つを含み得る。可視化数理モデルは、スライディングタイムウィンドウ（例えば、図２で説明したスライディングタイムウィンドウ２１２）全体を通じて視覚的メタファの空間的位置及び不透明度の変更を視覚的メタファ毎に定義する。例えば、上述したような空間適応的円弧アニメーションを参照すると、可視化数理モデルは、スライディングタイムウィンドウ全体を通じて、円弧に沿った全ての点の空間的位置及び不透明度を制御する。この例では、可視化数理モデルは、発信元位置と宛先位置との間の円弧上の点を補完する第１のコンポーネントと、発信元位置と宛先位置との間の距離に基づいて円弧に曲率制御を適用する第２のコンポーネントと、スライディングタイムウィンドウに渡って円弧上の点の不透明度を変更することによって、円弧中にアニメーションを導入する第３のコンポーネントと、（例えば、ライブストリーミングデータ中に含まれるデータパケットにより記述された）対応するイベントと関連付けられたタイムスタンプから判定される円弧の寿命に基づいて円弧の不透明度を減少させる第４のコンポーネントとを含む。
【００４２】
動作６３０において、動的メモリ管理２０２は、１つ以上のデータパケットをＧＰＵメモリ２０８及びＣＰＵメモリ２０６から一掃する。上述のように、視覚的混乱を削減するために、視覚的数理モデルは、視覚的メタファが完全に透明になるまで、視覚的メタファの不透明度を徐々に減少させる。動的メモリ管理コンポーネント２０２は、新たなデータのためにＣＰＵ及びＧＰＵのメモリ２０６、２０８の両者中に空き場所を作るための対応する視覚的メタファに応じて、ＧＰＵメモリ２０８からデータパケットを一掃し得る。
【００４３】
図７に示すように、方法６００は、幾つかの実施形態では、動作７０５、７１０、７１５、及び７２０を更に含み得る。幾つかの実施形態と調和して、動作７０５、７１０、７１５、及び７２０は、レンダリングエンジン１１６が１つ以上の視覚的メタファをレンダリングする動作６２５の一部（例えば、サブプロセス又はサブルーチン）として実施され得る。具体的には、動作７０５、７１０、７１５、及び７２０は、ライブストリーミングデータ中に含まれるデータパケットにより記述されたイベントを表す特定の視覚的メタファ、空間適応的円弧を生成する動作に対応する。後続する記述では、空間適応的円弧の単一の実例のみが扱われるが、動作６２５が複数の空間適応的円弧をレンダリングすることを含み得ることは認められるであろう。
【００４４】
動作７０５において、レンダリングエンジン１１６は、発信元位置を宛先位置に接続するマップ上の円弧の点を補間する。レンダリングエンジン１１６は、上述したような視覚的数理モデルに基づいて円弧の点を補間する。
【００４５】
動作７１０において、レンダリングエンジン１１６は、発信元位置と宛先位置との間の距離に基づいて、円弧に曲率制御を適用する。曲率の円弧への適用において、レンダリングエンジン１１６は、上で論じた視覚的数理モデルに従って、発信元位置と宛先位置との距離に基づいて円弧に対する最大の高さを判定する。
【００４６】
動作７１５において、レンダリングエンジン１１６は、発信元位置から宛先位置までの円弧の移動をアニメーション化する。レンダリングエンジン１１６は、上で論じた視覚的数理モデルに従って、スライディングタイムウィンドウ全体を通じて円弧の部分の不透明
度を変更することによって、円弧の移動をアニメーション化する。より具体的には、レンダリングエンジン１１６は、発信元位置に最初に設置された円弧の特定区域（“ハイライト”区域）の不透明度を増加させ、円弧のその他の区域の不透明度を維持しつつ、発信元位置から宛先位置までのハイライト区域を徐々に移動させることによって、円弧の移動をアニメーション化する。
【００４７】
動作７２０において、レンダリングエンジン１１６は、円弧の全体的な不透明度を徐々に減少させる。レンダリングエンジン１１６は、（例えば、スライディングタイムウィンドウの終端において）円弧が完全に透明になるまで、スライディングタイムウィンドウ全体を通じて円弧の全体的な不透明度を徐々に減少させる。
【００４８】
図８に示すように、方法６００は、幾つかの実施形態において、動作８０５、８１０、８１５、及び８２０を更に含み得る。示されるように、動作８０５、８１０、８１５、及び８２０は、動的メモリ管理コンポーネント２０２がライブストリーミングデータの少なくとも一部をＣＰＵメモリ２０６からフェッチする動作６１５に続いて、且つ動的メモリ管理コンポーネント２０２がフェッチされたデータをＧＰＵメモリ２０８中にロードする動作６２０と並行して実施され得る。更に、後続する記述から認められるように、動作８０５、８１０、８１５、及び８２０は、適応的ジッタ安定化コンポーネント２０４により実施される適応的ジッタ制御のための方法に対応する。
【００４９】
動作８０５において、適応的ジッタ安定化コンポーネント２０４は、ＣＰＵメモリ２０６からフェッチされたライブデータストリーミング中に含まれるデータパケットのタイムスタンプ２１０にアクセスする。タイムスタンプ２１０は、動的メモリ管理コンポーネント２０２によって適応的ジッタ安定化コンポーネント２０４に提供され得る。
【００５０】
上述のように、スライディングタイムウィンドウ２１２は上界及び下界を含む。動作８１０において、適応的ジッタ安定化コンポーネント２０４は、タイムスタンプ２１０がスライディングタイムウィンドウ２１２の上界よりも古いか否かを判定するために、タイムスタンプ２１０をスライディングタイムウィンドウ２１２の上界と比較する。言い換えれば、適応的ジッタ安定化コンポーネント２０４は、タイムスタンプ２１０がスライディングタイムウィンドウ２１２の上界よりも時間的に早いか否かを判定する。タイムスタンプ２１０がスライディングタイムウィンドウ２１２の上界よりも古いと適応的ジッタ安定化コンポーネント２０４が判定した場合、適応的ジッタ安定化コンポーネント２０４は、動作８１５において、スライディングタイムウィンドウ２１２の変化率を削減又は停止する。上界がタイムスタンプ２１０よりも古いと適応的ジッタ安定化コンポーネント２０４が判定した場合、適応的ジッタ安定化コンポーネント２０４は、動作８２０において、スライディングタイムウィンドウ２１０の変化率を維持又は増加させる。
【００５１】
図９〜図１５は、様々な実施形態に従ったユーザインタフェースの側面を説明する。図９は、発信元位置と宛先位置との間の一意な取引をリアルタイムで各々表す３Ｄ仮想地球の周囲を飛行する複数の空間適応的円弧を説明する。図１０は、リアルタイムイベントの密度を使用して３Ｄ仮想地球上にレンダリングされた散布図を説明する。図１１は、履歴イベントの累積カウントを使用して３Ｄ仮想地球上にレンダリングされた棒グラフを説明する。図１２は、２Ｄ平面世界地図上に投影された空間適応的円弧を説明する。
【００５２】
図１３は、減衰率が定式５において低い場合に生じるレンダリングされた一組の円弧を説明する。示されるように、定式３の空間適応的制御は、円弧の終点間の距離によって円弧を自然に集団化させ、一組の突出した視覚的パターンを形成する。
【００５３】
図１４は、米国中のリアルタイム取引イベントの瞬間を説明する。円弧上のハイライト
は、発信元位置（例えば、販売者位置）から宛先位置（例えば、購入者位置）までの飛行方向を与える。
【００５４】
図１５は、複数の円弧の空間的近接とユーザ定義の特性の類似とに基づいて複数の円弧を束ねるためのフォースダイレクテッドエッジバンドリングを用いた結果を説明する。
【００５５】
図１６を参照すると、クライアント−サーバベースのアーキテクチャ１６００の例示的実施形態が示される。より具体的には、図１６は、可視化システム１００が展開され得るネットワークシステムの一例を説明する。発明の主題を不必要な詳細で不明確にすることを避けるために、発明の主題の理解を伝えるのに密接ではない様々な機能的コンポーネントは図１６から省略されている。更に、図１６で説明される様々な機能的コンポーネントは唯一の意味で論じられるが、様々な機能的コンポーネントの内の任意の１つの複数の実例が用いられてもよいことは認められるであろう。
【００５６】
図１６に示されるように、クライアントデバイス１６１０は、ネットワーク１６０６を越えてコンテンツ出版プラットフォーム１６０２と通信し得る。幾つかの実施形態と調和して、デバイス１６１０は、可視化システム１００の可視化コンポーネント１０４を含む。幾つかの実施形態では、コンテンツ出版プラットフォーム１６０２はデータ発信元１１０に対応する。
【００５７】
ネットワーク１６０６の１つ以上の部分は、アドホックネットワーク、イントラネット、エクストラネット、仮想プライベートネットワーク（ＶＰＮ）、ローカルエリアネットワーク（ＬＡＮ）、無線ＬＡＮ（ＷＬＡＮ）、広域ネットワーク（ＷＡＮ）、無線ＷＡＮ（ＷＷＡＮ）、メトロポリタンエリアネットワーク（ＭＡＮ）、インターネットの一部、公衆交換電話網（ＰＳＴＮ）の一部、セルラ電話ネットワーク、無線ネットワーク、ＷｉＦｉネットワーク、ＷｉＭａｘネットワーク、別の種類のネットワーク、又は２つ以上のこうしたネットワークの組み合わせであり得る。
【００５８】
コンテンツ出版プラットフォーム１６０２は、ネットワーク１６０６を介してクライアントデバイス１６１０にサーバ側の機能を提供する。クライアントデバイス１６１０は、モバイルフォン、デスクトップコンピュータ、仮想現実ヘッドセット若しくはその他の仮想現実可能デバイス、ラップトップ、携帯情報端末（ＰＤＡ）、スマートフォン、タブレット、ウルトラブック、ネットブック、ラップトップ、マルチプロセッサシステム、マイクロプロセッサベースの若しくはプログラム可能な消費者電子デバイス、ゲーム機、セットトップボックス、又はコンテンツ出版プラットフォーム１６０２若しくは可視化システム１００にアクセスするためにユーザが利用し得る任意のその他の通信デバイスを含み得るが、それらに限定されない。一実施形態では、コンテンツ出版プラットフォーム１６０２は、ネットワークベースの市場で入手可能な製品の品目リストを含む出版物（例えば、ウェブドキュメント）を出版するネットワークベースの市場である。そうしたネットワークベースの市場は、特定のカテゴリの製品又は多くのカテゴリからの製品に対するリストをホストし得る。
【００５９】
クライアントデバイス１６１０は、ウェブブラウザ、仮想現実アプリケーション、メッセージングアプリケーション、電子メール（Ｅメール）アプリケーション、及び電子商取引アプリケーション（市場アプリケーションとも称される）等の１つ以上のアプリケーション（“ａｐｐ”とも称される）を更に含み得るが、これらに限定されない。幾つかの実施形態では、クライアントデバイスは、ユーザインタフェースをローカルに提供するように構成された１つ以上のアプリケーションと、ローカルに入手可能ではないデータ又は処理性能のために（例えば、販売のために入手可能な品目のデータベースへのアクセス、ユーザ１６０４を認証するため、支払い方法を確認するため等）、必要な場合に応じてコン
テンツ出版プラットフォーム１６０２と通信するための機能の少なくとも幾つかとを含み得る。
【００６０】
ユーザ１６０４は、人、機械、又はクライアントデバイス１６１０とインタラクトするその他の手段であり得る。例示的実施形態では、ユーザ１６０４は、クライアント−サーバベースのアーキテクチャ１６００の一部ではないが、可視化システム１００及びコンテンツ出版プラットフォーム１６０２とクライアントデバイス１６１０を介してインタラクトし得る。
【００６１】
アプリケーションプログラムインタフェース（ＡＰＩ）サーバ１６２０及びウェブサーバ１６２２は、アプリケーションサーバ１６４０に結合され、アプリケーションサーバ１６４０にプログラマチックインタフェース及びウェブインタフェースをアプリケーションサーバ１６４０に夫々提供する。アプリケーションサーバ１６４０は、ハードウェア、ソフトウェア、ファームウェア、又はそれらの任意の組み合わせとして具体化され得る出版アプリケーション１６４２をホストし得る。アプリケーションサーバ１６４０は、データベース１６２６へのアクセスを容易にするデータベースサーバ１６２４に結合するように順番に示されている。例示的実施形態では、データベース１６２６は、出版アプリケーション１６４２に投稿される情報（例えば、出版物若しくはリスト）を格納するストレージデバイスである。データベース１６２６は、例示的実施形態に従ったデジタル品目情報をも格納し得る。
【００６２】
出版アプリケーション１６４２は、多数の出版機能を提供し、コンテンツ出版プラットフォーム１６０２にアクセスするユーザにサービスする。例えば、出版アプリケーション１６４２は、クライアントデバイス１６１０を使用してウェブドキュメント（例えば、製品リスト）をユーザ１６０４が作成及び出版することを可能にする（例えば、クライアントデバイス１６１０との通信を通じた）インタフェースを提供する。出版アプリケーション１６４２は、出版されたウェブドキュメントの様々な部分をユーザ１６０４が修正することを可能にするインタフェースを更に提供し得る。
【００６３】
コンテンツ出版プラットフォーム１６０２及び可視化システム１００の可視化コンポーネントは、図１６には分離して別個に示されているが、代替的な実施形態では、可視化システム１００は、コンテンツ出版プラットフォーム１６０２の一部に組み込まれ得、該一部を形成し得る（例えば、可視化システム１００は、コンテンツ出版プラットフォーム１６０２のサブシステムである）ことは認められるであろう。
【００６４】
＜ソフトウェアアーキテクチャ＞
図１７は、上述したデバイスの何れか１つ以上の上にインストールされ得るソフトウェア１７０２のアーキテクチャを説明するブロック図１７００である。図１７は、ソフトウェアアーキテクチャの非限定的な例であるにすぎず、本明細書に記述される機能を容易にするために、多くのその他のアーキテクチャが実装され得ることは認められるであろう。様々な実施形態では、ソフトウェア１７０２は、プロセッサ１８１０、メモリ１８３０、及び入出力コンポーネント１８５０を含む図１８の機械１８００等のハードウェアにより実装される。この例示的アーキテクチャでは、ソフトウェア１７０２は、各レイヤが特定の機能を提供し得るレイヤのスタックとして概念化され得る。例えば、ソフトウェア１７０２は、オペレーティングシステム１７０４、ライブラリ１７０６、フレームワーク１７０８、及びアプリケーション１７１０等のレイヤを含む。操作上、アプリケーション１７１０は、幾つかの実施形態と調和して、該ソフトウェアスタックを通じてアプリケーションプログラミングインタフェース（ＡＰＩ）コール１７１２を呼び出し、ＡＰＩコール１７１２に応じてメッセージ１７１４を受信する。
【００６５】
様々な実装において、オペレーティングシステム１７０４は、ハードウェア資源を管理し、共通のサービスを提供する。オペレーティングシステム１７０４は、例えば、カーネル１７２０、サービス１７２２、及びドライバ１７２４を含む。カーネル１７２０は、幾つかの実施形態と調和して、ハードウェアとその他のソフトウェアレイヤとの間のアブストラクションレイヤとしての機能を果たす。例えば、カーネル１７２０は、機能の中でもとりわけ、メモリ管理、プロセッサ管理（例えば、スケジューリング）、コンポーネント管理、ネットワーク化、及びセキュリティ設定を提供する。サービス１７２２は、その他のソフトウェアレイヤに対するその他の共通のサービスを提供し得る。ドライバ１７２４は、幾つかの実施形態に従って、下層のハードウェアを制御すること又は該ハードウェアとインタフェースで連結することを担当する。実例として、ドライバ１７２４は、ディスプレイドライバ、カメラドライバ、ＢＬＵＥＴＯＯＴＨ（登録商標）若しくはＢＬＵＥＴＯＯＴＨ（登録商標）Ｌｏｗ  Ｅｎｅｒｇｙドライバ、フラッシュメモリドライバ、シリアル通信ドライバ（例えば、ユニバーサルシリアルバス（ＵＳＢ）ドライバ）、Ｗｉ−Ｆｉ（登録商標）ドライバ、オーディオドライバ、及び電力管理ドライバ等を含み得る。
【００６６】
幾つかの実施形態では、ライブラリ１７０６は、アプリケーション１７１０により利用される低レベルの共通基盤を提供する。ライブラリ１７０６は、メモリ割り当て機能、ストリング操作機能、及び数値演算機能等の機能を提供し得るシステムライブラリ１７３０（例えば、標準Ｃライブラリ）を含み得る。また、ライブラリ１７０６は、メディアライブラリ（例えば、Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ−４（ＭＰＥＧ４）、Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（Ｈ．２６４若しくはＡＶＣ）、Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ  Ｌａｙｅｒ−３（ＭＰ３）、Ａｄｖａｎｃｅｄ  Ａｕｄｉｏ  Ｃｏｄｉｎｇ（ＡＡＣ）、Ａｄａｐｔｉｖｅ  Ｍｕｌｔｉ−Ｒａｔｅ（ＡＭＲ）オーディオコーデック、Ｊｏｉｎｔ  Ｐｈｏｔｏｇｒａｐｈｉｃ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ（ＪＰＥＧ若しくはＪＰＧ）、又はＰｏｒｔａｂｌｅ  Ｎｅｔｗｏｒｋ  Ｇｒａｐｈｉｃｓ（ＰＮＧ）等の様々なメディアフォーマットの提示及び操作をサポートするためのライブラリ）、グラフィックスライブラリ（例えば、ディスプレイ上のグラフィックコンテンツにおいて２次元（２Ｄ）及び３次元（３Ｄ）にレンダリングするために使用されるＯｐｅｎＧＬフレームワーク）、データベースライブラリ（例えば、様々な関連するデータベース機能を提供するためのＳＱＬｉｔｅ）、及びウェブライブラリ（例えば、ウェブブラウジング機能を提供するためのＷｅｂＫｉｔ）等のＡＰＩライブラリ１７３２を含み得る。ライブラリ１７０６は、その他の多くのＡＰＩをアプリケーション１７１０に提供するための多種多様なその他のライブラリ１７３４をも含み得る。
【００６７】
フレームワーク１７０８は、幾つかの実施形態に従って、アプリケーション１７１０により利用され得る高レベルの共通基盤を提供する。例えば、フレームワーク１７０８は、様々なグラフィックユーザインタフェース（ＧＵＩ）機能、高レベル資源管理、及び高レベルロケーションサービス等を提供する。フレームワーク１７０８は、特定のオペレーティングシステム又はプラットフォームにその内の幾つかが特化し得るアプリケーション１７１０により利用され得る広範囲のその他のＡＰＩを提供し得る。
【００６８】
幾つかの実施形態では、アプリケーション１７１０は、ホームアプリケーション１７５０、コンタクトアプリケーション１７５２、ブラウザアプリケーション１７５４、ブックリーダアプリケーション１７５６．ロケーションアプリケーション１７５８、メディアアプリケーション１７６０、メッセージングアプリケーション１７６２、ゲームアプリケーション１７６４、及び第三者アプリケーション１７６６等の多種多様なその他のアプリケーションを含む。幾つかの実施形態に従って、アプリケーション１７１０は、プログラム中に定義された機能を実行するプログラムである。オブジェクト指向プログラミング言語（例えば、Ｏｂｊｅｃｔｉｖｅ−Ｃ、Ｊａｖａ、若しくはＣ＋＋）又は手続型プログラミ
ング言語（例えば、Ｃ若しくはアセンブリ言語）等の様々な方法で構造化されたアプリケーション１７１０の内の１つ以上を作り出すために、様々なプログラミング言語が用いられ得る。具体例では、第三者アプリケーション１７６６（例えば、特定のプラットフォームのベンダー以外のエンティティによりＡＮＤＲＯＩＤ（登録商標）若しくはＩＯＳ（登録商標）ソフトウェア開発キット（ＳＤＫ）を使用して開発されたアプリケーション）は、ＩＯＳ（登録商標）、ＡＮＤＲＯＩＤ（登録商標）、ＷＩＮＤＯＷＳ（登録商標）フォン、又は別のモバイルオペレーティングシステム等のモバイルオペレーティングシステム上で実行するモバイルソフトウェアであり得る。この例では、第三者アプリケーション１７６６は、本明細書に記述される機能を容易にするためにオペレーティングシステム１７０４により提供されるＡＰＩコール１７１２を呼び出し得る。
【００６９】
＜機械アーキテクチャ＞
図１８は、例示的実施形態に従って、本明細書に論じられる方法論の任意の１つ以上を機械１８００に実施させるための一組の命令が実行され得るコンピュータシステムの形式での機械１８００の図表示を説明する。具体的には、図１８は、本明細書で論じられる方法論の任意の１つ以上を機械１８００に実施させるための命令１８１６（例えば、ソフトウェア、プログラム、アプリケーション、アプレット、アプリケーションソフトウェア（ａｐｐ）、又はその他の実行可能コード）が実行され得るコンピュータシステムの例示的形式での機械１８００の図表示を示す。例えば、命令１８１６は、図６〜図８の方法６００を機械１８００に実行させ得る。付加的に又は代替的に、命令１８１６は、図１及び図２等に説明されたコンポーネントの少なくとも一部を実装し得る。命令１８１６は、プログラミングされていない一般的な機械１８００を、記述及び説明される機能を記述される方法で実行するようにプログラムされた特定の機械１８００に変換する。代替的な実施形態では、機械１８００は、スタンドアローンなデバイスとして動作し、又はその他の機械に結合（例えば、ネットワーク化）され得る。ネットワーク化される展開では、機械１８００は、サーバ−クライアントネットワーク環境におけるサーバ機又はクライアント機として動作し得、又はピアツーピア（又は分散）ネットワーク環境におけるピア機として動作し得る。機械１８００は、サーバコンピュータ、クライアントコンピュータ、パーソナルコンピュータ（ＰＣ）、タブレットコンピュータ、ラップトップコンピュータ、ノードブック、セットトップボックス（ＳＴＢ）、ＰＤＡ、エンターテイメントメディアシステム、セルラ電話、スマートフォン、モバイルデバイス、ウェアラブルデバイス（例えば、スマートウォッチ）、スマートホームデバイス（例えば、スマートアプライアンス）、その他のスマートデバイス、ウェブアプライアンス、ネットワークルータ、ネットワークスイッチ、ネットワークブリッジ、又は命令１８１６を順次実行可能であるか、さもなければ機械１８００によりなされる行為を指定する任意の機械を含み得るが、それらに限定されない。更に、単一の機械１８００のみが説明されるが、用語“機械”は、本明細書に論じられる方法論の任意の１つ以上を実施するための命令１８１６を独立して又は共同して実行する一群の機械１８００を含むようにもみなされる。
【００７０】
機械１８００は、プロセッサ１８１０、メモリ１８３０、入出力コンポーネント１８５０を含み得、それらは、バス１８０２を介する等して相互に通信するように構成され得る。幾つかの例示的実施形態では、プロセッサ１８１０（例えば、中央処理装置（ＣＰＵ）、縮小命令セット計算（ＲＩＳＣ）プロセッサ、複合命令セット計算（ＣＩＳＣ）プロセッサ、グラフィックス処理ユニット（ＧＰＵ）、デジタルシグナルプロセッサ（ＤＳＰ）、ＡＩＳＣ、無線周波数集積回路（ＲＦＩＤ）、別のプロセッサ、又はそれらの任意の適切な組み合わせ）は、例えば、命令１８１６を実行し得るプロセッサ１８１２及びプロセッサ１８１４を含み得る。用語“プロセッサ”は、命令を同時に実行し得る２つ以上の独立したプロセッサ（時には“コア”と称される）を含み得るマルチコアプロセッサを含むことを意図する。図１８は、複数のプロセッサ１８１０を示すが、機械１８００は、単一のコアを有する単一のプロセッサ、複数のコアを有する単一のプロセッサ（例えば、マル
チコアプロセッサ）、単一のコアを有する複数のプロセッサ、複数のコアを有する複数のプロセッサ、又はそれらの任意の組み合わせを含み得る。
【００７１】
メモリ１８３０は、バス１８０２を介する等してプロセッサ１８１０に共にアクセス可能な、メインメモリ１８３２、スタティックメモリ１８３４、及びストレージユニット１８３６を含み得る。メインメモリ１８３０、スタティックメモリ１８３４、及びストレージユニット１８３６は、本明細書に記述される方法論又は機能の任意の１つ以上を具体化する命令１８１６を格納する。命令１８１６はまた、メインメモリ１８３２内に、スタティックメモリ１８３４内に、ストレージユニット１８３６内に、プロセッサ１８１０の内の少なくとも１つの内に（例えば、プロセッサのキャッシュメモリ内に）、又はそれらの任意の適切な組み合わせで、機械１８００によるそれらの実行中に完全に又は部分的に存在し得る。
【００７２】
入出力コンポーネント１８５０は、入力を受信すること、出力を提供すること、出力を生み出すこと、情報を送信すること、情報を交換すること、及び測定を取得すること等のための多種多様なコンポーネントを含み得る。特定の機械に含まれる具体的な入出力コンポーネント１８５０は、機械の種類に依存するであろう。例えば、ヘッドレスサーバ機は、そうしたタッチ入力デバイスを恐らく含まないであろうが、モバイルフォン等のポータブル機は、タッチ入力デバイス又はその他のそうした入力機構を恐らく含むであろう。入出力コンポーネント１８５０が図１８に示されないその他の多くのコンポーネントを含み得ることは認められるであろう。入出力コンポーネント１８５０は、以下の論考を簡単にするだけのために機能に従ってグループ化され、該グループ化は全く限定されない。様々な例示的実施形態では、入出力コンポーネント１８５０は、出力コンポーネント１８５２及び入力コンポーネント１８５４を含み得る。出力コンポーネント１８５２は、視覚化コンポーネント（例えば、プラズマディスプレイパネル（ＰＤＰ）、発光ダイオード（ＬＥＤ）ディスプレイ、液晶ディスプレイ（ＬＣＤ）、プロジェクタ、又は陰極線管（ＣＲＴ）等のディスプレイ）、音響コンポーネント（例えば、スピーカ）、触覚コンポーネント（例えば、振動性モータ、抵抗性機構）、及びその他の信号生成器等を含み得る。入力コンポーネント１８５４は、英数字入力コンポーネント（例えば、キーボード、英数字入力を受信するように構成されたタッチスクリーン、写真光学キーボード、若しくはその他の英数字入力コンポーネント）、ポイントベースの入力コンポーネント（例えば、マウス、タッチパッド、トラックボール、ジョイスティック、モーションセンサ、若しくは別のポインティング機器）、触感入力コンポーネント（例えば、物理的ボタン、位置及び／又はタッチ若しくはタッチジェスチャーの力を提供するタッチスクリーン、若しくはその他の触感入力コンポーネント）、及びオーディオ入力コンポーネント（例えば、マイクロフォン）等を含み得る。
【００７３】
更なる例示的実施形態では、入出力コンポーネント１８５０は、豊富なコンポーネントの中でもとりわけ、生体認証コンポーネント１８５６、モーションコンポーネント１８５８、環境コンポーネント１８６０、又は位置コンポーネント１８６２を含み得る。例えば、生体認証コンポーネント１８５６は、表現（例えば、手振り、表情、声質、身振り、若しくは視標追跡）を検出すること、生体信号（例えば、血圧、心拍、体温、発汗、又は脳波）を測定すること、及び人を識別すること（例えば、声識別、網膜識別、顔識別、指紋識別、又は脳波ベースの識別）等のためのコンポーネントを含み得る。モーションコンポーネント１８５８は、加速度センサコンポーネント（例えば、加速度計）、重力センサコンポーネント、及び回転センサコンポーネント（例えば、ジャイロスコープ）等を含み得る。環境コンポーネント１８６０は、例えば、照度センサコンポーネント（例えば、光度計）、温度センサコンポーネント（例えば、周辺温度を検出する１つ以上の温度計）、湿度センサコンポーネント、圧力センサコンポーネント（例えば、気圧計）、音響センサコンポーネント（例えば、暗騒音を検出する１つ以上のマイクロフォン）、近接センサコン
ポーネント（例えば、近くの物を検出する赤外線センサ）、ガスセンサ（例えば、安全のために危険なガスの濃度を検出するための、若しくは大気中の汚染物質を測定するためのガス検出センサ）、又は周囲の物理的環境に対応する指標、測定、若しくは信号を提供し得るその他のコンポーネントを含み得る。位置コンポーネント１８６２は、ロケーションセンサコンポーネント（例えば、ＧＰＳ受信機コンポーネント）、高度センサコンポーネント（例えば、高度計、若しくは高度を派生し得る気圧を検出する気圧計）、及び方位センサコンポーネント（例えば、磁気計）等を含み得る。
【００７４】
多種多様な技術を使用して通信が実装され得る。入出力コンポーネント１８５０は、結合１８８２及び結合１８７２を夫々介して機械１８００をネットワーク１８８０又はデバイス１８７０に結合するように動作可能な通信コンポーネント１８６４を含み得る。例えば、通信コンポーネント１８６４は、ネットワーク１８８０とインタフェースで接続するためのネットワークインタフェースコンポーネント又は別の適切なデバイスを含み得る。更なる例において、通信コンポーネント１８６４は、有線通信コンポーネント、無線通信コンポーネント、セルラ通信コンポーネント、近距離通信（ＮＦＣ）コンポーネント、Ｂｌｕｅｔｏｏｔｈ（登録商標）コンポーネント（例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）Ｌｏｗ  Ｅｎｅｒｇｙ）、Ｗｉ−Ｆｉ（登録商標）コンポーネント、及びその他の様式を介して通信を提供するためのその他の通信コンポーネントを含み得る。デバイス１８７０は、別の機械、又は多種多様な周辺デバイス（例えば、ＵＳＢを介して結合される周辺デバイス）のいずれかであり得る。
【００７５】
更に、通信コンポーネント１８６４は、識別子を検出し得、又は識別子を検出するように動作可能なコンポーネントを含み得る。例えば、通信コンポーネント１８６４は、無線周波数識別（ＲＦＩＤ）タグリーダコンポーネント、ＮＦＣスマートタグ検出コンポーネント、光リーダコンポーネント（例えば、ユニバーサルプロダクトコード（ＵＰＣ）等の一次元バーコード、クイックレスポンス（ＱＲ）コード、Ａｚｔｅｃコード、データマトリックス、Ｄａｔａｇｌｙｐｈ、ＭａｘｉＣｏｄｅ、ＰＤＦ４１７、Ｕｌｔｒａ  Ｃｏｄｅ、ＵＣＣ  ＲＳＳ−２Ｄバーコード等の多次元バーコード、及びその他の光コード）、又は音響検出コンポーネント（例えば、タグ付きのオーディオ信号を識別するためのマイクロフォン）を含み得る。また、インターネットプロトコル（ＩＰ）ジオロケーションを介した位置、Ｗｉ−Ｆｉ（登録商標）信号三角測量を介した位置、及び特定の位置を示し得るＮＦＣビーコン信号の検出を介した位置等、通信コンポーネント１８６４を介して様々な情報が派生し得る。
【００７６】
＜実行可能命令及び機械ストレージ媒体＞
様々なメモリ（すなわち、１８３０、１８３２、１８３４、及び／若しくはプロセッサ１８１０のメモリ）及び／又はストレージユニット１８３６は、本明細書に記述される方法論若しくは機能の任意の１つ以上を具体化する、又は該１つ以上により利用される命令及びデータ構造（例えば、ソフトウェア）の１つ以上のセットを格納し得る。これらの命令（例えば、命令１８１６）は、プロセッサ１８１０により実行される場合に、開示される実施形態を実装するための様々な動作を引き起こす。
【００７７】
本明細書で使用されるように、用語“機械ストレージ媒体”、“デバイスストレージ媒体”、“コンピュータストレージ媒体”は、同じことを意味し、この開示において、言い換え可能に使用され得る。該用語は、実行可能な命令及び／又はデータを格納する単一の又は複数のストレージデバイス及び／若しくは媒体（例えば、集中型又は分散型のデータベース、並びに／又は関連付けられたキャッシュ及びサーバ）を指す。該用語は、それに応じて、プロセッサの内部又は外部のメモリを含む、固体状態メモリ及び光磁気媒体を含むようにみなされるが、それらには限定されないであろう。機械ストレージ媒体、コンピュータストレージ媒体、及び／又はデバイスストレージ媒体の具体例は、不揮発性メモリ
を含み、半導体メモリデバイス、例えば、消去可能プログラム可能リードオンリメモリ（ＥＰＲＯＭ）、電気的消去可能プログラム可能リードオンリメモリ（ＥＥＰＲＯＭ）、ＦＰＧＡ、及びフラッシュメモリデバイスと、内蔵ハードディスク及びリームバブルディスク等の磁気ディスクと、光磁気ディスクと、ＣＤ−ＲＯＭ及びＤＶＤ−ＲＯＭディスクとを例示として含む。用語“機械ストレージ媒体”、“コンピュータストレージ媒体”、及び“デバイスストレージ媒体”は、以下で論じられる用語“信号媒体”の下で少なくとも幾つかがカバーされる搬送波、変調データ信号、及びその他のそうした媒体を特に除外する。
【００７８】
＜伝送媒体＞
様々な例示的実施形態では、ネットワーク１８８０の１つ以上の部分は、アドホックネットワーク、イントラネット、エクストラネット、ＶＰＮ、ＬＡＮ、ＷＬＡＮ、ＷＡＮ、ＷＷＡＮ、ＭＡＮ、インターネット、インターネットの一部、ＰＳＴＮの一部、基本電話サービス（ＰＯＴＳ）ネットワーク、セルラ電話ネットワーク、無線ネットワーク、Ｗｉ−Ｆｉ（登録商標）ネットワーク、別の種類のネットワーク、又はこうしたネットワークの２つ以上の組み合わせであり得る。例えば、ネットワーク１８８０又はネットワーク１８８０の一部は、無線又はセルラーネットワークを含み得、結合１８８２は、符号分割多元（ＣＤＭＡ）接続、Ｇｌｏｂａｌ  Ｓｙｓｔｅｍ  ｆｏｒ  Ｍｏｂｉｌｅ  ｃｏｍｍｕｎｉｃａｔｉｏｎｓ（ＧＳＭ）接続、又は別の種類のセルラ若しくは無線結合であり得る。この例では、結合１８８２は、Ｓｉｎｇｌｅ  Ｃａｒｒｉｅｒ  Ｒａｄｉｏ  Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｔｅｃｈｎｏｌｏｇｙ（１ｘＲＴＴ）、Ｅｖｏｌｕｔｉｏｎ−Ｄａｔａ  Ｏｐｔｉｍｉｚｅｄ（ＥＶＤＯ）技術、Ｇｅｎｅｒａｌ  Ｐａｃｋｅｔ  Ｒａｄｉｏ
Ｓｅｒｖｉｃｅ（ＧＰＲＳ）技術、Ｅｎｈａｎｃｅｄ  Ｄａｔａ  ｒａｔｅｓ  ｆｏｒ
ＧＳＭ  Ｅｖｏｌｕｔｉｏｎ（ＥＤＧＥ）技術、３Ｇを含む第３世代パートナーシッププロジェクト（３ＧＰＰ）、第４世代無線（４Ｇ）ネットワーク、Ｕｎｉｖｅｒｓａｌ  Ｍｏｂｉｌｅ  Ｔｅｌｅｃｏｍｍｕｎｉｃａｔｉｏｎｓ  Ｓｙｓｔｅｍ（ＵＭＴＳ）、Ｈｉｇｈ  Ｓｐｅｅｄ  Ｐａｃｋｅｔ  Ａｃｃｅｓｓ（ＨＳＰＡ）、Ｗｏｒｌｄｗｉｄｅ  Ｉｎｔｅｒｏｐｅｒａｂｉｌｉｔｙ  ｆｏｒ  Ｍｉｃｒｏｗａｖｅ  Ａｃｃｅｓｓ（ＷｉＭＡＸ）、Ｌｏｎｇ  Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ（ＬＴＥ）スタンダード、様々な標準化団体により定義されたその他、その他の長期的プロトコル、又はその他のデータ伝送技術等の様々な種類のデータ伝送技術の内の何れかを実装し得る。
【００７９】
命令１８１６は、ネットワークインタフェースデバイス（例えば、通信コンポーネント１８６４に含まれるネットワークインタフェースコンポーネント）を介した伝送媒体を使用し、周知の多数の伝送プロトコル（例えば、ハイパーテキストトランスファープロトコル（ＨＴＴＰ））の内の何れか１つを利用するネットワーク１８８０を越えて送信又は受信され得る。同様に、命令１８１６は、デバイス１８７０への結合１８７２（例えば、ピアツーピア結合）を介した伝送媒体を使用して送信又は受信され得る。用語“伝送媒体”及び“信号媒体”は、同じことを意味し、この開示において、言い換え可能に使用され得る。用語“伝送媒体”及び“信号媒体”は、機械１８００による実行のための命令１８１６を格納、符号化、又は搬送可能な任意の無形媒体を含み、そうしたソフトウェアの通信を容易にするためのデジタル若しくはアナログ通信信号又はその他の無形媒体を含むようにみなされるであろう。したがって、用語“伝送媒体”及び“信号媒体”は、変調データ信号及び搬送波等の任意の形式を含むようにみなされるであろう。用語“変調データ信号”は、信号中の情報の符号化に関するこうした方法で設定又は変更されるその特徴の内の１つ以上を有する信号を意味する。
【００８０】
＜コンピュータ可読媒体＞
用語“機械可読媒体”、“コンピュータ可読媒体”、及び“デバイス可読媒体”は、同じことを意味し、この開示において、言い換え可能に使用され得る。該用語は、機械スト
レージ媒体及び伝送媒体の両方を含むように定義される。したがって、該用語は、ストレージデバイス／媒体及び搬送波／変調データ信号の両方を含む。
【００８１】
＜電子装置及びシステム＞
例示的実施形態は、デジタル電子回路中に、又はコンピュータハードウェア、ファームウェア、若しくはソフトウェア中に、又はそれらの組み合わせ中に実装され得る。例示的実施形態は、コンピュータプログラム製品、例えば、情報キャリア中に、例えば、データ処理装置、例えば、プログラム可能なプロセッサ、コンピュータ、若しくは複数のコンピュータの動作による実行、若しくは該動作の制御のための機械可読媒体中に有形に具体化されるコンピュータプログラムを使用して実装され得る。
【００８２】
コンピュータプログラムは、コンパイル又は解釈された言語を含むプログラミング言語の任意の形式で書き込まれ得、それは、スタンドアローンなプログラムとして、又は計算環境での使用に適するモジュール、サブルーチン、又はその他のユニットとして、を含む任意の形式で展開され得る。コンピュータプログラムは、１つのコンピュータ上で若しくは１つの現場の複数のコンピュータ上で実行されるように、又は複数の現場に渡って分散され、通信ネットワークにより相互接続される複数のコンピュータ上で実行されるように展開され得る。
【００８３】
例示的実施形態では、入力データを操作し、出力を生成することによって機能を実施するためのコンピュータプログラムを実行する１つ以上のプログラム可能なプロセッサによって動作が実施され得る。方法の動作は、専用ロジック回路（例えば、ＦＰＧＡ又はＡＳＩＣ）によっても実施され得、例示的実施形態の装置は、該専用ロジック回路として実装され得る。
【００８４】
計算システムは、クライアント及びサーバを含み得る。クライアント及びサーバは、一般的には相互に離れ、典型的には、通信ネットワークを通じてインタラクトする。クライアントとサーバとの関係は、個別のコンピュータ上で実行し、クライアント−サーバの関係を相互に有するコンピュータプログラムに起因して発生する。プログラム可能な計算システムを展開する実施形態では、ハードウェア及びソフトウェアの両アーキテクチャが考慮に値することが認められるであろう。特に、恒久的に構成されたハードウェア（例えば、ＡＳＩＣ）中、一時的に構成されたハードウェア（例えば、ソフトウェアとプログラム可能なプロセッサとの組み合わせ）中、又は恒久的に構成されたハードウェアと一時的に構成されたハードウェアとの組み合わせ中の何れに、ある一定の機能を実装するかの選択は設計上の選択であり得ることは認められるであろう。
【００８５】
以下の番号が付された例は実施形態である。
【００８６】
１．機械の１つ以上のプロセッサと、
前記１つ以上のプロセッサにより実行される場合に、
複数のイベントを記述するストリーミングデータであって、前記複数のイベント中の各イベントに対応する発信元位置及び宛先位置を識別する地理空間データを含む前記ストリーミングデータをメモリ中にロードすることと、
前記複数のイベントからのイベントを各視覚的メタファが表す、マップ上の複数の視覚的メタファを、スライディングタイムウィンドウ全体を通じて視覚的メタファ上の各点の空間的位置及び不透明度を視覚的メタファ毎に定義する可視化数理モデルを使用してディスプレイ上にレンダリングすることと
を含む動作を前記機械に実施させる情報を格納する機械可読ストレージ媒体と
を含む、システム。
【００８７】
２．  前記複数の視覚的メタファの内の少なくとも１つをレンダリングすることは、
前記マップ上の前記発信元位置及び前記宛先位置を接続する円弧の点を補間することと、
前記発信元位置と前記宛先位置との間の距離に基づいて、前記円弧に曲率制御を適用することと
を含む、例１に記載のシステム。
【００８８】
３．  前記複数の視覚的メタファの内の前記少なくとも１つをレンダリングすることは、前記円弧の部分の不透明度を変更することによって、前記発信元位置から前記宛先位置までの前記円弧の移動をアニメーション化することを更に含む、例２に記載のシステム。
【００８９】
４．  各イベントはタイムスタンプと関連付けられ、
前記スライディングタイムウィンドウの時間範囲は下界及び上界を含み、
前記動作は、前記スライディングタイムウィンドウの前記上界との直近のタイムスタンプの比較に基づいて、前記スライディングタイムウィンドウを調節することを更に含む、例１〜３の何れか１つに記載のシステム。
【００９０】
５．  前記スライディングタイムウィンドウを調節することは、前記スライディングタイムウィンドウの前記上界が前記タイムスタンプよりも古いことに基づいて、前記スライディングタイムウィンドウの変化率を増加させることを含む、例４に記載のシステム。
【００９１】
６．  前記スライディングタイムウィンドウに渡って前記複数の視覚的メタファからの視覚的メタファの不透明度を徐々に減少させることを更に含む、例１〜５の何れか１つに記載のシステム。
【００９２】
７．  前記視覚的メタファが透明になる結果をもたらす前記視覚的メタファの前記不透明度の減少に応じて、前記視覚的メタファに対応するデータを前記メモリから一掃することを更に含む、例６に記載のシステム。
【００９３】
８．  前記システムは、
前記メモリに対応するグラフィカル処理ユニット（ＧＰＵ）キャッシュと、
中央処理装置（ＣＰＵ）キャッシュと
を更に含み、前記動作は、
前記ストリーミングデータをデータ発信元から取得することと、
前記ストリーミングデータを前記ＣＰＵキャッシュ中にロードすることと、
前記ＧＰＵキャッシュからデータが一掃されることに応じて、前記ストリーミングデータを前記ＣＰＵキャッシュから検索することと
を更に含む、例１〜７の何れか１つに記載のシステム。
【００９４】
９．  前記可視化数理モデルは、前記発信元位置と前記宛先位置との間の円弧上の点を補間する第１の要素を含む、例１〜８の何れか１つに記載のシステム。
【００９５】
１０．  前記可視化数理モデルは、前記発信元位置と前記宛先位置との間の距離に基づいて前記円弧に曲率制御を適用する第２の要素を含む、例９に記載のシステム。
【００９６】
１１．  前記可視化数理モデルは、前記スライディングタイムウィンドウに渡って前記円弧上の前記点の不透明度を変更することによって、前記円弧中にアニメーションを導入する第３の要素を含む、例１０に記載のシステム。
【００９７】
１２．  前記可視化数理モデルは、対応するイベントと関連付けられたタイムスタンプ
から判定される前記円弧の寿命に基づいて、前記円弧の不透明度を減少させる第４の要素を含む、例１１に記載のシステム。
【００９８】
１３．  前記複数の視覚的メタファは、空間適応的円弧アニメーション、散布図、又は地理ベースの棒グラフの内の少なくとも１つを含む、例１〜１２の何れか１つに記載のシステム。
【００９９】
１４．  複数のイベントを記述するストリーミングデータであって、前記複数のイベント中の各イベントに対応する発信元位置及び宛先位置を識別する地理空間データを含む前記ストリーミングデータをメモリ中にロードすることと、
前記複数のイベントからのイベントを各視覚的メタファが表す、マップ上の複数の視覚的メタファを、スライディングタイムウィンドウ全体を通じて視覚的メタファ上の各点の空間的位置及び不透明度を視覚的メタファ毎に定義する可視化数理モデルを使用してディスプレイ上にレンダリングすることと
を含む、プロセッサに実装される方法。
【０１００】
１５．  前記複数の視覚的メタファの内の少なくとも１つをレンダリングすることは、
前記マップ上の前記発信元位置及び前記宛先位置を接続する円弧の点を補間することと、
前記発信元位置と前記宛先位置との間の距離に基づいて、前記円弧に曲率制御を適用することと、
前記発信元位置から前記宛先位置までの前記円弧の移動をアニメーション化することと、
前記円弧の不透明度を徐々に減少させることと
を含む、例１４に記載の方法。
【０１０１】
１６．  前記円弧に前記曲率制御を適用することは、前記発信元位置と前記宛先位置との間の前記距離に基づいて、前記円弧に対する最大の高さを判定することを含む、例１５に記載の方法。
【０１０２】
１７．  前記円弧の前記移動をアニメーション化することは、
前記円弧の区域であって、前記発信元位置に最初に設置された前記区域の不透明度を増加させることと、
前記円弧の残りの区域の不透明度を維持しつつ、前記発信元位置から前記宛先位置まで、不透明度を増加させた前記区域を徐々に移動させることと
を含む、例１５又は例１６に記載の方法。
【０１０３】
１８．  前記円弧の前記不透明度を減少させることは、前記スライディングタイムウィンドウの経過後に前記円弧が透明になる結果をもたらす、例１５〜１７の何れか１つに記載の方法。
【０１０４】
１９．  前記円弧が透明になることに応じて、前記円弧に対応するデータを前記メモリから一掃することを更に含む、例１８に記載の方法。
【０１０５】
２０．  機械の１つ以上のプロセッサにより実行される場合に、
複数のイベントを記述するストリーミングデータであって、前記複数のイベント中の各イベントに対応する発信元位置及び宛先位置を識別する地理空間データを含む前記ストリーミングデータをメモリ中にロードすることと、
前記複数のイベントからのイベントを各視覚的メタファが表す、マップ上の複数の視覚的メタファを、スライディングタイムウィンドウ全体を通じて視覚的メタファ上の各点の
空間的位置及び不透明度を視覚的メタファ毎に定義する可視化数理モデルを使用してディスプレイ上にレンダリングすることであって、前記複数の視覚的メタファの内の少なくとも１つをレンダリングすることは、
前記マップ上の前記発信元位置及び前記宛先位置を接続する円弧の点を補間することと、
前記発信元位置と前記宛先位置との間の距離に基づいて、前記円弧に曲率制御を適用することと、
前記発信元位置から前記宛先位置までの前記円弧の移動をアニメーション化することと、
前記円弧の不透明度を徐々に減少させることと
を含むことと
を含む動作を前記機械に実施させる命令を具体化する機械可読ストレージ媒体。
【０１０６】
２１．  機械の１つ以上のプロセッサにより実行される場合に、例１４〜１９の何れか１つに記載の方法を前記機械に実行させる命令を搬送する機械可読媒体。
【０１０７】
＜言語＞
本開示の実施形態は、特定の例示的実施形態を参照しながら記述されたが、発明の主題の広範な範囲から逸脱することなく、これらの実施形態に様々な修正及び変更がなされ得ることは明白である。したがって、明細書及び図面は、限定的な意味よりも、むしろ説明とみなされるべきである。本明細書の一部を形成する添付の図面は、説明、並びに主題が実施される非限定的な特定の実施形態として示される。説明される実施形態は、本明細書に開示される技術を当業者が実施することを可能にするのに十分詳細に記述されている。この開示の範囲から逸脱することなく、構造的及び論理的な代替及び変更がなされ得るように、その他の実施形態が使用され得、それらから派生し得る。この詳細な説明は、それ故、限定的な意味とみなされるべきではなく、様々な実施形態の範囲は、添付の請求項が権利を与えられる均等物の全ての範囲と共に、該請求項によってのみ画定される。
【０１０８】
発明の主題のこうした実施形態は、単に便宜上のために、現に２つ以上が開示される場合には何れの１つの発明又は発明内容にこの出願の範囲を自発的に限定する意図なしに、用語“発明”によって個別に及び／又は纏めて本明細書で言及され得る。したがって、特定の実施形態が本明細書で説明及び記述されているが、同じ目的を実現するために計算される任意の配置が、示された特定の実施形態に代わり得ることは認められるべきである。この開示は、様々な実施形態のあらゆる適応物及び変形物をカバーすることを意図する。上記の実施形態の組み合わせ、及び本明細書に特には記述されないその他の実施形態は、上の説明を検討すると、当業者には明らかになるであろう。
【０１０９】
この文献中で参照される全ての出版物、特許、及び特許文献は、参照により個別に組み込まれるかのように、それらの全体が参照により本明細書に組み込まれる。そうした参照によって、この文献とそれらの文献との間で矛盾した使用がある場合、組み込まれた参照の使用は、この文献のそれに補足的に考慮されるべきであり、調和しない矛盾のために、この文献中の該使用は制御される。
【０１１０】
この文献において、用語“ａ”又は“ａｎ”は、特許文献では普通のことであるが、 任意のその他の実例又は“少なくとも１つ”若しくは“１つ以上”の使用とは関係なく、１つ以上のものを含むように使用される。この文献において、用語“又は（若しくは）”は、非排他的であること指すように、又は特段の断りがない限り“Ａ又はＢ”が“ＡではなくＢ”、“ＢではなくＡ”、及び“Ａ及びＢ”を含むように使用される。添付の請求項において、用語“ｉｎｃｌｕｄｉｎｇ”及び“ｉｎ  ｗｈｉｃｈ”は、夫々用語“ｃｏｍｐｒｉｓｉｎｇ”及び“ｗｈｅｒｅｉｎ”の平易な英語と同じものとして使用される。ま
た、以下の請求項において、用語“ｉｎｃｌｕｄｉｎｇ”及び“ｃｏｍｐｒｉｓｉｎｇ”には制約がなく、すなわち、請求項においてそうした用語の後に列挙された要素に加えて要素を含むシステム、デバイス、物、又はプロセスは、該クレームの範囲内にあると依然としてみなされる。
【図１】
2019535066.tif 000010
【図２】
2019535066.tif 000011
【図３】
2019535066.tif 000012
【図４】
2019535066.tif 000013
【図５Ａ】
2019535066.tif 000014
【図５Ｂ】
2019535066.tif 000015
【図６】
2019535066.tif 000016
【図７】
2019535066.tif 000017
【図８】
2019535066.tif 000018
【図９】
2019535066.tif 000019
【図１０】
2019535066.tif 000020
【図１１】
2019535066.tif 000021
【図１２】
2019535066.tif 000022
【図１３】
2019535066.tif 000023
【図１４】
2019535066.tif 000024
【図１５】
2019535066.tif 000025
【図１６】
2019535066.tif 000026
【図１７】
2019535066.tif 000027
【図１８】
2019535066.tif 000028
【手続補正書】
【提出日】平成31年4月3日(2019.4.3)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０００９
【補正方法】変更
【補正の内容】
【０００９】
一例として、より深い洞察を提供するために、可視化システムは、マルチスクリーン表
示システム中に表示するためのリンクされた複数のビューを提供するように構成され得る
。例えば、マルチスクリーン表示システムは、回転する３次元（３Ｄ）仮想地球の外観を
表示するように大きなセンタスクリーンが構成され得、平面な世界地図と共に該地球の異
なる領域のズームインビューを表示するようにサイドスクリーンが構成され得るように、
構成され得る。代替的な例として、可視化システムは、ＶＲ空間中の可視化をユーザが眺
め、該可視化とインタラクティブすることを可能にする、ＶＲヘッドセット等の仮想現実
（ＶＲ）システムと統合され得る。マルチスクリーン表示及びＶＲシステムに加えて、可
視化システムは、３Ｄ仮想地球又は２Ｄ平面世界図をユーザがそれらの手振りで直接操縦
することが可能なモーション入力デバイスと統合され得る。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００２０
【補正方法】変更
【補正の内容】
【００２０】
前述の問題を補間するために、適応的ジッタ安定化コンポーネント２０４は、スライデ
ィングタイムウィンドウ２１２を更新するための変化率を決定するために、直近のデータ
パケットのタイムスタンプ２１０とアニメーションのスライディングタイムウィンドウ２
１２との間のデルタを計算する。スライディングタイムウィンドウ２１２は、上界及び下
界を含む。説明の目的のため、時間ｔにおいてデータパケットが到来するエポックなタイ
ムスタンプをＴｐ（ｔ）であるとする。更に、ＴＷ（ｔ）＝（Ｔｍｉｎ（ｔ）,Ｔｍａｘ
（ｔ））は、アニメーションの進捗を制御するスライディングタイムウィンドウを意味す
るとし、ここで、Ｔｍｉｎ（ｔ）は下界であり、Ｔｍａｘ（ｔ）は上界であり、｜Ｔｍｉ
ｎ（ｔ）  −  Ｔｍａｘ（ｔ）｜は一定である。現在のキーフレームにおけるＴＷ（ｔ）
の変化率は、以下の一次常微分式（以後“定式１”と称する）によって統制される。
【数１】
2019535066.tif 000029
ここで、ωは最小の定数係数であり、ｈは、通常、｜Ｔｍｉｎ（ｔ）  −  Ｔｍａｘ（ｔ
）｜の内のごく一部であるステップサイズである。定式１は、例えば、オイラーステップ
法により解かれ得る。定式１に照らして、スライディングタイムウィンドウの変化率は、
直近データのタイムスタンプとスライディングタイムウィンドウの上界との間の差に依存
する。該データのタイムスタンプがスライディングタイムウィンドウの上界よりも古い（
Ｔｐ（ｔ）＜Ｔｍａｘ（ｔ））場合、定式１は、スライディングタイムウィンドウが前進
することを停止させる。これは、古いデータパケットが、それが到来すべきよりも遅く到
来するジッタ状態である。一方、スライディングタイムウィンドウがあまりにゆっくりと
移動し、直近のタイムスタンプがスライディングタイムウィンドウの上界よりも新しい（
Ｔｐ（ｔ）＞Ｔｍａｘ（ｔ））場合、スライディングタイムウィンドウの変化率は維持さ
れ又は増加する。要約すると、何れの場合でも、定式１は、Ｔｐ（ｔ）及びＴｍａｘ（ｔ
）を、それらが一致するように均衡させるであろう。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００３４
【補正方法】変更
【補正の内容】
【００３４】
示されるように、円弧のハイライトが宛先点に到達する前の長期間、該円弧を視覚可能
に維持するのに十分に、定式５中のガウス関数を平坦化するために、定式５中のようなパ
ラメータσは、スライディングタイムウィンドウのサイズの半分以上であるべきである。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００４２
【補正方法】変更
【補正の内容】
【００４２】
動作６３０において、動的メモリ管理コンポーネント２０２は、１つ以上のデータパケ
ットをＧＰＵメモリ２０８及びＣＰＵメモリ２０６から一掃する。上述のように、視覚的
混乱を削減するために、可視化数理モデルは、視覚的メタファが完全に透明になるまで、
視覚的メタファの不透明度を徐々に減少させる。動的メモリ管理コンポーネント２０２は
、新たなデータのためにＣＰＵ及びＧＰＵのメモリ２０６、２０８の両者中に空き場所を
作るための対応する視覚的メタファに応じて、ＧＰＵメモリ２０８からデータパケットを
一掃し得る。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００４４
【補正方法】変更
【補正の内容】
【００４４】
動作７０５において、レンダリングエンジン１１６は、発信元位置を宛先位置に接続す
るマップ上の円弧の点を補間する。レンダリングエンジン１１６は、上述したような可視
化数理モデルに基づいて円弧の点を補間する。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００４５
【補正方法】変更
【補正の内容】
【００４５】
動作７１０において、レンダリングエンジン１１６は、発信元位置と宛先位置との間の
距離に基づいて、円弧に曲率制御を適用する。曲率制御の円弧への適用において、レンダ
リングエンジン１１６は、上で論じた可視化数理モデルに従って、発信元位置と宛先位置
との距離に基づいて円弧に対する最大の高さを判定する。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００４６
【補正方法】変更
【補正の内容】
【００４６】
動作７１５において、レンダリングエンジン１１６は、発信元位置から宛先位置までの
円弧の移動をアニメーション化する。レンダリングエンジン１１６は、上で論じた可視化
数理モデルに従って、スライディングタイムウィンドウ全体を通じて円弧の部分の不透明
度を変更することによって、円弧の移動をアニメーション化する。より具体的には、レン
ダリングエンジン１１６は、発信元位置に最初に設置された円弧の特定区域（“ハイライ
ト”区域）の不透明度を増加させ、円弧のその他の区域の不透明度を維持しつつ、発信元
位置から宛先位置までのハイライト区域を徐々に移動させることによって、円弧の移動を
アニメーション化する。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００５０
【補正方法】変更
【補正の内容】
【００５０】
上述のように、スライディングタイムウィンドウ２１２は上界及び下界を含む。動作８
１０において、適応的ジッタ安定化コンポーネント２０４は、タイムスタンプ２１０がス
ライディングタイムウィンドウ２１２の上界よりも古いか否かを判定するために、タイム
スタンプ２１０をスライディングタイムウィンドウ２１２の上界と比較する。言い換えれ
ば、適応的ジッタ安定化コンポーネント２０４は、タイムスタンプ２１０がスライディン
グタイムウィンドウ２１２の上界よりも時間的に早いか否かを判定する。タイムスタンプ
２１０がスライディングタイムウィンドウ２１２の上界よりも古いと適応的ジッタ安定化
コンポーネント２０４が判定した場合、適応的ジッタ安定化コンポーネント２０４は、動
作８１５において、スライディングタイムウィンドウ２１２の変化率を削減又は停止する
。上界がタイムスタンプ２１０よりも古いと適応的ジッタ安定化コンポーネント２０４が
判定した場合、適応的ジッタ安定化コンポーネント２０４は、動作８２０において、スラ
イディングタイムウィンドウ２１２の変化率を維持又は増加させる。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００７１
【補正方法】変更
【補正の内容】
【００７１】
メモリ１８３０は、バス１８０２を介する等してプロセッサ１８１０に共にアクセス可
能な、メインメモリ１８３２、スタティックメモリ１８３４、及びストレージユニット１
８３６を含み得る。メインメモリ１８３２、スタティックメモリ１８３４、及びストレー
ジユニット１８３６は、本明細書に記述される方法論又は機能の任意の１つ以上を具体化
する命令１８１６を格納する。命令１８１６はまた、メインメモリ１８３２内に、スタテ
ィックメモリ１８３４内に、ストレージユニット１８３６内に、プロセッサ１８１０の内
の少なくとも１つの内に（例えば、プロセッサのキャッシュメモリ内に）、又はそれらの
任意の適切な組み合わせで、機械１８００によるそれらの実行中に完全に又は部分的に存
在し得る。
【国際調査報告】
2019535066.tif 000030