एक ब्राउनियन पुल का उपयोग करके एक ब्राउनियन भ्रमण का अनुकरण करना?


11

मैं एक ब्राउनियन भ्रमण प्रक्रिया (एक ब्राउनियन गति जो हमेशा वातानुकूलित होती है, जब 0<t<1 से ) पर अनुकरण करना चाहूंगा । चूंकि एक ब्राउनियन भ्रमण प्रक्रिया एक ब्राउनियन पुल है जिसे हमेशा सकारात्मक रहने के लिए वातानुकूलित किया जाता है, इसलिए मैं एक ब्राउनियन पुल का उपयोग करके ब्राउनियन भ्रमण की गति का अनुकरण करने की उम्मीद कर रहा था।टी = 10t=1

आर में, मैं एक ब्राउनियन ब्रिज प्रक्रिया का अनुकरण करने के लिए thh 'e1017' पैकेज का उपयोग कर रहा हूं। ब्राउनियन भ्रमण बनाने के लिए मैं इस ब्राउनियन ब्रिज प्रक्रिया का उपयोग कैसे कर सकता हूं?


4
क्या यह एक भूरे रंग के पुल के निरपेक्ष मूल्य का अनुकरण करने के लिए पर्याप्त नहीं है?
एलेक्स आर।

1
@AlexR। नहीं [गद्दी]
P.Windridge

1
हालांकि, यह रीमेकिंग के लायक है, हालांकि एक ब्राउनियन मोशन जो पॉजिटिव होने के लिए है, उसे महसूस किया जा सकता है कि इसके आसपास के बीएम को दर्शाते हुए अधिकतम चल रहा है, जो कि पिटमैन के कारण है। सकारात्मक रहने के लिए वातानुकूलित बीएम को महसूस करने का एक और तरीका एक 3 डी बीएम के पूर्ण मूल्य से है ।
P.Windridge

