Gutenberg müzesi

İki hafta önce fazladan mesai saatlerimi izin alarak kullanayım dedim. Bu izni de uzun zamandır gitmeyi düşündüğüm Gutenberg müzesine harcadım. Müze Gutenberg’in hayatını geçirdiği Mainz şehrinde. İstasyondan yürüme onbeş yirmi dakika mesafede.

Aşırı yağmurlu bir günde normal sefer planlarına hiç uymayan tren yolculuklarıyla Mainz’a ulaşmayı başardım. Müzeye geldim. Kasadaki çalışandan bir bilet istedim ve kadın bana sanki Alman olduğunu söylemeden Alman olduğunu anlatmak için herhangi bir indirimden yararlanma hakkı iddiasında bulunmak ister misiniz diye sordu. İndirimden yararlanacak kadar genç görünmediğime emindim. O kadar yaşlı görünmediğimi de umuyordum. Hayır dedim.

Müzenin girişinde çok eski zamanlarda Mainz bölgesinde yaşamış dev hayvanların modelleri ziyaretçileri karşılamaktaydı. Gutenberg, matbaa filan diye düşünürken, aynı binanın hem doğa müzesi hem de matbaa müzesi sergi alanı olarak kullanıldığını öğrendim.

Mainz uzun bir dönem sular altında kalmış bir bölge olduğundan buralarda çok miktarda su canlısı fosili de bulunmuş.

Her doğa müzesinde olduğu gibi burada da doldurulmuş, korunmuş ya da modelleri yapılmış bir sürü, daha güncel canlı türleri de sergilenmekte ama bu ziyaretimin asıl konusu matbaanın icadıydı.

Zemin kattaki matbaa girişinde başlangıç seviyesi Almancasıyla yabancı bir görevli bana bir alet gösterdi ve selfie çekip bastırmak isteyip istemediğimi sordu. Bana gösterdiği alet bir yazıcıydı, selfie kısmı nasıl olacak diye anlamaya çalışırken dijital karttan bahsetmeye başladı. O da ne acaba derken elimdeki şeyleri alıp gişede bana verilen o zamana kadar hiç fark etmediğim bembeyaz bir kartı aldı bununla yapacağız, yapalım mı dedi? Adama öyle kanım ısındı ki yapalım lan dedim. Fotoğraf makinesine benzer bir şeyin karşısına geçtim, kartı makineye yerleştirdim ve ekranda yüzümü gördüm. Adam bu poz uygun mu diye sordu. Neden olmasın ki diye düşündüm ve uygundur dedim. Düğmeye bastı. Tamam oldu dedi. Şimdi bunu yazıcıda mı bastıracağım diye sordum. Bakın dedi, burada bir karekod var, onu tarayıcıdan okutursanız resmi görebilirsiniz dedi. Hemen cep telefonunu çıkardım, karekodu okuttum ve web sayfasındaki fotoğrafı gördüm. Süper dedim, çıktısını almaya gerek yok artık. Fotoğrafı sayfadan nasıl alırsınız bilmiyorum dedi görevli ama ben fotoğrafı telefona çoktan indirmiştim bile. Hallettim, merak etmeyin dedim ve adam da gülümsedi. Kendisine teşekkür ettim ve adam da bir sonraki ziyaretçiyi yardım tuzağına düşürmek için yerine döndü.

Şimdi bu fotoğrafta sadomazo kıyafet giymiş gibi çıkmamın nedenini kısaca açıklamaya çalışayım. Fotoğraf çekildikten sonra gri tonları değil de siyah ve beyaz şeklinde bir resme dönüştürülüyor. Üzerimdeki diyagonal siyah çizgiler kazağımın desenlerinden, dikay siyah çizgiler de fotoğraf makinesi askısından geliyor. Kazağım açık renkli olduğundan da bütün vücudum çıplakmış gibi bembeyaz çıktı. Yemin ederim öyle ya.

Müzenin sergilediği en değerli parçalar Gutenberg’in bizzat bastığı incillerdi. Toplam 180 adet basılmış ve dünyada şu an sadece 49 tanesi kalmış bu incilin iki tanesi müzede sergileniyor.

Aynı baskıdan iki değişik kopya yukarıda görülmekte. Dikkat edenler bu iki baskının birbirinden farklı olduğunu hemen görecektir. Madem farklı olacaklardı matbaanın anlamı neydi peki? Daha dikkatli olanlar farklı kısımların sadece renkli kısımlarda olduğunu görmüştür. Olay şöyle gerçekleşmiş. O dönemlerde siyah mürekkep renkli mürekkepten çok daha ucuz ve Gutenberg baskı için sadece siyah mürekkep kullanıyor. Sayfalar basıldıktan sonra siparişleri verenler parası karşılığı renkli kısımları özel siparişler sonucu elle yazan ustalara yazdırıyor. Böylece her bir incil matbaadan çıkmasına rağmen eşsiz oluyor.

Sonra saat başı yapılan baskı gösterisini seyrettim.

Bu matbaa makinesi tabii ki Gutenberg’in kullandığı makine değil. İlk matbaa tamamen ahşap olduğu için altıyüz yıl dayanmamış. Fotoğraftaki düzenek ama Gutenberg’in kullandığı ve kısmen geliştirdiği sisteme çok benziyormuş.

