Ist es möglich, multipliziert mit der logarithmischen Wahrscheinlichkeitsdichtefunktion analytisch zu integrieren ?


10

Erstens, durch analytische Integration, meine ich, gibt es eine Integrationsregel, um dies zu lösen, im Gegensatz zu numerischen Analysen (wie Trapez-, Gauß-Legendre- oder Simpson-Regeln)?

Ich habe eine Funktion f(x)=xg(x;μ,σ) wobei

g(x;μ,σ)=1σx2πe12σ2(log(x)μ)2
ist die Wahrscheinlichkeitsdichtefunktion einer logarithmischen Normalverteilung mit Parameter μ und σ . Im Folgenden werde ich die Notation mit g (x) abkürzen g(x)und G(x) für die kumulative Verteilungsfunktion verwenden.

Ich muss das Integral \ int_ {a} ^ {b} f (x) \, \ rd x \> berechnen

abf(x)dx.

Derzeit mache ich dies mit numerischer Integration nach der Gauss-Legendre-Methode. Da ich dies viele Male ausführen muss, ist die Leistung wichtig. Bevor ich mich mit der Optimierung der numerischen Analysen / anderer Teile befasse, möchte ich wissen, ob es Integrationsregeln gibt, um dies zu lösen.

Ich habe versucht, die Regel der Teilintegration anzuwenden, und bin dazu gekommen, wo ich wieder feststecke.

  1. udv=uvvdu .

  2. u=xdu=dx

  3. dv=g(x)dxv=G(x)

  4. uvvdx=xG(x)G(x)dx

Ich stecke fest, da ich das \ int G (x) \ rd x nicht auswerten kann G(x)dx.

Dies ist für ein Softwarepaket, das ich erstelle.


@Rosh, mit meinst du die Wahrscheinlichkeitsdichte der logarithmischen Normalverteilung? lognormal
mpiktas

1
Dies kann als konstante mal Differenz zwischen zwei normalen cdfs ausgedrückt werden. Normale cdfs werden unter Verwendung der rationalen Chebyshev-Näherung von W. Cody effizient berechnet. Sie sollten keine Alternativen zur numerischen Integration benötigen und zweifellos auch nicht bevorzugen . Wenn Sie weitere Details benötigen, kann ich diese veröffentlichen.
Kardinal

@mpiktas, Ja, lognormal ist die Wahrscheinlichkeitsdichtefunktion und lognormalCDF ist die kumulative Dichtefunktion.
Rosh

3
@Rosh hat eine logarithmische Normalverteilung bedeutet, dass normal verteilt ist. Ersetzen Sie also in Ihrem ursprünglichen Integral. Der Integrand ist ein Exponential, dessen Argument eine quadratische Funktion von . Wenn Sie das Quadrat ausfüllen, wird es zu einem Vielfachen einer normalen PDF-Datei, sodass Ihre Antwort in Form der normalen CDF und der Exponentiale der ursprünglichen Endpunkte geschrieben wird. Es gibt viele gute Annäherungen an die normale CDF (ein Vielfaches der Fehlerfunktion). xlog(x)x=exp(y)y
whuber

1
Ja, @whuber und ich haben dasselbe beschrieben. Sie sollten so etwas wie wobei und und bezeichnet das normale cdf. Beachten Sie, dass es abhängig von den Werten von , , und Möglichkeiten gibt, diesen Ausdruck so umzuschreiben, dass er numerisch stabiler ist. eμ+12σ2(Φ(β)Φ(α))β=(log(b)(μ+σ2))/σα=(log(a)(μ+σ2))/σΦ()abμσ
Kardinal

Antworten:


15

Kurze Antwort : Nein, zumindest in Bezug auf Elementarfunktionen ist dies nicht möglich. Es gibt jedoch sehr gute (und relativ schnelle!) Numerische Algorithmen zur Berechnung einer solchen Größe, und sie sollten in diesem Fall jeder numerischen Integrationstechnik vorgezogen werden.

Interessante Menge in Bezug auf normales cdf

Die Menge, an der Sie interessiert sind, hängt tatsächlich eng mit dem bedingten Mittelwert einer logarithmischen Zufallsvariablen zusammen. Das heißt, wenn als Lognormal mit den Parametern und , dann verwenden Sie unter Verwendung Ihrer Notation Xμσ

abf(x)dx=ab1σ2πe12σ2(log(x)μ)2dx=P(aXb)E(XaXb).

Um einen Ausdruck für dieses Integral zu erhalten, setzen Sie die Substitution . Dies mag zunächst etwas unmotiviert erscheinen. Beachten Sie jedoch, dass mit dieser Substitution und durch eine einfache Änderung der Variablen wobei und .z=(log(x)(μ+σ2))/σx=eμ+σ2eσz

abf(x)dx=eμ+12σ2αβ12πe12z2dz,
α=(log(a)(μ+σ2))/σβ=(log(b)(μ+σ2))/σ

Daher ist wobei der Standard ist normale kumulative Verteilungsfunktion.

abf(x)dx=eμ+12σ2(Φ(β)Φ(α)),
Φ(x)=x12πez2/2dz

Numerische Approximation

Es wird oft angegeben, dass kein bekannter Ausdruck in geschlossener Form für existiert. Ein Satz von Liouville aus dem frühen 19. Jahrhundert behauptet jedoch etwas Stärkeres: Es gibt keinen Ausdruck in geschlossener Form für diese Funktion . (Für den Beweis in diesem speziellen Fall siehe Brian Conrads Bericht .)Φ(x)

Wir müssen also einen numerischen Algorithmus verwenden, um die gewünschte Menge zu approximieren. Dies kann innerhalb des IEEE-Gleitkommas mit doppelter Genauigkeit über einen Algorithmus von WJ Cody erfolgen. Es ist der Standardalgorithmus für dieses Problem, und unter Verwendung rationaler Ausdrücke relativ niedriger Ordnung ist es auch ziemlich effizient.

Hier ist eine Referenz, die die Annäherung diskutiert:

WJ Cody, Rational Chebyshev Approximations for the Error Function , Math. Comp. 1969, S. 631–637.

Dies ist unter anderem auch die Implementierung, die sowohl in MATLAB als auch in wird, falls diese das Abrufen von Beispielcode erleichtern.R

Hier ist eine verwandte Frage, falls Sie interessiert sind.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.