Anlamsal web yetenekli çok-etmenli sistemler için alana özgü bir modelleme dili
A domaın-specıfıc modelıng language for semantıc web enabled multı-agent systems
Yazar: Moharram Challenger
Danışman: DOÇ. DR. GEYLANİ KARDAŞ
Ege Üniversitesi / Fen Bilimleri Enstitüsü / Uluslararası Bilgisayar Ana Bilim Dalı
Derece: Doktora, 2016
Konu: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control
Dizin: Akıllı ajanlar = Intelligent agents ; Bilgisayar yazılım dilleri = Computer software languages ; Bilgisayar yazılımları = Computer softwares ; Yazılım ajanları = Software agents

Özet:
Özerklik, karşıt eylemlilik ve proaktivite gibi etmen özelliklerinin ve birçok farklı etmen etkileşimlerinin gerçekleştirilmesi gereksinimi, etmen temelli yazılım sistemlerini diğer yazılım sistemlerinden daha karmaşık bir hale getirmektedir. Bunun yanısıra, Çok-etmenli Sistemler'in (MAS) etmen organizasyonları içerisinde içsel etmen davranış modeli ve etkileşiminin tasarımı ve uygulaması, özellikle Anlamsal Web gibi yeni etmen ortamları için yeni gereksinim ve etkileşimler dikkate alındığında, daha da karmaşık bir hal almaktadır ve zorlaşmaktadır. Söz konusu karmaşık yapıdaki MAS'ların tasarım ve uygulama zorluğunu gidermek için, bir Alana-özgü Modellleme Dili'nin (DSML) kullanımı, MAS üstmodelinin betimleme gücünü arttıran; sistem semantiğini tanımlayan ve böylece MAS'ların geliştirilmesi için daha elverişli bir yöntem sunan gerekli soyutlamayı sağlayabilir. Her ne kadar etmen araştırıcılarının, MAS üstmodelleme ve model-güdümlü MAS geliştirme konularında önemli çalışmaları bulunsa da, özellikle Anlamsal Web ortamlarında çalışan MAS'lar için bütüncül bir DSML'in sağlanması yönünde mevcut çalışmalarda bir eksiklik görülmektedir. 
Yukarıda sözü edilen eksikliği gidermek amacıyla, bu tezde, SEA_ML adı verilen MAS'lar için yeni bir DSML geliştirilmiştir. Bu DSML, Anlamsal Web ortamlarında çalışan MAS'ların tasarım ve uygulamasının mimari karmaşıklığını göz önünde bulundurur. Bu maksatla, MAS'ların klasik bakış açılarının yanısıra Anlamsal Web ortamı içerisinde çalışan yazılım etmenlerinin geliştirilmesine özellikle destek veren  yeni bakış açılarını da içeren bir alana özgü üstmodel tanımlanmıştır. Bu yeni üstmodel, etmen sistemlerinin DSML'ine yönelik soyut sözdizim ve metinsel/grafiksel somut sözdizimlerin tanımları için gerekli temeli sağlamaktadır. Elde edilen DSML sözdizimi, yine bu tez kapsamında geliştirilen metinsel ve grafiksel modelleme araç kümesiyle desteklenmektedir. DSML, aynı zamanda, bir yorumlayıcı mekanizmaya destek verir; böylece, geliştirilen çerçeve, hem MAS hem de Anlamsal Web açılarından düşünüldüğünde, farklı hedef platformları için yazılım mimarisine uyan yazılım kodlarını üretebilmektedir. Aynı zamanda, metinsel ve grafiksel dillerin her ikisi de programlar/modelleri doğrulamak için kısıt kontrolüne destek vermektedir. Bu yolla, anlamsal kontrollerin bir kısmı, programın/modelin tasarım zamanında gerçekleştirilir ve daha düzgün kod üretimine yol açan potansiyel hataların önüne geçilir. SEA_ML'in formal semantiği ele alınırsa, dilin semantiğinin formal gösterimi sunulmuştur ve MAS doğrulaması için kullanılmaktadır. Sunulan semantik, etmen içselleri ve MAS iletişimi için zaten gerekli olan semantik tanımlamasının yanısıra, yazılım etmenleri ve semantik web servisleri arasındaki etkileşimin hem statik hem de dinamik yönlerini tanımlamaktadır.Son olarak, aynı zamanda bu tezde, varolan ya da yeni tanımlanmış MAS DSML'lerini değerlendirmek için bir değerlendirme çerçevesi ve sistematik bir yaklaşım da sunulmuştur. Bu çerçeve ve sistematik yaklaşıma göre tezde önerilen SEA_ML'in değerlendirmesi, iki farklı değerlendirici grup kullanılarak sağlanmıştır. Değerlendirme, çoklu durum araştırması yaklaşımına dayanır ve hem niteliksel değerlendirme hem de niceliksel analiz sunar. Etmen-temelli sistemlerin üretimini desteklemek için SEA_ML'in olduğu kadar değerlendirme yaklaşımının benimsenmesi de göz önünde bulundurularak çıkarılan dersler tezde tartışılmıştır. Değerlendirme sonuçlarına göre, SEA_ML'in kullanımı ile MAS geliştirmede ihtiyaç duyulan yazılım bileşenlerinin yaklaşık %85'inin; tüm kodun ise yaklaşık %80'inin otomatik olarak üretilebildiği gözlenmiştir. Aynı zamanda, değerlendirme sonuçları, yazılım geliştirmede gereken toplam süre göz önüne alındığında SEA_ML kullanan grubun durum çalışmalarını geliştirmek için diğer grubun gereksinim duyduğu sürenin ortalama olarak sadece yarısına ihtiyaç duyduğunu göstermektedir.

