Bu yazıda Robert May’in 1970’li yıllarda keşfettiği bir
olaya değinilecek.
Lojik olan bu denklemde giriş, bir önceki çıkış oluyor. Ve
makul bir başlangıç değeri belirleyip döngüye sokuluyor. Böylece oluşan x
değerleri gözlemleniyor. Ben May’in denklemine gelmeden önce başka bir
denklemden örnek vererek açıklamak istiyorum.
Bir denklem uyduralım ve bu denklem lineer olmasın. Mesela,
Şeklinde olsun.
Basit iterasyon ile köklerini bulacak
olursam yakınsama kriterine en uygun ayırma şu şekilde olacaktır:
İterasyona hazır hale gelir. Aslında yakınsama kriterine
uygun olup olmadığına (basit iterasyon yakınsama koşulu) bakmadan bu adıma
geçtik. Doğruyu söylemek gerekirse yakınsadığını kriterler kontrol etmek o
fonksiyonu kullanmaktan daha uzun sürecek. Her neyse. Yine de uygun olup
olmadığına kısaca bakalım.
Elde edilen türevin pozitif reel kümede 1’den küçük olduğunu
(grafik çizdirerek :/) görebilirsiniz.
İterasyona başlandığında, örneğin başlangıç x değerim
0 (sıfır) olsun.
Evet. Bu şekilde yapmaya devam ederek x’i bir sayıya
yakınsatıyorum. Geometrik olarak yaşanan olay şu:
Birkaç adımdan sonra x’in 2’ye çok yaklaştığını ve 2’nin
başlangıçtaki 3. Dereceden polinomun bir kökü olduğunu söyleyebiliriz nitekim
öyledir de. Bu grafiği çizdirdiğim matlab scripti:
Function
= @(x) (3*x+2).^(1/3);
StartValueofX
= 0;
LoopStep
= 15;
a = 0;
%space
b =
5;
f =
figure('name', 'Basit İterasyon');
x_vector
= linspace(a,b);
figure(f);
plot(x_vector,
Function(x_vector), x_vector, x_vector);
clear
x_vector;
hold
on;
X =
zeros([1 LoopStep]);
X(1)
= StartValueofX;
for step =
1:LoopStep-1;
X(step+1) = Function(X(step));
thisX = [ X(step) X(step) X(step+1) ];
thisY = [ X(step) X(step+1) X(step+1)];
plot(thisX, thisY, 'k');
end
clear
step thisX thisY
May’in denkleminde yapacağımız şey de hemen hemen bu. Ancak
amacımız bir fonksiyonun kökünü bulmaktan ziyade, lojik bağıntının B’ye göre
nasıl davrandığını gözlemlemek olucak. Az önceki yaptığım her şeyi şimdi May’ın
denklemine uyguluyorum. B değerim şimdilik 3 olsun. Başlangıcı da 0.5 alalım.
Burayı biraz açalım. Başlangıcı 0 alırsam, aslında herhangi bir yere
yakınsamaz, zaten 0 bir çözümdür. Yani 0, 0’a gider. Sanki 1’den büyük bir
değer de herhangi bir sayıya yakınsatacak gibi değil. Dolayısıyla 0.5 ten
başlatıyorum. B değerimin 3 olmasının aslında bir sebebi yok. Gözlemlemek istediğim
şey ise denklemin B’ye göre nasıl bir davranış sergileyeceği.
B’nin bu değeri için az öncekinden farklı bir şey olduğu
söylenemez. Şimdi de B = 3.2 için şansımızı deneyelim:
Şimdi ise iterasyon sürecinde x iki ayrı değere
yakınsamaktadır. Bu arada aynı B için x in farklı bir başlangıç değeri
için de benzer bir sonuç elde ediliyor:
Şimdi, x eksenine B değerlerini ve y eksenine de yakınsadığı
değerleri koyacak olursak acaba ne gibi bir grafik elde edilir.
Grafikte B = 2.9’a kadar olan kısım atlanıyor çünkü tek bir
değere yakınsıyor. 8 civarından sonra ise genellikle yakınsanan sayı adedi
sonsuza yakınsıyor. Benim programım ise 4 e kadar hesap yapmaya daha uygun
olduğu için oraya kadar hesapladım. Bu grafiği çizdirdiğim script bir
fonksiyondan oluşuyor:
function [ y ] = out(B)
TD = 0.01;
x_0 = 0.5;
max_step = 2^10;
x = zeros([1 max_step]);
x_i = zeros([1 max_step]);
for i=1:max_step;
x_0 = B*x_0*(1-x_0);
x(i) = x_0;
if(i == 3)
if(x_0 > 1)
break;
end
end
end
x2 = fliplr(x);
for i=1:max_step;
if(abs(x2(1)-x2(i+1))<=TD)
x_i = x2(1:i);
break;
end
end
y=x_i;
clear i x x2;
end
ve script dosyası:
clear
all;
for i =
2.9:0.001:4;
B = i;
Y = out(B);
a = length(Y);
X = ones([1 a])*B;
plot(X,Y, '.k')
hold on;
end
Aralıktaki her B için ayrı ayrı yakınsanan sayıları bulan
bir algoritma. Yakınsadığından tatmin olma sınırı için TD = 0.01 gibi bir
tolerans belirledim. Bu grafiğin çiziminde farklı algoritmalar da izleniyor
olabilir.
Resimde, bilgisayar teknolojisi henüz yeteri kadar
gelişmemişken May tarafından grafiğin oluşturulmuş bir kısmı. Resim James
Gleick’in Kaos kitabından alınmıştır.
May'e göre: "Doğrusal olmayan sistemlerin mutlaka basit dinamik özellikleri olmadığını anlayan insan sayısı artarsa, yalnızca araştırmalarda değil aynı zamanda günlük politika ve ekonomi dünyasında da hepimiz için her şey daha iyi yürürdü" (J. Gleick, Kaos)
Periyot katlamaları ve daha fazla ayrıntı için Gleick'in kitabı ve ayrıca John Gribbin, Derin Basitlik kitabını tavsiye ederim. Bu hesaplamaları sürekli hale getirmiş ve gerçek zamanlı izleme şansı tanıyan bir videoyu da buraya eklemekte fayda görüyorum.
May'e göre: "Doğrusal olmayan sistemlerin mutlaka basit dinamik özellikleri olmadığını anlayan insan sayısı artarsa, yalnızca araştırmalarda değil aynı zamanda günlük politika ve ekonomi dünyasında da hepimiz için her şey daha iyi yürürdü" (J. Gleick, Kaos)
Periyot katlamaları ve daha fazla ayrıntı için Gleick'in kitabı ve ayrıca John Gribbin, Derin Basitlik kitabını tavsiye ederim. Bu hesaplamaları sürekli hale getirmiş ve gerçek zamanlı izleme şansı tanıyan bir videoyu da buraya eklemekte fayda görüyorum.
Ayrıca daha kapsamlı bir iterasyon ile keşfedilebilecek
araziler için:
Hiç yorum yok:
Yorum Gönder