Tüm yazılar
Matematik28 Temmuz 2025

L-Sistemleri: Bir Eğreltiotunun Büyümesini Yazan Resmi Dilbilgisi

Bir biyolog 1968'de bitkilerin nasıl büyüdüğünü soruyordu. Cevabı dilbilim ve matematik karışımı oldu: Lindenmayer sistemleri. Birkaç basit kuralla eğreltiotu, ağaç, hatta Koch kar tanesi üretir.

Matematik Karavanı Editörü 7 dk okuma 5 soru
Eğreltiotu yaprağı — L-sistemleriyle modellenebilen klasik fraktal yapı

Bir biyologun sorusu

Aristid Lindenmayer (1925-1989) Macar asıllı Hollandalı teorik biyologdu. Utrecht Üniversitesi'nde alg ve bitkilerin hücresel büyümesini araştırıyordu. Bir gün 1968'de basit bir soru sordu:

"Bir bitki, sadece kendi koduyla, neredeyse ressam fırçası olmadan, bu kadar karmaşık ve düzenli yapıları nasıl üretiyor?"

Cevabı dilbilimden geldi: Noam Chomsky'nin resmi diller (formal grammars) kavramı. Lindenmayer benzer bir matematiksel sistem geliştirdi: L-sistemleri (Lindenmayer Systems).

L-sistem nedir?

Üç bileşenden oluşur:

  1. Alfabe (VV): kullanılan semboller kümesi. Örnek: {A,B}\{A, B\}.
  2. Başlangıç (axiom, ω\omega): başlangıç dizesi. Örnek: AA.
  3. Üretim kuralları (PP): her sembolün eş zamanlı olarak nasıl değiştirileceği. Örnek: AABA \to AB, BAB \to A.

Kritik fark Chomsky dilbilgisinden: kurallar paralel uygulanır. Tüm semboller aynı anda değişir. Bu, hücresel büyümeyi modellemek için doğal — tüm hücreler aynı anda bölünür.

Algler için L-sistem örneği

Lindenmayer'in en ünlü örneği: bir alg türünün hücre büyümesi.

  • Alfabe: {A,B}\{A, B\} — iki hücre tipi.
  • Axiom: AA.
  • Kurallar: AABA \to AB, BAB \to A.

İlk birkaç adım:

  • n=0n=0: AA
  • n=1n=1: ABAB
  • n=2n=2: ABAABA
  • n=3n=3: ABAABABAAB
  • n=4n=4: ABAABABAABAABABA
  • n=5n=5: ABAABABAABAABABAABABAABAAB

Uzunluk dizisi: 1,2,3,5,8,13,21,1, 2, 3, 5, 8, 13, 21, \ldotsFibonacci dizisi! Çünkü her adımda n+1=An+Bn|n+1| = |A_n| + |B_n| ve Bn+1=An|B_{n+1}| = |A_n|, yani uzunluklar Fibonacci yinelemesini izler.

Bitkilerin pek çoğunda gözlemlenen "Fibonacci spirali" tesadüf değil — büyüme dinamiklerinin doğal sonucu.

Tortu (turtle) grafikleri

L-sistemleri görselleştirmek için kaplumbağa grafikleri (turtle graphics — Logo dilinden) kullanılır. Sembollere hareket atanır:

  • FF: ileri git (çizgi çiz)
  • ++: sağa δ\delta açıyla dön
  • -: sola δ\delta açıyla dön
  • [[: pozisyonu kaydet (yığına it)
  • ]]: pozisyonu geri al (yığından çek)

Bu küçük "dil" ile karmaşık formlar üretilir.

Koch kar tanesi

  • Axiom: FF
  • Kural: FF+FF+FF \to F+F--F+F
  • Açı: 60°60°

İlk üç iterasyon: düz çizgi → tepeli üçgen → daha katmanlı → ... → Koch eğrisi, klasik bir fraktal. Birkaç iterasyondan sonra "kar tanesi" benzeri sınır oluşur.

Boyut: log4/log31.262\log 4 / \log 3 \approx 1.262 — kesirli boyut, fraktal.

Bitki ağacı

Çoğu fraktal bitki, dallı yapılar için [[ ve ]] kullanır:

  • Axiom: XX
  • Kurallar: XF[[X]+X]+F[+FX]XX \to F-[[X]+X]+F[+FX]-X, FFFF \to FF
  • Açı: 22.5°22.5°

