Matematiğin bir alt dalı olan Euler-Maruyama yöntemi stokastik diferansiyel denklemlere yaklaşık sayısal çözümler üretmek için geliştirilmiş yöntemlerden biridir. Adi diferansiyel denklemler için geliştirilmiş olan Euler yönteminin stokastik diferansiyel denklemlere uyarlanmasıyla oluşmuştur. Yöntem adını, Leonhard Euler ve Gishiro Maruyama'dan almaktadır.
Yöntemin açıklaması
Wt, olsun. Başlangıç koşulu X0 = x0 olan ve
hâlindeki stokastik bir diferansiyel denklemi [0, T] aralığında sayısal olarak çözmek istediğimizi varsayalım. Stokasitk diferansiyel denklemin teorik çözümü ile gösterilsin. 'in Euler-Maruyama yaklaşıklığı aşağıdaki gibi kurulup tanımlanan ve bir Markov zinciri olan dir.
- [0, T] aralığını N tane eşit altaralığa bölelim. Her altaralığın uzunluğu ile gösterilsin. O zaman,
- olacaktır.
- Y0 = x0 tanımlansın.
- 0 ≤ n ≤ N-1 için olmak üzere, Yn terimleri yinelemeli olarak
- olarak tanımlansın. Bahsi geçen ΔWn rasgele değişkenleri bağımsız ve özdeş dağılmış normal rastgele değişkenlerdir. Her birinin beklenen değeri sıfırdır ve her biri Δt varyansına sahiptir.
Yakınsaklık
Stokastik diferansiyel denklemlerin yaklaşık çözümlerine bakılırken doğruluğu ölçmenin iki yaygın yöntemi vardır. Bunlar zayıf yakınsaklık ve güçlü yakınsaklık kavramlarıdır. Zayıf yakınsaklıkta ortalamaların hatasına bakılırken, güçlü yakınsaklıkta ise hataların ortalamalarına bakılır.
Euler-Maruyama yaklaşıklık yönteminde, eğer ve fonksiyonları Lipschitz ise, yani, L bir sabit olmak üzere her ve tüm için
sağlanıyorsa, o zaman
- zayıf yakınsaklık mertebesi olur:
- güçlü yakınsaklık mertebesi ise olur:
Örnekler
Simülasyon örneği
Kısmi diferansiyel denklemlerden önemli ölçüde faydalanan alanlardan biri matematiksel biyolojidir. Birçok biyolojik süreç hem stokastik hem de doğası gereği sürekli olduğundan, kısmi diferansiyel denklemleri çözmenin sayısal yöntemleri bu alanda oldukça değerlidir.
Grafik, Euler-Maruyama yöntemi kullanılarak çözülen stokastik bir diferansiyel denklemi göstermektedir. Deterministik karşılığı mavi renk ile, sayısal yaklaşım ise yeşil renk ile gösterilmiştir.
Programlama uygulaması
biçiminde verilmiş olan bir sayısal olarak çözmek için Euler-Maruyama yöntemi kullanılabilir.
Rastgele sayıların NumPy tarafından verildiği bir Python programlama kodu aşağıdaki gibi verilebilir:
import numpy as np import matplotlib.pyplot as plt from textwrap import wrap class Model: """Stokastik modelin sabitleri.""" THETA = 0.5 MU = 1.5 SIGMA = 0.1 def mu(y: float, _t: float) -> float: """Ornstein–Uhlenbeck sürecinin sürüklenme sabiti""" return Model.THETA * (Model.MU - y) def sigma(_y: float, _t: float) -> float: """Ornstein–Uhlenbeck sürecinin difüzyon sabiti""" return Model.SIGMA def dW(delta_t: float) -> float: """Normal rastgele değişken çekilişi""" return np.random.normal(loc=0.0, scale=np.sqrt(delta_t)) def simulasyon(t_i:int, t_s:int, adim_sayisi:int): """bir simülasyon yolağı""" T_ILK = t_i T_SON = t_s N = adim_sayisi DT = float(T_SON - T_ILK) / N Tler = np.arange(T_ILK, T_SON + DT, DT) assert Tler.size == N + 1 Y_ILK = 0 yler = np.zeros(Tler.size) yler[0] = Y_ILK for i in range(1, Tler.size): t = T_ILK + (i - 1) * DT y = yler[i - 1] yler[i] = y + mu(y, t) * DT + sigma(y, t) * dW(DT) return Tler, yler #Birkaç simülasyonun aynı grafikte çizimi sim_sayisi=5 # [2, 20] aralığında 5000 zaman adımında hesaplıyoruz t_i=2# t_s=20 adim_sayisi=5000 for _ in range(sim_sayisi): plt.plot(*simulasyon(t_i, t_s, adim_sayisi)) plt.xlabel("zaman (s)") plt.ylabel("y") plt.title("\n".join(wrap( r"$\theta=$ {}, $\mu=$ {} ve $\sigma=$ {} parametreleri verilen bir Ornstein–Uhlenbeck sürecine [{},{}] aralığında {} zaman adımlı Euler-Maruyama yöntemiyle yapılan yaklaşıklamalarının {} yolaklı simülasyonu".format(Model.THETA, Model.MU, Model.SIGMA, t_i, t_s, adim_sayisi, SIM_SAYISI))), fontsize='small') plt.savefig('EulerMaruyama.png', format="png") plt.show()
Ayrıca bakınız
Kaynakça
wikipedia, wiki, viki, vikipedia, oku, kitap, kütüphane, kütübhane, ara, ara bul, bul, herşey, ne arasanız burada,hikayeler, makale, kitaplar, öğren, wiki, bilgi, tarih, yukle, izle, telefon için, turk, türk, türkçe, turkce, nasıl yapılır, ne demek, nasıl, yapmak, yapılır, indir, ücretsiz, ücretsiz indir, bedava, bedava indir, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, resim, müzik, şarkı, film, film, oyun, oyunlar, mobil, cep telefonu, telefon, android, ios, apple, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, pc, web, computer, bilgisayar
Matematigin bir alt dali olan Euler Maruyama yontemi stokastik diferansiyel denklemlere yaklasik sayisal cozumler uretmek icin gelistirilmis yontemlerden biridir Adi diferansiyel denklemler icin gelistirilmis olan Euler yonteminin stokastik diferansiyel denklemlere uyarlanmasiyla olusmustur Yontem adini Leonhard Euler ve Gishiro Maruyama dan almaktadir Yontemin aciklamasiWt olsun Baslangic kosulu X0 x0 olan ve dXt a Xt t dt b Xt t dWt displaystyle mathrm d X t a X t t mathrm d t b X t t mathrm d W t halindeki stokastik bir diferansiyel denklemi 0 T araliginda sayisal olarak cozmek istedigimizi varsayalim Stokasitk diferansiyel denklemin teorik cozumu X displaystyle X ile gosterilsin X displaystyle X in Euler Maruyama yaklasikligi asagidaki gibi kurulup tanimlanan ve bir Markov zinciri olan Y displaystyle Y dir 0 T araligini N tane esit altaraliga bolelim Her altaraligin uzunlugu Dt gt 0 displaystyle Delta t gt 0 ile gosterilsin O zaman 0 t0 lt t1 lt lt tN T ve Dt T N displaystyle 0 tau 0 lt tau 1 lt cdots lt tau N T text ve Delta t T N dd olacaktir Y0 x0 tanimlansin 0 n N 1 icin DWn Wtn 1 Wtn displaystyle Delta W n W tau n 1 W tau n olmak uzere Yn terimleri yinelemeli olarakYn 1 Yn a Yn tn Dt b Yn tn DWn displaystyle Y n 1 Y n a Y n tau n Delta t b Y n tau n Delta W n dd olarak tanimlansin Bahsi gecen DWn rasgele degiskenleri bagimsiz ve ozdes dagilmis normal rastgele degiskenlerdir Her birinin beklenen degeri sifirdir ve her biri Dt varyansina sahiptir YakinsaklikStokastik diferansiyel denklemlerin yaklasik cozumlerine bakilirken dogrulugu olcmenin iki yaygin yontemi vardir Bunlar zayif yakinsaklik ve guclu yakinsaklik kavramlaridir Zayif yakinsaklikta ortalamalarin hatasina bakilirken guclu yakinsaklikta ise hatalarin ortalamalarina bakilir Euler Maruyama yaklasiklik yonteminde eger a Xt t displaystyle a X t t ve b Xt t displaystyle b X t t fonksiyonlari Lipschitz ise yani L bir sabit olmak uzere her t 0 T displaystyle t in 0 T ve tum x y Rn displaystyle x y in mathbb R n icin a x t a y t lt L x y ve b x t b y t lt L x y displaystyle a x t a y t lt L x y quad text ve quad b x t b y t lt L x y saglaniyorsa o zaman zayif yakinsaklik mertebesi 1 displaystyle 1 olur sup0 tn T E Xtn E Ytn O Dt displaystyle sup 0 leq tau n leq T left mathbb E X tau n mathbb E Y tau n right O Delta t dd guclu yakinsaklik mertebesi ise 12 displaystyle frac 1 2 olur E sup0 tn T Xtn Ytn O Dt12 displaystyle mathbb E left sup 0 leq tau n leq T left X tau n Y tau n right right O Delta t frac 1 2 dd OrneklerSimulasyon ornegi Stokastik surec olarak modellenmis bir gen ifadesi Kismi diferansiyel denklemlerden onemli olcude faydalanan alanlardan biri matematiksel biyolojidir Bircok biyolojik surec hem stokastik hem de dogasi geregi surekli oldugundan kismi diferansiyel denklemleri cozmenin sayisal yontemleri bu alanda oldukca degerlidir Grafik Euler Maruyama yontemi kullanilarak cozulen stokastik bir diferansiyel denklemi gostermektedir Deterministik karsiligi mavi renk ile sayisal yaklasim ise yesil renk ile gosterilmistir Programlama uygulamasi dYt 8 m Yt dt sdWt displaystyle dY t theta cdot mu Y t mathrm d t sigma mathrm d W t Y0 Yilk displaystyle Y 0 Y mathrm ilk biciminde verilmis olan bir sayisal olarak cozmek icin Euler Maruyama yontemi kullanilabilir Rastgele sayilarin NumPy tarafindan verildigi bir Python programlama kodu asagidaki gibi verilebilir import numpy as np import matplotlib pyplot as plt from textwrap import wrap class Model Stokastik modelin sabitleri THETA 0 5 MU 1 5 SIGMA 0 1 def mu y float t float gt float Ornstein Uhlenbeck surecinin suruklenme sabiti return Model THETA Model MU y def sigma y float t float gt float Ornstein Uhlenbeck surecinin difuzyon sabiti return Model SIGMA def dW delta t float gt float Normal rastgele degisken cekilisi return np random normal loc 0 0 scale np sqrt delta t def simulasyon t i int t s int adim sayisi int bir simulasyon yolagi T ILK t i T SON t s N adim sayisi DT float T SON T ILK N Tler np arange T ILK T SON DT DT assert Tler size N 1 Y ILK 0 yler np zeros Tler size yler 0 Y ILK for i in range 1 Tler size t T ILK i 1 DT y yler i 1 yler i y mu y t DT sigma y t dW DT return Tler yler Birkac simulasyonun ayni grafikte cizimi sim sayisi 5 2 20 araliginda 5000 zaman adiminda hesapliyoruz t i 2 t s 20 adim sayisi 5000 for in range sim sayisi plt plot simulasyon t i t s adim sayisi plt xlabel zaman s plt ylabel y plt title n join wrap r theta mu ve sigma parametreleri verilen bir Ornstein Uhlenbeck surecine araliginda zaman adimli Euler Maruyama yontemiyle yapilan yaklasiklamalarinin yolakli simulasyonu format Model THETA Model MU Model SIGMA t i t s adim sayisi SIM SAYISI fontsize small plt savefig EulerMaruyama png format png plt show Ayrica bakinizMilstein yontemiKaynakca Kloeden P E Platen E 1999 Numerical Solution of Stochastic Differential Equations Springer Berlin Milstein G N Tretyakov M V 2004 Stochastic Numerics for Mathematical Physics Springer Berlin