Agent Nedir?

Posted by merve bayramusta on July 14, 2010 20:22  •  Comments (0)  •   • 

Web 3.0 ın haberleri yayılmaya başladığı sıralarda aklımıza gelen sorulardan biri de nedir bu Agent kavramı oluyor... Ya da Agent-Oriented Programming nedir? Object-Oriented Programming in bir alternatif midir, yoksa gelecekte onun yerini alabilir mi? Bu soruların cevaplarını henüz tam anlamıyla bulmak pek mümkün değil çünkü AOP henüz çok yayılmış bir yöntem değil. Benim de bu konuya açıklık getirebilecek yeterli bir bilgim yok, sadece siz okurlarımla lisans tezimi yaparken öğrendiğim birkaç bilgiyi paylaşabilirim.

Başlangıç aşamasını geçtiğimize göre nedir bu Agent lar? Nesnelerin özelliği, kendisine verilen görevleri koşulsuz yerine getirmesidir. Agent larda ise durum biraz farklı. Agent lar kendilerine verilen görevi tartar ve ona göre işlem yapmaya karar verirler. Eğer bu görevler onlara önceden tanımlanmış amaçlara uyuyorsa bunları gerçekleştirirler; ama eğer kendi amaçları doğrultusunda değilse bu görevleri yerine getirmezler. Peki bu işlemi nasıl yaparlar? Agent lar kendilerine has süzgeç mekanizmaları geliştirmişlerdir ama bunları Yapay Zeka yöntemleriyle gerçekleştirmezler. Agent lar basit logic kuralları kullanırlar, eğer kendisine verilen görev logic kurallarınca uygun görülüyorsa bu görevi yerine getirir.

Agent lara yönelik uygulama geliştirirken analiz ve tasarım aşamasında çeşitli metodolojiler kullanılabilir. Bu metodolojiler nesneye yönelik programlama yaparken kullandığımız metodoloji lerden oldukça farklıdır. Bu metodolojilere örnek olarak GAIA, Tropos, Adelfe, Mase ve Promethus verilebilir.

Multi-Agent bir uygulama geliştirirken bir framework üzerinde çalışabiliriz. Framework un bize sağladığı olanaklar doğrultusunda bu framework üzerinde agentlarımızı doğurabilir, yönetebilir veya öldürebiliriz. JADE, JADEX, SEAGENT kullanılabilecek frameworklar arasındadır.

Agentlar kendilerine verilen görevleri yerine getirmek için metot kavramı yerine Behaviour class larını kullanırlar. Kalıtıldıkları Behaviour tipine göre o görevi tek bir kez yapabildiği gibi, sonsuz bir cyclic döngü halinde veya belirli bir koşul tamamlanıncaya kadar gerçekleştirebilirler.

Bir sonraki yazımda, basit bir agent nasıl yaratılır, behaviour nasıl tanımlanır, bu görevler agentların görevlerine nasıl eklenir ondan bahsedeceğim. Şimdilik görüşmek üzere :) ..

Add comment




  Country flag

biuquote
  • Comment
  • Preview
Loading