Abstract:
The need for realization of the many different agent interactions and also agent properties such as autonomy, responsiveness and proactiveness, make development of agent-based software systems more complex than other software systems. Furthermore, the design and implementation of internal agent behavior model and interaction within the agent organizations of Multi-agent Systems (MASs) may become even more complex and difficult to implement especially when the new requirements and interactions for new agent environments such as the Semantic Web are taken into account. In order to deal with the complexities of design and implementation of such MASs, the use of a Domain-specific Modeling Language (DSML) can provide the required abstraction which increases the descriptive power of a MAS metamodel, defines the system semantics, and hence support a more fruitful methodology for the development of MASs. Although agent researchers have a great effort in MAS metamodeling and model-driven MAS development, a significant deficiency exists in current studies when it is considered providing a complete DSML for MASs especially working in Semantic Web environment. 
In order to help fill the abovementioned gap, a new DSML for MAS, called SEA_ML, is introduced in this study which considers the architectural complexity of design and implementation of MASs. To this end, a domain-specific metamodel is defined that includes new viewpoints (in addition to the classical viewpoints of MASs) which specifically support the development of software agents working within the Semantic Web environment. This new metamodel paves the way for the definition of an abstract syntax and textual/graphical concrete syntaxes for the DSML of agent systems. Achieved DSML syntax is supported with both textual and graphical modeling toolkits. The DSML also supports the interpreter mechanism, so that, the framework can generate the architectural code for different target platforms considering both the MAS and Semantic Web aspects. In the meantime, both of the textual and graphical languages support constraint control to validate the programs/models. In this way, some of the semantic controls are realized in the design time of the program/model and avoids potential errors which lead to more accurate code generation. Considering the formal semantics of the DSML, the formal representation of SEA_ML's semantics are presented and used for MAS validation. The presented semantics defines both static and dynamic aspects of the interaction between software agents and semantic web services, in addition to the definition of the semantics already required for agent internals and MAS communication.
Finally, in this thesis, an evaluation framework and systematic approach are also presented for assessing existing or newly defined DSMLs for MASs. Evaluation of SEA_ML according to this framework and systematic approach has been provided using two evaluator groups. The evaluation is based on a multi case study research approach and provides both qualitative evaluation and quantitative analysis. The lessons learned are discussed considering the adoption of the evaluation approach as well as the SEA_ML for supporting the generation of agent-based systems. Evaluation results show that approximately 85% of the artifacts and 80% of the whole code is generated automatically by using SEA_ML. Also, according to the evaluation results, the total time of development for both groups shows that the group using SEA_ML needs half of the time the other group needs for developing the case studies in average.