Skip to main content
Back to Ideas

Randomness in Generative Art

Randomness in Generative Art

Rastgelelik, generative sanatın en temel yapı taşlarından biridir. Birçok sistem, çeşitlilik üretmek, tekrar eden sonuçlardan kaçınmak ve öngörülemeyen çıktılar elde etmek için rastgelelikten yararlanır. Ancak rastgelelik dediğimiz şey aslında göründüğü kadar basit değildir.

Fiziksel Yöntemlerden Bilgisayara Rastgelelik

Bilgisayarlardan çok önce insanlar rastgele sonuçlar elde etmek için fiziksel yöntemler kullanıyordu. Zar atmak, yazı tura çevirmek, kart karıştırmak veya kura çekmek gibi yöntemler, sonucu önceden tahmin etmeyi zorlaştıran fiziksel süreçlere dayanıyordu. Bu yöntemlerin ortak noktası, çok sayıda küçük ve kontrol edilmesi güç değişken içermeleriydi.

Bilgisayarlar ise farklı çalışır. Bir bilgisayar, kendisine verilen talimatları eksiksiz şekilde uygular. Aynı girdilerle çalıştırılan bir program her zaman aynı sonucu üretir. Bu nedenle bilgisayarların ürettiği rastgele sayılar çoğu zaman gerçek anlamda rastgele değildir. Bunun yerine, rastgele görünen sayı dizileri üreten matematiksel algoritmalar kullanılır. Bu sistemlere pseudo-random number generator adı verilir.

p5.js ile Rastgele Çizgiler Örneği

Aşağıdaki p5.js kodu, her çalıştırıldığında tarayıcı üzerinde ekrana 50 adet rastgele çizgi çizer:

function setup() {
  createCanvas(600, 600);
  noLoop();
}

function draw() {
  background(0);

  //randomSeed(10);

  stroke(255, 50, 70, 150);
  strokeWeight(2);

  for (let i = 0; i < 50; i++) {
    let x1 = random(0, width);
    let y1 = random(0, height);
    let x2 = random(0, width);
    let y2 = random(0, height);
    line(x1, y1, x2, y2);
  }
}

Kod bu haliyle çalıştırıldığında her seferinde farklı bir kompozisyon üretir. Ancak yorum satırındaki randomSeed(10) satırı etkinleştirilirse sistem belirli bir başlangıç değerine bağlanır. Program her çalıştırıldığında aynı sayı dizisini üretir ve aynı kompozisyon tekrar oluşur.

Seed: Deterministic Identity
Seed: Deterministic Identity

Bu durum, bilgisayarların çoğu zaman gerçek anlamda rastgele sayılar üretmediğini gösterir. Üretilen değerler rastgele görünür, ancak belirli bir başlangıç değeri (seed) kullanıldığında tamamen tekrar üretilebilirler. Bu noktada seed sadece teknik bir değer olmaktan çıkar ve üretim sürecinin bir parçası haline gelir. Aynı kurallar ve aynı seed kullanıldığında aynı sonuç yeniden oluşturulabilir.

Gerçek Rastgelelik ve Kontrol Dengesi

Bazı alanlarda ise bu yeterli değildir. Özellikle kriptografi ve güvenlik uygulamalarında tahmin edilemeyen rastgelelik gerekir. Bu amaçla elektronik gürültü, atmosferik olaylar veya radyoaktif bozunma gibi fiziksel süreçlerden yararlanılarak gerçek dünyadan veri toplanabilir. Bu yöntemler, fiziksel dünyadan gelen öngörülemez değişkenleri kullandıkları için klasik sözde rastgele üreticilere göre daha yüksek öngörülemezlik sağlayabilir.

Peki generative sanat için gerçekten "kusursuz" rastgelelik gerekli midir?

Çoğu zaman hayır.

Aslında tamamen rastgele sistemler genellikle ilginç sonuçlar üretmez. Rastgelelik tek başına çoğu zaman yalnızca gürültü oluşturur. Değerli olan şey, rastgelelik ile kurallar arasındaki dengedir. Sanatçı belirli sınırlar, ilişkiler ve davranışlar tanımlar; rastgelelik ise bu yapı içerisinde çeşitlilik yaratır.

Sanatçının Rolü: Sistem Kurmak

Rastgelelik ile tesadüf aynı şey değildir. Burada kullanılan rastgelelik, tamamen kontrolsüz bir sonuç üretmek için değil; belirlenen kurallar içerisinde çeşitlilik oluşturmak için kullanılır. Sanatçı sonucu doğrudan belirlemez, ancak sonucun oluşacağı alanı tasarlar.

Rastgelelik çoğu zaman kontrolün karşıtı değil, kontrolün bir parçasıdır. Önemli olan onu ortadan kaldırmak değil, anlamlı sınırlar içerisinde yönlendirebilmektir.

Bu nedenle bu tür üretim süreçlerini yalnızca rastgele sonuçlar üretmek olarak görmek yanıltıcıdır. Asıl mesele, belirsizliği bir sistem içerisinde kullanarak beklenmedik ama tutarlı sonuçlar ortaya çıkarmaktır.

Rastgelelik kendi başına anlam üretmez. Bir zar atmak ilginç bir sonuç verebilir, ancak tek başına bir anlatıya sahip değildir. Anlam; rastgeleliği yönlendiren kurallarda, kurulan sistemde ve sanatçının yaptığı seçimlerde ortaya çıkar.

Bu nedenle sanatçının rolü her sonucu önceden belirlemek değil, sonuçların ortaya çıkacağı koşulları tasarlamaktır. Kurallar, sınırlar ve davranışlar belirlenir; ardından sistem kendi içindeki olasılıkları keşfetmeye başlar.

Belki de bu yaklaşımın en heyecan verici tarafı buradadır. Eser yalnızca sanatçının doğrudan müdahalesiyle değil; sanatçı tarafından tasarlanan yapı ile sistemin ortaya çıkardığı beklenmedik sonuçlar arasındaki etkileşimden doğar.

Share