Erwartung eines Produkts von abhängigen Zufallsvariablen bei


18

Lassen und , . Was ist die Erwartung von als ?X1U[0,1]XiU[Xi1,1]i=2,3,...X1X2Xnn


7
Eine pedantische Bemerkung: soll bedeuten ? Alternativ könnte es bedeuten, nur auf konditionieren , . Da letzteres jedoch die gemeinsame Verteilung der nicht vollständig spezifiziert , ist nicht sofort klar, ob die Erwartung eindeutig bestimmt wird. XiU[Xi1,1]XiX1,,Xi1U[Xi1,1]Xi1XiXi1U[Xi1,1]Xi
Juho Kokkala

Ich denke, theoretisch sollte es von allen vorherigen bis zu abhängig sein . jedoch , können wir die Verteilung für . Da bin ich mir nicht ganz sicher. XiXi1Xi1Xi
usedbywho

@JuhoKokkala Wie bereits erwähnt, spielt es keine Rolle, ob Sie die Variablen vor konditionieren, da sie die Tatsache nicht ändern würden, dass einheitlich ist . Die Verteilung von scheint mir vollkommen klar zu sein. Xi1Xi[Xi1,1](X1,,Xn)
DSAXTON

@dsaxton Wenn wir nur X1U(0,1) und X_i \ mid X_ {i-1} \ sim U (X_ {i-1}, 1) annehmen , ist i = 2,3, ...XiXi1U(Xi1,1),i=2,3,... , es bleibt möglich, dass X1 und X3 nicht bedingt unabhängig von X2 . Daher ist die Verteilung von (X1,X2,X3) nicht genau definiert.
Juho Kokkala

@JuhoKokkala Wenn ich dir sage, dass X2=t , wie ist die Verteilung von X3 ? Wenn Sie die Frage beantworten können, ohne an X_1 zu denken X1, wie können X1 und X3 von X_2 abhängig sein X2? Beachten Sie auch, wie andere Poster diese Sequenz problemlos simulieren konnten.
Dsaxton

Antworten:


12

Die Antwort ist in der Tat ,1/e wie in den früheren Antworten auf der Grundlage von Simulationen und endlichen Annäherungen vermutet.

Die Lösung wird leicht durch die Einführung einer Folge von Funktionen . Obwohl wir sofort mit diesem Schritt fortfahren könnten, könnte er ziemlich mysteriös erscheinen. Der erste Teil dieser Lösung erklärt, wie man diese kochen kann . Der zweite Teil zeigt, wie sie ausgenutzt werden, um eine Funktionsgleichung zu finden, die von der Begrenzungsfunktion erfüllt wird . Der dritte Teil zeigt die (Routine-) Berechnungen an, die zur Lösung dieser Funktionsgleichung erforderlich sind.f n ( t ) f ( t ) = lim n f n ( t )fn:[0,1][0,1]fn(t)f(t)=limnfn(t)


1. Motivation

Wir können dies erreichen, indem wir einige mathematische Standardtechniken zur Problemlösung anwenden. In diesem Fall, in dem irgendeine Art von Operation ad infinitum wiederholt wird, existiert die Grenze als ein fester Punkt dieser Operation. Der Schlüssel besteht dann darin, die Operation zu identifizieren.