Öncelikle Gutenberg matbaayı icat etmemiş. Daha önce de uzak doğuda baskı makineleri, teknikleri var ama bu yöntemlerde bütün yazı tahta bir yüzeye oyuluyor ve sonra basılıyor. Bu hazırlık aşamasında bir hata yapılırsa o sayfanın en baştan yine oyulması gerekiyor. Gutenberg’in getirdiği en büyük yenilik her harfin tek tek değiştirilebildiği tipo baskı yöntemi. Fotoğrafta sağ tarafta görülen dikey baskı düzeneği aslında o dönemlerde de kullanılan şarap presi. Gutenberg bu kısmı olduğu gibi alıp kullanıyor. Onun makineye eklediği kısım yatay düzenekte görülüyor. Masada duran metal çerçeve içindeki harfler. Harflerin kalay, kurşun, antimon alaşımından yapılması birkaç avantaj sağlıyor. Metal ahşaptan daha dayanıklı. Bu alaşımın artıkları 300 derece gibi düşük bir sıcaklıkta eritilip çok kısa sürede tekrar kullanılabiliyor ve bu alaşım çok kısa sürede elle tutlabilecek kadar soğuyor.

Metal baskının işe yarayabilmesi için doğru boyaya da ihtiyaç var ama. O zamanki boyalar metal zemin üzerine yapışıp kalmıyordu. Kimin tarafından bulundu bilinmiyor ama matbaa için özel boyalar da üretiliyor. Bu boyalar fotoğrafta rafta görülen deri kaplama tokmak benzeri aletlerle metal harflere bastırarak sürülüyor. Sonra kağıt soldaki çerçeveye yerleştiriliyor, metal bloğun üzerine indiriliyor ve şarap presinin kolu sıkıca çekiliyor. Sonrası mürekkebin kurumasını beklemekten ibaret.

Metal harfler yukarıdaki, “type case” denen çekmecelerde saklanıyor. Her harfin bölmesi ayrı. Dikkat ederseniz aşağıdaki bölmeler yukarıdaki bölmelerden daha büyük. Bunun nedeni de aşağıdaki bölmelerde bir sayfada çok daha sık kullanılan küçük harflerin, yukarıdaki bölmelerde de daha az sıklıkta kullanılan büyük harflerin bulunması. Bu sayede dizgici daha az hareketle harfleri sayfaya dizebiliyor. Upper case ve lower case isimleri de harflerin bu yerleşiminden geliyor.

Bir incilin tüm sayfalarının dizgisi yanlış hatırlamıyorsam üç ay filan sürmüş. Bu tabii ki çok uzun bir süre ama ondan sonra baskılar çok hızlı yürüyebilmiş. Gutenberg’in matbaasından önce incilin bir kopyasının elle yazılması üç yıl kadar sürüyormuş.

Müzenin en eğlenceli kısmı ise ikinci kattaydı ama randevu almadığım için oraya giremedim. Bu katta ziyaretçiler, eğitmenler gözetiminde, matbaa ile kendi tasarımlarını bastırabiliyorlar. Ben gittiğimde on onbeş kadar çocuk matbaa ile oldukça eğleniyorlardı. Sanırım, bir dahaki sefere sırf bu iş için tekrar bu müzeye gideceğim.

Prinzhorn koleksiyonu

Heidelberg psikiyatri kliniğinde geçen yüzyılda toplanmış eserlerin bir kısmının sergilendiğini öğrendim ve geçen hafta bu sergiye gittim.

Serginin başında önce yarım saat kadar geçmişte, yani daha çok 70lerden sonra bazı sorunlara karşı nasıl yaklaşıldığıyla ilgili bilgiler verildi. Bu bilgilerle ilgili video malzemesi de sunuldu.

Sonra resimlerin olduğu dört beş tane küçük odayı gezmeye başladık. Resimler genelde suluboya, pastel ile kağıt üzerine yapılmıştı. Tuvalet kağıdı ya da pişirme kağıdı üzerine yapılmış resimler de vardı.

Bir odada zamanında tutulmuş dosyalar vardı. Sadece birini açıp incelemek mümkündü ama.

Aşağıda sergideki bazı eserlerin resimlerini görebilirsiniz.

Kim bilir arşivde daha ne tür eserler vardır?

Darksiders 2 (PS4)

Darksiders serisinde bundan hemen önce genesis’i oynadım ve onu da beğendim. Bu ise daha da çok hoşuma gitti.

Genesis’ten daha da uzun geldi bana. Hikaye öğeleri de daha başarılıydı.

Bu oyunda da bazı bilmecelerin çözümü için oyunun ilerleyen safhalarında kazanılan yeteneklerle eskiden bitirilmiş kısımlara geri dönmek gerekiyor. Oyunu ilk oynayan biri için bu durumu çözmek hiç de kolay değil.

Oyunu basit seviyede oynadım ve başlarda ve ortalardaki bazı yaratıklar zor geldi. Oyunun sonlarına doğru ölüm meleği setini (silah ve zırhlar) bulduktan sonra oyun çok kolaylaştı, çünkü artık hayat kendi kendini rejenere etmeye başladı. Bu andan itibaren bütün güçlü rakipleri satece ghoullar ve tabancayla öldürmeye başladım. Tabanca ile her isabet öfke sayacını artırıyor ve bu sayede çabucak yine ghoulları çağırabiliyordum. Bu sayede kavgalar uzun sürüyor ama yaklaşmama hiç gerek olmuyor. Yaklaştığımda da kılıçla bir iki darbe hayat enerjimi yeniden iyileştiriyor. Bunun dışında sadece kaçarak dövüşleri kazanmaya başladım.

Oyundaki bilmeceler genelde standard şeyler ama birkaç tanesi çok güzeldi. Bir iki tane bilmece zamana karşıydı ama onlar da çok zor değildi.

Oyunda rakibe doğru koşmak her zaman kolay olmuyor, çünkü rakip birçok durumda kamera kadrajında olmuyor. Karakterimiz (ölüm) sadece saldırı tuşuna bastığımızda en yakınındaki düşmana doğrudan saldırıyor. Bunu ne yazık ki oyunun en sonunda keşfettim. Daha önce bilseydim, oyun çok daha kolay olabilirdi.