1
@AlexR। - मैंने अपना उत्तर नीचे दिया है यह दिखाने के लिए कि सरल यादृच्छिक चाल के लिए भी, सकारात्मक कंडीशनिंग परिणाम अलग-अलग व्यवहार को केवल पूर्ण मूल्य लेने के लिए प्रेरित करता है। ब्राउनियन पुलों के लिए विशेष रूप से, सहज छोटे के लिए , के व्यवहार बी बी टी की तरह है | डब्ल्यू टी (क्योंकि बी बी टी = डब्ल्यू टी - टी डब्ल्यू 1 ) और बीएम संतुष्ट आवर्ती लघुगणक के कानून (ताकि " हे पी ( टी ) " छोटे पर्याप्त के लिए अप्रासंगिक है टी इस प्रकार,। | बी बी टीtBBt|WtBBt=WttW1Op(t)tछोटे टी के लिए एक परिलक्षित बीएम की तरह है। यहसकारात्मक रहने केलिए W t वातानुकूलित करने केलिए काफी अलग व्यवहार है...|BBt|tWt
P.Windridge

जवाबों:


7

वर्वेट द्वारा निम्नलिखित निर्माण का उपयोग करके एक पुल से एक ब्राउनियन भ्रमण का निर्माण किया जा सकता है: https://projecteuclid.org/download/pdf_1/euclid.aop/1176995155

R में एक त्वरित सन्निकटन, @ व्हिबर बी बी कोड का उपयोग कर रहा है

n <- 1001
times <- seq(0, 1, length.out=n)

set.seed(17)
dW <- rnorm(n)/sqrt(n)
W <- cumsum(dW)

# plot(times,W,type="l") # original BM

B <- W - times * W[n]   # The Brownian bridge from (0,0) to (1,target)

# plot(times,B,type="l")

# Vervaat construction
Bmin <- min(B)
tmin <- which(B == Bmin)
newtimes <- (times[tmin] + times) %% 1
J<-floor(newtimes * n)
BE <- B[J] - Bmin
plot(1:length(BE)/n,BE,type="l")

यहाँ छवि विवरण दर्ज करें

यहाँ एक और प्लॉट है (सेट.सेड (21) से)। एक भ्रमण के साथ एक महत्वपूर्ण अवलोकन यह है कि कंडीशनिंग वास्तव में 0 से "प्रतिकर्षण" के रूप में प्रकट होती है, और आप ( 0 , 1 ) के इंटीरियर पर एक भ्रमण को करीब आने की संभावना नहीं है । 0(0,1)यहाँ छवि विवरण दर्ज करें


एक तरफ: एक ब्राउनियन पुल का निरपेक्ष मान का वितरण और भ्रमण, ( बी बी टी ) 0 टी 1 वातानुकूलित सकारात्मक , ही नहीं हैं। सहज रूप से, भ्रमण को उत्पत्ति से हटा दिया जाता है, क्योंकि ब्राउनियन मार्ग मूल के बहुत करीब आने के बाद जल्द ही नकारात्मक होने की संभावना होती है और इस तरह कंडीशनिंग द्वारा दंडित किया जाता है।(|BBt|)0t1(BBt)0t1

यह चरणों में एक सरल यादृच्छिक चलना पुल और भ्रमण के साथ भी चित्रित किया जा सकता है , जो कि बीएम का एक प्राकृतिक असतत एनालॉग है (और बीएम बड़े और आप पुनर्विक्रय हो जाते हैं) के रूप में परिवर्तित होते हैं।6

वास्तव में, से शुरू एक सममित SRW लें । सबसे पहले, हम "पुल" कंडीशनिंग पर विचार करें और देखें कि क्या होता है अगर हम सिर्फ पूर्ण मूल्य लेते हैं। सभी सरल रास्तों पर विचार करें रों लंबाई की 6 कि शुरू करने और कम से अंत 0 । ऐसे रास्तों की संख्या है ( 6)0s60। कर रहे हैंइनमें से जिसके लिए। दूसरे शब्दों में,हमारे SRW "ब्रिज" (पर समाप्त होने की स्थिति)केनिरपेक्ष मानकेलिए चरणपर मान 0 होनेकी।(63)=20| s2| =00212/20=0.62×(42)=12|s2|=00212/20=0.6

दूसरे, हम "भ्रमण" कंडीशनिंग पर विचार करेंगे। गैर नकारात्मक सरल रास्तों की संख्या लंबाई की कि कम से अंत कैटलन संख्या है । वास्तव में इन रास्तों में से है । इस प्रकार, हमारे SRW "भ्रमण" (कम से मनाने सकारात्मक और अंत करने के लिए वातानुकूलित के लिए संभावना ) कदम पर मान 0 के लिए है ।6 = 2 * 3 0 सी एम = 3 = ( 2 मीटरs6=2302रों2=0022/5=0.4<0.6Cm=3=(2mm)/(m+1)=52s2=0022/5=0.4<0.6

यदि आप अभी भी संदेह करते हैं तो यह घटना उस सीमा में बनी रहती है जिस पर आप SRW पुलों के लिए प्रायिकता पर विचार कर सकते हैं और चरण पर लंबाई हिटिंग 0 ।2 एन4n2n

SRW भ्रमण के लिए: हमारे पास विकिपीडिया से aysmptotics का उपयोग करके https://en.wiking.org/wiki / कैटलन_नंबर । यानी यह अंत में जैसा है ।n - 3 / 2

P(S2n=0|Sj0,j4n,S4n=0)=Cn2/C2n(42n/πn3)/(42n/(2n)3π)
cn3/2

Abs (SRW ब्रिज) के लिए: wikipedia से asymptotics का उपयोग कर https://en.wikipedia.org/wiki/Biomomial_coefficient । यह जैसा है ।n - 1 / 2

P(|S2n|=0|S4n=0)=(2nn)2/(4n2n)(4n/πn)2/(42n/2nπ)
cn1/2

दूसरे शब्दों में, एसआरडब्ल्यू पुल को बीच में पर सकारात्मक रूप से वातानुकूलित देखने की अस्वाभाविक संभावना पुल के निरपेक्ष मूल्य की तुलना में बहुत कम है। 0


यहां ब्राउनियन ब्रिज के बजाय 3 डी बेसेल प्रक्रिया पर आधारित एक वैकल्पिक निर्माण है। मैं https://projecteuclid.org/download/pdf_1/euclid.ejp/1457255524 में बताए गए तथ्यों का उपयोग करता हूं

अवलोकन- 1) एक 3 डी बेसेल प्रक्रिया का अनुकरण करें। यह सकारात्मक होने के लिए वातानुकूलित बीएम की तरह है। 2) बेसेल 3 ब्रिज (पेपर में समीकरण (2)) प्राप्त करने के लिए एक उपयुक्त समय-स्थान को लागू करें। 3) इस तथ्य का उपयोग करें (कागज में सिर्फ प्रमेय 1 के बाद उल्लेख किया गया है) कि एक बेसेल 3 पुल वास्तव में एक ब्राउनियन भ्रमण के समान वितरण है।

एक छोटी सी खामी यह है कि आपको अंत में किक करने के लिए स्थान / समय स्केलिंग के लिए अपेक्षाकृत ठीक ग्रिड पर बेसेल प्रक्रिया को थोड़ी देर (T = 100 नीचे) चलाने की आवश्यकता है।

## Another construction of Brownian excursion via Bessel processes
set.seed(27092017)
## The Bessel process must run for a long time in order to construct a bridge
T <- 100
n <- 100001
d<-3 # dimension for Bessel process
dW <- matrix(ncol = n, nrow = d, data=rnorm(d*n)/sqrt(n/T))
dW[,1] <- 0
W <- apply(dW, 1, cumsum)
BessD <- apply(W,1,function(x) {sqrt(sum(x^2))})

times <- seq(0, T, length.out=n)
# plot(times,BessD, type="l") # Bessel D process


