Not 04 · Hafta 2 · 8 Ekim 2026 · Bölüm 3/3

SLS Yöntemlerine Genel Bakış

İteratif iyileştirme ilk yerel minimumda durur. Bu not, oradan kaçmak için geliştirilen yöntemleri sırayla ele alır: kötüleştiren adımlara izin veren basit yöntemler, onların melezleri ve popülasyon tabanlı yaklaşım.

Bu notta
  1. Pivot kuralları
  2. “Basit” SLS yöntemleri
  3. Randomised II
  4. Probabilistic II
  5. Benzetimli tavlama
  6. Tabu arama
  7. Melez yöntemler
  8. Yinelemeli yerel arama
  9. Popülasyon tabanlı yöntemler
  10. Karşılaştırma
  11. Özet

İteratif iyileştirmede pivot kuralları

İteratif iyileştirmede (II) her adımda iyileştiren komşuyu seçmek için farklı mekanizmalar, yani pivot kuralları (pivoting rules) kullanılabilir.

En iyisini seç

Best improvement

Diğer adlarıyla gradyan inişi, açgözlü tepe tırmanma. En çok iyileştiren komşuyu seçer.

Not: her adımda bütün komşuların değerlendirilmesini gerektirir.

İlk bulduğunu seç

First improvement

Komşuları sabit bir sırada değerlendirir, karşılaştığı ilk iyileştiren adımı seçer.

Not: best improvement'tan çok daha verimli olabilir; değerlendirme sırası başarımı önemli ölçüde etkiler.

n1n2n3g = 8n4n5n6n7n8g(s) = 10First improvement3 komşu değerlendirildi, ilk iyileştiren seçildideğerlendirilmedin1n2n3n4n5n6g = 5n7n8g(s) = 10Best improvement8 komşunun hepsi değerlendirildi, en iyisi seçildi
Şekil 1. Mevcut çözümde \(g(s) = 10\); sekiz komşu \(n_1, \dots, n_8\) sırasıyla değerlendiriliyor. First improvement üçüncü komşuda 10'dan küçük bir değer (8) görünce durur; kalan beş komşuya hiç bakmaz. Best improvement sekizini de değerlendirir ve en iyisini (5) seçer. Biri adım başına daha ucuz, öteki adım başına daha çok iyileşme sağlar.
First improvement, bir adım (örnek)
for each s′ ∈ N(s) // sabit (ya da rastgele karıştırılmış) bir sırada
    if g(s′) < g(s) then return s′
return s                          // iyileştiren komşu yok: yerel minimum

Sözde kod slaytta yok; iki kural arasındaki farkı göstermek için eklendi.

“Basit” SLS yöntemleri

Hedef: verilen değerlendirme fonksiyonunun yerel minimumlarından etkili biçimde kaçmak.

Genel yaklaşım: komşuluk sabit tutulur, ama adım fonksiyonu kötüleştiren adımlara izin verir.

Bu ailenin üyeleri: rastgeleleştirilmiş iteratif iyileştirme (RII), olasılıksal iteratif iyileştirme (PII), benzetimli tavlama (SA), tabu arama (TS) ve dinamik yerel arama. Dinamik yerel arama slaytlarda yalnızca adıyla geçiyor: komşuluğu değil, değerlendirme fonksiyonunu arama sırasında değiştirir (örneğin takılınan yerel minimumdaki bileşenlere ceza ekler).

Rastgeleleştirilmiş iteratif iyileştirme (RII)

Ana fikir: her adımda, sabit bir olasılıkla, iteratif iyileştirme adımı yerine bilgisiz bir rastgele yürüyüş adımı at.

Randomised Iterative Improvement
s ← başlangıç aday çözümü
while sonlandırma koşulu sağlanmadı do
    with probability wp:
        s′ ← N(s)'den tekdüze rastgele bir komşu
    otherwise:
        s′ ← g(s′) < g(s) olan bir komşu;
             böyle bir komşu yoksa g(s′)'yü en küçük yapan komşu
    s ← s′