Güzel bir mahşerin dört atlısı hikayesi ve bilmecelerle dolu bir oyun oynamak isteyebilecek herkese tavsiye edebileceğim bir oyun.

Bir olasılık yanılsaması

Bu deneyde şu duruma bakacağım:

Elimizde bir yalan makinesi var. Birisi yalan söylediğinde bu yalanı yüzde doksanbeş ihtimalle anlıyor. Birisinin doğru söyledğini de yüzde doksan ihtimalle anlıyor. Yani doğru söyleyen birinde yüzde on ihtimalle yalan söylediğini iddia ediyor. Yüz kişilik bir grubumuz var ve bu grupta bir kişi yalancı, geri kalan herkes doğruyu söylüyor. Gruptan rasgele seçilen birini bu yalan makinesine bağlıyoruz ve kendisine yalan söyleyip söylemediğini soruyoruz. Bu kişi hayır yalan söylemiyorum diyor ve yalan makinesi bu kişinin yalan söylediğini iddia ediyor. Yüzde kaç ihtimalle bu kişi yalancıdır?

Yukarıda da belirttiğim gibi bu soruyu bir deney olarak işleyeceğim. Yani soruyu matematiksel olarak çözmeyi denemeyeceğim. Deneyde 100 kişi alacağım. Rasgele birini yalancı diye işaretleyeceğim, geri kalan hepsi doğrucu olacak. Sonra her kişiyi tek tek yalan makinesine sokacağım ve yalan makinesini sorudaki olasılıklar dahilinde tahminlerde bulunacak. Bu tahminleri de her kişi için işaretleyeceğim. Sonra da gerçek yalancıların sayısının yalancı olarak tahmin edilen kişilerin sayısına oranına bakacağım.

Bu deneyi bir kaç kere yapıp çıkan grafiklere bakalım.

Aşağıdaki grafikler için önce biraz açıklama yapayım. Mavi noktalar, ürettiğim gerçek popülasyon olmaktadır. 1.0 değerine karşılık gelen noktalar, yani kişiler, o kişinin doğruyu söylediğini, 0.0 değerine karşılık gelen noktalar ise o kişinin yalancı olduğunu gösteriyor. Grafikler daha kolay görülsün diye yalan makinesinin çıktılarını kırmızı yaptım 2.0 ve 0.0 değerleriyle eşleştirdim. Yani 2.0 değerine karşılık gelen bireyler yalan makinesinin doğru söylediğine inandığı kişiler ve 0.0 değerine karşılık gelen kişiler ise yalan makinesi tarafından yalancı olduğu tespit edilen kişiler.

Bu deneyde görüldüğü gibi, 100 kişiden sadece 1 tanesi gerçekten yalancı ama yalan makinesi 14 kişiyi daha yalancı olarak tespit etmiş. Bu durumda bir yalancı olduğu tahmin edilen bir kişinin gerçekten yalancı olma ihtimali 1/15 olmakta.

Bu deneyde ise gerçek yalancı dışında 7 tane daha yalancı tespit edilmiş. O zaman yalancı olduğu iddia edilen rasgele birinin gerçekten yalancı olma şansı 1/8 olmakta.

Bu deneyleri yeterince tekrarlayıp ortalamalarını aldığımız zaman teorik sonuçlara oldukça yaklaşabiliriz. İsteyen yazının sonunda vereceğim programı biraz daha geliştirerek bu sonucu da elde edebilir.

Yalan makinesinin tahmin başarısı aslında tek tek bakıldığında yüksek oranlar gibi gözükse de eğer aradığımız özellik popülasyonda çok az bulunan bir özellik ise hiç beklemediğimiz kadar zayıf sonuçlar veriyor. Yani yüzde doksanlarda tahmin başarısı beklediğimiz bir testte başarı yüzde onun altına düşüyor. Bunun nedenlerinden biri tabii ki bir sürü yanlış pozitif tahmin olması. Gerçek pozitif sonuç çok nadir ise bu yalancı pozitifler başarı oranını çok düşürüyor. Popülasyondaki yalancı sayısını artırarak bir iki deney yapayım ve bunun etkilerine bakalım.

Aşağıdaki deneylerde yüz kişilik popülasyonumuzun 10 kişisi yalancıdır.

Yalan makinesi 16 kişinin yalancı olduğunu tespit etmiş. Gerçekte ise 10 yalancı vardı. Demek ki yalancı olduğu iddia edilen birisinin gerçekten yalancı olma şansı 10/16. Başarı oranı birden yüzde onlardan yüzde ellilere geldi.

Bu deneyde de yalan makinesi yanlış saymadıysam 19 kişinin yalancı olduğunu tahmin etmiş. Bu durumda tahminin doğru olma şansı 10/19 yani yine hemen hemen yüzde elli olmakta.

Peki yalancı pozitif ihtimalini düşürürsek nasıl bir başarı oranı bulabiliriz. Yalan makinemiz bu sefer doğrucu bir kişinin doğru söylediğini yüzde doksandokuz oranda tahmin etsin ve popülasyonumuzda yine sadece bir yalancı olsun. Bakalım başarı oranları nasıl değişecek.

Görüldüğü gibi yalancı pozitif sayısı çok daha azaldı ve böylece yalan makinesinin tahmin başarısı arttı ama yine de yüzde doksanlardan çok uzağız. Bu deneydeki başarı oranı 1/2 seviyesinde.

