ドメイン分解前提条件に対するマルチグリッドの利点は何ですか?


回答:


16

マルチグリッドおよびマルチレベルのドメイン分解メソッドには非常に多くの共通点があるため、通常、それぞれを他の特殊なケースとして記述することができます。分析フレームワークは、各分野の異なる哲学の結果として、多少異なります。一般的に、マルチグリッド法では中程度の粗大化率単純なスムーザーを使用し、ドメイン分解法では非常に高速の粗大化強力なスムーザーを使用します。

マルチグリッド(MG)

マルチグリッドは中程度の粗大化率を使用し、補間とスムーザーの変更により堅牢性を実現します。楕円問題の場合、補間演算子は、演算子のヌルに近い空間を保持するように「低エネルギー」でなければなりません(剛体モードなど)。これらの低エネルギー内挿に対する幾何学的アプローチの例は、Wan、Chan、Smith(2000)で、平滑化された集合体の代数的構造と比較されますVaněk、Mandel、Brezina(1996)Prometheusの代替であるPCGAMGによるMLおよびPETScの並列実装) 。Trottenberg、Oosterlee、およびSchüllerの本、Multigridメソッドに関する一般的な参考資料です。

ほとんどのマルチグリッドスムーザーは、加算的(Jacobi)または乗算的(Gauss Seidel)のいずれかの点ごとの緩和を伴います。これらは、小さな(単一ノードまたは単一要素)ディリクレ問題に対応します。一部のスペクトル適応性、堅牢性、ベクトル化可能性は、チェビシェフスムーザーを使用して実現できます。Adams、Brezina、Hu、Tuminaro(2003)を参照してください。非対称(トランスポートなど)の問題の場合、一般にGauss-Seidelのような乗法スムーザーが必要であり、巻き上げ補間を使用できます。また、Sch点および硬波問題のスムーザーは、Schur補数にヒントを得た「ブロック前提条件」または関連する「分散緩和」を介して、単純なスムーザーが有効なシステムに変換することで構築できます。

教科書のマルチグリッド効率とは、細かいグリッドでのわずか4回のわずかな残余評価のコストの小さな倍数で離散化誤差を解くことを意味します。これは、固定された代数的寛容に反復回数が行くことを意味ダウン増加のレベル数として。並行して、時間推定には、マルチグリッド階層によって暗示される同期のために生じる対数項が含まれます。

ドメイン分解(DD)

最初のドメイン分解方法には1つのレベルしかありませんでした。粗いレベルがない場合、事前条件演算子の条件数はここで、Lはドメインの直径、Hは名目上のサブドメインサイズです。実際には、1レベルDDの条件番号は、この境界とOL2OL2H2LHここで、hは要素のサイズです。Krylovメソッドに必要な反復回数は、条件数の平方根としてスケーリングすることに注意してください。最適化されたシュワルツ法(Gander 2006)は、ディリクレ法とノイマン法に比べて定数とH/hへの依存性を改善しますが、一般に粗いレベルを含まないため、多くのサブドメインの場合に低下します。ドメイン分解法の一般的なリファレンスについては、Smith、Bjørstad、およびGropp(1996)またはToselli and Widlund(2005)の書籍を参照してください。OL2hHhH/h

最適または準最適な収束率を得るには、複数のレベルが必要です。ほとんどのDDメソッドは2レベルのメソッドとして提示され、一部のメソッドはより多くのレベルに拡張するのが非常に困難です。DDメソッドは、オーバーラップまたは非オーバーラップとして分類できます。

重複

これらのシュワルツ法はオーバーラップを使用し、一般にディリクレ問題の解決に基づいています。メソッドの強度は、オーバーラップを増やすことで向上できます。このクラスのメソッドは通常堅牢であり、ローカルな制約(エンジニアリングソリッドメカニックスで一般的)の問題に対してローカルなヌルスペースの識別や技術的な変更を必要としませんが、重複のために余分な作業(特に3D)を伴います。さらに、非圧縮性などの制約のある問題では、通常、オーバーラップストリップのinf-sup定数が表示され、収束率が最適化されません。BDDC / FETI-DPと同様の粗い空間を使用した最新のオーバーラップ手法(後述)は、Dorhmann、Klawonn、Widlund(2008)およびDohrmann and Widlund(2010)によって開発されました

重複しない

これらの方法は通常、ある種のノイマン問題を解決します。つまり、ディリクレ法とは異なり、グローバルに組み立てられたマトリックスでは機能せず、代わりに未組み立てまたは部分的に組み立てられたマトリックスが必要です。最も一般的なノイマン法は、反復ごとにバランスをとることによってサブドメイン間で連続性を強化するか、収束に達した後にのみ連続性を強化するラグランジュ乗数法のいずれかです。この種の初期の方法(Balancing Neumann-NeumannおよびFETI)では、粗いレベルを構築し、サブドメインの問題を非特異にするために、各サブドメインのヌル空間の正確な特性評価が必要です。後の方法(BDDCおよびFETI-DP)では、サブドメインコーナーやエッジ/フェースモーメントを粗いレベルの自由度として選択します。Klawonn and Rheinbach(2007)を参照3D弾性のための粗い空間選択の詳細な議論。Mandel、Dohrmann、およびTazaur(2005)は、可能性のある0と1を除き、BDDCとFETI-DPがすべて同じ固有値を持つことを示しました。

3つ以上のレベル

ほとんどのDDメソッドは2レベルのメソッドとしてのみ提示され、2つ以上のレベルで使用するには不便な粗いスペースを選択するものもあります。残念ながら、特に3Dでは、粗いレベルの問題がすぐにボトルネックになり、解決できる問題のサイズが制限されます。さらに、前処理された演算子の条件数は、特にノイマン問題に基づいたDDメソッドの場合、次のようにスケーリングする傾向があります。

