🔥 Tavlama Benzetimi Nedir?
Tavlama Benzetimi (Simulated Annealing - SA), katı bir malzemenin önce belirli bir sıcaklığa kadar ısıtılıp sonra soğutulması yoluyla malzemenin kalitesinin artırılmasını sağlayan fiziksel tavlama sürecinin taklidine dayanmaktadır.
🔑 Temel Kavramlar
- Sıcaklık (T): Sistemin enerji seviyesi, algoritmanın keşif yeteneğini kontrol eder
- Enerji (E): Amaç fonksiyonunun değeri, minimize edilmeye çalışılır
- Soğutma: Sıcaklığın yavaş ve kontrollü azaltılması (tavlama)
- Yerel Komşuluk: Mevcut çözümün yakınındaki çözüm uzayı
- Kabul Olasılığı: Kötü çözümlerin kabul edilme şansı
⚡ Algoritmanın Mantığı
Tavlama benzetimi, genel bir minimum noktası bulmak amacıyla problemin farklı zamanlarındaki sonuçlarını elde ederek bu sonuçlardan iyi olan değere doğru hareket edip birden fazla çözümü test ederek en iyi sonucu bulmaya yardımcı olan bir optimizasyon yöntemidir.
📐 Matematiksel Formül
Boltzmann Dağılımı: Daha iyi olmayan çözümün kabul edilme olasılığı:
P = e-ΔE/T
Burada:
- ΔE: Enerji farkı = E(yeni) - E(mevcut)
- T: Sistemin mevcut sıcaklığı
- P: Kabul olasılığı (0-1 arası)
Kural: ΔE < 0 ise (iyileşme) → Her zaman kabul et
ΔE ≥ 0 ise (kötüleşme) → P olasılığıyla kabul et
📊 SA Algoritma Adımları
- Başlatma:
- Rastgele başlangıç çözümü x0 oluştur
- Başlangıç sıcaklığı T0'ı belirle (yüksek)
- Soğutma oranı α'yı belirle (0.8-0.99 arası)
- İterasyon:
- Mevcut çözümün komşuluğundan yeni çözüm üret
- Enerji farkını hesapla: ΔE = E(yeni) - E(mevcut)
- Kabul/Red:
- Eğer ΔE < 0 → Yeni çözümü kabul et
- Eğer ΔE ≥ 0 → P = e-ΔE/T olasılığıyla kabul et
- Soğutma:
- Belirli sayıda iterasyondan sonra: T = α × T
- Sıcaklık azaldıkça kötü çözüm kabul olasılığı düşer
- Durdurma: T minimum sıcaklığa ulaşınca veya maksimum iterasyon
🎯 Soğutma Programları
- Doğrusal: T = T - ΔT
- Geometrik (En yaygın): T = α × T (α: 0.8-0.99)
- Logaritmik: T = T0 / log(1 + k)
- Üstel: T = T0 × αk
✅ SA'nın Avantajları
- Lokal minimumlardan kaçabilir
- Basit ve anlaşılır yapı
- Çok çeşitli problemlere uygulanabilir
- Kombinatoryal optimizasyonda başarılı
- Teorik olarak global optimuma yakınsama garantisi
⚠️ Dezavantajları
- Parametre seçimi kritik (T0, α, durdurma kriteri)
- Yavaş yakınsama olabilir
- Çok yavaş soğutma gerekir (zaman alıcı)
- Çok hızlı soğutma yerel minimumda takılabilir
🔧 Uygulama Alanları
- Gezgin satıcı problemi (TSP)
- Çizelgeleme problemleri
- VLSI tasarımı
- Yerleşim problemleri
- Graf renklendirme
- Protein katlanması
🆚 Diğer Yöntemlerle Karşılaştırma
- Hill Climbing vs SA: HC her zaman iyileşme arar, SA kötü çözümleri de kabul edebilir
- GA vs SA: GA popülasyon kullanır, SA tek çözüm üzerinde çalışır
- Tabu Search vs SA: Tabu hafıza kullanır, SA olasılıksal kabul kullanır