19 Aralık 2018 Çarşamba

Seçimi Sen Yap - Sahne

 

Charles: -Bitirdim.
Bitirdim.
Seçimi sen yap.
Emma: -Ne seçimi?
Charles: -Birisi Tanrı'nın tarafına geçmeli.
Bu kişinin Innes olmasındansa
senin olmanı yeğlerim.
Emma: -Yani bana kalırsa bunu
yok etmemiz mi gerekecek?
Charles: -Neyin doğru olduğunu
düşünüyorsan öyle yap.
Önce bir oku!

Makineler Mantık Yürütebilir mi - Alıntı


Açıklama: On sekizinci yüzyılın Avrupa'sını kasıp kavuran bir makine vardı. Satranç oynayan bir makine. Gösterilere çıkarılırdı. Çoğu insanı yenerdi. Bu makine Türk'tü! Oldukça gizemliydi. İnsanları hayran bırakırdı. İnsanların çoğu makinelerin mantık yürütemeyeceğine inanırdı. Hiçbir makine kendi kendine satranç oynayamazdı yani. Bu “yalnızca akıl bölgesinde, yani beyin gücüyle” olabilirdi çünkü. İnsanlar, onun mantık yürütebildiğini kabullenemez, ama nasıl çalıştığını da bir türlü anlayamazdı.

***

...Willis tüm bu noktaları göz önünde bulundurarak, oyuncunun dolaba sol taraftan girdiğine ve ayaklarım çekmecenin gerisindeki boşluğa uzatarak mekanizmanın arka tarafına oturduğuna karar vermişti. Oyuncu daha sonra ana bölmenin gerisindeki sahte arkalığı katlıyor, böylece kapaklar açılıp mekanizma gösterilirken ve içerisi aydınlatılırken kendisine öne eğilecek yeri açıyordu. Mekanizmanın arkasındaki kapak kapatılıp öndeki çekmece açıldığında, oyuncu ana bölmenin sahte arkalığını kaldırıp dik oturabiliyordu. Bu aşamada Willis'in deyimiyle, "deneme başarıyla sonuçlanmış kabul edilebilir. Sır artık tehlikede değildir." Ön kapak mekanizma görülecek şekilde rahatlıkla açık bırakılabilir, neredeyse boş olan ana bölmenin kapakları da açılabilirdi. Dolap kendi çevresinde döndürülebilir ve Türk fıgürünün içini gösteren kapaklar da açılabilirdi.

Tüm kapaklar kapatıldıktan sonra Willis'e göre oyuncu, satranç oyunu için en uygun pozisyonu alabilirdi. Türk'ün göğsündeki boşluğa doğru kayıp yerleşen oyuncu, onun yeleğinin içinden, "sanki bir tül perde gerisinden" bakar gibi rahatça oyun tahtasını görebilirdi. Kendi sol kolunu, Willis'in içinin boş olduğunu varsaydığı Türk'ün göğsünden geçirip sol kolunun içine kaydırarak otomatın elini hareket ettiriyordu. Elini "satranç tahtasının herhangi bir yerine götürebilir ve parmakları oynatan bir tel yardımıyla da taşları kaldırıp yerlerine koyabilirdi. Sağ eli dolabın üzerinde durduğundan, aletin oyun sırasında duyulan sesleri çıkarmasını, başını sallamak ve dolaba vurmak gibi diğer numaraları yapmasını sağlayan aksamı çalıştırıyor olabilirdi. Willis'e göre, Türk'ün elinde tuttuğu uzun pipo sol kolunu, oyuncunun eli rahatça içine yerleşecek ama garip bir görüntü oluşturmayacak biçimde şekillendirme amacını taşıyordu. "Bu anlatılan yöntem basit, mantıklı ve etkilidir; bu icadın makinelerin yardımı olmaksızın üretilmiş olabileceğini göstermekte, yani otomatın gerçekte üçüncü sınıfa dahil olduğu olasılığını ortaya koymakta, tek dahiyane noktasını ise, canlı bir oyuncunun gizlenmesinde yararlanılan ustaca yöntem oluşturmaktadır," diyerek sözlerini tamamlıyordu Willis.

