YÖNEYLEM ARAŞTIRMASI - III Prof. Dr. Cemalettin KUBAT Yrd. Doç. Dr. Özer UYGUN
İçerik İkiye Bölme / Yarılama Yöntemi
Genel olarak f x = 0 gerek şartını sağlamak oldukça doğrusal olmayan ve bu sebeple çözümü zor olabilir. Böyle durumlarda, Newton-Raphson yöntemi, doğrusal olmayan denklemlerin çözümü için iteratif bir yaklaşım sunmaktadır.
Endüstri Mühendisliği Aşağıdaki denklemi ele alalım: f i x = 0, i = 1, 2,, m x 0 verilmiş bir nokta olsun. 1. Mertebe Taylor açılımından: yazılabilir. Genel ifade aşağıdaki gibi olacaktır. 0 ) )( ( ) ( ) ( 0 1 0 0 x x x f x f x f ) ( ) ( 0 0 0 1 x f x f x x ) ( ) ( 1 k k k k x f x f x x
f ( xk ) xk 1 xk f ( xk ) Yukarıdaki ifade kullanılarak bir fonksiyonun kökü, yinelemeli yakınsama ile bulunmaya çalışılır. Fonksiyonun optimum noktasını bulmak için ise önce fonksiyonun türevi alınır ve türevi alınmış fonksiyona yukarıdaki işlemler uygulanır.
f ( xk ) xk 1 xk f ( xk ) Bu ifadeyi aşağıdaki gibi yazmak da mümkündür. f x k = f(x k) x k x k+1 Buna göre, x k+1 noktası, f(x k ) fonksiyonunun x k noktasındaki eğiminden bulunacaktır. Burada tan θ = f x k dır.
tan θ = f x k f(x) in x k noktasındaki teğeti Yakınsama noktası(çözüm)
Yakınsama her zaman mümkün olmayabilir. Şekilde görüldüğü gibi başlangıç çözümü olarak a alındığında çözümden uzaklaşılacaktır. Genel olarak, yakınsama sağlanana kadar birçok başlangıç noktası seçmek gerekebilmektedir.
Newton-Raphson yöntemi Teğetler Yöntemi olarak da bilinir. Her bir noktanın teğetleriyle köke yaklaşılır.
Örnek: Aşağıdaki fonksiyonun durağan (stasyoner) noktalarını Newton-Raphson yöntemi ile bulunuz. g x = (3x 2) 2 (2x 3) 2 Öncelikle fonksiyonun türevi alınmalıdır: f x g x = 144x 3 468x 2 + 482x 156 = 0 İkiye bölerek sadeleştirirsek; f x g x = 72x 3 234x 2 + 241x 78 = 0
Örnek: g x = (3x 2) 2 (2x 3) 2 Newton-Raphson yöntemi için f x fonksiyonunun türevini alırız ve x k+1 noktalarını yinelemeli olarak elde ederiz. f x g x = 216x 2 468x + 241 x k+1 = x k f x f x = x k g x g x x k+1 = x k 72x3 234x 2 +241x 78 216x 2 468x+241
Örnek: x 0 = 10 noktasından başlayarak elde edilen yeni noktalar ve yaklaşık çözüm değeri tabloda verilmiştir. k x k f(x) f (x) f(x)/f (x) x k+1 0 10,000000 50932 17161 2,9678923 7,032108 1 7,032108 15082,7 7631,29 1,9764288 5,055679 2 5,055679 4463,431 3395,878 1,3143672 3,741312 3 3,741312 1318,807 1513,507 0,871358 2,869954 4 2,869954 388,277 676,9746 0,5735474 2,296406 5 2,296406 113,3633 305,3539 0,371252 1,925154 6 1,925154 32,43006 140,5711 0,2307022 1,694452 7 1,694452 8,793732 68,16869 0,1289996 1,565453 8 1,565453 2,042065 37,70681 0,0541564 1,511296 9 1,511296 0,293991 27,06086 0,0108641 1,500432 10 1,500432 0,010818 25,07781 0,0004314 1,500001
Örnek: g x = (3x 2) 2 (2x 3) 2 Görüldüğü gibi x = 1,5 e yakınsamıştır. Aslında f x fonksiyonunun 3 durağan noktası bulunmaktadır. Bunlar x = 2 13, x = ve x = 3 noktalarıdır. Diğer noktaları bulmak 3 12 2 için farklı başlangıç noktaları seçmek gereklidir.
Ödev: Yukarıda verilen örneğin diğer iki durağan noktasını bulmak için; x 0 = 0,5 başlangıç noktasından itibaren Newton- Raphson yöntemini uygulayın x 0 = 1 başlangıç noktasından itibaren Newton-Raphson yöntemini uygulayın.
Örnek: g x = (3x 2) 2 (2x 3) 2 f x fonksiyonunun 3 durağan noktası bulunmaktadır. Bunlar x = 2 13, x = ve x = 3 noktalarıdır. 3 12 2 MATLAB ile fonksiyonun stasyoner noktaları (türevin köklerini) şöyle bulunabilir: >> syms x >> solve(72*x^3-234*x^2+241*x-78==0) ans = 2/3 3/2 13/12
Örnek: g x = (3x 2) 2 (2x 3) 2 x 0 = 10 başlangıç noktasından başlayarak Newton-Raphson Yönteminin algoritmasını MATLAB kodları ile yazınız. (Ders Notlarını inceleyiniz!)
Örnekler: Aşağıdaki fonksiyonların ekstremum noktalarını Newton-Raphson yöntemini kullanarak el ile, MATLAB ile ve Excel ile bulunuz. 1. f x = 4x 4 x 2 + 5 2. f x = 6x 5 4x 3 + 10
g(θ) konkav ve türevi alınabilen bir fonksiyon olsun. g (θ) eğimi incelenerek optimal olmayan noktalar elenebilir. Eğer g θ 1 > 0 ise θ < θ 1 olan noktalar fonksiyonu maksimuma götürmeyeceği için elenebilir. Eğer g θ 1 < 0 ise θ > θ 1 olan noktalar fonksiyonu maksimuma götürmeyeceği için elenebilir. Bu inceleme, yarılama veya Bolzano arama metodunun temelini vermektedir.
Yarılama yönteminin yakınsaması yavaş fakat uygulaması kolay olan bir yöntemdir. Belirlenen aralığın orta noktası yaklaşık kök olarak kabul edilir.
f x 0. f(a) < 0 ise kök [a, x 0 ] aralığında olacaktır. f x 0. f(b) < 0 ise kök [x 0, b] aralığında olacaktır. f a. f(b) > 0 ise [a, b] aralığında herhangi bir kök yoktur. Çünkü a ve b noktalarının her ikisi de kökün sağında veya her ikisi de kökün solundadır. Diğer bir ifade ile kök, a ve b noktaları arasında değildir.
Seçilen yeni aralığa göre x k+1 = a+b ulaşıncaya kadar işlemlere devam edilir. 2 ile hedeflenen köke Yukarıdaki işlemler bir fonksiyonun optimum noktalarını bulmak için uygulanacaksa, önce fonksiyonun türevi alınmalıdır. Türevinin kökü bulunduğunda fonksiyonun optimum noktası bulunmuş olacaktır.
Örnek: f x = x4 + 2 4 3 x3 + 3x 2 + 3x fonksiyonunun [-1, 0] aralığındaki optimum noktasını bulalım. Önce fonksiyonun türevini almalıyız. f x = x 3 + 2x 2 + 6x + 3
Örnek: f x = x4 + 2 4 3 x3 + 3x 2 + 3x f x = x 3 + 2x 2 + 6x + 3 Türevin kökünü bulursak fonksiyonun optimum noktasını elde ederiz. Verilen aralıkta kökün olup olmadığına bakalım. f 1 = 2 f 0 = 3 f 1 f (0) = 6 < 0 olduğu için bu aralıkta bir kök vardır.
Örnek: f x = x4 + 2 4 3 x3 + 3x 2 + 3x f x = x 3 + 2x 2 + 6x + 3 x 0 = 1+0 = 0,5 2 f 0,5 = 0,375 f 1 f 0,5 = 2 0,375 = 0, 75 < 0 olduğu için yeni aralık [-1, -0,5] olarak seçilir.
Örnek: f x = x4 + 2 4 3 x3 + 3x 2 + 3x f x = x 3 + 2x 2 + 6x + 3 x 1 = 1+( 0,5) = 0,75 2 f 0,75 = 0,7969 f 0,5 f 0,75 = 0, 375 ( 0, 7969) < 0 olduğu için yeni aralık [-0,75, -0,5] olarak seçilir.
Örnek: f x = x4 + 2 4 3 x3 + 3x 2 + 3x f x = x 3 + 2x 2 + 6x + 3 Benzer şekilde işlemlere devam edilir.. x 10 = 0,579+( 0,58) = 0,5795 2 f 0,5795 = 0, 00003 0 kabul edilebileceğinden yeterince yakınsanmıştır.
Örnek: f x = x4 4 + 2 3 x3 + 3x 2 + 3x O halde yukarıdaki fonksiyonunun x = 0,5795 noktasında optimum noktası bulunmaktadır. f 0,5795 = 0, 83258 bulunacaktır.
Örnek: f x = x4 4 + 2 3 x3 + 3x 2 + 3x k a b x k f'(a) f'(b) f'(x k ) f(x k ) 1-1,000000 0-0,5-2 3 0,375-0,81771 2-1,000000-0,5-0,75-2 0,375-0,7969-0,76465 3-0,750000-0,5-0,625-0,79688 0,375-0,2129-0,82774 4-0,625000-0,5-0,5625-0,21289 0,375 0,0798-0,83191 5-0,625000-0,5625-0,59375-0,21289 0,079834-0,0667-0,83211 6-0,593750-0,5625-0,57813-0,06674 0,079834 0,0065-0,83258 7-0,593750-0,57813-0,58594-0,06674 0,0064812-0,0301-0,83249 8-0,585938-0,57813-0,58203-0,03015 0,0064812-0,0118-0,83257 9-0,582031-0,57813-0,58008-0,01184 0,0064812-0,0027-0,83258 10-0,580078-0,57813-0,5791-0,00268 0,0064812 0,0019-0,83258 11-0,580078-0,5791-0,57959-0,00268 0,0019012-0,0004-0,83258 12-0,579590-0,5791-0,57935-0,00039 0,0019012 0,0008-0,83258 13-0,579590-0,57935-0,57947-0,00039 0,0007562 0,0002-0,83258 14-0,579590-0,57947-0,57953-0,00039 0,0001838-0,0001-0,83258 15-0,579529-0,57947-0,5795-0,0001 0,0001838 0,0000-0,83258
Ödev: Aşağıdaki fonksiyonların ekstremum noktalarını Yarılama Yöntemini kullanarak el ile, MATLAB ile ve Excel ile bulunuz. 1. f x = 4x 4 x 2 + 5 2. f x = 6x 5 4x 3 + 10
Yöneylem Araştırması - II Kaynaklar 1. Wayne Winston, Operations Research Applications and Algorithms 4th. Edition, 2003 2. MATLAB: Yapay Zeka ve Mühendislik Uygulamaları, Prof. Dr. C.Kubat, Beşiz Yayınları-1.Basım, Aralık 2012.