You are on page 1of 49

Bölüm 2: Lineer Olmayan

Denklem Sistemleri

• Lineer olmayan denklemlerin köklerinin bulunması


• Lineer olmayan denklemlerin köklerinin
bulunmasında kullanılan kapalı ve açık yöntemler
– İkiye bölme yöntemi
– Yer değiştirme (Regula-Falsi) yöntemi
– Sabit noktalı iterasyon yöntemi
– Newton-Raphson yöntemi
– Sekant yöntemi
• Lineer olmayan denklem sistemlerinin çözümü
Giriş
Bu bölümde tek değişkenli lineer olmayan denklemlerin köklerinin bulunmasında kullanılan sayısal
çözüm yöntemleri üzerinde durulacaktır. Lineer olmayan bir denklemin çözümü denklemin köklerinin
belirlenmesinden ibarettir. Tek değişkenli bir fonksiyon için söz konusu kök değerleri aslında
fonksiyonun x-eksenini kestiği noktalara/değerlere karşılık gelmektedir. Bir fonksiyon x-eksenini bir
noktada kesiyorsa tek kökü, birden fazla noktada kesiyorsa birden fazla kökü var demektir.

Bu bölümde, f(x) = 0 formundaki tek değişkenli lineer olmayan denklemlerin çözümü için kullanılan sayısal
çözüm yöntemlerinden bahsedilecektir. f fonksiyonu bir polinom ise ve çarpanlarına ayrılabiliyorsa, f(x)=0
denkleminin kökleri analitik olarak belirlenebilir. Örneğin, f(x) = x2 – 4 formundaki bir denklemin kökleri,
çarpanlarına ayrıldıktan sonra (x – 2)(x + 2) = 0 → x = -2 veya x = +2 olarak belirlenir. Ancak, f
fonksiyonunun yüksek dereceden bir polinom olması veya trigonometrik, logaritmik, üstel vb. fonksiyonlar
içermesi durumunda çözüm oldukça karmaşık hale gelecektir. Lineer olmayan denklemlerin çoğu zaman
analitik çözümü mümkün olmayıp, sayısal çözümleme yöntemleri ile yaklaşık çözümler bulunması
gerekmektedir. Lineer olmayan denklemler için aşağıdaki örnekler verilebilir.
f(x) = lnx – 1
f(x) = sinx – 1
f(x) = e2x – 4
Lineer olmayan denklemlerin köklerinin belirlenmesinde kullanılan sayısal çözüm yöntemleri iki ana gruba
ayrılabilir: Açık Yöntemler ve Kapalı Yöntemler.
2.1. Kapalı Yöntemler

Kapalı yöntemlerde Şekil 2.2’de görüldüğü gibi öncelikle kökü içine


alan bir çözüm aralığının belirlenmesi gerekmektedir. Daha sonra bu
aralık, sayısal çözüm yöntemleri ile küçültülerek çözüm aranmaktadır.
Kapalı yöntemlerde yakınsama problemi (en nihayetinde köke belli bir hata sınırı
içinde yaklaşma) yaşanmazken, yakınsama genellikle yavaş olur.

Kapalı yöntemlerden, lineer olmayan denklemlerin çözümünde yaygın


olarak kullanılan iki yöntem üzerinde durulacaktır: İkiye Bölme
Yöntemi ve Yer Değiştirme (Regula-Falsi) Yöntemi.
2.1.1 İkiye Bölme Yöntemi
Lineer olmayan denklemlerin çözümü ile ilgili olarak
geliştirilen yöntemlerin en eskilerden biri “ikiye bölme
yöntemi” veya “yarılama yöntemi” (bisection method)
olarak bilinir. Bu yöntem “ikili arama yöntemi” (binary
search method) olarak da isimlendirilmektedir. Yarılama
yönteminin en belirgin özelliği, kökün var olduğu aralık
belirlendiği takdirde yakınsamayı garanti etmesidir.

Yarılama yöntemi “ara değer teoremi” ne dayanır. Bu