Willis'in teorisi, daha önce Türk'ün sırrını ortaya çıkarma çabalarının hiçbirinde rastlanmadığı kadar kendi içinde tutarlı ve inandırıcıydı. Kitapçığın yayınlanmasından birkaç hafta sonra yazarının Willis olduğu ortaya çıktı. O zamanlar sadece 21 yaşında olan Willis, daha sonra Cambridge Üniversitesi'nde akademik kariyer yapacak ve 1837 yılında aynı üniversitede Uygulamalı Mekanik profesörü olacaktı. Bir biyografa göre; "marangozluk konusundaki pratik bilgisi, yaratıcı dehası ve kolay anlaşılır ifade yeteneği onu son derece başarılı bir profesör yapmış, derslerinin hep dolu geçmesini sağlamıştı." Yetenekli bir eğitmen olmasının yanı sıra, mekanik teorisine katkılarda bulunmuş, ilerleyen yaşlarında ise mimarlık ve arkeoloji alanlarında da otorite konumuna gelmişti.

Willis, Türk'ün çalışma mekanizmasını açıklarken göz önünde tutulması gereken şeylerden birinin, "Bay Kempelen'in yetenekleri. . ." olduğunu özellikle vurgulamıştı; bu yetenekleri zaten uzun zaman önce halkın takdirini kazanmıştı; gerçekten de kendisinin sahip olduğu yetenek ve deha, normalden daha fazla olmalı ki böyle bir makineyi hayal edebilmiş ve gerçekleştirebilmiştir." Daha önce yine böyle bir gizlenen oyuncu teorisini ortaya atan Thickness'in öfkesinin ve kopardığı gürültünün aksine, Willis Türk'ü açığa çıkarılacak bir sahtekarlık olarak değil, çözülmesi gereken bir bilmece gibi ele alıyordu. Kempelen ve Maelzel ile paylaştığı ortak noktalar, daha sonraki yıllarda gerçekleştireceği konuşma mekanizması alanındaki araştırmalarda da kendini gösterecekti. İzleyen yıllarda Kempelen'in konuşma makinesini yeniden yapıp geliştirilmesini sağlayacaktı.

Willis'in savının ana fikri, ne denli karmaşık olursa olsun hiçbir makinenin satranç oynayamayacağı idi. Bunun, yalnızca akıl bölgesinde, yani beyin gücüyle" olabileceğini söylüyordu Willis. Ama tam da Willis'in kitapçığı piyasaya sürüldüğü sıralarda, bir başka İngiliz tam aksi bir teoriyle ortaya çıkıverdi. Bir makinenin mantık yürütebileceğini savunan bu kişi, bilgisayarın öncülerinden Charles Babbage'dı.

Babbage'ın makinelere olan ilgisi, yirmi yıl önce Merlin'in atölyesini ziyaretinden beri hiç azalmamıştı. Willis'den yedi yaş büyüktü ve Cambridge Üniversitesi'nden mezun olmuştu bile. 1812 yılında, daha henüz bir öğrenciyken karmaşık matematik problemlerinin mekanik olarak çözümüyle uğraşmıştı. Anılarında, "Bir gün Cambridge'deki Analitik Kulübü'nde oturmuş, başım öne düşmüş, hayallere dalmıştım; yanımda da bir logaritma cetveli açık duruyordu.” diye yazmıştı. “Beni Öyle yarı uyur vaziyette gören üyelerden” biri, 'Hey Babbage, ne hayaller görüyorsun bakalım? diye seslendi. Ben de logaritmaları göstererek, 'Bu cetvelin makineyle hesaplanabileceğini' diye cevap verdim." Ama Babbage büyük matematikçi Pierre-Simon Laplace'ı ziyaret için Paris'e gidene dek bu konu üzerinde ciddi olarak kafa yormayacaktı.

Mekanik Türk

***

Sonunda Türk'un nasıl çalıştığını biri çözdü. Ve evet, onun da motivasyon kaynağı makinelerin mantık yürütemeyeceğiydi. Willis, çok değişik olduğu sanılan bazı şeylerin, aslında basit gerçeklerinin olabileceğine de bir örnek vermiş olur. Türk sadece bir gösteriydi. Yine de, kendi kendine çalışmasının imkansız olacağına inanılan bazı şeyler, bir dönem sonra gayet mümkün olabilir şeyler olduğu anlaşılır. Yani tam da o döneme denk gelen Charles Babbage sayesinde bu inanç da değişmek üzereydi.

