Sürüklenme ile rasgele yürüyüşün maksimum düşüşünün kümülatif dağılımının hesaplanması


9

Rastgele bir yürüyüşün maksimum dağılımıyla ilgileniyorum: burada . periyottan sonraki maksimum düşüş . Tarafından bir kağıt Magdon-İsmail et. ark. bir Brownian hareketinin sürüklenmeyle maksimum çekilmesi için dağılım sağlar. İfade, sadece örtülü olarak tanımlanan bazı terimleri içeren sonsuz bir toplamı içerir. Yakınlaşan bir uygulama yazmakta sorunlar yaşıyorum. CDF'nin alternatif bir ifadesinin veya koddaki bir referans uygulamasının farkında olan var mı?X0=0,Xi+1=Xi+Yi+1YiN(μ,1)nmax0ijn(XiXj)


Ne kadar doğru ihtiyacınız var? Yürüyüşü simüle edebilir ve tamamen işlevsel çözümlerden kaçınabilir misiniz?
kyle

iyi bir nokta. Atom fiziği düzeyinde doğruluk ihtiyacım yok. aslında, 3 sigfigs muhtemelen iyi ....
shabbychef

Bu yaklaşık bir milyon simüle rastgele yürüyüş gerektirir ...
whuber

Yanıtlar:


4

Bu alternatif bir meblağdır. Her ardışık çift neredeyse iptal eder; bu tür çift toplamlar sonunda monoton olarak azalır.

Bu durumda bir yaklaşım, toplamı = {1,2}, {3,4}, {5,6}, vb. Olduğu çiftler halinde hesaplamaktır (Bunu yapmak, çok fazla kayan nokta hatasını da ortadan kaldırır.) Bazıları daha fazla hile yardımcı olabilir:n

(1) çözmek için pozitif sabiti , iyi bir başlangıç değeri arama - ve mükemmel bir yaklaşım büyük root-- olan . Newton-Raphson'un gerçekten iyi çalışması gerektiğinden şüpheleniyorum.tan(t)=t/ααntht=(n+1/2)πα(n+1/2)π

(2) Az sayıda başlangıç ​​teriminden sonra, çiftlerin toplamı çok, çok tutarlı bir şekilde küçülmeye başlar. Üstel aralıklı çiftlerin mutlak değerlerinin logaritmaları hemen hemen doğrusal olarak azalır. Bu, hesaplamadığınız tüm çift toplamlarını tahmin etmek için çok az sayıda hesaplanmış çift toplamı arasında enterpolasyon yapabileceğiniz anlamına gelir. Örneğin, sadece (2,3), (4,5), (8,9), (16,17), ..., (16384, 16385) çiftlerinin değerlerini hesaplayarak ve bunlar için enterpolasyon polinomunu oluşturarak (1, 2, ..., 14'teki bir işlevin değerleri olarak düşünülür) ve bağımsız değişkenlerini kullanarakh=μ=σ=1, En kötü durum hataları için altı rakamlı bir hassasiyet elde edebildim. (Daha da güzel, hatalar işaretlenirken, toplanan enterpolasyonlu değerlerde hassasiyetin altı rakamdan biraz daha iyi olabileceğini düşündürür.) Muhtemelen bu değerlerin ucundan doğrusal olarak tahmin ederek (bu da) bir güç yasasına çevirir) ve ekstrapolasyon işlevini sonsuza entegre eder. Bu örnek hesaplamayı tamamlamak için ilk terime de ihtiyacınız vardır. Bu, toplamda yalnızca 29 hesaplanmış terim aracılığıyla altı haneli bir doğruluk sağlar.

(3) İşlevin , bu değişkenlerin üçüne de bağımsız olarak gerçekten ve bağlı olduğunu unutmayın . bağımlılık zayıftır (olması gerektiği gibi); tüm hesaplamalarınızda değerini düzeltmek için memnun olabilirsiniz.h/σμ/σT

Tüm bunların ötesinde , Aitken'in yöntemi gibi bazı seri hızlandırma yöntemleri kullanmayı düşünün . Bunun iyi bir hesaplaması Sayısal Tarifler'de görünür .

Katma

(5) Toplamın kuyruğunu bir integralle tahmin edebilirsiniz. Yazma sırasında denklem ile ( çözülebilir) için küçük, ve daha sonra, bir, geri tarafından ikame edilir. Taylor serisindeki genişletmek yaklaşık çözümü verirθn=(n+1/2)π1/tntan(θn)=θn/αα=μh/σ2tnθntn

θn=zαzα2α3/3z3+O((αn)5)

burada .z=(n+1/2)π

yeterince büyük olması koşuluyla , formunun üstel faktörleri 1'e çok yakın olur, böylece onları ihmal edebilirsiniz. Tipik bu terimler bile küçük ihmal edilebilir çünkü olduğu son derece hızlı bir şekilde sıfıra ilk üstel gitmek yapım. (Bu, önemli ölçüde değerini aştığında olur . Mümkünse büyük için hesaplamalarınızı yapın !)n1exp(σ2θn2T2h2)exp(μ2T2σ2)nθn2Θ(n2)nα/T1/2T

Bu ifadeyi için ve terimlerini toplamak üzere kullanmak , onları (tüm duman temizlendikten sonra)θnnn+1

2πn24πn3+13π2+6(43α)α2π3n4+O(1n5).

Başlayan toplamı değiştirilmesi üzerinden bir entegrali ile başlayarak kuyruk yaklaşır. (İntegral, ortak bir faktörü ile çarpılmalıdır .) İntegraldeki hata . Bu nedenle, üç önemli rakam elde etmek için, genellikle toplamdaki yaklaşık sekiz terimi hesaplamanız ve ardından bu kuyruk yaklaşımını eklemeniz gerekir.n=2NNN1/4exp(α)O(1/n4)


1
bu gerçekten harika ve CDF'ye doğru uzun bir yol kat etmeliyiz. Üstü ve Ötesi rozeti malzemesi.
shabbychef

2

FBasics'teki açılır dağıtım işlevlerine bakarak başlayabilirsiniz . Böylece browni hareketini sürüklenme ile kolayca simüle edebilir ve bu işlevleri bir başlangıç ​​olarak uygulayabilirsiniz.


+1 Bu işlevlerin, formülleri kağıda uyguladığı düşünüldüğünde, oldukça doğrudan bir cevaptır!
whuber

Bu paket , kağıda göre beklenen maksimum düşüşü hesaplıyor gibi görünüyor , ancak CDF'yi hesaplamıyor. Makale, bu beklentiyi hesaplamak için IIRC 'kısayol' sonuçları vermektedir.
shabbychef

@ shabbychef Üzgünüm, bu güzelliği özledim. CDF'nin tamamını elde etmenin beklentiyi bilmekten daha yararlı olabileceğini görüyorum. (Finansal risk sadece beklenen kayıplardan çok daha fazlasıdır ...) Ama şimdi CDF'ye yaklaşmak için yaptığım işler hakkında biraz daha iyi hissediyorum!
whuber
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.