teoreme göre, [a,ü] aralığında tanımlı f sürekli
fonksiyonunun f(a) ve f(ü) değerleri zıt işaretli olduğu
sürece bu aralık içinde xa < xor < xü olmak üzere xor gibi bir
kökü vardır. O halde f fonksiyonunun verilen aralıkta işaret
değiştirdiği noktalarda, yani x-eksenini kestiği noktalarda
kökleri bulunmaktadır.
f fonksiyonunun [x0 , y0] = [xa , xü] aralığında tanımlı bir kökü bulunmamaktadır.
İkiye Bölme Yönteminin Algoritması

Yarılama yönteminin algoritması şu şekildedir:


• Fonksiyon için bir kök araştırması yapılarak aralık belirlenir. Bu
aralık, [xa , xü] biçimindedir. Burada xa aralığın alt sınırı, xü ise üst
sınırını ifade eder.
• Aralığın orta noktası hesaplanarak xor kök değeri elde edilir:

xa + xü
xor =
2
• Kökün [xa , xor] veya [xor , xü] aralığında olup olmadığı araştırılır.
Bunun için f(xa)×f(xor) değerine bakılır.

i) Eğer f(xa) f(xor) < 0 ise kök xa ile xor arasındadır. Bu


durumda,
xa = xa
xü = xor
dönüşümü yapılır.
İkiye Bölme Yönteminin Algoritması (…devam)

ii) Eğer f(xa) × f(xor) > 0 ise kök xor ile xü arasındadır. Bu durumda,
xa = xor
xü = xü
iii) Eğer f(xa) × f(xor) = 0 ise xor aranan köktür. Bu durumda
iterasyona son verilir.
• İterasyonlara son vermek için aşağıda belirtildiği biçimde, o anda
hesaplanan kökün bir önceki kök ile farkı hesaplanır. Bulunan değer εs
gibi bir hata sınırından küçük ise iterasyona son verilir. Aksi durumda 2.
adıma dönülerek işlemler tekrarlanır.
İkiye Bölme Yönteminin Algoritması: İterasyonların Sonlandırılması

Yarılama yönteminde iterasyonlara ne kadar devam edilebileceği


belirlenebilir. Bunun için ikinci xor değeri/kökü bulunduktan sonra,

farkı hesaplanır. Elde edilen değer, bir hata sınırından, yada bir
başka deyişle “hata toleransından” büyük ise diğer iterasyona
geçilir. O halde εs hata sınırı için, k. adımda, Gerçek Bağıl Yüzde Hata
x (ork ) − xor( k−1)
∈k = (k) × 100 < ε s
x or
ise iterasyona son verilir. İterasyonlara ne kadar devam edileceği,
daha başlangıçta belirlemek mümkündür. Bunun için
başlangıçtaki [xa , xü] aralığının boyutu göz önüne alınarak,
xü − xa
2k
bağıntısı kullanılır. Bu aralık için εs hata sınırı olmak üzere, aralık
boyutunun εs’den küçük olması beklenir: ü
x − xa
<ε s
2k
Buradan, her iki tarafın logaritması alınarak,

xü − xa
ln
xü − xa εs
k
< εs ⇒ k ≥
2 ln 2
elde edilir. Bu bağıntı bir hata sınırına uygun k iterasyon sayısını elde
etmede kullanılır.
f (x) = x 3 + 0.2923x 2 − 0.3902x − 3 fonksiyonunun
[1,2] aralığındaki
kökünü εs= 0,0001 doğrulukla yarılama yöntemine göre
hesaplayınız.

Söz konusu fonksiyonun grafiğini şekil üzerinde görüyoruz.


Buna göre f(x) in [1,2] aralığındaki kökünün yaklaşık 1,4 olduğu
(f fonksiyonunun [1,2] aralığında x-eksenini yaklaşık 1,4
noktasında kestiği) anlaşılmaktadır.
Öncelikle bu yöntemi kullanarak hata sınırına göre kaç iterasyonla
kökü elde edebileceğimizi bulmak istiyoruz. Bunun için daha önce
bahsettiğimiz aşağıdaki bağıntı kullanılır.

xü − xa
ln
εs
k≥
ln 2

