tag meta-sezgisel
Genetic Algorithm (Genetik Algoritma)
Bu sayfada meta-sezgisel (Genetic Algorithm (Genetik Algoritma)) etiketi ile işaretlenmiş 4 yapay zeka kavramını bulabilirsiniz.
Genetik Algoritma (GA), biyolojik evrim ilkelerini — doğal seçilim, çaprazlama (crossover) ve mutasyon — bilgisayar optimizasyon problemlerine uygulayan, John Holland tarafından 1960'larda geliştirilen ve 1975 yılında "Adaptation in Natural and Artificial Systems" adlı kitabıyla sistematize edilen bir meta-sezgisel (metaheuristic) arama yöntemidir. Algoritma, her biri bir çözüm adayını temsil eden bireylerden oluşan bir popülasyonla başlar. Her birey, çözümün kodlanmış biçimi olan bir "kromozom" ile temsil edilir — geleneksel uygulamalarda bu ikili bit dizisidir, ancak modern uygulamalarda gerçel sayı vektörleri, permütasyonlar veya ağaç yapıları da kullanılır. Algoritmanın çekirdek döngüsü dört adımdan oluşur: (1) Uygunluk değerlendirmesi — her bireyin amaç fonksiyonuna göre puanlandırılması; (2) Seçim — yüksek uygunluklu bireylerin ebeveyn olarak tercih edilmesi (rulet tekerleği, turnuva veya sıralama seçimi gibi yöntemlerle); (3) Çaprazlama — iki ebeveynin kromozomlarının belirli bir noktadan birleştirilerek yavru üretilmesi; (4) Mutasyon — düşük olasılıkla rastgele gen değişikliği yapılarak yerel minimumdan kaçınma. Nesiller boyunca tekrar eden bu döngü, popülasyonu giderek daha iyi çözümlere doğru yönlendirir. Genetik Algoritmalar, gradyan tabanlı optimizasyon yöntemlerinin başarısız olduğu ayrık, çok modlu, çok boyutlu ve gürültülü problem uzaylarında güçlüdür. Geleneksel arama yöntemlerinin tıkandığı NP-zor problemlerde (gezgin satıcı problemi, çizelgeleme, ağ tasarımı) pratik çözümler üretir. Makine öğrenmesindeki uygulamaları arasında hiperparametre optimizasyonu, sinir ağı mimarisi arama (NAS — Neural Architecture Search) ve özellik seçimi öne çıkar. AutoML sistemleri, en iyi model konfigürasyonunu bulmak için evrimsel stratejileri kullanır. Bunun yanı sıra mühendislik tasarımı (aerodinamik optimizasyon, malzeme bilimi), lojistik (rota planlaması, kapasite optimizasyonu) ve biyoinformatik (protein katlama, gen ifadesi analizi) alanlarında yaygın kullanım bulur. Pratik uygulama için Python'da DEAP (Distributed Evolutionary Algorithms in Python) ve PyGAD kütüphaneleri kapsamlı API sunmaktadır. Genetik Programlama (GP), GA'nın bir uzantısı olup bireyleri sabit uzunluklu kodlar yerine program ağaçları olarak temsil eder ve sembolik regresyon gibi görevlerde kullanılır. Diferansiyel Evrim (Differential Evolution) ise sürekli uzaylar için optimize edilmiş yakın akraba bir yöntemdir.
Genetic Algorithm (Genetik Algoritma)
Genetik Algoritma (GA), biyolojik evrim ilkelerini — doğal seçilim, çaprazlama (crossover) ve mutasyon — bilgisayar optimizasyon problemlerine uygulayan, John Holland tarafından 1960'larda geliştirilen ve 1975 yılında "Adaptation in Natural and Artificial Systems" adlı kitabıyla sistematize edilen bir meta-sezgisel (metaheuristic) arama yöntemidir. Algoritma, her biri bir çözüm adayını temsil eden bireylerden oluşan bir popülasyonla başlar. Her birey, çözümün kodlanmış biçimi olan bir "kromozom" ile temsil edilir — geleneksel uygulamalarda bu ikili bit dizisidir, ancak modern uygulamalarda gerçel sayı vektörleri, permütasyonlar veya ağaç yapıları da kullanılır. Algoritmanın çekirdek döngüsü dört adımdan oluşur: (1) Uygunluk değerlendirmesi — her bireyin amaç fonksiyonuna göre puanlandırılması; (2) Seçim — yüksek uygunluklu bireylerin ebeveyn olarak tercih edilmesi (rulet tekerleği, turnuva veya sıralama seçimi gibi yöntemlerle); (3) Çaprazlama — iki ebeveynin kromozomlarının belirli bir noktadan birleştirilerek yavru üretilmesi; (4) Mutasyon — düşük olasılıkla rastgele gen değişikliği yapılarak yerel minimumdan kaçınma. Nesiller boyunca tekrar eden bu döngü, popülasyonu giderek daha iyi çözümlere doğru yönlendirir. Genetik Algoritmalar, gradyan tabanlı optimizasyon yöntemlerinin başarısız olduğu ayrık, çok modlu, çok boyutlu ve gürültülü problem uzaylarında güçlüdür. Geleneksel arama yöntemlerinin tıkandığı NP-zor problemlerde (gezgin satıcı problemi, çizelgeleme, ağ tasarımı) pratik çözümler üretir. Makine öğrenmesindeki uygulamaları arasında hiperparametre optimizasyonu, sinir ağı mimarisi arama (NAS — Neural Architecture Search) ve özellik seçimi öne çıkar. AutoML sistemleri, en iyi model konfigürasyonunu bulmak için evrimsel stratejileri kullanır. Bunun yanı sıra mühendislik tasarımı (aerodinamik optimizasyon, malzeme bilimi), lojistik (rota planlaması, kapasite optimizasyonu) ve biyoinformatik (protein katlama, gen ifadesi analizi) alanlarında yaygın kullanım bulur. Pratik uygulama için Python'da DEAP (Distributed Evolutionary Algorithms in Python) ve PyGAD kütüphaneleri kapsamlı API sunmaktadır. Genetik Programlama (GP), GA'nın bir uzantısı olup bireyleri sabit uzunluklu kodlar yerine program ağaçları olarak temsil eder ve sembolik regresyon gibi görevlerde kullanılır. Diferansiyel Evrim (Differential Evolution) ise sürekli uzaylar için optimize edilmiş yakın akraba bir yöntemdir.
Karınca Kolonisi Optimizasyonu (ACO) (Karınca Kolonisi Optimizasyonu)
Karınca Kolonisi Optimizasyonu (ACO), Marco Dorigo tarafından 1992 yılındaki doktora tezinde geliştirilen, karıncaların feromon izi bırakarak yiyecek kaynağına en kısa yolu bulma davranışını matematiksel olarak modelleyen meta-sezgisel bir optimizasyon algoritmasıdır. Biyolojik karıncalar, kısa güzergahlarda daha sık geçiş yaptığından bu yollarda feromon birikimi artar; uzun yollardaki feromon ise zamanla buharlaşarak solar. Bu olasılıksal mekanizma, koloniyi zamanla global optimuma yakınsatır. Algoritmada her iterasyonda bir grup sanal "yapay karınca" çözüm uzayını keşfeder. Her karınca, mevcut feromon yoğunluğunu ve sezgisel bilgiyi (örn. kenar uzunluğunu) birleştiren stokastik bir kuralla hareket kararları verir. İterasyon tamamlandığında iyi çözümler bulan karıncalar feromonlarını biriktirir; tüm güzergahlardaki feromonlar ρ (rho) buharlaşma katsayısıyla kısmi olarak azalır. Birikim ve buharlaşma dengesi, hem umut verici bölgeleri yoğun araştırmayı hem de yeni alanları keşfetmeyi olanaklı kılar. Temel varyantlar arasında Ant Colony System (ACS, 1997) yerel feromon güncellemesi ve yalnızca küresel en iyi yolun güncellenmesiyle daha hızlı yakınsama sunar; MAX-MIN Ant System (MMAS) feromon değerlerini belirlenen alt ve üst sınırlar arasında tutarak erken yakınsamayı engeller; Rank-Based AS (ASrank) ise yalnızca sıralı en iyi karıncaların feromon bırakmasına izin verir. ACO, Gezgin Satıcı Problemi (TSP), Araç Rota Planlama (VRP), makine çizelgeleme, internet paketi yönlendirme (AntNet protokolü) ve protein katlama gibi kombinatoryal optimizasyon görevlerinde yaygın olarak kullanılır. Hibrit ACO-Derin Öğrenme modelleri büyük ölçekli lojistik ve enerji şebekesi optimizasyonunda aktif araştırma konusudur. Marco Dorigo, ACO ve sürü zekası alanındaki katkılarıyla 2022 IEEE Frank Rosenblatt Ödülü'nü almıştır. Güçlü yanları arasında dinamik ve çok modlu arama uzaylarında etkinliği, paralel uygulamaya uygunluğu ve yerel optimum tuzaklarından çıkma kapasitesi yer alır. Sınırlılıkları ise sürekli fonksiyon optimizasyonuna kısıtlı uyumu ve α, β, ρ hiperparametrelerinin problem bazında hassas ayar gerektirmesidir.
Tabu Arama (Tabu Arama)
Tabu Arama (Tabu Search), Fred Glover tarafından 1986 yılında geliştirilen ve 1989'da ORSA Journal on Computing'de yayımlanan meta-sezgisel bir optimizasyon algoritmasıdır. Kombinatoryal optimizasyon problemlerinde yerel aramayı bir üst düzeye taşıyan bu yaklaşım, gezgin satıcı problemi (TSP), iş çizelgeleme ve araç rotalama gibi NP-zor problemlerde kaliteli çözümler üretmektedir. Algoritmanın çekirdeğinde tabu listesi mekanizması yatar. Her adımda mevcut çözümün komşuları değerlendirilir ve tabu listesinde yer almayan en iyi komşuya geçilir. Bu adım anlık çözüm kalitesini geçici olarak düşürebilir; ancak döngüsel arama tuzağının önüne geçer. Tabu listesinin uzunluğu (tabu tenure, genellikle 5–20 adım) kritik bir hiperparametredir: kısa liste çevik fakat döngüye açık, uzun liste ise aşırı kısıtlayıcı olabilir. Reaktif Tabu Arama varyantı bu dengeyi otomatik yöneterek döngü saptandığında tenure'ü uzatır, çeşitlilik arttığında kısaltır. Algoritma iki tür bellek yapısıyla çalışır. Kısa vadeli bellek (tabu listesi) son k hareketi yasaklayarak döngüyü engeller. Uzun vadeli bellek ise iki strateji barındırır: diversifikasyon az keşfedilen bölgelere yönlendirir; yoğunlaştırma umut vaat eden bölgeleri derinlemesine tarar. Bu bellek hiyerarşisi, simüle tavlama gibi tek bellekli yöntemlere kıyasla daha tutarlı sonuçlar ortaya koyar ve büyük arama uzaylarında bile etkin bir tarama gerçekleştirmeyi olanaklı kılar. Aspirasyon kriteri tabu listesinin katılığını yumuşatır: bir hareket tabu statüsünde olsa bile o ana kadar bulunan global en iyi çözümü geçiyorsa kabul edilir. Bu kural aşırı kısıtlamadan kaynaklanan fırsatçı kayıpları engeller ve algoritmanın yüksek kaliteli bölgelere erişimini korur. Tabu Arama, paralel uygulama ve derin öğrenme hibridleriyle de kullanılmaktadır. Paralel Tabu Arama birden fazla başlangıç noktasından eş zamanlı arama yaparak çözüm çeşitliliğini artırır. Günümüzde hiperparametre araması ve sinir mimarisi optimizasyonunda (NAS) Tabu Arama bileşenleri, gradyan tabanlı olmayan etkili bir alternatif olarak değer görmektedir.
Simulated Annealing (Benzetimli Tavlama)
Benzetimli Tavlama (Simulated Annealing), fizikteki metal tavlama sürecinden esinlenen olasılıksal bir optimizasyon algoritmasıdır. Metal tavlama işleminde erimiş metal yavaşça soğutularak atom dizilişi minimum enerji durumuna ulaşır; benzer şekilde bu algoritma da çözüm uzayında küresel minimumu (veya maksimumu) aramak için kontrollü bir soğuma stratejisi kullanır. Algoritma 1983 yılında Scott Kirkpatrick, C. Daniel Gelatt Jr. ve Mario P. Vecchi tarafından Science dergisinde yayımlanmıştır. Temel çalışma prensibi Metropolis-Hastings kabulüne dayanır: yeni çözüm daha iyiyse kesinlikle kabul edilir; daha kötüyse exp(-(ΔE)/T) olasılığıyla kabul edilir. Burada ΔE kötüleşme miktarı, T ise anlık sıcaklık değeridir. Başlangıçta yüksek T, kötü adımları bile kabul ederek geniş alanı keşfeder; T azaldıkça algoritma yerel arama moduna geçer. Bu mekanizma, gradyan tabanlı yöntemlerin çözemediği çok modlu (non-convex) problemlerde güçlü bir avantaj sunar. Pratik uygulamalarda son derece geniş bir kapsama sahiptir: gezgin satıcı problemi (TSP), çizelgeleme optimizasyonu, VLSI devre yerleşimi, portföy optimizasyonu ve protein katlama simülasyonlarında yıllardır başvuru algoritması olma özelliğini korumaktadır. Hiperparametre araması ve Sinir Mimarisi Araması (Neural Architecture Search) gibi derin öğrenme görevlerinde de kullanılmaktadır. Gradient descent ile karşılaştırıldığında türevlenebilir bir hedef fonksiyonu gerektirmez; kara kutu optimizasyonu için idealdir. Genetik algoritmalardan farklı olarak tek çözüm üzerinde iterasyon yapar ve bellek gereksinimi düşüktür. 2023-2026 döneminde kuantum tavlama (Quantum Annealing) yaklaşımları, fiziksel kuantum süperpozisyonunu kullanarak tünel etkisiyle yerel tuzakları aşmaktadır; D-Wave gibi donanımlar belirli kombinatoryal problemlerde klasik SA'yı geride bırakmaktadır. Python'da scipy.optimize.dual_annealing standart bir uygulama sunarken nelderoptimize ve inspyred kütüphaneleri özel soğuma programları için esneklik sağlar. Soğuma programının seçimi algoritma performansını doğrudan belirler. Geometrik soğuma (T ← α·T, 0.80 < α < 0.99) en yaygın yaklaşımdır; çok hızlı soğuma lokal minimuma hapsolmaya, çok yavaş soğuma ise aşırı uzun çalışma sürelerine yol açar.