BültenMakale

Algoritmik Düşünme Becerisi ve Günlük Yaşam

İstanbul’da bir ev aradığınızı hayal edin, ya da bir ofis. Finans merkezinde. Giderek kalabalıklaşan ve yoğunlaşan kent merkezi dünyanın en pahalı emlak fiyatlarına sahip olabilir. İyi bir daireyi bulmada pek çok kişiyle de yarışabilirsiniz. Uygun evler dakikalar içinde ev sahibine en yüksek depozitoyu verenler tarafından kapılıyordur, büyük bir olasılıkla.

Rekabetin çetin olduğu böyle bir pazarda, diyelim ki, sizin için en uygun daire bulma şansını maksimize etmeye çalışıyorsunuz. Ama İstanbul’un finans merkezinde yer alan dairelerle ilgili hiçbir fikriniz yok. Sorun şu: Sizin için uygun olabilecek bir daireyi, hiçbir fikriniz olmadan nasıl anlayabileceksiniz? Başka bir deyişle, önce bazı evlere bakmalı, bilgi toplamalı, seçenekler, evlerin durumları hakkında genel bir fikir edinmeniz ve sizin için en uygun evin sahip olması gereken standartlarını belirlemeniz gerekecektir. Bunun için kaç eve bakmalısınız? Belki baktığınız bir ev, bulabileceğinizin en iyisiydi, ama siz henüz bundan emin olmadığınız için seçmediniz. Daha çok bilgi sahibi olmak için oyalandıkça, iyi evleri de elinizden kaçırma tehlikesi artacaktır.

Buradaki asıl sorun hangi daireyi tutacağınız değil, karar verecek duruma gelmek için kaç eve bakacağınızdır.

Böyle durumlarda insanlar sezgisel olarak bir denge tutturmaya çalışırlar. Bu doğru bir algoritmadır ama çoğumuz bu dengeyi kesin bir biçimde belirleyemeyiz. Örneğin çoğunlukla  insanlar acele edip,  erken kararlar alıyorlarmış.

Oysa, karar anını doğru saptamanın bir yolu var desem inanır mısınız? İnanın, çünkü %37 kuralı var.

Biraz önceki örnekte, en uygun evi bulmak için varsayalım bir ayınız var, – genellikle gerçek dünyada karşılaştığımız sorunlarda hep bir zaman kısıtı vardır-, bu sürenin %37’sini, yani 11 gününü bir daireyi seçmeden yalnızca ev bakmaya harcayabilirsiniz. 11 günden sonra artık, en iyi durma noktasına ulaşmış olacaksınız. Bir sonraki baktığınız ev, belirlediğiniz standart gereksinimleri karşılıyorsa, daha iyisi var mı diye daha fazla bakmaya zaman harcamamalı, evi tutmalısınız. Tuttuğunuz ev sizin için en uygun olan evdir ve bu kanıtlanabilir, doğru bir kuraldır.

Nereden mi biliyoruz? Bu sorun matematikte “en iyi durma noktası” problemleri sınıfına giren bir sorundur ve %37, bilim adamlarının, bilgisayar uzmanlarının bu tür sorunları çözerken kullandıkları üst düzey gelişkin algoritmalarda uyguladıkları kuraldır.

Akıp giden fırsatlar dizisi içinde, birinde karar kılarak diğerlerine bakmaktan vazgeçmek, gerçek yaşamda tekrar tekrar karşılaştığımız bir sorundur. En iyi park yerini bulmak için kaç tur atmanız gerekir? Daha iyi bir teklif gelsin diye o evi ya da arabayı daha ne kadar elimizde tutmalıyız? Ya evleneceğimiz kişiye karar vermek için ne yapacağız?

Önümüze ilk çıkanı  seçmekle, gereğinden uzun düşünmek/aramak arasındaki dengeyi nasıl bulacağız?

Tekerleği yeniden icat etmeye gerek yok. Algoritma söylüyor, %37 kuralını uygulayacağız.

Algoritma sözcüğü kulağa çok teknik bir terimmiş ve günlük  sorunlara uyarlanamazmış gibi geliyor. Ama, algoritmalar, belli bir sorunu çözmek için kullanılan, sonlu sayıdaki adımlardır. Bilgisayar teknik biliminde kullanılmadan çok önce, insanlar tarafından kullanılıyordu. Dokuzuncu yüzyılda, Abbasiler döneminde Harezmli Muhammed adlı bir matematikçi bir kitap yazmıştı. Kitabın adı,  Al Kitab-ül Muhtasar Fi Hesab Al-Cebr Ve’l Mukabele. Bu kitap hem matematik alanında hem de bilgisayar bilimlerinde önemli bir yere sahiptir. Tarihteki ilk cebir kitabı olarak kabul edilen bu kitap matematik tarihindeki en önemli yapıtlardan birisi olup İngilizce’deki “algebra” sözcüğü kitabın adındaki “al-cebr” sözcüğünden gelmektedir. Harezmli, kitabın geniş kitleler tarafından kullanılabilmesini sağlamak üzere günlük yaşamda çözülmesi gereken sorunları sistemli olarak sınıflamış ve her sorun türü için geçerli genel çözüm biçimleri oluşturmuştur.