Buna benzer yanılsamalar popülasyonda çok ender görülen hastalıkların yüzde yüz olmayan testlerinde de meydana gelmektedir. Hastalar hastalığın yüzde doksandokuz oranında teşhis edildiğini bilip ve kendi testlerinin de pozitif olduğunu duyunca kesin hasta olduklarını düşünmekte ama gerçek ihtimal bu deneylerde de görüldüğü gibi çok daha düşük olabilmekte. Olasılıklar insan için sezgisel bir alan değil maalesef.

Deneylerde aşağıda verdiğim R kodunu kullandım.

generate_population istenilen popülasyonu yaratan fonksiyon. size parametresi popülasyonun büyüklüğünü, liars ise popülasyon içindeki yalancı bireylerin sayısını belirliyor.

detect_lie fonksiyonu ile yalan makinesini simüle ediyoruz. verilen person kişisi ile iltili tahmini doğru ve yalancı pozitif parametrelerine göre yapıyor.

do_the_experiment fonksiyonu ile bu deney bir popülasyon için yapılmakta ve sonuç grafik olarak gösterilmekte. İstenirse bu deney birçok kere tekrar edilir ve sonuçlar grafikte gösterilmeden sayılarak ortalama bulunabilir. Böylece terorik sonuca yakın bir sonuç elde edilebilir.

generate_population <- function(size, liars) {
  population <- rep(1, size)

  random_indices <- sample(1:size, liars)

  population[random_indices] <- 0

  return (population)
}

detect_lie <- function(person, true_positive, false_positive) {
  estimation <- runif(1)
  if(!is_liar(person) && estimation < false_positive) {
    return (0)
  } else if(is_liar(person) && estimation < true_positive) {
    return (0)
  }
  return (1)
}

is_liar <- function(person) {
  if(person == 1) {
    return (FALSE)
  } else {
    return (TRUE)
  }
}

do_the_experiment <- function() {
  matches <- 0
  detections = c()
  population <- generate_population(100, 1)
  print(population)
  for (person in population) {
    detection <- detect_lie(person, 0.95, 0.01)
    detections <- c(detections, detection)
    if(detection == is_liar(person)) {
      matches <- matches + 1
    }
  }
  x_axis <- 1:length(population)

  processed_detections <- lapply(detections, function(x) {
    # Check if the element is numeric before multiplying
    if (is.numeric(x)) {
      x * 2
    } else {
      # If not numeric, return the element unchanged
      x
    }
  })

  old_par <- par(mar = c(5, 4, 4, 8) + 0.1, xpd = TRUE)
  plot(x_axis, population,
       type = "l",        # Plot as a line
       col = "blue",      # Color the first line blue
       ylim = range(c(population, processed_detections)), # Set y-limits to cover the range of both datasets
       xlab = "Kişi",    # X-axis label
       ylab = "Yalancı / Doğrucu"
  )

  points(x_axis, processed_detections,
        type = "l",        # Add as a line
        col = "red")

  legend("top",       # Position of the legend
         legend = c("Gerçek nüfus (1 doğrucu, 0 yalancı)", "Yalan makinesi tahminleri (2 doğrucu, 0 yalancı)"), # Labels for the legend
         col = c("blue", "red"),    # Colors matching the lines/points
         lty = 1,
         inset = c(0, -0.3))

  par(old_par)
}

Kumarbazlık deneyi (Rasgele yürüyüş)

Stokastik prosesleri öğrenmek için yeni bir kitaba başladım. Bir hafta olmadı daha. Üniversite’de de stokastik dersleri almıştım ama o zamanlarda bilgisayarlarla ilgim yoktu ve sadece teorik kısmını anlamaya çalışmıştım. Bu prosesleri asla somutlaştırmayı, bir şekilde simüle etmeyi denememiştim. Artık matematiksel kısmından çok deneysel kısmına odaklanmak istiyorum. Belki bu konuyu biraz daha sezgisel anlamayı başarabilirim.

İlk deneyde bir kumarbaz var. Bu kumarbazınbaşlangıçta k (bir tamsayı) doları var. Kumarbazımız basit bir yazı tura oyunu oynamayı düşünüyor. Eğer yazı gelirse 1 dolar kazanacak, tura gelirse 1 dolar kaybedecek. Oyun iki şekilde bitebiliyor. Ya kumarbazın hiç parası kalmadığında ya da kumarbazın n doları olduğunda. Burada n de k sayısından daha büyük bir tamsayı.

Bu deneyde bulmak istediğim şey, kumarbazın hangi ihtimalle parasını kaybedeceği. Yazının sonunda simülasyonda kullandığım kodu da (R dilinde) vereceğim.

Bu sorunun cevabının matematiksel olarak nasıl bulunacağını bu yazıda göstermeyeceğim.

Önce, kumarbazımızın olası oyunlarının nasıl görünebileceğini bir iki grafikle görelim. Bütün simülasyonlarda hilesiz para kullandım, yani yazı veya tura gelme ihtimalleri yüzde elli.

Bu grafikte kumarbaz oyunu kazanıyor. Başlangıçta 20 dolar ile başlıyor ve 350 kez civarında yazı tura attıktan sonra 40 dolara ulaşıyor ve oyun bitiyor.

Bu simülasyonda ise kumarbazımız 400 kez yazı tura oynadıktan sonra bütün parasını kaybediyor.

Kumarbazın bu oyunu kazanma ihtimalini deneysel olarak bulmak içinse oyunu birçok defa oynayıp kaçını kazandığını ve kaçını da kaybettiğini saymamız yeterli olacaktır. Aşağıdaki simülasyonları kumarbazın oyunu 1000 kere oynadığı durumlar için yaptım. Paramız hala hilesiz.

