Forum: Diğer Konular RSS
Rasgelelik Üzerine Devam Eden Bir Deney
The Global Consciousness Project
Avatar
Salih Dinçer #1
Üye Ock 2012 tarihinden beri · 1912 mesaj · Konum: İstanbul
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Konu adı: Rasgelelik Üzerine Devam Eden Bir Deney
The Global Consciousness Project
http://noosphere.princeton.edu

Olay kısaca şu:

Rasgele sayı üreteçini, dünyada meydana gelen olayların ve/veya bağlı olduğu bilgisayarın kullanıcısının vasıtasıyla etkileyebildiği gerçeğidir. Elde edilen verilere göre bunun gerçekleştiği tespit edilmiş, örneğin 11 Eylül 2001 olayları!

Ayrıntısını bilmiyorum, inceleyeceğiz...
Bilgi paylaştıkça bir bakmışız; kar topu olmuş ve çığ gibi üzerimize geliyor...:)
acehreli (Moderatör) #2
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4527 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Pek bilimsel değil galiba:

  http://en.wikipedia.org/wiki/Global_Consciousness_Project#…

Ali
Avatar
Salih Dinçer #3
Üye Ock 2012 tarihinden beri · 1912 mesaj · Konum: İstanbul
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Bilemiyorum çünkü bilim insanı değilim ama Discovery'de izlediğimi bir meraklısı olarak dile getirebilirim...

Rasgelelik üzerine, kodlar dışında kalan alanlarda da (fiziki manada) çalışılması taraftarıyım. Çünkü bilgisayarlarımız her ne kadar sürekli kendi için öz hata denetimleri olsa da bunlar sayesinde %100 istikrarla çalışmaktalar. Biz ise bu istikrarlı yapı içine en basitten zamanlama işlevleri katarak rasgelelik elde etmeye çalışıyoruz...

Elbette burada yazdığımız basit bir uygulama için uniform(x, y) demek son derece yeterli. Ama bazı bilimsel benzetimlerin (simulation) hesaplamalarında gerçek hayattan uzaklaşıyor ve/veya bir kalıp içine giriyor olmalı. Şöyle zannediyorum: Her rasgele algoritmanın bir deseni var. Bu desen iğne veya dal ile kumaş gibi. Geliştirdiğiniz yazılım iğne ucu gibi küçük ise desene yakalanmadan usulca kumaştan geçiyor ama değişkenler çok fazla ve karmaşıksa (dal gibi ucu kalın ise) kumaşa takılıyor.

Tabi bu konu biraz pisişik şeylerle ilgili gibi ama Kelebek Etkisi Kuramı'nı hatırlatırım...

Aklımda kaldığı kadarıyla şöyleydi:
Atıyorum, Afrika'nın balta girmemiş ormanlarında uçan bir kelebeğin kanat çırpışları, Amerika sahillerini vuran bir siklona sebep olabilir.
Elbette burada ana sebebin bir kelebek olduğunu vurgulamıyoruz. Ama ağzına kadar dolu bir bardağın ortasına düşen küçük bir damla bardağı taşırabilir. Burada ise meydana gelen damlaların bir araya gelip göl oluşturması ve elektronik devreyi kapsayacak kadar güçlü olması. Neden olmasın; insan vücudu da elektrik üretiyor ve beyin hakkında daha bilmediğimiz o kadar çok şey var ki...
Bilgi paylaştıkça bir bakmışız; kar topu olmuş ve çığ gibi üzerimize geliyor...:)
acehreli (Moderatör) #4
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4527 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
İlk söylediklerine diyecek bir şey yok. Bilgisayar algoritmalarının ürettiği sayı dizileri gerçekten rasgele değillerdir.

Salih Dinçer:
değişkenler çok fazla ve karmaşıksa (dal gibi ucu kalın ise) kumaşa takılıyor.

Karmaşıklık konusunu anlayabiliyorum ama kumaşa takılma benzetmesini kaçırdım.

Tabi bu konu biraz pisişik şeylerle ilgili gibi ama Kelebek Etkisi Kuramı'nı hatırlatırım...