times01 <- times[times < 1]
rescaletimes <- pmin(times01/(1-times01),T)
# plot(times01,rescaletimes,type="l") # compare rescaled times

# create new time index
rescaletimeindex <- sapply(rescaletimes,function(x){max(which(times<=x))} )

BE <- (1 - times01) * BessD[rescaletimeindex]
plot(times01,BE, type="l")

यहाँ उत्पादन है: यहाँ छवि विवरण दर्ज करें


5

परावर्तन सिद्धांत का दावा

f(t)f(s)=at=ssa

विकिपीडिया , 9/26/2017 को पहुँचा।

a=0(0,0)(T,B(T))BT=1tB(T)tB(t)

T>0000

[चित्रा

यह ब्राउनियन गति शून्य के मूल्य के साथ शुरू और समाप्त होती है: यह एक ब्राउनियन ब्रिज है।

चित्र 2

लाल ग्राफ एक ब्राउनियन भ्रमण है जो पूर्ववर्ती ब्राउनियन ब्रिज से विकसित हुआ है: इसके सभी मूल्य अप्रकाशित हैं। ब्लू ग्राफ को उसी तरह से विकसित किया गया है जब तक कि हर बार उनका सामना करते हुए बिंदीदार रेखाओं के बीच ब्राउनियन पुल को दर्शाया जाता है। ग्रे ग्राफ मूल ब्राउनियन पुल को प्रदर्शित करता है।

गणना सरल और तेज हैं: समय के सेट को छोटे अंतराल में विभाजित करें, प्रत्येक अंतराल के लिए स्वतंत्र रूप से वितरित सामान्य वेतन वृद्धि उत्पन्न करें, उन्हें जमा करें, प्रवृत्ति को घटाएं, और आवश्यक किसी भी प्रतिबिंब को निष्पादित करें।

यहाँ Rकोड है। इसमें, Wमूल ब्राउनियन गति है, Bब्राउनियन पुल है, और B2दो निर्दिष्ट मूल्यों ymin(गैर-सकारात्मक) और ymax(गैर-नकारात्मक) के बीच विवश भ्रमण है । मापांक %%ऑपरेटर और घटकवार न्यूनतम का उपयोग करते हुए प्रतिबिंब प्रदर्शन की इसकी तकनीक pminव्यावहारिक रुचि हो सकती है।

#
# Brownian bridge in n steps from t=0 to t=1.
#
n <- 1001
times <- seq(0, 1, length.out=n)
target <- 0                        # Constraint at time=1
set.seed(17)
dW <- rnorm(n)
W <- cumsum(dW)
B <- W + times * (target - W[n])   # The Brownian bridge from (0,0) to (1,target)
#
# The constrained excursion.
#
ymax <- max(abs(B))/5              # A nice limit for illustration
ymin <- -ymax * 2                  # Another nice limit
yrange2 <- 2*(ymax - ymin)
B2 <- (B - ymin) %% yrange2
B2 <- pmin(B2, yrange2-B2) + ymin

0

abs(B)target1

1
(abs(BBt))0t1(BBt)0t1

4
डिस्ट्रीब्यूशन अलग हैं, इसलिए मैं वोट माफ करता हूं।
P.Windridge

2

आप एक अस्वीकृति विधि का उपयोग कर सकते हैं: ब्राउनियन पुलों का अनुकरण करें और सकारात्मक रखें। यह काम करता हैं।

परंतु। यह बहुत धीमी गति से है, क्योंकि बहुत सारे नमूना प्रक्षेपवक्र खारिज कर दिए गए हैं। और जितना बड़ा "फ़्रीक्वेंसी" आप सेट करते हैं, उतनी ही कम संभावना होती है कि आप प्रक्षेपवक्र को पा सकें।

succeeded <- FALSE
while(!succeeded)
{
  bridge <- rbridge(end = 1, frequency = 500)
  succeeded=all(bridge>=0)
}
plot(bridge)

आप नकारात्मक प्रक्षेपवक्रों को भी ध्यान में रखते हुए इसे गति दे सकते हैं।

while(!succeeded)
{
  bridge <- rbridge(end = 1, frequency = 500)
  succeeded=all(bridge>=0)||all(bridge<=0)
}
bridge = abs(bridge)
plot(bridge)

यहाँ छवि विवरण दर्ज करें


2
t=0

वास्तव में, एक छोटा सा डिस्क्लेमर था;) "और जितना बड़ा" फ़्रीक्वेंसी "आप सेट करते हैं, उतनी ही कम संभावना होती है कि आप ट्रैन्ज़ैरीज़ खोज सकें।" ... मैं अपने उत्तर से केवल आधा संतुष्ट हूँ, लेकिन यह एकमात्र ऐसी चीज़ है जिसे मैं सोच सकता था। अगर मुझे ब्राउनियन पुल के साथ शुरुआत करनी थी। बेहतर जवाब के लिए (और इंतजार)!
RUser4512
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.