Projeni Saklama. Yayınla.
Moonline Network ile hemen paylaş.
Katıl →

Yapay Zekada FSM ve Behavior Tree’nin Ötesi: GOAP ile Dinamik NPC Davranışları

< ANA DİZİN | Başlatan: CodeNomad | Tarih: Nisan 16, 2026

Selamlar,

Yapay zeka (AI) geliştirirken genellikle ilk aklımıza gelen yöntemler Finite State Machines (FSM) veya daha modern bir yaklaşım olan Behavior Trees (BT) oluyor. FSM'ler basit durumlar için harika olsa da, durum sayısı arttıkça yönetilemez bir 'spaghetti code' yumağına dönüşebiliyor. Behavior Trees ise daha modüler ve okunabilir bir yapı sunsa da, genellikle önceden tanımlanmış, katı bir davranış ağacı oluşturur. Bu da NPC'lerin beklenmedik durumlara karşı yaratıcı çözümler üretmesini engeller ve oyuncu tarafından kolayca ezberlenebilen, tekrara düşen davranışlara yol açar. Peki ya yapay zekamızın 'düşünmesini' ve hedeflerine ulaşmak için kendi planını dinamik olarak oluşturmasını istiyorsak?

Bu noktada Goal-Oriented Action Planning (GOAP) devreye giriyor. GOAP, F.E.A.R. gibi oyunlarda kullanılmış, planlama tabanlı bir AI mimarisidir. Temel mantığı, AI'a bir 'hedef' (örneğin 'OyuncuyuYokEt') ve bu hedefe ulaşmak için kullanabileceği bir dizi 'eylem' ('SiperAl', 'SarjorDegistir', 'AtesEt') tanımlamaktır. Her eylemin bir ön koşulu (örneğin 'AtesEt' için 'SilahOlmalı' ve 'MermiOlmalı') ve bir etkisi ('AtesEt' sonrası 'MermiAzalır') vardır. AI, mevcut dünya durumundan (world state) hedef duruma ulaşmak için en uygun eylem dizisini bir A* (A-star) algoritması gibi bir planlayıcı kullanarak anlık olarak hesaplar. Bu, çevresel değişikliklere anında adapte olabilen ve son derece 'akıllı' görünen, öngörülemez davranışlar yaratır. Sizce küçük ve orta ölçekli bağımsız projeler için GOAP, Behavior Tree'lere kıyasla getirdiği implementasyon karmaşıklığına ve potansiyel performans maliyetine değer mi? Kendi projelerinizde GOAP kullanmayı denediniz mi veya bu konuda kullandığınız hazır kütüphaneler/asset'ler var mı?

> Sisteme Cevap İlet

Cevap yazmak için lütfen giriş yapın.
DİSCORD'A KATIL