Fakülteden çıktığımda tam karşımızda Sapanca Gölü’nü izlediğimiz banklar var. Bazen onlara oturup suyun, bitkilerin, hayvanların hepsinin birbiriyle bir uyum içerisinde ve belirli bir düzen içerisinde yaşadıklarını gözlemliyorum. İnanış biçimleri ne olursa olsun, bu mükemmel düzenin bu kadar tesadüfi olamayacağından yanayım. Bu düzene sihirli bir değnek kesinlikle değmiş olmalı. Biz insanlar problemler için çeşitli çözüm yolları üretiriz. Bu çözüm yollarına bilişim ve matematik dünyasında algoritma adı verilir. Bu çözümler arasında en kısa, en az maliyet gibi çeşitli kriterleri içeren ve bu kriterlerin minimum özellikte olacak çözümleri seçmeye çalışırız. Bu çözümlere de optimizasyon denir.

Bilim adamları doğadaki bu düzenin içeriğini merak edip çeşitli araştırmalar yapmışlar. Bu yazımızda bilim adamlarının hayvanların hareketlerini inceleyerek oluşturdukları çeşitli optimizasyon algoritmalarını inceleyeceğiz ve bir kez daha “vay be” kelimesini yazı sonunda kullanmayı kendimizden esirgemeyeceğiz. O halde başlayalım. 🙂

Karınca Koloni Algoritması

Küçük karınca dostlarımızı hep çalışkan olarak tanıyoruz. Eğer çalışkan olmazsalar ağustos böceği gibi kışın aç kalırlar. Yiyecek depolamaları için 3 ayları var. İşte bilim adamları 3 ayda kendilerine yetecek yiyecekleri nasıl topluyorlar diye düşünüp taşınmışlar ve karıncaların hareketlerini incelemişler. Bu harekelerden de muazzam bir algoritma ortaya çıkmış. Bu algoritmayı bir çok mühendislik problemini çözmek için kullanmışlar ve oldukça başarıya ulaşmışlar.

Karıncalar, yiyecek kaynaklarından yuvalarına en kısa yolu görme duyularını kullanmadan bulma yeteneğine sahiptirler. Aynı zamanda, çevredeki değişime adapte olma yetenekleri vardır. Dış etkenler sonucu takip ettikleri mevcut yol artık en kısa yol değilse, yeni en kısa yolu bulabilmektedirler.

karınca algoritması

Resimde de görüldüğü gibi karıncalar, başlangıçta düz bir hattı takip etmekte ve bu esnada feromon olarak adlandırılan bir maddeyi yol güzergahına bırakarak kendilerinden sonra gelen karıncaların yollarını bulmalarını kolaylaştırmaktadırlar. Önlerine bir engel konulduğunda feromonları takip edemediklerinden, karıncalar gidebilecekleri iki yoldan birini öncelikle rastsal olarak seçmektedirler. Kısa olan yoldan birim zamandaki geçiş daha fazla olacağından bırakılan feromon miktarı da daha fazla olur. Buna bağlı olarak, zaman içerisinde kısa olan yolu tercih eden karıncaların sayısında artış olur. Belli bir süre sonra tüm karıncalar kısa yolu tercih ederler. Başta rastsal hareket eden karıncaların izleri kontrol ederek yüksek olasılıkla izlerin yoğun olduğu yönü takip etmesi otokatalitik bir davranış şeklidir ve karıncaların karşılıklı etkileşiminde sinerjik bir etki vardır.

Yarasa Algoritması

yarasa algoritması

Bir çok kişi yarasaların kör olduğunu söylemektedir. Aslında bu yanlış kanıdır. Yarasa türlerinin hiçbirinde görme problemi yoktur. Hatta oldukça iyi görürler. Fakat gece olduğunda işler değişir. Görme yetenekleri geceleri oldukça düşüktür. Karanlıkta yönlerini bulmak için ekolokasyon yaparak bulurlar. Ekolokasyon, ses ile yer tespiti işlemidir. Yarasaların çıkardıkları sesler duvara çarparak yankı oluşturur. Bu yankı ile beyinlerinde bir yer yön haritası oluştururlar ve bu haritaya göre hareket ederler. Bu haritayı oluştururken ekolokasyon sırasında oluşan sesin hızına dalga boyuna ve ses çıkış sayısına dikkat ederler. Bu kriterler etrafta engelin ya da avın olup olmadığının göstergesidir. Yarasaların karanlıkta hiçbir yere çarpmadan özgürce uçabilmesinin sebebi bu olsa gerek. 🙂

Ateş Böceği Algoritması

ateş böceği algoritması

