Sezgisel-Bilgili rama (Heuristic-Informed Search) 1
Sezgisel-Bilgili rama (Heuristic-Informed Search) Kör arama yöntemleri basittir, fakat çoğu zaman pratik değildir. Kör arama yöntemleri bilgisiz yöntemlerdir. Yani, bu yöntemlerle arama, durum uzayı hakkında bilgi olmadan gerçekleştirilir. Sezgisel arama yöntemleri, önce en umut verici yolu aramanın etkisini yükseltir. incelemekle 2
SZGİSL YKLŞIM (Heuristic pproach) Sezgisellik, gerçeğin deneye veya akla vurmadan, doğrudan doğruya kavranmasıdır. Sezgisellik (sezgisel kurallar, sezgisel yöntem) problemin durum uzayı çok büyük olduğunda çözümün aranmasını kesin biçimde sınırlayan herhangi kural, strateji, hile, sadeleştirme ve diğer etmenler kullanımıdır. 3
SZGİSL YKLŞIM (Heuristic pproach) Sezgisellik, problem karmaşıklık içerdiğinde, çözüm için yolun bulunmasındaki yardımcı anahtardır. İyi seçilmiş anahtarla tek bir kapıyı açıp amaca ulaşmak mümkün olduğu gibi, kötü seçilmiş anahtarlarla bu yolu zora sokmak da mümkündür. 4
SZGİSL YKLŞIM (Heuristic pproach) Yuri Gagarin, 1961 de uzaya giden ilk insan olduktan sonra İngiltere Kraliçesi lizabeth II tarafından kabul edilmiştir. Yemek sırasında masaya 5 çatal, 5 kaşık ve 5 bıçak getirilmiştir. Bir köylü çocuğu olan kozmonot rastgele aldığı çatal ve bıçaklarla yemeye başlamış ve sonunda ilginç bir durumla karşılaşmıştır. Yemek sonunda çay karıştırmak için kaşıklardan en büyüğü kalmıştır. Menü önceden bilinseydi, olay algoritmik özellik taşıyacaktı. Öte yandan yemek süresinin sınırlı olması deneme yapmaya imkan vermemektedir. Fakat tekrar benzeri durumla karşılaşıldığında tecrübeye göre en iyi yaklaşım yapılmaktadır. Yine de kötü bir tahmin rol oynayabilir. 5
SZGİSL PROBLM ÇÖZÜMLM (Heuristic Problem Solution) Sezgisel algoritmalar sonucun doğruluğunun kanıtlanabilir olup olmadığını önemsememektedir fakat genelde iyiye yakın çözüm yolları elde eder. Sezgisel algoritmalar en iyi sonucu bulacaklarını garanti etmezler fakat en iyi çözümü aramaktan vazgeçerek makul bir süre içerisinde bir çözüm elde edeceklerini garanti ederler. Genellikle en iyiye yakın olan çözüm yoluna hızlı ve kolay bir şekilde ulaşırlar. 6
SZGİSL PROBLM ÇÖZÜMLM (Heuristic Problem Solution) Sezgisel lgoritmaların kullanım yerleri : Rota bulma Network paketlerinin yönlendirilmesi sırasında izleyeceği en uygun yolun belirlenmesi Oyunlarda karakterin hedefe doğru izleyeceği yolların tespiti Gezgin satıcı probleminin çözümü Labirentten en kısa çıkışı bulma n kısa yolu bulma işlemi, düğüm ve kenar sayısına bağlı olarak çok fazla zaman alabilir. Bu sebeple, en kısa yolu bulduğundan emin olunan algoritmalar değil de, sezgisel algoritmalar daha çok kullanılır. Sezgisel algoritmalar ile hesaplanan yol gerçekte en kısa ve optimum yol olmayabilir ama bulunan yolun hesaplaması diğer algoritmalara göre çok daha kısa sürer. 7
SZGİSL PROBLM ÇÖZÜMLM (Heuristic Problem Solution) Sezgisellik bir tahmindir, fakat aramayı gerçekleştirmek için yararlı bir yoldur. Temel düşünce Tüm mümkün arama yollarını denemek yerine, hedefe/amaca yaklaştırdığı düşünülen yolların denenmesi. 8
SZGİSL PROBLM ÇÖZÜMLM (Heuristic Problem Solution) Örneğin, arama uzayında kentler arasındaki kuş uçuşu mesafeleri sezgisel değerlendirme için kullanılabilir. Üstünlük verilen yollar SG ye daha yakın olan yollardır. SG ye kuş uçuşu yolların uzunlukları F CS R 7 6 L 6 4 SG 3 11 7 6 SR S 8 1 1 8 SC W CG 9
Sezgisel rama Stratejileri (Heuristic-Informed Search Strategies) n İyi Öncelikli rama lgoritması (Best-First Search BFS) ç gözlü rama lgoritması (Gready Search- GBFS) Yıldız rama lgoritması(* Search) Tepe Tırmanma rama lgoritması (Hill Climbing Search - HCS) 10
n İyi Öncelikli rama lgoritması (Best-First Search) 1. Her durum-düğüm için, o durumun-düğümün istenebilirliğini (desirability) tarif edecek bir tahmin fonksiyonu f(n) kullanılır. Bu fonksiyon hedef/amaç durumuna arama ağacında düğümleri inceler. yakınlığı değerlendirmek için 1. n çok istenen-arzu edilen düğüm genişletilir. 2. Düğümler istenebilirlikleri azalacak şekilde sıralanır. 11
n İyi Öncelikli rama lgoritması (Best-First Search) Bazı hallerde amaca doğru her hangi bir yolun bulunması yeterli olsa da, bazı zamanlarda en iyi yolun bulunması gerekebilir. n hızlı, en düşük maliyetle ve en kolay yolla amaca ulaşılması için optimal arama yapılmalıdır. Mantıklı bir zaman diliminde en iyi çözümün bulunması yöntemleri: ç gözlü rama (Greedy Search- GBFS) Yıldız rama (* Search) 12
ç Gözlü rama (Greedy Search) Değerlendirme fonksiyonu, f(n) = h(n) f(n): n. düğümden hedef düğüme kadar hesaplanmış sezgisel fonksiyon. h(n) : sezgisel tahmin n. düğümden hedef düğüme kadar. Örn., h(n) = İki şehir arası kuş uçuşu mesafesi, gerçek yol maliyetinin tahmin edilmesinde bir sezgisel (heuristic) bilgi olarak kullanılabilir. lgoritma, amaca en yakın olduğu tahmin edilen/düşünülen düğüme doğru genişleme yapar. Varsayım : h(n) = 0 ise n hedef düğümdür. 13
ç Gözlü rama (Greedy Search) Bütünlük : Yok. (Bir döngüye saplanıp kalabilir. Tekrarlı bir alanda sınırlı arama yapar.) Zaman Karmaşıklığı : O(b m ), iyi bir sezgisel ile yeterli ölçüde gelişme sağlanabilir lan Karmaşıklığı : O(b m ) (Bütün düğümleri bellekte tutar.) Optimallik : Yok 14
ç Gözlü rama (Greedy Search) lgoritma öncelikle düğümlerden ve ağırlıklı kenarlardan oluşan bir graf oluşturur ve bu grafdaki kenarları ağırlıklarına göre sıralar. Daha sonra algoritma hedefe kuş uçuşu en kısa kenarı seçerek işlemeye devam eder; bu sırada da döngülerin oluşmasını önler. Greedy algoritması makul zamanda çözüm üretmektedir ancak her zaman iyi sonuçlar verememektedir. 15
ç Gözlü rama (Greedy Search) Örnek S başlangıç, G hedef durumdur. 16
ç Gözlü rama (Greedy Search) Örnek S başlangıç, G hedef durumdur. 17
ç Gözlü rama (Greedy Search) Örnek-1 118 Start 75 State Heuristic: h(n) 366 111 D C 80 140 99 B B 374 C 329 D 244 97 G F 253 F 178 G 193 H 211 H 98 101 I Goal I 0 f(n) = h (n) = sezgisel kuş uçuşu mesafesi 18
ç Gözlü rama (Greedy Search) Örnek-1 118 Start 75 State Heuristic: h(n) 366 111 D C 80 140 99 B B 374 C 329 D 244 97 G F 253 F 178 G 193 H 211 H 98 101 I Goal I 0 f(n) = h (n) = sezgisel kuş uçuşu mesafesi 19
ç Gözlü rama (Greedy Search) Örnek-1 118 Start 75 State Heuristic: h(n) 366 111 D C 80 140 99 B B 374 C 329 D 244 97 G F 253 F 178 G 193 H 211 H 98 101 I Goal I 0 f(n) = h (n) = sezgisel kuş uçuşu mesafesi 20
ç Gözlü rama (Greedy Search) Örnek-1 118 Start 75 State Heuristic: h(n) 366 111 D C 80 140 99 B B 374 C 329 D 244 97 G F 253 F 178 G 193 H 211 H 98 101 I Goal I 0 f(n) = h (n) = sezgisel kuş uçuşu mesafesi 21
ç Gözlü rama (Greedy Search) Örnek-1 118 Start 75 State Heuristic: h(n) 366 111 D C 80 140 99 B B 374 C 329 D 244 97 G F 253 F 178 G 193 H 211 H 98 101 I Goal I 0 f(n) = h (n) = sezgisel kuş uçuşu mesafesi 22
ç Gözlü rama (Greedy Search) Örnek-1 118 Start 75 State Heuristic: h(n) 366 111 D C 80 140 99 B B 374 C 329 D 244 97 G F 253 F 178 G 193 H 211 H 98 101 I Goal I 0 f(n) = h (n) = sezgisel kuş uçuşu mesafesi 23
ç Gözlü rama (Greedy Search) Örnek-1 118 Start 75 State Heuristic: h(n) 366 111 D C 80 140 99 B B 374 C 329 D 244 97 G F 253 F 178 G 193 H 211 H 98 101 I Goal I 0 f(n) = h (n) = sezgisel kuş uçuşu mesafesi 24
ç Gözlü rama (Greedy Search) Örnek-1 118 Start 75 State Heuristic: h(n) 366 111 D C 80 140 99 B B 374 C 329 D 244 97 G F 253 F 178 G 193 H 211 H 98 101 I Goal I 0 f(n) = h (n) = sezgisel kuş uçuşu mesafesi 25
ç Gözlü rama (Greedy Search) Örnek-1 118 Start 75 State Heuristic: h(n) 366 111 D C 80 140 99 B B 374 C 329 D 244 97 G F 253 F 178 G 193 H 211 H 98 101 I Goal I 0 f(n) = h (n) = sezgisel kuş uçuşu mesafesi 26
ç Gözlü rama (Greedy Search) Örnek-1 118 Start 75 State Heuristic: h(n) 366 111 D C 80 140 99 B B 374 C 329 D 244 97 G F 253 F 178 G 193 H 211 H 98 101 I Goal I 0 f(n) = h (n) = sezgisel kuş uçuşu mesafesi 27
ç Gözlü rama (Greedy Search) Örnek-1 Start 28
ç Gözlü rama (Greedy Search) Örnek-1 118 Start 75 [329 C 140 [374 B [253 29
ç Gözlü rama (Greedy Search) Örnek-1 118 Start 75 [329 C 140 [374 B 80 [253 99 [193 G F [178 30
ç Gözlü rama (Greedy Search) Örnek-1 118 Start 75 [329 C 140 [374 B 80 [253 99 [193 G F [178 211 I [0 Goal 31
ç Gözlü rama (Greedy Search) Örnek-1 [329 C 118 Start 75 140 [374 B 80 [253 99 [193 G F [178 211 Yol maliyeti (Path cost) (--F-I) = 253 + 178 + 0 = 431 I [0 Mesafe (Distance) Goal (--F-I) = 140 + 99 + 211 = 450 32
Örnek-1 Optimum Çözüm Start C 111 D 118 80 75 140 99 B State Heuristic: h(n) 366 B 374 C 329 D 244 Yol maliyeti (Path cost) (--G-H-I) = 253+193 +98+0 = 544 Mesafe (Distance) G 97 H 101 I F 211 Goal 253 F 178 G 193 H 98 I 0 f(n) = h (n) = sezgisel kuş uçuşu mesafesi (--G-H-I) = 140+80+97+101 = 418 33
ç Gözlü rama (Greedy Search) Romanya Haritası, maç: rad dan Bükreş e gitmek 34
ç Gözlü rama (Greedy Search) Romanya Haritası, maç: rad dan Bükreş e gitmek 35
ç Gözlü rama (Greedy Search) Romanya Haritası, maç: rad dan Bükreş e gitmek 36
ç Gözlü rama (Greedy Search) Romanya Haritası, maç: rad dan Bükreş e gitmek 37
ç Gözlü rama (Greedy Search) Romanya Haritası, maç: rad dan Bükreş e gitmek 38
ç Gözlü rama (Greedy Search) Romanya Haritası, maç: rad dan Bükreş e gitmek Optimum Çözüm Mesafe (Distance) (rad - Sibiu - Rimnicu Vilcea Pitesti - Bucharest) = 140+80+97+101 = 418 ç Gözlü rama (Greedy Search) Çözümü Mesafe (Distance) (rad - Sibiu - Fagaras - Bucharest) = 140+99+211 = 450 39
Yıldız rama lgoritması (* Search lgorithm) ğırlıklı olarak "nesnelerin hedefledikleri noktaya olan en kısa yollarını bulması" amacıyla kullanılmaktadır. Örneğin seyyar tüccar problemi (travelling salesman problem) gibi bir problemin çözümünde kullanılabilir. Benzer şekilde oyun programlamada, oyunda bulunan oyuncuların en kısa yolu bularak hedefe gitmeleri için de sıklıkla kullanılan algoritmadır. Kısaca bir düğümden hedef bir düğüme en kısa hangi düğümler üzerinden gidileceğini bulmaya yarayan bir algoritmadır. 40
Yıldız rama lgoritması (* Search lgorithm) Başlangıç düğümünden n. düğüme kadar olan yolu g(n) ile n. düğümden ise hedef düğümüne olan yol değeri h(n) ile ifade edilirse bu algoritma için aşağıdaki bağıntı elde edilir. f(n) = g(n) + h(n) f(n) : n. düğümden hedef düğüme kadar hesaplama yapan sezgisel (heuristic) fonksiyon. g(n) : Başlangıç düğümünden mevcut düğüme kadar olan gerçek mesafe. h(n) : Mevcut düğümden hedef düğüme varmak için tahmin edilen mesafe (sezgisel mesafe). f(n) fonksiyonunun sezgisel olma sebebi, bu fonksiyon içerisinde bulunan ve tahmine dayalı olan h(n) sezgisel fonksiyonudur. 41
Yıldız rama lgoritması (* Search lgorithm) Maliyeti fazla olan yolların genişletilmesini engeller, sadece en faydalı olabilecek yolları genişletir. Veri yapısı olarak bir öncelik sırası (priority queue) kullanan algoritmada, en öncelikli olan düğüm f(n) değeri en düşük olan düğümdür. 42
Yıldız rama lgoritması (* Search lgorithm) Tamlık-Bütünlük (Completeness):Tam bir algoritmadır. Sonuçta, çözüm varsa bulunur. Zaman Karmaşıklığı (Time Complexity): çok büyük graflar için kötüdür. üstel b d lan Karmaşıklığı (Space Complexity): çok büyük graflar için kötüdür. üstel b d niyileme (Optimality): vet Zaman ve alan karmaşıklıkları kötü olsa da iyi bir sezgi ile, düzelecektir. 43
Yıldız rama lgoritması (* Search lgorithm) lgoritmanın çalışması: 1. Öncelikle kök düğüm kuyruğa atılır. Kök düğümün komşularına ait f(n) sezgisel fonksiyon değerleri hesaplanır. 2. lgoritma, her adımda f(n) değeri düşük düğüme gider ve bu düğümü kuyruktan (queue) çıkarır. Daha sonra döngü oluşturmayan komşu düğümler kuyruğa eklenir ve bu düğümlerin de f(n) sezgisel fonksiyon değerleri hesaplanır. 3. Hedef duruma ulaşılana kadar f(n) değeri en az olan düğümün seçilmesi ve alt düğümlerinin kuyruğa eklenilmesine devam edilir. 44
Yıldız rama lgoritması (* Search lgorithm) Örnek-1 Verilen grafın düğümünden, G düğümüne gidilmek isteniyor. Sezgisel fonksiyon olarak, bir düğümün hedefe olan kuş uçuşu mesafesi alınır. Sezgisel mesafe, örneğin iki düğüm arasındaki mesafenin cetvel ile ölçülen değeri olarak kabul edilebilir. Start 4 C 3 6 B F 4 6 8 D 4 G Goal State Heuristic: h(n) - B 8 C 9 D 4 4 F 8 G 0 h (n) = sezgisel kuş uçuşu mesafesi 45
Yıldız rama lgoritması (* Search lgorithm) Örnek-1 Başlangıç düğümünden başlayarak komşu iki düğümün değeri hesaplanırsa: C düğümü için h(n) = 9 ve g(n) = 4 B düğümü için h(n) = 8 ve g(n) = 3 f(c) = h(n)+g(n)=9+4 = 13 f(b) = h(n)+g(n)=8 +3 = 11 olarak bulunmaktadır. lgoritma bu seçimler arasından değeri küçük olan B düğümüne gitmeyi tercih eder. Start 4 C 3 6 B F 4 6 8 D 4 G Goal State Heuristic: h(n) - B 8 C 9 D 4 4 F 8 G 0 46
Yıldız rama lgoritması (* Search lgorithm) Örnek-1 Bu anda kuyrukta (queue) iki düğüm bulunmakta (C ve ) B düğümünün komşusu düğümün değeri hesaplanırsa: f() = h(n)+g(n)=7 +4 = 11 f(c) = h(n)+g(n)=9+4 = 13 olarak bulunmaktadır. lgoritma bu seçimler arasından değeri küçük olan düğümüne gitmeyi tercih eder. Start F 3 B 4 4 6 C 8 f(c) =9+4 = 13 6 f() =7+4 = 11 D 4 G Goal State Heuristic: h(n) - B 8 C 9 D 4 4 F 8 G 0 47
Yıldız rama lgoritması (* Search lgorithm) Örnek-1 Bu anda kuyrukta (queue) iki düğüm bulunmakta (C ve F) düğümünün komşusu F düğümün değeri hesaplanırsa: f(f) = h(n)+g(n)=13 +8 = 21 f(c) = h(n)+g(n)=9+4 = 13 olarak bulunmaktadır. lgoritma bu aşamada geldiği yoldan vaz geçerek en kısa yolun C düğümü olabileceğini düşünür ve bu düğüme gitmeyi tercih eder. Start 4 C f(c) =9+4 = 13 3 6 B f(f) =13+8 = 21 F 4 6 8 D 4 G Goal State Heuristic: h(n) - B 8 C 9 D 4 4 F 8 G 0 48
Yıldız rama lgoritması (* Search lgorithm) Örnek-1 Bu anda kuyrukta (queue) iki düğüm bulunmakta (F ve D) C düğümünün komşusu D düğümün değeri hesaplanırsa: f(d) = h(n)+g(n)=10 +4 = 14 f(f) = h(n)+g(n)=13+8 = 21 olarak bulunmaktadır. lgoritma bu seçimler arasından değeri küçük olan D düğümüne gitmeyi tercih eder. Start 4 C f(f) =13+8 = 21 F 3 B 4 6 8 6 D 4 f(d) =10+4 = 14 G Goal State Heuristic: h(n) - B 8 C 9 D 4 4 F 8 G 0 49
Yıldız rama lgoritması (* Search lgorithm) Örnek-1 Bu anda kuyrukta (queue) iki düğüm bulunmakta (F ve G) D düğümünün komşusu G düğümün değeri hesaplanırsa: f(g) = h(n)+g(n)=14 + 0 = 14 f(f) = h(n)+g(n)=13+8 = 21 olarak bulunmaktadır. lgoritma bu seçimler arasından değeri küçük olan G düğümüne gitmeyi tercih eder. Start 4 C 3 6 f(f) =13+8 = 21 F B 4 6 8 D 4 G f(g) =14+0 = 14 Goal State Heuristic: h(n) - B 8 C 9 D 4 4 F 8 G 0 50
Yıldız rama lgoritması (* Search lgorithm) Örnek-1 Son durumda hedefe ulaşılmış ve -C-D-G yolu kullanılmıştır. Sonuçta ulaşım için mesafe toplandığında; 4+6+4=14 mesafesi (-C-D-G yolu), diğer alternatif olan 3+4+6+8 =21 değerine göre daha kısadır. * algoritması sezgisel bir algoritma olduğu için bu durumu bilmemektedir. Start 4 C 3 6 B f(f) =13+8 = 21 F 4 6 8 D 4 G Goal State Heuristic: h(n) - B 8 C 9 D 4 4 F 8 G 0 51
f(n)= g(n)+h(n) Yıldız rama lgoritması (* Search lgorithm) Örnek-2 f(c)= 118+329 = 447 f()= 140+253 = 393 f(b)= 75 +374 = 449 lgoritma değeri küçük olan düğümüne gitmeyi tercih eder. 111 D C 97 H 118 G 101 80 I Start 75 140 99 h (n) = sezgisel kuş uçuşu mesafesi F 211 Goal B State Heuristic: h(n) 366 B 374 C 329 D 244 253 F 178 G 193 H 98 I 0 52
Yıldız rama lgoritması (* Search lgorithm) Örnek-2 f(c)= 118+329 = 447 f(b)= 75 +374 = 449 f(g)= 220 +193 = 413 f(f)= 239 +178 = 417 lgoritma değeri küçük olan G düğümüne gitmeyi tercih eder. 111 D C 97 H 118 G 101 80 I Start 75 140 99 h (n) = sezgisel kuş uçuşu mesafesi F 211 Goal B State Heuristic: h(n) 366 B 374 C 329 D 244 253 F 178 G 193 H 98 I 0 53
Yıldız rama lgoritması (* Search lgorithm) Örnek-2 f(c)= 118+329 = 447 f(b)= 75 +374 = 449 f(f)= 239 +178 = 417 f(h)= 317+98 = 415 lgoritma değeri küçük olan H düğümüne gitmeyi tercih eder. 111 D C 97 H 118 G 101 80 I Start 75 140 99 h (n) = sezgisel kuş uçuşu mesafesi F 211 Goal B State Heuristic: h(n) 366 B 374 C 329 D 244 253 F 178 G 193 H 98 I 0 54
Yıldız rama lgoritması (* Search lgorithm) Örnek-2 f(c)= 118+329 = 447 f(b)= 75 +374 = 449 f(f)= 239 +178 = 417 f(i)= 418+0 = 418 * arama algoritması bu aşamada geldiği yoldan vaz geçerek en kısa yolun F düğümünden devam edebileceğini düşünür ve bu yola gitmeyi tercih eder. 111 D C 97 H 118 G 101 80 I Start 75 140 99 h (n) = sezgisel kuş uçuşu mesafesi F 211 Goal B State Heuristic: h(n) 366 B 374 C 329 D 244 253 F 178 G 193 H 98 I 0 55
Yıldız rama lgoritması (* Search lgorithm) Örnek-2 f(c)= 118+329 = 447 f(b)= 75 +374 = 449 f(i)= 418+0 = 418 f(i1)= 450 +0 = 450 * arama algoritması bu aşamada geldiği yoldan vaz geçerek en kısa yolun I düğümünden devam edebileceğini düşünür ve hedefe ulaşılır. 111 D C 97 H 118 G 101 80 I Start 75 140 99 h (n) = sezgisel kuş uçuşu mesafesi F 211 Goal B State Heuristic: h(n) 366 B 374 C 329 D 244 253 F 178 G 193 H 98 I 0 56
* rama Romanya Haritası, maç: rad dan Bükreş e gitmek 57
* rama Romanya Haritası, maç: rad dan Bükreş e gitmek 58
* rama Romanya Haritası, maç: rad dan Bükreş e gitmek 59
* rama Romanya Haritası, maç: rad dan Bükreş e gitmek 60
* rama Romanya Haritası, maç: rad dan Bükreş e gitmek 61
* rama Romanya Haritası, maç: rad dan Bükreş e gitmek 62
* rama Romanya Haritası, maç: rad dan Bükreş e gitmek 63
Hedef: S şehrinden G şehrine gitmek Şekil-1 Farklı şehirler arasındaki yol bağlantısı. Bağlantılardaki değerler Şehirler arasındaki gerçek mesafe Şekil-2 Farklı şehirlerin G şehrine olan kuş uçuşu uzaklığı (sezgisel değer) Hedef S şehrinden G şehrine gitmek 64
Hedef: S şehrinden G şehrine gitmek Durum uzayı rama ağacı 65
[S [ 1,D 2 [D 2,B 3,D 4 [B 3,D 4, 5, 6 [D 4, 5, 6,C 7, 8 [ 5, 6,C 7, 8, 9 [ 6,C 7, 8, 9,B 10 [C 7, 8, 9,B 10,B 11,F 12 [ 8, 9,B 10,B 11,F 12 [ 9,B 10,B 11,F 12,D 13,F 14 [B 10,B 11,F 12,D 13,F 14,B 15, F 16 [B 11,F 12,D 13,F 14,B 15, F 16,C 17, 18 [F 12,D 13,F 14, B 15, F 16,C 17, 18, 19,C 20 [D 13,F 14, B 15, F 16,C 17, 18, 19,C 20,G 21 [F 14,B 15, F 16,C 17, 18, 19,C 20,G 21 [B 15, F 16,C 17, 18, 19,C 20,G 21,G 22 [F 16,C 17, 18, 19,C 20,G 21,G 22,C 23 [C 17, 18, 19,C 20,G 21,G 22,C 23,G 24 [ 18, 19,C 20,G 21,G 22,C 23,G 24 [ 19,C 20,G 21,G 22,C 23,G 24 [C 20,G 21,G 22,C 23,G 24, F 25 [G 21,G 22,C 23,G 24, F 25 BFS={S,D,,F,G} Hedef: S şehrinden G şehrine gitmek nine Öncelikli rama (Breadth-First Search) Harflerin altlarındaki sayılar, indisleri göstermektedir. 66
Hedef: S şehrinden G şehrine gitmek [S [ 1,D 2 [B 3,D 4,D 2, [C 7, 8,D 4,D 2 [ 8,D 4,D 2 [D 13,F 14,D 4,D 2 [F 14,D 4,D 2 [G 22,D 4,D 2 Derinine Öncelikli rama (Depth-first search) DFS={S,,B,,F,G} Harflerin altlarındaki sayılar, indisleri göstermektedir. 67
Hedef: S şehrinden G şehrine gitmek [S 0 [ 3,D 4 [D 4,B 7,D 8 [ 6,B 7,D 8, 9 [B 7, D 8, 9,F 10,B 11 [D 8, 9,F 10,B 11,C 11, 12 [ 9,F 10, 10,B 11,C 11, 12 [F 10, 10, B 11,C 11, 12,B 13 [ 10, B 11,C 11, 12,B 13,G 13 [B 11,C 11, 12,B 13,G 13,F 14,B 15 [C 11, 12,B 13,G 13,F 14,B 15, 15,C 15 [ 12,B 13,G 13,F 14,B 15, 15,C 15 [B 13,G 13,F 14,D 14, B 15, 15,C 15,F 16 [G 13, F 14,D 14, B 15, 15,C 15,F 16,C 17, 18 UCS={S,D,,F,G} Düşük Maliyetli rama (Uniform Cost Search) Harflerin altlarındaki sayılar, S den uzaklıklarını göstermektedir. 68
Hedef: S şehrinden G şehrine gitmek f(n)=g(n)+h(n) * rama [S 0 [D 12.9, 13.4 [ 12.9, 13.4, 19.4 [F 13.0, 13.4,B 17.7, 19.4 [G 13.0, 13.4,B 17.7, 19.4 *={S,D,,F,G} Harflerin altlarındaki sayılar, S den uzaklıkları + G ye uzaklıklarını göstermektedir. 69
S 11+0 S 10.4+3 SD D 8.9+4 S 10.4+3 SDS S 11+8 SD 10.4+9 SD 6.9+9 SDS S 11+8 SD 10.4+9 SD 6.9+9 SS S 11+6 SD D 8.9+8 SB B 6.7+7 SDS S 11+8 SD 10.4+9 SD 6.9+9 SS S 11+6 SD D 8.9+8 SB 10.4+11 SB 6.9+8 SBC C 4+11 SDS S 11+8 SD 10.4+9 SD 6.9+9 SS S 11+6 SD D 8.9+8 SB 10.4+11 SBC C 4+11 SBD D 8.9+13 SBB B 6.7+9 SBF F 3+12 SDS S 11+8 SD 10.4+9 SD 6.9+9 SS S 11+6 SD D 8.9+8 SB 10.4+11 SBD D 8.9+13 SBB B 6.7+9 SBF F 3+12 SBCB B 6.7+15 SDS S 11+8 SD 10.4+9 SD 6.9+9 SS S 11+6 SD D 8.9+8 SB 10.4+11 SBCB B 6.7+15 SBD D 8.9+13 SBB B 6.7+9 SBF 6.9+16 SBFG G 0+15 70 Hedef: S şehrinden G şehrine gitmek * rama