κPDD1A=C1+logHh2L1

ここで、はレベルの数です。限り積極的な粗大化が使用されているように、これはおそらくそれほど重要ではなく、L LL41012


8

これは素晴らしい記事ですが、(マルチレベルの)DDとMGには多くの共通点があると言っても、正確ではないか、少なくとも役に立たないと思います。方法は非常に異なり、一方の専門知識は他方では非常に役立つとは思いません。

まず、2つのコミュニティは複雑さの異なる定義を使用します。DDは前処理済みシステムの条件数を最適化し、MGは作業/メモリの複雑さを最適化します。これは大きな根本的な違いです。「最適性」は、これら2つのコンテキストでまったく異なる意味を持ちます。並列の複雑さを追加しても状況は変わりません(ただし、MGにログ用語が追加されます)。2つのコミュニティはほとんど異なる言語を話します。

次に、MGにはマルチレベルが組み込まれており、マルチレベルDDメソッドはすべて2レベルの理論と実装で開発されています。これにより、MGで使用できる粗いグリッドスペースのスペースが制限されます。それらは再帰的でなければなりません。たとえば、MGフレームワークにFETIを実装することはできません。Jedが述べたように、人々はいくつかのマルチレベルDDメソッドを実行しますが、現在人気のあるDDメソッドの少なくともいくつかは再帰的に実装可能ではないようです。

第三に、私はアルゴリズム自体が実践されているように、非常に異なっていると考えています。定性的に言えば、DDメソッドはドメインの境界に投影され、このインターフェイスの問題を解決します。MGは、ネイティブ方程式と直接連携します。この投影を回避することにより、MGを非線形および非対称の問題に簡単に適用できます。理論はほとんど非線形および非対称の問題ではなくなりますが、多くの人々のために働いています。MGは、問題を2つの部分に明示的に分離します。スケーリングのための粗いグリッド空間と、物理学を解くための反復ソルバー(より滑らかな)です。これは、MGを理解して作業する上で重要であり、私にとって魅力的な財産です。

理論的には、スムーザーと粗いグリッド空間は密結合していますが、実際には、最適化パラメーターとして異なるスムーザーを頻繁に入れ換えることができます。Jedが述べたように、ポイントまたは頂点のスムーザーは一般的であり、通常は高速ですが、困難な問題には、より重いスムーザーが役立つ場合があります。このプロットは、Jacobi、ブロックJacobi、および "additive Schwarz"(重複)のポアソン比の関数として解析時間を示す私の論文からのものです。少し読みにくいですが、最高のポアソン比(0.499)では、シュワルツとの重なりは(頂点)ジョコビの約2倍ですが、歩行者のポアソン比では約3倍遅くなります。

ポイント、ブロック、オーバーラップしたスムーザーの時間対ポアソン比を解く


4

Jedの答えによれば、MGは中程度の粗大化を使用し、DDは急速な粗大化を使用します。それらが並列化されると、これが違いを生むと思います。MGは、DDの単一の粗大化に相当する多数の粗大化レベルを通過するために、複数の通信と同期が行われます。Jedの答えからのもう1つのポイントは、MGは安価なスムーザーを使用し、DDは強力なスムーザーを使用することです。2つの点を考慮すると、粗いレベルのMGの通信/計算比が悪いことが報告されています。だから アムダールの法則に、並列高速化は良くありません。これの解決策は、次のような並列の粗いグリッド補正です。 BPXプレコンディショナーです。。その上、MGはAdamsが指摘したようにスムーズにDDを使用でき、MGはDDのサブドメイン内でも使用できます。Barkerが指摘した考慮事項に基づいて、DD内でMGを使用する方が良いと思います。これは、DDの並列シミュレーションとMGの最適な複雑さの両方を活用します。


1

私は、Jedの優れた答えに1つだけ付け加えたいと思います。つまり、2つのアプローチの背後にある動機は異なる(または少なくともそうであった)ということです。

ドメイン分解は、並列計算の手法として動機付けられています。特に、1レベルのメソッドの場合、DDは並列マシンに実装するのが非常に自然です。ドメインを断片に分割し、各断片を異なるプロセッサに割り当てます。ある意味では、DDの背後にある動機は、プロセッサー間で算術演算を分割することです。

優れた並列マルチグリッド実装が存在しますが、多くの場合、並列で行うのは自然ではありません。代わりに、マルチグリッドの背後にある動機は、そもそも算術演算を少なくすることです。


2
これは良い点ですが、DDは、初期のDDトークを見た経験から、既存のダイレクトソルバー(ほとんどのエンジニアリングの場合)を再利用したいという動機もあると付け加えます。マルチレベルDDメソッドを実装したことはありませんが、それは私にとって「自然」ではありません。マトリックス-ベクトル積の並列化(マルチグリッドに実装する必要がある単純なベクトル演算以外の唯一のこと)は、当然ながら非常によく理解されています。
アダムス

1

@ジェド・ブラウンHhO1Hh

hH


2
参考までに、これはおそらく別の回答ではなく、Jedの回答に対するコメントであるべきです。
ジャックポールソン

はい、試しましたが、Jedの回答の下にコメントを追加する方法が見つかりません。
ホイ張

hH

@JedBrownプレコンディショナーがなければ、OSMはプレコンディショナーを使用したBDDC / FETI-DPの対数を達成できません。しかし、ディリクレ/ノイマンの前処理は高価になる可能性があり、集中前処理では余分な因子があることに注意してくださいHh
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.