• Sonuç bulunamadı

4. GÖRÜNTÜ ĐÇĐNDE GÖRÜNTÜ ARAMA

4.3 Akıllı Arama

Bu tez çalışmasında akıllı arama GA kullanılarak yapılmaktadır. GA’nın paralel arama gerçekleştirmesi, tek bir çözüm yerine çözüm kümesi olarak sonuç üretmesi ve arama süreci optimizasyonunu sağlayabilecek bir yöntem olması, GĐGA probleminde kullanılma gerekçeleri arasındadır.

Zor ve karmaşık problemlere hızlı ve kolayca uygulanan GA, görüntü aramada alternatif bir yöntem olarak kullanılabilir.

GĐGA’da en iyi çözümü ve bu çözüme yakın çözüm kümesini bulabilmek için GA’nın arama parametrelerini oluşturan değerler dikkate alınmıştır. Bu sebeple, en uygun değerlerin neler olabileceğini tespit edebilmek için görüntü arama sonuçları değerlendirilmiştir. Bu problem için en uygun nesil ve birey sayıları, çaprazlama ve mutasyon işlemcileri olasılıkları ile şekilleri, yeni nesli oluşturma uygulamaları ve birey seçim yöntemleri üzerinde durulmuştur.

Görüntü aramada GA kapsamındaki durumlar şunlardır:

• Şablon görüntü ile eşleşen görüntülerin referans görüntüdeki sol üst piksel konumlarının X ve Y değerleri ikilik sistemdeki değerler şeklinde ifade edilmiştir. Tamsayıların kullanılması ile yeterince çeşitlilik sağlanamadığı görülmüş ve ikilik sistemdeki değerler ile çalışılmıştır.

• Küçük değişiklikler yapacak şekilde bir mutasyon işlemcisi kullanılmıştır. Bu değişiklik genler üzerinde yapılan değişikleri içermektedir.

• GA’nın uygulanma sürecinde sıralama işlemleri kodlamadan çıkarılmıştır. Bireylerin bir arada bulunduğu veri yapısı olarak listelerin kullanılması ve uygunluk değerlerinin listeye sıralı olarak yerleştirilmesi suretiyle sıralama için ayrıca zaman harcanmamıştır. Bu uygulama, listeye eklenecek bireyin uygunluk değeri ile nüfustaki bireylerin uygunluk değerlerinde ikili arama (binary search) yaparak (bu arama için liste sıralı olmalıdır) liste küçükten büyüğe sıralı olacak şekilde listenin en uygun yerine yerleştirilmesi suretiyle

gerçekleştirilir. Böylelikle, liste üzerinde arama ve liste elemanlarına erişim gibi özel işlemler daha hızlı bir şekilde yapılabilir.

• GA’nın uygulanma sürecinde kopyalama işlemleri de kodlamadan çıkarılmıştır. Kopyalama işlemi yapılmadan söz konusu nesildeki bireyler üzerinde ilgili işlemler yapılarak ortaya çıkan bireyler bir sonraki nesle eklenmiştir. Bireylerin tamamının yeni nesle aktarılıp o nesil üzerinde değişiklik yapılması uygulaması, bireylerin değişikliklerle beraber yeni nesle aktarılması şeklinde gerçekleştirilmiş ve kopyalama işlemi için ayrıca zaman harcanmamıştır.

• Yeni nesil oluşturulurken yeni yaratılan bireylerle beraber en iyi uygunluk değerlerine sahip bireylerin bir kısmı da doğrudan yeni nesle aktarılmıştır. Ayrıca kalanlar arasında bir kısım da rasgele seçilerek yeni nesle dâhil edilmiştir.

Görüntü aramada GA’nın başarılı sonuçlar verebilmesi ilk olarak kodlamanın doğru şekilde yapılmasını gerektirir. Birden fazla kodlama bir arada kullanılabilir. Bu problemde arama sonucu olarak elde edilmek istenen, şablon görüntü ya da görüntülerin sol üst piksel köşelerinin referans görüntüde eşleştiği X ve Y koordinatlarıdır. Bu değerler onluk sistemdeki sayılardır. GA için bu değerler ikilik sistemde kodlanmışlardır.

Problemin karar değişkenlerinin (parametreler ve bireyler) uygun bir yöntemle kodlanmış olması kadar GA için hangi değerin ya da değerlerin iyi olduğunu en iyi şekilde ifade eden uygunluk fonksiyonlarının da tasarlanması önemlidir.

GĐGA’da kaba kuvvet arama yöntemi, hesaplama zamanını görüntülerin boyutunun artması ile büyük miktarda artırmaktadır. Bu probleme kısa sürede kabul edilebilir çözümlerin getirilebilmesi, GA ile başarılabilmektedir. Bu çalışmada kabul edilebilir çözümlere ulaşılması oldukça yeterli bir sonuç olabilir. Çünkü bu sonuçlardan en iyi sonuçlara oldukça kolay bir şekilde kısa süreli kaba kuvvet aramalar yapılarak ulaşılabilir. Böylece, daraltılan çözüm uzayından elde edilen olası çözüm adayları daha iyi sonuçlara ulaşabilmede yardımcı olabilirler. Fakat bu noktada, uygulama sürecinin çok iyi bir şekilde oluşturulması büyük öneme sahiptir.

Bu tez çalışmasında kaba kuvvet arama tek bir iş parçacığı ile ve paralel olarak yapılmaktadır. Akıllı aramalar için kullanılan GA için de yine tek iş parçacığı ile ve