Her çözüm, sonlu sayıda ve iyi tanımlanmış adımlar içeren reçeteler biçiminde okuyucuya sunulmuş ve böylece matematikçi olmayan kişiler tarafından da etkinlikle kullanılabilmesi sağlanmıştır. Genel amaçlı bir çözümün, birbirini izleyen adımlar biçiminde ve her adımın çözüm reçetesini uygulayan kişinin en küçük bir duraksamaya düşmesine olanak bırakmayacak yalınlıkta ve kesinlikte tanımlanması yöntemi Harezmli’nin buluşudur. Harezmli kitabını o zamanın bilim dili olan Arapça yazmıştı. Kitap “Liber Algebre et Almochabolae” başlığı ile 1183 yılında İspanya’da ilk kez Latince’ye çevrilirken, Arapça’da “Ebu Cafer Muhammed bin Musa Al-Harezmî” olarak geçen yazar adı, “Mahmed Moysi Alguarizmi” olarak aktarılmıştır. Yöntemin batı dillerindeki biçiminin kaynağı bu Latince tercümedeki “Alguarizmi” soyadıdır (Bu ad Avrupa’da çeşitli kaynaklarda Al-Quarizmi, Al-Kuarithmi ve Algoritmi olarak da geçer. Arapça sesbirimlerinin çeviri yazımında hırıltılı h’nın kh, g ya da q’ye, peltek z’nin th’ye dönüşmesi sık görülür).

Gördüğünüz gibi ortaya çıktığı ilk andan beri algoritmalar yalnızca matematikte kullanılmaz.

Harezmli’den bu kitabı yazmasını isteyen Abbasi Halifesi, kitabın amacını şöyle tanımlamış:

Yalnızca en kolay ve en gerekli olan aritmetiği kullanarak, cebir ve mukabele kuralları ile hesaplama üzerine kısa bir kitap yaz. Öyle ki bu kitap, miras paylaşımında, zekât hesaplamada, ticari anlaşmalarda, kanalların kazılmasında, arazilerin ölçülmesinde ve benzer diğer işlemlerde kolaylıkla kullanılabilsin”.

Bir yemek tarifine uygun yemek pişirirken, belli bir modele uygun motifli bir kazak örerken, çakmak taşıyla ateş yakarken, özetle taş devrinden bu yana algoritmalar teknolojinin bir parçası.

Belirsizlik, zaman kısıtları, eksik bilgi ve büyük bir hızla değişen dünyada kararlar veriyoruz. Yapay zekâ ve büyük veri uygulamaları ile son yıllarda bilgisayar programları da benzer zor sorunları çözmek için geliştiriliyor. Bilgisayar dünyasının algoritmalarını günlük yaşamlarımıza uyarlayarak dünya hakkında algoritmik düşünme becerisini kazanmak aşağıdaki konularda bize rehberlik sağlayabilir:

  • Nasıl düşüneceğiz?
  • Nasıl ve ne zaman karar vereceğiz?
  • Ne zaman harekete geçeceğiz?
  • Ne zaman duracağız?
  • Yeni şeyler denemekle bildiğimiz güvenli yolu seçmek arasındaki dengeyi nasıl kuracağız?
  • Yaptığımız yanlışlardan nasıl ders alacağız?

Endüstri 4.0 toplumunda artık işlerimizi bilgisayarlarla ya da robotlarla etkileşerek yapacağız.

Bu nedenle, “Çocuklar için Kodlama” başlığı altında, çocuklara çeşitli oyunlarla algoritma kavramı ve algoritmik düşünme becerisi küçük yaşlarda öğretiliyor.

Peki ya büyükler?

Gelecek sanıldığı kadar uzak değil. O dünyada yalnızca çocuklar değil  biz büyükler de uzun süre birlikte yaşayacağız. Yönetilecek şirketler, alınacak kararlar, yeni teknolojik gelişmeler var önümüzde. Nasıl tepki vereceğimizi öğrenmek, teknolojiyi etkin biçimde kullanmaktan başka bir seçeneğimiz yok gibi.

Hem birkaç örneğini verdiğim sorunlarımızı daha etkin bir biçimde çözebilmek hem de geleceğin yarı bilim-kurgu filmine benzeyecek iş yaşamında başarılı olabilmek için sahip olduğumuz sorun çözme becerisini algoritmik düşünme biçimini öğrenerek bir üst basamağa taşımak iyi olmaz mıydı?

Katkılarından dolayı Sayın Eser Baransel’e teşekkür ederiz.

Kaynak: Cesur Baransel, Dünyada Önde Gelen Bilgisayarcılar, Harezmli Muhammed (780(?) – 850)Türkiye Bilişim Ansiklopedisi, pp. 333-343, Papatya Yayıcılık, İstanbul, 2006. Bian Christian, Tom Griffiths, Algorithms To Live By, The Computer Science of Human Decisions, William Collins, 2016.

Share:

Leave a reply