Başlangıç parası 20$ ve hedef kazanç 40$ olduğunda yukarıdaki histogramı elde ettim. Soldaki mavi sütun kumarbazın kaç oyunu kaybettiğini, sağdaki mavi sütun da kaç oyunu kazandığını gösteriyor. Kırmızı çizgi de kayıpların toplam oyun sayısına oranını veriyor. Yani kumarbazımız bu oyunun sadece yüzde ellisine yakınını kaybetmiş.

Bu simülasyonda başlangıç parası 20 dolar ama hedef para 60 dolar. Kumarbaz bu oyunların yüzde 64’ünü kaybetmiş.

Başlangıç parasını 20$, hedefi de 80$ yaptığımda da yukarıdaki histogramı elde ettim. Kaybetme oranı bu sefer yüzde 74 oldu.

Bu üç simülasyona bakınca kaybetme oranı sanki (hedef parası – başlangıç parası) / hedef parası gibi gözüküyor. O zaman hedef parasını 100 $’a çıkarırsak kaybetme oranı da yüzde seksene yaklaşmalı. Bunu da denedim.

Sonuç gerçekten beklediğimiz sonuçla uyum içinde. Problemin matematiksel çözümü de aynı sonucu vermekte.

Simülasyonlar ve grafikler için kullandığım R kodu aşağıdadır.

gamble fonksiyonu, kumarbazın bir oyunu için kullanılmaktadır.

k = kumarbazın başlangıçtaki parası

n = kumarbazın ulaşmak istediği para miktarı

p = yazı gelme olasılığı

simulate_gamble fonksiyonu bir oyun sırasında her adımdaki para miktarını simüle edip sonuçları bir grafik olarak gösterir.

do_the_experiment fonksiyonu da bu oyunu bin kere oynatıp sonuçları bir histogram şeklinde gösterir.

gamble <- function(k, n, p) {

  coin_sides <- c("Heads", "Tails")
  probabilities_heads_bias <- c(p, 1 - p)
  state <- k

  while (state > 0 && state < n) {
    single_toss <- sample(x = coin_sides, size = 1, replace = TRUE, prob = probabilities_heads_bias)
    if (single_toss == "Heads") {
      state <- state + 1
    } else {
      state <- state - 1
    }
  }
  if (state == 0) {
    return (1)
  }
  return (0)
}

simulate_gamble <- function(k, n, p) {
  if (k <= 0 || k >= n || p < 0 || p > 1) {
    stop("Invalid input: Ensure 0 < k < n and 0 <= p <= 1")
  }

  coin_sides <- c("Heads", "Tails")
  probabilities_heads_bias <- c(p, 1 - p)
  state <- k

  random_walk <- c(k)

  while (state > 0 && state < n) {
    single_toss <- sample(x = coin_sides, size = 1, replace = TRUE, prob = probabilities_heads_bias)
    if (single_toss == "Heads") {
      state <- state + 1
    } else {
      state <- state - 1
    }
    random_walk <- c(random_walk, state)


  }
  plot(random_walk,
       type = "l",         # "l" for lines is often better for walks, or "b" for both
       lwd = 1.5,          # Line width
       col = "blue",       # Line color
       main = "Kumarbazın rasgele yürüyüşü", # Corrected title
       xlab = "Adım sayısı",                    # Corrected label
       ylab = "Kazanç durumu",               # Corrected label
       ylim = c(0, n)
  )
  # Add horizontal lines for boundaries (optional)
  abline(h = 0, col = "red", lty = 2)
  abline(h = n, col = "red", lty = 2)
}

do_the_experiment <- function(k, n, p) {
  if (k <= 0 || k >= n || p < 0 || p > 1) {
    stop("Invalid input: Ensure 0 < k < n and 0 <= p <= 1")
  }

  trials <- 1000
  simlist <- replicate(trials, gamble(k,n,p))
  mean_value <- mean(simlist)

  hist(simlist,
       main = paste("Kazançların ve kayıpların histogramı"),
       xlab = "Kazançlar/Kayıplar",
       col = "lightblue")

  abline(v = mean_value,
         col = "red",
         lwd = 3)

  legend("topright", legend = paste("Ortalama =", round(mean_value, 2)),
         col = "red", lty = 1, lwd = 3)
}

Jagged Alliance 3 (Xbox One)

Çok çok eskiden bu serinin ilk iki oyununu oynamıştım. Reflekslerin önemsizleştiği, sırayla hamle yapılan strateji türü oyunları hep sevmişimdir.

Oyunu yükledim ve basit seviyede oynamaya başladım. İlk grubumu ucuz elemanlardan seçtim. Başlardaki görevler kolaydı. Bu sırada internette oyun hakkında bilgi toplarken başta para istemeyen bir eleman yaratabileceğimi öğrendim. Bunun üzerine oyuna yeniden başladım.

Patlayıcılar üzerine uzman bir keskin nişancı karakteri yarattım. Bu karakterin tek sorunu hareketlerinin çok az olmasıydı. Bazı görevlerde elemanı olay yerine getirene kadar görev bitiyordu.

Bir iki madeni ele geçirdikten sonra oyun iyice kolaylaşmaya başladı. Para derdi kalmamıştı artık. Ondan sonra bir ikinci grubu daha kiraladım ve daha hızlı yayılmak mümkün oldu böylece. Oyunun sonlarına doğru o kadar çok param vardı ki üçüncü bir grubu daha kiralayabildim.

Oyunda bir çok yan görev var ama onlara bir türlü konsantre olamadım. Daha çok silah ve zırhları geliştirme yoluna gittim. Bunun için düşmanlardan elde ettiğim silahları, zırhları çoğunlukla yedek parça olarak kullandım. Oyunda ihtiyacımız olandan çok daha fazla kaynak var.