Eziyet Çekmek - Sahne


Charles:
Bilirsin işte, ağızlığını ısır.
Hız her şeydir.
Birkaç ay içinde bitecektir.
Emma:
Beni endişelendiren şey ne ay...
...ne yıl, ne de onlarca yıl Charles.
Sahiden de...
...ebedi ruhunu bu kadar
az mı düşünmektesin?
Charles, cennetin kapılarından
hiç geçemeyecek olman...
...ve sonsuza dek
ayrı kalabilecek olmamız...
...hiç umurunda değil mi?
Charles:
Elbette umurumda.
Elbette umursuyorum.
Bunca yıldır neden
muallâktayım sanıyorsun?
Kısır bir arı gibiyim.
Bir bilim adamıyım,
ancak gün gibi aşikâr olan...
...gerçekleri görme korkusundan,
çalışmaya bir türlü cüret edemiyorum.
Hâlâ yeterince eziyet
çekmediğimi mi düşünüyorsun?
Emma:
Bana kalırsa sen Tanrı'yla
bir savaş içindesin Charles.
İkimiz de kazanamayacağını biliyoruz.

Filmdeki oyuncular daha önce A Beatiful Mind (Akıl Oyunları) filminde de oynadılar. Üstelik kaybettiği kızını sık sık hayal eder. Kurgusunda da o filmden biraz esinlenme var, görünüyor.

14 Aralık 2018 Cuma

Taranmış Sayfa Yazısını Doğru Yerleştirmek - Yazılım

Tarayıcı ve OCR yazılımları, bir kitap sayfasındaki her satırı, yeni bir satır başı olarak tarar, yazıya dönüştürürken. Amaç yazıyı, sayfadaki yerleşimine benzetmektir. Oluşturulan yazı, bilgisayarda incelenirken fena görünmez. Ama tablet ya da telefon gibi küçük ekranlı bir aygıtta incelenirken, çirkin bir yazıyla karşılaşılır. Yazı, olmadık yerlerinden bölünüp alt satıra geçiyordur. Üst satırın yarısı boş kalıyordur oysa. Yazı bütünlüğünü kaybetmiştir. O her satır yeni bir paragraf gibi algılanıyordur çünkü.

Bu fonksiyon yazıdaki satırları birleştirir. Bütün bir yazı oluşur. Sadece gerçek paragrafları böler, doğru yerlerinden. Artık taranan yazı, her ekranda iyi görünecektir.

Fonksiyon Kodu

def satirbirlestir(bmetin):

    muzunluk=len(bmetin)-1
    sira=0
    yenimetin=""
    while sira<=muzunluk:
        if bmetin[sira:sira+2] == "\n\n":
#       Paragraf bitişi
            yenimetin+="\n\n"
            sira+=2
        elif bmetin[sira:sira+2] == "-\n":
#       Satır sonu bölünen kelime           
            sira+=2
        elif bmetin[sira:sira+1] == "\n":
#       Satır sonundaki tam kelime           
            yenimetin+=" "
            sira=sira+1
        else:
#       Diğer tüm harfler aynen ekleniyor       
            yenimetin+=bmetin[sira]
            sira+=1

    return yenimetin

***

Aslında üreticilerin tarayıcı ve OCR yazılımlarına buna benzer bir kodu hâlâ eklememiş olması ilginçtir. Kullanıcılar, bir kitap sayfası tararken, böyle bir seçeneklerinin olduğunu fark etmeleri hoşlarına gidecektir. Eh, fonksiyonun kodunun çok ayrıntılı olması gerekmediğinden, açık kaynak kod olarak paylaşmakta sorun görülmedi. :-)

Resimlerdeki örneklerde, bir kitap sayfasının bir tablette nasıl göründüğü gösterilmiştir. Daha alttaki örnekte ise bu fonksiyon uygulandıktan sonraki durumu gösterilmiştir.

Fonksiyonu Uygulanmadan Önceki Görünüm:

Fonksiyon Uygulandıktan Sonraki Görünüm:

Not: Blogtaki her alıntı henüz bu fonksiyonla düzeltilmemiştir. Dolayısıyla bir tablet yada telefonla diğer taranan alıntıların nasıl göründüğünü deneyebilirsiniz.