paralel olarak aramaların yapılabilmesi sağlanmıştır. Bu dört farklı seçenek arama sonuçlarının karşılaştırılması amacıyla kullanılmaktadır. Akıllı aramalara bu çalışmada ek olarak getirilen paralel akıllı arama ile tek iş parçacıklı akıllı arama ve paralel akıllı arama işlemleri de kendi aralarında karşılaştırılabilir.

GA’nın bu tez çalışmasında kullanılmasının en önemli sebeplerinden biri, çözüm kümesinin tamamını taramadan verdiği sonuçlarla daha iyi sonuçlara daha kısa sürede ulaşılabilmesidir. Bu noktada akıllı aramalarla elde edilebilecek belli derece iyi sonuçlar yeterli olabilir. Bu sonuçlar her zaman en iyi çözüm ya da çözümleri içermeyebilir, ama çoğu zaman en iyiye yakın çözümlere ulaşılmasını sağlayabilirler. Đyi sonuçların elde edilebilmesi, tüm algoritma tasarımının etkili olarak icra edilebilmesini gerektirir. Çözüm uzayında çok sayıda olası çözüm içinde yapılan aramalarla kısa sürede yeterli sonuçlara ulaşmak mümkündür.

Ayrıca, GA’nın birden fazla iş parçacığı ile referans görüntüden elde edilen görüntü parçaları üzerinde paralel olarak çalıştırılması arama zamanını kısaltabilir. Bu süreçte paralellik ve kodlamanın optimizasyonu, sisteme fazla ve gereksiz yük bindirmeyecek şekilde oluşturulabilmelidir. Eş zamanlı aramalarla çözüm uzayının bir kısmı taranarak çözüme daha kısa sürede ulaşabilmek mümkündür.

Daha iyi sonuçlar verme ihtimali düşük olan alanlarda arama yapılmayabilir. Fakat bu durumda, iyi sonuçlar vermeme ihtimali olan alanların uygunluk değerlerine bakılması ve uygulamaya çeşitli koşulların getirilmesi arama süresini oldukça uzatabilir. Örneğin her nesil tekrarında ve döngü yapılarındaki pek çok çevrimde ele alınan ek koşullar bu duruma neden olabilir. Bu yüzden, bahsedilen bu ve benzeri koşulların en aza indirilerek çeşitliliğin ortaya çıkarılması sağlanmalıdır. Çok sayıda koşul ve matematiksel işlem yerine genetik işlemcilerle yeni ve daha iyi bireylerin elde edilmesi ile arama süreci daha verimli bir şekle getirilebilir. Sözü geçen yeni bireyler, nüfustaki bireylerden daha iyi ya da daha kötü ve hatta nüfustaki bireyler ile aynı da olabilirler.

Bu çalışmada, nesildeki en iyi bireylerin bir kısmı çaprazlama ve mutasyon işlemcilerine tabi tutulmadan bir sonraki nesle aktarılır. Elitizm denen bu uygulama ile uygunluk değerleri en iyi olan bazı bireyler yitirilmeden bir sonraki nesle aktarılmış olur. Böylece yeni nesildeki en iyi bireyin bir önceki nesildeki en iyi

bireyden daha kötü olması ihtimalinin önüne geçilmiş olur. Uygunluk değeri daha iyi olan bireylerle beraber diğer bireylere de şans tanınmış olur.

En iyi çözüme ulaşmada çeşitlilik gerekebilir ve bu yüzden eldeki verilerle birçok yere ulaşabilmek arama için çok önemlidir. Bu çalışmada GA ile yeni nesil oluşturulurken, nesildeki en iyi bireylerden bir kısmı ve kalan bireylerden rasgele bir kısım kullanılır. Kalan bireyler ise çaprazlama ve mutasyon işlemleri ile yeni bireyler olarak yeni nesle katılırlar ve toplam birey sayısı kadar bireyle yeni nesil elde edilir. Böylece yeni neslin yaratılması nesildeki bireylerin en iyilerinden, kalanların belli bir kısmından, kalanların bir kısmı ile çaprazlama yaparak, geriye kalanları da mutasyona uğratarak dört farklı şekilde olur.

Önceki nesilden yeni nesle aktarılan bireyler ile çaprazlama ve mutasyon işlemcileri ile oluşan tüm bireyler nesillerdeki toplam birey sayısı kadardır ve toplam birey sayısını aşmamaktadır. Böylece, fazlalık bireylerin sonradan elenmesi için harcanacak zamanın önüne geçilmiştir. Bireylerin elenmesi, bireylerin kodlamada kullanılan veri yapılarından çıkarılması demektir.

Probleme yönelik olarak farklı işlemciler çeşitli şekillerde kullanılabilir. Genetik işlemciler için farklı yollar izleyerek yeni bireyleri elde etmede çeşitlilik sağlanabilir. Ebeveyn bireylerden elde edilen çocuk bireylerin uygunluk değerleri en iyi olan belli miktarının, ebeveyn bireylerin uygunluk değerleri en kötü olan aynı miktar ile değiştirilmesi uygulaması bu çalışmada kullanılmamıştır.

Yeni neslin oluşturulması için gerekli bu işlemler nesil sayısı kadar tekrarlanarak her yeni topluluk bir sonraki nesil olarak belirlenir ve en son nesildeki uygunluk değeri en iyi birey ya da bireyler çözüm kümesi olarak elde edilir.

Benzer Belgeler