Örneğin evrim ağacı sitesinde rastgele içeriğe gitme butonu var, rastgele sayı, şifre üretmek için yazılımlar var. Rastgelelik izlenimi nasıl veriliyor?
Bu soruya benim kullandığım paket program olan Matlab üzerinden açıklama yapayım. Şimdi random/rasgelelik istatistikte ve matematikte şu şekilde tanımlanır:
Genel olarak iki ana kategori vardır:
1)Uniformly Distribution
Bu dağılım Olasılık Teorisi'nde simetrik sürekli dağılım olarak da bilinir. Kısaca sınırları a ve b olan kapalı bir aralıkta geçerli olan dağılımdır. Bu a ve b değerleri fonksiyonun minimum ve maksimum değerleridir. Fizikte olasılık yoğunluğu ya da kümülatif entropi hesaplamalarında kullanılır.
Olasılık Yoğunluğu Fonksiyonu :
Kümülatif (birikimli) Dağılım Fonksiyonu :
2)Normal Distribution
Olasılık Teorisi'nde Gaussiyen dağılım dediğimiz dağılımdır. Bu dağılım süreklilik içerir (continuous).
Bu dağılımın fonksiyonu ise olarak verilir. Tabi işin içinde ortalama ve standart sapma ifadeleri vardır. Bu dağılım genelde doğa bilimlerinde (fizik) oldukça yaygındır.
Rastgele sayı bulmaları mümkün değil aslında çünkü yazılı algoritmalarının söylediği düzene göre buluyorlar.
Bilgisayarlarımız (henüz kuantum bilgisayarları kullanıma girmedi) deterministik. Yani aynı soruya hep aynı cevabı verirler. Zaten algoritmaları bu rastgeleliği elemine edecek şekilde tasarlandı. Rastgele sayı üretmek için üretilenler (Pseudo Random Number Generators PRNG) da yine bu algoritmaya göre bir rastgele sayı üretiyotlar. Poker sitelerinde mesela rastgele gibi gözükse de başlangıç dizilimi (seed "çekirdek") ve algoritma bilinirse bilgisayarın üretebileceklerini bilmek mümkün.
Ama gerçekten rastgele sayı ürettiği iddia edilen programlar da geliştirilmiş. Bunlar da hava sıcaklığı ya da radyasyonu ölçüp başlangıç dizilimi olarak aldığı için bir nevi öngörülemiyor. Ama o da algoritmasına göre hareket ediyor.
Rastgele sayi uretmek icin birden fazla metod vardir ve hicbiri aslinda rastgele degildir. Bildigim kadariyla bu methodlardan en cok kullanilani soyle ki; fonksiyon cagirildiginda, o an hardware'in urettigi sistem saati cekilir. Sistem saatinde, bilgisayarinizin kristaline bagli olarak, saniyenin cok altinda surelere inebilirsiniz. Mesela butona bastiginiz an saat 02:05:12,12537215 gibi bir sure gelir ve buradaki ",12537215" kismi dikkate alinir, ondan sonrasi sizin bu veriyi nasil islemek istediginize kalmis, isterseniz mod 10 kullanarak, sadece 10dan kucuk kismini alirsiniz, isterseniz bu degeri bolup ascii karsiligini elde edersiniz. Bunlari da otomatize edip fonksiyonlastirdiginizda ortaya bugun kullanilan rastgele parola olusturucu sistemler cikar.
Benim deneyini yapmadigim ancak birkac kere denk gelerek farkina varmami saglayan daha ilginc bir olay var bu konuyla ilgili. Biriyle bir konu konusuyorsak ve bu konunun icinde rastgele bir sayi gectiyse ya da telefonu tutarken 4 parmagim ona donukse, ona bir sekilde 4u gosteriyorsam mesela, aklindan bir sayi tut, ya da bana hemen bir sayi soyle dedigimde 4 diyor. Ne kadar dogru bilmiyorum ancak, sanki beyin bir stack seklinde veriyi tutuyor ve sayi istedigimde ilk aklina gelen sayi, en son beynin algiladigigi sayi oluyor, beyin sanki ilk oraya ulasiyormus gibi.