Die Schwierigkeit besteht darin, dass der Wechsel von zu kompliziert aussieht. Es ist einfacher, diesen Schritt als aus dem von an die Variablen zu betrachten, als aus dem von an die Variablen . Wenn wir betrachten würden, dass wie in der Frage beschrieben aufgebaut ist - wobei gleichmäßig auf , bedingt gleichmäßig auf ist und so weiter - dann Einführung vonE [ X 1 X 2X n - 1 X n ] X 1 ( X 2 , , X n ) X n ( X 1 , X 2 , , X n - 1 ) ( X 2 , , X nE[X1X2Xn1]E[X1X2Xn1Xn]X1(X2,,Xn)Xn(X1,X2,,Xn1)X 2 [ 0 , 1 ] X 3 [ X 2 , 1 ] X 1 X i 1 - X 1 1(X2,,Xn)X2[0,1]X3[X2,1]X1bewirkt, dass jedes nachfolgende um den Faktor Richtung der oberen Grenze schrumpft . Diese Überlegung führt natürlich zu der folgenden Konstruktion.Xi1X11

Als sei , da es etwas einfacher ist, Zahlen gegen als gegen zu verkleinern . Somit ist gleichmäßig in und ist gleichmäßig in abhängig von für alle Wir interessieren uns für zwei Dinge:1 Y i = 1 - X i Y 1 [ 0 , 1 ] Y i + 1 [ 0 , Y i ] ( Y 1 , Y 2 , ... , Y i ) i = 1 , 2 ,01Y.ich=1-XichY.1[0,1]Y.ich+1[0,Y.ich](Y.1,Y.2,,Y.ich)ich=1,2,3,.

  1. Der Grenzwert von .E[X1X2Xn]=E[(1Y1)(1Y2)(1Yn)]

  2. Wie sich diese Werte verhalten, wenn alle gleichmäßig auf werden : indem alle Werte mit einem gemeinsamen Faktor , skaliert werden . 0 t 0 t 1Yi0t0t1

Zu diesem Zweck definieren

fn(t)=E[(1tY1)(1tY2)(1tYn)].

Es ist klar, dass jedes für jedes reelle definiert und stetig (tatsächlich unendlich differenzierbar) ist . Wir werden uns auf ihr Verhalten für . t t [ 0 , 1 ]fntt[0,1]


2. Der Schlüsselschritt

Folgendes ist offensichtlich:

  1. Jedes ist eine monoton abnehmende Funktion von auf .[ 0 , 1 ] [ 0fn(t)[0,1][0,1]

  2. fn(t)>fn+1(t) für alle .n

  3. fn(0)=1 für alle .n

  4. E(X1X2Xn)=fn(1).

Dies impliziert, dass für alle und .t [ 0 , 1 ] f ( 0 ) = 1f(t)=limnfn(t)t[0,1]f(0)=1

Beachten Sie, dass abhängig von die Variable in einheitlich ist und die Variablen (abhängig von allen vorhergehenden Variablen) in einheitlich sind , erfüllen genau die Bedingungen, die von erfüllt werden . FolglichY 2 / Y 1 [ 0 , 1 ] Y i + 1 / Y 1 [ 0 , Y i / Y 1 ] ( Y 2 / Y 1 , Y 3 / Y 1 , ... , Y n / Y 1 ) ( Y 1 , , Y n - 1 )Y1Y2/Y1[0,1]Yi+1/Y1[0,Yi/Y1](Y2/Y1,Y3/Y1,,Yn/Y1)(Y1,,Yn1)

fn(t)=E[(1tY1)E[(1tY2)(1tYn)|Y1]]=E[(1tY1)E[(1tY1Y2Y1)(1tY1YnY1)|Y1]]=E[(1tY1)fn1(tY1)].

Dies ist die rekursive Beziehung, nach der wir gesucht haben.

In der Grenze als muss es daher der Fall sein, dass für unabhängig von allen gleichverteilt in ,Y [ 0 , 1 ] Y inY[0,1]Yi

f(t)=E[(1tY)f(tY)]=01(1ty)f(ty)dy=1t0t(1x)f(x)dx.

Das heißt, muss ein fester Punkt des Funktions sein , für dieLfL

L[g](t)=1t0t(1x)g(x)dx.

3. Berechnung der Lösung

Löschen Sie den Bruch indem Sie beide Seiten mit multiplizieren . Da die rechte Seite ein Integral ist, können wir es in Bezug auf , giving unterscheident1/ttt

f(t)+tf(t)=(1t)f(t).

Äquivalent dazu, wenn man subtrahiert und beide Seiten durch dividiert ,f(t)t

f(t)=f(t)

für . Wir können dies durch Kontinuität erweitern, um . Mit der Anfangsbedingung (3) ist die eindeutige Lösungt = 0 f ( 0 ) = 10<t1t=0f(0)=1

f(t)=et.

Folglich wird durch (4), die limitierende Erwartung ist , QED. f ( 1 ) = e - 1 = 1 / eX1X2Xnf(1)=e1=1/e


Da Mathematica ein beliebtes Werkzeug zur Untersuchung dieses Problems zu sein scheint, finden Sie hier einen Mathematica- Code zur Berechnung und Darstellung von für kleine . Die Darstellung von zeigt eine schnelle Konvergenz zu (als schwarzes Diagramm dargestellt). n f 1 , f 2 , f 3 , f 4 e - tfnnf1,f2,f3,f4et

a = 0 <= t <= 1;
l[g_] := Function[{t}, (1/t) Integrate[(1 - x) g[x], {x, 0, t}, Assumptions -> a]];
f = Evaluate@Through[NestList[l, 1 - #/2 &, 3][t]]
Plot[f, {t,0,1}]

Zahl


3
(+1) Schöne Analyse.
Kardinal

Vielen Dank, dass Sie uns das mitteilen. Es gibt einige wirklich brillante Leute da draußen!
Felipe Gerard

4

Aktualisieren

Ich denke, es ist eine sichere Wette, dass die Antwort . Ich lief die Integrale für den erwarteten Wert von bis mit Mathematica und mit Ich haben = 2 n = 100 n = 1001/en=2n=100n=100

0.367879441171442321595523770161567628159853507344458757185018968311538556667710938369307469618599737077005261635286940285462842065735614

(bis zu 100 Dezimalstellen). Der Kehrwert dieses Wertes ist

2.718281828459045235360287471351873636852026081893477137766637293458245150821149822195768231483133554

Der Unterschied zu dem reziproken und iste

-7.88860905221011806482437200330334265831479532397772375613947042032873*10^-31

Ich glaube, das ist zu nahe, um ein vernünftiger Zufall zu sein.

Der Mathematica- Code lautet:

Do[
 x = Table[ToExpression["x" <> ToString[i]], {i, n}];
 integrand = Expand[Simplify[(x[[n - 1]]/(1 - x[[n - 1]])) Integrate[x[[n]], {x[[n]], x[[n - 1]], 1}]]];
 Do[
   integrand = Expand[Simplify[x[[i - 1]] Integrate[integrand, {x[[i]], x[[i - 1]], 1}]/(1 - x[[i - 1]])]],
   {i, n - 1, 2, -1}]
  Print[{n, N[Integrate[integrand, {x1, 0, 1}], 100]}],
 {n, 2, 100}]

Ende der Aktualisierung

Dies ist eher ein ausführlicher Kommentar als eine Antwort.

Wenn wir einen Brute-Force-Weg gehen, indem wir den erwarteten Wert für mehrere Werte von bestimmen , erkennt möglicherweise jemand ein Muster und kann dann ein Limit festlegen .n

Für haben wir den erwarteten Wert des Produktsn=5

μn=01x11x21x31x41x1x2x3x4x5(1x1)(1x2)(1x3)(1x4)dx5dx4dx3dx2dx1

das ist 96547/259200 oder ungefähr 0,3724807098765432.

Wenn wir das Integral von 0 auf 1 reduzieren, haben wir ein Polynom in mit den folgenden Ergebnissen für bis (und ich habe den Index entfernt, um die Lesbarkeit zu verbessern): n = 1 n = 6x1n=1n=6

x

(x+x2)/2

(5x+5x2+2x3)/12

(28x+28x2+13x3+3x4)/72

(1631x+1631x2+791x3+231x4+36x5)/4320

(96547x+96547x2+47617x3+14997x4+3132x5+360x6)/259200

Wenn jemand die Form der ganzzahligen Koeffizienten erkennt, kann möglicherweise eine Grenze als bestimmt werden (nachdem die Integration von 0 auf 1 durchgeführt wurde, die entfernt wurde, um das zugrunde liegende Polynom anzuzeigen).n


1/e ist wunderschön elegant! :)
wolfies

4

Gute Frage. Nur als kurzen Kommentar möchte ich Folgendes erwähnen:

  • Xn wird schnell zu 1 konvergieren, daher ist die Einstellung von für die Monte-Carlo-Prüfung mehr als der Trick.n=1000

  • Wenn , dann durch Monte - Carlo - Simulation, wie , .Zn=X1X2XnnE[Zn]0.367

  • Das folgende Diagramm vergleicht das simulierte Monte-Carlo-PDF von mit einer [dh einem Beta (a, 1) pdf)]Zn

f(z)=aza1

... hier mit Parameter :a=0.57


(Quelle: tri.org.au )

woher:

  • Die blaue Kurve zeigt das 'empirische' Monte-Carlo-PDF vonZn
  • Die rot gestrichelte Kurve ist ein PowerFunction-PDF.

Die Passform sieht ziemlich gut aus.

Code

Hier sind 1 Million Pseudozufallszeichnungen des Produkts (etwa mit ), hier mit Mathematica :Znn=1000

data = Table[Times @@ NestList[RandomReal[{#, 1}] &, RandomReal[], 1000], {10^6}];

Der Stichprobenmittelwert ist:

 Mean[data]

0,367657


Können Sie Ihren gesamten Code teilen? Meine Lösung unterscheidet sich von Ihrer.

1
Der erste Punkt, der von entscheidender Bedeutung ist, scheint nicht hinreichend gerechtfertigt zu sein. Warum können Sie die Auswirkung der nächsten Werte von ? Trotz "schneller" Konvergenz könnte ihre kumulative Wirkung die Erwartung erheblich senken. x n10100xn
whuber

1
Gute Anwendung der Simulation hier. Ich habe ähnliche Fragen wie @whuber. Wie können wir sicher sein, dass der Wert gegen 0,367 konvergiert, aber nicht gegen etwas Niedrigeres, was möglicherweise möglich ist, wenn größer ist? n
usedbywho

In Erwiderung auf die obigen 2 Kommentare: (a) Die Reihe konvergiert sehr schnell zu 1. Selbst ab einem Anfangswert von ist innerhalb von etwa 60 Iterationen numerisch nicht von numerisch 1.0 zu einem Computer unterscheidbar . Die Simulation von mit ist also übertrieben. (b) Im Rahmen des Monte-Carlo-Tests überprüfte ich dieselbe Simulation (mit 1 Million Durchläufen), verwendete jedoch anstelle von 1000, und die Ergebnisse waren nicht unterscheidbar. So scheint es unwahrscheinlich , dass größere Werte von werden jeden erkennbaren Unterschied machen: über , ist effektiv 1,0.XiX1=0.1X60Xnn=1000n=5000nn=100Xn
Wolfies

0

Rein intuitiv und basierend auf Rustys anderer Antwort sollte die Antwort ungefähr so ​​lauten:

n = 1:1000
x = (1 + (n^2 - 1)/(n^2)) / 2
prod(x)

Welches gibt uns 0.3583668. Für jedes teilen Sie den Bereich in zwei Hälften, wobei bei beginnt . Es ist also ein Produkt von usw.X(a,1)a01/2,(1+3/4)/2,(1+8/9)/2

Das ist nur Intuition.


Das Problem mit Rustys Antwort ist, dass U [1] in jeder einzelnen Simulation identisch ist. Die Simulationen sind nicht unabhängig. Eine Lösung dafür ist einfach. Bewegen Sie die Linie mit U[1] = runif(1,0,1)in die erste Schleife. Das Ergebnis ist:

set.seed(3)    #Just for reproducibility of my solution

n = 1000    #Number of random variables
S = 1000    #Number of Monte Carlo samples

Z = rep(NA,S)
U = rep(NA,n)

for(j in 1:S){
    U[1] = runif(1,0,1)
    for(i in 2:n){
        U[i] = runif(1,U[i-1],1)
    }
    Z[j] = prod(U)
}

mean(Z)

Das gibt 0.3545284.


1
Sehr einfache Lösung! Ich denke es ist wahr, es gibt immer einen Fehler im Code! Ich werde meine Antwort notieren.

1
Ja, das war genau das, was ich erwartet hatte, da Sie die erwarteten Werte als Untergrenzen eingeben.

1
Ich habe Ihren Code mit und als Antwort erhalten. Ist das nicht ein bisschen komisch, denn wenn es zu einem Wert konvergiert, bringen uns mehr Runs diesem Wert nicht näher? S=100000.3631297
usedbywho
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.