Doğrusal Olmayan Sistemlere Doğru 1 / 27 Doğrusal Olmayan Sistemlere Doğru Uzay Çetin Boğaziçi - Işık Üniversitesi Python ve R ile Bilimsel Hesaplama Kursu Mustafa Gökçe Baydoğan, Uzay Çetin, Berk Orbay 2 Şubat 2015
Doğrusal Olmayan Sistemlere Doğru 2 / 27 İçerik Karmaşık Sistemler Karmaşıklığın Ardındaki Sadelik Doğrusal Sistemler Bakteri Çoğalma Problemi Faiz Artış Problemi Doğrusal Olmayan Sistemler Kaos Kaynaklar Karınca Kolonisi
Doğrusal Olmayan Sistemlere Doğru 3 / 27 R programlama ile ilgili içerik Bu sunumda Karmaşık Sistemler ile ilgili giriş seviyesinde bilgiler edinirken, R programlama ile ilgili olarak aşağıdaki konuları tekrar etmiş olacağız. R programlama Vektör işlemleri Döngüler Grafik çizme Fonksiyonlar script yazma
Doğrusal Olmayan Sistemlere Doğru 4 / 27 Karmaşık Sistemler Karmaşık Sistemler Merkezi bir otorite olmadan, nispeten basit kuralları takip eden birbiriyle bağlantılı çok sayıdaki bireyin (alt sistem), yoğun etkileşim ve geribildirimler altında, oluşturduğu sistemlerdir. Sistem, kendisini oluşturan parçalardan beklenmeyen, tahmin edilmesi zor, yepyeni özellikler ortaya çıkarabilir.
Doğrusal Olmayan Sistemlere Doğru 5 / 27 Karmaşık Sistemler Karmaşık Sistemler Doğrusal sistemler Bütün, parçaların toplamıdır. Parçalara bakıldığında, bütün görülebilir. Doğrusal olmayan sistemler Bütün, parçaların toplamından farklıdır. Bütün = parçalar + parçalar arası etkileşim Sadece parçalara bakmak, bütünü anlamaya yetmez.
Doğrusal Olmayan Sistemlere Doğru 6 / 27 Karmaşık Sistemler Karmaşık Sistemler Karmaşık sistemler, kendi kendini örgütleyebilen ve değişen şartlara uyum gösterebilen organik sistemlerdir. Merkezi bir planlayıcısı olmadan kendiliğinden oluşabilen sistemler Ekonomi Web Hayvan sürüleri Moleküller Organlar Beyin Bağışıklık Sistemi Sosyal Olaylar
Doğrusal Olmayan Sistemlere Doğru 7 / 27 Karmaşık Sistemler Karmaşık Sistemler Karmaşık Sistemler disiplini, ekonomiden biyolojiye, sosyolojiden politikaya, kimyadan fiziğe, matematikten bilgisayar mühendisliğine kadar her disipline bütüncül bakış açısıyla yaklaşır. Bütünsel Bakış Bütün, parçalardan beklenmeyen yeni özellikler gösterebilir. Bütünün vizyonu ile parçaların vizyonu birbirinden farklı olabilir.
Doğrusal Olmayan Sistemlere Doğru 8 / 27 Karmaşık Sistemler Schelling Ayrışma Modeli Her birey, çevresinde bir miktar kendisine benzeyen komşusu olsun istemektedir. Sistem ırkçılık/ ayrışma ile sonuçlanır.
Doğrusal Olmayan Sistemlere Doğru 9 / 27 Karmaşık Sistemler Schelling Ayrışma Modeli Karmaşık Ağ İki boyutlu ızgara tipi bir ağ Etkileşim Kuralı Çevresinde yeterince kendisine benzeyen komşusu olmayan birey rastgele boş olan başka bir yere geçer. Bütün parça ilişkisi Bireyler ırkçı olmamasına rağmen, sistem ırklar arası ayrışma ile sonuçlanır.
Doğrusal Olmayan Sistemlere Doğru 10 / 27 Karmaşık Sistemler Yeni Bir Tür Bilimsel Metodoloji wikipedia Bütün modeller yanlıştır, sadece bazıları işe yarar George Box Ajan-temelli Modelleme ile Simülasyon Model, dünyanın basitleştirilmiş bir tasviridir. Model matematiksel bir denklem ya da bir bilgisayar simülasyonu olabilir.
Doğrusal Olmayan Sistemlere Doğru 11 / 27 Doğrusal Sistemler Biyolojide Nüfus Artışı Biyolojide nüfus artışını ilgilendiren basit bir model düşünelim. Buna göre her bir zaman diliminde, bakteri sayısının iki katına ulaştığını varsayalım. Başlangıçta bakteri sayısı 1 olsun, Bu durumda bakteri nüfusu 1 2 4 8... şeklinde artış gösterecektir. Bu doğrusal bir sistemdir. Peki doğrusallık nerede?
Doğrusal Olmayan Sistemlere Doğru 12 / 27 Doğrusal Sistemler Bakteri Çoğalma Problemi Bakteri Çoğalma Problemi 1 #################################################### 2 # D o g r u s a l s i s t e m 3 #################################################### 4 t < 1 5 N < v e c t o r ( ) # Nufus vektoru 6 N [ 1 ] < 1 # Baslangic durumunda n u f u s 7 8 N[ t +1] < 2 N[ t ] # Bir sonraki nufus 9 t < t + 1 # zaman a r t i s i 10 N[ t +1] < 2 N[ t ] # Bir sonraki nufus 11 t < t + 1 # zaman a r t i s i 12 N[ t +1] < 2 N[ t ] # Bir sonraki nufus 13 t < t + 1 # zaman a r t i s i 14 N[ t +1] < 2 N[ t ] # Bir sonraki nufus 15 t < t + 1 # zaman a r t i s i 16 N[ t +1] < 2 N[ t ] # Bir sonraki nufus 17 t < t + 1 # zaman a r t i s i 18 N[ t +1] < 2 N[ t ] # Bir sonraki nufus 19 t < t + 1 # zaman a r t i s i 20 21 22 plot ( 1 : t,n, type= b, xlab= Zaman, ylab= Nufus, main= B a k t e r i Cogalma g r a f i g i ) Peki doğrusallık nerede? Kod 1: dogrusal1.r
Doğrusal Olmayan Sistemlere Doğru 13 / 27 Doğrusal Sistemler Bakteri Çoğalma Problemi Bakteri Çoğalma Problemi 1 #################################################### 2 # D o g r u s a l s i s t e m 3 #################################################### 4 N < v e c t o r ( ) # Nufus vektoru 5 N [ 1 ] < 1 # Baslangic durumunda n u f u s 6 7 f o r ( t i n 1 : 1 0 ) { 8 N[ t +1] < 2 N[ t ] 9 } 10 zaman < l e n g t h (N) # Son zaman d i l i m i 11 12 # Nufus zaman e g r i s i 13 plot ( 1 : zaman,n, type= b, xlab= Zaman, ylab= Nufus, main= B a k t e r i Cogalma g r a f i g i ) 14 15 # S o n r a k i Nufus, su a n k i n u f u s i l i s k i s i 16 S < c (N [ 2 : zaman ], 2 N[ zaman ] ) 17 plot (N, S, type= b, xlab= Su Anki Nufus, ylab= Bir S o n r a k i Nufus, main= Nufus Degisim Dogrusu ) üstsel artış ve doğrusallık Kod 2: dogrusal.r
Doğrusal Olmayan Sistemlere Doğru 14 / 27 Doğrusal Sistemler Bakteri Çoğalma Problemi Nüfustaki değişim, şu anki nüfus kadar. Nüfus zaman eğrisi ile gösterilen, bakteri çoğalma eğrisine bakacak olursak, bakteri nüfusu zaman göre üstsel artış gösteriyor. Doğrusal ilişki Fakat bir sonraki nüfusun, şu anki nüfusa göre değişimini inceleyen grafiğe bakarasak, y = 2x doğrusunu görürüz. Doğrusal ilişkiyi anlamanın bir diğer yolu da, sistemin parçalar toplamından oluşup oluşmadığını kontrol etmektir. iki ayrı kapta birer bakteri ile başlasaydık ya da tek bir kapta 2 bakteri ile başlasaydık sonuç aynı olur muydu?
Doğrusal Olmayan Sistemlere Doğru 15 / 27 Doğrusal Sistemler Bakteri Çoğalma Problemi 1 #################################################### 2 # D o g r u s a l s i s t e m 3 #################################################### 4 KucukKap1 < v e c t o r ( ) # Nufus vektoru 5 KucukKap2 < v e c t o r ( ) # Nufus vektoru 6 BuyukKap < v e c t o r ( ) # Nufus vektoru 7 8 KucukKap1 [ 1 ] < 1 # Baslangicta nufus 9 KucukKap2 [ 1 ] < 1 # Baslangicta nufus 10 BuyukKap [ 1 ] < 2 # Baslangicta nufus 11 12 f o r ( t i n 1 : 1 0 ) { 13 KucukKap1 [ t +1] < 2 KucukKap1 [ t ] # Nufus a t i s i 14 KucukKap2 [ t +1] < 2 KucukKap2 [ t ] # Nufus a t i s i 15 BuyukKap [ t +1] < 2 BuyukKap [ t ] # Nufus a t i s i 16 } 17 p r i n t ( KucukKap1 ) 18 p r i n t ( KucukKap1 ) 19 p r i n t ( KucukKap2 ) 20 p r i n t ( KucukKap2 ) 21 p r i n t ( BuyukKap ) 22 p r i n t ( BuyukKap ) 23 p r i n t ( BuyukKap == KucukKap1 + KucukKap2 ) 24 p r i n t ( BuyukKap == KucukKap1 + KucukKap2 ) Kod 3: kaplar.r
Doğrusal Olmayan Sistemlere Doğru 16 / 27 Doğrusal Sistemler Bakteri Çoğalma Problemi Doğrusallıktan kastedilen nedir? Sistem parçalara ayrılarak, ya da bütün halinde incelendiğinde aynı sonucu vermektedir. İki ayrı kapta birer bakteri olsun t zaman sonra her iki kapta da 2 t kadar bakteri olacaktır. 1 1 2 = 2 2 2 = 4... 2 (t 1) = 2 t 1 1 2 = 2 2 2 = 4... 2 (t 1) = 2 t toplam bakteri sayısı 2 (t+1) Tek bir kapta 2 bakteri olsaydı, t zaman sonra gene 2 (t+1) bakteri olacaktı 2 2 2 = 4 4 2 = 8... 2 t 2 = 2 (t+1)
Doğrusal Olmayan Sistemlere Doğru 17 / 27 Doğrusal Sistemler Faiz Artış Problemi Ekonomide Faiz Artış Problemi Her yıl müşterilerin yatırdığı anaparaya yüzde yüz faiz veren cömert bir bankanın var olduğunu düşünelim. Örneğin yatırdığınız 1 milyon TL, ertesi yıl 2 milyon TL ve devam eden yıllarda 1 2 4 8... milyon TL olarak artış gösteriyor.
Doğrusal Olmayan Sistemlere Doğru 18 / 27 Doğrusal Sistemler Faiz Artış Problemi Disiplinler Arası Benzerlik Biyolojiyi ilgilendiren bakteri çoğalma problemi ile, ekonomiyi ilgilendiren faiz artışı problemleri ne kadar birbirine benzer? Çok fazla şeyi göz ardı ettik. Modelimiz gerçeklikten uzak, diyorsanız. Biyolojiye geri dönüp modelimizi biraz daha gerçekçi hale getirelim.
Doğrusal Olmayan Sistemlere Doğru 19 / 27 Doğrusal Olmayan Sistemler Kısıtlı Kaynağın Olduğu Durum Nüfus hiç bir engelle karşılaşmadan sürekli artabilir mi? Taşıma Kapasitesi K Kısıtlı kaynak yüzünden bakteri sayısının ulaşabileceği bir maksimum değer olsun. Sistem Durumu x(t) [0, 1] Bakteri sayısının, taşıma kapasitesine oranı, sistemin bize o andaki durumunu veriyor olsun: x(t) = N(t) K.
Doğrusal Olmayan Sistemlere Doğru 20 / 27 Doğrusal Olmayan Sistemler Lojistik Model Bir sonraki nüfus oranı x(t + 1) in aşağıdakilerle orantılı olsun, Doğum ölüm artış hızları arasındaki fark: R Şimdiki nüfus oranı, x(t) Ve kullanılmamış taşıma kapasitesi, 1 x(t) 1 x(t) bize kapalı bir ekosistemde (ör: göl) kalan kaynak (alan, besin) bilgisini verir. Lojistik Model x(t + 1) = R x(t) [1 x(t)]
Doğrusal Olmayan Sistemlere Doğru 21 / 27 Doğrusal Olmayan Sistemler Kaos un Harika Dünyasına Hoşgeldiniz Evren saat gibi mi çalışır? Fransız matematikçi Pierre Simon Laplace, Newton fiziğine güvenerek, evrendeki tüm parçacıkların hız ve konum bilgileri verildiğinde, geleceğin tahmin edilebileceğini ileri sürmüştü. Kaos çok kısa bir süre öncesine kadar bilim dışı bir tür fantazi olarak görülüyordu. Lojistik Modeli R dili ile kodlayalım Kaotik davranış gösteren ve doğrusal olmayan en basit sistem.
Doğrusal Olmayan Sistemlere Doğru 22 / 27 Doğrusal Olmayan Sistemler Kaos Nüfus Artış ve Zaman Serisi Fonksiyonları 1 # g e o m e t r i k n u f u s a r t i s i 2 n u f u s a r t i s i < f u n c t i o n ( r, x ){ 3 x < r x 4 } 5 6 # f o n k s i y o n i c i n d e f o n k s i y o n c a g i r i y o r u z 7 zaman s e r i s i < f u n c t i o n ( r, x, T){ 8 y < v e c t o r ( ) 9 y [ 1 ] < x 10 f o r ( i i n 2 :T){ # zaman=2 den devam 11 x < n u f u s a r t i s i ( r, x ) 12 y [ i ] < x 13 } 14 r e t u r n ( y ) 15 } 16 17 # 1 den T ya kadar h e r zaman d i l i m i n d e 18 # n u f u s r k a t i n a c i k a c a k 19 Xt < zaman s e r i s i ( r =3, x =0.1, T=10) 20 p r i n t ( Xt )
Doğrusal Olmayan Sistemlere Doğru 23 / 27 Doğrusal Olmayan Sistemler Kaos Nüfus Artış ve Zaman Serisi Fonksiyonları Doğrusal bir sistemde başlangıç koşullarındaki ufak bir sapma, ilerleyen zamanda ihmal edilebilir. 1 # B a s l a n g i c d e g e r i n d e f a r k l i l i k 2 T < 15 3 Xt1 < zaman s e r i s i ( r =2, x =1.0, T) 4 Xt2 < zaman s e r i s i ( r =2, x =1.000001, T) 5 6 p l o t ( 1 : T, Xt1, t y p e= b, c o l= dark r e d, x l a b = zaman, y l a b= y1 ve y2 ) 7 p o i n t s ( 1 : T, Xt2, t y p e= b, c o l= b l a c k, pch =22, cex= 1. 5, x l a b=, y l a b= ) 8 9 l e g e n d ( t o p l e f t, c ( y1, y2 ), 10 c o l=c ( dark r e d, b l a c k ), pch =21:22, l t y =1:2) ;
Doğrusal Olmayan Sistemlere Doğru 24 / 27 Doğrusal Olmayan Sistemler Kaos Logistic Fonksiyonu ve Kaos 1 zaman s e r i s i < f u n c t i o n ( r, x, T){ 2 y < v e c t o r ( ) 3 y [ 1 ] < x 4 f o r ( i i n 2 :T){ 5 x < r x (1 x ) # L o j i s t i k F o n k s i y o n u 6 y [ i ] < x 7 } 8 r e t u r n ( y ) 9 } 10 r=4 # parametre : kaos ( r =4) veya duzen 11 x1 =0.2 # I l k k o s u l a b a g l i l i k 12 x2 =0.200001 # I l k k o s u l a b a g l i l i k 13 T=30 # i t e r a s y o n s a y i s i 14 15 y1 = zaman s e r i s i ( r, x1, T) 16 y2 = zaman s e r i s i ( r, x2, T) 17 18 p l o t ( 1 : T, y1, t y p e= b, c o l= dark r e d, x l a b= zaman, y l a b= y1 ve y2 ) 19 p o i n t s ( 1 : T, y2, t y p e= b, c o l= b l a c k, pch =22, cex= 1. 5, x l a b=, y l a b= ) Not: r = 4 için Logistic Fonksiyonu random sayı üretmek için Şekil: r = 3 için 2 periyot Şekil: r = 4 için Kaos kullanılabilir. if(y[i]<0.5) yazı else tura
Doğrusal Olmayan Sistemlere Doğru 25 / 27 Doğrusal Olmayan Sistemler Kaos Başlangıç Şartlarına Hassas Bağlılık İstatistikçiler için kötü haber Başlangıç koşullarının ondalık değerini kusursuz olarak bilme ihtimalimiz olmadığı için kusursuz tahmin imkanına sahip değiliz. Uzun süreli tahminde bulunmak mümkün değil.
Doğrusal Olmayan Sistemlere Doğru 26 / 27 Kaynaklar Kaynaklar Online Açık ders Model Thinking, by Scott E. Page R Dilinin temellerini interaktif biçimde öğreten bir web sayfası: tryr.codeschool.com Kitaplar Complexity: A Guided Tour, by Melanie Mitchell, Oxford, 2011.
Doğrusal Olmayan Sistemlere Doğru 27 / 27 Kaynaklar İletişim Teşekkürler E-mail: uzay00@gmail.com Twitter : @uzay00 Boğaziçi R Kullanıcı Grubu http://www.rbosphorus.org