(57)【要約】【課題】実施形態によれば、方法は、シミュレートされる現実世界のシステムの離散的表現を含む、方程式系を最初に作成することによって物理的現実世界のシステムのシミュレーションを提供する。【解決手段】現実世界のシステムがシミュレートされる。システムのシミュレーティングにおいて、方程式系の解のユーザ指定の許容範囲が取得される。その後、方程式系は、所与の反復についての方程式系の解が、近似的無限反復についての方程式系の解のユーザ指定の許容範囲内であるまで反復的に解かれる。このような実施形態において、所与の反復の方程式系の解は、実験的に決定される定数、所与の反復の方程式系の最小固有値の推定値、および所与の反復の方程式系の残差を使用してユーザ指定の許容範囲内であることが決定される。【選択図】図１
2017123160.tif 000002
【特許請求の範囲】
【請求項１】
物理的現実世界のシステムのシミュレーションを提供するコンピュータ実装方法であって、
コンピュータメモリにおいて方程式系を作成するステップであって、前記方程式系は、前記現実世界のシステムの離散的表現を含む、ステップと、
前記コンピュータメモリに動作可能に結合されたプロセッサによって前記現実世界のシステムをシミュレートするステップであって、前記プロセッサが、
前記方程式系の解のユーザ指定の許容範囲を取得し、
収束に達するまで前記方程式系を反復的に解き、所与の反復についての前記方程式系の解が、実験的に決定される定数、所与の反復についての前記方程式系の最小固有値の推定値、および前記所与の反復についての前記方程式系の残差の使用に基づいてユーザ指定の許容範囲内であることが決定されるように、前記収束は、近似的に無限反復についての前記方程式系の前記解の前記ユーザ指定の許容範囲内である場合に達する、、ステップと
を備えることを特徴とする方法。
【請求項２】
前記方程式系は、第１の方程式系であり、前記方法は、
第１の複数の反復についての第２の方程式系を反復的に解いて前記第２の方程式系の最終的な解を決定し、
第２の複数の反復についての前記第２の方程式系を反復的に解いて前記第２の方程式系の誤差場を決定し、前記誤差場が、前記第２の方程式系の前記最終的な解と、前記第２の複数の反復のそれぞれについての前記第２の方程式系へのそれぞれの解との間の差を備える前記プロセッサをさらに備えることを特徴とする請求項１に記載のコンピュータ実装方法。
【請求項３】
前記誤差場、前記第２の方程式系の残差、および前記第２の方程式系の最小固有値の推定に応じて、前記定数を決定するステップをさらに備えることを特徴とする請求項２に記載のコンピュータ実装方法。
【請求項４】
前記実験的に決定される定数は、前記現実世界のシステムの物理的特性とは無関係であることを特徴とする請求項１に記載の方法。
【請求項５】
前記方程式系の前記残差は、残差ベクトルのノルムであることを特徴とする請求項１に記載の方法。
【請求項６】
前記残差ベクトルの前記ノルムは、体積の重み付けられたノルムであることを特徴とする請求項５に記載の方法。
【請求項７】
レイリー（Rayleigh）の商を使用して前記最小固有値の前記推定値を決定するステップをさらに備えることを特徴とする請求項１に記載の方法。
【請求項８】
前記方程式系を解くことは、前記現実世界のシステムの構造力学、物理学、または計算流体力学の問題を解くことを特徴とする請求項１に記載の方法。
【請求項９】
物理的現実世界のシステムのシミュレーションを提供するためのコンピュータシステムであって、
プロセッサと、
コンピュータコード命令が格納されたメモリであって、前記コンピュータコード命令を有する、前記プロセッサおよび前記メモリは、前記システムに
前記メモリにおいて方程式系を作成し、前記方程式系は、前記現実世界のシステムの離散的表現を含み、
前記プロセッサに
前記方程式系の解のユーザ指定の許容範囲を取得させ、
収束に達するまで前記方程式系を反復的に解かせ、所与の反復についての前記方程式系の解が、実験的に決定される定数、所与の反復についての前記方程式系の最小固有値の推定値、および前記所与の反復についての前記方程式系の残差の使用に基づいてユーザ指定の許容範囲内であることが決定されるように、前記収束は、近似的に無限反復についての前記方程式系の前記解の前記ユーザ指定の許容範囲内である場合に達するように構成される、メモリと
を備えることを特徴とするコンピュータシステム。
【請求項１０】
前記方程式系は、第１の方程式系であり、前記コンピュータコード命令を有する、前記プロセッサおよび前記メモリは、前記システムに、
前記プロセッサによって第１の複数の反復の第２の方程式系を反復的に解いて前記第２の方程式系の最終的な解を決定させ、
前記プロセッサによって第２の複数の反復の前記第２の方程式系を反復的に解いて前記第２の方程式系の誤差場を決定させ、前記誤差場が、前記第２の方程式系の前記最終的な解と、前記第２の複数の反復のそれぞれについての前記第２の方程式系へのそれぞれの解との間の差を備えるようにさせるようにさらに構成されることを特徴とする請求項９に記載のコンピュータシステム。
【請求項１１】
前記コンピュータコード命令を有する、前記プロセッサおよび前記メモリは、前記システムに、
前記誤差場、前記第２の方程式系の残差、および前記第２の方程式系の前記最小固有値の推定値に応じて、前記定数を決定させるようにさらに構成されることを特徴とする請求項１０に記載のコンピュータシステム。
【請求項１２】
前記実験的に決定される定数は、前記現実世界のシステムの物理的特性とは無関係であることを特徴とする請求項９に記載のコンピュータシステム。
【請求項１３】
前記方程式系の前記残差は、残差ベクトルのノルムであることを特徴とする請求項９に記載のコンピュータシステム。
【請求項１４】
前記残差ベクトルの前記ノルムは、体積が重み付けノルムであることを特徴とする請求項１３に記載のコンピュータシステム。
【請求項１５】
前記コンピュータコード命令を有する、前記プロセッサおよび前記メモリは、前記システムに、
レイリー商を使用して前記最小固有値の前記推定値を決定させるようにさらに構成されることを特徴とする請求項９に記載のコンピュータシステム。
【請求項１６】
前記方程式系を解くことは、前記現実世界のシステムの構造力学、物理学、または計算流体力学の問題を解くことを特徴とする請求項９に記載のコンピュータシステム。
【請求項１７】
物理的現実世界のシステムのシミュレーションを提供するためのコンピュータプログラム製品であって、１または複数のクライアントを有するネットワークを通じて通信するサーバによって実行され、
コンピュータ可読媒体であって、前記コンピュータ可読媒体は、プロセッサによって実行される場合に、前記プロセッサに、
方程式系をメモリ内で作成させ、前記方程式系は、前記現実世界のシステムの離散的表現を含み、
前記プロセッサに
前記方程式系の解のユーザ指定の許容範囲を取得させ、
収束に達するまで前記方程式系を反復的に解かせ、所与の反復についての前記方程式系の解が、実験的に決定される定数、所与の反復についての前記方程式系の最小固有値の推定値、および前記所与の反復についての前記方程式系の残差の使用に基づいてユーザ指定の許容範囲内であることが決定されるように、前記収束は、近似的に無限反復についての前記方程式系の前記解の前記ユーザ指定の許容範囲内である場合に達する
ことによって前記現実世界のシステムをシミュレートさせるプログラム命令を備えるコンピュータ可読媒体を備えることを特徴とするコンピュータプログラム製品。
【請求項１８】
前記方程式系は、第１の方程式系であり、前記コンピュータ可読媒体は、前記プロセッサによって実行される場合に、前記プロセッサにさらに、
第１の複数の反復の第２の方程式系を反復的に解かせて前記第２の方程式系の最終的な解を決定させ、
第２の複数の反復についての前記第２の方程式系を反復的に解かせて前記第２の方程式系の誤差場を決定させ、前記誤差場が前記第２の方程式系の前記最終的な解と、前記第２の複数の反復のそれぞれについての前記第２の方程式系へのそれぞれの解との間の差を備えるようにさせるプログラム命令を備えることを特徴とする請求項１７に記載のコンピュータプログラム製品。
【請求項１９】
前記コンピュータ可読媒体は、前記プロセッサによって実行される場合に、前記プロセッサにさらに、
前記誤差場、前記第２の方程式系の残差、および前記第２の方程式系の前記最小固有値の推定値に応じて、前記定数を決定させるプログラム命令を備えることを特徴とする請求項１８に記載のコンピュータプログラム製品。
【請求項２０】
前記方程式系の前記残差は、残差ベクトルのノルムであることを特徴とする請求項１７に記載のコンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
発明の実施形態は、一般的にはコンピュータプログラムおよびシステムの分野に関し、より詳細にはコンピュータ支援設計（ＣＡＤ）、コンピュータ支援エンジニアリング（ＣＡＥ）、モデリング、およびシミュレーションの分野に関する。
【０００２】
部品または部品のアセンブリの設計用のいくつかのシステムおよびプログラムが市場に提供されている。このようないわゆるＣＡＤシステムにより、ユーザは、オブジェクトまたはオブジェクトのアセンブリの複雑な三次元モデルを構築して操作することが可能になる。ＣＡＤシステムは従って、エッジまたはラインを使用して、ある場合には面を用いて現実世界のオブジェクトなど、モデル化されたオブジェクトの表現を提供する。ライン、エッジ、面、またはポリゴンをさまざまな方法、例えば、非一様有理Ｂスプライン（ＮＵＲＢＳ）で表現することができる。
【０００３】
これらのＣＡＤシステムは、主としてジオメトリの仕様である、モデル化オブジェクトの部品または部品のアセンブリを管理する。特に、ＣＡＤファイルは、ジオメトリが作成される仕様を含む。ジオメトリから表現が作成される。仕様、ジオメトリ、および表現は、単一のＣＡＤファイルまたは複数のＣＡＤファイルに格納され得る。ＣＡＤシステムは、設計者に対してモデル化オブジェクトを表現するためのグラフィックツールを含み、これらのツールは、複雑なオブジェクトの表示に特化している。例えば、アセンブリは、数千もの部品を含むことがある。
【０００４】
ＣＡＤおよびＣＡＥシステムの出現によってオブジェクトの表現の可能性を広範囲にすることができる。このような１つの表現は、有限要素解析モデルである。有限要素解析モデル、有限要素モデル、有限要素メッシュ、およびメッシュという用語は、本明細書では同じ意味で使用される。有限要素モデルは典型的には、ＣＡＤモデルを表現し、従って１もしくは複数の部品または完全なアセンブリの部品を表現することができる。有限要素モデルは、メッシュと呼ばれるグリッドを作るために相互接続される、ノードと呼ばれるポイントの系である。
【０００５】
モデル、たとえばＣＡＤモデル、有限要素モデル、および計算流体力学モデルなどは、基本的なオブジェクトまたはモデルが表現するオブジェクトのプロパティをモデルが有するような方法でプログラムされ得る。例えば、有限要素モデルがそのような方法でプログラムされる場合、有限要素モデルが使用されてそのモデルが表現するオブジェクトのシミュレーションを遂行する。例えば、有限要素モデルが使用されて車の室内キャビティ、構造体の周囲の音響流体、および例えば、ステントなどの医療機器を含む、任意の数の現実世界のオブジェクトを表現することがある。モデルがオブジェクトを表現してそれに従ってプログラムされると、現実世界のオブジェクト自体をシミュレートするためにそれが使用される。例えば、ステントを表現する有限要素モデルは、実際の医療機関のステントの使用をシミュレートするために使用されることがある。
【０００６】
さらに、これらのシミュレーションは、シミュレートされている実際のオブジェクトの設計を改善するために使用することができる。例えば、動的システムのモデルは、システムの障害のポイントを特定するためにシミュレーションで使用することができる。次に、シミュレーションで使用されるモデルによって表現されて最終的に現実世界のオブジェクト自体を表現する三次元ＣＡＤモデルは、シミュレーションからのフィードバックを使用して改善することができる。モデルのシミュレーションを遂行するおよび基本的なＣＡＤモデルを改善するための方法論が存在するが、これらの既存の方法論は、効率を改善する機能性から利益を得ることができる。
【発明の概要】
【０００７】
本発明の実施形態は、シミュレーションに関連し、シミュレーションソルバの方法論に実装することができる。実施形態は、計算流体力学（ＣＦＤ）、構造動力学の収束を推定すること、およびシミュレーションを遂行する反復技術を利用する他の物理シミュレーションの方法論を含むさまざまな適用に有益である。
【０００８】
本発明の実施形態は、物理的現実世界のシステムのシミュレーションを提供するコンピュータ実装された方法を提供する。このような実施形態は、コンピュータメモリ内で方程式系を作成することにより開始し、方程式系は、シミュレートされる現実世界のシステムの離散的表現を含む。次に、現実世界のシステムは、コンピュータメモリに動作可能に結合されるプロセッサによってシミュレートされる。システムをシミュレートする際、プロセッサは、最初に方程式系の解のユーザ指定の許容範囲を取得する。次に、プロセッサは、収束に達するまで方程式系を反復的に解く。実施形態によれば、所与の反復についての方程式系の解が、近似的無限反復についての方程式系の解のユーザ指定の許容範囲内である場合に収束に達する。このような実施形態において、所与の反復についての方程式系の解は、実験的に決定される定数、所与の反復についての方程式系の最小固有値の推定値、および所与の反復についての方程式系の残差の使用に基づいてユーザ指定の許容範囲内であることが決定される。実施形態によれば、方程式系を解くことにより、現実世界のシステムの構造力学、物理学、または計算流体力学の問題を解く。
【０００９】
方法のさらに別の実施形態において、方程式系は、第１の方程式系であり、方法は、第１の複数の反復についての第２の方程式系を反復的に解いて第２の方程式系の最終的な解を決定することをさらに含む。さらに、この実施形態は、第２の複数の反復についての第２の方程式系を反復的に解いて、誤差場が第２の方程式系の最終的な解と、第２の複数の反復のそれぞれの第２の方程式系のそれぞれの解との間の差を備える、第２の方程式系の誤差場を決定する。このような実施形態は、定数を誤差場、第２の方程式系の残差、および第２の方程式系の最小固有値の推定値に応じて決定することをさらに備えることができる。
【００１０】
方法の実施形態によれば、実験的に決定される定数は、現実世界のシステムの物理的特性とは無関係である。さらに別の実施形態において、方程式系の残差は、残差ベクトルのノルムである。さらに、実施形態において、残差ベクトルは、体積重み付けノルムである。さらに別の代替実施形態において、最小固有値の推定値は、レイリー商を使用して決定される。
【００１１】
本発明の実施形態は、物理的現実世界のシステムのシミュレーションを提供するコンピュータシステムに向けられている。このようなコンピュータシステムは、プロセッサとコンピュータコード命令が格納されたメモリとを備える。プロセッサとコンピュータコード命令を有するメモリは、システムに、方程式系が現実世界のシステムの離散的表現を含む、方程式系をメモリ内で作成させるように構成される。さらに、プロセッサとコンピュータコード命令を有するメモリは、コンピュータシステムに現実世界のシステムをシミュレートさせる。コンピュータシステムは、このような実施形態に従って、プロセッサに、方程式系の解のユーザ指定の許容範囲を取得させて収束に到達するまで方程式系を反復的に解かせることによって現実世界のシステムをシミュレートする。コンピュータシステムの実施形態によれば、所与の反復の方程式系の解が、近似的無限反復の方程式系の解のユーザ指定の許容範囲内である時に収束に到達する。コンピュータシステムの実施形態において、所与の反復の方程式系の解は、実験的に決定される定数、所与の反復の方程式系の最小固有値の推定値、および所与の反復の方程式系の残差を使用してユーザ指定の許容範囲内であることが決定される。
【００１２】
コンピュータシステムの代替的実施形態において、方程式系は、第１の方程式系であり、コンピュータコード命令を有するプロセッサおよびメモリは、システムに第１の複数の反復の第２の方程式系を反復的に解いて第２の方程式系の最終的な解を決定させるようにさらに構成される。さらに、このような実施形態において、コンピュータシステムは、誤差場が、第２の複数の反復の第２の方程式系を反復的に解いて、第２の方程式系の最終的な解と、第２の複数の反復のそれぞれの第２の方程式系のそれぞれの解との間の差を備える、第２の方程式系の誤差場を決定するようにさらに構成される。コンピュータシステムのさらなる実施形態において、定数は、誤差場の関数、第２の方程式系の残差、および第２の方程式系の最小として決定される。実施形態において、実験的に決定される定数は、現実世界のシステムの物理的特性とは無関係である。
【００１３】
代替的実施形態において、方程式系の残差は、残差ベクトルのノルムである。実施形態によれば、残差ベクトルのノルムは、体積重み付けノルムである。さらなるコンピュータシステムの実施形態において、コンピュータコード命令を有するプロセッサおよびメモリは、システムに、レイリー商を使用して最小固有値の推定値を決定させるようにさらに構成される。コンピュータシステムの実施形態によれば、方程式系を解くことにより、現実世界のシステムの構造力学、物理学、または計算流体力学の問題を解く。
【００１４】
本発明のさらに別の実施形態は、物理的現実世界のシステムのシミュレーションを提供するためのクラウドコンピューティング実装に向けられている。このような実施形態は、サーバが１または複数のクライアントを有するネットワークを通じて通信することによって実行されるコンピュータプログラム製品に向けられている。このような実施形態において、コンピュータプログラム製品は、プロセッサによって実行されると、そのプロセッサに、方程式系が現実世界のシステムの離散的表現を含む、方程式系をメモリ内で作成させるプログラム命令を備える、コンピュータ可読媒体を備える。このような実施形態において、プロセッサは、方程式系の解のユーザ指定の許容範囲を取得することによって現実世界のシステムをシミュレートし、そして所与の反復の方程式系の解が、近似的無限反復の方程式系の解のユーザ指定の許容範囲内である時に収束に到達する、収束に到達するまで方程式系を反復的に解く。コンピュータプログラム製品の実施形態によれば、所与の反復は、実験的に決定される定数、所与の反復の方程式系の最小固有値の推定値、および所与の反復の方程式系の残差の使用に基づいてユーザ指定の許容範囲内であることが決定される。
【図面の簡単な説明】
【００１５】
上記は、同様の参照符号が異なる図全体を通して同じ部分を指す添付図面に例示されているように、発明の例示的な実施形態のより詳細な説明から明白である。図面は、必ずしも寸法どおりではなく、その代わりに本発明の実施形態を例示することに重点を置いている。
【図１】少なくとも一つの例示的な実施形態による物理的現実世界のシステムのシミュレーションを提供するコンピュータ実装方法を示す図である。
【図２】実施形態に利用することができる定数を決定する方法のフローチャートである。
【図３】実施形態を利用してシミュレーションを遂行するフローチャートである。
【図４】発明の実施形態の原理を使用してシミュレーションを実装する方法を示すフローチャートである。
【図５】実施形態の原理を利用して物理的現実世界のシステムのシミュレーションを提供するためのコンピュータシステムの簡易化されたブロック図である。
【図６】本発明の実施形態が実装され得る簡易化されたコンピュータネットワーク環境の図である。
【発明を実施するための形態】
【００１６】
発明の例示的な実施形態の説明は次のとおりである。
【００１７】
本明細書に記載されたすべての特許、公開された出願、および参照の教示は、それらのすべてが参照により組み込まれる。
【００１８】
本明細書で述べるように、本発明の実施形態は、現実世界の力学系などの系をシミュレートするための方法およびシステムを提供する。さまざまなシミュレーション技術は、反復方法論を使用してシミュレーションを実装する。反復解法は、主に２つ理由により使用される。第一に、線形系が適用される場合に、反復手法は、直接行列解法が利用された場合に要求されることになる膨大な記憶量を削減する。反復方法論は、記憶量と計算効率をトレードオフすることに留意されたい。従って、反復技術の非効率を最小限にすることが重要である。反復線形ソルバの例は、オープンソースのＰＥＴＳｃ(Portable, Extensible Toolkit for Scientific computation)である。
【００１９】
第二に、反復技術はまた、暗黙的な(implicit)方法を使用する非線形微分方程式の解が反復手法を要求するために使用される。支配方程式は、時間で離散化されて線形化される。線形化は近似されることが多いので、反復は、初期推定およびそれに続く解への改善から最終的な解を取得するために要求される。非線形微分方程式の解は、主変数（例えば、速度場、温度場）に関連する。各反復により、ソルバは、解を漸進的に精緻化する。これは、「基準の停止」、即ち、反復をいつ停止するかについての重要な疑問が生じる。
【００２０】
定常状態のソルバは、ネストされた(nested)反復ループの２つのレベルを有し、第１のレベルは、非線形反復ループであり、第２のレベルは、非線形ループによって展開されるいくつかの線形ソルバ反復ループである。同様に、今度は非定常(transient)ソルバが、線形ソルバ反復ループを展開するいくつかの固定小数点反復ループを使用する。定常状態の解は、単一の固定小数点を有する非定常ソルバと見なしてよい。反対に、非定常解は、疑似定常問題の連続と見なすことがあり、各解が前の解の摂動を含む。
【００２１】
良設定問題のシミュレーションの場合、解は、各反復を有するある値に近づく。これが数値解であれば、解は、数値解答（即ち、前述したある値）に収束していくと言うことができる。理想的には、現在計算されている解の誤差がどのようであるか、言い換えれば、現在の反復解がどれくらい収束と離れているか（収束の度合い）を反復毎に決定することは有利であろう。ここでの誤差は、離散化された問題の解（数値解）と現在の反復において計算される解との間の誤差である。数値問題は、解析的または実験的な解とは異なる。数値解は、有限の計算状態と有限のメモリコンピュータ上で起こり、従って、数値解は、対象の系についての有限の情報を常に提供することしかできない。理論的には、解析的および実験的な解は、物理系の任意の位置における情報を提供し、これは、潜在的には無限の情報量である。誤差推定は従って、それらがあるレベルにおいて常に本質的に不正確であるので、数値シミュレーションに内在する。しかしながら、収束の度合いを知ることが理想的であろうが、数値解答が予め知られていないので、収束の度合いを数値化してそのような誤差を決定することは極めて困難である。
【００２２】
収束の度合いを決定するよりはむしろ、既存の商業上のソフトウェアソリューションは、収束の測定を試みる代替を使用する。既存の技術は、残差などの誤差のプロキシについての経験則またはアドホックヒューリスティック(ad-hoc heuristics)を使用して収束を推論することに大きく依存している。今日使用されているほとんどの技術は、商業上の計算流体力学（ＣＦＤ）の初期に導入された実践に基づく。学者たちは、そのようなテーマが「解決済みの問題」で研究費をつぎ込むのに値しないと（恐らく誤って）見なしているので再検討する意欲がない。
【００２３】
「収束推定」に対する既存のさまざまな技術は、ＡＮＳＹＳ−ｆｌｕｅｎｔ、およびＣＤ−ａｄａｐｃｏ、およびＡＢＡＱＵＳ（登録商標）Ｓｔｒｕｃｔｕｒａｌなどのさまざまなシミュレーションソフトウェアパッケージによって使用されている。多くの既存のソフトウェアスイートは、シミュレーションを遂行しているユーザが残差を監視することを推奨しており、残差は、現在の解が数値解に置き換わる場合に、解かれる偏微分方程式の誤差になる。例えば、ＡＮＳＹＳ−ｆｌｕｅｎｔは、残差を監視して、残差の大きさが３次数減少した場合に解が収束されたと推論することを推奨している。
【００２４】
ＣＤ−ａｄａｐｃｏは、固定小数点反復を停止する基準がユーザの判断によって決定される固定数の反復である、非定常ソルバの方法論を利用する。この数は、各シミュレーションに固有であり、恐らく各シミュレーションのわずかな変数のみを修正する。従って、この事前設定された数は、ユーザの試行錯誤によって決定される。非定常解が再収束されなければならない度合いが時間ステップと時間増分による解の摂動の両方に依存することが正当化される。小さい時間増分は、典型的には結果としてより小さい摂動が生じ、従って、より少ない反復を要求する。「試行錯誤」手法はまた、解が基本的な計算メッシュとは無関係であるかどうかを決定するために使用されるので、ＣＦＤ専門家の経験と異質ではない。
【００２５】
ＣＤ−ａｄａｐｃｏは、導かれるエンジニアリングの関心の量を監視することによって収束を推論する別の代替を詳述している。例えば、オプションは、抗力または揚力の監視を含む。関心の量を監視する一部の既存の方法論により、ユーザは、標準偏差、他の量と組み合わされた論理ルール、および漸近的に閾値に達することに基づいて、収束を推論する一連のルールを定義することが可能となる。例えば、揚力が１反復当たり１％未満で変わる場合に反復が停止するか、または出口の質量流量が入口の質量流量の０．１％に等しい場合に反復が停止する。
【００２６】
さらに別の技術は、１つの反復から次の反復への解の変化（修正）を監視し、修正が解自体と比較して小さければ、収束が推定される。再度、これは正規化スケールの設定時にユーザの判断を要求し、反復の進行が無いことは、実際に反復が最終目標を実現したことを意味しないために、停止を誤る傾向がある。
【００２７】
構造領域において、収束を推論することは、複雑で高性能のヒューリスティックを用いて行われる。これらのヒューリスティックは、残差、および線形ソルバ反復の修正に対する解の推定の増分変化の比率と併せて適切な正規化スケールを発見することに基づく。これはまた、構造対流体または自由空間である領域の範囲を追跡する能力も要求する。
【００２８】
既存の収束決定技術に関するさらなる詳細は、Ａｎｓｙｓ  Ｕｓｅｒ  Ｇｕｉｄｅにおいて示され、ｈｔｔｐｓ：／／ｗｗｗ．ｓｈａｒｃｎｅｔ．ｃａ／Ｓｏｆｔｗａｒｅ／Ｆｌｕｅｎｔ６／ｈｔｍｌ／ｕｇ／ｎｏｄｅ１０６７．ｈｔｍ，ＣＤ  Ａｄａｐｃｏ  ｕｓｅｒ  ｇｕｉｄｅ６．０２．００７  Ｓｅｔｔｉｎｇ  ｕｐ  Ｓｔｏｐｐｉｎｇ  Ｃｒｉｔｅｒｉａ，およびＡＢＡＱＵＳ  Ｕｓｅｒｓ  Ｇｕｉｄｅ６．１４  Ｓｅｃｔｉｏｎ７．２．３  Ｃｏｎｖｅｒｇｅｎｃｅ  Ｃｒｉｔｅｒｉａ  ｆｏｒ  Ｎｏｎｌｉｎｅａｒ  Ｐｒｏｂｌｅｍｓで入手可能であり、これらは、参照によりそれらのすべてにおいて組み込まれる。
【００２９】
本明細書で述べるように、現在の技術は、誤差収束の度合いを決定せず、その代わりに、解の残差、修正の振る舞いを介して間接的に、またはユーザの判断によって決定された、導かれた量に基づいて、停止基準の設定をユーザに任せることによって推論しようと試みる。停止基準を決定する既存の技術に対する根本的な問題は、誤差収束が全く対処されないことである。これにより、結果として、低品質の解を取得するまたは不要な反復の遂行から計算リソースを浪費するのいずれかが生じる。
【００３０】
収束を推論するために使用される現在の技術からさまざまな問題が起きる。例えば、残差の値を見ることができず、わずかな残差が同等にわずかな誤差を伴う引数が拡大する。これは、共通の正規化スケールがわからないからである。従って、他の唯一のオプションは、残差が減少するのを見張ることである。他の技術の中でとりわけＡＮＳＹＳは、残差を監視して、大きさが３次数減少する残差を待つ方法を詳述している。方程式系を解くための初期条件が提供される場合、２つの可能なシナリオがある。１つは、問題が、収束される解に非常に近くなるように初期化される。即ち、良い初期推定である。これが起きると、残差は最初から少なく、残差が減少するのにかなり長い時間がかかり、恐らく有限精度のコンピュータでは永久であるか、または残差は、これ以上減少しない。２つ目は、初期推定が非常に悪ければ、残差は、即時に大きさが３次数減少し、解が収束を実現したことを保証しない。
【００３１】
「収束を推定する」ための修正監視方法は、反復毎に解の変化を観察して、変化が非常に小さい場合に反復が停止する。直ちに起きる問題は、どれくらい小さいのが小さいのかという問いに答えることである。使用されるスケールは、ユーザの判断に応じて異なる。さらに、シミュレーションの経過中、例えば、解が収束されていないとしても、劣化した収束により、修正が小さい状況が生じ得る。
【００３２】
偏差、動向、および揚力、抗力またはモーメント力などの間接的量の任意のパターンの監視を含むことができる、監視によって導かれる量は、解かれる解の変数の収束との相関が弱い。観察される導かれた量と関連しない別の場または量を監視することによって収束を結論付けることは誤りである。さらに、この方法は、ユーザ経験に依存し、解答として何が期待されるかについての事前知識を要求する。
【００３３】
現在の技術に対する主な欠点は、ユーザがこれらの技術を一式の問題としてキャリブレートすることができ、それが他のタイプの問題およびユースケース(use cases)に役立つことを保証しないことである。収束を決定する共通の手法が存在しない。既存の方法を使用して、ユーザは、解が収束されるかどうかを推論することしかできない。多くの場合、ユーザは、完全な収束のシミュレーションを解く必要がなく、代わりにある収束率に到達さえすればよい。これは、現在の方法を使用して実現できない。
【００３４】
前述した定常状態のソルバの収束を推論する問題が起きる。このような同じ問題は、非定常ソルバと線形ソルバの両方にも起きる。さらに、後者の二つに付加的な結果が起きる。
【００３５】
非定常ソルバの場合、サブ反復が各時間増分の間に行われている時に収束が始まる。これらのサブ反復を遂行する時に最も広く使用される技術は、サブ反復の所定の数を設定することである。この所定の数は、試行錯誤およびユーザの判断によるキャリブレーションを要求する。さらに、所定の数は、異なるタイプの問題に役立たないことがある。従って、ユーザは、慎重にならなければならず、時間ステップのサイズを制限するまたは反復に要求される数よりも多い数を指定しなければならない。非定常シミュレーション、特に初期条件が悪い非定常シミュレーションは、流体構造が流体領域を通じて展開し、この数は、シミュレーションが進行するにつれて減少するので、多数の初期の不動点反復を要求する。しかしながら、所定の数の反復が遂行される技術が使用されると、シミュレーションが進行するにつれて、より少ないサブ反復が要求されるという事実を利用することが困難である。これは、計算コストと計算時間の両方の損失である。
【００３６】
線形ソルバは、定常状態で実行されて、非定常ソルバは、各ソルバの反復の間に実行される。これらの線形ソルバによる余分な反復は、性能を大きく下げる。上述したような同じ落とし穴がこれらのソルバにも当てはまる。従って、線形ソルバの反復を正確にかつ一貫してイグジット(exit)できることは、性能利得を大きく受ける可能性がある。
【００３７】
収束を推論する別の代替を提供するよりはむしろ、本発明の実施形態は、「誤差」についての定義を導入することにより、収束を数値化することによって問題に直接的に対処する。上記で論じたように、ここでの誤差は、現在の解の推定と離散化系の解との間の差である。言い換えれば、誤差は、現在の反復における解と収束された解、即ち、近似的無限反復から取得された解との間の誤差である。この誤差を成功裡に推定する能力は、シミュレーションの遂行から推定作業を取り出して、前述した現在の技術の問題を改善する。
【００３８】
本発明の実施形態において、誤差は、周知の量（残差および修正）、数学的構成（行列固有値）、数学的簡略化（固有値の近似）、および数値キャリブレーションを介したキャリブレーション手法に応じて表される。
【００３９】
定常状態のソルバの場合、本発明の実施形態は、収束された解の誤差に対する現在の数値解における誤差を決定する誤差推定を算出する。このような実施形態において、ユーザは、相対誤差の閾値に関して、所望の収束の度合いを指定さえすればよい。その後、相対誤差推定がこのユーザ指定の収束の度合いに到達するときに定常状態の反復ループがイグジットする。
【００４０】
同様に、非定常ソルバの場合、シミュレーションは、所望の誤差場に基づいて、各時間増分間の不動点反復の適切な数を遂行する。この手法の付加された利点として、不合理に大きい時間ステップが選択されると、その影響により各時間ステップ間のサブ反復が増え、これによって、ソルバが合理的な解に達するようにさせる。付加された影響はまた、解が定常状態で非定常でないことが期待される場合にも見られ、同様に、最適数の不動点反復が行われる。反復は、修正された誤差レベルにおいて終了する。反復は、停止が早すぎた結果、所望の反復よりも誤差が大きくなることも、停止が遅すぎた結果、要求されるものと比較して計算労力が非常に大きくなることもない。
【００４１】
同様な利得は、線形ソルバにおいて実現される。本明細書で説明する収束決定技術を用いることによって、本発明の実施形態に従う線形ソルバは、大いに性能が上がる。各不動点反復または定常状態の反復は、正しい数の線形ソルバ反復を遂行し、従って、既存の技術と比較して性能が上がる。
【００４２】
線形ソルバおよび非定常ソルバにおいて本発明の実施形態を使用する主な利点は、実現することができる向上した性能である。さらに、非定常ソルバの場合、要求されるものより大きい時間ステップが選択されると、これによって、アルゴリズムは、サブ反復をより多くすることになり、これにより、シミュレーションは、できるだけ合理的である解に到達することを可能にする。本発明の実施形態のさらに別の利点は、遂行される反復数を減少できることである。かなり多くは、収束までずっと反復することが要求されない。それどころか、ユーザは、真の収束のある許容範囲内であることに関心があり得る。本発明の実施形態の使用により、解が収束される解のある率の範囲内であるときに反復ループを停止することがこれより可能である。別の利点は、各々の設計変数についての基準を停止するキャリブレーションを決定することなく、ユーザが設計実験を設定することが可能となる能力である。
【００４３】
図１は、物理的現実世界のシステムのシミュレーションを提供するための方法１１０のフローチャートである。方法１１０は、コンピュータメモリ内で方程式系を作成するステップ１１１から開始する。このような方法１１０の実施形態において、方程式系は、現実世界の物理系を表現してコンピュータメモリに常駐する。実施形態において、方程式系は、現実世界のシステムの離散的表現である。この現実世界の物理系の離散的表現は、連続体を空間内の点の有限集合として表現する。このような例において、現実世界の物理系は、偏微分方程式で支配され、これらの方程式の離散バージョンは、空間内のこれらの点のそれぞれを支配することができる。この現実世界のシステムは、流体力学、固体力学、熱伝達、電磁、および量子物理学の適用に基づくことができるが、これらの例に限定されない。方法１１０の実施形態は、さまざまなシステムをシミュレートすることができる。そうすることで、方法１１０の実施形態は、現実世界のシステムの力学、物理学、または計算流体力学の問題を解くことができる。実施形態によれば、方程式系は、物理系のプロパティを示す偏微分方程式の系にすることがある。例えば、方程式系は、現実世界のシステムの質量、剛性、サイズなどを反映するデータ／プロパティを包含することがある。さらに、方法１１０は、ユーザインタラクションに応答してステップ１１１において方程式系を作成することがある。例えば、ユーザは、当該技術で知られている任意の通信インタフェースを介して現実世界のシステム／方程式系のデータ／プロパティを提供することがあり、今度はステップ１１１が、提供された情報に応答して実行されることがある。
【００４４】
次に、方法１１０が継続して、ステップ１１２において現実世界のシステムをシミュレートする。実施形態によれば、ステップ１１２におけるシステムをシミュレートすることは、最初にステップ１１２ａで方程式系の解のユーザ指定の許容範囲を取得することを含む。ステップ１１２ａにおいて提供される許容範囲は。ユーザの望む解がどれくらい正確かを示す。ステップ１１２でシミュレーションは、方程式系を反復的に解くことによって遂行されるので、各反復において解が決定される。しかしながら、方程式系の最終的な解、即ち、収束された解は、無限反復が遂行された場合に、近似された方程式系に対する解である。従って、ステップ１１２ａにおいて提供される許容範囲は、所与の反復についての解が、現在の反復を停止する最終的な解からどれくらい離れる必要があるかを示す。ユーザは、ステップ１１２ａにおいて当該技術で知られている任意の手段を介して許容範囲を指定することがある。例えば、ユーザは、方法１１０に実装する計算デバイスによるプロンプトに応答して許容範囲を指定することがある。このような実施形態において、ユーザは、計算デバイスの任意のさまざまな入力デバイスの使用を介して許容範囲を提供することがある。
【００４５】
ステップ１１２ａにおいて提供される許容範囲を所与として、方法１１０が継続して、収束に達するまで方程式系を反復的に解き、ここでは、所与の反復についての方程式系の解が、近似的無限反復についての方程式系の解のユーザ指定の許容範囲内である場合に、収束に達する。実施形態によれば、方程式系の解は、実験的に決定される定数、所与の反復についての方程式系の最小固有値の推定値、および所与の反復についての方程式系の残差の使用に基づいて、ユーザ指定の許容範囲内であることが決定される。定数、固有値および残差を算出することについてのさらなる詳細を以下提供する。実施形態によれば、ステップ１１２ｂにおける方程式系を解くことによって、現実世界のシステムのシミュレーションが提供される。実施形態において、ステップ１１２ｂで方程式系を解いた後に、シミュレーションは、決定された方程式系に対する解を使用して当該分野で知られている方法に従って提供される。
【００４６】
換言すれば、各反復について、ステップ１１２ｂにおける方法１１０は、定数、所与の反復についての方程式系の最小固有値の推定値、および所与の反復についての方程式系の残差を使用して、所与の反復についての解が方程式系の最終的な解からどれくらい離れているかを決定する。方法１１０の実施形態は、当該分野において知られている任意のさまざまな反復技術を使用することがある。例えば、実施形態は、固定小数点反復、ニュートン法、割線法、クリロフ(Krlov)部分空間法、マルチグリッド法、および投影法を利用することができる。システム１１０の実施形態によれば、方程式系の固有値は、レイリー商(Rayleigh quotient)を使用して推定される。さらに別の実施形態において、方程式系の残差は、残差ベクトルのノルム(norm)である。本発明の実施形態は、任意のさまざまな技術を使用してノルムを決定し得る。一例示的実施形態において、残差ベクトルのノルムは、体積の重み付けられたノルムである。
【００４７】
方法１１０の代替的実施形態は、第１の複数の反復についての第２の方程式系を反復的に解いて第２の方程式系の最終的な解を決定することをさらに備える。換言すれば、このような代替的実施形態は、第２の方程式系の収束された解を決定する。収束された解という用語は、用語「近似的無限反復の解」と同義にすることができる。第２の方程式系に対する収束された解を決定することは、当該分野において知られている原理に従って行うことができる。このような代替的実施形態は、第２の複数の反復についての第２の方程式系を反復的に解いて、第２の方程式系の誤差場を決定することをさらに備え、ここでは、誤差場が第２の方程式系に対する最終的な解と、第２の複数の反復のそれぞれについての第２の方程式系に対するそれぞれの解との間の差である。
【００４８】
このような実施形態をより簡単に言えば、最初に、この第２の方程式系に対する収束された解が決定され、次に複数の反復が遂行されて、誤差場が算出され、ここでは、収束された解と反復解との間の差である。この実施形態は、任意の数の反復を遂行して誤差場を決定することがある。実施形態において、誤差場を決定するための反復は、誤差場が誤差場を計算するコンピュータのデジタル機械の精度に正確であることを確実にするのに十分であるように遂行される。
【００４９】
実施形態において、前述の誤差場は、ステップ１１２において現実世界のシステムをシミュレートする際に使用される実験定数を決定するために使用される。このような実施形態において、定数は、誤差場の関数、第２の方程式系の残差、および第２の方程式系の最小固有値の推定値として決定される。
【００５０】
実施形態によれば、ステップ１１２ｂにおいて使用される定数は、ステップ１１２ｂにおいて第１の方程式系を反復的に解く前に決定される。例えば、定数を前もって決定することができ、今度は、方法１１０を使用して複数の現実世界のシステムをシミュレートするために使用される。実施形態において、定数は、現実世界のシステムの物理的特性とは無関係であり、従って、任意のシステムをシミュレートするために使用することができる。実施形態において、１つの反復技術を使用して定数が決定されると、その定数は、他の反復技術を使用して別の方程式系をシミュレートするために使用される。
【００５１】
方法１１０などの、本発明の実施形態を実装する記述された方法論のさらに詳細について以下説明する。以下の式（１）として書かれた線形系の例を挙げる。
【００５２】
【数１】
2017123160.tif 000003
【００５３】
式（１）中のＡは、演算子であり、ｕ*は、厳密解であり、ｂは、周知の値、例えば、シミュレートされるシステムのプロパティの右辺である。Ａｕ*＝ｂを反復的に解く間に近似解ｕが計算される。従って、ｕに置き換えた結果として、本明細書で残差ｒと呼ばれる付加的な用語が生じる。この関係は、式（２）によって与えられる。
【００５４】
【数２】
2017123160.tif 000004
【００５５】
２つの関係、（式１と式２）を減算することによって以下となる。
【００５６】
【数３】
2017123160.tif 000005
【００５７】
ここに誤差ｅは、以下となる。
【００５８】
【数４】
2017123160.tif 000006
【００５９】
式（４）で表される誤差は、式（１）によって表現される物理系が解かれる解の領域を表現するメッシュのすべての計算グリッドの点の値を有するコンピュータメモリのリストである。誤差は、コンピュータがそのコンピュータ表現で作成した解から、そのコンピュータが無限数の反復を行う場合に取得する解を引いたものであり、従って、式（１）の厳密解に達する。説明のため、現実世界の物理系が点の有限集合（計算グリッドの点）で説明される例を考える。各点は、偏微分方程式の離散バージョンで支配される。このような例において、各点の解、例えば、各点の速度が判定され、所与の反復に対して、各点の推定が存在し、従って、配列ｅで表現される、各点の誤差が存在する。誤差は、ノルムを使用して単数に圧縮される。実施形態の機能性を上げるために、誤差は、メッシュ依存性を持たない形で表現される。言い換えれば、ノルムは、シミュレートされるシステムの物理的特性に依存せずに誤差を表現する。任意のさまざまなノルムの判定技術は、本発明の実施形態によって使用され得る。例えば、実施形態は、重み付けノルムを使用することができる。さらに、実施形態は、現実世界のシステムを離散化するために使用される手法に基づいてノルム決定方法を変えることができる。実施形態による誤差のノルムは、以下の式（６）によって与えられる。
【００６０】
【数５】
2017123160.tif 000007
【００６１】
ここに｜｜は、場のノルムを示し、総和は、その場の総グリッド値である。Ｖiは、対応するメッシュポイント値の周囲の領域の小範囲の体積になるが、この値を使用しなくてもよく、例えば、すべてのメッシュポイントの統合に等しい場合もあり、ｅiは、メッシュポイントのロケーションｉにおける誤差である。
【００６２】
所与の関係（７）は、以下の通りである。
【００６３】
【数６】
2017123160.tif 000008
【００６４】
本発明の実施形態は、以下のようにＣを決定する。
【００６５】
【数７】
2017123160.tif 000009
【００６６】
ここで、λminは、体積重み付け行列Ａの最小固有値であり、残差ノルム｜ｒ｜は、式（６）と同様に定義される。さらに、Ｃは、解かれる問題の物理的特性とは無関係であり、メッシュとは無関係であり、使用される反復ソルバの方法論とは無関係である。本発明の実施形態は、このような定数Ｃを見つけて検証する数値実験を使用する。ユーザ指定および無次元の相対誤差は、以下のように定義される。
【００６７】
【数８】
2017123160.tif 000010
【００６８】
ここで、解のノルム｜ｕ｜は、式（６）と同様に定義される。
【００６９】
図２は、実施形態による定数Ｃを決定するプロセスに使用することができる方法２２０のフローチャートである。方法２２０は、ステップ２２１において問題を離散化することから開始する。次に、離散化された問題は、ステップ２２２において、近似的無限反復について、即ち、デジタル機械の精度で収束される解に到達するまで反復的に解かれる。次に、ステップ２２３において、離散化された問題は、もう一度反復的に解かれ、各反復において、ステップ２２２において決定された収束された解と、所与の反復の解との間の差が誤差場の形になる。
【００７０】
方法２２０を要約すると、所与の問題は、解が収束されたと無事に結論を出すために非常に多くの数の反復によって実行される。従って、式（１）から最終的な解場ｕ*が取得されて格納される。同じ問題はその後、再実行されて、式（４）によって与えられる誤差がすべての反復において計算される。ここで、ｕ*は、ステップ２２２からの最終的な解であり、ｕは、各反復の解である。体積が重み付けノルムなどの、誤差場のノルムが計算されて、この誤差場の体積が重み付けノルムを使用して、実施形態で使用される定数を決定することができる。例えば、実施形態において、式（８）を使用して実験定数を決定することができる。このプロセスは、さまざまなタイプのメッシュを有するさまざまな物理的問題に対してさらに反復されて、１次数の大きさの範囲内で誤差を大まかに限界する(bound)定数が決定される。
【００７１】
本発明の実施形態はまた、本明細書で説明する実施形態に従うシミュレーションの遂行、例えば、方法１１０のステップ１１２ｂにおいて使用される、固有値を推定する計算効率のよい方法も利用する。定常状態または非定常の固定ループの固有値は、何らかの形で、シミュレートされるシステムの物理的特性を表現する。さらに、線形ソルバで使用されるように、推定された固有値は、線形系の演算子の最小固有値になる。実施形態において、固有値は、レイリー商を使用して推定される。このような実施形態によれば、固有値は、定常状態のループおよび非定常の固定点反復ループの式（１０）を使用して推定される。
【００７２】
【数９】
2017123160.tif 000011
【００７３】
式（１０）のδＵは、解の１つの反復から次の反復への変化である。これは、各線形ソルバループの最後で取得される。さらに、
【００７４】
【数１０】
2017123160.tif 000012
【００７５】
の式を所与として、Ａは、緩和条件を含まず、Ｖ-1は、対角線とする逆セル体積の対角線行列である。これは、セル体積によって演算子［Ａ］の条件をスケールする。実施形態によれば、線形ソルバに対して、体積スケールされた［Ａ］を使用して最小固有値が推定されるが、緩和パラメータはそのままにする。
【００７６】
本発明の実施形態を定常状態ソルバおよび非定常ソルバに組み込み、さらにこれらのソルバの内部反復ループに組み込んで真の収束測定および解法オプションをユーザに提供することができる。図３は、本発明の方法を組み込む定常状態のシミュレーションを遂行する方法３３０を示している。方法３３０は、定常状態のループ３３１から開始して、ステップ３３２におけるｉ番目の解を継続することによって、解の初期推定を開始する。ｉ番目の解を用いて、線形ソルバループ３３３は、線形反復解法の遂行を開始する。線形ソルバループ３３３の反復毎に、ステップ３３４において本明細書で説明する本発明の原理を使用して誤差が推定され、今度は、ステップ３３４において計算された誤差は、ステップ３３５においてユーザ指定の相対誤差の閾値と比較される。線形ソルバループ３３３を行う間、線形算出の誤差が決定されること、即ち、３３４における誤差は、δＵの誤差であることに留意されたい。誤差が閾値以上である場合、線形ソルバループが継続し、ステップ３３３に戻る。誤差が閾値未満である場合、ステップ３３６においてｉ番目＋１解が特定された。ｉ番目＋１の解の誤差はその後、ステップ３３７において推定される。しかしながら、これは、推定される定常状態のループの誤差である。計算された定常状態のループの誤差はその後、ステップ３３８において閾値と比較されて、誤差が閾値未満である場合、方法３３０は、ステップ３４０において終了する。δＵ、ｕn+1は、
【００７７】
【数１１】
2017123160.tif 000013
【００７８】
の式を使用して取得される。ステップ３３７における誤差は、ｕn+1の誤差と見なされる。誤差が閾値以上である場合、ステップ３３９において方法３３０が継続して次の反復へと続く。
【００７９】
図４は、本発明の方法を組み込む非定常シミュレーションを遂行する方法４４０を示している。方法４４０は、非定常ループ４４１から開始して、ステップ４４２の時間ｔに開始する。時間ｔを用いて、固定点反復ループは、ステップ４４３から開始し、線形ソルバループ４４４を含む。線形ソルバループは、ステップ４４４において線形反復解法を遂行する。線形ソルバループ４４４の反復毎に、ステップ４４５において本明細書で説明する本発明の原理を使用して誤差が推定され、今度は、ステップ４４５において計算された誤差は、ステップ４４６においてユーザ指定の相対誤差の閾値と比較される。線形ソルバループ３３３を行う間、線形算出の誤差が決定されることに留意されたい。誤差が閾値以上である場合、線形ソルバループが継続し、ステップ４４４に戻る。線形ソルバループ４４４の誤差が閾値未満である場合、固定点反復ループの解はその後、ステップ４４７において推定される。ステップ４４７において推定された誤差は、ステップ４４５において推定された内部線形化されたシステムの線形ソルバの誤差と比較して、外部の非線形固定点反復ループの誤差である。言い換えれば、ステップ４４５における誤差は、δＵの誤差である一方、ステップ４４７における誤差は、ｕn+1の誤差である。計算された固定点反復ループの誤差はその後、ステップ４４８における閾値と比較される。誤差が閾値以上である場合、ステップ４４３において方法４４０が継続して、固定点反復ループが継続する。誤差が閾値未満である場合、ステップ４４９において時間ｔが所望の点に到達したかどうかが決定される。所望の時間に到達した場合、方法は、ステップ４５０において終了する。所望の時間に到達しなかった場合、ステップ４５１において時間が増分されて、ステップ４５２において方法４４０は、次の反復に移動する。
【００８０】
単一の閾値は、図３の方法３３０と図４の方法４４０にそれぞれ関連して説明されているが、本発明の実施形態は、それに限定されないことに留意されたい。実施形態は、ユーザに内部ループと外部ループの両方の収束の閾値を提供するように頼むことができ、これらの提供された閾値はその後、それに応じて使用され得る。さらに、実施形態は、ユーザが遂行される最大数の反復を指定することをさらに要求できる。これは、解答に収束されない問題に対するセーフガードにすることができる。
【００８１】
図５は、本発明の実施形態によるシステムのシミュレーションを提供するために使用できるコンピュータベースのシステム５５０の簡易化されたブロック図である。システム５５０は、バス５５３を備える。バス５５３は、システム５５０のさまざまなコンポーネント間の相互接続として機能する。バス５５３に接続されているのは、キーボード、マウス、ディスプレイ、スピーカなどのさまざまな入力／出力デバイスをシステム５５０に接続するための入力／出力デバイスインタフェース５５６である。中央処理装置（ＣＰＵ）５５２は、バス５５３に接続されて、コンピュータ命令の実行を提供する。メモリ５５５は、コンピュータ命令を実行するために使用されるデータの揮発性記憶域を提供する。ストレージ５５４は、オペレーティングシステム（図示せず）などのソフトウェア命令の不揮発性記憶域を提供する。システム５５０はまた、ワイドエリアネットワーク（ＷＡＮ）およびローカルネットワーク（ＬＡＮ）を含む、当業者には周知である任意のさまざまなネットワークに接続するためのネットワークインタフェース５５１も備える。
【００８２】
本明細書で説明する例示的な実施形態は、多くの異なるやり方で実装され得ることを理解されたい。ある場合には、本明細書で説明するさまざまな方法および機械はそれぞれ、コンピュータシステム５５０などの物理的、仮想の、またはハイブリッドな汎用コンピュータか、または本明細書で説明する以下の図６に関連するコンピュータ環境６００などのコンピュータネットワーク環境によって実装され得る。コンピュータシステム５５０を、本明細書で説明する方法（例えば、１１０、３３０、および４４０）、例えば、ソフトウェア命令をＣＰＵ５５２によって実行されるメモリ５５５または不揮発性ストレージ５５４のいずれかに読み出させることによって実行する機械に移すことができる。システム５５０およびそのさまざまなコンポーネントは、本明細書で説明する本発明の任意の実施形態を実行するように構成され得ることを当業者はさらに理解しなければならない。さらに、システム５５０は、システム５５０に動作可能に結合された、内部的または外部的に結合されたハードウェア、ソフトウェア、およびファームウェアモジュールの任意の組み合わせを利用して本明細書で説明するさまざまな実施形態を実装することができる。
【００８３】
図６は、本発明の実施形態が実装され得るコンピュータネットワーク環境６６０を示している。コンピュータネットワーク環境６６０において、サーバ６６１は、通信ネットワーク６６２を介してクライアント６６３ａ−ｎにリンクされる。環境６６０を使用してクライアント６６３ａ−ｎが単独でまたはサーバ６６１との組み合わせにおいて上記で説明した方法（例えば、１１０、３３０、および４４０）のいずれかを実行できるようにさせることができる。
【００８４】
それらの実施形態または態様は、ハードウェア、ファームウェア、またはソフトウェアの形態で実装され得る。ソフトウェアに実装されると、ソフトウェアは、プロセッサがそのソフトウェアまたは命令のサブセットを読み出すことを可能にするように構成される非定常でない任意のコンピュータ可読媒体に格納される。プロセッサはその後、命令を実行して、本明細書で説明する方法でオペレートするまたは装置にオペレートさせるように構成される。
【００８５】
さらに、ファームウェア、ソフトウェア、ルーチン、または命令は、データプロセッサのあるアクションおよび／または関数を遂行するように本明細書で説明され得る。しかしながら、本明細書に包含されるこのような説明は、単に便宜のためであり、実際このようなアクションは、コンピューティングデバイス、プロセッサ、コントローラ、またはファームウェア、ソフトウェア、ルーチン、命令などを実行する他のデバイスから生じることを認識されたい。
【００８６】
フロー図、ブロック図、およびネットワーク図は、より多いまたはより少ない要素を含むことができ、異なって配置されるか、または異なって表現され得ることを理解されたい。しかし、ある実装は、ブロック図およびネットワーク図およびブロック図およびネットワーク図の数を決定して、実施形態の実行を特定のやり方で実装することを示すことができることをさらに理解されたい。
【００８７】
従って、さらなる実施形態はまた、さまざまなコンピュータアーキテクチャ、物理的コンピュータ、仮想コンピュータ、クラウドコンピュータ、および／またはそれらのある組み合わせにおいても実装されてよく、従って、本明細書で説明するデータプロセッサは、説明のみを目的とすることを意図し、実施形態を制限することを意図しない。
【００８８】
本発明は、特にそれらの例示的な実施形態を参照して説明されているが、形態および詳細のさまざまな変更は、添付の特許請求の範囲によって網羅される発明の範囲から逸脱しない範囲で行われ得ることが当業者には理解されよう。
【図１】
2017123160.tif 000014
【図２】
2017123160.tif 000015
【図３】
2017123160.tif 000016
【図４】
2017123160.tif 000017
【図５】
2017123160.tif 000018
【図６】
2017123160.tif 000019
【外国語明細書】
2017123160000001.pdf