Ben fizikçilik oynadığım zamanlarda dinamik sistemler üzerinde çalışmıştım. Kelebek etkisi bir kuram değildir. Dinamik sistemlerin zaman içindeki davranışının başlangıç koşullarındaki küçük farklılıklara kaotik olarak bağlı olduğunun hoş bir ifadesidir.

Pisişik ile ilgisinden haberim yok. Ben üzerinde çalıştığım zaman tamamen bilimseldi.

bilmediğimiz o kadar çok şey var ki...

Tabii ki. Neyse ki The Global Consciousness Project de açıklamalar getirmiyor ve yalnızca bulguları ortaya koyuyor. Güzel. Şimdi o bulguların geçerliliğine bakmak gerek. Yukarıda verdiğim bağlantıdaki başka bilim adamları ise bulguların istatistiksel oynamalar dahilinde olduğunu ve bir önem taşımadıklarını söylüyorlar.

Önce bulguların geçerliliği kabul edilsin, ondan sonra araştırılır.

Ali
Avatar
Salih Dinçer #5
Üye Ock 2012 tarihinden beri · 1912 mesaj · Konum: İstanbul
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Bu arada, TV belgesel serisini Morgan Freeman sunuyordu, kendisini çok severim. Seri ise şu:

http://en.wikipedia.org/wiki/Through_the_Wormhole (5."Is There a Sixth Sense?" 6 July 2011)

acehreli:
Karmaşıklık konusunu anlayabiliyorum ama kumaşa takılma benzetmesini kaçırdım.
Demek istiyorum ki her kumaşa iplikçilerin kullandığı mercek ile bakarsanız bir deseni vardır. Bazı kumaşlar şöyle, bazıları böyle örülmüştür. Bu desenin sıklığını ve ipliklerin örülme biçimini belirler. Eğer yazılımınız iğne misali küçük boyutta ise kolaylıkla desene (rasgelelik algoritmasına) takılmadan geçecektir. Ancak bir dal parçası gibi kalın uçlu bir tahta çubuksa (veya daha iyisi örgü şişi ise) sık örülmüş bir kumaştan geçemeyecektir.

Gerçi burada verdiğim ve gerçek hayatta görebileceğimiz örneğe ters düşen bir olgu da var. Rasgeleliğin iyi olması için karmaşıklığı arttırıyoruz. Bu da desenin sıklığının artacağı anlamına geliyor. Ancak yukarıdaki açıklamamdan ne demek istediğimi anlamış olmalısınız. Çünkü büyük ölçekli yazılımlar (örgü şişi) sözde rasgelelik algoritmasının etkilerine (şişin desene takılmasına) daha müsait olmalı. Bunlar benim kişisel, düşünsel deneyimlerim. Elle tututlur bir tecrübem yok çünkü ben bilim insanı değilim; basit bir yazılımcı hepsi o kadar...:)
Bilgi paylaştıkça bir bakmışız; kar topu olmuş ve çığ gibi üzerimize geliyor...:)
Bu mesaj Salih Dinçer tarafından değiştirildi; zaman: 2012-10-05, 06:00.
Değişiklik nedeni: Bilim adamı yerine bilim insan demeyi ihmal etmişim!
Avatar
mert #6
Üye Ara 2010 tarihinden beri · 194 mesaj
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Salih;
rasgelelik değil de bakış açımızı aslında mükemmelce birbirini tamamlayan çok fazla sayıda değişkenin bir bütüne etkimesi, bir olguya etkimesi yönlerine çevirmemizde yarar var.

Hava olayları örneğin; bize meteorolojik tahminler yapabilmeyi belirli koşulların izlenmesi aracılığıyla sağlayabiliyorlar. Biz alçak basınç yüksek basınç kavramlarından yola çıkarak basınç düşümü veya yükseliminin yaşadığımız koşullara nasıl etkiyeceğini ölçüm ve gözlemlerle tahmin edebiliyoruz.

Zamanla bilim haline gelen bu türden olgular/oluşumlar deneyler, gözlemler,istatistikler,  radarlar vs vs gibi binbir araç gereç, yöntem ve analizle artık tahmin olmaktan çıkıyorlar.