Bu kuralı 6-7 iterasyon uygulayıp turtle grafikleriyle çizilirse, gerçek bir ağaca inanılmaz benzeyen dallı bir yapı çıkar. Ölü dallar, çatallı meyve dalları, doğal eğrilikler — hepsi.

Bilgisayar grafiği yazılımları (Blender, Houdini, SpeedTree) L-sistemleri kullanarak gerçekçi orman simülasyonları oluşturur. Avatar ve The Lord of the Rings filmlerindeki devasa ormanlar, L-sistemlerinin türevleriyle yapılmıştır.

L-sistemleri türleri

  1. Deterministik (D0L): kurallar tek, her sembol için tek değişim.
  2. Stokastik: her sembol için birden çok kural olasılıkla seçilir. Daha doğal görünüş.
  3. Bağlam-duyarlı (context-sensitive): sembolün değişimi komşu sembollere bağlı. Hücreler arası iletişim modelleri.
  4. Parametrik: sembollere sayısal parametreler eklenir (uzunluk, açı, kalınlık vb.). Sürekli büyüme.
  5. Açık L-sistemleri: çevreyle etkileşim (ışık, suya tepki).

Biyolojik gerçeklik

Lindenmayer'in motivasyonu yalnız grafik değildi: gerçek bitki biyologisini modellemek. Sera bitkilerinde dallanma yasalarını, alglerdeki hücre dizilimlerini, mantar miselyumunun ağ yapısını — hepsi L-sistemleriyle yakalanmıştır.

Dahası: DNA'da kodlanmış yapı olarak L-sistem analojisi var. Gen ifadesi, lokal kuralları olan, tüm organizmaya paralel uygulanan bir sistem. Türkiye laleleri ile Asya lalelerinin farklı çiçek formları, küçük L-sistem parametre farklarıyla açıklanır.

Genellemeler ve modern kullanım

  • 3D L-sistemleri: üç boyutta turtle (forward, yaw, pitch, roll). Mimaride generative tasarım.
  • L-sistem ses sentezi: müzik dizisi üretimi.
  • Procedural game maps: rastgele üretilen labirentler, şehirler, mağaralar.
  • Yapay zeka — gelişen mimari: sinir ağı topolojisi L-sistem benzeri kurallarla evrilebilir (Neuroevolution).
  • Bilim eğitimi: matematik-biyoloji köprüsü olarak okullarda öğretilir.

L-sistemleri ile resmi dilbilgileri

L-sistemleri Chomsky hiyerarşisinde paralel olmayan dilbilgilerden farklıdır. L-sınıfı ayrı bir hesaplama gücü kategorisidir; bazı diller L-sistemleriyle üretilebilir ama yalın CFG (context-free grammar) ile üretilemez.

Pratik örnek: bir Python kod fikri

rules = {'X': 'F-[[X]+X]+F[+FX]-X', 'F': 'FF'}
axiom = 'X'
def step(s):
    return ''.join(rules.get(c, c) for c in s)
s = axiom
for _ in range(5):
    s = step(s)
# s, turtle ile çizilir

Beş satır kod, 6-iterasyonluk bitki ağacı üretir.

Sonuç

L-sistemleri matematik, biyoloji ve dilbilimin nadir kesişim noktalarından biri. Karmaşıklığı sade kurallardan üretmenin zarif bir örneği — fraktallerin, bitki morfolojisinin ve bilgisayar grafiğinin ortak diline dönüştü.

Lindenmayer'in alglerden başlayan sorusu, bugün bir Pixar filminde rüzgârda salınan bir ormana yansıyor.

Etiketler

L-sistemlerifraktalLindenmayerbiyo-matematikresmi diller

Kendinizi Test Edin

Cevaplarınız profilinizde istatistik olarak saklanır.

1. L-sistemleri Chomsky dilbilgisinden hangi yönden farklıdır?

2. Lindenmayer'in klasik alg modelinde (A→AB, B→A) dize uzunluk dizisi nedir?

3. Turtle grafiklerinde [ ve ] sembolleri ne işe yarar?

4. L-sistemleri hangi modern alanlarda kullanılır?

5. Koch eğrisinin fraktal boyutu nedir?