Çözüm tipi: başlangıçtan hedefe sabit bir eylem dizisi
Neleri yapmadık?
Yol tabanlı aramada ne yapamıyoruz?
Yolun önemsiz olduğu optimizasyon problemleri.
Ortamdaki tek ajanın bizimki olmadığı durumlar.
8-Queens: Yeni Tür Bir Problem
n × n tahtaya n vezir yerleştirin; hiçbiri diğerini tehdit etmesin
Başlangıç durumu: Her sütuna rastgele bir vezir koy
Hedef: Saldıran çift sayısı = 0 olan bir konfigürasyon
Hedefe nasıl vardığımız önemsiz; yalnızca son durum önemli
Yerel Arama Fikri
Tek bir mevcut durum tut; yalnızca komşularına bak
Daha iyi bir komşu varsa oraya geç; yolu hatırlama
Frontier yönetimi yok, yol korunmaz
İki büyük avantaj:
Bellek O(1) — yalnızca mevcut durum tutulur
Çok büyük veya sürekli durum uzaylarında çalışabilir
Yerel Aramanın Üç Unsuru
Her yerel arama algoritması üç bileşen üzerine kuruludur:
Başlangıç noktası: Arama nerede başlıyor? Rastgele mi, sezgisel mi?
Komşuluk yapısı: Mevcut durumdan hangi durumlara geçilebilir?
İlerleme algoritması: Komşular arasından hangisine geçileceğini belirleyen kural
Hill climbing, SA ve beam search → aynı çerçevenin farklı ilerleme kuralları
Durum Uzayı Manzarası
Durum uzayını topografik harita olarak düşünün
Her nokta = bir durum · Yükseklik = durumun değeri (objective function)
Amaç: global maksimuma (veya minimuma) ulaşmak
Tuzak
Ne oluyor
Sonuç
Yerel maksimum
Çevresiyle en iyi ama global değil
Ajan takılır
Plato
Tüm komşular eşit değerde
Yön yok
Sırt
Dar çıkıntı boyunca dik eğim
Zigzag, yavaş ilerleme
Hill Climbing — Tepe Tırmanma
Her adımda en iyi komşuya geç; daha iyi komşu yoksa dur
Mevcut durumun yakın komşularının ötesine bakmaz
Geri dönüş mekanizması yok
function HILL-CLIMBING(problem) returns a state
current ← problem.INITIAL-STATE
loop do
neighbor ← highest-valued successor of current
if neighbor.VALUE ≤ current.VALUE then return current
current ← neighbor
Hill Climbing: 8-Queens Üzerinde
h = birbirine saldıran vezir çiftlerinin sayısı · Hedef: h = 0
Başlangıç: h = 17 → en iyi komşu h = 12 → birkaç adımda h = 1
h = 1’de: tek çift sorunlu ama her olası tek-vezir hareketi h’yi artırıyor
Algoritma yerel minimumda takıldı
Hill Climbing: Performans ve Takılma
8-queens’de steepest-ascent: %14 başarı, %86 yerel minimuma takılıyor
Her başarılı deneme ortalama 4 adım
Sideways move izni eklenirse: başarı %14 → %94
Ama maliyet artar: başarılı ortalama 21 adım, başarısız 64 adım
Yerel Maksimumdan Kaçış
Random-restart — merkezde olan strateji:
Takılınca rastgele yeni başlangıç noktası seç, tekrar tırman
p ≈ 0.14 başarı → ortalama 7 deneme → toplamda ~22 adım
Basit, ucuz, güçlü: her başarısız deneme sadece ~4 adım maliyetinde
Diğer varyantlar:
Varyant
Fikir
Stochastic HC
Daha iyi komşular arasından rastgele seç
First-choice HC
İlk bulduğun daha iyi komşuya geç (b çok büyükse pratik)
Simulated Annealing — Motivasyon
Hill climbing: aşağı hamle yapmak istemediği için yerel maksimumda takılıyor
Tamamen rastgele yürüyüş: tam ama son derece verimsiz
SA = hill climbing’in hızlı tırmanması + random walk’ın keşif gücü
Simulated Annealing — Algoritma
function SIMULATED-ANNEALING(problem, schedule) returns a state
current ← problem.INITIAL-STATE
for t = 1 to ∞ do
T ← schedule(t)
if T = 0 then return current
next ← randomly selected successor of current
ΔE ← next.VALUE − current.VALUE
if ΔE > 0 then current ← next
else current ← next only with probability e^(ΔE/T)
SA — Kabul Formülünün Üç Sezgisi
Kötü hamle kabulü: e^(ΔE/T) olasılığıyla
ΔE küçük negatif, T büyük → olasılık yüksek → başta özgürce keşfet
ΔE küçük negatif, T küçük → olasılık ≈ 0 → sonda yalnızca iyileştir
ΔE çok negatif (felaket hamle) → T ne olursa olsun olasılık düşük
SA — Özellikler ve Uygulamaları
Teori: T yeterince yavaş azaltılırsa → global optimuma yaklaşma olasılığı 1’e yaklaşır
Pratik: “Yeterince yavaş” kabul edilemez uzunlukta olabilir; çizelge deneysel ayarlanır
Soğuma çizelgesi kritik: çok hızlı → yerel maks; çok yavaş → çok uzun süre