Bizim için de rasgelelik aradığımız çoğu 'şey' de ne yazık ki böyle. Çok fazla bilinmeyenin olaya/olguya etkimesi aslında bütün hesaplarını bililiyor oldumadığımızda bizi oldukça şaşırtırken yöntemlerini, araçlarını, incelemelerini vesair ıvır zıvırlarını hatmettiğimiz şeyler ise bizi şaşırtmıyorlar.

Aslında pek çok şeyde rasgelelik değil de bir düzenlilik varmış gibi düşünelim derim ben.

Düzensizliğin bizim kavrayışlarımızın dışında olduğu hallerde çoğu zaman tesadüfi dediğimiz şeyler aranır. En kolay yaklaşım da bunu yakıştırmak olur gözlediğimiz olguya.

Dediğin gibi o desenlerden farklı ölçek, dizilim, frekans vs. biçiminde her yerde var gibi gibi.
Mesele şu; biz hangisini tesadüfi kabul ediyoruz.

Çoğu şey gibi bu kavramlar da biraz bizim algımız ile ilgili.
Kimisi bir dala bakar ve yapraklarının tesadüfi açılarla ve sırayla yerleştiğini düşünür, kimisi hesap yapar inceler karşılaştırır ve aslında pek çok bitkinin yapraklarının fibonacci sıralamasına uygun dizildiğini bulur şaşırır.

Kimileri ise...  neyse.

ah şu meraklı programcılar ah :-))
mert
Avatar
Salih Dinçer #7
Üye Ock 2012 tarihinden beri · 1912 mesaj · Konum: İstanbul
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
mert:
Bizim için de rasgelelik aradığımız çoğu 'şey' de ne yazık ki böyle. Çok fazla bilinmeyenin olaya/olguya etkimesi aslında bütün hesaplarını bililiyor oldumadığımızda bizi oldukça şaşırtırken yöntemlerini, araçlarını, incelemelerini vesair ıvır zıvırlarını hatmettiğimiz şeyler ise bizi şaşırtmıyorlar.

Aslında pek çok şeyde rasgelelik değil de bir düzenlilik varmış gibi düşünelim derim ben.
Evet, belki de öyle düşünmek daha iyi olabilir. Sonuçta bakış açısı, bir resmin negatifine baktığımızda düzensizlik, pozitifine baktığımızda ise düzen görüyor olabiliriz. Oysa her ikisi de aynı fotoğrafa aittir.

Bu arada yukarıda alıntıladığım paragrafı anlayamadım. Belki de kırmızı kelimedeki yazım hatasından dolayı anlamamış olabilirim. Biraz daha açıklamanızı rica edeceğim...
Bilgi paylaştıkça bir bakmışız; kar topu olmuş ve çığ gibi üzerimize geliyor...:)
Avatar
mert #8
Üye Ara 2010 tarihinden beri · 194 mesaj
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Bizim için de rasgelelik aradığımız çoğu 'şey' de ne yazık ki böyle. Çok fazla bilinmeyenin olaya/olguya etkimesi aslında bütün hesaplarını biliyor olmadığımızda bizi oldukça şaşırtırken yöntemlerini, araçlarını, incelemelerini vesair ıvır zıvırlarını hatmettiğimiz şeyler ise bizi şaşırtmıyorlar.

Bakmadan yazılınca böyle hatalar olabiliyor. Kusura bakma lütfen.
Kontrol de edilse gözden kaçabiliyor.


Özetle; "olgular üzerine ne kadar çok şeyi bilirsek o kadar anlaşılır oluyor gözlenen"  demek istemişim.
mert
Avatar
Salih Dinçer #9
Üye Ock 2012 tarihinden beri · 1912 mesaj · Konum: İstanbul
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Estağfirullah, hatalar hep olur ama anlaşamadığımız zaman yazının hiç önemi kalmıyor. Açıkçası internet ortamında anlaşmanın zor olduğunu düşünüyorum. Yanlış anlaşılmalar ile dolu. En bariz örneği Suriye'deki çatışma haberlerinin ülkemize yansımaları olabilir. Sınıra yakın bir araziye top düşüyor, hemen Hatay yine vuruldu falan diyorlarmış. Bu çok övdüğümüz sosyal medya denilen yerde oluyor. Halbu ki il merkezi (~ 40 küsürdü zannedersem) ve sınıra en yakın ilkçe kilometrelerce uzaktaymış. Bunlar sanırım insani ve masumane tepkiler... (ancak dikkat, yurt dışına yansımaları kötü oluyormuş!)