Sık sık mermi sıkıntısı yaşadım. Uzun menzilli silahların mermileri öyle çok bulunan şeyler değil. Buna karşı da silah ve mermi siparişleri verebiliyoruz. Onları seçtiğimiz limanlara göndertip orada harita ekranından hemen alabiliyoruz.

Kiraladığım elemanları yine harita ekranında eğitebileceğimi oyunun sonlarında fark ettim. Bu sayede zayıf özellikleri iyice geliştirme şansı buldum. Ayrıca ilk başlarda hızla arazi kazanmaya çalışıyordum ama ilerde bu arazileri elde tutmak için milis güçler de yetiştirmeye başladım. Böylece arazi kaybetme oranım da epey düştü. Ondan sonra oyun zaten iyice kolaylaştı.

Bir bölgeye girince stratejik olarak kolay bir noktaya (yüksek bir yer mesela) gidip, düşmanı oradan kuşatmak genelde işe yarayan bir strateji oldu.

Oyunda beni rahatsız eden bir iki şey de oldu. Özellikle kontrol kısmında. Oyuncuları belli karelere doğru hareket ettirirken çoğunlukla yanlış bir yere bastığımdan eleman hiç istemediğim bir hareket yapıp değerli hareket puanlarını çabucak tüketebiliyor. Örneğin gereksiz bir şekilde kapı açıp kapamak ya da yerdeki ölüleri talan etmek gibi şeyler çarpıima ortasında çok gereksiz hareketler olabilir.

Büyük ihtimalle bilgisayarda fare ve klavye ile çok daha kolay oynanacaktır ama konsolda da çok kötü değildi. Tur bazlı basit strateji oyunları seviyorsanız deneyin derim.

Bir el kaldırmadan çizim problemi üzerine düşünceler

Oyunun kuralları şöyle:

Elimizde birbirine komşu kare şeklinde kutulardan oluşan bir şekil var.

İstediğiniz bir kutudan başlayarak komşu kutulara geçerek bütün kutulara ulaşmaya çalışacağız. Bu sırada daha önceden bulunduğumuz bir kutuya tekrar gitmek yasak. Sadece sağa, sola, yukarı ya da aşağıya doğru hareket etmeye izin var.

Basit bir örnekle açıklamaya çalışayım:

Üçe üç bu dizilimde herhangi bir kutudan başlayabiliriz. Örneğin ortadaki kutudan başlayalım.

Şu an ortadaki kutudayız ve kurallara göre sadece sarı kutulara gidebiliyoruz. Mesela sola doğru gidelim.

Bu noktada sadece yukarı ve aşağı gidebiliyoruz, çünkü solda bir kutu yok ve, sağdaki kutuda daha önce bulunduk. Şimdi de aşağı doğru gidelim.

Bundan sonra oynayabileceğimiz hamleler artık belli ve bütün karelere erişebileceğiz.

Madem oyunun kurallarını gördük, o zaman basit bir probleme bakalım.

Bu kurallar çerçevesinde bu karelerin hepsini ziyaret edebilir miyiz?

Biraz denemden sonra bu şekil için soruyu çözemediğimi fark ettim. Sonra kendime şunu sordum. Acaba bu tür bir soruyu çok fazla deneme yapmadan cevaplamanın bir yolu var mıydı?

Sonra nedense aklıma satranç tahtası geldi. Tam olarak da komşu karelerin farklı renklerde olması. Bu nasıl işime yarayabilir diye düşünürken aklıma bir fikir geldi. Şimdi bu şekli satranç tahtası gibi çizeyim, yani komşu kareler farklı renklerde olsun.

Oyunun kurallarına baktığımız zaman, her hamlemizde bulunduğumuz renkten farklı renkteki bir kareye gitmek zorundayız. Yani Siyah bir kareden başlarsak nasıl oynarsak oynayalım siyah-beyaz-siyah-beyaz-siyah …. şeklinde hamleler yapmak zorundayız. Eğer beyaz bir kareden başlarsak da beyaz-siyah-beyaz-siyah … şeklinde oynayacağız. Bunu görmek kolay ama ne işimize yarayacak ki?

Böyle bir hamle sırasında beyaz ve siyah hamleleri sayarsak bunlar ya birbirine eşit sayıda olmalı ya da aralarındaki fark bir olmalı. Bunu basitçe sayarak görebiliriz.

Bunu yukarıdaki probleme uygularsak siyah karelerin beyaz karelerden iki fazla olduğunu görürüz. Yani yukarıda bahsettiğim hamle sıralarından sonra bir siyah kareye ulaşılamayacaktır.

Bu yöntem sadece belli bir türe ait problemlerin çözülemeyeceğini söylüyor. Eğer siyah ve beyaz kareler arasındaki fark en fazla birse bu problemin çözülebileceğini söylemiyor. Eğer siyah karelerin sayısı beyaz karelerin sayısından bir fazlaysa da oyuna bir siyah kareyle başlamamız gerektiğini yoksa hiçbir şansımızın olmadığını bu yöntemle kolayca görebiliriz.

Bu yöntem aynı zamanda bazı türdeki el kaldırmadan noktalar üzerinden geçme şeklindeki problemlerde de kullanılabilir. Bu çözümün çözülemez demediği bütün problemlerin bir çözümünün olup olmadığına arada bakmayı düşünüyorum. Belki çözüm bu problem için tamamen genellenebiliyordur.

Trigonometri (3)

Aşağıdaki denklemi çözünüz:

\(sin(2x – y) = cos(2x+y) \)

Bu soruda x ve y olmak üzere iki değişken terim ve bir denklem var. Bir değişkenin değerlerini diğer değişken cinsinden bulabilirsek yeterli bir çözüm olacaktır.

