JADE JADEX RETSINA DECAF Etmen Gelitirim Platformlarnn Karlatrlmas

  • Slides: 20
Download presentation
JADE, JADEX, RETSINA, DECAF Etmen Geliştirim Platformlarının Karşılaştırılması Duygu SÖNMEZ ÇANAKKALE ONSEKİZ MART ÜNİVERSİTESİ

JADE, JADEX, RETSINA, DECAF Etmen Geliştirim Platformlarının Karşılaştırılması Duygu SÖNMEZ ÇANAKKALE ONSEKİZ MART ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ

Sunum Akışı 1. 2. 3. 4. 5. 6. 7. 8. 9. Yazılım etmenleri ve

Sunum Akışı 1. 2. 3. 4. 5. 6. 7. 8. 9. Yazılım etmenleri ve etmen özellikleri Etmenlerin iletişimi Etmenlerin uygulama alanları Etmen çerçeveleri JADEX JADE DECAF RETSINA Sonuç

Yazılım Etmenleri “Yazılım etmeni bir ortamda belli derecede özerklik çerçevesinde çalışan, ortamdaki dinamik değişimleri

Yazılım Etmenleri “Yazılım etmeni bir ortamda belli derecede özerklik çerçevesinde çalışan, ortamdaki dinamik değişimleri algılayan, ortamdan elde ettiği algılardan veya kullanıcılardan ve diğer etmenlerden gelen iletilerden amaçlar çıkartan, amaçları doğrultusunda planlama yaparak bu planların gerektirdiği eylemleri yapan, diğer etmenler ile belli bir etmen dili aracılığı iletişimde bulunan ve bulunduğu ortamda süreklilik gösteren yazılımdır. ”(Erdur, 2001, 14). Etmen Özellikleri: • Özerklik • Karşıt Eylemlilik • Amaç Yönelimlilik • Sosyal Yetenek • Kalıcı Süreklilik

Etmenlerin İletişimi Etmen İletişiminde iki Önemli Unsur: 1. Etmen iletişim dili • KQML, FIPA

Etmenlerin İletişimi Etmen İletişiminde iki Önemli Unsur: 1. Etmen iletişim dili • KQML, FIPA ACL KQML: : Sender Değer > : Receiver Değer > : From Değer > : To Değer > : In-reply-to Değer > : Reply-with Değer > : Ontology Değer > : Content içerik dili deyimi >