Elde edilen bu değer bir üst tamsayıya yuvarlatılarak k = 14 elde


edilir. Şimdi ardı ardına 14 iterasyon uygulayarak köke
ulaşabileceğimiz anlaşılıyor.
İterasyon 1
İterasyon 2
Önceki örnekte verilenf (x) = x + 0.2923x − 0.3902x − 3 fonksiyonunu yeniden
3 2

göz önüne alalım. Söz konusu örnekte iterasyon sayısını başlangıçta


hesaplayarak ona göre işlem yapmıştık. İstenirse, bunun yerine her
iterasyonda hata denetimi yapılarak gerektiğinde işleme son verilebilir.
Bunun için 2. iterasyondan itibaren, her adımda, k iterasyon adımı olmak
üzere,

karşılaştırması yapılır. Örneğin 2. iterasyonda,

|1.25-1.5|=0.25 > 0.0001

olduğuna göre işlem sona ermeyecek ve bir sonraki itarasyona


geçilecektir. Ancak 14. iterasyonda,

|1.43549-1.43542|=0.00006 < 0.0001

olduğundan iterasyona son verilir. İşlemleri tablo biçiminde aşağıdaki gibi


düzenleyebiliriz.
2.1.2. Yer Değiştirme (Regula-Falsi) Yöntemi

Bu yöntem yarılama yöntemine çok benzemektedir. Yarılama


yönteminde kökler aralığın ortası olarak hesaplanıyordu.
Regula-Falsi yönteminde ise, kök aralığın ortasında değil, f(xa)
veya f(xü) değerlerinden hangisine yakın ise ona göre konum
alır. Yani f(xa) değerine yakın ise kökün xa’ya daha yakın olması
beklenir. Bunun için şekilde görüldüğü gibi f(xü) ile f(xa)
noktaları bir doğru ile birleştirilir. Bu doğrunun x eksenini
kestiği xr noktası kökün bir tahminidir.
Şekil üzerinde taranmış iki alan birer benzer üçgendir. Bu
üçgenlerden yararlanarak, aşağıdaki bağıntı yazılabilir:

f ( xa ) f ( xü )
=
xr − xa xr − xü

Bu bağıntı düzenlendiğinde aşağıdaki ifade


elde edilir:

f ( xü )( xa - xü )
xr = xü -
f ( xa ) - f ( xü )

( ) (
NOT: xa , f ( xa ) ve xü , f ( xü ) ) noktalarından geçen doğrunun
denklemi ve bu doğrunun x-eksenini kestiği nokta xr .
Kök bu şekilde hesaplandıktan sonra yarılama yönteminde olduğu
gibi işlemlere devam edilir. Regula-Falsi yönteminin algoritmasını
şu şekilde ifade edebiliriz:

a) Fonksiyon için bir kök araştırması yapılarak aralık belirlenir. Bu


aralık,
[xa , xü] biçimindedir. f ( x )( x - x )
xr = xü - ü a ü

b) Kök bulduğumuz formül ile hesaplanır:


f ( xa ) - f ( xü )

c) f(xa) × f(xr) değerine bakılır:

i) Eğer f(xa) × f(xr) < 0 ise kök xa ile xr arasındadır. Bu durumda,

xa = xa

xü = xr
olarak düşünülür.
ii) Eğer f(xa) × f(xr) > 0 ise kök xr ile xü arasındadır. Bu durumda,
xa = xr
xü = xü
olarak düşünülür.

iii) Eğer f(xa) × f(xr) = 0 ise xr aranan köktür. Bu durumda


iterasyon sona erecektir.

d) İterasyonlara son vermek için k. iterasyonda yakınsama kriteri


olarak mutlak hataya bakılabilir. Bunun için

koşulu sınanır. Bu koşul gerçekleştiği takdirde iterasyonlara son