\(wp\) (walk probability) burada çeşitlendirmeyi ayarlayan tek düğmedir: \(wp = 0\) saf II'dir (yalnızca yoğunlaştırma), \(wp = 1\) saf rastgele yürüyüştür (yalnızca çeşitlendirme).

s1: 7s2: 6s3: 4s4: 3s5: 4s6: 6s7: 5s8: 3s9: 2s10: 1s11: 3s12: 5yerel min.wp olasılıkla rastgele adım(yokuş yukarı olabilir)global min.iyileştiren adımlars1s2s3s4s5s6s7s8s9s10s11s12
Şekil 2. Bir RII yörüngesi. Yeşil oklar iyileştiren adımlardır ve aramayı \(s_4\)'teki yerel minimuma indirir; saf II burada dururdu. RII ise \(wp\) olasılıkla rastgele bir komşu seçer: kırmızı iki adım rastgele düşmüş ve aramayı yokuş yukarı \(s_6\)'ya taşımıştır. Oradan iyileştiren adımlar başka bir vadiye, global minimum \(s_{10}\)'a iner. Yörünge örnek amaçlı seçildi; \(s_6\)'dan geri \(s_5\)'e de inilebilirdi.

Olasılıksal iteratif iyileştirme (PII)

Ana fikir: kötüleştiren adımları, değerlendirme fonksiyonundaki kötüleşmeye bağlı bir olasılıkla kabul et: kötüleşme büyüdükçe olasılık küçülür.

Tipik bir seçim, sabit bir \(T\) sıcaklığıyla Metropolis kuralıdır: rastgele bir komşu önerilir ve aşağıdaki SA bölümündeki olasılıkla kabul edilir. Sıcaklık sabit kalırsa bu PII'dir; sıcaklık zamanla düşürülürse benzetimli tavlama olur.

Benzetimli tavlama (simulated annealing)

Ana fikir: PII'de kötüleştiren hamleleri kabul etme olasılığını belirleyen sıcaklık parametresini bir soğutma planına (annealing / cooling schedule) göre değiştir.

Yöntem, metallerin fiziksel tavlanmasından esinlenir:

Fiziksel tavlamaOptimizasyon
Fiziksel sistemin durumlarıAday çözümler
Termodinamik enerjiDeğerlendirme fonksiyonu
Temel durumlar (ground states)Global optimal çözümler
Fiziksel sıcaklık\(T\) parametresi

Fiziksel süreçte (örneğin metallerin tavlanmasında) kusursuz temel durumlara, sıcaklık çok yavaş düşürülerek ulaşılır.

