5つを超える次元を処理する有限要素ソフトウェアはありますか?


10

私はFEの初心者です。私のアプリケーションは、スペースが5次元である金融デリバティブの価格設定です。したがって、時間を追加すると、問題には6つの側面があります。

私は周りを見回そうとしましたが(Fenics、escript、deal.II、...)、私の理解では、これらのソフトウェアは3 + 1(3dスペース+ 1d時間)に制限されています。これは正しいです?

私のターゲット言語はPythonまたはC ++です。

私の問題の説明
毎月、投資家が再投資する自由があるかどうかにかかわらず、投資商品の価格を設定したいと思います。確率論的ボラティリティ、確率論的金利、確率論的死亡率について、そうしたいと思います。
確率的PDEは次のようになります ここで、は株価関連付けられた時間依存定数であり、 μ S T SB S T

dSt=μtSdt+σtdBtS(株式)dσt=μtσdt+νtσdBtσ(ボラティリティ)drt=μtrdt+νtrdBtr(金利)dqt=μtqdt+νtqdBtq(死亡)
μtSSBtS株価ノイズを作成する独立したLevyプロセスです。同様に、他の数量の場合:\ nu ^ \ sigma_tは、ボラティリティ\ sigmaに関連付けられた時間依存の数量です。C_ \ tauが時間\ tauでの許容投資を表すとし ましょう。確率的制御の問題は、 V_ \ tau = max \ left \ {c \ in C_ \ tau:P(\ text {death})E(r_ \ tau f(S _ {\ tau + 1}))+ P(alive )E(r_ \ tau V _ {\ tau + 1})\ right \}。 上記のPDEは連続的ですが、積V_ \ tauの値は事前定義された\ tau -timesでのみ、たとえば毎月解かれます。ν σ T σ C τ τ V τ = M A X { C C τP E R τ F S τ + 1+ P L iはV E E R τ V τ + 1}Vのτを τSνtσσ
Cττ
Vτ=メートルaバツ{cCτPErτfSτ+1+PalveErτVτ+1}
Vττ

モンテカルロは常に私の問題を総当たりにすることができると思いますが、それは非常に遅いです。

確率的PDEの確定的形式
この部分では、オプション値が あり、自然時間で定義されていると仮定します 回分、と時間で投資。 微分演算子 where時間依存定数

VtStσtrtqtcttVt
tτctt
Lt=rS+rσ+σSLtS=σtS+rtSSLtr=r+rrLtσ=σ+σσLtq=q+qq
{μtS}無視されます。次に、決定論的PDEは あり、 -timesの最適制御問題に適応できます。
tVt+Lt+LtS+Ltσ+Ltr+LtqVt=0
τ

3
この問題に有限要素を使用する必要がありますか?問題をもう少し詳しく説明できると助かります(特に、解決したいPDE)。
Victor Liu

@劉私は詳細を追加しました。MCが非常に遅いので、FEについては考えました。

1
表記を明確にできますか?ん中派生暗示?vpp
Jesse Chan

3
解決しようとしている確定的PDEも投稿すると、より良い答えが得られると思います。独立変数とは何か明確にしていただけますか?現時点では、唯一の独立変数は時間のようです。多項式カオス展開を使用してこれらの確率微分方程式を解いていますか?それで、決定論的微分方程式のシステムができるのはなぜですか?
Geoff Oxberry 2013

1
一方では、適度な次元でのFEの使用の複雑さと次元の呪いに対処するか、MCまたはより優れたQMCの高速化方法に取り組むことができます。後者の世界は必ずしも悪いわけではありません。実際、それは多くの理由でクアンタムの世界での選択のアプローチなので、簡単に無視するように注意してください。
クォーツ

回答:


8

5つの資産のポートフォリオのブラックショールズ方程式またはバリアントを解く場合、実際には5つの空間と1つの時間ディメンションがあります。私の頭の上でそれを行うことができるFEMパッケージは知りません(deal.IIは簡単に行うことはできませんが、以下を参照してください)。疎メッシュの使用に関する問題。あなたは彼の出版物を見回して幸運になるかもしれません。

追加の次元を持つ他の方程式があります。1つの例は、3空間+ 1時間+ 2角度+ 1エネルギー次元を持つ放射伝達方程式です。これが通常解決される方法は、通常どおり3次元空間を離散化し、次に2次元および1次元メッシュで角度とエネルギーの次元を離散化し、空間メッシュの各節点に多数の変数(角度メッシュの各ノードにエネルギーメッシュのノード数を掛けたもの)。このスキームをdeal.IIの実装でうまく使用しています。これは放射伝達方程式にとって意味があり、自然ではない場合でも方程式でエミュレートされる場合があります。


5

DUNE、分散および統合数値環境http://www.dune-project.orgは、任意の次元の構造化グリッド(SGrid、およびYaspgrid)を備えています。DUNE の機能を参照してください。現在、上記のグリッドの1つであるyaspgridをテンソル積グリッドに変換するブランチがあります。リリース2.0以降(現在のバージョンは2.2.1であり、2.3は間もなく登場します)、任意の次元をサポートするさまざまな有限要素法の参照要素があります。したがって、たとえば、整流モジュールdune-pdelabを使用して、任意の次元の有限要素離散化をセットアップできる可能性があります。これは頻繁にテストされないかもしれませんが。

そうは言っても、ヴォルフガングが指摘したように、次元の呪いはまだあります。

詳細については、DUNEメーリングリストを参照してください。


0

わかりましたので、あなたが持っているものは結合されたODEのセットのように見えます。私が知る限り、時間に関する導関数のみがあり、他のものに関する導関数がないためです。任意の次元のODEのシステムを解くためのパッケージはかなりたくさんあります(Matlabにはのようなものがありますode45)。Pythonの場合、この質問でいくつかの提案を確認してください。最後に、netlibには古いFortranコードがあり、C ++と簡単にインターフェースできます(使いやすさは別の問題です)。私が調べてからしばらく経っているので、おそらくもっと良い代替案が世の中にあるでしょう(他の人は口に入れるべきです)。


1
確定的PDEを追加すると、質問が明確ではないことがわかります。申し訳ありませんが、助けてくれてありがとうございます。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.