Genetik Algoritma Nedir? Kısaca

Konusu 'Biyoloji' forumundadır ve Chanyeol tarafından 18 Temmuz 2016 başlatılmıştır.

  1. Chanyeol

    Chanyeol Süper moderatör Yönetici

    Genetik Algoritma

    Genetik algoritma, tabiatta bulunan evrimsel sürece benzer bir şekilde çalışan arama yöntemlerinden bir tanesine verilen isimdir. Çok boyutlu karmaşık arama uzayında en iyinin yaşamda kalması ilkesine göre bütünsel en iyi çözümü arar.

    Çalışma Michigan Üniversitesinde John Holland tarafından 1975 yılında yapılan çalışmalar Adaptation in Natural and Artifcal System isimli yazdığı kitabında bulunmaktadır. John evrim yasalarını genetik algoritmalar içinde eniyileme problemlerini çözmek için bu yönetim kullanmıştır. Kullanılan bu yöntem problemlere çözüm üretmek yerine daha fazla çözümler bulan bir çözüm kümesi üretmeyi amaçlar. Aynı anda birçok nokta değerlendirilirken; sonuçta bütünsel çözüme ulaşma olasılığı daha fazla artmaktadır. Bununla beraber çözüm kümesi üretilmesinde bulunan çözümler birbirinden tamamen bağımsız şekilde bulunurlar ve her bir çözüm çok boyutlu uzay üzerinde vektör içerisinde yer alır. Genetik algoritmalar problemlerin çözümü için evrensel süreci bilgisayar ortamına iletilir ve diğer eniyileme yöntemlerinde olduğu gibi çözüm için tek bir yapının meydana getirilmesi yerine birçok çözüm kümesi oluştururlar. Problem için olası pek çok çözümü temsil eden bu küme genetik algoritmalar terminolojisinde yer alır.

    Genetik algoritmanın amacı
    Nüfuslar vektör kromozom veya birey adı verilen dizilerinden meydana gelir ve içindeki her bir elemana gen adı verilirken; nüfustaki bireyler evrimsel süreç içerisinde Genetik Algoritma kullanıcıları tarafından sağlanır. Ortaya çıkan problem kişiden kişiye değişiklik ortaya çıkarır. Genetik algoritmanın problem çözümüne başarısına karar vermede en önemli özellik problemin çözümünün temsil eden bireylerin gösterilmesidir. Nüfus içerisindeki her bireyin probleme çözüm olup olmayacağına karar veren bir uygunluk fonksiyonu meydana gelir. Uygunluk fonksiyonunda dönen değere göre yüksek değere sahip olan bireylerin nüfustaki diğer bireylerin çoğalmaları için imkan sağlanır. Bu işlem sonunda çocuk adı verilen yeni bir bireyler üreterek çocuk kendisini meydana getiren ebeveynlerin özelliklerini taşıması sağlanır. Yeni bireyler sonra nüfus dışında bırakılır ve bir önceki nüfusu da yer alan uygunluğu yüksek bireyler bir araya gelip çoğalmaları sağlanır. Aynı zamanda önceki nüfus uygunluğunu yüksek bireylerin sahip olduğu özelliklerin büyük bir kısmını bünyesinde taşır. Pek çok nesil aracılığıyla iyi özellikler nüfus içerisine yayılır ve genetik işlemler aracılığı ile diğer özellikler birleşmiş olur. Uygunluk değeri yüksek olan bireyler bir araya gelip yeni bir aileye oluşturursa yapılan çalışma o kadar iyi sağlanmış olur. Problemlere çözümün bulunabilmesi için dikkat edilmesi gereken üç unsuru vardır. Bunlar şöyledir:



      • Uygunluk fonksiyonu etkin bir şekilde meydanda getirilmeli
      • Doğru genetik işlemciler seçilmeli
      • Bireylerin gösterimi doğru bir şekilde yapılmalıdır
    Yukarının belirtilen çözüm kümesi ile diğer noktaları birleştirerek genetik algoritmalar diğer eniyileme yöntemleri arasında kullanılırken; büyük zorluklarla karşılaşıldığı durumlarda olur. Genetik algoritmalar arama uzayın büyüklüğü karmaşık olduğu bölümlerde mevcut bilgi ile sınırlı arama olayında çözümünün zor olduğu yerlerde kullanılır. Problemin belli bir matematiksel kısmı çözülmediği zamanlarda bu yöntemler kullanılırken; geleneksel eniyileme yöntemlerinde istenilen sonuç alınmadığı alanlarda etkili olarak bu yöntemler kullanılır.
    Genetik algoritmaların temel kavramları
    Bu yöntem kısıtlara uyum sağlayan çözüme ulaşmak için kullanılan Algoritma yapısının oluşturulması ve parametrelerinin belirlenmesi için kullanılır. Bu kavramlar için gerekli yöntemler kullanılır.

    Gen yapısı ve kodlama
    Problemi ait en küçük bilgiyi bulunduran kısma gen ismi verilir. Kullanılan programlama yapısında gen yapıları programcının tanımlamasını sağlar. Bir genin yapısında sadece ikili tabanındaki sayılara içerebileceği gibi gerçel sayı, gray, tam sayı, ağaç birimini ve farklı sembolik ifadelerle burada yer alır. Kodlama şekli genetik algoritmalar içerisinde oldukça önemli oranda etkiler; nasıl yapıldığı programa bağlı olduğundan dolayı bütün problemler için geçerli olan en uygun kodlama biçimini söylemek zordur. Belirli bir problem tipi için yapılmış olan çalışmada gerçel sayı gösteriminin daha çabuk sonuca ulaştığı gösterilmiştir.

    Kromozom yapısı
    Bu yöntem kullanılarak bir veya birden fazla gen yapısının bir araya gelerek; problemin çözümüne ait gerekli olan bilgilerin belirli bir bölümünü oluşturan dizileri kromozom denir. Bu yaklaşıma göre üzerinde durulan en önemli birim olduğu için bilgisayar ortamında genlerin en iyisinin bulunması gerekir.

    Popülasyon
    Çözüm bilgilerini içeren bireylerin bir araya gelmesiyle oluşan topluluğa verilen isimdir. Popülasyonda bulunan birey sayısı problemin özelliklerine göre genetik algoritmayı tasarlayan kişi tarafından sağlanır. Popülasyon büyüklüğü problemin çözüm süresini oldukça büyük etkiler. Birey sayısının gereğinden fazla olması çözüm sayısını artırırken; sayının az olması popülasyonda istenilen çözüm diğerine ulaşımı sağlar. Problemin özelliğine göre seçilecek olan popülasyonda birey sayısı genetik Algoritma hazırlayan kişiler tarafından sağlanır.


     
    Son düzenleme: 18 Temmuz 2016