Eşitliğin iki tarafını da aynı trigonometrik fonksiyon cinsinden yazarsak işlerimiz kolaylaşabilir.

\(sin(\theta) = cos(\frac{\pi}{2} – \theta)\) özdeşliğini kullanarak bunu elde edebiliriz.

\(\longrightarrow cos(\frac{\pi}{2} – (2x – y)) = cos(2x+y) \)

Eşitliği fark olarak yazıp sıfıra eşitleyelim.

\(\longrightarrow cos(\frac{\pi}{2} – (2x – y)) – cos(2x+y) = 0 \)

Şimdi de şu özdeşlikten faydalanalım:

\(cos(\theta) – cos(\phi) = -2sin(\frac{\theta + \phi}{2})sin(\frac{\theta – \phi}{2}) \)

\(\longrightarrow cos(\frac{\pi}{2} – (2x – y)) – cos(2x+y) = -2sin(\frac{\pi}{4} + y)sin(\frac{\pi}{4} – 2x) = 0 \)

Bu çarpımın sıfır olabilmesi için çarpanların en az birinin sıfır olması lazım. O zaman her bir çarpanı sıfıra eşitleyip olası çözümleri bulalım. Sinüs fonksiyonu bildiğimiz gibi k tamsayı olacak şekilde \(k \pi \) noktalarında sıfır olur.

i) \(\frac{\pi}{4} + y = k \pi \)

\(\longrightarrow y = k \pi – \frac{\pi}{4} = \frac{(4k – 1)\pi}{4} \)

\(\longrightarrow y = \frac{(4k – 1)\pi}{4} \)

ii) \(\frac{\pi}{4} – 2x = k \pi \)

\(\longrightarrow \frac{\pi}{4} -k\pi = 2x \)

\(\longrightarrow 2x = \frac{(1-4k)\pi}{4} \)

\(\longrightarrow x = \frac{(1-4k)\pi}{8} \)

Sonra bu soruyu fonksiyonların argümanlarını eşitleyerek çözemez miyim diye düşündüm. Yani

\(\longrightarrow cos(\frac{\pi}{2} – (2x – y)) = cos(2x+y) \)

Buradan doğrudan şu adıma geçerek:

\(\longrightarrow \frac{\pi}{2} – (2x – y) = 2x+y \)

Kosinüs fonksiyonu \(2\pi\) periyotlu olduğundan bu eşitliği k herhangi bir tamsayı olacak şekilde şöyle yazalım.

\(\longrightarrow \frac{\pi}{2} – (2x – y) = 2x+y + 2k\pi \)

Sonra bu eşitliği çözelim.

\(\longrightarrow \frac{\pi}{2} -2k\pi = 4x \)

\(\longrightarrow \frac{(1 – 4k)\pi}{8} = x \)

Evet, ilk yöntemdeki çözümlerin birini bulduk ama diğerini nasıl bulacağız?

Bu noktada matematikçi bir arkadaşımdan yardım istedim ve bana kosinüs fonksiyonunun y eksenine göre simetrik olduğundan faydalan dedi.y eksenine göre simetrik demek

\(f(-x) = f(x) \) anlamına geliyor.

yani

\(\longrightarrow cos(\frac{\pi}{2} – (2x – y)) = cos(2x+y) \)

burada eşitliğin sağ tarafı için kosinüsün bir çift fonksiyon olduğunu kullanırsak, yani

\(cos(2x + y) = cos(-2x -y) \)eşitliğini kullanırsak

\(\longrightarrow cos(\frac{\pi}{2} – (2x – y)) = cos(-2x-y) \) elde ederiz. Şimdi bu argümanları kosinüsün \(2\pi\) periyotlu olduğunu gözönünde tutarak birbirine eşitlersek şu sonucu elde ederiz.

\(\longrightarrow cos(\frac{\pi}{2} – (2x – y)) = cos(-2x-y) \)

k herhangi bir tamsayı olmak üzere:

\(\longrightarrow \frac{\pi}{2} – (2x – y) = -2x-y + 2k\pi \)

\(\longrightarrow \frac{\pi}{2} – 2x + y = -2x-y + 2k\pi \)

\(\longrightarrow \frac{\pi}{2} + y = -y + 2k\pi \)

\(\longrightarrow 2y = 2k\pi – \frac{\pi}{2} \)

\(\longrightarrow 2y = \frac{(4k – 1)\pi}{2} \)

\(\longrightarrow y = \frac{(4k – 1)\pi}{4} \)

buluruz ki, bu da diğer yöntemle bulduğumuz sonucun aynısı olur.

Ortaokul Öğrencilerinin Eşitlik-Denklik Algılarına Yönelik Öğretmen Görüşleri. (Makaleler – 1)

Ortaokul öğrencilerine matematik dersi vermeyi düşündüğüm zamanlarda eğitim alanında yapılan araştırmalar bir bakayım demiştim. Başlıkta adı geçen makaleyi gördüğümde heyecanlandım birden. Matematik alanında bana ilginç gelen en basit kavramlardan biri ne de olsa eşitlikti. O kadar temel ki, Euclid’in Elementler adlı eserinde birinci aksiyom şu şekildedir:

“Aynı şeye eşit olan şeyler birbirlerine eşittir.”

Bundan daha basit ne olabilir ki gibi düşünebiliriz ama ortaokulda henüz bu olgunluğa ulaşmış olmadığımızdan sezgisel olarak buna inansak da bu eşitliğin ne olduğunu henüz anlamamış oluyoruz. O yıllarda bu konu üzerine düşündüğümü ben hatırlamıyorum. Oysa matematikte hemen hemen her satırda bir eşittir işareti kullanıyorduk. Bu yazıda bahsedeceğim makale de bu eşittir işareti üzerine.

