Claude Shannon ve Bilişim Çağı'nın doğuşu – 2 | Bilim ve Gelecek
Ana sayfa 126. Sayı Claude Shannon ve Bilişim Çağı’nın doğuşu – 2
Claude Shannon ve Bilişim Çağı’nın doğuşu – 2
Mühendislik bilimlerinde ya da matematik dalında Nobel ödülü olsaydı, Shannon şüphesiz bu ödüle layık görülürdü. Adeta tek bir makale ile, yepyeni bir bilim yaratmış ve yeni bir çağ açmıştı. Bu büyük katkılarının yanı sıra, kendi deyimiyle pek çok ‘gereksiz’ icada da imza atmıştı bu ilginç adam.
Bilişim Çağı’nın kurucusu addedilen Amerikalı matematikçi ve mühendis Claude Shannon’un yaşam öyküsünü bu yazının ilk kısmında (Bilim ve Gelecek, Sayı 124, Haziran 2014, s.58-61) kaleme almış, bu biliminsanının, çok kuramsal nitelikte oldukları halde, elektronik ve haberleşme mühendisliği pratiğini derinden etkileyen iki ayrı eserinden söz etmiştik: Bunların ilki, 1938 yılında ünlü Massachusetts Institute of Technology (MIT)’de tamamladığı yüksek lisans tezi ve diğeriyse 1948 yılında yayınladığı “Komünikasyonun Matematiksel Kuramı” (A Mathematical Theory of Communication) adlı makalesi. Bu makale, sayısal (dijital) komünikasyonun yolunu açmakla kalmayıp yepyeni bir kuramın doğum belgesi niteliğinde olacaktı: Enformasyon Kuramı. Yazımızın bu ikinci kısmında, ‘Enformasyon kuramının tohumları, Shannon’un 1948 makalesinde nasıl atılmıştı?’ sorusunu yanıtlamaya çalışacağız. Bunun için ilk önce ‘veri kaynağı’ kavramına açıklık getirmemiz gerekiyor.
Shannon’un hayranlık duyduğu bir diğer konu jonglörlüktü. Patateslerle jonglörlük yaparken.
Bir televizyon kamerası veya bir cep telefonunun yarattığı görüntü ve ses sinyalleri, çektiğiniz bir resim, yazdığınız SMS mesajı veya e-posta, ya da örneğin Excel dosyanız, bunların tümü, komünikasyon sistemleri açısından birer veri kaynağıdır: iletilecek ya da depolanacak veriler! Sayısal sistemleri (ve birazdan ele alacağımız enformasyon kavramını) anlayabilmek için, her bir veri kaynağını, bir ‘enformasyon simgesi’ üreticisi olarak görmemizde fayda var. Her kaynak, dışa verdiği simgeleri belli bir ‘alfabe’den seçer. Örneğin, eğer veri kaynağı yazdığımız SMS mesajı ise, bu kaynağın alfabesi, Türk alfabesinin 29 harfinin yanı sıra nokta, virgül, boşluk, soru işareti gibi birkaç ek işaretten oluşur. (Sayısal âlemde, kaynakların ürettiği bu simgeler, komünikasyon hatları üzerinde iletilmek veya hard disk / flash bellekler gibi depolama cihazlarında saklanmak amacıyla, 0’lara ve 1’lere dönüştürülür. Zaten sayısal sistemlerin gücü de buradan kaynaklanır: Bu eşitlikçi sayısal âlemde, bir görüntü bit’i ile bir ses bit’i ya da bir Twitter mesajı bit’i arasında fark gözetilemediği için, verilerin gösteriminde bir birörneklik oluşur ki, bu da ürün tasarım ve üretim süreçlerine büyük bir etkinlik kazandırır.)
Shannon, yanıtını aradığı şu temel mesele etrafında dönüp duruyordu: Bir mesaj, bir noktadan bir diğer noktaya (diyelim kullanıcı A’dan kullanıcı B’ye) iletilirken, hata payını düşürmenin -hatta mümkünse sıfırlamanın- yolu neydi? O zamanlar kabul gören mühendislik anlayışına göre, -nasıl, örneğin, güvenli şekilde seyahat etmenin altın kuralı aracınızı yavaş sürmek ise- komünikasyon sistemlerinde de hata payını asgariye çekmek için, mesajların düşük hızda gönderilmesi gerekiyordu. Shannon, bu düşüncenin yanlış olduğunu ispatlayarak haberleşme ve bilişim dünyasında bir devrim daha yaratacaktı. İşte bu devrim sayesindedir ki, günümüzde kullandığımız komünikasyon linklerini -örneğin, telefon hatları ya da İnternet ağlarını- mümkün olan en üst hızlarda ve en etkin biçimde çalıştırabilmekteyiz.
Komünikasyonun bu temel meselesine bir yanıt arayan Shannon, ilk önce, iletilen ‘bilgi’nin tam olarak ne olduğu konusuna açıklık getirme gereksinimini duydu: Teknik anlamda bilgi, yani enformasyon neydi?
Bu konuda biraz akıl yürütecek olursak, şu gerçeğe kolayca ulaşabiliriz: Enformasyon kavramı, bir haberin ne kadar ‘yenilik’ içerdiği ile ilintilidir. Diğer bir ifadeyle, beklenmedik bir haber, çok enformasyon taşır. Örneğin sıcak günlerin birbirini izlediği bir yaz mevsiminde hava raporunun “yarın hava sıcak olacak” şeklindeki haberi pek fazla enformasyon taşımaz, ancak hava raporu “yarın sıcaklığın 15 derece düşeceği tahmin edilmektedir” şeklindeyse, o vakit haberin kayda değer bir enformasyon taşıdığını düşünürüz. Beklenmediklik ne kadar yüksek ise, enformasyon miktarı da o kadar fazladır. (Daha matematiksel bir dille, bir olay hakkındaki enformasyonun, o olayın olasılığı ile ters orantılı olduğunu söyleyebiliriz.)
Ancak, Shannon’un çok derin bir sezi ile gösterdiği üzere, eğer enformasyonu matematiksel, yani teknik açıdan işe yarayacak, dolayısıyla ölçülebilir bir nicelik olarak tanımlamak istiyorsak, o vakit, mesajın anlamsal içeriğini bir yana itmemiz gerekir. Çünkü bir mesajın anlamsal haber değerinin (örneğin “yarın sıcaklık 15 derece düşecektir” ya da “New York’ta 8 kuvvetinde bir deprem meydana gelmiştir” demenin) matematiksel karşılığı yoktur. Matematiksel anlamdaki enformasyon, bir ‘simge üreticisi’ olduğunu gördüğümüz herhangi bir veri kaynağının dışa verdiği simgelerin ne oranda beklendik ve ne oranda beklenmedik oldukları ile ilgilidir. Örnek olarak bir sayfalık bir metni ele alalım: Eğer bu metin, abcçd…üvyz abcçd…üvyz abcçd…üvyz şeklinde, Türk alfabesinin art arda sıralanmış 29 harfinden oluşuyorsa, o zaman enformasyon içeriği düşüktür. Buna karşın, şu anda okuduğunuz sayfaya bakarsak, simgeler (harfler) birbirlerini adeta rastgele (beklenmedik şekilde) izledikleri için, bu yazının enformasyon içeriği, sadece abcçd…üvyz dizisinden oluşan yazıdan daha yüksektir. [Demek ki matematiksel anlamda enformasyon, bir veri kaynağının dışa verdiği simgelerin olasılıkları ile belirlenir. Daha teknik bir dille tanımlamak istersek, enformasyonun, bir kaynağın ürettiği simgelerin ortalama öngörülemezlik değerine (‘entropi’sine) tekabül ettiğini söyleyebiliriz.]
Enformasyon kavramını Shannon’un bu tanımlamasına dayandırmanın önemini şimdi daha iyi takdir edebiliriz; çünkü, komünikasyon sistemleri bağlamında, kullanıcı A’dan kullanıcı B’ye iletilen şey, işte bu enformasyondur. Dolayısıyla komünikasyon linkleri de bu enformasyon tanımına dayanarak tasarlanmalıdır.
Shannon’un kendi deyimiyle gereksiz icatlarından biri: Labirentten çıkmayı öğrenen akıllı fare.
Enformasyonu ölçme birimi nedir?
Bilindiği üzere zaman saniye, ağırlık gram ve uzunluk metre olarak ölçülür. Peki, enformasyon hangi birim ile ölçülür? Shannon, bunun için ‘bit’ sözcüğünü önermişti. O zaman ‘1 bit’ tam ne kadar enformasyon demektir?
Bu soruyu yanıtlamak için yazı-tura oyununu ele alalım. Bu durumda, alfabesi iki simgeden oluşan bir kaynaktan söz edebiliriz: Yazı ve Tura (bu simgelere 0 ve 1 de diyebiliriz). Yazı-tura oyununda, yazı mı tura mı çıkacağını en zor hangi durumda tahmin ederiz? Yazı’nın ve Tura’nın çıkma olasılıkları eşit olduğu durumda, yani her birinin olasılığı %50 ise (örneğin Yazı’nın olasılığı %70 ve Tura’nın olasılığı %30 ise o zaman tahminimizi daha doğru yapabiliriz). Şimdi bu %50-%50 Yazı-Tura olasılığı durumunda, varsayalım ki parayı havaya atıyoruz ve Tura geliyor. Tura’nın geldiği bilgisi bir enformasyondur: İşte bu enformasyon miktarının tam 1 bit olduğunu söyleriz. Şimdi eğer bir değil de iki tane parayı havaya atar ve hangi yüzlerin geldiğini öğrenirsek (örneğin Tura ve Yazı gelmiştir), o zaman 2 bit’lik bir enformasyon elde etmiş oluruz. Ve saire.
Tekrarlayacak olursak, bir komünikasyon sisteminde A noktasından B noktasına aktarılan büyüklük, yukarıda tanımını yaptığımız ve ‘bit’ ile ölçülen enformasyondur. Bu aktarım belli bir hızda gerçekleştiği için, bir enformasyon iletim hızından da söz edebiliriz: Örneğin, 1 bit/s (her saniye 1 bit’lik enformasyon iletilir) veya 100 bit/s (saniyede 100 bit’lik enformasyon iletilir). Shannon’un en önemli buluşlarından biri, her komünikasyon ortamının (her ‘kanalın’), bir enformasyon iletim hızı sınırının olduğudur: bu sınıra, ‘kanal sığası’ denir. Kanal sığası, komünikasyon sistemleri açısından çok temel bir kavram niteliğindedir. Şöyle ki: Örneğin bir komünikasyon linkinin kanal sığası 100 bit/s ise, yollanan enformasyon hızını kanal sığasının altında tuttuğumuz sürece (örneğin 99 bit/s), öyle bir komünikasyon sistemi tasarlamamız mümkündür ki (ki bu oldukça karmaşık bir sistem olabilir), alıcı, yollanan verileri sıfır hata payıyla elde edebilir. Tersine, eğer enformasyon hızı kanal sığasının üzerinde seçilirse (örneğin 120 bit/s), o vakit hayal edilebilecek en karmaşık alıcının bile yollanan veriyi hatasız şekilde elde edebilmesi mümkün değildir, yani hata payı sıfırlanamaz.
Shannon, makalesinde, o sıfır hata payına erişen verici/alıcı sistemlerinin nasıl tasarlanması gerektiğini belirtmedi; ancak bunun kodlama yoluyla (yani gönderilen bit’lere kontrol bit’lerinin eklenmesiyle) mümkün olacağını gösterdi. Genel bir kural şu ki, bir komünikasyon sistemi hatalara karşı ne kadar dayanıklı yapılmak (hata payı ne kadar düşürülmek ) istenirse, sistemin karmaşıklığı da o kadar artar. Ancak karmaşıklık, maliyet demektir. Aşağıda da değineceğimiz gibi, yarı iletken tümleşik devre teknolojisi, karmaşık komünikasyon sistemlerinin maliyetini makul düzeylerde tutabilmemizde en önemli etken olmuştur.
Görüldüğü gibi kanal sığası, komünikasyon kanalları için temel bir sınır niteliğindedir. Komünikasyon kanalları, enformasyon iletim hızının, kanal sığası altında kalacak ama aynı zamanda kanal sığasına mümkün mertebe yaklaşacak şekilde tasarlanır.
tasarladığı bir oyuncak: Jonglörlük yapan palyaçolar.
Burada, ‘bit’ kavramına geri dönüp faydalı olacağını düşündüğümüz bir açıklama getirelim. Bilişim terminolojisinde, bit sözcüğünün iki anlamı vardır. Bunlardan ilkini yukarıda gördük: Bit, enformasyon miktarını ölçme birimidir. İkinci ve halk dilinde daha yaygın anlamı ise, günlük hayatta kullandığımız ‘bit’ sözcüğü ile ilgilidir. Bu ikinci bit anlamı (buna “bilgisayar bit’i” diyelim), “enformasyon bit’i” anlamından ne bakımdan farklıdır?
Bilgisayar bit’i, İngilizcede ‘ikili rakam’ anlamına gelen ‘binary digit’ sözcüklerinden türetilmiştir. Nasıl ki onluk tabanda sayılar 10 rakamdan ( 0, 1, 2, 3, 4, 5, 6, 7, 8 ve 9’dan) oluşuyorsa, ikilik tabanda da sayılar 2 rakamdan oluşur: 0 ve 1. Yani bit, 0 ya da 1 rakamıdır. Bu anlamda, örneğin, hard diskinize kaydettiğiniz Word dosyanız 30 bin bit (30 kilobit, yani 30 kbit) büyüklüğünde olabilir. Bilgisayar bit’i anlamında kullanılan bit sözcüğü için bir diğer örnek ise, veri iletimi hızıyla ilgilidir: Evdeki İnternet bağlantınız sözgelimi 2 Mbit/s (2 Mbps, yani 2 megabit-per-second) hızında çalışıyor ise, bu, saniyede 2 milyon bit gönderildiğini veya alındığını ifade eder. Bilgisayar bit’i anlamındaki bit sözcüğünü Amerikalı matematikçi John W. Tukey’e borçluyuz. Shannon, enformasyon bit’inin tanımını yaptığı söz konusu makalesinde, bu sözcüğün kökeni olarak Tukey’ye atıfta bulunur. Yani Shannon, bit sözcüğünü Tukey’den ödünç almıştır, fakat aynı zamanda bu sözcüğe teknik açıdan ikinci bir anlam yüklemiştir. Genel olarak hard disk’e 0 ya da 1 şeklinde kaydedilen bir bit, en fazla 1 bit’lik enformasyon içerir, ama sıklıkla bu enformasyon miktarı 1 bit’in çok altındadır.
Shannon’un rubik kübünü çözen makinesi.
Bilişim devriminin teorik altyapısını, Shannon’un çalışmaları ve özellikle “Komünikasyonun Matematiksel Kuramı” başlıklı 1948 yılında yayınlanan makalesine borçlu olduğumuzu gördük. Bu makale o kadar önemlidir ki Scientific American dergisi, ondan, enformasyon çağının Magna Carta’sı olarak söz etmiştir. Makale basılır basılmaz Shannon’a şöhret kazandırmış ve biliminsanlarına olduğu kadar komünikasyon mühendislerine de devrim niteliğinde yepyeni perspektifler açmıştır. İşte günümüzde hâlâ son derece aktif bir araştırma alanı olan, her yıl çok sayıda konferansın yapıldığı ve yüzlerce bilimsel makalenin yazıldığı “enformasyon teorisi” disiplini bu şekilde doğmuştur.
Ancak bilişim devrimini mümkün kılan ikinci bir gelişmeyi da hatırlatmadan geçmeyelim: 1947 yılında transistorun icadı. Ne ilginçtir ki bu icadı gerçekleştiren J. Bardeen, W. Brattain ve W. Shockley de Shannon ile aynı yıllarda Bell Laboratuvarları’nda çalışıyorlardı. Bu üç bilimadamı buluşları için 1956 yılında Nobel ödülüne layık görüleceklerdi. İşte günümüzde tek bir mikroçipe 100 milyonlarca transistor yerleştirerek elde ettiğimiz (1), insanlık tarihinde şimdiye dek eşi benzeri görülmemiş bir hesap gücü sayesinde Shannon’un ortaya koyduğu komünikasyonun kuramsal sınırlarına pratik açıdan yaklaşabilmekteyiz.
1948-1949 yılları, Shannon’un bilimsel kariyeri açısından en önemli yıllar olmuştur. Ancak sadece bilimsel açıdan değil aynı zamanda özel hayatı açısından da önem taşıyan yıllardır bunlar, çünkü 1949’da Shannon, Bell Laboratuvarları’nda sayısal analist olarak çalışan Mary Elizabeth Moore (Betty) ile evlenir. İki erkek ve bir kız evlatları olur. 1956 yılında Bell Laboratuvarları’ndan ayrılan Shannon, eğitim ve araştırma faaliyetlerini sürdürmek için MIT’ye geri döner. Orada, emekli olacağı 1978 yılına, yani 62 yaşına kadar çalışacaktır.
Shannon’un ‘En Son Makina’ dediği bir kutusu. Şalter kapatıldığında kutu kendiliğinden açılıyor, içerisinden bir mekanik el dışarıya uzanıp şalteri açıyor, sonra kutunun içine tekrar yerleşiyor ve bunun üzerine kutu kapanıyor.
Kendi ifadesiyle Shannon, çok sayıda ‘gereksiz’ icada imza atmıştır. Beş piyano ve otuza yakın müzik enstrümanı barındıran evinin bir odasını ayırdığı bu sıra dışı nesne ve oyuncaklar arasında, romen harfleri ile hesap yapabilen bir hesap makinası, Rubik küpünü çözebilen bir robot ve kimilerinin ‘ilk taşınabilir bilgisayar’ addettiği, rulet oyununda hile yapmak amacıyla tasarlanan bir cihaz vardı (Shannon, bu cihazı 1961 yılında matematikçi Edward Thorp ile birlikte geliştirmişti; bir ayakkabı veya sigara kutusu içerisine gizlenebilen aygıt, dönmekte olan ruletin hareketini öngörüp, topun, çemberin hangi bölgesine düşeceği hakkında tahminde bulunuyordu; Las Vegas’ta bir gazinoda başarıyla test edilmişse de, sonraları, bazı donanım sorunlarından dolayı gerçek amacı için kullanılamamıştı).
Shannon’un hayranlık duyduğu bir diğer konu, jonglörlüktü. Çalıştığı Bell Laboratuvarları’nda, sadece koridorları tek tekerlekli bisikletiyle dolaşmasıyla değil aynı zamanda jonglörlük yeteneği ile de ün yapmıştı. Zamanla kendini geliştirip üç top ile jonglörlük yapabilme düzeyine ulaşmıştı. Daha sonra tasarladığı bir oyuncakta, küçük bir sahne üzerine yerleştirdiği üç mekanik palyaço havaya çok sayıda top, halka ve sopa fırlatıp jonglörlük yapıyordu.
Shannon’un merak sardığı bir diğer alan ise satrançtı ve satranç oynayabilen bir makina geliştirmişti. Günümüzde bilgisayar satranç oyunlarında, hâlâ Shannon’un yarattığı bazı algoritmalardan faydalandığı söylenmektedir.
Yapay zeka konusunda da oldukça kafa yormuştu Shannon. 1950 yılında Bell Laboratuvarları’nda çalışırken, bir makinanın öğrenme yetisinin nasıl geliştirilebileceğini ilginç bir ‘oyuncak’ tasarlayarak gösterecekti. Bu oyuncak, bir mekanik fareden ve 25 odalı bir labirentten oluşuyordu. Fare, pek çok deneme-yanılma hamlesi sayesinde labirenti keşfedip çıkışı buluyordu. Böylece, labirentin yapısını öğrenmiş olan fare, labirentin herhangi bir yerine tekrar bırakıldığında, vakit kaybetmeden doğrudan çıkışa yönelebiliyordu. Labirentin duvarlarını yer yer kıpırdatıp şeklini değiştirmek mümkündü. Bu durumda fare labirenti tetkik ediyor ve tekrar öğreniyor, ancak bildik bir yere geldiğinde doğrudan çıkışa ulaşabiliyordu. Yani bilgisini güncelleme ve geliştirebilme yetisine sahipti bu akıllı fare. Bugün, mikroişlemci ve mikromekanik parçalarıyla bile gerçekleştirmekte zorlanacağımız bu türden bir cihazı Shannon’un 1950 yılının teknolojisiyle yaratabilmiş olması gerçekten hayranlık uyandırmaktadır.
Shannon, başka pek çok icat da bulunmuştu. Bunlardan belki en komiği ve en abesini anlatmadan bitirmeyelim. Normalde çalışma masasının üzerinde tuttuğu ve adına ‘En Son Makina’ dediği bir kutuydu bu. Kutunun yan tarafında küçük bir şalter bulunuyordu, fakat bunun dışında kutunun dış görünümünde herhangi bir özellik yoktu. Ancak şalter kapatıldığında kutu kendiliğinden açılıyor, içerisinden bir mekanik el dışarıya uzanıp şalteri açıyor, sonra kutunun içine tekrar yerleşiyor ve bunun üzerine kutu kapanıyordu…
Mühendislik bilimlerinde ya da matematik dalında Nobel ödülü olsaydı, Shannon şüphesiz bu ödüle layık görülürdü. Claude Shannon, adeta tek bir makale ile, yepyeni bir bilim yaratmış ve yeni bir çağ açmıştı. Böylesine bir başarı bilim tarihinde pek az insana nasip olmuştur.
1) 1971 yılında Intel 4004 ana işlem birimi 2300 transistor içerirken, günümüzdeki ana işlem birimleri birkaç milyar transistor içerebilmektedir. 2014 yılında, bazı özel tümleşik devrelerde transistor sayısı 20 milyara ulaşmıştır. (http://en.wikipedia.org/wiki/Transistor_count)
Önceki makaleViyana Kahvelerinde Bilim Tarihi: Boltzmann ve Café Jelinek
Sonraki makaleMichael Heinrich’in Marksizmi, kapitalizmi ve emperyalizmi: Batı cephesinde yeni bir şey yok!