Sinir Ağına Yılan Oyunu Oynatmak
Sinir ağı
Her yılan bir sinir ağı içerir. Sinir ağında 24 nöronluk bir giriş katmanı, 16 nörondan 2 gizli katman ve 4 nörondan oluşan bir çıkış katmanı bulunur. Not: Ağ artık gizli katmanlardaki ve gizli katmanlardaki nöronların sayısıyla özelleştirilebilir.
Görüş
Yılan 8 yönü görebiliyor. Bu yönlerin her birinde, yılan 3 şey arar:
- Yemeğe Uzaklık
- Kendi vücuduna olan mesafe
- Duvara Uzaklık
Gelişimi
1. Doğal Seçilim
Her nesilde 2000 yılan nüfusu yaratıldı. İlk nesil için, yılanların her birindeki sinir ağlarının tümü rastgele başlatılır. Tüm popülasyon öldüğünde, yılanların her biri için bir fitness puanı hesaplanır. Bu zindelik puanlarını kullanarak, en iyi yılanlardan bazıları yeniden üretilmek üzere seçildi. Üreme sırasında iki yılan seçilir ve her birinin sinir ağları çaprazlanır ve sonra ortaya çıkan çocuk mutasyona uğrar. Bu 2000 yeni yılan yeni bir popülasyon oluşturmak için tekrarlanır.
2. Uygunluk
Yılan uygunluğu, yılanın skorunun yanı sıra ne kadar süre hayatta kalmasına da bağlıdır. Ancak, eşit derecede önemli değiller, daha yüksek bir puana sahip olmak, sadece hayatta kalan bir yılandan daha fazla ödüllendirilir. Bununla birlikte, bir yılanın belli bir düzende döndüğü ve asla ölmediği bir strateji geliştirmesi olasılığı vardır. Yüksek bir puana sahip olmak daha öncelikli olsa da, eğer bir yılan sonsuza dek hayatta kalabilirse, bu açık bir sorundur. Bundan kaçınmak için her yılan, hayatının başlangıcında 200 başlangıç hareketi veriyor. Ne zaman bir parça yiyecek yerse, en fazla 500 hamle olmak üzere 100 hamle daha kazanır. Bu, döngülere girmek için gelişen yılanların sonunda öleceği ve yiyecek için giden yılanların sadece daha yüksek bir skor elde etmeyeceği, daha uzun süre hayatta kalacakları anlamına gelir.
Kodu Çalıştırmak İçin Gerekenler
• Processing indirmek için tıklayınız.