Simulated Annealing
s ← başlangıç aday çözümü
T ← soğutma planına göre başlangıç sıcaklığı
while sonlandırma koşulu sağlanmadı do
    s′ ← öneri mekanizmasıyla olasılıksal olarak seçilen bir komşu
    if s′ olasılıksal kabul ölçütünü sağlıyorsa (T'ye bağlı) then
        s ← s′
    T ← soğutma planına göre güncelle

İki aşamalı adım fonksiyonu

SA'nın adımı iki parçadan oluşur: bir öneri mekanizması (çoğunlukla \(N(s)\)'den tekdüze rastgele seçim) ve bir kabul ölçütü (çoğunlukla Metropolis koşulu). Minimizasyonda \(\Delta = g(s') - g(s)\) olmak üzere Metropolis koşulu:

\[ P(s' \text{ kabul edilir}) = \begin{cases} 1 & \Delta \le 0 \\ e^{-\Delta / T} & \Delta \gt 0 \end{cases} \]
Kötüleştiren bir adımın kabul olasılığı \(e^{-\Delta/T}\)
Sıcaklık \(T\)\(\Delta = 1\)\(\Delta = 5\)
100,9050,607
10,3680,0067
0,10,000045≈ 1,9 × 10−22

Sıcakken küçük ve büyük kötüleşmeler sık kabul edilir; arama geniş bir bölgeyi dolaşır (çeşitlendirme). Soğudukça kötüleşmeler neredeyse hiç kabul edilmez ve SA iteratif iyileştirmeye dönüşür (yoğunlaştırma).

0,000,250,500,751,000246810kötüleşme Δ = g(s′) − g(s)kabul olasılığı e−Δ/TT = 10, Δ = 0: 1,000T = 10, Δ = 1: 0,905T = 10, Δ = 2: 0,819T = 10, Δ = 3: 0,741T = 10, Δ = 4: 0,670T = 10, Δ = 5: 0,607T = 10, Δ = 6: 0,549T = 10, Δ = 7: 0,497T = 10, Δ = 8: 0,449T = 10, Δ = 9: 0,407T = 10, Δ = 10: 0,368T = 10T = 3, Δ = 0: 1,000T = 3, Δ = 1: 0,717T = 3, Δ = 2: 0,513T = 3, Δ = 3: 0,368T = 3, Δ = 4: 0,264T = 3, Δ = 5: 0,189T = 3, Δ = 6: 0,135T = 3, Δ = 7: 0,097T = 3, Δ = 8: 0,069T = 3, Δ = 9: 0,050T = 3, Δ = 10: 0,036T = 3T = 1, Δ = 0: 1,000T = 1, Δ = 1: 0,368T = 1, Δ = 2: 0,135T = 1, Δ = 3: 0,050T = 1, Δ = 4: 0,018T = 1, Δ = 5: 0,007T = 1, Δ = 6: 0,002T = 1, Δ = 7: 0,001T = 1, Δ = 8: 0,000T = 1, Δ = 9: 0,000T = 1, Δ = 10: 0,000T = 1T = 10T = 3T = 1
Şekil 3. Kötüleştiren bir adımın kabul olasılığı, kötüleşme \(\Delta\)'nın ve sıcaklık \(T\)'nin fonksiyonu. \(T = 10\)'da 5 birimlik bir kötüleşme bile %60'ın üzerinde olasılıkla kabul edilir; \(T = 1\)'de 3 birimlik kötüleşmenin şansı %5'in altındadır. Eğrilerin üzerine gelince değerler görünür.

Formül ve tablo slaytta yok; slayt yalnızca “Metropolis koşulu” adını veriyor.

Soğutma planı

Soğutma planı, çalışma süresi \(t\)'yi sıcaklık \(T(t)\)'ye eşleyen fonksiyondur. Üç parçası vardır:

Sonlandırma yüklemi çoğunlukla kabul oranına, yani önerilen adımlara göre kabul edilen adımların oranına dayanır: kabul oranı çok düştüğünde arama fiilen donmuştur.

02,557,5100100200300400500600her basamak L = 50 adım sürer,sonra T := α · T (α = 0,85)adım tsıcaklık T(t)
Şekil 4. Geometrik soğutma: \(T_0 = 10\), her sıcaklıkta \(L = 50\) adım, sonra \(T := 0{,}85 \cdot T\). Sıcaklık basamak basamak düşer ve her basamak bir öncekinin %85'idir; bu yüzden başta hızlı, sonra giderek yavaş düşer.

Gerçek bir koşu

Aşağıdaki grafik, rastgele yerleştirilmiş 40 şehirlik bir TSP örneğinde benzetimli tavlamanın bir koşusudur. Öneri mekanizması rastgele bir 2-opt hamlesi, kabul ölçütü Metropolis; \(T_0 = 40\), her 400 iterasyonda \(T := 0{,}93 \cdot T\).

5001.0001.5002.0002.500tur uzunluğuen iyi: 518en iyi bulunanmevcut tur02040sıcaklık T04.0008.00012.00016.00020.00024.000iterasyonsıcakken: kötüleşmeler sık kabulsoğudukça: neredeyse yalnız iyileşme
Şekil 5. Üstte tur uzunluğu, altta aynı iterasyonlardaki sıcaklık. Başta sıcaklık yüksekken mevcut tur (gri) çok dalgalanır, çünkü kötüleştiren hamlelerin çoğu kabul edilir. Sıcaklık düştükçe dalgalanma söner ve mevcut tur en iyi bulunan turla (yeşil) birleşir. Tur uzunluğu rastgele başlangıçtaki yaklaşık 2.090'dan 518'e iniyor.

Yakınsama sonucu

Belirli koşullar altında (aşırı yavaş soğutma), SA'nın yeterince uzun her yörüngesinin optimal bir çözümde biteceği garanti edilir [Geman ve Geman, 1984; Hajek, 1988].

Slaytta kaynak “Hajek, 1998” olarak yazılmış; ilgili makale B. Hajek, “Cooling schedules for optimal annealing”, Mathematics of Operations Research, 1988.

Tabu arama

Ana fikir: yerel minimumlardan kaçmak için arama geçmişinin bazı yönlerini, yani belleği kullan.

Basit tabu arama:

Tabu Search
s ← başlangıç aday çözümü
while sonlandırma ölçütü sağlanmadı do
    N′ ← s'nin tabu olmayan komşuları
    s′ ← N′ içindeki en iyi aday çözüm     // iyileştirmese bile
    s′'ye göre tabu niteliklerini güncelle
    s ← s′

TSP'de 2-opt kullanan bir tabu aramada tipik bir tabu niteliği şudur: bir hamlede çıkarılan iki kenarın, sonraki \(tt\) adım boyunca tura geri eklenmesi yasaktır. Böylece arama bir önceki yerel minimuma hemen geri dönemez.

TSP örneği slaytta yok; tabu niteliği kavramını somutlaştırmak için eklendi.

s1: 7s2: 5s3: 4s4: 5s5: 6s6: 8s7: 7s8: 5s9: 3s10: 2s11: 3s12: 5s13: 6s14: 8II burada dururtabutabus4'teyken tabu listesi: {s2, s3}, tt = 2geri dönüş tabu: yokuş yukarı devamen iyi bulunans1s2s3s4s5s6s7s8s9s10s11s12s13s14
Şekil 6. Tabu süresi \(tt = 2\) olan basit bir tabu arama: son iki konum tabudur. \(s_3\) bir yerel minimumdur ve II orada durur. Tabu aramada \(s_3\)'ten sonra \(s_2\) tabu olduğu için tek izinli komşu \(s_4\)'tür; arama daha kötü olmasına rağmen oraya gider (kırmızı oklar). Geri dönüş hep tabu olduğundan tepeyi aşar ve \(s_{10}\)'daki daha iyi minimuma iner. En iyi bulunan çözüm ayrıca saklanır.

Tabu süresinin seçimi

Tabu aramanın başarımı büyük ölçüde tabu süresi \(tt\)'nin ayarına bağlıdır:

tt çok düşük

Arama yerel minimumlardan kaçamadığı için durgunlaşır; aynı konumlar arasında döngüye girer.

tt çok yüksek

Arama yolu aşırı kısıtlanır, izin verilen komşuluklar çok küçülür ve arama etkisizleşir.

Orta ve uzun vadeli bellek

Ek yoğunlaştırma ya da çeşitlendirme için orta veya uzun vadeli bellek kullanılarak daha fazla iyileşme sağlanabilir. Örnekler:

Tabu arama algoritmaları SAT ve MAX-SAT, kısıt sağlama problemi (CSP) ve birçok çizelgeleme problemi dahil pek çok kombinatoryal problemde en iyi yöntemler arasındadır. Uygulamalarda kritik iki etken: komşuluk ilişkisinin seçimi ve aday çözümlerin verimli değerlendirilmesi (önbellekleme ve artımlı güncelleme).

Melez SLS yöntemleri

“Basit” SLS yöntemlerini birleştirmek çoğu zaman başarımı ciddi biçimde artırır. Basit örnekler:

Yinelemeli yerel arama (ILS)

Ana fikir: iki tür SLS adımı kullan:

Ayrıca bir kabul ölçütü, çeşitlendirme ile yoğunlaştırma arasındaki dengeyi denetler.

Iterated Local Search
s ← başlangıç aday çözümü
s ← alt yerel arama(s)
while sonlandırma ölçütü sağlanmadı do
    r ← s
    s ← pertürbasyon(s)
    s ← alt yerel arama(s)
    kabul ölçütüne göre s'yi koru ya da s ← r'ye geri dön
ILS'nin bir yinelemesi: s* yerel minimumundan pertürbasyonla s′ noktasına sıçranır, yerel arama s*′ yerel minimumuna iner. s* s′ s*′ pertürbasyon yerel arama global minimum
Şekil 7. Bir ILS yinelemesi. Yerel minimum \(s^*\)'dan pertürbasyonla tepeyi aşan bir \(s'\) noktasına sıçranır; alt yerel arama \(s'\)'den yeni yerel minimum \(s^{*\prime}\)'ya iner. Kabul ölçütü, örneğin “daha iyi olanı tut”, \(s^{*\prime}\)'yu kabul eder çünkü daha derindir. Sonraki yinelemeler aynı şekilde global minimuma doğru ilerleyebilir.

Alt yerel arama

Pertürbasyon mekanizması

Zayıf pertürbasyon

Sonraki yerel arama evresi kısa sürer; ama mevcut yerel minimuma geri dönme riski vardır.

Güçlü pertürbasyon

Yerel minimumlardan daha etkili kaçar; ama rastgele yeniden başlatmanın sakıncalarını taşıyabilir.

Gelişmiş ILS algoritmaları, pertürbasyonun türünü ve gücünü arama sırasında uyarlamalı olarak değiştirebilir.

Kabul ölçütleri

ÖlçütSonuç
Her zaman iki aday çözümden daha iyisini kabul etILS, alt yerel aramanın ulaştığı yerel optimumlar uzayında iteratif iyileştirme yapar.
Her zaman iki aday çözümden daha yenisini kabul etILS, yerel optimumlar uzayında rastgele yürüyüş yapar.
İkisi arasında, Metropolis ölçütüyle seçAra davranış; örneğin Large Step Markov Chains [Martin ve diğ., 1991].
Arama geçmişini hesaba katan gelişmiş ölçütlerÖrneğin ara sıra şimdiye kadarki en iyi çözüme geri dönmek.
Neden ILS?

Hazır bir basit SLS uygulaması varsa ILS'yi gerçekleştirmek genellikle kolaydır ve TSP dahil pek çok kombinatoryal problemde en iyi bilinen sonuçları verir. Dönem projesinde “var olan bir yerel aramaya pertürbasyon ve kabul ölçütü eklemek”, algoritma değişikliği yönü için doğal bir başlangıçtır.

Popülasyon tabanlı SLS yöntemleri

Şimdiye kadarki SLS yöntemleri her adımda verilen problem örneğinin tek bir aday çözümüyle çalışır. Doğrudan bir genişletme: bunun yerine aday çözümlerden oluşan bir popülasyon (küme) kullanmak.

Evrimsel algoritmalar, karınca kolonisi optimizasyonu ve parçacık sürüsü gibi yöntemler 11. haftada (popülasyon tabanlı üst-sezgiseller) işlenecek.

Yöntemlerin karşılaştırması

YöntemKötüleştiren adımBellekAna parametrelerYerel minimumdan kaçış
IIYokYokPivot kuralıYok; ilk yerel minimumda durur
RII\(wp\) olasılıkla rastgele adımYok\(wp\)Rastgele yürüyüş adımları
PIIKötüleşme büyüdükçe daha az olasıYok\(p(g, s)\)Olasılıksal kabul
SAMetropolis, \(T\)'ye bağlıYalnızca \(T\)\(T_0\), \(\alpha\), sıcaklık başına adımSıcakken serbest, soğudukça kısıtlı
TSEvet; en iyi izinli komşuTabu nitelikleriTabu süresi \(tt\), aspirasyonYakın geçmişe dönüşü yasaklamak
ILSPertürbasyon ve kabul ölçütüyleİsteğe bağlıPertürbasyon gücü, kabul ölçütüYerel minimumlar arasında sıçramak

Tablo, slaytlardaki yöntemleri yan yana koymak için hazırlandı.

Özet