Etmenlerin İletişimi FIPA ACL: Sender: A Receiver: B Language: Prolog Ontology: Hava_Durumu Content: (Sıcaklık(yarın,

Etmenlerin İletişimi FIPA ACL: Sender: A Receiver: B Language: Prolog Ontology: Hava_Durumu Content: (Sıcaklık(yarın, 30)) 2. Ontoloji • Tüm etmenlerin bildiği ve konuşmalarında kullandığı üzerinde anlaşılmış sözcük kümeleri.

Etmen Uygulama Alanları Endüstriyel uygulamalar • Üretim sistemleri • Hava trafik kontrol uygulamaları Bilgi

Etmen Uygulama Alanları Endüstriyel uygulamalar • Üretim sistemleri • Hava trafik kontrol uygulamaları Bilgi yönetim uygulamaları • İnternet üzerinde bilgi arama (Info. Sleuth) • Sayısal kütüphaneler Eğlence uygulamaları • Oyunlar Tıp uygulamaları

Etmen Çerçevelerine Neden İhtiyaç Var? • • • Programlama İletişim Proje yönetimi Planlama Hızlı

Etmen Çerçevelerine Neden İhtiyaç Var? • • • Programlama İletişim Proje yönetimi Planlama Hızlı geliştirim

JADEX • Kanı/İstek/Hedef mimarisi kullanır. Kanı/İstek/Hedef Mimarileri Kanılar+İstekler+Hedefler Deneysel akıl yürütme • Hangi hedeflere

JADEX • Kanı/İstek/Hedef mimarisi kullanır. Kanı/İstek/Hedef Mimarileri Kanılar+İstekler+Hedefler Deneysel akıl yürütme • Hangi hedeflere varılmak isteniyor? • Belirlenen hedeflere nasıl ulaşırım? • “middleware” ve “reasoning-oriented” temelli platformların özelliklerini birleştirmeye çalışır. • FIPA uyumludur.

JADEX

JADEX

JADEX • Xml ve java Agent Definition File (kanı/istek/hedef): xml Planlar: java ADF: <agent

JADEX • Xml ve java Agent Definition File (kanı/istek/hedef): xml Planlar: java ADF: <agent name =‘’ping’’> <kanilar>. . . <istekler>. . . . <hedefler>. . . </agent> Plan: public class Ping. Plan extends Threaded. Plan { public void body() {. . . . }

JADE (Java Agent Development Framework) FIPA standartlarına uygun geliştirim Mimariden bağımsız «ilkel» basit etmen

JADE (Java Agent Development Framework) FIPA standartlarına uygun geliştirim Mimariden bağımsız «ilkel» basit etmen geliştirimi Java dilinin kullanım avantajları Mobil geliştirim JADE platformunda FIPA standartlarını sağlayan üç adet özel bileşen mevcuttur. • Etmen Yönetim Sistemi (Agent Management System) • Dizin Kolaylaştırıcı (Directory Facilitator) • Etmen İletişim Kanalı (Agent Communication Channel).

DECAF (Distributed, Environment Centered Agent Framework) • • • Kanı/İstek/Hedef mimarisinde oluşturulmuştur. İletişim planlama

DECAF (Distributed, Environment Centered Agent Framework) • • • Kanı/İstek/Hedef mimarisinde oluşturulmuştur. İletişim planlama koordinasyon sağlar. Java dilini kullanır. Eşleştirici etmen (matchmaker) Planlama yapısı olarak HTN kullanır. Plan editörü mevcuttur. HTN: • Adım 1: Görevleri alt görevlere ayrıştır. • Adım 2: Görev gerçekleştirimindeki kısıtlamaları kontrol et. • Adım 3: Alt görevler arasındaki ilerlemeyi kontrol et. • Adım 4: Eğer asıl görevin başarılı sonucuna ulaşamadıysan adım 1 e geri dön

DECAF (Distributed, Environment Centered Agent Framework) • Görev-kontrol yapısı ( Plan File, Incoming KQML

DECAF (Distributed, Environment Centered Agent Framework) • Görev-kontrol yapısı ( Plan File, Incoming KQML messages, Domain Facts and Beliefs, Outgoing KQML Messages, Action Modules) • Gerçekleştirim modülü (Agent Initialization, Dispatcher, Planner, Scheduler, Executor) • Veri kuyrukları (Incoming Message Queue, Objectives Queue, Task Queue, Agenda Queue, Task Templates Hashtable, Pending ) DECAF Mimarisinde Fonksiyonlar: • Başlatma • Eşleştirme • Planlama • Zamanlama • Gerçekleştirim

RETSINA (Reusable Environment for Task Structured Intelligent Network Agents) • RETSINA heterojen yapıyı destekler.

RETSINA (Reusable Environment for Task Structured Intelligent Network Agents) • RETSINA heterojen yapıyı destekler. • RETSINA altyapısındaki temel nokta ilgili etmenlerin birebir iletişimidir. • Etmenler bu çerçevede birbirlerini dinamik olarak keşfederler ve diğer etmenler hakkındaki bilgiler sürekli güncellenir. • Java, C, C++, Python gibi dillerde gerçekleştirilebilir. • Kontrolü dağıtıktır.

RETSINA (Reusable Environment for Task Structured Intelligent Network Agents) • Retsina Mimarisindeki Etmenler: Arayüz

RETSINA (Reusable Environment for Task Structured Intelligent Network Agents) • Retsina Mimarisindeki Etmenler: Arayüz Etmeni Görev Etmeni Bilgi Etmeni Ara Etmen • Retsina Etmenlerindeki Modüller: İletişim Modülü Planlama Modülü Zamanlama Modülü Yürütme Modülü

RETSINA (Reusable Environment for Task Structured Intelligent Network Agents) WARREN: Finansal Portfolyo Yönetimi 1.

RETSINA (Reusable Environment for Task Structured Intelligent Network Agents) WARREN: Finansal Portfolyo Yönetimi 1. Arayüz etmeni 2. Görev etmeni 3. Bilgi etmeni 4. Ara etmen İşlevi: • Bilgi edinme • Stok bilgilerini yorumlama • Stok raporlama • Veritabanı değişikliklerini izleme • Yatırımların geleceklerini tahminleme

DECAF&RETSINA • Eşleştirme Etmeni (Matchmaker)

DECAF&RETSINA • Eşleştirme Etmeni (Matchmaker)

Sonuç DECAF RETSINA JADEX DİLİ Java Xml, Java MİMARİSİ KIF Java, C, C++, Python

Sonuç DECAF RETSINA JADEX DİLİ Java Xml, Java MİMARİSİ KIF Java, C, C++, Python KIF - KIF&Mantık ETMENLER ARASI İLETİŞİM KQML ACL ARABULUCU ETMEN AVANTAJ Eşleştirici Birebir iletişim - Kolay kullanım Hızlı geliştirim Problem alanı yok HTN Heterojen etmen Tekrar kullanılabillirlik İki yollu iletişim HTN Mobil uygulama FIPA İlkel geliştirim Reasoning Oriented&Middle ware

Kaynaklar: • [1] Rıza Cenk ERDUR, “Yazılım Etmeni Teknolojisinin İnternet Tabanlı Yazılım Yeniden Kullanımına

Kaynaklar: • [1] Rıza Cenk ERDUR, “Yazılım Etmeni Teknolojisinin İnternet Tabanlı Yazılım Yeniden Kullanımına Uygulanması”, Ege Üniversitesi Bilgisayar Mühendisliği Bölümü, Doktora Tezi, (2001). • [2] Rıza Cenk ERDUR, Oğuz DİKENELLİ, “FIPA Uyumlu Yazılım Etmeni Çerçevesi Gerçekleştirimi”, (2003). • [3]John R. Graham, Keith S. Decker, Michael Mersic, “DECAF – A Flexible Multi Agent System Architecture”, (2000). • [4] Foster Mc. Geary, “DECAF Programming: An Introduction, (2001). • [5] Mikko Laukkanen, Jukka Eskelinen, “Requirement Specification for the DECAFMatchmaker”, (1999). • [6] Foster Mc. Geary, Keith Decker, “DECAF Programming: Agents for Undergraduates”, (2001). • [7] Katia Sycara, Massimo Paolucci, Martin van Velsen, Joseph Giampapa, “The Retsina MAS Infrastructure”, (2001). • [8] M. Paolucci, D. Kalp, A. Pannu, O. Shehory, K. Sycara, “A Planning Component for RETSINA Agents”, The Robotics Institute Carnegie Mellon University, (2000). • [9] Katia Sycara, Anandeep S. Pannu, “The RETSINA Multiagent System: Towards Integrating Planning, Execution and Information Gathering”, The Robotics Institute Carnegie Mellon University (1998). • [10] Katia Sycara, Anandeep S. Pannu, “Team. Oriented Agent Coordination in the RETSINA Multi. Agent System”, The Robotics Institute Carnegie Mellon University (2002).

Kaynaklar: • [11] M. Paolucci, D. Kalp, A. Pannu, O. Shehory, K. Sycara, “The

Kaynaklar: • [11] M. Paolucci, D. Kalp, A. Pannu, O. Shehory, K. Sycara, “The Retsina MAS, a Case Study”, (2003). • [12] L. Braubach, A. Pokahr, W. , “Jadex: A Short Overview”, (2004). • [13] L. Braubach, A. Pokahr, W. , “Jadex: A BDI Reasoning Engine”, (2005). • [14] Braubach, A. Pokahr, W. , ”Jadex: A BDI-Agent System Combining Middleware and Reasoning”, (2005). • [15] Fabio Bellifemine, Agostino Poggi, Giovanni Rimassa, “JADE – A FIPA-Compliant Agent Framework”, (1999). • [16]Joseph A. Giampapa, Massimo Paolucci, Katia Sycara, “Agent Interoperation Across Multagent System Boundaries” (2000). • [17]Katia P. Sycara, “Multiagent Systems”, AI Magazine Volume 19 Number 2 (1998). • [18] Geylani Kardaş, Erdem Eser Ekinci, Bekir Afşar, Oğuz Dikenelli, N. Yasemin Topaloğlu, Ontoloji Tabanlı Çok-Etmenli Sistemlerin Model Güdümlü Geliştirilmesi, 4. Ulusal Yazılım Mühendisliği Sempozyumu, (2009). • [19]Özgür Gümüş, Önder Gürcan, Oğuz Dikenelli, “Anlamsal Servis Aracılığı İçin Bir Çok Etmenli Sistem ve Aracılık Etkileşim Protokolü”, Bilişim Teknolojileri Dergisi, Cilt: 5, Sayı: 2, (2012). • [20] F. Bellifemine A. Poggi, G. Rimassa, P. Turci, An Object-Oriented Framework to Realize Agent Systems. • [22]F. Bellifemine A. Poggi, G. Rimassa, “Developing Multi-Agent System with JADE”, (2007).