और , आज्ञा दें । को रूप में क्या उम्मीद है ?
और , आज्ञा दें । को रूप में क्या उम्मीद है ?
जवाबों:
उत्तर वास्तव में , जैसा कि पहले के उत्तरों में अनुमान लगाया गया था कि सिमुलेशन और परिमित सन्निकटन पर आधारित है।
समाधान आसानी से आता है कार्यों का एक क्रम शुरू करने से । हालाँकि हम तुरंत उस कदम पर आगे बढ़ सकते थे, लेकिन यह रहस्यमयी प्रतीत हो सकता था। इस समाधान का पहला भाग बताता है कि कोई इन को कैसे पका सकता है । दूसरे भाग से पता चलता है कि वे किस तरह का शोषण किया जाता एक कार्यात्मक समीकरण सीमित समारोह से संतुष्ट लगता है । तीसरा भाग इस क्रियात्मक समीकरण को हल करने के लिए आवश्यक (नियमित) गणनाओं को प्रदर्शित करता है।
हम कुछ मानक गणितीय समस्या-समाधान तकनीकों को लागू करके इस तक पहुंच सकते हैं। इस मामले में, जहां किसी प्रकार के ऑपरेशन को बार-बार एड इनफिनिटम कहा जाता है, सीमा उस ऑपरेशन के एक निश्चित बिंदु के रूप में मौजूद होगी । उसके बाद, कुंजी को ऑपरेशन की पहचान करना है।
कठिनाई यह है कि से कदम है को जटिल लग। इस चरण को से समीपवर्ती चर से उत्पन्न होने के बजाय से चर ( X 1 ) के रूप में देखना सरल है । । यदि हमप्रश्न में वर्णित अनुसार निर्मित किए जारहे ( एक्स 2 , … , एक्स एन ) पर विचार कर रहे थे- एक्स 2 के साथसमान रूप से [ 0 , 1 ] पर वितरित किए गए, एक्स 3 सशर्त रूप से समान रूप से [ एक्स 2 , 1 ] , औरपर वितरित किए गएइतने पर - तो शुरू एक्स 1 बाद से हर एक कारण होगा एक्स मैं करने के लिएऊपरी सीमा 1 की ओर कारक से हटना । यह तर्क स्वाभाविक रूप से निम्नलिखित निर्माण की ओर ले जाता है।
प्रारंभिक बात के रूप में, चूँकि यह से 1 की ओर संख्या को सिकोड़ने के लिए थोड़ा सरल है , तो Y i = 1 - X i । इस प्रकार, Y 1 समान रूप में वितरित किया जाता है [ 0 , 1 ] और वाई मैं + 1 समान रूप में वितरित किया जाता है [ 0 , वाई मैं ] सशर्त पर ( Y 1 , वाई 2 , ... , वाई मैं ) सभी के लिए मैं हम दो चीजों में रुचि रखते हैं:
की सीमित मूल्य ।
How these values behave when shrinking all the uniformly towards : that is, by scaling them all by some common factor , .
To this end, define
Clearly each is defined and continuous (infinitely differentiable, actually) for all real . We will focus on their behavior for .
The following are obvious:
Each is a monotonically decreasing function from to .
for all .
for all .
These imply that exists for all and .
Observe that, conditional on , the variable is uniform in and variables (conditional on all preceding variables) are uniform in : that is, satisfy precisely the conditions satisfied by . Consequently
This is the recursive relationship we were looking for.
In the limit as it must therefore be the case that for uniformly distributed in independently of all the ,
That is, must be a fixed point of the functional for which
Clear the fraction by multiplying both sides by . Because the right hand side is an integral, we may differentiate it with respect to , giving
Equivalently, upon subtracting and dividing both sides by ,
for . We may extend this by continuity to include . With the initial condition (3) , the unique solution is
Consequently, by (4), the limiting expectation of is , QED.
Because Mathematica appears to be a popular tool for studying this problem, here is Mathematica code to compute and plot for small . The plot of displays rapid convergence to (shown as the black graph).
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}]
Update
I think it's a safe bet that the answer is . I ran the integrals for the expected value from to using Mathematica and with I got
0.367879441171442321595523770161567628159853507344458757185018968311538556667710938369307469618599737077005261635286940285462842065735614
(to 100 decimal places). The reciprocal of that value is
2.718281828459045235360287471351873636852026081893477137766637293458245150821149822195768231483133554
The difference with that reciprocal and is
-7.88860905221011806482437200330334265831479532397772375613947042032873*10^-31
I think that's too close, dare I say, to be a rational coincidence.
The Mathematica code follows:
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}]
End of update
This is more of an extended comment than an answer.
If we go a brute force route by determining the expected value for several values of , maybe someone will recognize a pattern and then be able to take a limit.
For , we have the expected value of the product being
which is 96547/259200 or approximately 0.3724807098765432.
If we drop the integral from 0 to 1, we have a polynomial in with the following results for to (and I've dropped the subscript to make things a bit easier to read):
If someone recognizes the form of the integer coefficients, then maybe a limit as can be determined (after performing the integration from 0 to 1 that was removed to show the underlying polynomial).
Nice question. Just as a quick comment, I would note that:
will converge to 1 rapidly, so for Monte Carlo checking, setting will more than do the trick.
If , then by Monte Carlo simulation, as , .
The following diagram compares the simulated Monte Carlo pdf of to a Power Function distribution [ i.e. a Beta(a,1) pdf) ]
... here with parameter :
(source: tri.org.au)
where:
The fit appears pretty good.
Code
Here are 1 million pseudorandom drawings of the product (say with ), here using Mathematica:
data = Table[Times @@ NestList[RandomReal[{#, 1}] &, RandomReal[], 1000], {10^6}];
The sample mean is:
Mean[data]
0.367657
Purely intuitively, and based on Rusty's other answer, I think the answer should be something like this:
n = 1:1000
x = (1 + (n^2 - 1)/(n^2)) / 2
prod(x)
Which gives us 0.3583668
. For each , you are splitting the range in half, where starts out at . So it's a product of , etc.
This is just intuition.
The problem with Rusty's answer is that U[1] is identical in every single simulation. The simulations are not independent. A fix for this is easy. Move the line with U[1] = runif(1,0,1)
to inside the first loop. The result is:
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)
This gives 0.3545284
.