verilir. Aksi durumda 2. adıma dönülerek işlemler tekrarlanır.
Regula-Falsi Yönteminin Algoritması
f ( xü )( xa - xü )
xr = xü -
f ( xa ) - f ( xü )
Adımlara devam edilerek aşağıdaki tablo oluşturulmuştur.
Görüldüğü gibi adım sayısı arttıkça fonksiyon değerleri
hızla sıfıra yaklaşmaktadır. 6 adım sonunda bulunan kök
değeri, 1.654241, gerçek değere yeterince yakın olup, ikiye
bölme yöntemine göre daha hızlı bir yakınsama
sağlanmıştır.
f (x) = x 3 − 2x − 1 fonksiyonunun [0,2] aralığında x-eksenini
kestiği noktanın apsisini 0.0001 hata sınırına göre Regula-Falsi
yöntemiyle bulunuz.

f ( xü )( xa - xü )
xr = xü -
f ( xa ) - f ( xü )
2.2. Açık Yöntemler

Açık yöntemlerde çözüm için bir başlangıç tahmini yapılarak işleme


başlanır. Daha sonra kullanılan sayısal çözüm yöntemine bağlı olarak
çözüm için daha yakın değerler bulunmaya çalışılır. Açık yöntemlerde
yakınsama sağlanıyorsa bu hızlı gerçekleşir. Ancak, bu yöntemlerde her
zaman yakınsama elde edilemeyebilir.

Açık yöntemlerden, lineer olmayan denklemlerin çözümünde en fazla


bilinen üç yöntem üzerinde durulacaktır: Sabit Noktalı İterasyon (Fixed-
point iteration) Yöntemi, Newton-Raphson Yöntemi ve Secant Yöntemi.
2.2.1. Sabit Nokta İterasyonu (Fixed-Point Iteration)
Sabit noktalı iterasyon yönteminde f(x)=0 ifadesi yeniden düzenlenerek,
x = g(x) (2.6)

formunda yazılır (x değeri, g fonksiyonunun bir sabit noktasıdır) ve çözüm için iteratif bir
yaklaşım izlenir. Bunun için önce seçilen bir başlangıç değeri,

xi+1 = g(xi) (2.7)

iterasyon fonksiyonunda yerine yazılarak yeni bir xi+1 değeri hesaplanır. Daha sonra
hesaplanan yeni tahmin değeri (2.7) denkleminde tekrar yazılarak yeni bir tahmin değeri daha
elde edilir ve işlemler benzer şekilde tekrar edilerek çözüme gidilir. Her zaman f(x) = 0
fonksiyonu için, (2.6) formunda bir iterasyon denklemi yazılamayabilir. Bu durumda f(x) = 0
ifadesinin her iki tarafına x eklenerek bir iterasyon denklemi elde edilebilir. Örneğin,

x = x + f(x)
x = g(x)

Sabit noktalı iterasyon yöntemi, g fonksiyonunun türevinin mutlak değeri 1’den küçük ise
yakınsayacaktır.

|g'(x)| < 1 (2.8)

Kapalı yöntemlerde olduğu gibi bir çözüm aralığı söz konusu olmadığından, iterasyonların
sonlandırılması için yaklaşık yüzde bağıl hata kullanılabilir.
İterasyonun diğer adımları için elde edilen değerler aşağıdaki
tabloda gösterilmiştir.
f(x) = 2e–x – 3x fonksiyonunun x-eksenini kestiği noktaları
(2e–x – 3x = 0 denkleminin köklerini) 0.0001 hata sınırını
göz önüne alarak sabit nokta iterasyon yöntemi ile bulunuz.
2.2.2. Newton-Raphson Yöntemi

f fonksiyonunun [a,b] aralığında türevlenebilir olduğunu ve


fonksiyonun tahmini kökünün x0 olduğunu kabul edelim.
Şekil üzerinde (x0, f(x0)) noktasından eğriye çizilen teğetin
x-eksenini kestiği nokta, yani x1 noktası fonksiyonun (tahmini) ikinci
köküdür. Benzer biçimde işlemlere devam edilerek diğer (tahmini)
kökler elde edilir.
O halde (x1, 0) ile (x0, f (x0)) noktaları arasına çizilen teğet doğrusu
kökün elde edilmesini sağlamaktadır.
0 − f ( x0 )
Bu teğet doğrusunun eğimi, biçimindedir.
x1 − x0
− f ( x0 ) f ( x0 )
O halde, f ′ ( x0 ) = dir. Bu ifade yeniden düzenlenirse: 1
x = x −
f ′ ( x0 )
0
x1 − x0

