İçeriğe geç
parazade
Yapay Zeka

Tepe Tırmanma Algoritması Nedir?

İngilizce: Hill Climbing

Yayın: · Son güncelleme:

Tepe Tırmanma Algoritması Nedir? Kısaca

Tepe tırmanma algoritması (hill climbing), mevcut çözümden başlayıp her adımda daha iyi bir komşu çözüme geçen ve daha iyi komşu kalmadığında duran basit bir yerel arama ve optimizasyon yöntemidir.

Tepe Tırmanma Algoritması nedir?
İçindekiler
  1. Tepe tırmanma algoritması nedir?
  2. Nasıl çalışır?
  3. Zayıf yönleri ve çözümleri

Tepe tırmanma algoritması (hill climbing), bir çözümü küçük değişikliklerle adım adım iyileştiren yerel arama yöntemidir. Adı şu benzetmeden gelir: Sisli bir dağda zirveye çıkmak isteyen biri, etrafını göremediği için her adımda yalnızca en dik yokuş yukarı yönü seçer ve artık yukarı giden bir yön kalmadığında durur.

Tepe tırmanma algoritması nedir?

Algoritma bir başlangıç çözümüyle başlar ve bu çözümün "komşularını", yani küçük değişikliklerle elde edilen alternatifleri inceler. Daha iyi bir komşu varsa ona geçer. Bu döngü, hiçbir komşu mevcut çözümden daha iyi olmayana kadar sürer. Bellek ihtiyacı çok düşüktür, çünkü yalnızca mevcut çözümü saklar.

Nasıl çalışır?

  1. Bir başlangıç çözümü seç ve kalitesini ölç.
  2. Komşu çözümleri üret ve değerlendir.
  3. En iyi komşu mevcut çözümden iyiyse ona geç; değilse dur.

Varsayımsal bir örnek: 8 vezir bulmacasında vezirlerin birbirini tehdit etme sayısını azaltmak için her adımda bir veziri, çakışmayı en çok azaltan kareye taşımak bir tepe tırmanma uygulamasıdır.

Zayıf yönleri ve çözümleri

  • Yerel tepe: Algoritma, en yüksek zirve olmayan küçük bir tepede takılabilir.
  • Düzlük: Komşuların hepsi aynı değerdeyse hangi yöne gideceğini bilemez.
  • Sırt: Dar sırtlarda ilerlemek zorlaşır.

Bu sorunları hafifletmek için algoritma farklı başlangıç noktalarından tekrar tekrar çalıştırılabilir (rastgele yeniden başlatma) ya da kötü hamlelere kontrollü izin veren benzetimli tavlama kullanılabilir. Tepe tırmanma, gradyan inişi ile de akrabadır: biri yukarı, diğeri hatayı azaltmak için aşağı doğru ilerler.

Sıkça Sorulan Sorular

Tepe tırmanma algoritması neden yerel tepede takılır?

Çünkü yalnızca bulunduğu noktanın yakın çevresine bakar. Tüm komşular daha kötüyse, uzakta daha yüksek bir zirve olsa bile bunu göremez ve durur.

Tepe tırmanma hangi durumlarda tercih edilir?

Hızlı ve az bellekle makul bir çözüm gerektiğinde, ya da daha karmaşık yöntemlerin içinde yerel iyileştirme adımı olarak tercih edilir.

İlgili terimler

Benzetimli Tavlama(Simulated Annealing)Benzetimli tavlama (simulated annealing), metallerin ısıtılıp yavaşça soğutulmasından esinlenen ve başta daha kötü çözümleri de belirli bir olasılıkla kabul ederek yerel tuzaklardan kaçmaya çalışan olasılıksal bir optimizasyon yöntemidir.Yerel Minimum(Local Minimum)Yerel minimum, bir fonksiyonun yakın çevresindeki tüm noktalardan daha düşük değer aldığı, ancak fonksiyonun tamamındaki en düşük nokta olmayabilen noktadır. En düşük noktanın kendisine küresel minimum denir.Sezgisel Yöntem(Heuristic)Sezgisel yöntem (heuristic), bir problemi kesin ve en iyi çözümü garanti etmeden, deneyime dayalı kestirme kurallar ya da tahminler kullanarak makul sürede yeterince iyi bir sonuca ulaştıran problem çözme yaklaşımıdır.Gradyan İnişi(Gradient Descent)Gradyan inişi, bir modelin kayıp fonksiyonunu en aza indirmek için parametreleri, kaybın en hızlı azaldığı yönde (gradyanın tersine) küçük adımlarla tekrar tekrar güncelleyen optimizasyon yöntemidir.Algoritma(Algorithm)Algoritma, belirli bir problemi çözmek ya da bir görevi yerine getirmek için izlenen, sırası ve sonu belli, açık ve uygulanabilir adımlar dizisidir. Bilgisayar programları ve yapay zekâ sistemleri algoritmalar üzerine kuruludur.Harf Çevirisi(Transliteration)Harf çevirisi (transliterasyon), bir yazı sistemindeki metnin, anlamı çevrilmeden başka bir yazı sisteminin harfleriyle yazılmasıdır. Örneğin Kiril alfabesiyle yazılmış bir ismin Latin harflerine aktarılması harf çevirisidir.