Hoş gerçek denilen şey göreli, yani kişiden kişiye göre değişiyor. O yüzden gördüklerimiz doğru olsa bile gerçek algımız farklı olabiliyor. O yüzden dediğiniz gibi rasgeleliğe farklı bir açıdan (düzenlilik) bakmakta fayda var. Sanırım ben de şu sıralar o aşamadayım. Özellikle her şeyi basite indirgeme eğilimim işleri kolaylaştırıyor diyebilirim...:)
Bilgi paylaştıkça bir bakmışız; kar topu olmuş ve çığ gibi üzerimize geliyor...:)
Avatar
Salih Dinçer #10
Üye Ock 2012 tarihinden beri · 1912 mesaj · Konum: İstanbul
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Öncelikle Mert ağabey, nasılsın?

Kısa sürede cevap alamazsam telefon açacağımı bilmeni isterim. Gerçi seni merak ettiğim için yine de arayacağım ama önce burada, sonra telefonda devam edersek harika olacak ya...:)

Bir aralar rasgeleliğin frekansı konusunda konuştuğumuzu (yukarlarda bir yerde olacak) hatırlıyorum. Az önce bir deney yaptım; yaptığım ise basitçe, uniform() mekanizmasını kullanarak rasgele türler/veriler üretmek ve bunları bir yığına yazmak. Bakın şuna ki üst üstte iki çalıştırmada da 62 bit veri üretmişim:

T0,1 anındaki sonuç:
0: bool
1: bool
198: ubyte
39370: ushort
726: ushort
23319: ushort
1: bool
1: bool
1: bool
0: bool
24 baytlık yığına, 62 bitlik veri yazıldı...
Gönderilen veri: 01110101101100010111000000101101011010011001110010101100011010
Geri alınan veri: 01110101101100010111000000101101011010011001110010101100011010

T0,3 anındaki sonuç:
1: bool
0: bool
6: ubyte
1: bool
1: bool
0: bool
21947: ushort
0: bool
65206: ushort
9847: ushort
24 baytlık yığına, 62 bitlik veri yazıldı...
Gönderilen veri: 00100110011101111111111010110110001010101101110110110000011001
Geri alınan veri: 00100110011101111111111010110110001010101101110110110000011001

Elbette bu bir tesadüf ama genelde uniform'un ürettiği rasgele değişkenleri beğenmiyorum. Belki de bilgisayarın ürettiği sözde rasgelelikte bir sorun var ya da bende. Yani ard arda her iki sonuçta rasgele olmayan birbirine benzeyen şeyler olduğunu ve/veya güzel görünmediğini hissediyorum.

Bunu aşabilir miyiz? Yani daha iyi çalışan uniform2() diye bir işlev yazılabilir mi?

Teşekkürler...
Bilgi paylaştıkça bir bakmışız; kar topu olmuş ve çığ gibi üzerimize geliyor...:)
Avatar
mert #11
Üye Ara 2010 tarihinden beri · 194 mesaj
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Merhaba Salih,
Buralardayım aslında ben ama sesim soluğum çıkacak halde değil. D ile geliştirdiğim programımda yapay zeka çekirdeği de kabul edilebilecek modüllerimi tasarlıyorum. Çok yorucu zamanlar bu aralıklar ama bir o kadar da keyifli.

Uniform işlevinin ürettiği değerleri rasgelelik kavramı ile bağdaştırmak çok isabetli olmaz diye düşünüyorum ben de: Doğada daha keyifli ve eğlenceli desenler keşfedebilir, bu desenleri uygun bir analiz sürecinden geçirip programlayabilirsin. Ha şimdi örnek verebilecek misin diyeceksin, benim örnek vermemden ziyade senin örneği yakalaman sanırım en doğru yaklaşım olur. Bu sözümden; rasgelelik kavramının algıdan algıya değişiklikler gösterebileceği anlaşılabilir. Yani bana rasgeleymiş gibi görünen başkasına doğal, bir başkasına pekala mantıklı bir dizilim gibi görünebilir