O yaz gecelerimizi süsleyen ateş böceklerinin unisex olduğunu biliyor muydunuz? Unisex olmalarından ötürü bütün ateş böcekleri birbirlerini etkileyebilir. Bunun içinde kriter var elbette. Tek cinsiyet diye onlarında hisleri beğenileri olmasın mı ? 😀 Ateş böcekleri isimleri üzerine geceleri yaydıkları ateş gibi renkli ışıklarıyla ünlüdürler. Bu ışık ne kadar parlak ise diğer ateş böceğini daha kolay tavlayabileceğinin göstergesidir. “Eee aralarında ya mesafe varsa..” dediğinizi duyar gibiyim. Mesafe arttıkça fizik kurallarından ötürü ışığın etkisi de azalır. Eğer güçlü bir ışık varsa ateş böceği o yöne gidecektir. Yoksa rastgele hareket edecektir. Ateş böceklerinin bu iletişiminden hareketle geliştirilen algoritma çeşitli iletişim yöntemlerinde kullanmaktadır.

Arı Kolonisi Algoritması

arı algoritması

İğneleri ile düşmanlarından korunan ve bizi ürküten bal kaynağımız arılar bize güzel ballar üretebilmek için çok çalışırlar. Çok çalışmak değil, sistemli çalışma prensibine dayanarak bal üreten arılar, polen bulabilmek için çeşitli yöntemler geliştirmişlerdir. Sürü zekasına dayanan bu algoritma, sürü halinde gezen arıların bal bulma davranışları üzerine geliştirilmiştir.

Sosyal bir düzen içerisinde yaşayan arılar, içgüdüsel olarak bu düzeni bilir ve hayatlarını bu düzene göre hareket ettirirler. Bir kovan içerisinde her arının bir görevi vardır. Yiyeceklerin depolanması, balın üretilmesi, yiyecek bulunması gibi görevlerden oluşan sosyal düzende arılar, bu görevlerden kendilerine ait olmayan görevleri gerçekleştirmezler. Koloni halinde yaşayan arılar, kraliçe arı(queen), erkek arı(drone) ve işçi arı(worker) olmak üzere 3 kategoriye ayrılırlar.

Arı kolonisinin yaşamının devamının sağlanması için en önemli işlerden birisi besin aramadır. Arının kovandan ayrılmasıyla başlayan arama süreci, başlangıçta rastgele yapılan yiyecek araştırmaları ile devam eder. Bulunan kaynakta yiyecek miktarının azalması neticesinde arılar yeni yem aramaya yada arılardan aldığı bilgiye göre başka kaynaklara yönelmeye başlarlar. Bulunan kaynakların bilgilerinin arılarca birbirine iletilmesi ve bulunan polen, su vb. kaynakların kovana getirilmesi bu süreç içinde yapılan faaliyetlerdir.

İletişimin En Eğlenceli Yolu : Waggle ve Kuyruk Dansı

Arılar arasındaki bilginin iletilmesi, kolektif yapının ve ortak bilginin oluşmasındaki en önemli konudur. Arıların yaşam alanı olan kovan bazı bölümlere ayrılabilir. Bu alanlardan biri de bilgi paylaşımının gerçekleştiği dans alanı (dancing area) olarak adlandırılan alandır. Arılar arasında bilgi paylaşımı arıların yapmış olduğu dansla (waggle dance) olur. Paylaşılan bilgi ile kaliteli yeni yiyecek kaynakları keşfedilir. Kaynaklardan yiyecek getiren arılar diğer arıları bu kaynaklara yönlendirmek için kaynağın konum bilgisini diğer arılara iletmesi gerekir. Konumla ilgili bilgiyi alan arı bu hedefe ulaşmak için güneş ışığından faydalanır. Yörüngeleri ile güneş arasındaki açıyı hesaplayabilmektedirler. Enerji tüketimine göre uzaklık belirleyen arılar, yüklerine göre farklı yükseklikte uçarak enerjilerini ayarlamaktadırlar.

Waggle Dansı
Waggle Dansı

100 metreden 10 kilometreye kadar olan geniş bir alan içerisinde bulunan kaynaklarda ilgili bilgi aktarımında kuyruk dansı kullanılmaktadır. Bu dans 8 rakamına benzeyen bir dans çeşididir.Dansı izleyen arıların bir titreşim oluşturulması ile bu dansı yapan arı,dansına son verir. Her 15 saniyede dansın tekrarlanma sayısı,nektar kaynağının uzaklığı hakkında bilgi vermektedir. Daha az tekrarlanma sayısı daha uzak bölgeleri ifade etmektedir.Yön bilgisi 8 rakamı şeklindeki dansın açı bilgisinden elde edilir. Dansı izleyen arılar, danstan güneşle yiyecek arasındaki açının derecesini öğrenirler. Arılar arasında uzak mesafede bulunan kaynakla ilgili bilgi paylaşımı arasında daha hızlı dans edilir.

Doğanın mucizelerinden sadece bir kaçını paylaştım sizlerle bunları düşündükçe yaşadığım gezegenin mükemmel uyumunu tüm hücrelerimde hissediyorum. Bu uyumun bir parçası olmak bile beni mutlu ediyor. Eğer ola ki bir zaman dilimde kendinizi mutsuz hissederseniz bu uyumun bir parçası olduğunuzu hatırlayın ve kendinizin özel olduğunu hissedin.  🙂