(57)【要約】【課題】実施形態は、実験パラメータを含む、オブジェクトを表すモデルを定義することによって、仮想現実体験を提供する。【解決手段】モデルを定義した後、実験パラメータの変動値を使用してモデルシミュレーションが実施され、これは、１または複数の変動値の各々に対する結果を生じる。結果は、各変動に対する、モデルの対象挙動についての値を含む。次に、結果は、対象挙動の連続的なサロゲートを有する離散的なポリトープビンを含む補間式に圧縮される。実験パラメータのユーザ提供値に応答して、補間式を使用して対象挙動の値が予測される。そして、１または複数の実験パラメータのユーザ提供値についての、モデルに対する影響をユーザに対して表示することによって、仮想現実体験が提供され、モデルに対する表示される影響は、対象挙動についての予測された値を反映する。【選択図】図１
2017111823.tif 000002
【特許請求の範囲】
【請求項１】
仮想現実体験を提供するためのコンピュータ実装方法であって、
コンピュータメモリにおいてオブジェクトを表すモデルを定義するステップであって、前記モデルは、１または複数の実験パラメータを含む、ステップと、
前記コンピュータメモリに結合されたプロセッサによって、
前記１または複数の実験パラメータの１または複数の変動値を使用してモデルシミュレーションを実施するステップであって、前記シミュレーションの実施は、前記１または複数の変動値の各々に対するそれぞれの結果を生じ、前記それぞれの結果は、前記１または複数の変動値の各々に対する、前記モデルの対象挙動についてのそれぞれの値を含む、ステップと、
前記それぞれの結果を、前記対象挙動の連続的なサロゲートを有する離散的なポリトープビンを含む補間式に圧縮するステップと、
前記１または複数の実験パラメータのユーザ提供値に応答して、前記ユーザ提供値が与えられた場合の前記対象挙動についての値を予測するステップであって、前記予測することは前記補間式を使用する、ステップと、
前記１または複数の実験パラメータの前記ユーザ提供値についての、前記モデルに対する影響を、ユーザに対して表示することによって、仮想現実体験を前記ユーザに提供するステップであって、前記モデルに対する前記表示される影響は、前記対象挙動についての前記予測された値を反映する、ステップと
を含むことを特徴とする方法。
【請求項２】
前記モデルは、
コンピュータ支援エンジニアリングモデル（ＣＡＥ）と、
有限要素モデルと、
有限体積モデルと、
計算流体力学モデルと、
多体動力学モデルと
のうちの少なくとも１つであることを特徴とする請求項１に記載の方法。
【請求項３】
前記実験パラメータの前記１または複数の変動値の各々に対する前記それぞれの結果を連結して１つのファイルにするステップと、
前記１つのファイルをデータベースに記憶するステップとをさらに含むことを特徴とする請求項１に記載の方法。
【請求項４】
複数の対象挙動があり、前記シミュレーションの実施からの前記それぞれの結果は、前記実験パラメータの前記１または複数の変動値の各々に対する、前記複数の対象挙動の各挙動についてのそれぞれの値を生じ、
前記複数の対象挙動の各挙動について並行して前記結果を圧縮するステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記対象挙動は、
前記モデルの要素の空間的位置と、
時間と、
前記モデルの物理的挙動と
のうちの少なくとも１つを含むことを特徴とする請求項１に記載の方法。
【請求項６】
前記ポリトープビンの面を最適化するステップをさらに含み、前記面を最適化することは、前記結果の改善された圧縮をもたらすことを特徴とする請求項１に記載の方法。
【請求項７】
前記サロゲートは、
多項式と、
放射基底関数と
のうちの少なくとも一方であることを特徴とする請求項１に記載の方法。
【請求項８】
前記ポリトープビンは、類似する結果データを含むことを特徴とする請求項１に記載の方法。
【請求項９】
前記ポリトープビンは、前記１もしくは複数の実験パラメータ、前記対象挙動、前記１もしくは複数の実験パラメータの変形、前記対象挙動の変形、時間、または空間座標、で少なくとも定義される面を有することを特徴とする請求項１に記載の方法。
【請求項１０】
仮想現実体験を提供するためのコンピュータシステムであって、
プロセッサと、
コンピュータコード命令が記憶されたメモリとを備え、前記プロセッサと、前記コンピュータコード命令を有する前記メモリとは、前記システムに、
コンピュータシステムメモリにおいてオブジェクトを表すモデルを定義することであって、前記モデルは、１または複数の実験パラメータを含む、ことと、
前記１または複数の実験パラメータの１または複数の変動値を使用してモデルシミュレーションを実施することであって、前記シミュレーションの実施は、前記１または複数の変動値の各々に対するそれぞれの結果を生じ、前記それぞれの結果は、前記１または複数の変動値の各々に対する、前記モデルの対象挙動についてのそれぞれの値を含む、ことと、
前記それぞれの結果を、前記対象挙動の連続的なサロゲートを有する離散的なポリトープビンを含む補間式に圧縮することと、
前記１または複数の実験パラメータのユーザ提供値に応答して、前記ユーザ提供値が与えられた場合の前記対象挙動についての値を予測することであって、前記予測することは前記補間式を使用する、ことと、
前記１または複数の実験パラメータの前記ユーザ提供値についての、前記モデルに対する影響をユーザに対して表示することによって、仮想現実体験を前記ユーザに提供することであって、前記モデルに対する前記表示される影響は、前記対象挙動についての前記予測された値を反映する、ことと
を行わせるように構成されたことを特徴とするコンピュータシステム。
【請求項１１】
前記モデルは、
コンピュータ支援エンジニアリング（ＣＡＥ）モデルと、
有限要素モデルと、
有限体積モデルと、
計算流体力学モデルと、
多体動力学モデルと
のうちの少なくとも１つであることを特徴とする請求項１０に記載のコンピュータシステム。
【請求項１２】
前記プロセッサと、前記コンピュータコード命令を有する前記メモリとは、前記システムに、
前記実験パラメータの前記１または複数の変動値の各々に対する前記それぞれの結果を連結して１つのファイルにすることと、
前記１つのファイルをデータベースに記憶することとを行わせるようにさらに構成されたことを特徴とする請求項１０に記載のコンピュータシステム。
【請求項１３】
複数の対象挙動があり、前記シミュレーションの実施からの前記それぞれの結果は、前記実験パラメータの前記１または複数の変動値の各々に対する、前記複数の対象挙動の各挙動についてのそれぞれの値を生じ、前記プロセッサと、前記コンピュータコード命令を有する前記メモリとは、前記システムに、
前記複数の対象挙動の各挙動について並行して前記結果を圧縮することを行わせるようにさらに構成されたことを特徴とする請求項１０に記載のコンピュータシステム。
【請求項１４】
前記対象挙動は、
前記モデルの要素の空間的位置と、
時間と、
前記モデルの物理的挙動と
のうちの少なくとも１つを含むことを特徴とする請求項１０に記載のコンピュータシステム。
【請求項１５】
前記プロセッサと、前記コンピュータコード命令を有する前記メモリとは、前記システムに、
前記ポリトープビンの面を最適化することを行わせるようにさらに構成され、その結果、前記結果の改善された圧縮がもたらされることを特徴とする請求項１０に記載のコンピュータシステム。
【請求項１６】
前記サロゲートは、
多項式と、
放射基底関数と
のうちの少なくとも一方であることを特徴とする請求項１０に記載のコンピュータシステム。
【請求項１７】
前記ポリトープビンは、類似する結果データを含むことを特徴とする請求項１０に記載のコンピュータシステム。
【請求項１８】
前記ポリトープビンは、前記１もしくは複数の実験パラメータ、前記対象挙動、前記１もしくは複数の実験パラメータの変形、前記対象挙動の変形、時間、または空間座標、で少なくとも定義される面を有することを特徴とする請求項１０に記載のコンピュータシステム。
【請求項１９】
仮想現実体験を提供するためのコンピュータプログラム製品であって、ネットワークを介して１または複数のクライアントと通信するサーバによって実行され、
コンピュータ可読媒体を含み、前記コンピュータ可読媒体はプログラム命令を含み、前記プログラム命令は、プロセッサによって実行されたとき、
コンピュータシステムメモリにおいてオブジェクトを表すモデルを定義することであって、前記モデルは１または複数の実験パラメータを含む、ことと、
前記１または複数の実験パラメータの１または複数の変動値を使用してモデルシミュレーションを実施することであって、前記シミュレーションの実施は前記１または複数の変動値の各々に対するそれぞれの結果を生じ、前記それぞれの結果は、前記１または複数の変動値の各々に対する、前記モデルの対象挙動についてのそれぞれの値を含む、ことと、
前記それぞれの結果を、前記対象挙動の連続的なサロゲートを有する離散的なポリトープビンを含む補間式に圧縮することと、
前記１または複数の実験パラメータのユーザ提供値に応答して、前記ユーザ提供値が与えられた場合の前記対象挙動についての値を予測することであって、前記予測することは前記補間式を使用する、ことと、
前記１または複数の実験パラメータの前記ユーザ提供値についての、前記モデルに対する影響を、ユーザに対して表示することによって、仮想現実体験を前記ユーザに提供することであって、前記モデルに対する前記表示される影響は前記対象挙動についての前記予測された値を反映する、ことと
を引き起こすことを特徴とするコンピュータプログラム製品。
【請求項２０】
複数の対象挙動があり、前記シミュレーションの実施からの前記それぞれの結果は、前記実験パラメータの前記１または複数の変動値の各々に対する、前記複数の対象挙動の各挙動についてのそれぞれの値を生じ、前記コンピュータ可読媒体はプログラム命令を含み、前記プログラム命令は、前記プロセッサによって実行されたとき、
前記複数の対象挙動の各挙動について並行して前記結果を圧縮することをさらに引き起こすことを特徴とする請求項１９に記載のコンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は一般に、コンピュータプログラムおよびシステムの分野に関し、詳細には、製品設計およびシミュレーションの分野に関する。本発明の実施形態は、ビデオゲーム、エンジニアリングシステム設計、共同的意思決定、および娯楽、例えば映画において、採用することが可能である。
【背景技術】
【０００２】
パーツ、またはパーツのアセンブリの、設計およびシミュレーションのために、多くの既存の製品システムおよびシミュレーションシステムが市場で提供されている。このようなシステムは通常、コンピュータ支援設計（ＣＡＤ）および／またはコンピュータ支援エンジニアリング（ＣＡＥ）プログラムを採用する。これらのシステムにより、ユーザは、オブジェクト、またはオブジェクトのアセンブリの、複雑な３次元モデルを構築、操作、およびシミュレートすることが可能となる。したがって、これらのＣＡＤおよびＣＡＥシステムは、エッジまたはラインを使用して、場合によっては面を用いて、モデル化されるオブジェクトの表現を提供する。ライン、エッジ、面、またはポリゴンは、様々な方式で、例えば非一様有理Ｂスプライン（ＮＵＲＢＳ）で表すことがある。
【０００３】
これらのＣＡＤシステムは、モデル化されるオブジェクトのパーツ、またはパーツのアセンブリを管理するが、これらは主に、幾何形状の仕様である。特に、ＣＡＤファイルは、幾何形状が生成される元となる仕様を含む。幾何形状から、表現が生成される。仕様、幾何形状、および表現は、単一のＣＡＤファイルまたは複数のＣＡＤファイルに記憶されることがある。ＣＡＤシステムは、モデル化されるオブジェクトを設計者に対して表すためのグラフィックツールを含み、これらのツールは、複雑なオブジェクトの表示に専用とされる。例えば、アセンブリは、何千個ものパーツを含むことがある。ＣＡＤシステムは、オブジェクトのモデルを管理するために使用することができ、これらのモデルは電子ファイルに記憶される。
【０００４】
ＣＡＤおよびＣＡＥシステムの出現により、オブジェクトに対する幅広い表現が可能となる。このような表現の１つは、有限要素解析（ＦＥＡ）モデルである。ＦＥＡモデル、有限要素モデル（ＦＥＭ）、有限要素メッシュ、およびメッシュという用語は、本明細書では交換可能に使用される。ＦＥＭは通常、ＣＡＤモデルを表し、したがって、１もしくは複数のパーツ、またはアセンブリ全体を表すことができる。ＦＥＭは、節点と呼ばれる点のシステムであり、節点は相互接続されて、メッシュと呼ばれるグリッドをなす。ＦＥＭは、ＦＥＭが表す基礎をなすオブジェクトのプロパティをＦＥＭが有するようにして、プログラムされることが可能である。ＦＥＭが、または当技術分野で知られている他のそのようなオブジェクト表現がこのようにしてプログラムされたとき、それは、それが表すオブジェクトのシミュレーションを実施することができる。例えば、ＦＥＭは、車両の内部キャビティ、構造の周囲の音響流体、および任意の数の実世界オブジェクトを表すために使用することができる。さらに、ＦＥＭと共にＣＡＤおよびＣＡＥシステムを利用して、エンジニアリングシステムをシミュレートすることができる。例えば、ＣＡＥシステムを採用して、車両の雑音および振動をシミュレートすることができる。
【０００５】
これらの既存のシミュレーション／実験技法は、その欠点がないわけではない。このような既存の方法論に伴う主要な問題は、実行するのにかかる時間である。この時間により、既存の方法は、例えば仮想現実で使用されるための、実際的な方法論となることができない。
【発明の概要】
【課題を解決するための手段】
【０００６】
本発明の実施形態は、既存の方法論に伴う問題を克服するものであり、仮想現実体験を提供する方法およびシステムを提供する。本発明の実施形態はさらに、システムエンジニアリングのためのシミュレーション結果圧縮、連成シミュレーション（co-simulation）、物理抽象化（モデル）、およびビデオゲームをとりわけ含めた、様々な分野を向上させる。
【０００７】
少なくとも１つの例示的な実施形態によれば、仮想現実体験を提供する方法は、オブジェクトを表すモデルをコンピュータメモリ中で定義することによって開始し、モデルは１または複数の実験パラメータを含む。モデルを定義した後、メモリに結合されたプロセッサによって、１または複数の実験パラメータの１または複数の変動値を使用してモデルシミュレーションが実施される。シミュレーションの実施は、１または複数の変動値の各々に対するそれぞれの結果を生じ、それぞれの結果は、１または複数の変動値の各々に対する、モデルの対象挙動についてのそれぞれの値を含む。次に、結果は、対象挙動の連続的なサロゲート（surrogate）を有する離散的なポリトープビン（polytope bin）を含む補間式に圧縮される。続けると、１または複数の実験パラメータの、ユーザによって提供された値（以下、ユーザ提供値）に応答して、ユーザ提供値が与えられた場合の対象挙動の値が、補間式を使用して予測される。そして、１または複数の実験パラメータのユーザ提供値についての、モデルに対する影響をユーザに対して表示することによって、仮想現実体験がユーザに提供され、モデルに対する表示される影響は、対象挙動についての予測された値を反映する。
【０００８】
本発明の実施形態によれば、モデルは、コンピュータ支援エンジニアリング（ＣＡＥ）モデルと、有限要素モデルと、有限体積モデルと、計算流体力学モデルと、多体動力学モデルとのうちの少なくとも１つである。
【０００９】
別の実施形態は、実験パラメータの１または複数の変動値の各々に対するそれぞれの結果を連結して１つのファイルにすること、およびこの１つのファイルをデータベースに記憶することをさらに含む。さらにまた、さらに別の実施形態では、複数の対象挙動があり、シミュレーションの実施からのそれぞれの結果は、実験パラメータの１または複数の変動値の各々に対する、複数の対象挙動の各挙動についてのそれぞれの値を生じる。前記方法実施形態は、複数の対象挙動の各挙動について並行して結果を圧縮する。さらに別の実施形態では、対象挙動は、モデルの要素の空間的位置と、時間と、モデルの物理的挙動とのうちの少なくとも１つを含む。
【００１０】
この方法の実施形態は、ポリトープビンの面を最適化することをさらに含み、これにより、結果の改善された圧縮がもたらされる。さらに別の実施形態では、サロゲートは、多項式または放射基底関数など、当技術分野で知られている任意のサロゲートであってよい。実施形態によれば、ポリトープビンは、類似する結果データを含む。さらに、この方法の別の実施形態では、ポリトープビンは、１もしくは複数の実験パラメータ、対象挙動、１もしくは複数の実験パラメータの変形、対象挙動の変形、時間、または空間座標、で少なくとも定義される面を有する。
【００１１】
本発明の代替的実施形態は、仮想現実体験を提供するためのコンピュータシステムに向けられている。このようなコンピュータシステムは、プロセッサと、コンピュータコード命令が記憶されたメモリとを備え、プロセッサと、コンピュータコード命令を有するメモリとは、本明細書に記載の様々な実施形態をシステムに実装させるように構成される。このような一実施形態では、プロセッサと、コンピュータコード命令を有するメモリとは、オブジェクトを表すモデルをコンピュータシステムメモリ中で定義することであって、モデルが１または複数の実験パラメータを含むものであること、および、１または複数の実験パラメータの１または複数の変動値を使用してモデルシミュレーションを実施することであって、シミュレーションの実施が１または複数の変動値の各々に対するモデルの対象挙動についてのそれぞれの値を含む結果を生じることを、システムに行わせる。さらに、このようなコンピュータシステム実施形態では、プロセッサと、コンピュータコード命令を有するメモリとは、それぞれの結果を、対象挙動の連続的なサロゲートを有する離散的なポリトープビンを含む補間式に圧縮することを、システムにさらに行わせる。さらに、システムは、１または複数の実験パラメータのユーザ提供値に応答して、ユーザ提供値が与えられた場合の対象挙動についての値を、補間式を使用して予測する。予測された値を使用して、システムは、１または複数の実験パラメータのユーザ提供値についてのモデルに対する影響をユーザに対して表示することによって、仮想現実体験をユーザに提供する。
【００１２】
コンピュータシステムの実施形態によれば、モデルは、ＣＡＥモデルと、有限要素モデルと、有限体積モデルと、計算流体力学モデルと、多体動力学モデルとのうちの少なくとも１つである。コンピュータシステムの別の実施形態では、プロセッサと、コンピュータコード命令を有するメモリとは、実験パラメータの１または複数の変動値の各々に対するそれぞれの結果を連結１つのファイルにすること、およびこの１つのファイルをデータベースに記憶することを、システムに行わせるようにさらに構成される。
【００１３】
さらに別のコンピュータシステム実施形態では、複数の対象挙動があり、シミュレーションの実施からのそれぞれの結果は、実験パラメータの１または複数の変動値の各々に対する、複数の対象挙動の各挙動についてのそれぞれの値を生じる。さらに、このような実施形態では、プロセッサと、コンピュータコード命令を有するメモリとは、複数の対象挙動の各挙動について並行して結果を圧縮することを、システムに行わせるようにさらに構成される。実施形態によれば、対象挙動は、モデルの要素の空間的位置と、時間と、モデルの物理的挙動とのうちの少なくとも１つを含む。
【００１４】
さらに他のコンピュータシステム実施形態では、本発明の原理によれば、プロセッサと、コンピュータコード命令を有するメモリとは、結果の改善された圧縮をもたらすようにポリトープビンの面を最適化することを、システムに行わせるようにさらに構成される。コンピュータシステムの実施形態によれば、サロゲートは、多項式と放射基底関数とのうちの少なくとも一方である。さらに別の実施形態では、ポリトープビンは、類似する結果データを含む。さらにまた、別のコンピュータシステム実施形態では、ポリトープビンは、１もしくは複数の実験パラメータ、対象挙動、１もしくは複数の実験パラメータの変形、対象挙動の変形、時間、または空間座標、で少なくとも定義される面を有する。
【００１５】
本発明の別の実施形態は、仮想現実体験を提供するためのクラウドコンピューティング実装形態に向けられている。このような実施形態は、ネットワークを介して１または複数のクライアントと通信するサーバによって実行されるコンピュータプログラム製品に向けられ、コンピュータプログラム製品は、コンピュータ可読媒体を含む。このような実施形態では、コンピュータ可読媒体はプログラム命令を含み、プログラム命令は、プロセッサによって実行されたとき、オブジェクトを表すモデルをコンピュータシステムメモリ中で定義することであって、モデルが１または複数の実験パラメータを含むものであること、および、１または複数の実験パラメータの１または複数の変動値を使用してモデルシミュレーションを実施することであって、シミュレーションの実施が１または複数の変動値の各々に対するそれぞれの結果を生じ、それぞれの結果が、１または複数の変動値の各々に対するモデルの対象挙動についてのそれぞれの値を含むものであること、を引き起こす。さらに、このような実施形態では、プログラム命令は、プロセッサによって実行されたとき、それぞれの結果を、対象挙動の連続的なサロゲートを有する離散的なポリトープビンを含む補間式に圧縮すること、１または複数の実験パラメータのユーザ提供値に応答して、ユーザ提供値が与えられた場合の対象挙動についての値を予測すること、およびさらに、１または複数の実験パラメータのユーザ提供値についてのモデルに対する影響をユーザに対して表示することによって仮想現実体験をユーザに提供すること、をさらに引き起こし、モデルに対する表示される影響は、対象挙動についての予測された値を反映する。
【図面の簡単な説明】
【００１６】
上記は、添付図面に例証されるような本発明の例示的な実施形態に関する以下のより詳細な記述から明らかになる。添付図面では、異なる図を通して、同じ参照文字は同じ部分を指す。図面は必ずしも正確な縮尺ではない。そうではなく、本発明の実施形態を例証することに重点が置かれる。
【図１】少なくとも１つの例示的な実施形態による、仮想現実体験を提供するためのコンピュータ実装方法のフローチャートである。
【図２】例示的な実施形態による仮想現実オーサリング方法を描く図である。
【図３】実施形態による、設計変数を有するモデル、およびモデルの仮想現実体験を例証する図である。
【図４】実施形態で使用され得るモデルを描く図である。
【図５Ａ】例示的な実施形態の原理を使用して提供され得る、様々な時点における仮想現実体験を描く図である。
【図５Ｂ】例示的な実施形態の原理を使用して提供され得る、様々な時点における仮想現実体験を描く図である。
【図５Ｃ】例示的な実施形態の原理を使用して提供され得る、様々な時点における仮想現実体験を描く図である。
【図５Ｄ】例示的な実施形態の原理を使用して提供され得る、様々な時点における仮想現実体験を描く図である。
【図５Ｅ】例示的な実施形態の原理を使用して提供され得る、様々な時点における仮想現実体験を描く図である。
【図５Ｆ】例示的な実施形態の原理を使用して提供され得る、様々な時点における仮想現実体験を描く図である。
【図６】本発明の実施形態の原理を使用して決定され得るモデルパラメータのグラフである。
【図７】実施形態の原理を使用して決定されるモデルパラメータのグラフである。
【図８】本発明の方法の実施形態により計算されるパラメータのグラフである。
【図９】実施形態による、仮想現実体験を提供するためのコンピュータシステムの簡略ブロック図である。
【図１０】本発明の実施形態が実装され得るコンピュータネットワーク環境の簡略図である。
【発明を実施するための形態】
【００１７】
本発明の例示的な実施形態に関する記述が以下に続く。
【００１８】
本明細書で引用されるすべての特許、公開出願、および参考文献の教示は、それらの全体が参照により組み込まれる。
【００１９】
本発明の実施形態は、仮想現実体験を提供する。このような体験を提供する際、実施形態は、現実的または仮想的な実験を生み出し、それにより、様々な対象シナリオ（すなわち、実験の設計）についての対象挙動（例えば、ＶＲＭＬ、ＣＡＤオブジェクトまたはメッシュなどのオブジェクトの節点の空間的位置；時間；および／または、温度または応力などの物理的挙動）が決定される。実施形態によれば、データは連結されて１つのデータファイルにされ、このデータファイルは、データタイプ（例えば、時間、オブジェクト節点座標、または挙動値）の列を伴うインスタンス行の形である。ほんの数秒にわたるこのようなインタラクティブ体験トレースを記述するファイルは、容易に約１０〜１００ギガバイトになる可能性がある。
【００２０】
既存の方法を使用する場合、各時間枠につき何万個もの空間的節点にわたるこのデータを圧縮解除して補間するのは、非常に遅く、特に「最近傍（nearest neighbor）」などの技法を用いる場合はそうであり、最近傍によれば、最も近いユークリッド距離を有する値を用いて補間が行われる。このような補間は、多くの秒数がかかることがあり、したがって、リアルタイムまたはほぼリアルタイムの仮想現実体験のためには実際的でなくなる。
【００２１】
Ｖａｎ  ｄｅｒ  Ｖｅｌｄｅｎの米国特許出願第１４／５７４，８４３号明細書、Ａｎｄａｍらの米国特許出願公開第２００８／０１８１３０３号明細書、およびＶＲＭＬ９７Ｓｐｅｃｉｆｉｃａｔｉｏｎ：Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｓｔａｎｄａｒｄ  ＩＳＯ／ＩＥＣ１４７２２：Ｖｉｒｔｕａｌ  Ｒｅａｌｉｔｙ  Ｍｏｄｅｌｉｎｇ  Ｌａｎｇｕａｇｅなど、データ圧縮のためおよび仮想現実体験の提供のための方法論は存在するが、これらの方法は、本発明の実施形態ほど効率的にリアルタイムまたはほぼリアルタイムの仮想現実を提供することはできない。例えば、Ｖａｎ  ｄｅｒ  Ｖｅｌｄｅｎの米国特許出願第１４／５７４，８４３号明細書は、一意の、時間的、空間的、かつ入力された、イーブン状態の限られたデータセット（約１０，０００個のインスタンス）で最も良く動作する。さらに、Ａｎｄａｍの米国特許出願公開第２００８／０１８１３０３号明細書は、時間的および２Ｄ空間的データ（すなわちビデオ）に限定された圧縮技法について記述している。
【００２２】
Ａｎｄａｍは、例えば、ビデオのサイズを指数的に縮小するために、類似する色値の画素が、数学式によって定義されるポリゴンに共にグループ化される方法について記述している。本発明の実施形態は、類似するデータをビンする（bin）ための適切なｎ次元ポリトープを定義することによって、このアプローチを展開し、ここで、ポリトープエッジ座標は、時間、節点、または挙動など、任意のパラメータとしてまたはパラメータの変形として定義することができる。さらに、本発明の実施形態は、多項式や放射基底関数など、前述のようにしてビンされたデータについて対象挙動の近似を生み出すための機能を提供する。
【００２３】
本発明の実施形態は、−Ｎ3までスケールする回帰技法を利用する。したがって、例では、Ｎ＝１０００サンプルであってそれぞれが１０００回の回帰を伴う場合、このような回帰実装形態は、１，０００，０００サンプルの１回の回帰よりも百万倍効率的である。さらに、実施形態は、ポリトープの座標を最適化し各対象挙動に対するサロゲートモデルのタイプを選択することによって、圧縮の精度を改善することができる。実施形態では、サロゲートは、変数としての時間を用いて直接に作成されてよく、それにより、予測は、タイムスタンプに応じて、または非線形の常微分方程式として行われ（Ｖａｎ  ｄｅｒ  Ｖｅｌｄｅｎの米国特許出願第１４／５７４，８４３号明細書におけるように）、それにより時間が数値的に積分される。本発明の実施形態を使用して達成することができる非常に高い圧縮率、すなわち、１：１００から１：１０，０００を利用して、歪み、温度、または動きなど、フィールド挙動のインタラクティブ３Ｄ体験のリアルタイム予測を提供することができる。
【００２４】
図１は、本発明の実施形態による、仮想現実体験を提供する方法１００のフローチャートである。方法１００は、ステップ１０１で、オブジェクトを表すモデルをコンピュータメモリで定義することによって開始し、モデルは、１または複数の実験パラメータを含む。方法１００の実施形態によれば、モデルは、ユーザ対話に応答して定義される。例えば、ユーザは、当技術分野で知られている技法を使用して、モデルを定義／構築し、モデルが表すオブジェクトに関する様々なデータを提供することができる。これは、モデルが実世界オブジェクトのパラメータのすべてに一致するようにして、モデルをプログラミングすることを含むことができる。例えば、モデルは、例の中でもとりわけ、表されるオブジェクトの寸法、質量、および硬さなど、モデルが表すオブジェクトの任意のプロパティを有するようにプログラムされてよい。モデルは、シミュレーションで使用されるように相応にプログラムすることが可能な、当技術分野で知られている任意のモデルであってよい。言い換えれば、実施形態によれば、モデルは、このオブジェクトの挙動を表すことができる。例示的なモデルは、コンピュータ支援エンジニアリング（ＣＡＥ）モデル、有限要素モデル、有限体積モデル、計算流体力学モデル、および多体動力学モデルを含む。さらに、定義されるモデルはまた、モデルが表すオブジェクトの様々なプロパティを表すことのできる方程式または方程式系の形であってもよい。例は、代数方程式、常微分方程式、および偏微分方程式を含む。
【００２５】
本明細書で言及されるように、ステップ１０１で定義されるモデルは、実験パラメータを含む。実施形態によれば、実験パラメータは、調査している任意のパラメータ、方法１００によって提供される仮想現実体験を使用して視覚化したい任意のパラメータ、および／または、シミュレーションの実施において必要とされる任意のパラメータ、体験／シミュレーションの条件を定義するパラメータなどである。例示的な実験パラメータは、時間、モデルの要素の空間座標、および、ステップ１０２でモデルシミュレーションを実施する際に変動させられる、モデルの任意の様々な特性を含む。
【００２６】
続けると、ステップ１０１でモデルを定義した後、ステップ１０２でモデルシミュレーションが実施される。シミュレーションは、ステップ１０２で、１または複数の実験パラメータの、１または複数の変動値について実施される。さらに、シミュレーションの実施は、１または複数の変動値の各々に対するそれぞれの結果を生じ、これらの結果は、１または複数の変動値の各々に対する、モデルの対象挙動についてのそれぞれの値を含む。本発明の実施形態は、任意の数の対象挙動についての結果を決定し得る。このような実施形態では、ステップ１０２におけるシミュレーションの実施は、実験パラメータの１または複数の変動値の各々に対する、複数の対象挙動の各挙動についてのそれぞれの値を生じる。方法１００の実施形態によれば、対象挙動は、モデルの要素の空間的位置と、時間と、物理的挙動などのモデルの挙動とのうちの少なくとも１つを含む。方法１００の別の実施形態はさらに、ステップ１０２で実施されたシミュレーションからの結果を連結して１つのファイルにすること、および、さらにこの１つのファイルをデータベースに記憶することを含む。実施形態では、シミュレーションは、当技術分野で知られている原理に従って実施される。
【００２７】
ステップ１０２をさらに例証するために、モデルがテニスボールおよびテニスラケットであり、実験パラメータがボールの場所、時間、およびボールの厚さを含むという、単純化された例を考えてみる。シミュレーションでは、時間およびボール場所のパラメータが変動させられて、ボールがラケットに当たるのがシミュレートされ、このシミュレーションの結果は、例えば、時間の経過に伴うボール内部の圧力およびボールの歪みを含むことができる。このような例では、シミュレーションの結果は、様々な時間ならびにラケットおよびボールの場所における、ボール内部の圧力および／またはボールの歪みなど、１または複数の対象挙動を含む。このように、実施形態では、結果は、時間および空間に応じた、対象挙動についてのデータを提供する。
【００２８】
ステップ１０２でシミュレーションを実施した後、次いで、ステップ１０３でシミュレーション結果が圧縮される。実施形態では、シミュレーション結果は、対象挙動の連続的なサロゲートを有する離散的なポリトープビンを含む補間式に圧縮される。実施形態によれば、補間式は、ステップ１０２で実施されたシミュレーションの結果を使用して生成される、対象挙動についての関数である。実施形態では、補間式すなわち関数は、不等式制約によって定義されるポリトープビンを含み、各ビンは、対象挙動の連続的なサロゲートを有する。連続的なサロゲートは、各サロゲートのポリトープビンに対応する実験パラメータが与えられた場合の、対象挙動についての値を提供する。
【００２９】
実施形態によれば、各ポリトープビンは、類似する結果データを含む。例えば、テニスボールの例では、あるビンは、ボールとラケットがぶつかる前の結果データを含むことができ、別のビンは、ボールとラケットが接触しているときからの結果を含むことができる。連続的なサロゲートは、多項式または放射基底関数など、当技術分野で知られている任意の回帰であってよい。さらに、代替的実施形態では、サロゲートタイプは、特定の各ビン中のデータに従って変動し、したがって、最良のサロゲートが使用されることを保証する。実施形態によれば、クロス検証またはセットアサイド(set-aside)検証技法が使用されて、特定の各ビンに使用すべき最良のサロゲートが決定される。さらに別の実施形態では、ステップ１０３で結果を圧縮することは、対象挙動データを、離散的なポリトープビンを有する補間式に圧縮することを含む。
【００３０】
上述したように、複数の対象挙動があってよい。このような実施形態では、ステップ１０２におけるシミュレーションの実施は、実験パラメータの１または複数の変動値の各々に対する、複数の対象挙動の各挙動についてのそれぞれの値を生じる。さらに、このような実施形態は、ステップ１０３で、複数の対象挙動の各々について並行して結果を圧縮することができる。
【００３１】
方法１００の実施形態によれば、ポリトープビンは、１もしくは複数の実験パラメータ、対象挙動、１もしくは複数の実験パラメータの変形、対象挙動の変形、時間、または空間座標、によって少なくとも定義される面を有する。方法１００の代替的実施形態はさらに、ポリトープビンの面を最適化することによって、ステップ１０３で実施される圧縮を最適化することを含む。さらに別の実施形態では、ポリトープビンは不等式制約によって表され、ステップ１０３における圧縮は、実験の物理または幾何形状によることのある対象挙動の任意の不連続性に、ポリトープビンを整合させることによって、改善される。例では、ポリトープビンを表す不等式は、不連続性イベント前のデータはあるビンに属し、イベント中のデータは別のビンに入るように、精緻化(refine)される。テニスボールとラケットの例を使用して例証すると、ポリトープビンを表す不等式は、ボールがラケットに当たる前の飛行中のときのデータは、あるビン中にあり、ボールがラケットと接触しているときのデータは、別のビン中にあるように、定義されてよい。
【００３２】
ステップ１０４で、１または複数の実験パラメータのユーザ提供値に応答して、提供された値に対する対象挙動の値が、補間式を使用して予測される。例証するために、前述のテニスボールの例に戻ると、ユーザは、様々な時間ならびにボールおよびラケットの位置と共に、テニスボールの厚さの値を提供することができ（実験パラメータ）、それに応答して、ステップ１０４において、提供された厚さに伴う、テニスボール内部の圧力の値およびボールの歪み（対象挙動）が、補間式を使用して時間および空間において決定されてよい。
【００３３】
続けると、方法１００は、ステップ１０５で、１または複数の実験パラメータのユーザ提供値についてのモデルに対する影響を表示することによって、仮想現実体験をユーザに提供し、ここで、モデルに対する表示される影響は、ステップ１０４で決定された対象挙動の予測された値を反映する。上述したように、対象挙動の値は、例えば時間および空間に応じて決定され得るので、提供される仮想現実体験も同様に、時間および空間における対象挙動を反映することができる。実施形態によれば、この仮想現実体験は、当技術分野で知られている任意の手段を介して、例えば、パラメータと、本明細書に記載の原理に従って決定された挙動の予測値とが与えられた場合の、モデルのアニメーションを表示することによって、ユーザに提供されてよい。例えば、テニスボールの例にもう一度戻ると、ステップ１０５で仮想現実体験を提供することは、様々な時間におけるボールおよびラケットの場所を表示することができ、例えばカラーシェーディング(color shading)を介して、ボール内部の変動する圧力を例証することができる。実施形態では、仮想現実体験は、本明細書に記載のようなビンおよびサロゲートモデルを含むファイルを使用して提供されてよい。実施形態によれば、仮想現実体験を提供することは、当技術分野で知られている、データのための任意の仮想現実ファイルフォーマット、または、定義できる任意の仮想現実フォーマットを使用して実装されてよい。例示的な仮想現実ファイルフォーマットは、ＶＲＭＬ、Ｘ３Ｄ、ＷｅｂＧＬ、Ｕ３Ｄ、Ｏ３Ｄを含む。仮想現実体験を提供することに関するこれ以上の詳細については、図５Ａ〜Ｆに関して後述される。
【００３４】
本発明の実施形態は実験を利用するが、これにより、対象挙動が様々な対象シナリオ（実験の設計）について追跡され、そして、データが連結されて１つのデータファイルにされる。実施形態によれば、対象挙動は、オブジェクト（例えば、ＶＲＭＬ、ＣＡＤ、もしくはメッシュ）の節点の空間的位置、時間、または物理的挙動（温度、応力）であってよい。図２は、有限要素プロトタイプシミュレーションを使用して仮想現実体験を提供するためのワークフロー２２０を示す。ワークフロー２２０は、ステップ２２１で、モデルパラメータとこれらのパラメータの変動値とを定義することによって開始する。次に、ステップ２２２で各モデル変動値についてシミュレーションが実行されるが、各モデル変動値は、時間、節点の空間的位置、および対象挙動の、出力を生じる。ワークフロー２２０の実施形態によれば、ステップ２２２では、各実験パラメータ（ｐ）についてシミュレーションが実施されてよい。ワークフロー２２０の実施形態によれば、ステップ２２２におけるシミュレーションは、コンピュータクラスタを使用して、対象パラメータ（ｐ）のあらゆるサンプルについて並行して実施されてよい。ステップ２２３で、パラメータ（ｐ）、時間（ｔ）、位置（ｘ）、および対象挙動（ｂ）を含む、ステップ２２２で実施されたシミュレーションからの結果が、連結されてファイルにされる。そして、圧縮方法が、結果データセットを、対象である挙動フィールド（ｂ）の連続的なサロゲートを有する離散的なポリトープビンを含む補間式に還元する。実施形態では、ステップ２２４における圧縮は、対象であるあらゆる挙動フィールド（ｂ）について、コンピュータクラスタ上で並行して実行されてよい。ステップ２２１〜２２４を実施した後、ワークフロー２２０は今や、リアルタイムで、ステップ２２５におけるパラメータのユーザ提供値に応答して、ステップ２２６で、時間、空間、およびユーザ提供値に応じてフィールドデータ（ｂ）を補間して、対象挙動の値を予測することができる。対象挙動の値をリアルタイムで予測できることにより、ワークフロー２２０、および／またはその１もしくは複数のステップは、仮想現実体験の提供において使用されることが可能である。
【００３５】
図３は、特定の（ｘ，ｙ，ｚ）幾何形状節点をそれぞれが有するテニスボール３３０とラケット３３１のインタラクションに対して、方法１００およびワークフロー２２０など本発明の実施形態がどのように適用されるかを示す。本発明の原理を利用して、仮想現実体験３３２が提供されることが可能であり、仮想現実体験３３２は、速さ３３３、ボール圧力３３４、ボール壁厚３３５、ストリング張力３３６、およびストリング断面３３７など、異なる実験パラメータ（ｐ）を用いて、ボール３３０がラケット３３１に当たるかまたは他の方法でぶつかるのを例証する。これらのパラメータ（３３３〜３３７）に応じて、ボールおよびラケットの歪みおよび軌跡挙動（ｂ）は、著しく変動する。非線形インタラクションは短く、例えば１０ｍｓであり、仮想現実体験３３２において示されるように、ボール３３０において激しい歪みを引き起こす。
【００３６】
本明細書に記載の原理を利用して、時間、節点、および挙動の何百万ものコンピュータ観察が、以下の形の数千の表現に圧縮されることが可能である。
【００３７】
ＩＦ｛ｌｏｃａｔｉｏｎ  ｆｕｎｃｔｉｏｎ（ｐ，ｔｉｍｅ，ｎｏｄｅｓ）ｉｎｓｉｄｅ  ｐｏｌｙｔｏｐｅ  ｓｐａｃｅ｝ＴＨＥＮ  ｂ＝ｆｕｎｃｔｉｏｎ（ｐ，ｔｉｍｅ，ｎｏｄｅｓ）｝
このような実施形態において、ポリトープ超次元場所座標は、「時間」、「時間＊時間」、または、Ｙ座標節点＊ボール圧力、として抽象的に表現され得る。これらのポリトープ座標は、抽象的であり、対象挙動（ｂ）の固定形式回帰のエラーを最小限に抑えるように選択されてよい。時間および速度という２つのパラメータがあり、距離が時間＊速度に等しい例を考えてみる。テニスボールとラケットの例のこのような例では、ボールが場所からラケットに当たるための時間は、ボールが移動しなければならない距離に依存する。自由飛行の間は、データはあるビン中にあり、ボールとラケットが接触するときは、データは別のビンに入ることができる。２つのビンは、時間＊速度＜Ｘ接触、および、時間＊速度＞Ｘ接触、という不等式によって制約されることが可能である。このような例における回帰エラーは、この組合せを利用してビンを線引きすることによって最小限に抑えられる。
【００３８】
実装される仮想現実体験では、任意の数のポリトープビンが使用されてよい。例えば、体験３３２を実装する際、歪みの完全２次回帰モデルを伴う１００個のポリトープ空間ビンが使用されて、ボール３３０とラケット３３１とのインタラクションについて０．１％の正確な圧縮が生み出される。このような方法論は、ボール３３０の歪み挙動（ｂ）に対するパラメータ３３３〜３３７の変動値をインタラクティブに検討することを可能にする。言い換えれば、ユーザは、本発明の原理を使用して、様々なパラメータ３３３〜３３７を変動させ、結果をリアルタイムで閲覧することができる。既存の方法論は、このような機能を提供することができず、対象挙動に対するパラメータのインタラクションの複雑さによって制限される。
【００３９】
本明細書で言及されるように、本発明の実施形態は、１または複数のパラメータを含むモデルを定義してシミュレーションを実施し、このシミュレーションは、複数の対象挙動についての値を含み得る結果を生じる。以下では、様々な実験パラメータ、対象挙動、およびシミュレーション／実験条件が、テニスボールとラケットの例のコンテキストで記述される。以下の例は非限定的なものであり、実施形態は、多様なオブジェクトおよび条件の仮想現実体験を提供できることに留意されたい。例示的な体験３３２は、６．７０６ｍ／ｓｅｃ（２６４ｉｎ／ｓｅｃ）の、テニスボール３３０のラケット３３１上への斜めの衝突をシミュレートする。この例は、定義された初期条件と、圧縮ガスで満たされた流体キャビティのモデリングとを用いて、歪む表面と節点セットとの間の接触を例証する。図４は、ボール３３０およびラケット３３１の完全なモデル４４０を描く。モデル４４０では、ラケットストリング４４１は、トラス要素を使用してモデル化され、ヤング率６．８９５ＧＰａ（１．０×１０6ｐｓｉ）、ポアソン比０．３、および密度１１４３ｋｇ／ｍ3（１．０７×１０-4ｌｂｓｅｃ2ｉｎ-4）の、線形の弾性ゴムであると仮定される。ストリング４４１は、初期張力４４．４８Ｎ（１０ｌｂ）を受ける。
【００４０】
ラケット３３１のフレーム４４２は、剛性であると仮定され、有限要素を使用してモデル化される。外周部の周りのストリング（トラス要素）の節点は、Ｒ３Ｄ４要素に使用されるのと同じ節点である。剛性フレームに対する参照節点は、フレーム４４２が動かないように剛体に対する６つの自由度すべてを制約するために適用される境界条件を有する。
【００４１】
テニスボール３３０は、有限シェル要素を使用して、球体としてモデル化される。これは、ゴム製であると仮定され、定数Ｃ10＝０．６９０ＭＰａ（１００ｌｂ／ｉｎ2）およびＣ01＝０．１７３ＭＰａ（２５ｌｂ／ｉｎ2）のムーニーリブリン（Mooney-Rivlin）材料としてモデル化される。図５Ａ〜５Ｆおよび図６〜８によって示される結果において、Ｄ1＝０．０１４５ＭＰａ-1（１０-4ｐｓｉ-1）である。これは、初期体積弾性率（Ｋ0＝２／Ｄ1）を与え、これは初期せん断弾性係数２（Ｃ10＋Ｃ01）の８０倍である。この比率は通常のゴムの場合の比率よりも低いが、ゴムは拘束されないので、この場合、結果はこの値に特に左右されない。ゴムがより硬い隣接コンポーネントまたは補強材によって拘束される場合は、材料の圧縮性のより正確な表現が必要であろう。Ｄ1を１桁減少させる（したがって初期体積弾性率を１０倍増加させる）ことは、全体的な結果に対してほとんど影響を有さないが、体積弾性率の増加のせいで、
【００４２】
【数１】
2017111823.tif 000003
【００４３】
倍の安定時間増分の減少を引き起こす。テニスボール３３０の密度は、１０６８ｋｇ／ｍ3（１．０７×１０-4ｌｂｓｅｃ2ｉｎ-4）である。
【００４４】
テニスボール３３０は、周囲気圧１００ｋＰａ（１４．７ｐｓｉ）に加えて、初期内部圧力４１ｋＰａ（６ｐｓｉ）を受ける。テニスボール３３０の内部で、要素ベースの表面が定義される。この表面を使用して、ガスで満たされた流体キャビティが定義され、テニスボール３３０の内部のガスのプロパティは、ガスの分子量とボール３３０の容量とを使用して定義される。５Ａ〜５Ｆおよび図６〜８で例証される結果については、ガスの分子量およびモル熱容量は、０．０６２ｋｇ（０．１３６７ｌｂ）および２８．１１０Ｊ／ｋｇ°Ｋ（１１２．８４７ｌｂ  ｉｎ／ｌｂｍ°Ｋ）として選ばれる。ボール３３０はガスに対して不浸透性なので、ボール３３０の体積が減少するとガスの圧力は上昇することになり、またその逆でもある。静的平衡が、球体のシェル要素中の初期二軸膜応力の値を、ｐｒ／２ｔ＝１５５ｋＰａ（２２．５ｐｓｉ）として与えて、内部圧力の均衡をとる（ここで、ｐは内部ガス圧力３３４であり、ｒは球体の半径であり、ｔはテニスボール厚さ３３５である）。この、ボール中の応力の初期状態は、当技術分野で知られている原理を使用して定義される。
【００４５】
さらに、モデル４４０において、ボール３３０とストリング４４１との間で摩擦係数０．１が指定される。ボール３３０は、６．７０６ｍ／秒（２６４ｉｎ／秒）で、角度１５°でストリング４４１に衝突する。問題はまた、静水流体要素（hydrostatic fluid element）を用いてテニスボール３３０中のガスをモデル化することによっても解析される。流体密度は、周囲圧力１００ｋＰａ（１４．７ｐｓｉ）の下でゴムの１０分の１であるように選ばれる。完全なモデル４４０が図４に示されており、モデル４４０は２２４１度の自由度を有する。
【００４６】
要素ベースの表面が、テニスボール３３０上で定義される。さらに、トラス要素はライン要素なので、これらは平面の表面を形成しない。ストリング４４１のすべての節点を含む、節点ベースの表面が定義される。ボール３３０の要素ベースの表面と、節点ベースの表面において定義される節点のいずれかとの間の接触もまた定義される。当技術分野で知られている一般的な接触方法論を使用する入力ファイルもまた利用される。
【００４７】
図５Ａ〜Ｆは、様々な時点における、ストリング４４１に対するボール３３０を示す。図５Ａは、歪みのない元の位置における、ストリング４４１に対するボール３３０を示す。図５Ｂ〜Ｆは、解析の種々の段階、具体的にはそれぞれｔ＝２．５ｍｓ、ｔ＝５ｍｓ、ｔ＝７．５ｍｓ、ｔ＝１０ｍｓ、およびｔ＝１５ｍｓにおける、ボール３３０およびストリング４４１を示す。
【００４８】
本発明の原理を使用して、ユーザは、ボール厚さ３３５など、モデル４４０の任意の数のパラメータを変動させて、仮想現実体験において変化を見ることができ、この場合、ボール３３０とストリング４４１との間のインタラクションは、厚さパラメータの値に応じて変動する。
【００４９】
図５Ａ〜Ｆによって提供される体験などの仮想現実体験に加えて、実施形態は、モデル４４０中の変化に関するフィードバックを、グラフの形で、リアルタイムで提供することができる。図６は、モデルのエネルギー６６１の時間履歴を描くグラフ６６０を例証する。これらのエネルギー６６１は、総内部エネルギー（ＡＬＬＩＥ）、運動エネルギー（ＡＬＬＫＥ）、粘性散逸（ＡＬＬＶＤ）、摩擦によって散逸されるエネルギー（ＡＬＬＦＤ）、外的な仕事（ＡＬＬＷＫ）、および、モデルについての総エネルギーバランス（ＥＴＯＴＡＬ）を含む。総エネルギーは、そうあるべきであるように、解析中はほぼ一定のままである。任意の対象挙動、および、シミュレーションにおける種々の実験パラメータについてのこれらの挙動に対する変化もまた、グラフの形で提供されてよい。図７は、時間７７２にわたるボール７７１内部の圧力を描くグラフ７７０を示す。さらに、図８は、時間８８２にわたるボールの体積８８１を例証するグラフ８８０を示す。
【００５０】
図９は、本発明の実施形態による、仮想現実体験を提供するのに使用され得るコンピュータベースのシステム９９０の簡略ブロック図である。システム９９０は、バス９９５を備える。バス９９５は、システム９９０の様々なコンポーネント間の相互接続としての働きをする。バス９９５には、キーボード、マウス、ディスプレイ、スピーカなどの様々な入力および出力デバイスをシステム９９０に接続するための、入出力デバイスインタフェース９９８が接続される。中央処理装置（ＣＰＵ）９９２は、バス９９５に接続され、コンピュータ命令の実行を可能にする。メモリ９９７は、コンピュータ命令を実行するのに使用されるデータのための揮発性ストレージを提供する。ストレージ９９６は、オペレーティングシステム（図示せず）などのソフトウェア命令のための不揮発性ストレージを提供する。システム９９０はまた、ワイドエリアネットワーク（ＷＡＮ）およびローカルエリアネットワーク（ＬＡＮ）を含めた当技術分野で知られている任意の様々なネットワークに接続するためのネットワークインタフェース９９１も備える。
【００５１】
本明細書に記載の例示的な実施形態は、多くの異なる方式で実装され得ることを理解されたい。いくつかの事例では、本明細書に記載の様々な方法およびマシンはそれぞれ、コンピュータシステム９９０など、物理的、仮想的、もしくはハイブリッドの汎用コンピュータによって、または、図１０に関して後述されるコンピュータ環境１０００などのコンピュータネットワーク環境によって、実装されてよい。コンピュータシステム９９０は、本明細書に記載の方法（例えば１００および２２０）を実行するマシンに変形されてよく、例えばこれは、ソフトウェア命令を、ＣＰＵ９９２によって実行されるようにメモリ９９７と不揮発性ストレージ９９６とのいずれかにロードすることによって行われてよい。システム９９０およびその様々なコンポーネントは、本明細書に記載の本発明の任意の実施形態を遂行するように構成されてよいことを当業者はさらに理解されたい。さらに、システム９９０は、システム９９０に内蔵または外付けとして動作可能に結合された、ハードウェア、ソフトウェア、およびファームウェアモジュールの任意の組合せを利用して、本明細書に記載の様々な実施形態を実装することができる。
【００５２】
図１０は、本発明の実施形態がその中で実装され得るコンピュータネットワーク環境１０００を示す。コンピュータネットワーク環境１０００では、サーバ１００１が、通信ネットワーク１００２を介してクライアント１００３ａ〜ｎにリンクされる。環境１０００は、クライアント１００３ａ〜ｎが、単独でまたはサーバ１００１との組合せで、前述の方法のいずれか（例えば１００）を実行できるようにするのに使用され得る。
【００５３】
実施形態またはそれらの態様は、ハードウェア、ファームウェア、またはソフトウェアの形で実装されてよい。ソフトウェアにおいて実装される場合、ソフトウェアは、ソフトウェアまたはその命令のサブセットをプロセッサがロードするのを可能にするように構成された、任意の非一時的コンピュータ可読媒体に記憶されてよい。次いでプロセッサは命令を実行し、プロセッサは、本明細書に記載のようにして、動作するかまたは装置を動作させるように構成される。
【００５４】
さらに、本明細書では、ファームウェア、ソフトウェア、ルーチン、または命令が、データプロセッサのいくつかのアクションおよび／または機能を実施するものとして記述される場合がある。しかし、本明細書に含まれるそのような記述は便宜上に過ぎず、そのようなアクションは実際には、ファームウェア、ソフトウェア、ルーチン、命令などを実行する、コンピューティングデバイス、プロセッサ、コントローラ、または他のデバイスからもたらされることを理解されたい。
【００５５】
流れ図、ブロック図、およびネットワーク図は、より多数または少数の要素を含んでもよく、異なるように構成されてもよく、または異なるように表されてもよいことを理解されたい。しかし、実施形態の実行を例証するブロックおよびネットワーク図、ならびにブロックおよびネットワーク図の数が、特定の方式で実装されるよう、いくつかの実装形態は指示する場合があることも、さらに理解されたい。
【００５６】
したがって、さらに他の実施形態はまた、様々なコンピュータアーキテクチャ、物理的、仮想的、クラウドコンピュータ、および／またはこれらの何らかの組合せで実装されてもよく、よって、本明細書に記載のデータプロセッサは、例証のみの目的に意図され、実施形態の限定として意図されるのではない。
【００５７】
本発明はその例示的な実施形態に関して特に図示および記述されたが、添付の特許請求の範囲によって包含される本発明の範囲を逸脱することなく、形および詳細において様々な変更が加えられてもよいことは、当業者には理解されるであろう。
【図１】
2017111823.tif 000004
【図２】
2017111823.tif 000005
【図３】
2017111823.tif 000006
【図４】
2017111823.tif 000007
【図５Ａ】
2017111823.tif 000008
【図５Ｂ】
2017111823.tif 000009
【図５Ｃ】
2017111823.tif 000010
【図５Ｄ】
2017111823.tif 000011
【図５Ｅ】
2017111823.tif 000012
【図５Ｆ】
2017111823.tif 000013
【図６】
2017111823.tif 000014
【図７】
2017111823.tif 000015
【図８】
2017111823.tif 000016
【図９】
2017111823.tif 000017
【図１０】
2017111823.tif 000018