Yukarıda söylediklerim ışığında göstermiş olduğun örneklerin bana bir şey ifade etmediğini belirtmeden geçemeyeceğim. iki veri kümesinin eşleşmesinden "bu rasgeledir sonucunu" çıkarmamız doğru olmaz, bir süreklilik şart elbet :-))
mert
Bu mesaj mert tarafından değiştirildi; zaman: 2013-03-04, 07:40.
acehreli (Moderatör) #12
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4527 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Salih Dinçer:
Elbette bu bir tesadüf ama genelde uniform'un ürettiği rasgele değişkenleri beğenmiyorum.

uniform Mersenne Twister denen algoritmayı kullanıyor.

Rasgele sayı dizisi üreticilerinin çok farklı ayarları olabiliyor: kaç sayıdan sonra tekrarlasın, sayıların benzerlikleri nasıl olsun, vs. std.random modülünde MersenneTwisterEngine diye bir tür var. Parametreleriyle oynayarak senin işine uygun olan bir dizi üreticisi oluşturabilirsin.

uniform, std.random içinde Mt19937 adı verilmiş olan ayarları kullanıyor:
alias MersenneTwisterEngine!(uint, 32, 624, 397, 31, 0x9908b0df, 11, 7,
                             0x9d2c5680, 15, 0xefc60000, 18)
    Mt19937;
Ali
Avatar
Salih Dinçer #13
Üye Ock 2012 tarihinden beri · 1912 mesaj · Konum: İstanbul
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Mert ağabey, ben bu konuları biraz daha düşüneyim...:)

acehreli on 2013-03-04, 10:06:
Parametreleriyle oynayarak senin işine uygun olan bir dizi üreticisi oluşturabilirsin.
Teşekkürler Ali hocam, parametreler ile oynayacağım ama algoritmanın temeli konusunda çekincelerim var...

Bu arada parametreler konusunda şu bilgiler faydalıymış:
struct MersenneTwisterEngine(UIntType, size_t w, size_t n, size_t m, size_t r,
                             UIntType a, size_t u, size_t s,
                             UIntType b, size_t t,
                             UIntType c, size_t l)
    if(isUnsigned!UIntType)
{
    ///Mark this as a Rng
    enum bool isUniformRandom = true;
/**
Parameter for the generator.
*/
    enum size_t wordSize = w;
    enum size_t stateSize = n;
    enum size_t shiftSize = m;
    enum size_t maskBits = r;
    enum UIntType xorMask = a;
    enum UIntType temperingU = u;
    enum size_t temperingS = s;
    enum UIntType temperingB = b;
    enum size_t temperingT = t;
    enum UIntType temperingC = c;
    enum size_t temperingL = l;
 
    /// Smallest generated value (0).
    enum UIntType min = 0;
    /// Largest generated value.
    enum UIntType max =
        w == UIntType.sizeof * 8 ? UIntType.max : (1u << w) - 1;
    /// The default seed value.
    enum UIntType defaultSeed = 5489u;
 
    static assert(1 <= m && m <= n);
    static assert(0 <= r && 0 <= u && 0 <= s && 0 <= t && 0 <= l);
    static assert(r <= w && u <= w && s <= w && t <= w && l <= w);
    static assert(0 <= a && 0 <= b && 0 <= c);
    static assert(a <= max && b <= max && c <= max);
 
    :    :    :
Bilgi paylaştıkça bir bakmışız; kar topu olmuş ve çığ gibi üzerimize geliyor...:)
acehreli (Moderatör) #14
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4527 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Salih Dinçer:
algoritmanın temeli konusunda çekincelerim var...

Eğer ilgileniyorsan rasgele sayı üretimiyle ilgili sorunlara ve Mersenne Twister'ın o sorunların bazılarını taşımadığına değinen şu yazıdan başlayabilirsin:

  http://en.wikipedia.org/wiki/Pseudorandom_number_generator

Ali
Doğrulama Kodu: VeriCode Lütfen resimde gördüğünüz doğrulama kodunu girin:
İfadeler: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O
Özel Karakterler:
Bağlı değilsiniz. · Şifremi unuttum · ÜYELİK
This board is powered by the Unclassified NewsBoard software, 20100516-dev, © 2003-10 by Yves Goergen
Şu an: 2017-11-18, 09:24:31 (UTC -08:00)