Fixed Point Iteration Yöntemi

Herkese merhaba! Bugün Fixed Point Iteration yöntemini inceleyeceğiz. Fixed Point Iteration yöntemi Türkçe kaynaklarda sabit nokta iterasyon olarak karşınıza çıkabilir. Aynı zamanda bu yöntemle birlikte açık yöntemlere de başlamış olacağız. Öncelikle neymiş bu açık yöntemler ona bakalım. Ardından da fixed point yöntemini inceleyip, matlab üzerinden örneklerle konumuzu bitirelim. Hadi başlayalım 🙂


Açık Yöntemler Nedir?

Öncelikle bilmeliyiz ki geliştirilen her yöntem bir önceki yöntemin eksikliklerini kapatmak için tasarlanmıştır. Bu yüzden açık yöntemler, kapalı yöntemlerden daha hızlı ve gelişmiştir. Kapalı yöntemlerden hatırlayacağınız üzere demiştik ki; Kapalı yöntemlerde verilen aralığın içerisindeki köke ulaşmanın yolları üzerinde uğraşılmıştır. Yani kökümüz bizim verilen aralığımızdan dışarı çıkmıyordu. Açık yöntemlerde ise kök verilen aralığın dışına çıkabilmektedir. İlla bize verilen aralığın içerisinde bir kök değeri olacak diye bir şey yok. Bu konunun çokta karışık olduğunu düşünmüyorum. Fakat anlamadığınız bir yer olursa bana ulaşabilirsiniz. Şimdi gelin ilk açık yöntemimiz olan Fixed Point Iteration (Sabit nokta iterasyon) yöntemimize başlayalım.


Fixed Point Iteration Yöntemi Nedir?

Sabit noktalı iterasyon f(x)=0 eşitsizliğinin çözülmesi için kullanılan bir yöntemdir. Çözüm yöntemine geçecek olursak öncelikle bize verilen denklemdeki x değerini yalnız bırakıyoruz. Ardından bize verilen başlangıç noktasını kullanarak f(x) değerini buluyoruz. Oldukça basit bir işlemi olduğu için direkt matlab üzerinden çözeceğimiz örnek üzerinden anlatmayı daha uygun buluyorum.


Fixed Point Yöntemi Matlab Örneği

Örneğimizdeki başlangıç noktası sıfır olup, denklemimiz f(x)=x-2^(-2x) şeklindedir. Gördüğünüz üzere denklemimizde 2 adet x değişkeninin olduğu terim var. Zaten fixed point yöntemindeki tek can alıcı nokta burası. Hangi x’i yalnız bırakmalıyız? Burada işimize en kolay şekilde geleni desek yanlış olmaz. Burada seçtiğimiz x değerinin performansı etkileyebildiğini unutmayalım. Tabii ben işimize geleni desem de x’i seçmenin çeşitli kuralları var. Eğer isterseniz bir yazıda da bu konu hakkında konuşabiliriz. Şimdi örneğimizi matlab üzerinde kodlayalım.

Matlab örneğimiz ve çıktısı
Matlab örneğimiz ve çıktısı

Yukarıda denklemimizden ve başlangıç noktamızdan bahsettik. Bize verilen 0.1 tolerans değerini de tanımladıktan sonra for döngümüze geçtik. 1 den 50’ye kadar olan döngümüzdeki en can alıcı nokta 7. satırdaki tanımlama kısmı. Orada gördüğünüz üzere ilk x değerini çektik. Ve bize karşıya attığımız kısım olan 2^(-2x) kısmı kalıyor. Sonrasında görmüş olduğunuz Ea ve ear tanımlamaları var. Burada Ea Mutlak hatayı, ear ise bağıl hatayı temsil ediyor. Bundan sonra tek yapığımız if koşullarımızı oluşturup döngü eğer devam ediyorsa sıradaki başlangıç değerimizi, devam etmiyorsa da ne zaman sonlanacağını tanımlıyoruz. İlk if koşulumuzda mutlak değer içerisinde ikinci değerimiz ile birinci değerimizin arasındaki fark tolerans değerinden küçük ise döngümüzü sonlandırıyoruz. Aksi takdirde denklemde yerine yazarak bulduğumuz yeni başlangıç değerimizi, ilk başlangıç değerimizin yerine eşitliyoruz. Bu şekilde döngü devam ediyor. Çıktımızdan da görebileceğiniz üzere 8. iterasyonda döngümüz sonlandı.

Gerçekten çok basit bir çözümü olan bu yöntemimizi de bitirmiş olduk. Umarım herkes çok rahat bir şekilde anlamıştır. Eğer anlamadığınız bir nokta olursa bana ulaşabilirsiniz. Bir sonraki yazımızda görüşünceye dek herkese sağlıklı günler dilerim. ✵❀

One thought on “Fixed Point Iteration Yöntemi

Yorumlar kapatıldı.