Makale bu linkte:

Öğretmenlere, öğrencilerin eşitlik ve denklik kavramları arasındaki ilişkiyi ya da farkı nasıl ifade ettikleri sorulduğunda büyük çoğunluk iki kavramın da aynı şekilde kullanıldığını söylemiş. Bir öğretmen de bunun nedeni olarak ikisi için de aynı işareti kullandıklarından bahsetmiş. Düşünüyorum da, ben ortaokuldayken denklik işaretini kullanıyorduk. Kümelerin denkliğini filan eşitlik olarak göstermiyorduk. Modüler aritmetik bizim zamanımızda ortaokul müfredatında mıydı bilmiyorum ama orada da denklik işareti kullanılıyordu. Bir kısım öğretmen çocuklara eşitliği ve denkliği kesirlerin denkliği üzerinden anlatmış. Kesirleri sadece sayı olarak alırsak bence bu eşitliktir ama değişik cisimlerin oranları şeklinde alınırsa belki denklik olarak algılanabilir. Bundan ben de emin değilim. Makalenin ilerleyen kısımlarında aynı kavramlar öğretmenlere de sorulmuş ve öğretmenler arasında da benzer kavram kargaşası yaşandığı görülmüş. Eşitlik işlem yapma komutudur diyen öğretmen bile çıkmış.

Bir başka soruda da öğrencilerin eşitliği nasıl tanımladıkları sorulmuş ve çoğunlukla işlem yapma komutu olarak algılandığı görülmüş. İki tarafın denkliği ya da eşitliği olarak algılayanlar azınlıkta.

Öğretmenlere öğrencilerin denklik ve eşitlik arasındaki ilişkiyi nasıl gördükleri sorulduğunda ise yine büyük bir çoğunluk farksız olduklarını ifade etmiş. Bazı öğretmenlerin bu kavramları çok ters bir şekilde öğretmeye çalışmasını ise endişe verici bulduğumu söylemem gerek. Bir öğretmen şöyle bir açıklamada bulunmuş:

“Ben denk kesirleri anlatırken: ‘Çocuklar denk olan her şey eşittir ama eşit olan her şey denk değildir eşitlik daha kapsayıcı daha geneldir denk kesirlerde araya eşittir işareti koymamızın sebebi de budur.’ diyorum’’

Makalenin sonuç kısmında elde edilen bulguların daha önce yurtdışında yapılan çalışmalarla örtüştüğünü gösteriyor. Yurtdışında bu konuda daha çok çalışma yapıldığından bu sonuçların etkisinin de benzer olacağını beklemek heralde yanlış olmaz. Matematiği doğru anlamak için kavramları doğru anlamak ve kullanmak gerekecektir. Bunun için de öncelikle öğretmenlerin bu kavramları iyice anlamaları ve öğrencilere iyi ifade edebilmeleri gerekecek. Bizim okullarımızdaki kalabalık ortamların, öğretmenin her öğrenciyle yeterince ilgilenmesine imkan vermemesi de ayrı bir engel olarak önümüzde durmaktadır.

Mannheim ve yeni nesnellik sergisi

Birinci Dünya Savaşı yeni sonra ermiştir. Toplumda politik kırılımların yaşandığı bir dönem. İnsanlar, avangart ütopyaların gerçekleşmeyeceğini çok acı şekilde görmüş. Alman sanatçılar da buna tepki olarak resimde günlük nesnelere, görünür şeylere, toplumsal eleştirilere yer vermeye başlayarak bu akımı başlatmışlar. Bu dönemde portreler, manzaralar, şehir resimleri ve natürmort çok kullanılmış.

1925 yılında Mannheim’da yeni nesnellik akımıyla ilgili ilk resim sergisi açılmış. Demek ki ben de bu serginin neredeyse yüzüncü yıl dönümüne gitme şansına erişmişim.

Yeni nesnelliğin bazı alt kolları da ortaya çıkmış tabii ki. İngilizce’de de Verismo denen gerçeklik kolu, eserlerinde daha çok sosyopolitik meseleleri işlediler. Sadece sosyalist ya da komunist fikirler değil, nasyonal sosyalist fikirleri işleyen ressamlar da oldu. Bir başka alt kol da klasikçiler oldu. Bunlar sosyal konulara dalmadan geleneksel resim yöntemlerini kullandılar. Büyülü gerçeklik koluysa ilerde sürrealizme köprü olacaktı.

Sergiyi ben çok beğendim. Genelde biraz uğraşsam ben de bu resimleri yapabilirim hissi uyandıran eserlerdi. Tabii ki benim çok daha fazla uğraşmam gerekecek ama olsun. Portrelerde duygulara pek yer yoktu. Hatta elbiselerde, dekorda yüz ifadesinden daha çok detay vardı. Manzaralarda gerçeklikten çok basit şekillere yer verilmişti. Natürmort eserlerde meyvelerin egemenliğine son verilmişti. Şehir temalı resimler de güzeldi. İnşaat halindeki binalara bile yer verilmişti.

En iyisi lafı bırakayım da en beğendiğim resimlerden örnekler vereyim.

Sergide sadece bir resmin fotoğrafını çekmek yasaktı. O da bir dağcı olan Luis Trenker’in fotoğraf makinesiyle olan bir dağ fotoğrafıydı. Telif hakları nedeniyle bu resmi koyamıyorum ama internette aşağıdaki gibi linklerden bu tabloya ulaşmak mümkün.

https://sammlung.belvedere.at/objects/9005/luis-trenker-mit-kamera