Genetik Algoritma Nedir?
İngilizce: Genetic Algorithm
Yayın: · Son güncelleme:
Genetik Algoritma Nedir? Kısaca
Genetik algoritma, doğal seçilim ve kalıtım ilkelerinden esinlenerek bir aday çözüm popülasyonunu seçilim, çaprazlama ve mutasyon adımlarıyla nesilden nesile iyileştiren ve zor optimizasyon problemlerinde iyi çözümler arayan yöntemdir.

Genetik algoritma (genetic algorithm), bir probleme ait olası çözümleri "birey" gibi ele alıp, bunları evrimdeki doğal seçilime benzer bir süreçle adım adım iyileştiren arama ve optimizasyon yöntemidir. 1970'lerde John Holland'ın çalışmalarıyla yaygınlaştı ve evrimsel algoritmaların en bilinen türüdür.
Genetik algoritma nedir?
Her aday çözüm, genellikle bir dizi (kromozom) olarak kodlanır. Bir uygunluk fonksiyonu, her çözümün ne kadar iyi olduğunu puanlar. Algoritma iyi çözümleri daha sık seçerek onları birleştirir ve küçük rastgele değişiklikler ekler. Böylece nesiller ilerledikçe popülasyonun ortalama kalitesi artma eğilimi gösterir.
Nasıl çalışır?
- Başlangıç: Rastgele bir çözüm popülasyonu oluşturulur.
- Değerlendirme: Her bireyin uygunluk puanı hesaplanır.
- Seçilim: Puanı yüksek bireylerin ebeveyn olma şansı artırılır.
- Çaprazlama: İki ebeveynin parçaları birleştirilerek yeni bireyler üretilir.
- Mutasyon: Çeşitliliği korumak için bazı genler küçük olasılıkla değiştirilir.
- Belirlenen nesil sayısına ya da yeterli kaliteye ulaşılana kadar döngü tekrarlanır.
Örnek ve dikkat edilecekler
Varsayımsal bir örnek: Bir kargo firmasının 30 teslimat noktasını en kısa rotayla dolaşmak istediğini düşün. Olası rota sayısı çok büyüktür. Genetik algoritma, rotaları kromozom olarak kodlayıp kısa rotaları birbirine "çaprazlayarak" iyi bir rotaya ulaşabilir.
Yöntem en iyi çözümü bulmayı garanti etmez; çoğu zaman "yeterince iyi" bir sonuç verir. Popülasyon büyüklüğü ve mutasyon oranı gibi ayarlar sonucu güçlü biçimde etkiler. Çeşitlilik erken kaybolursa algoritma bir yerel minimuma takılabilir.
Sıkça Sorulan Sorular
Genetik algoritma nerelerde kullanılır?
Rota planlama, çizelgeleme, tasarım optimizasyonu ve makine öğrenmesinde hiperparametre arama gibi, olası çözüm sayısının çok büyük olduğu problemlerde kullanılır.
Genetik algoritma her zaman en iyi sonucu bulur mu?
Hayır. Genetik algoritma sezgisel bir yöntemdir; makul sürede iyi bir çözüm bulmayı hedefler ama en iyi çözümü garanti etmez.