f ( xk−1 )
xk = xk−1 −
f ′ ( xk−1 )

Bu bağıntı kullanılarak iterasyonlar devam ettirilir ve belirlenen


durdurma kriterine bağlı olarak işlemler sonlandırılır. Durdurma
kriteri olarak yaklaşık yüzde bağıl hata kullanılabilir.
f ( xk−1 )
xk = xk−1 −
f ′ ( xk−1 )
f (x) = x + 2sin(-3x) fonksiyonunun x-eksenini kestiği noktaları
(x + 2sin(-3x) = 0 denkleminin köklerini) x0 = 1 tahmininden
başlayarak 0,0001 hata sınırına kadar Newton-Raphson
yöntemiyle hesaplayınız.

k = 1 için, f ' (x) = 1 – 6cos(-3x) olduğuna göre, f ( xk−1 )


xk = xk−1 −
bağıntısından x1 hesaplanır. f ′ ( xk−1 )
2.2.3. Sekant Yöntemi
Bu yöntem Regula-Falsi yöntemine benzer. Kökler bulunurken, x0 ve x1 gibi iki
nokta arasındaki kiriş (sekant) doğrusundan yararlanılır. Söz konusu kirişin
x-eksenini kestiği nokta fonksiyonun kökleri olarak tahmin edilir. Bu yönteme
sekant yöntemi (kiriş yöntemi) adı verilmektedir.

Şekil üzerinden, aşağıdaki bağıntıyı yazabiliriz.


f (x1 ) f (x0 ) (x1 − x0 )
= ⇒ x2 = x1 − f (x1 )
x1 − x2 x0 − x2 f (x1 ) − f (x0 )
Bu son ifade k>2 için genelleştirilirse, şu ifade elde edilir.
(xk−1 − xk−2 )
xk = xk−1 − f (xk−1 )
f (xk−1 ) − f (xk−2 )
(xk−1 − xk−2 )
xk = xk−1 − f (xk−1 )
f (xk−1 ) − f (xk−2 )
f(x) = -3x3 -2x + 1 fonksiyonunun x-eksenini
kestiği noktaları (-3x3 - 2x + 1 = 0
denkleminin köklerini) x0 = 0 ve x1 = 1 den
başlamak üzere 0,0001 hata sınırına kadar
Sekant yöntemiyle yaklaşık olarak
hesaplayınız.

(xk−1 − xk−2 )
xk = xk−1 − f (xk−1 )
f (xk−1 ) − f (xk−2 )
2.3. Lineer Olmayan Denklem Sistemleri
Lineer olmayan denklemlerim çözümü için şimdiye kadar ele alınan yöntemler
yalnızca tek bir denklemin çözümü üzerine odaklanmıştır. Bu bölümde, denklem
sayısının birden fazla olması durumunda ortaya çıkacak lineer olmayan denklem
sistemlerinin çözümü üzerinde durulacaktır. Lineer olmayan bir denklem sistemi,

formunda gösterilebilir. Verilen bu denklem sistemi n bilinmeyenli n tane


denklemden oluşmaktadır. Lineer denklem sistemlerinden farklı olarak, lineer
olmayan denklem sistemlerindeki değişkenler arasında lineer olmayan bir ilişki
söz konusudur. Örneğin, iki bilinmeyenli iki denklemden oluşan bir lineer
olmayan bir denklem sistemi için aşağıdaki örnek verilebilir.

Lineer olmayan denklem sistemlerin çözümünde, tek değişkenli denklem çözümü


için gösterilen yöntemlerden faydalanılacaktır. Bu yöntemlerden denklem
sistemine uygulama kolaylığı nedeniyle, Sabit Noktalı İterasyon ve Newton-
Raphson yöntemleri üzerinde durulacaktır.
2.3.1 Sabit Nokta İterasyonu
2.3.2 Newton-Raphson Yöntemi

f ( xk−1 )
xk = xk−1 −
f ′ ( xk−1 )

You might also like